Wykres commitów

107 Commity (548022fbe6cbcf272ff0c27e8168a0a533053a07)

Autor SHA1 Wiadomość Data
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
Chip Weinberger 3824eba04d
feat(httpd): add support for asynchronous request handling
This commit adds support for handling multiple requests simultaneously by introducing two new functions: `httpd_req_async_handler_begin()` and `httpd_req_async_handler_complete()`. These functions allow creating an asynchronous copy of a request that can be used on a separate thread and marking the asynchronous request as completed, respectively.

Additionally, a new flag `for_async_req` has been added to the `httpd_sess_t` struct to indicate if a socket is being used for an asynchronous request and should not be purged from the LRU cache.

An example have been added to demonstrate the usage of these new functions.

Closes https://github.com/espressif/esp-idf/issues/10594

Signed-off-by: Harshit Malpani <harshit.malpani@espressif.com>
2023-05-19 10:05:42 +05:30
David Cermak b2af4d9689 lwip/linux: Add lwip support for networking component under linux
linux/lwip: Wrap some IO posix functions
* to workaourd the FreeRTOS EINTR issue (when building without lwip)
* to correctly choose the sub-system based on fd (when building with
lwip) -- passing control to either linux/system or to lwip
This commit also addapts tapio-if to provide DHCP client by default and
configurable settings for static IP
2023-05-05 05:03:39 +00:00
Harshit Malpani 7c68b67295
esp_http_server: Update to support build for Linux 2023-03-31 16:42:05 +05:30
Marius Vikhammer 0be8e03907 ci: update test apps to use run_all_single_board_cases 2023-03-10 14:27:09 +08:00
David Cermak 5f6cb31105 lwip: Support IPv6 only mode 2023-02-27 08:53:34 +01:00
Omar Chebib 5e5343d429 TWDT: Use the new TWDT Kconfig options in the examples and tests 2023-02-17 11:22:25 +08:00
Harshit Malpani e1e46e5dae
esp_http_server: fix return values for `httpd_socket_send()` and `httpd_socket_recv()` APIs
Closes https://github.com/espressif/esp-idf/issues/10658
2023-01-31 11:29:49 +05:30
Cao Sen Miao 94120b82c2 esp32h2: add build test 2023-01-17 10:29:04 +08:00
Mahavir Jain 035c2e5799
esp_http(s)_server: remove "Wno-format" cflag and fix formatting errors 2022-12-21 14:14:04 +05:30
Harshit Malpani 0885d8542d
esp_http_server: Added support for esp_events 2022-12-19 17:33:37 +05:30
Harshit Malpani 89a56392e3
esp_http_server: fix wrong context pointer in httpd_req_cleanup function
Added example which fails without the fix

Closes https://github.com/espressif/esp-idf/issues/10265
2022-12-16 14:40:37 +05:30
Nathan Phillips 2d047f5439 Fix type of cast 2022-12-08 10:51:16 +00:00
Mahavir Jain 79216c657e
esp_http_server: modify error print for clarifying internal socket usage
Closes https://github.com/espressif/esp-idf/issues/10108
Closes IDFGH-8663
2022-11-15 20:46:35 +05:30
Mahavir Jain 34f3287323
esp_http_server: fix default control port for HTTPS configuration
For simultaneous HTTP and HTTPS server use-case, default configurations
set same control socket port and hence one of the server initialization
fails with an error "error in creating control socket".

This commit modifies default initializers to use different control
socket port in HTTP vs HTTPS server case.

Closes https://github.com/espressif/esp-idf/issues/10160
Closes IDFGH-8719
2022-11-15 20:46:35 +05:30
Mahavir Jain a6b9304a50 Merge branch 'feature/add_keep_alive_for_httpserver' into 'master'
esp_http_server: Add support to enable TCP keepalive config

Closes IDFGH-8379

See merge request espressif/esp-idf!20842
2022-11-01 17:13:41 +08:00
Song Ruo Jing be0fdfa176 soc: Add a soc cap, SOC_CLK_RC_FAST_D256_SUPPORTED, for whether the target has the RC_FAST_D256 clock 2022-11-01 11:23:26 +08:00
yuanjianmin e05d61d075 esp_http_server: Add support to enable TCP keepalive config
Closes https://github.com/espressif/esp-idf/issues/9848
2022-10-31 14:37:05 +08:00
Mahavir Jain fffc72d307
esp_http_server: fix few coverity warnings
- unreachable code
- uninitialized values
- missing return checks
2022-10-10 15:35:43 +05:30
Harshit Malpani a3fd6d1070
esp_http_server: Add linger in httpd_config_t
Closes: https://github.com/espressif/esp-idf/issues/9514
2022-09-22 10:11:50 +05:30
Laukik Hase 463b02eeec
http_server: Increment active socket count for SSL session
- The callback `open_fn` is used for creating a new SSL session
  with httpd_sess_new.
- If the call fails, the active socket count (httpd_data->hd_sd_active_count)
  is not incremented. But, httpd_sess_delete is called, which decrements the
  count, resulting in a negative value for several failed session creations
  in a row.

Closes https://github.com/espressif/esp-idf/issues/9683
2022-09-07 10:27:22 +05:30
Harshit Malpani cae004a815 ci: Migrate esp_http_server unit tests from unit-test-app to component-test-app 2022-08-25 03:43:46 +00:00
Ivan Grokhotkov 401c10ecfb build system: re-add -Wno-format as private flag for some components 2022-08-03 16:42:47 +04:00
yuanjm b9b1a7aba8 fix(websocket): Support handler deal with PING and CLOSE frame
Closes https://github.com/espressif/esp-idf/issues/8803
2022-06-08 16:16:57 +08:00
Harshit Malpani 73fc12cdcd esp_http_server: Remove http_server.h Header file 2022-05-13 16:00:17 +05:30
Harshit Malpani 1bb03e17a7 esp_http_server: update httpd_queue_work() API to use semaphore
Closes: https://github.com/espressif/esp-idf/issues/8440
2022-05-09 18:00:05 +05:30
Yuan Jian Min 293830a8ee fix(server): Fix websocket server not support handle multiple connections when client send CLOSE frame 2022-05-06 09:18:05 +08:00
Shubham Kulkarni a4afeed209 esp_http_server: Minor updates in error messages
idf_http_server_test/client.py: Update test script with new error message
2022-03-09 14:43:10 +05:30
MacDue 72e322fbba esp_http_server: reword error messages 2022-03-07 17:39:02 +00:00
Aditya Patwardhan 3b71bd7326 mbedtls-3.0: Fixed ESP32 build issues
- Added MBEDLTS_PRIVATE(...) wherever necessary
- For functions like mbedtls_pk_parse_key(...), it is necessary to pass the RNG function
  pointers as parameter. Solved for dependent components: wpa_supplicant & openSSL
- For libcoap, the SSLv2 ClientHello handshake method has been deprecated, need to handle this.
  Currently, corresponding snippet has been commented.
- Examples tested: hello-world | https_request | wifi_prov_mgr

mbedtls-3.0: Fixed ESP32-C3 & ESP32-S3 build issues
- Removed MBEDTLS_DEPRECATED_REMOVED macro from sha1 port
- DS peripheral: esp_ds_rsa_sign -> removed unsused 'mode' argument
- Added MBEDTLS_PRIVATE(...) wherever required

mbedtls-3.0: Fixed ESP32-S2 build issues
- Fixed outdated function prototypes and usage in mbedlts/port/aes/esp_aes_gcm.c due to changes in GCM module

mbedtls-3.0: Fixed ESP32-H2 build issues

ci: Fixing build stage
- Added MBEDTLS_PRIVATE(...) wherever required
- Added RNG function parameter
- Updated GCM Module changes
- Updated Copyright notices

- Tests:
- build_esp_idf_tests_cmake_esp32
- build_esp_idf_tests_cmake_esp32s2
- build_esp_idf_tests_cmake_esp32c3
- build_esp_idf_tests_cmake_esp32s3

ci: Fixing build stage (mbedtls-related changes)
- Added MBEDTLS_PRIVATE(...) wherever required
- Updated SHAXXX functions
- Updated esp_config according to mbedtls changes

- Tests:
- build_examples_cmake_esp32
- build_examples_cmake_esp32s2
- build_examples_cmake_esp32c3
- build_examples_cmake_esp32s3

ci: Fixing build stage (example-related changes)
- Added MBEDTLS_PRIVATE(...) wherever required
- Updated SHAXXX functions
- Updated esp_config according to mbedtls changes

- Tests:
- build_examples_cmake_esp32
- build_examples_cmake_esp32s2
- build_examples_cmake_esp32c3
- build_examples_cmake_esp32s3

ci: Fixing target_test stage
- Updated test SSL version to TLS_v1_2

- Tests:
- example_test_protocols 1/2

ci: Fixing build stage
- Added checks for MBEDTLS_DHM_C (disabled by default)
- Updated esp_cryptoauthlib submodule
- Updated factory partition size for legacy BLE provisioning example

- Tests:
- build_examples_cmake_esp32
- build_examples_cmake_esp32s2
- build_examples_cmake_esp32c3
- build_examples_cmake_esp32s3

Co-authored-by: Laukik Hase <laukik.hase@espressif.com>
2022-03-03 01:37:10 +05:30
Mahavir Jain af9a194672 Merge branch 'feature/websocket_server_support_close_handle' into 'master'
esp_http_server: Websocket CLOSE frame can support callback function

Closes IDFGH-5785

See merge request espressif/esp-idf!17086
2022-02-16 07:08:57 +00:00
Darian Leung 57fd78f5ba freertos: Remove legacy data types
This commit removes the usage of all legacy FreeRTOS data types that
are exposed via configENABLE_BACKWARD_COMPATIBILITY. Legacy types can
still be used by enabling CONFIG_FREERTOS_ENABLE_BACKWARD_COMPATIBILITY.
2022-02-09 23:05:45 +08:00
yuanjm 7f1cba9912 esp_http_server: Websocket CLOSE frame can support callback function
Closes https://github.com/espressif/esp-idf/issues/7493
2022-02-09 10:15:36 +08:00
Mahavir Jain 8e94cf2bb1 Add http_parser (new component) dependency 2022-01-11 10:26:25 +05:30
FlorianR 4db3fd17d9 Clarify when the socket is closed if a custom session closing callback is used
When using a custom session closing callback, the IDF will not close the socket for the user. This might result in the system running out of fds. Without any note on that in the documentation, this is easy to miss.
2021-11-25 17:19:11 +08:00
morris 2e008825a9 Merge branch 'feat/rm_makefiles' into 'master'
Build & config: Remove leftover files from the unsupported make build system

Closes IDF-4273 and IDF-2827

See merge request espressif/esp-idf!15829
2021-11-16 03:44:41 +00:00
Roland Dobai 766aa57084 Build & config: Remove leftover files from the unsupported "make" build system 2021-11-11 15:32:36 +01:00
Dániel Buga 994038e0e9 esp_http_server: Check for failure in stopping http server
In some cases, sending the shutdown signal may fail, which causes `httpd_stop` to wait indefinitely.
This PR adds a check to prevent this infinite loop.

Signed-off-by: Shubham Kulkarni <shubham.kulkarni@espressif.com>

Closes https://github.com/espressif/esp-idf/pull/7843
2021-11-11 11:43:57 +05:30
Martin Valik 1f451a4a77 Added more convenient functions for sending data to websocket 2021-09-16 10:53:29 +02:00
yuanjm 5db3853c2c esp_http_server: Fix ws server handle length over 1440(MTU) messages incorrectly.
Closes https://github.com/espressif/esp-idf/issues/7457
2021-08-30 14:50:19 +08:00
yuanjm 5bdbfd1d05 Revert "Merge branch 'bugfix/fix_ws_handle_big_messages_error' into 'master'"
This reverts commit d838a11d78, reversing
changes made to 70fd8529e9.
2021-08-30 14:50:19 +08:00
Patryk Krzywdziński f43e9cdaa7 http: Function to get Cookie value from request.
Closes https://github.com/espressif/esp-idf/pull/7273

Signed-off-by: Shubham Kulkarni <shubham.kulkarni@espressif.com>
2021-07-30 13:23:25 +08:00
yuanjm f2a0b48cf9 esp_http_server: Fix ws server handle length over 1440(MTU) messages incorrectly.
Closes https://github.com/espressif/esp-idf/issues/7202
2021-07-05 20:09:49 +08:00
Siarhei Volkau ba15970abb esp_http_server, protocomm: Consider a connection as closed if recv() returns 0
This check prevents infinite loop on closed sockets

Closes https://github.com/espressif/esp-idf/pull/6541

Signed-off-by: Shubham Kulkarni <shubham.kulkarni@espressif.com>
2021-06-08 05:48:30 +00:00
Jan Brudny 967e057906 esp-tls, esp_http_client and esp_http_server: update copyright notice 2021-05-31 20:06:09 +08:00
Aditya Patwardhan 3e82fcd566 esp_http_server: Fix transport_ctx not getting freed
Closes https://github.com/espressif/esp-idf/issues/6813
2021-04-07 05:25:39 +00:00
yuanjm 382fe8807d httpd: Support user_ctx in websocket handler callback request
Closes https://github.com/espressif/esp-idf/issues/6538
2021-03-10 12:31:38 +00:00
Mahavir Jain 907ea44ee9 Merge branch 'feature/http_server_optimizations' into 'master'
esp_http_server optimisations

Closes IDFGH-4484 and IDFGH-4741

See merge request espressif/esp-idf!12240
2021-03-08 09:01:20 +00:00
Shubham Kulkarni 6a7587d35f esp_http_server: Run format.sh script to fix code style issues 2021-03-04 04:08:47 +00:00