Guide for porting the AWS SigV4 Library to a new platform.
To use the AWS SigV4 library, a platform must implement the following components:
Configuration macros that can be set in the config header sigv4_config.h, or passed in as compiler options.
The following optional logging macros are used throughout the library:
sigv4_config.h or passed as compiler options, by default the sigv4_config.h file is needed to build the AWS SigV4 Library. To disable this requirement and build the library with default configuration values, provide SIGV4_DO_NOT_USE_CUSTOM_CONFIG as a compile time preprocessor macro.The AWS SigV4 library relies on the implementation of crypto interface to provide hash functions used in generating the Authorization header by the library.
A port must implement functions corresponding to the following functions pointers:
The above three functions take in a pointer to pHashContext which defines the context used by the above function in calculating the hash. The HashContext must also be defined by the user's implementation and ought to contain any information necessary to calculate the hash.
A port must also define the following: