Commit Graph

188 Commits

Author SHA1 Message Date
glmfe
1d71a9e811 feat(tcp_transport): Add ws get HTTP response headers 2025-05-21 16:34:10 +02:00
Rocha Euripedes
061c05c88c Merge branch 'contrib/github_pr_15967' into 'master'
fix(tcp_transport): Silence recoverable read failures (GitHub PR)

Closes IDFGH-15309

See merge request espressif/esp-idf!39259
2025-05-20 17:02:17 +08:00
Richard Allen
7f982fa09d fix(tcp_transport): Silence recoverable read failures
In some applications, ESP_TLS_ERR_SSL_WANT_READ and
ESP_TLS_ERR_SSL_TIMEOUT are common results which
need handled at the next layer. Downgrade these
to debug.
2025-05-16 08:37:19 -05:00
Guilherme Ferreira
a5313b998c Merge branch 'feat/add-ws-redir' into 'master'
feat(tcp_transport): Add websocket HTTP redirect

Closes IDF-9073

See merge request espressif/esp-idf!37175
2025-05-15 18:56:56 +08:00
glmfe
2205a22dc1 feat(tcp_transport): Add websocket HTTP redirect
- Add and expose URI parser from HTTP when received a 301 status
2025-05-06 08:20:42 -03:00
dhb
141700ade5 feat(tcp_transport): add API to configure SSL cipher suites
Add new API esp_transport_ssl_set_ciphersuites_list() to allow configuring custom
TLS cipher suites in SSL transport layer. This enables users to:
- Set specific cipher suites for SSL/TLS connections
2025-04-28 16:10:56 +08:00
Guilherme Ferreira
87ce14650b Merge branch 'feat/ws-err-codes' into 'master'
feat(ws_transport): include error reason in failure log

Closes IDFGH-13978

See merge request espressif/esp-idf!38216
2025-04-11 19:35:17 +08:00
Richard Allen
5362a03eac feat(ws_transport): include error reason in failure log
When the underlying transport returns a failure,
add the failure result to the log.
2025-04-10 07:22:37 -03:00
Guilherme Ferreira
177c542be3 Merge branch 'fix/fix-test-socks-transport' into 'master'
fix(tcp_transport): Fix test for socks transport

Closes IDFCI-2781

See merge request espressif/esp-idf!38045
2025-04-07 22:34:34 +08:00
Chen Ji Chang
c3a3cc8657 Merge branch 'feat/h4_enable_ci_build' into 'master'
feat(esp32h4): enable ESP32H4 ci build

Closes IDF-12332

See merge request espressif/esp-idf!37921
2025-03-31 23:49:48 +08:00
Rocha Euripedes
96ff542397 Merge branch 'contrib/github_pr_15300' into 'master'
fix(transport_ws): remove unnecessary noise from error message (GitHub PR)

Closes IDFGH-14538

See merge request espressif/esp-idf!37079
2025-03-28 19:02:03 +08:00
Chen Jichang
c34b4eb882 feat(esp32h4): enable ESP32H4 ci build 2025-03-28 14:41:28 +08:00
glmfe
c8800028fa fix(tcp_transport): Fix test for socks transport
- Removed out of scope stack acess
2025-03-26 10:25:28 -03:00
igor.udot
daf2d31008 test: format all test scripts 2025-03-05 12:08:48 +08:00
nilesh.kale
486f3cdb7b docs: update document to remove dependency of esp32 on secure element usage 2025-02-19 14:54:24 +05:30
gaoxu
5ef4f20778 feat(esp32h21): disable unsupported build test 2025-02-06 15:47:51 +08:00
Erki Aring
b1c3b69391 fix(transport_ws): remove unnecessary noise from error message 2025-01-29 15:33:22 +02:00
Xu Si Yu
4be36fdb8b feat(tcp_transport): add an api to configure the addr family 2025-01-16 10:44:33 +08:00
David Čermák
94d4b6c44b Merge branch 'bugfix/ws_head_buf_size' into 'master'
fix(tcp_transport): Fix websocket header read to handle overflow

See merge request espressif/esp-idf!35139
2024-12-05 16:22:56 +08:00
Mahavir Jain
fcd706066a Merge branch 'bugfix/http_client_select_read_error' into 'master'
fix(tcp_tranport): Fix handling of select() return value

Closes IDFGH-13821

See merge request espressif/esp-idf!33985
2024-12-04 18:21:34 +08:00
Bogdan Kolendovskyy
872ae5211f feat: Expose the function to get socket descriptor from the transport
Closes https://github.com/espressif/esp-protocols/issues/636
Closes https://github.com/espressif/esp-mqtt/issues/282
2024-11-29 12:43:47 +01:00
nilesh.kale
5db0c49b8c fix(tcp_tranport): Fix handling of select() return value
When both readset/writeset and errset are set for a single socket,
the HTTP client incorrectly handled the condition, causing premature termination.
Added a check to ensure readset/writeset is prioritized before errset.

Closes https://github.com/espressif/esp-idf/issues/14673
2024-11-27 13:19:13 +05:30
David Cermak
0957626e26 fix(tcp_transport): Fix websocket header read to handle overflow 2024-11-22 14:14:53 +01:00
David Cermak
d8949fe50f fix(ws_transport): Unit test on reading WS data byte by byte
Closes https://github.com/espressif/esp-idf/issues/14704
Closes https://github.com/espressif/esp-protocols/issues/679
2024-11-12 17:07:15 +01:00
Richard Allen
7f54410256 fix(ws_transport): Fix reading WS header bytes
Correct split header bytes

When the underlying transport returns header,
length, or mask bytes early, again call the
underlying transport.

This solves the WS parser getting offset when
the server sends a burst of frames where the
last WS header is split across packet boundaries,
so fewer than the needed bytes may be available.

Merges https://github.com/espressif/esp-idf/pull/14706
2024-11-12 17:06:31 +01:00
David Čermák
4f467d02c7 Merge branch 'fix/ws_transport_mem_corrupt' into 'master'
fix(transport): Fix websocket mem-corruption while reading headers

Closes IDFGH-13585

See merge request espressif/esp-idf!33593
2024-09-26 18:53:00 +08:00
David Cermak
53e63eb125 fix(transport): Fix websocket mem-corruption while reading headers
Closes https://github.com/espressif/esp-idf/issues/14473
2024-09-17 18:15:17 +02:00
David Cermak
a4a1e7b7f2 feat(transport): Add more testcases for ws-connect to fail
Test case "ws connect fails (big response)" should fail on this commit
due to an off-by-one issue in ws_connect() read when chunk reading
http header(s).

Related to https://github.com/espressif/esp-idf/issues/14473
2024-09-17 18:09:21 +02:00
Sean DuBois
58775cce6e fix(ws_transport): Fix crash when reading
When parsing WS framing protocol integer promotion would cause
invalid values to be read. Acting upon these values would eventually
cause a crash

Fixes esp-protocols#645
2024-09-09 12:32:37 -04:00
igor.udot
8691672f03 ci: replace pytest function 2024-07-23 14:07:31 +08:00
wanlei
3cf069c7d8 feat(esp32c61): disable unsupported build test 2024-07-16 16:06:19 +08:00
Suren Gabrielyan
d5ae47e524 feat(ws_transport): Added host test for websocket transport 2024-07-08 19:00:03 +04:00
Suren Gabrielyan
09c8b1f618 fix(ws_transport): decouple WebSocket transport from foundation initialization 2024-07-08 14:59:15 +04:00
Alexey Lapshin
ed6e497c6f feat(build): add COMPILER_STATIC_ANALYZER option 2024-06-18 14:25:37 +08:00
Suren Gabrielyan
8384b2c76f fix(ws_transport): utility functions minor improvments 2024-05-20 16:26:40 +04:00
Richard Allen
10a2c2ccc9 fix(ws_transport): fixed server-key corruption
When first fragment is sent over HTTP during websocket
connection, defer buffering of fragment until after the
websocket server-key is validated.

This order is required because the first fragment buffering
overwrites the memory holding the server-key headers.

Fixes 2267d4b
Fixes https://github.com/espressif/esp-protocols/issues/396
PR https://github.com/espressif/esp-idf/pull/13724
2024-05-20 16:25:53 +04:00
Suren Gabrielyan
8d594e353e Merge branch 'fix/websocket_first_packet_2' into 'master'
[ws_transport]: fix of first fragment loosing during HTTP handshake

See merge request espressif/esp-idf!28654
2024-04-08 17:50:03 +08:00
laokaiyao
65b1fd33d3 ci(esp32c5mp): disable the unsupported tests 2024-04-07 12:13:29 +08:00
Suren Gabrielyan
2267d4b6b5 fix(ws_transport): fix first fragment losting during websocket connection 2024-04-03 17:57:37 +04:00
harshal.patil
343a6f47ab fix(mbedtls/aes-gcm): Fix null pointer derefernce coverity reports
- Also fixed a tcp_transport and https_server report
2024-03-12 12:36:00 +05:30
Marius Vikhammer
1f7c666701 ci(test_apps): limit dependencies for misc test_apps
Only pull in direct dependencies for the test apps, reducing build time
as well making it possible for CI to determine if the test should run or not
when dependencies are changed.
2024-02-18 16:01:58 +08:00
Mahavir Jain
01f50ee7f5 refactor: migrate atecc608a_ecdsa example to crypto authlib repository
- ESP32-WROOM-32SE has been discontinued and marked as NRND
- This change removes all references to ESP32-WROOM-32SE from IDF
- The example has been migrated to esp-cryptoauthlib repository and it
  can be used through the component manager
  (https://components.espressif.com/components/espressif/esp-cryptoauthlib)
2023-12-22 09:11:41 +05:30
Ivan Grokhotkov
81385b3476 Merge branch 'feature/update_catch2' into 'master'
ci: upgrade host tests to use espressif/catch2 component, add missing build rules

Closes IDF-8775

See merge request espressif/esp-idf!27455
2023-12-01 21:25:25 +08:00
David Cermak
7e22a13afe feat(http_client): Add support for TLS session tickets 2023-11-29 20:48:35 +01:00
Ivan Grokhotkov
b52182e14f ci(tcp_transport): upgrade to Catch2 as a component 2023-11-29 12:38:47 +01:00
Harshit Malpani
27681a5073 fix(esp-tls): Use TLS 1.2 and TLS 1.3 simultaneously
This commit fixes the issue with TLS 1.2 connection when TLS 1.3 is
enabled in config.
2023-10-23 16:23:10 +05:30
Chen Yudong
2e11919f70 fix(ci): change build-test-rules files folder 2023-09-20 19:17:06 +08:00
Harshit Malpani
692e1a9e61 feat: ECDSA peripheral while performing http connection with mutual auth 2023-09-08 12:22:41 +05:30
Armando
7dbd3f6909 feat(ci): Enable p4 example, test_apps and unit tests CI build 2023-08-24 12:51:19 +08:00
KonstantinKondrashov
e72061695e all: Removes unnecessary newline character in logs
Closes https://github.com/espressif/esp-idf/issues/11465
2023-06-09 03:31:21 +08:00