David Cermak
24b656ca4b
MQTT: Moved Kconfig from esp-mqtt submodule to esp-idf to support docs genration in RTD
2022-12-16 08:38:48 +01:00
David Cermak
c5069977a4
MQTT: Integrate esp-mqtt library into idf
...
added docs and tests for mqtt library, small fixes (removed warnings, option for custom outbox, websocket bug fixed for longer transports). refactored to use common tcp_transport component, support for CMake build system.
Closes #2108
2022-12-16 08:38:48 +01:00
Euripedes Rocha
f80772b8d7
Bugfix: Remove Remove possible null pointer dereferences
...
- Removed a possible derefrence on data in case of MQTT5 SUBACK with
MQTT5 disabled.
- Covered a case of NULL data on message with negative size.
- Use correct type on calloc for alpn_protos
- Changed strcasecmp to strncasecmp.
2022-12-15 13:02:46 +01:00
David Čermák
d5a2c0a7c6
Merge branch 'bugfix/subscribe_error_detection' into 'master'
...
Fix error code verification on SUBSCRIBE error
See merge request espressif/esp-mqtt!155
2022-12-15 18:59:01 +08:00
Euripedes Rocha
d1f6ad23b7
Fix error code verification on SUBSCRIBE error
...
- Return codes other than 0x1, 0x2, 0x3 and 0x80 are reserved and
forbidden by the specification.
2022-12-05 15:22:48 +01:00
David Čermák
fde00340f1
Merge branch 'bugfix/event_queue_disabled_deafult' into 'master'
...
Fix the default configuration for event queue
See merge request espressif/esp-mqtt!153
2022-11-23 22:17:25 +08:00
Rocha Euripedes
fb42588a03
Fix the default configuration for event queue
...
- Event queue should be disabled, making it an opt-in feature.
2022-11-23 20:40:31 +08:00
David Čermák
3e0a118e0b
Merge branch 'bugfix/missing_header' into 'master'
...
Adds missing header.
See merge request espressif/esp-mqtt!152
2022-11-04 00:26:54 +08:00
Euripedes Rocha
8a6005781d
Adds missing header.
...
- esp_heap_caps is directly needed and wasn't included.
- For target it's indirecly included but for host test it's needed.
2022-11-03 15:26:43 +01:00
David Čermák
e80f3e6a87
Merge branch 'bugfix/stop_in_wait_reconnection' into 'master'
...
Moves state change when stopping the client
See merge request espressif/esp-mqtt!150
2022-10-26 21:19:00 +08:00
Euripedes Rocha
3738fcd196
Moves state change when stopping the client
...
- In some situations client could be left in a state where it's
impossible to restart due to a state change while waiting for the
stop. This guarantee that it's possible to start after calling stop.
Closes https://github.com/espressif/esp-mqtt/issues/239
2022-10-26 14:37:28 +02:00
David Čermák
5f297c0d62
Merge branch 'bugfix/set_error_on_subscribe_failure' into 'master'
...
Adds error code to MQTT_EVENT_SUBSCRIBED in case of failure
See merge request espressif/esp-mqtt!143
2022-10-21 23:46:02 +08:00
Euripedes Rocha
9af5c26045
Adds error code to MQTT_EVENT_SUBSCRIBED in case of failure
...
- 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
2022-10-20 13:29:16 +02:00
David Čermák
2b52b50a6b
Merge branch 'feature/debug_retry' into 'master'
...
Adds debug information on sending dup messages
See merge request espressif/esp-mqtt!145
2022-10-04 13:15:50 +08:00
Euripedes Rocha
47b3f9b899
Adds debug information on sending dup messages
...
- To support debug of resending dup messages QoS 1 and 2 a debug
log was added.
2022-10-03 07:43:01 +00:00
David Čermák
a87fd9c738
Merge branch 'bugfix/ci_qemu' into 'master'
...
ci: Fix qemu build
See merge request espressif/esp-mqtt!147
2022-09-30 22:44:15 +08:00
David Cermak
68e8c4f829
ci: Fix qemu build
2022-09-30 16:14:36 +02:00
David Čermák
5688a84cbc
Merge branch 'bugfix/extend_ci_idf_v5.1' into 'master'
...
ci: Build and Test QEMU on v5.0
See merge request espressif/esp-mqtt!142
2022-08-19 23:45:43 +08:00
David Cermak
9db9ee7648
ci: Build and Test QEMU on v5.0
...
* Patch the QEMU build
* Use public containers for build only tests on v5.0 and master
2022-08-18 16:51:16 +02:00
David Čermák
5f3cadb44d
Merge branch 'bugfix/user_events' into 'master'
...
client: Add support for user events
See merge request espressif/esp-mqtt!140
2022-08-16 21:30:58 +08:00
David Cermak
97503cceb3
client: Add support for user events
...
Also supporting configurable queue size for the internal event loop.
Closes https://github.com/espressif/esp-mqtt/issues/230
2022-07-29 09:08:52 +02:00
David Čermák
9186e5fa00
Merge branch 'feature/unregister_event_api' into 'master'
...
Adds unregister event API
See merge request espressif/esp-mqtt!139
2022-07-28 21:07:25 +08:00
Euripedes Rocha
a9a9fe76bf
Adds unregister event API
...
- Added to enable users to unregister event handler.
Closes https://github.com/espressif/esp-idf/issues/9194
2022-07-28 10:36:24 +00:00
David Čermák
f14eeb9157
Merge branch 'feature/mqtt_config_struct_review' into 'master'
...
Restructure the client configuration struct
See merge request espressif/esp-mqtt!130
2022-07-20 18:40:24 +08:00
Euripedes Rocha
ae53d799da
Restructure the client configuration struct
...
- Groups configuration fields by context.
- Removes user_context in favor of the event loop.
2022-07-13 08:37:20 -03:00
David Čermák
9a56b2f086
Merge branch 'bugfix/ping_timer_restart' into 'master'
...
MQTT tick not starting on connect and switch to esp_timer
See merge request espressif/esp-mqtt!138
2022-07-05 20:09:11 +08:00
Euripedes Rocha
89e5c6014f
fix: MQTT tick not starting on connect and switch to esp_timer
...
- Tick should be updated on connect
- Dependency of system timer removed to avoid issues when updating via
SNTP
Closes https://github.com/espressif/esp-mqtt/issues/225
2022-06-23 12:43:58 -03:00
David Čermák
493822dc9d
Merge branch 'feature/support_mqtt_5' into 'master'
...
mqtt: Support MQTT5 protocol
See merge request espressif/esp-mqtt!125
2022-06-14 21:40:57 +08:00
yuanjm
fdf2aeb36f
Seperate MQTT5 from MQTT 3.1.1
2022-06-14 09:37:46 +00:00
yuanjm
3d275f42b9
mqtt: Support MQTT5 protocol
2022-06-14 09:37:46 +00:00
David Čermák
0aa0a342a1
Merge branch 'bugfix/mqtt_ssl_build' into 'master'
...
mqtt_tcp: Fix build issue when `MQTT_ENABLE_SSL` is disabled
See merge request espressif/esp-mqtt!137
2022-06-14 17:31:41 +08:00
Laukik Hase
7253211a45
mqtt_tcp: Fix build issue when MQTT_SSL is disabled
2022-06-14 13:43:45 +05:30
David Čermák
a21c387d62
Merge branch 'refactor/tcp_transport' into 'master'
...
mqtt_client: Added checks for cleanly-closed connection and timeout
See merge request espressif/esp-mqtt!118
2022-06-09 15:20:24 +08:00
David Čermák
7a31a555e9
Merge branch 'bugfix/fix_esp_mqtt_client_enqueue' into 'master'
...
mqtt_client: fix esp_mqtt_client_enqueue for len=0 (GitHub PR)
See merge request espressif/esp-mqtt!135
2022-06-08 19:33:38 +08:00
David Čermák
16952ea66f
Merge branch 'bugfix/implicit_malloc_host_test' into 'master'
...
Fix implicit malloc/free inclusion
See merge request espressif/esp-mqtt!134
2022-06-08 18:52:04 +08:00
Laukik Hase
e05d873aa2
Added checks for cleanly-closed connection and timeout
...
- Related MR: https://gitlab.espressif.cn:6688/espressif/esp-idf/-/merge_requests/16394
2022-06-08 16:12:11 +05:30
David Cermak
9299f5400f
Fix implicit malloc/free inclusion
...
This fails when building on host
2022-06-08 05:16:29 +00:00
Craig Kewley
69b6493423
mqtt_client: fix esp_mqtt_client_enqueue for len=0
...
Commit 372b323 (mqtt_client: Fix mqtt send long data error, 2021-12-21)
removed the length calculation from esp_mqtt_client_enqueue_priv and
added it to esp_mqtt_client_publish. However, esp_mqtt_client_enqueue
was missed. Currently calls to esp_mqtt_client_enqueue appear to send no
data, fix this by adding the length calculation to esp_mqtt_client_enqueue.
2022-05-30 21:56:33 +01:00
David Čermák
7f765cac2c
Merge branch 'feature/optimize_mqtt_transport_list' into 'master'
...
feat(mqtt): Optimize mqtt transport list and remove unused transport
See merge request espressif/esp-mqtt!131
2022-05-23 22:19:24 +08:00
Yuan Jian Min
647e0eff32
feat(mqtt): Optimize mqtt transport list and remove unused transport
2022-05-23 22:19:24 +08:00
David Čermák
684843a309
Merge branch 'bugfix/wrong_wss_port_definition' into 'master'
...
Fix WSS default port selection through menuconfig.
See merge request espressif/esp-mqtt!132
2022-05-17 15:43:37 +08:00
Euripedes Rocha
f6caaff254
Fix WSS default port selection through menuconfig.
...
Evaluate the correct define to select default port.
- Closes https://github.com/espressif/esp-mqtt/issues/223
2022-05-17 07:16:07 +00:00
David Čermák
64f88b4412
Merge branch 'bugfix/fix_transport_config_documentation' into 'master'
...
Fix documentation of config struct
See merge request espressif/esp-mqtt!129
2022-05-03 20:09:10 +08:00
Euripedes Rocha
e31834c00f
Fix documentation of config struct
...
- 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.
2022-05-02 13:29:39 -03:00
David Čermák
59b48a4d49
Merge branch 'bugfix/keep_alive_ping_periodic' into 'master'
...
Changes the moment we update keepalive_tick.
See merge request espressif/esp-mqtt!127
2022-04-19 22:16:19 +08:00
David Čermák
2cdcdcb4fa
Merge branch 'bugfix/mqtt_fix_int_sign_mismatch' into 'master'
...
MQTT: Fix signature matching for some integer values
See merge request espressif/esp-mqtt!128
2022-04-12 19:35:51 +08:00
gabsuren
6b794e4708
MQTT: Fix signature matching for integer values
...
Closes https://github.com/espressif/esp-idf/issues/8482
2022-04-08 19:56:56 +04:00
Euripedes Rocha
2c2e6f38b5
Changes the moment we update keepalive_tick.
...
In order to keep sending keep alive messages in the scenario were client
publish too often with QoS0 the keepalive is updated when the response
is received.
2022-04-07 09:14:03 -03:00
David Čermák
5878e2e8a6
Merge branch 'module_logging_tag_lower_case' into 'master'
...
Make the mqtt submodule logging tags lower case
See merge request espressif/esp-mqtt!122
2022-04-04 18:54:43 +08:00
AndriiFilippov
fb3184cc14
Make the mqtt submodule logging tags lower case
2022-04-04 10:33:06 +02:00