Commit Graph

352 Commits

Author SHA1 Message Date
David Čermák
fcd7f0d083 Merge branch 'bugfix/network_timeout' into 'master'
Allow to configure network timeout

See merge request espressif/esp-mqtt!78
2020-09-02 19:38:15 +08:00
Dmitriy Shilin
a03228ac46 Allow to configure network timeout
Merges https://github.com/espressif/esp-mqtt/pull/166
2020-09-02 08:36:01 +02:00
David Čermák
01594bf118 Merge branch 'feature/mqtt_support_esp_ds' into 'master'
esp-mqtt: Add support for Digital Signature (through ESP-TLS)

See merge request espressif/esp-mqtt!71
2020-08-18 15:22:41 +08:00
Aditya Patwardhan
7d8e59de00 mqtt: Add support for Digital Signature (through ESP-TLS)
Digital Signature enables hardware accelerated RSA signature
for TLS handshake.The RSA private key(client key) is also stored in
encrypted format and ecryption key is stored in hardware(efuse) which adds
additional level of security for mutual authentication.
* Digital Signature is only supported for ESP32-S2.

Applicable IDF version >= v4.3
2020-08-18 11:55:43 +05:30
David Čermák
ae408d9a69 Merge branch 'feature/outbox_limit' into 'master'
MQTT: Cleanup expired messages when offline

See merge request espressif/esp-mqtt!76
2020-08-18 14:08:57 +08:00
David Čermák
a8ef2a434b Merge branch 'bugfix/read_error_event' into 'master'
MQTT: add dispatch error event for read errors

See merge request espressif/esp-mqtt!75
2020-08-18 14:07:50 +08:00
David Čermák
867773e423 Merge branch 'fix/secure_element_feature' into 'master'
esp-mqtt: i) fix version check for secure_element

See merge request espressif/esp-mqtt!70
2020-08-18 14:04:39 +08:00
David Čermák
ac7209049f Merge branch 'bugfix/stop_from_event' into 'master'
MQTT: Fix esp_mqtt_client_stop deadlock

See merge request espressif/esp-mqtt!74
2020-08-17 22:01:08 +08:00
Marius Vikhammer
bdadd77c6e mqtt: deleted expired messages even when offline
As long as the client was disconnect no cleanup were performed,
consuming memory for every message published. Even if they were already
expired and would be discarded when reconnected.

Also moves delete of expired msgs before retransmit is done.
This avoids situtations where a message could be sent even if it was
expired.

Closes https://github.com/espressif/esp-idf/issues/5668
2020-08-10 16:42:32 +08:00
Marius Vikhammer
f7325bfa10 mqtt: esp_mqtt_client_publish now returns msd id for QoS>0 when offline 2020-08-10 14:47:05 +08:00
Marius Vikhammer
d4aaec08ff MQTT: add dispatch error event for read errors
Closes https://github.com/espressif/esp-idf/issues/5704
2020-08-07 17:54:40 +08:00
Marius Vikhammer
5e17dcaeb2 MQTT: Fix esp_mqtt_client_stop deadlock
esp_mqtt_client_stop would lead to a deadlock (with itself) when called
from the event handler.

Updated comments to reflect that some functions should not be called from
the event handler.

Closes https://github.com/espressif/esp-mqtt/issues/163
2020-08-04 19:26:37 +08:00
Aditya Patwardhan
db4bce01ab mqtt: i)fix version check for secure_element
ii) fix secure_element error return

The feature allows use of secure element for TLS connections, which makes use of hardware security for storage of client private keys(only keys with ECC algorithm)

Applicable IDF versions: >= 4.2
2020-08-03 09:45:27 +05:30
David Čermák
702da6d528 Merge branch 'bugfix/build_test_fix' into 'master'
CI: Fixes build test issues

See merge request espressif/esp-mqtt!72
2020-07-31 19:40:25 +08:00
David Cermak
0bafcc5188 ci: Add IDF v4.2 to build tests
Also fixes build issues when default config carried over IDF releases --
always remove previous `sdkconfig` before a new build
2020-07-30 16:54:00 +02:00
David Cermak
651c2fb4a2 ci: Fix travis build with legacy IDFs 2020-07-24 14:56:12 +02:00
David Čermák
d754293d25 Merge branch 'feature/check_cfg_consistency' into 'master'
Add check for consistency between config settings

See merge request espressif/esp-mqtt!69
2020-07-17 00:05:04 +08:00
Marius Vikhammer
8a412c147d Add check for consistency between config settings
Warn user if the MQTT config seems misconfigured, e.g.
user specifies a SSL certificate, but SSL not activated
2020-07-08 12:54:00 +08:00
David Čermák
5b8c04f348 Merge branch 'feature/allow_query_in_uri' into 'master'
Allow the query part of the uri to be a part of the path

See merge request espressif/esp-mqtt!68
2020-06-29 21:16:48 +08:00
Marius Vikhammer
40b06deb10 Allow the query part of the uri to be a part of the path
Closes IDFGH-3565
Closes https://github.com/espressif/esp-mqtt/issues/161
2020-06-29 10:33:42 +08:00
David Čermák
109985d3ad Merge branch 'feature/enable_tls_with_secure_element' into 'master'
esp-mqtt: add support for tls with secure element (ATECC608A)

See merge request espressif/esp-mqtt!66
2020-06-25 13:42:41 +08:00
Aditya Patwardhan
a7ff9afa3f esp-mqtt: add support for tls with secure element (ATECC608A)
Closes https://github.com/espressif/esp-mqtt/issues/156
2020-06-25 10:36:58 +05:30
David Čermák
2f9b337071 Merge branch 'feature/skip_cmn_name_check' into 'master'
SSL: add config option for skipping common name check

See merge request espressif/esp-mqtt!67
2020-06-10 15:13:58 +08:00
Marius Vikhammer
5e8950e681 SSL: add config option for skipping common name check
Closes IDFGH-3408
Closes https://github.com/espressif/esp-mqtt/issues/158
2020-06-09 14:23:40 +08:00
David Čermák
6bc94add89 Merge branch 'bugfix/confusing_print' into 'master'
mqtt_print: Change the message printed after MQTT connection failure

See merge request espressif/esp-mqtt!65
2020-04-28 19:04:34 +08:00
David Čermák
20bf9928d4 Merge branch 'bugfix/block_api_docs' into 'master'
docs: Makes clear that publish API could block

See merge request espressif/esp-mqtt!64
2020-04-28 15:22:46 +08:00
Piyush Shah
fb41520206 mqtt_print: Change the message printed after MQTT connection failure
Since the original message was confusing.
2020-04-24 23:05:47 +05:30
David Cermak
615aeae0c2 docs: Makes clear that publish API could block
Closes https://github.com/espressif/esp-idf/issues/5077
2020-04-24 14:26:37 +02:00
David Čermák
0c3d306589 Merge branch 'bugfix/print_messages' into 'master'
Some changes to debug prints

See merge request espressif/esp-mqtt!63
2020-04-08 01:33:01 +08:00
Piyush Shah
b02746492a esp_mqtt: Change an error print to use ESP_LOGE instead of ESP_LOGI
And another one changed from LOGI to LOGD
2020-04-06 12:13:18 +05:30
David Čermák
50dc010b97 Merge branch 'bugfix/abort_race_condition' into 'master'
esp_mqtt_abort_connection: Fixed an issue which could result in a race...

See merge request espressif/esp-mqtt!62
2020-04-01 22:39:06 +08:00
Piyush Shah
dc1a635a97 esp_mqtt_abort_connection: Fixed an issue which could result in a race condition and subsequent crash 2020-03-30 19:59:27 +05:30
David Čermák
0fc904c5d8 Merge branch 'feature/config_mqtt_task_prio' into 'master'
config: option to configure mqtt task priority

See merge request espressif/esp-mqtt!61
2020-03-20 14:50:07 +08:00
Simon Brélivet
d8e2081332 config: option to configure mqtt task priority 2020-03-17 13:34:27 +01:00
David Čermák
9b750651fc Merge branch 'bugfix/add_out_buff_size' into 'master'
config: option to configure output buffer size

See merge request espressif/esp-mqtt!60
2020-03-12 04:31:35 +08:00
David Cermak
61a8f4b63c ci: fix build issue (stale CMake cache) between 4.1 and 4.2 2020-03-10 16:19:51 +01:00
David Cermak
f243225521 config: option to configure output buffer size
Both input and output buffers had the same size, but it is desirable in embedded environment to use asymetric buffers. Added configuration option to defined output buffer size, if not defined output buffer defaults to the same size as the input buffer.

Closes https://github.com/espressif/esp-mqtt/issues/152
2020-03-10 15:26:49 +01:00
David Čermák
8a1e1a5a9f Merge branch 'bugfix/mqtt_cpp_build' into 'master'
Minor fixes: C++ invalid event, Resend for QoS > 0

See merge request espressif/esp-mqtt!59
2020-02-21 16:15:23 +08:00
David Cermak
62d1509961 Resend queued: Set duplicate flag for both qos1 and qos2
Closes https://github.com/espressif/esp-mqtt/issues/151
2020-02-20 16:00:15 +01:00
David Cermak
e2aa29d2ea Client: Fix C++ build failing on incorrect event enum conversion
Closes https://github.com/espressif/esp-idf/issues/4787
2020-02-20 14:44:38 +01:00
David Čermák
d801f03f46 Merge branch 'bugfix/missed_mutex_unlock' into 'master'
Fixed missing mutex unlock if subscribe message fails to be created

See merge request espressif/esp-mqtt!58
2020-02-10 15:43:27 +08:00
David Cermak
a9036b82a4 CI: make the qemu tests use IDF release branch
Building the mqtt against idf release/v4.1 for the qemu tests to avoid potential issues on IDF master with running qemu
2020-02-10 08:01:10 +01:00
David Cermak
3e4f91ae50 Client: unlock if unsubscribe message fails to be created
In a similar way as for the subscribe message
2020-02-10 08:01:10 +01:00
Umer Ilyas
7983357489 Client: unlock if subscribe message fails to be created
Closes https://github.com/espressif/esp-mqtt/issues/150
2020-02-10 08:00:45 +01:00
David Čermák
d5e915296e Merge branch 'bugfix/failed_to_compile_on4.0' into 'master'
fix compilation issue on v-4.0

See merge request espressif/esp-mqtt!57
2020-02-03 23:53:03 +08:00
David Cermak
9e20c7ae3d CI: Add checks to build against different IDF releases 2020-02-03 10:55:42 +01:00
David Cermak
38eab46f14 Fix compilation issue with IDF version 4.0 and lower
Closes https://github.com/espressif/esp-mqtt/issues/149
2020-01-31 21:42:45 +01:00
David Čermák
b963a5cd86 Merge branch 'bugfix/outbox_tick_type' into 'master'
Various fixes in mqtt library

See merge request espressif/esp-mqtt!55
2020-01-31 21:11:27 +08:00
David Cermak
2994c3f273 receive longer (websocket) data with standard tcp_transport reads
closes IDF-1084
2020-01-30 08:32:24 +01:00
David Cermak
420441b677 set separate ssl connection properties before transport connect 2020-01-30 08:31:59 +01:00