- Add `ciphersuites_list` to `esp_mqtt_client_config_t` for specifying TLS cipher suites.
- Update SSL transport configuration to use the provided cipher suites.
- Users are responsible for managing the cipher suites list memory.
ECDSA support from the esp-idf veriosn 5.2.0, although we had
support ECDSA peripheral for H2 since 5.1, but we had put the support
of ECDSA in esp-tls from v5.2.0
In the mqtt5 protocol the broker can disconnect the client with
a disconnect packet. This packet contains a reason value that can be
useful for certain applications in which it is important to know
the reason of disconnection.
While the client is connected is possible that a disconnect packet
is reaceived by the broker to force a disconnection. Before this
patch this approach causes a generic error on transport in case of
disconnection from the broker. If the packet is managed before getting
an error it is possible to save the reason code in the
disconnect_return_code variable in the error_handle, and dispatch
the disconnect event that can be managed by the application event
loop, that now can know the reason of disconnection from the broker.
Reset the variable in case of error.
Signed-off-by: Flavia Caforio <flavia.caforio@amarulasolutions.com>
Enable user to set which interface should be used for client network,
allowing client to be binded to the interface selected by user forcing
it to go through the selected interface.
Closes https://github.com/espressif/esp-mqtt/issues/253
The possibility to add a callback as custom handler was removed from
the client in favor of esp_event. These removes the older alternative
that wasn't possible to use.
Today there is no way to add a new transport without applying
modifications to the transport list. This impose limitations on the
client usage. Adding the custom configuration we enable user defined
transports.
Fix: Compilation in C++ with multiple subscribe
See merge request espressif/esp-mqtt!171
(cherry picked from commit 88413ec3f27102daa805ae1992dd145b42d4690d)
47da99fb Fix: Compilation in C++ with multiple subscribe
- Payload data parsed for error codes. Check only for first filter
because our subscribe function only handle one topic filter in each
call.
- Closes https://github.com/espressif/esp-mqtt/issues/233
- Transport selection enum was incorrectly pointed as having precedence
over URI.
- Added names to unnamed enums and structs on typedefs.
- Reorganize config struct fields grouping fields with related context.