coreHTTP  v2.0.2
HTTP/1.1 Client Library
Configurations

Configurations of the HTTP Client library.

configpagestyle

Configuration settings are C pre-processor constants. They can be set with a #define in the config file (core_http_config.h) or by using a compiler option such as -D in gcc.

HTTP_DO_NOT_USE_CUSTOM_CONFIG

Define this macro to build the HTTP client library without the custom config file core_http_config.h.

Without the custom config, the HTTP client library builds with default values of config macros defined in core_http_config_defaults.h file.

If a custom config is provided, then HTTP_DO_NOT_USE_CUSTOM_CONFIG should not be defined.

HTTP_MAX_RESPONSE_HEADERS_SIZE_BYTES

Maximum size, in bytes, of headers allowed from the server. If the total size in bytes of the headers received from the server exceeds this configuration, then the status code HTTPSecurityAlertResponseHeadersSizeLimitExceeded is returned from HTTPClient_Send.

Possible values: Any positive 32 bit integer.
Default value: 2048

HTTP_USER_AGENT_VALUE

The HTTP header "User-Agent" value. The following header line is automatically written to HTTPRequestHeaders_t.pBuffer: "User-Agent: my-platform-name\r\n"

Possible values: Any string.
Default value: my-platform-name

HTTP_SEND_RETRY_TIMEOUT_MS

The maximum duration between non-empty network transmissions while sending an HTTP request via the HTTPClient_Send API function. When sending an HTTP request, the transport send function may be called multiple times until all of the required number of bytes are sent. This timeout represents the maximum duration that is allowed for no data transmission over the network through the transport send function.

If the timeout expires, the HTTPClient_Send function returns HTTPNetworkError.

If HTTPResponse_t.getTime is set to NULL, then this HTTP_RECV_RETRY_TIMEOUT_MS is unused. When this timeout is unused, HTTPClient_Send will not retry the transport send calls that return zero bytes sent.

Possible values: Any positive 32 bit integer. A small timeout value is recommended.
Default value: 10

HTTP_RECV_RETRY_TIMEOUT_MS

The maximum duration between non-empty network reads while receiving an HTTP response via the HTTPClient_Send API function. The transport receive function may be called multiple times until the end of the response is detected by the parser. This timeout represents the maximum duration that is allowed without any data reception from the network for the incoming response.

If the timeout expires, the HTTPClient_Send function will return HTTPNetworkError.

If HTTPResponse_t.getTime is set to NULL, then this HTTP_RECV_RETRY_TIMEOUT_MS is unused. When this timeout is unused, HTTPClient_Send will not retry the transport receive calls that return zero bytes read.

Possible values: Any positive 32 bit integer. A small timeout value is recommended.
Default value: 10

LogError

Macro that is called in the HTTP Client library for logging "Error" level messages. To enable error level logging in the HTTP Client library, this macro should be mapped to the application-specific logging implementation that supports error logging.

Note
This logging macro is called in the HTTP Client library with parameters wrapped in double parentheses to be ISO C89/C90 standard compliant. For a reference POSIX implementation of the logging macros, refer to core_http_config.h files, and the logging-stack in demos folder of the AWS IoT Embedded C SDK repository.

Default value: Error logging is turned off, and no code is generated for calls to the macro in the HTTP Client library on compilation.

LogWarn

Macro that is called in the HTTP Client library for logging "Warning" level messages. To enable warning level logging in the HTTP Client library, this macro should be mapped to the application-specific logging implementation that supports warning logging.

Note
This logging macro is called in the HTTP Client library with parameters wrapped in double parentheses to be ISO C89/C90 standard compliant. For a reference POSIX implementation of the logging macros, refer to core_http_config.h files, and the logging-stack in demos folder of the AWS IoT Embedded C SDK repository.

Default value: Warning logs are turned off, and no code is generated for calls to the macro in the HTTP Client library on compilation.

LogInfo

Macro that is called in the HTTP Client library for logging "Info" level messages. To enable info level logging in the HTTP Client library, this macro should be mapped to the application-specific logging implementation that supports info logging.

Note
This logging macro is called in the HTTP Client library with parameters wrapped in double parentheses to be ISO C89/C90 standard compliant. For a reference POSIX implementation of the logging macros, refer to core_http_config.h files, and the logging-stack in demos folder of the AWS IoT Embedded C SDK repository.

Default value: Info logging is turned off, and no code is generated for calls to the macro in the HTTP Client library on compilation.

LogDebug

Macro that is called in the HTTP Client library for logging "Debug" level messages. To enable debug level logging from HTTP Client library, this macro should be mapped to the application-specific logging implementation that supports debug logging.

Note
This logging macro is called in the HTTP Client library with parameters wrapped in double parentheses to be ISO C89/C90 standard compliant. For a reference POSIX implementation of the logging macros, refer to core_http_config.h files, and the logging-stack in demos folder of the AWS IoT Embedded C SDK repository.

Default value: Debug logging is turned off, and no code is generated for calls to the macro in the HTTP Client library on compilation.