wolfSSL error codes are mostly positive numbers, but esp-tls potentially
non-block API (read/write) returns ssize_t, i.e. bytes read/written if
>0, errorcode otherwise. To comply with this API we have to conditionate
the wolfssl return codes to negative numbers, preferably the same codes
as mbedTLS codes.
Refactored the esp_tcp_connect() functionality to break it down to
* dns-resolution + socket creation
* set configured socket options
* set/reset non-block mode
* the actual connection in non-blocking mode
For compatibility reasons, support also transports separately if the transport is used
before attaching to parent list. In this case we create an internal context which is
independent on the foundation transport and used preferably
Transport's error_handle is used to capture different types of errors
including esp_err_t from esp-tls and socket/system errors.
This change adds the following error codes for TCP transport:
* connection closed by a FIN flag (clean closure from server)
* DNS resolution problem
* connection timeout
These errors are already defined in esp-tls component and since this
component will be used in the future for both TCP and SSL transport, we
currently report these issues in transport::error_handle::esp_tls_last_error
of standard esp error type (esp_err_t)
Closes https://github.com/espressif/esp-mqtt/issues/182
Added the RMT/addr LED blink to the example and more detailed README.md
Moved component/led_strip to common_components
Added missing README file to common_components/led_strip
README file update
Makefile and Kconfig fixed for led_strip component
Fixing end-of-line on main/blink.c
Component updated to handle multiple instances
Added note on the RMT channel number (ESP32 and ESP32-S2)
Removed components folder from rmt/led_strip example and README updated
Changed the led_strip_denit function and added ESP32-C3 RMT info on channel configuration
Updates on README, Kconfig default settings and configure_led() function added
- Removes extra callback function, the code from the callback is integrated into the event handler code.
- Clarify usage of handler args, pass NULL as callback data instead of client, to avoid user confusion,
and add documentation on usage of handler_args.
Removed leftover code-paths that were never taken. Upstream freertos uses
vTaskSuspendAll() and xTaskResumeAll(), and therefor check if the task already
yielded.
In the IDF port of freertos we use critcal sections instead, so xAlreadyYielded
will never be set.
Partially addresses https://github.com/espressif/esp-idf/issues/6440
Current lwip implementation does not support deleting a task which is
actively waiting on `select()` or `poll()` API.
Therefore we have to make sure that `select()` exits to deallocate its internal
callback before deleting the task. This is achieved by a shutdown
semaphore which informs the client once the `select()` exitted.
fix slave