Marius Vikhammer
f542c979e9
tcp_transport/ws_client: websockets now correctly handle messages longer than buffer
...
transport_ws can now be read multiple times in a row to read frames larger than the buffer.
Added reporting of total payload length and offset to the user in websocket_client.
Added local example test for long messages.
Closes IDF-1083
2020-02-28 10:53:08 +08:00
David Cermak
c7e1416174
esp_tls: added connection timeout to esp_tls_conn_new_sync()
2020-01-20 07:26:51 +01:00
David Cermak
1611386431
ws_client: fix ping-pong mechanism to use mask, support reception of zero-payload PONG and sending non-zero-payload PING
...
Closes https://github.com/espressif/esp-idf/issues/3890
Closes https://github.com/espressif/esp-idf/issues/4138
2019-11-02 14:12:11 +01:00
Jiang Jiang Jian
0562281353
Merge branch 'bugfix/ws_buffer_overflow_fix_v4.0' into 'release/v4.0'
...
tcp_transport: fix possible buffer overflow in ws transport connect (v4.0)
See merge request espressif/esp-idf!6447
2019-11-02 17:28:12 +08:00
David Cermak
44599d3a84
ws_client: fix for not sending ping responses, updated to pass events also for PING and PONG messages, added interfaces to send both binary and text data
...
closes https://github.com/espressif/esp-idf/issues/3982
2019-11-01 14:14:15 +00:00
David Cermak
d3a8dcb929
tcp_transport: fix possible buffer overflow in ws transport connect
...
closes IDF-692
2019-11-01 14:05:04 +00:00
David Cermak
f96c02adac
mqtt: updated to latest version to include latest fixes, support for global CA store, extended error structure to receive mqtt specific errors. updated idf ssl example to use this error struct
...
backport of 640eac84fa
2019-10-17 16:45:29 +02:00
Renz Christian Bagaporo
c711e969cc
components: fix incorrect include dir args
2019-08-28 10:28:17 +08:00
David Cermak
8fc02e860a
tcp_tansport: websocket layer modifies in-buffer data (for masked transports). This fix reverts the data back to original rather then making a copy.
...
Closes https://github.com/espressif/esp-idf/issues/3774
2019-07-16 09:47:18 +02:00
Angus Gratton
d67b9403e8
Merge branch 'feature/tcp_transport_pass_errors_stage1' into 'master'
...
esp-tls: capturing specific errors to be available in tcp_transport and then in application code
See merge request espressif/esp-idf!4782
2019-07-08 08:51:29 +08:00
David Cermak
587739391c
esp-tls: extending error handle to contain error descriptors with last mbedtls failure and latest certificate verification result flags, reworked tcp_transport to use this error handle
2019-07-04 20:55:10 +02:00
David Cermak
2972f96982
esp-tls: capturing specific errors to be available in tcp_transport and then in application code
2019-07-04 20:55:10 +02:00
Max Holtzberg
edbcb5b295
esp_transport_destroy: Fix memory leak
...
if tcp_transport component was used separately (e.g. using tranpsort_ssl.h directly without building list of transport) then it leaks memory on unitialization
Merges https://github.com/espressif/esp-idf/pull/3541
Closes https://github.com/espressif/esp-idf/issues/3531
Signed-off-by: David Cermak <cermak@espressif.com>
2019-07-04 11:07:41 +02:00
David Cermak
412dc95168
tcp_transport: added basic unit tests for init/destroy transports in lists or when used separately
2019-07-04 11:07:41 +02:00
Jitin George
c536c8fa5f
tcp_transport: Add API to allow skipping of certificate CN validation
2019-06-25 23:41:33 +00:00
Renz Christian Bagaporo
9eccd7c082
components: use new component registration api
2019-06-21 19:53:29 +08:00
Tuan
2a2d932cfe
esp_websocket_client: Add websocket client component
...
Closes https://github.com/espressif/esp-idf/issues/2829
2019-06-20 15:37:40 +08:00
David Cermak
243e0b229f
tcp_transport: fix minor memory leak found by static analyzer
...
Closes https://github.com/espressif/esp-idf/issues/3602
2019-06-10 14:28:42 +02:00
David Cermak
db121a56e1
tcp_transport: modified ws_read to read payload directly to the read buffer and separately from header bytes
...
Previous version read all data to the buffer including header which reduced maximum payload read. This version uses a local array to receive header and reads payload bytes to the buffer
2019-05-27 16:31:24 +02:00
David Cermak
d41d70b8ef
tcp_transport: reading http header in a chunked mode until header terminator received (or timeout) to correctly receive all header if fragmented
...
Closes https://github.com/espressif/esp-idf/issues/3461
2019-05-20 16:40:03 +02:00
Bas Verhoeven
16ee5663ad
transport_ws: Stop connecting when the parent's connect call has failed
...
Merges https://github.com/espressif/esp-idf/pull/3164
2019-04-04 16:14:42 +02:00
David Cermak
5141e0ec24
tcp_transport: ws fix on reception of longer data than receive buffer
2019-03-22 11:37:26 +01:00
morris
c159984264
separate rom from esp32 component to esp_rom
...
1. separate rom include files and linkscript to esp_rom
2. modefiy "include rom/xxx.h" to "include esp32/rom/xxx.h"
3. Forward compatible
4. update mqtt
2019-03-21 18:51:45 +08:00
Jitin George
d943c8de94
tcp_transport: Fix case sensitive header comparison
...
Closes https://github.com/espressif/esp-idf/issues/3106
2019-03-14 14:31:28 +05:30
Mahavir Jain
27e00cf7aa
esp_http_client: add support for using certs from global ca store
...
Closes https://github.com/espressif/esp-idf/issues/3062
2019-02-27 14:19:06 +05:30
rustyx
053219283d
Handle esp_tls_conn_read disconnection in ssl_read. Fixes #2805
...
Closes https://github.com/espressif/esp-idf/pull/2967
2019-01-23 16:47:23 +05:30
Ivan Grokhotkov
ad5d81df04
Merge branch 'feature/mqtt_before_connect_event' into 'master'
...
MQTT support for fragmented and packed messages
See merge request idf/esp-idf!3743
2019-01-11 15:38:23 +08:00
Jitin George
e2ae69f6fb
Minor Bugfixes in esp_http_client, tcp_transport and simple_ota_example
2019-01-07 16:33:41 +08:00
David Cermak
bed26be427
tcp_transport: modification of ws to read headers first in order to read the exact payload
...
closes https://github.com/espressif/esp-mqtt/issues/69
2019-01-03 09:22:40 +01:00
Ivan Grokhotkov
ee0dea3d0d
Merge branch 'bugfix/esp_http_client_async_crash' into 'master'
...
esp_http_client: Fix crash in async mode
See merge request idf/esp-idf!3551
2018-11-05 12:30:04 +08:00
Jitin George
3551b84c3a
esp_http_client: Fix crash in async mode
...
Closes https://github.com/espressif/esp-idf/issues/2624
2018-10-30 09:58:57 +00:00
David Cermak
0cdb33c9dd
mqtt: ssl mutual authentication example added per PR from github, corrected cmake build, updated per idf style
...
Merges https://github.com/espressif/esp-idf/pull/2490
2018-10-30 08:04:09 +01:00
Riccardo Binetti
9ce8e1e5a1
transport_ssl: add support for mutual SSL authentication
...
Signed-off-by: David Cermak <cermak@espressif.com>
2018-10-30 08:04:09 +01:00
David Cermak
0d4f5cc495
tcp_transport: transport set handle refactoring, web socket client name updated
2018-10-02 15:19:46 +02:00
David Cermak
e02225cc07
tcp_transport: renamed possibly generic function names to be esp_ prefixed and not to colide with user namespace
2018-10-02 14:16:48 +02:00
Anton Maklakov
2c5a25a42e
tcp_transport: Use getrandom() instead of rand() in the entire esp-mqtt
...
Signed-off-by: David Cermak <cermak@espressif.com>
2018-10-02 14:16:26 +02:00
Anton Maklakov
e3c6839802
tcp_transport: Fix warning, put in order the nearest code, replace sprintf with snprintf
...
Signed-off-by: David Cermak <cermak@espressif.com>
2018-10-02 14:15:27 +02:00
David Cermak
40c6cbb3ab
tcp_transport: renamed transport related header files to esp_ prefixed to avoid collisions
...
tcp_transport component used public header files such as 'transport.h', etc. which are too generic and might collide with user or user libraries headers
This change closes #2417
2018-10-02 14:15:00 +02:00
Jitin George
5309ca04d1
esp_http_client: Add support for non-blocking feature in esp_http_client_perform() API
...
Four internal APIs `esp_http_client_connect()`, `http_client_prepare_first_line()`, `esp_http_client_request_send()` and
`esp_http_client_send_post_data()` API have been added for perfoming connection establishment (sync as well as async),
preparing first line, sending request and sending post data respectively.
In `transport_ssl`, `ssl_connect_async()` API has been added for establishing asynchronous connection.
2018-09-24 05:42:28 +00:00
Renz Bagaporo
8f85fa1bfb
tcp_transport: list files manually in component cmake file
2018-09-19 16:48:31 +08:00
David Cermak
23345d2021
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
2018-09-12 08:00:59 +02:00