Ashish Sharma
0fb8ad002a
fix(esp_http_server): fixes websocket recv error handling
...
Closes https://github.com/espressif/esp-idf/issues/18483
2026-05-06 14:26:31 +08:00
Ashish Sharma
3c2f81c6a8
feat(esp_http_server): adds check for crlf in response creation
2026-04-08 10:59:56 +08:00
Ashish Sharma
7e2e09c15c
feat(esp_http_server): Adds support to bind an interface to server
...
Closes https://github.com/espressif/esp-idf/issues/17859
2026-03-24 17:38:01 +08:00
Ashish Sharma
b64c70acda
fix: fixes memory leak with subprotocols
2026-03-23 18:37:21 +08:00
Ashish Sharma
9fc0ca13b3
fix: fixes websocket server possible null dereference
2026-03-23 18:37:21 +08:00
Peter Backeris
5dbab1d395
fix(esp_http_server): Dispatch PONG frames to WebSocket handler
...
PONG frames (opcode 0xA) were never dispatched to the user's WebSocket
handler despite an existing comment stating they should be. The dispatch
condition `ra->ws_type < HTTPD_WS_TYPE_CLOSE` excluded PONG (0xA)
since CLOSE is 0x8.
This caused a critical secondary bug: when the server sends PING frames
and the client responds with PONG, httpd_ws_recv_frame() is never
called for the PONG, leaving the remaining frame bytes (second_byte
plus 4-byte mask_key) unconsumed in the TCP buffer. On the next
WebSocket read, these orphaned bytes are misinterpreted as a new frame
header, causing either "WS frame is not properly masked" errors or
EAGAIN timeouts with garbage length values, effectively destroying
the connection.
Add `ra->ws_type == HTTPD_WS_TYPE_PONG` to the dispatch condition so
PONG frames reach the user handler, which calls httpd_ws_recv_frame()
to properly consume the frame bytes from the socket.
Closes https://github.com/espressif/esp-idf/issues/18227
2026-03-13 17:42:10 +08:00
Ashish Sharma
56d2fd6757
fix(esp_http_server): remove http server unused psa migration
2026-03-02 14:48:41 +08:00
Ashish Sharma
7aa56f8d68
fix(esp_http_server): fix ws server subprotocol match
2026-03-02 14:47:27 +08:00
Ashish Sharma
5028b6230f
feat(http_server): improve websocket server handling
...
1. Adds post handshake callback
2. Removes requirement to handle HTTP_GET message in websocket handler
Closes https://github.com/espressif/esp-idf/issues/18215
2026-02-27 09:59:05 +08:00
Mahavir Jain
2f68594185
Merge branch 'contrib/github_pr_15622' into 'master'
...
Add support for partial websocket frame payload reads (GitHub PR)
Closes IDFGH-14913
See merge request espressif/esp-idf!44044
2026-01-30 18:22:06 +05:30
Mahavir Jain
b2507c3a82
Merge branch 'fix/stop_receive_on_ws_socket_close' into 'master'
...
fix: stop reading ws data when peer closes the connection
Closes IDFGH-16735
See merge request espressif/esp-idf!45078
2026-01-22 11:29:06 +05:30
Ashish Sharma
1a0da0c8b5
fix: stop reading ws data when peer closes the connection
...
Closes https://github.com/espressif/esp-idf/issues/17822
2026-01-19 13:29:41 +08:00
Ashish Sharma
ba25e86b82
fix: fixes potential ws server deadlock with blocking work queue
...
Closes https://github.com/espressif/esp-idf/issues/17591
2026-01-14 11:17:33 +08:00
nilesh.kale
93fcdda9f4
feat: add demo to receive websocket frame in chunks
...
This commit added demo to receive websocket single frame in chunks
using newly added API httpd_ws_recv_frame_part() with optimized memory.
closes https://github.com/espressif/esp-idf/pull/15622
2026-01-07 15:25:19 +05:30
mrsobakin
67339c5f4a
feat(websocket): Support partial frame payload reads
2026-01-07 15:12:41 +05:30
Mahavir Jain
354e9ed64a
feat(esp_http_server): Make httpd_handle_err API as public
...
This makes sense because httpd_register_err_handler API is
already public. So the above API complements this API.
Closes https://github.com/espressif/esp-idf/issues/17755
2025-12-31 10:23:07 +05:30
Ashish Sharma
fdd5ef561d
feat: migrates esp_http_client and esp_http_server to PSA APIs
2025-12-30 09:31:49 +05:30
C.S.M
e3eaee53e2
Merge branch 'ci/esp32s31_build_ena' into 'master'
...
ci(esp32s31): Add ci build test for esp32s31
See merge request espressif/esp-idf!44045
2025-12-12 14:59:42 +08:00
Mahavir Jain
92c76fc280
Merge branch 'contrib/github_pr_17799' into 'master'
...
feat(esp_http_server): Make HTTP(S)_SERVER_EVENT events optional (GitHub PR)
Closes IDFGH-16707
See merge request espressif/esp-idf!43637
2025-12-11 18:10:52 +05:30
C.S.M
f405e51784
ci(esp32s31): Add ci build test for esp32s31
2025-12-11 15:17:15 +08:00
hrushikesh.bhosale
bdf438f0aa
fix(http_server): Removed the build failure due to unused variables
...
There were build failure due the unused variable last_error when
ESP_HTTPS_SERVER_EVENTS and HTTPD_ENABLE_EVENTS are disabled
2025-12-11 12:33:03 +05:30
Ashish Sharma
69ea28c886
feat: add Kconfig option for mbedTLS 4.x
2025-12-01 14:05:05 +08:00
Jimmy Wennlund
bd85dad2cf
feat(esp_http_server): Make HTTP(S)_SERVER_EVENT events optional
...
Make it possible to disable http(s) server events. This improves
performance of the server, as http server creates events on every signle
read or write to the socket.
2025-11-22 21:30:58 +01:00
Ashish Sharma
acf89924c8
feat(esp_http): migrate esp_http to PSA API
2025-10-26 10:13:14 +08:00
hrushikesh.bhosale
cfc056018c
fix(esp_http_server): Fix async requests on same socket blocking issue
...
1. In async requests, if the two or more requests are made on same
socket then it used to block the second request.
2. The main thread is used to block on select call. And there done
no FD_SET for particular fd.
Closes https://github.com/espressif/esp-idf/issues/16998
2025-09-16 15:02:05 +05:30
Joonline
9e7074dd35
fix(http_server): Corrected initialization value for lru_counter at http session creation
...
Closes https://github.com/espressif/esp-idf/pull/17470
2025-09-12 15:31:27 +08:00
Mahavir Jain
b789445a67
Merge branch 'contrib/github_pr_17501' into 'master'
...
fix(esp_http_server): fix memory leak in httpd_req_async_handler_begin (GitHub PR)
Closes IDFGH-16361
See merge request espressif/esp-idf!41748
2025-09-10 13:15:36 +05:30
Salvatore Mesoraca
fd33d02563
fix(esp_http_server): fix memory leak in httpd_req_async_handler_begin
...
Free scratch memory when response headers allocation fails
2025-08-29 02:11:13 +02:00
Alexey Lapshin
28ced4efad
fix(config): actualize newlib Kconfig options
2025-08-28 12:25:09 +08:00
Marek Fiala
9d35d63651
feat(cmake): Update minimum cmake version to 3.22 (whole repository)
2025-08-19 14:44:32 +02:00
Marius Vikhammer
4065fb20f3
Merge branch 'feature/esp_test_utils_component' into 'master'
...
change(test_utils): moved test_utils out of unit-test-app project
See merge request espressif/esp-idf!40678
2025-08-01 11:04:37 +08:00
Aditya Patwardhan
a783974d00
Merge branch 'feat/support_authentication_feature_for_ws' into 'master'
...
Added pre handshake callback for websocket
Closes IDF-13605
See merge request espressif/esp-idf!40706
2025-07-31 15:04:07 +05:30
hrushikesh.bhosale
a40ceffb19
feat(esp_http_server): Added pre handshake callback for websocket
...
1. If the user wants authenticate the request, then user needs to do
this before upgrading the protocol to websocket.
2. To achieve this, added pre_handshake_callack, which will execute
before handshake, i.e. before switching protocol.
2025-07-31 11:06:18 +05:30
Ashish Sharma
6b02906822
fix(security): improve memory allocation handling in multiple components
2025-07-28 10:05:50 +08:00
Marius Vikhammer
bf84ab652a
change(test_utils): moved test_utils component to tools/test_apps/components/
2025-07-21 14:05:50 +08:00
Mahavir Jain
464d03f999
Merge branch 'contrib/github_pr_15767' into 'master'
...
fix(esp_http_server): WebSocket frame parsing errors (GitHub PR)
Closes IDFGH-15086 and IDFGH-14461
See merge request espressif/esp-idf!40076
2025-07-16 13:58:37 +05:30
Vincent Hamp
ab07377b11
fix(esp_http_server): WebSocket frame parsing errors
...
Fixes the Websocket frame pasring error, by making sure
that two bytes are read compulsary for length bytes 126.
Closes https://github.com/espressif/esp-idf/pull/15767
Closes https://github.com/espressif/esp-idf/issues/15235
2025-07-15 11:26:35 +05:30
hrushikesh.bhosale
9f6ab55a5b
feat(http_server): Added API to get scratch buffer data
...
1. Added the API in esp_http_server to get the raw headers data
from the scratch buffer.
2. This data will be unparsed.
Closes https://github.com/espressif/esp-idf/issues/15857
2025-07-09 18:36:52 +05:30
iranl
42704821d2
fix(esp_http_server): Fix regression in httpd_cookie_key_value
...
Fix regression in httpd_cookie_key_value introduced by commit 4a47cf8
2025-07-02 08:39:20 +02:00
hrushikesh.bhosale
542d07d34a
feat(http_server): httpd register handler strdup failure case check
...
In httpd_register_uri_handler api, for the strdup function failure case was not
checked and not returned any error by freeing previously allocated memory, if the memory
allocation for strdup function did not gets successful.
Closes https://github.com/espressif/esp-idf/issues/15878
2025-05-13 11:27:02 +05:30
hrushikesh.bhosale
b6d4fa2c2e
fix(async_handler): Async handler example scratch buffer fix
...
1. In httpd_req_async_handler_begin, the httpd_req_aux is locally malloced
and data is done memcpy to local httpd_req_aux from request'ss httpd_req_aux for
async request use-case, this causes scartch pointer from these two structs
pointing to same memory address.
2. In current workflow, the request's sratch buffer is freed in httpd_parse.c
httpd_req_cleanup api. Therefore if the user try to fetch the data (like headers)
from the scratch buffer, data will be not available.
3. Each request should have the deep copy of the scratch buffer. To retrive
the data later.
Closes https://github.com/espressif/esp-idf/issues/15587
2025-04-28 14:57:21 +08:00
Aditya Patwardhan
bb9f73a786
Merge branch 'contrib/github_pr_15821' into 'master'
...
fix(esp_http_server): Fix incorrect spelling in the comments (GitHub PR)
Closes IDFGH-15144
See merge request espressif/esp-idf!38569
2025-04-23 20:42:03 +08:00
harshal.patil
e738ec5ccd
fix(esp-tls): Fix build failure when CONFIG_MBEDTLS_SHA1_C is disabled
2025-04-21 13:38:29 +05:30
WangLei1993
a2ce331ef9
fix(esp_http_server): Fix incorrect spelling in the comments
2025-04-20 15:57:03 +08:00
Mahavir Jain
c263a3f9c5
Merge branch 'contrib/github_pr_15288' into 'master'
...
Improve httpd string value fetching efficiency (GitHub PR)
Closes IDFGH-14524
See merge request espressif/esp-idf!37301
2025-04-06 19:17:28 +08:00
hrushikesh.bhosale
4a47cf803c
feat(esp_http_server/httpd_parse): Cosmetic changes in httpd_parse.c
...
Removed the unused variable buf_len
2025-04-04 16:45:11 +05:30
Chen Jichang
c34b4eb882
feat(esp32h4): enable ESP32H4 ci build
2025-03-28 14:41:28 +08:00
Mahavir Jain
884c85536d
Merge branch 'bugfix/http_ws_api_reference' into 'master'
...
fix(esp_http_server): enable doxygen build for websocket API reference
Closes IDFGH-14785
See merge request espressif/esp-idf!37529
2025-03-11 19:12:36 +08:00
Mahavir Jain
4b6c5f34cd
fix(esp_http_server): enable doxygen build for websocket API reference
...
Closes https://github.com/espressif/esp-idf/issues/15523
2025-03-05 20:06:16 +05:30
igor.udot
daf2d31008
test: format all test scripts
2025-03-05 12:08:48 +08:00