Previously with HTTPD_SSL_CONFIG_DEFAULT being a MACRO, the
configuration options could not be applied to it. This was casuing
error in multiple scenarios. For e.g., here user_cert_cb is a part
of httpd_ssl_config_t which this macro defines. But the type of
user_cert_cb (esp_tls_server_callback_t) is only available when it is enabled
in esp-tls. The MACRO however cannot be modified to set the defaults
based on configuration option. This fix solves the issue without
breaking the compatibility
* All components which won't build (yet) on Linux are excluded.
This enables switching to Linux in an application without
explicitly setting COMPONENTS to main in the main
CMakeLists.txt.
* ESP Timer provides headers for Linux now
* automatically disabling LWIP in Kconfig if it is not available
doc(linux): brought section
"Component Linux/Mock Support Overview" up to date
Protocol examples used to raise an error if the target was not set
and `idf.py build` command was used. This commit fix this error
and when IDF_TARGET is not set, ESP32 is selected as default target
For ESP certificate bundle case, the certificate failure error from
underlying TLS stack was not being tracked. Added the fix and also
updated example code showcasing how to retrieve it.
Closes https://github.com/espressif/esp-idf/issues/12034
1. Fix potential out-of-bounds access when calling `strlen(local_response_buffer)`
if `content_length` is greater than or equal to the length of `local_response_buffer`
due to missing the terminator `\0` at the last character position.
2. Fix the residual data issue when the previous request is longer than the subsequent
request while outputting the `local_response_buffer` for each request in the
`http_rest_with_url()` function.
Signed-off-by: Harshit Malpani <harshit.malpani@espressif.com>
MBEDTLS_TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384 ciphersuite support
seems to be removed from howsmyssl.com. Add more ciphersuites in
server_supported_ciphersuites in https_request example to fix failures
while connecting to howsmyssl.
Fix build issue in mbedTLS dynamic buffer feature with
`CONFIG_MBEDTLS_DHM_C` enabled case. Also added a build
configuration for the test coverage.
Closes https://github.com/espressif/esp-idf/issues/11770
Fix unsigned integer overflow when `content_length` is -1.
The proposed change is to modify the format specifier for content_length from PRIu64 to PRId64, which will print the signed value as a 64-bit integer instead.
This commit adds support for handling multiple requests simultaneously by introducing two new functions: `httpd_req_async_handler_begin()` and `httpd_req_async_handler_complete()`. These functions allow creating an asynchronous copy of a request that can be used on a separate thread and marking the asynchronous request as completed, respectively.
Additionally, a new flag `for_async_req` has been added to the `httpd_sess_t` struct to indicate if a socket is being used for an asynchronous request and should not be purged from the LRU cache.
An example have been added to demonstrate the usage of these new functions.
Closes https://github.com/espressif/esp-idf/issues/10594
Signed-off-by: Harshit Malpani <harshit.malpani@espressif.com>
Use Root certificate (`DigiCert Global Root G2`) for the
`dl.espressif.com` and `espressif.com` test endpoints.
This fixes the test failure introduced due to renewal of
the intermediate certificate.
linux/lwip: Wrap some IO posix functions
* to workaourd the FreeRTOS EINTR issue (when building without lwip)
* to correctly choose the sub-system based on fd (when building with
lwip) -- passing control to either linux/system or to lwip
This commit also addapts tapio-if to provide DHCP client by default and
configurable settings for static IP