LibAwsSdkutils

Documentation for LibAwsSdkutils.

LibAwsSdkutils.aws_byte_buf_append_resource_nameMethod
aws_byte_buf_append_resource_name(buf, arn)

Serializes an ARN structure into the lexical string format

Prototype

int aws_byte_buf_append_resource_name(struct aws_byte_buf *buf, const struct aws_resource_name *arn);
source
LibAwsSdkutils.aws_endpoints_bdd_engine_acquireMethod
aws_endpoints_bdd_engine_acquire(engine)

Acquire a reference to the BDD engine.

Arguments

  • engine: BDD engine

Returns

The same engine pointer

Prototype

struct aws_endpoints_bdd_engine *aws_endpoints_bdd_engine_acquire( struct aws_endpoints_bdd_engine *engine);
source
LibAwsSdkutils.aws_endpoints_bdd_engine_new_from_bytecodeMethod
aws_endpoints_bdd_engine_new_from_bytecode(allocator, bytecode, partitions_config)

Create a BDD engine from bytecode.

Arguments

  • allocator: Memory allocator
  • bytecode: Bytecode buffer The Bytecode buffer is supposed to be from heap allocated memory and guaranteed to exist for the lifetime of the engine.
  • partitions_config: Partition configuration (acquired by engine)

Returns

New BDD engine or NULL on error

Prototype

struct aws_endpoints_bdd_engine *aws_endpoints_bdd_engine_new_from_bytecode( struct aws_allocator *allocator, struct aws_byte_cursor bytecode, struct aws_partitions_config *partitions_config);
source
LibAwsSdkutils.aws_endpoints_bdd_engine_releaseMethod
aws_endpoints_bdd_engine_release(engine)

Release a reference to the BDD engine. Destroys the engine when ref count reaches zero.

Arguments

  • engine: BDD engine

Returns

NULL

Prototype

struct aws_endpoints_bdd_engine *aws_endpoints_bdd_engine_release( struct aws_endpoints_bdd_engine *engine);
source
LibAwsSdkutils.aws_endpoints_bdd_engine_resolveMethod
aws_endpoints_bdd_engine_resolve(engine, context, out_resolved_endpoint)

Resolve an endpoint using the BDD engine.

Arguments

  • engine: BDD engine
  • context: Request context with parameter values
  • out_resolved_endpoint: Output resolved endpoint or error

Returns

AWS_OP_SUCCESS on success, AWS_OP_ERR on failure

Prototype

int aws_endpoints_bdd_engine_resolve( struct aws_endpoints_bdd_engine *engine, const struct aws_endpoints_request_context *context, struct aws_endpoints_resolved_endpoint **out_resolved_endpoint);
source
LibAwsSdkutils.aws_endpoints_parameter_get_typeMethod
aws_endpoints_parameter_get_type(parameter)

Warning: The following helpers are intended for use by SDKs that validate correctness of the ruleset at compile time. The engine sanity checks the provided ruleset, but does not do extensive checking. Some malformed rulesets might fail in unexpected ways.

Prototype

enum aws_endpoints_parameter_type aws_endpoints_parameter_get_type( const struct aws_endpoints_parameter *parameter);
source
LibAwsSdkutils.aws_endpoints_request_context_add_booleanMethod
aws_endpoints_request_context_add_boolean(allocator, context, name, value)

Documentation not found.

Prototype

int aws_endpoints_request_context_add_boolean( struct aws_allocator *allocator, struct aws_endpoints_request_context *context, struct aws_byte_cursor name, bool value);
source
LibAwsSdkutils.aws_endpoints_request_context_add_stringMethod
aws_endpoints_request_context_add_string(allocator, context, name, value)

Documentation not found.

Prototype

int aws_endpoints_request_context_add_string( struct aws_allocator *allocator, struct aws_endpoints_request_context *context, struct aws_byte_cursor name, struct aws_byte_cursor value);
source
LibAwsSdkutils.aws_endpoints_request_context_add_string_arrayMethod
aws_endpoints_request_context_add_string_array(allocator, context, name, value_array, len)

Documentation not found.

Prototype

int aws_endpoints_request_context_add_string_array( struct aws_allocator *allocator, struct aws_endpoints_request_context *context, struct aws_byte_cursor name, const struct aws_byte_cursor *value_array, size_t len);
source
LibAwsSdkutils.aws_endpoints_resolved_endpoint_acquireMethod
aws_endpoints_resolved_endpoint_acquire(resolved_endpoint)

Documentation not found.

Prototype

struct aws_endpoints_resolved_endpoint *aws_endpoints_resolved_endpoint_acquire( struct aws_endpoints_resolved_endpoint *resolved_endpoint);
source
LibAwsSdkutils.aws_endpoints_resolved_endpoint_get_errorMethod
aws_endpoints_resolved_endpoint_get_error(resolved_endpoint, out_error)

Documentation not found.

Prototype

int aws_endpoints_resolved_endpoint_get_error( const struct aws_endpoints_resolved_endpoint *resolved_endpoint, struct aws_byte_cursor *out_error);
source
LibAwsSdkutils.aws_endpoints_resolved_endpoint_get_headersMethod
aws_endpoints_resolved_endpoint_get_headers(resolved_endpoint, out_headers)

Documentation not found.

Prototype

int aws_endpoints_resolved_endpoint_get_headers( const struct aws_endpoints_resolved_endpoint *resolved_endpoint, const struct aws_hash_table **out_headers);
source
LibAwsSdkutils.aws_endpoints_resolved_endpoint_get_propertiesMethod
aws_endpoints_resolved_endpoint_get_properties(resolved_endpoint, out_properties)

Documentation not found.

Prototype

int aws_endpoints_resolved_endpoint_get_properties( const struct aws_endpoints_resolved_endpoint *resolved_endpoint, struct aws_byte_cursor *out_properties);
source
LibAwsSdkutils.aws_endpoints_resolved_endpoint_get_typeMethod
aws_endpoints_resolved_endpoint_get_type(resolved_endpoint)

Documentation not found.

Prototype

enum aws_endpoints_resolved_endpoint_type aws_endpoints_resolved_endpoint_get_type( const struct aws_endpoints_resolved_endpoint *resolved_endpoint);
source
LibAwsSdkutils.aws_endpoints_resolved_endpoint_get_urlMethod
aws_endpoints_resolved_endpoint_get_url(resolved_endpoint, out_url)

Documentation not found.

Prototype

int aws_endpoints_resolved_endpoint_get_url( const struct aws_endpoints_resolved_endpoint *resolved_endpoint, struct aws_byte_cursor *out_url);
source
LibAwsSdkutils.aws_endpoints_resolved_endpoint_releaseMethod
aws_endpoints_resolved_endpoint_release(resolved_endpoint)

Documentation not found.

Prototype

struct aws_endpoints_resolved_endpoint *aws_endpoints_resolved_endpoint_release( struct aws_endpoints_resolved_endpoint *resolved_endpoint);
source
LibAwsSdkutils.aws_endpoints_rule_engine_newMethod
aws_endpoints_rule_engine_new(allocator, ruleset, partitions_config)

Create new rule engine for a given ruleset. In cases of failure NULL is returned and last error is set.

Prototype

struct aws_endpoints_rule_engine *aws_endpoints_rule_engine_new( struct aws_allocator *allocator, struct aws_endpoints_ruleset *ruleset, struct aws_partitions_config *partitions_config);
source
LibAwsSdkutils.aws_endpoints_rule_engine_resolveMethod
aws_endpoints_rule_engine_resolve(engine, context, out_resolved_endpoint)

Documentation not found.

Prototype

int aws_endpoints_rule_engine_resolve( struct aws_endpoints_rule_engine *engine, const struct aws_endpoints_request_context *context, struct aws_endpoints_resolved_endpoint **out_resolved_endpoint);
source
LibAwsSdkutils.aws_endpoints_ruleset_new_from_stringMethod
aws_endpoints_ruleset_new_from_string(allocator, ruleset_json)

Documentation not found.

Prototype

struct aws_endpoints_ruleset *aws_endpoints_ruleset_new_from_string( struct aws_allocator *allocator, struct aws_byte_cursor ruleset_json);
source
LibAwsSdkutils.aws_get_config_file_pathMethod
aws_get_config_file_path(allocator, override_path)

Computes the final platform-specific path for the profile config file. Does limited home directory expansion/resolution.

override_path, if not null, will be searched first instead of using the standard home directory config path

Prototype

struct aws_string *aws_get_config_file_path( struct aws_allocator *allocator, const struct aws_byte_cursor *override_path);
source
LibAwsSdkutils.aws_get_credentials_file_pathMethod
aws_get_credentials_file_path(allocator, override_path)

Computes the final platform-specific path for the profile credentials file. Does limited home directory expansion/resolution.

override_path, if not null, will be searched first instead of using the standard home directory config path

Prototype

struct aws_string *aws_get_credentials_file_path( struct aws_allocator *allocator, const struct aws_byte_cursor *override_path);
source
LibAwsSdkutils.aws_get_profile_nameMethod
aws_get_profile_name(allocator, override_name)

Computes the profile to use for credentials lookups based on profile resolution rules

Prototype

struct aws_string *aws_get_profile_name(struct aws_allocator *allocator, const struct aws_byte_cursor *override_name);
source
LibAwsSdkutils.aws_profile_collection_acquireMethod
aws_profile_collection_acquire(collection)

Increments the reference count on the profile collection, allowing the caller to take a reference to it.

Returns the same profile collection passed in.

Prototype

struct aws_profile_collection *aws_profile_collection_acquire(struct aws_profile_collection *collection);
source
LibAwsSdkutils.aws_profile_collection_get_profileMethod
aws_profile_collection_get_profile(profile_collection, profile_name)

Retrieves a reference to a profile with the specified name, if it exists, from the profile collection

Prototype

const struct aws_profile *aws_profile_collection_get_profile( const struct aws_profile_collection *profile_collection, const struct aws_string *profile_name);
source
LibAwsSdkutils.aws_profile_collection_get_sectionMethod
aws_profile_collection_get_section(profile_collection, section_type, section_name)

Documentation not found.

Prototype

const struct aws_profile *aws_profile_collection_get_section( const struct aws_profile_collection *profile_collection, const enum aws_profile_section_type section_type, const struct aws_string *section_name);
source
LibAwsSdkutils.aws_profile_collection_get_section_countMethod
aws_profile_collection_get_section_count(profile_collection, section_type)

Returns the number of elements of the specified section in a collection.

Prototype

size_t aws_profile_collection_get_section_count( const struct aws_profile_collection *profile_collection, const enum aws_profile_section_type section_type);
source
LibAwsSdkutils.aws_profile_collection_new_from_bufferMethod
aws_profile_collection_new_from_buffer(allocator, buffer, source)

Create a new profile collection by parsing text in a buffer. Primarily for testing.

Prototype

struct aws_profile_collection *aws_profile_collection_new_from_buffer( struct aws_allocator *allocator, const struct aws_byte_buf *buffer, enum aws_profile_source_type source);
source
LibAwsSdkutils.aws_profile_collection_new_from_fileMethod
aws_profile_collection_new_from_file(allocator, file_path, source)

Create a new profile collection by parsing a file with the specified path

Prototype

struct aws_profile_collection *aws_profile_collection_new_from_file( struct aws_allocator *allocator, const struct aws_string *file_path, enum aws_profile_source_type source);
source
LibAwsSdkutils.aws_profile_collection_new_from_mergeMethod
aws_profile_collection_new_from_merge(allocator, config_profiles, credentials_profiles)

Create a new profile collection by merging a config-file-based profile collection and a credentials-file-based profile collection

Prototype

struct aws_profile_collection *aws_profile_collection_new_from_merge( struct aws_allocator *allocator, const struct aws_profile_collection *config_profiles, const struct aws_profile_collection *credentials_profiles);
source
LibAwsSdkutils.aws_profile_collection_releaseMethod
aws_profile_collection_release(collection)

Decrements a profile collection's ref count. When the ref count drops to zero, the collection will be destroyed. Returns NULL.

Prototype

struct aws_profile_collection *aws_profile_collection_release(struct aws_profile_collection *collection);
source
LibAwsSdkutils.aws_profile_get_nameMethod
aws_profile_get_name(profile)

Returns a reference to the name of the provided profile

Prototype

const struct aws_string *aws_profile_get_name(const struct aws_profile *profile);
source
LibAwsSdkutils.aws_profile_get_propertyMethod
aws_profile_get_property(profile, property_name)

Retrieves a reference to a property with the specified name, if it exists, from a profile

Prototype

const struct aws_profile_property *aws_profile_get_property( const struct aws_profile *profile, const struct aws_string *property_name);
source
LibAwsSdkutils.aws_profile_property_get_sub_propertyMethod
aws_profile_property_get_sub_property(property, sub_property_name)

Returns a reference to the value of a sub property with the given name, if it exists, in the property

Prototype

const struct aws_string *aws_profile_property_get_sub_property( const struct aws_profile_property *property, const struct aws_string *sub_property_name);
source
LibAwsSdkutils.aws_profile_property_get_valueMethod
aws_profile_property_get_value(property)

Returns a reference to the property's string value

Prototype

const struct aws_string *aws_profile_property_get_value(const struct aws_profile_property *property);
source
LibAwsSdkutils.aws_resource_name_init_from_curMethod
aws_resource_name_init_from_cur(arn, input)

Given an ARN "Amazon Resource Name" represented as an in memory a structure representing the parts

Prototype

int aws_resource_name_init_from_cur(struct aws_resource_name *arn, const struct aws_byte_cursor *input);
source
LibAwsSdkutils.aws_resource_name_lengthMethod
aws_resource_name_length(arn, size)

Calculates the space needed to write an ARN to a byte buf

Prototype

int aws_resource_name_length(const struct aws_resource_name *arn, size_t *size);
source