Commit Graph

961 Commits

Author SHA1 Message Date
Zim Kalinowski
fa1a3ce0b5 Merge branch 'refactor/components_linux_compatible' into 'master'
Exclude all currently incompatible components from Linux build

Closes IDF-8318 and IDF-5996

See merge request espressif/esp-idf!25598
2023-10-18 20:17:49 +08:00
David Čermák
210f757835 Merge branch 'fix/esp_netif_lock' into 'master'
fix(esp_netif): Lock netif list with TCPIP context

Closes IDFGH-11088

See merge request espressif/esp-idf!26164
2023-10-17 21:36:39 +08:00
Jakob Hasse
548022fbe6 refactor(linux): excluded all non-Linux components from build
* All components which won't build (yet) on Linux are excluded.
  This enables switching to Linux in an application without
  explicitly setting COMPONENTS to main in the main
  CMakeLists.txt.
* ESP Timer provides headers for Linux now
* automatically disabling LWIP in Kconfig if it is not available

doc(linux): brought section
  "Component Linux/Mock Support Overview" up to date
2023-10-16 17:06:54 +08:00
Fu Hanxi
4dbf8c8948
ci: remove ttfw related files 2023-10-16 10:23:09 +02:00
David Cermak
88d18e9a40 fix(esp_netif): Mark esp_netif_next deprecated and fix usages
* Uses netif_find_if() in IPv6 examples
* Fixes esp_netif_next() usage in L2TAP
2023-10-13 15:56:45 +02:00
Euripedes Rocha
2f46d9686d feat(mqtt/example): Adds custom outbox example
Adds example presenting how to customize esp-mqtt outbox.
2023-10-11 14:07:07 +02:00
Jakob Hasse
ac2515e199 refactor(lwip): Added on/off switch for LwIP stack
* This switch allows applications to replace lwip with a different
  IP stack or just make it build if it is a dependency but not
  actually needed.
2023-09-22 10:03:13 +08:00
Harshit Malpani
0798691bf0
fix: Fix protocols example to build without setting target
Protocol examples used to raise an error if the target was not set
and `idf.py build` command was used. This commit fix this error
and when IDF_TARGET is not set, ESP32 is selected as default target
2023-09-20 17:50:16 +05:30
Ivan Grokhotkov
6d87100a70
feat(examples): add local components via idf_component.yml
Specifying all the dependencies (managed and local) in the manifest
makes it easier for users to see every component the example
depends on.
2023-09-19 10:38:24 +02:00
Rocha Euripedes
10c21f704c Merge branch 'bugfix/module_logging_tag_lower_case' into 'master'
mqtt: unite supported components tags under common structure

See merge request espressif/esp-idf!22418
2023-09-05 14:06:33 +08:00
Armando
6f412393b6 change(ci): add todo to p4 build test enable 2023-08-24 12:51:19 +08:00
Armando
7dbd3f6909 feat(ci): Enable p4 example, test_apps and unit tests CI build 2023-08-24 12:51:19 +08:00
Michael (XIAO Xufeng)
47c153b949 Merge branch 'ci/pre-commit-check-build-test-rule-exist' into 'master'
pre-commit: add check that build-test-rule paths must exist

See merge request espressif/esp-idf!25231
2023-08-17 02:25:45 +08:00
Mahavir Jain
ea3bb21cf7
fix(esp-tls): fix the certificate check failure logging for cert bundle case
For ESP certificate bundle case, the certificate failure error from
underlying TLS stack was not being tracked. Added the fix and also
updated example code showcasing how to retrieve it.

Closes https://github.com/espressif/esp-idf/issues/12034
2023-08-11 17:27:01 +05:30
Xiao Xufeng
f51258ec18 ci(pre-commit): add check that build-test-rule paths must exist 2023-08-11 17:04:35 +08:00
Andrii
6a42266795 fix(mqtt): Unite supported components tags under common structure 2023-08-10 09:06:16 +00:00
Chen Yu Dong
92db3563a0 Merge branch 'ci/add_new_wifi_ap_runners' into 'master'
ci(wifi): add more wifi runners

See merge request espressif/esp-idf!24931
2023-07-26 20:27:01 +08:00
Chen Yudong
9aa23a4320 ci(wifi): add more wifi runners
sockets: add ipv6 only test
2023-07-24 18:09:55 +08:00
hwqchi
ebc118b24d
fix: Fixed following issues in esp_http_client examples
1. Fix potential out-of-bounds access when calling `strlen(local_response_buffer)`
   if `content_length` is greater than or equal to the length of `local_response_buffer`
   due to missing the terminator `\0` at the last character position.
2. Fix the residual data issue when the previous request is longer than the subsequent
   request while outputting the `local_response_buffer` for each request in the
   `http_rest_with_url()` function.

Signed-off-by: Harshit Malpani <harshit.malpani@espressif.com>
2023-07-24 12:17:28 +05:30
Harshit Malpani
7645723127
fix(ci): update HTTP client example tests runner assignment
HTTP client example tests now connect with locally hosted httpbin service
for more stable results across multiple runs
2023-07-21 10:55:25 +05:30
Chen Yudong
ec39de3992 change(esp_prov): also remove print_function from esp_prov 2023-07-19 21:05:30 +08:00
Harshit Malpani
8507b3ba1b
fix: Add more ciphersuites in https_request example
MBEDTLS_TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384 ciphersuite support
seems to be removed from howsmyssl.com. Add more ciphersuites in
server_supported_ciphersuites in https_request example to fix failures
while connecting to howsmyssl.
2023-07-17 11:08:32 +05:30
Harshit Malpani
c24d012808
remove(http2_request): Move http2_request example to idf-extra-components repository
Related: https://github.com/espressif/idf-extra-components/pull/193/
2023-07-03 17:46:16 +05:30
Mahavir Jain
90290507fb
fix(mbedtls): Build issue in dynamic buffer feature
Fix build issue in mbedTLS dynamic buffer feature with
`CONFIG_MBEDTLS_DHM_C` enabled case. Also added a build
configuration for the test coverage.

Closes https://github.com/espressif/esp-idf/issues/11770
2023-06-29 13:30:30 +05:30
Harshit Malpani
d9e8aca7ee
remove(coap)!: Move CoAP examples to idf-extra-components repository
Related:
https://github.com/espressif/idf-extra-components/pull/188
2023-06-27 11:16:21 +05:30
Alex Lisitsyn
16d9ba59f3 Merge branch 'feature/modbus_add_support_esp32h2' into 'master'
examples: modbus add support for target esp32h2

See merge request espressif/esp-idf!23905
2023-06-26 21:57:59 +08:00
Mahavir Jain
8d589d758e Merge branch 'ci/fix_failures_in_esp_http_client_example' into 'master'
CI: fix esp_http_client example failures in CI. Timeout was observed in the...

Closes IDFCI-1689

See merge request espressif/esp-idf!23274
2023-06-26 11:23:45 +08:00
Harshit Malpani
20ed23bcd0
CI: fix esp_http_client example failures in CI. Timeout was observed in the logs while performing HTTP requests. Changing the endpoint when testing in CI 2023-06-23 10:32:20 +05:30
aleks
2c7ea7f819 examples: modbus add support for target esp32h2 2023-06-21 09:53:02 +02:00
hwqchi
482f6340b9 esp_http_client: Fix unsigned integer overflow
Fix unsigned integer overflow when `content_length` is -1.
The proposed change is to modify the format specifier for content_length from PRIu64 to PRId64, which will print the signed value as a 64-bit integer instead.
2023-06-21 04:42:03 +08:00
David Čermák
28c643a56d Merge branch 'feature/example_network_wifi_bridge_provisioning' into 'master'
Examples/Network: Add WiFi to Eth/USB bridge example

See merge request espressif/esp-idf!23978
2023-06-16 01:04:32 +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
David Cermak
6edd1be973 Examples/http-server: Make DNS server a simple configurable component 2023-06-07 08:46:24 +02:00
Rocha Euripedes
dc016f5987 Merge branch 'fix/mqtt_esp32h2_examples' into 'master'
protocols/examples: Disable Wifi connection if not supported

See merge request espressif/esp-idf!23970
2023-06-05 13:51:30 +08:00
Euripedes Rocha
4778d9b477 protocols/examples: Disable Wifi connection if not supported
- Disable Kconfig option for Wifi if not supported by the SoC
- Enable building mqtt examples when target is set to esp32h2
2023-05-30 13:26:45 +02:00
yuanjianmin
0b71dcc7ea example: Fix memory leak in ws_echo_server when httpd_queue_work failed
Closes https://github.com/espressif/esp-idf/issues/11507
2023-05-29 10:12:16 +00:00
David Cermak
5abeac9d91 examples: Fix icmp-echo to auto connect to Ethernet/WiFi if selected
Closes https://github.com/espressif/esp-idf/issues/10655
2023-05-25 14:25:09 +00: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
Mahavir Jain
2688dfe982
tests: update Root certificate for the test endpoints
Use Root certificate (`DigiCert Global Root G2`) for the
`dl.espressif.com` and `espressif.com` test endpoints.

This fixes the test failure introduced due to renewal of
the intermediate certificate.
2023-05-16 15:56:29 +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
Mahavir Jain
b5055b9bfa Merge branch 'feature/add_mbedtls_ciphersuites_set_get_api' into 'master'
esp-tls: Add config and api to set and get ciphersuites list

Closes IDF-7183

See merge request espressif/esp-idf!23320
2023-04-28 13:01:59 +08:00
yuanjianmin
3f58b33c7f example: Add example to test ciphersuites set function 2023-04-27 19:22:27 +08:00
Mahavir Jain
873ac173c4
https_mbedtls: update example to support TLS 1.3 connection
- make server verification mandatory (previously it was optional)
- add PSA crypto init API and handling for session ticket event
- coding style fixes
2023-04-25 17:43:58 +05:30
movsb
88222e77fc examples: avoid the divide by zero error 2023-04-22 21:56:33 +08:00
Harshit Malpani
7f683f0996
Remove nvs_flash.h from protocols/linux_stubs 2023-03-31 16:42:06 +05:30
Harshit Malpani
345e38a3f0
Update http_server/simple example to build for Linux target 2023-03-31 16:42:06 +05:30
Euripedes Rocha
d6db90a3cd [tcp_transport] - Adds Socks4 proxy transport
- Basic implementation of Socks4 protocol.
- Introduce basic host testing.
2023-03-27 14:46:40 +02:00
Harshit Malpani
6ca69c45d4
fix esp_http_client_linux high failures in CI. Only build the esp_http_client for Linux and do not run test in CI 2023-03-23 14:34:54 +05:30
Jiang Jiang Jian
a39514a55e Merge branch 'bugfix/fix_format_error' into 'master'
examples: fix format errors, remove -Wno-format

Closes IDF-6433

See merge request espressif/esp-idf!21637
2023-03-21 19:19:47 +08:00
Bogdan Kolendovskyy
9a05cc7733 Updated CMakeList.txt for main component of mqtt/ssl_ds. 2023-03-17 16:03:52 +01:00
Harshit Malpani
0cc243a8cc
esp_http_client: remove dependency of esp_stubs from esp_http_client. Add esp_event stubs in linux component 2023-03-15 11:48:11 +05:30
Harshit Malpani
674fd8feb8
esp_http_client: Add support for esp_events 2023-03-15 11:48:11 +05:30
David Čermák
956e62c461 Merge branch 'feature/lwip_ipv6_only' into 'master'
lwip: Support IPv6 only mode

Closes IDF-6023

See merge request espressif/esp-idf!20468
2023-03-01 21:38:10 +08:00
Jiang Jiang Jian
df00fd874f Merge branch 'feature/modbus_remove_example_tests' into 'master'
modbus remove example tests

Closes IDFCI-1222

See merge request espressif/esp-idf!22434
2023-02-28 19:50:26 +08:00
Harshit Malpani
ae403c6210
Add test for Linux in pytest_esp_http_client.py 2023-02-27 15:12:15 +05:30
Harshit Malpani
af686f2eed
tcp_client: fix missing header file 2023-02-27 15:12:15 +05:30
Harshit Malpani
34705c0cc4
fix esp_http_client_example to build for Linux target. Made protocol_examples_common compatible for Linux target 2023-02-27 15:12:14 +05:30
David Cermak
5f6cb31105 lwip: Support IPv6 only mode 2023-02-27 08:53:34 +01:00
Aditya Patwardhan
bd81d8f9d3 esp-tls: Add build test for server session ticket option 2023-02-24 04:45:23 +00:00
Alex Lisitsyn
953edad1ab modbus: fix common parameters include order 2023-02-22 18:03:37 +08:00
aleks
ed86c026cb modbus remove example tests 2023-02-20 12:00:06 +01:00
Bogdan Kolendovskyy
d7b8b36082 examples: fix format errors, remove -Wno-format
Logging in series of examples has misuse of "%d" instead of type-appropriate format specifiers.
Fix by changing "%d" to PRIxx macros corresponding to type.
Remove -Wno-format compile flag in those examples that are affected.
2023-02-14 15:46:54 +01:00
Mahavir Jain
50f7d40b89
mqtt/ssl_ds: enable the example for ESP32-H2 target 2023-02-13 10:27:22 +05:30
David Cermak
7294438329 sntp/test: Fixed flaky example test
From SNTP update in a71fa821, the example test uses notification event
(before it simply polled the state in 2 seconds interval). With this
change it is possible that the time gets synchronized before retrying,
i.e. printing "Waiting for system time to be set... (2/15)". (it was
theoretically possible also before this change, but practically never
happened)
2023-02-01 08:01:54 +01:00
David Čermák
dba0718f47 Merge branch 'feature/lwip_linux' into 'master'
lwip: Add support for linux target

Closes IDF-5707, IDF-5647, and IDF-6003

See merge request espressif/esp-idf!19302
2023-01-31 22:01:50 +08:00
David Cermak
5d04ebab51 examples: Update socket udp_client to support lwip on linux
This uses FreeRTOS simulator and lwip on linux, with options
to use tap-io commponent for host network interactions.
2023-01-31 08:43:50 +01:00
David Cermak
fa97004faf lwip: Support for linux target
Implement linux port layer and reuse the original FreeRTOS layer
that's compiled and used on linux target as well, by means of FreeRTOS
simulator.
2023-01-31 08:43:45 +01:00
Harshit Malpani
928c5e84d9
example: remove CBOR example from IDF.
CBOR example has been moved to https://github.com/espressif/idf-extra-components/tree/master/cbor/examples/cbor
2023-01-30 16:58:32 +05:30
Ivan Grokhotkov
248bc8a346 Merge branch 'feature/modbus_add_esp32c2_esp32c6_targets' into 'master'
examples: modbus add esp32c2 esp32c6 targets

See merge request espressif/esp-idf!22017
2023-01-28 00:45:47 +08:00
Alex Lisitsyn
464b6d803c examples: modbus add esp32c2 esp32c6 targets 2023-01-28 00:45:46 +08:00
Laukik Hase
167618d6a4
examples/protocols: Added URI encoding/decoding feature
- http_server/simple: Decoding received query
  - esp_http_client: Sending encoded query
2023-01-25 17:47:14 +05:30
Mahavir Jain
8db02b36ac Merge branch 'bugfix/fix_potential_buffer_overflow_http_client_example' into 'master'
esp_http_client example: fix potential buffer overflow while copying data recieved in HTTP response

Closes IDFGH-9027

See merge request espressif/esp-idf!21869
2023-01-23 12:03:51 +08:00
Harshit Malpani
dd490f7915
esp_http_client example: fix potential buffer overflow while copying data recieved in HTTP response
Closes https://github.com/espressif/esp-idf/issues/10436
2023-01-20 15:05:41 +05:30
Laukik Hase
45c6631a00
ci: Enable build stage for mqtt/ssl_ds example for esp32c6 2023-01-19 10:00:00 +05:30
David Čermák
2f1d30d155 Merge branch 'bugfix/lwip_core_locking' into 'master'
esp_netif/lwip: Fix core-locking config

Closes IDFGH-8445, IDFGH-9098, and IDFGH-9063

See merge request espressif/esp-idf!20840
2023-01-18 20:31:25 +08:00
David Cermak
a71fa82177 esp_netif/lwip: Fix core-locking config
* Fix thread safety issues in non-core locking
* Add option to verify thread safety issues in lwip (core-lock assertion)
* Make esp_sntp.h thread safe API
* Fix sntp examples
* Fix openthread libs

Closes https://github.com/espressif/esp-idf/issues/9908
Closes https://github.com/espressif/esp-idf/issues/10502
Closes https://github.com/espressif/esp-idf/issues/10466
2023-01-17 16:15:58 +01:00
Cao Sen Miao
94120b82c2 esp32h2: add build test 2023-01-17 10:29:04 +08:00
Mahavir Jain
c0c2e3a73a Merge branch 'fix/esp_local_ctrl_header_incl' into 'master'
esp_local_ctrl: Fix header inclusion

See merge request espressif/esp-idf!22033
2023-01-13 23:47:55 +08:00
Laukik Hase
e7efda4709
esp_local_ctrl: Fix header inclusion
- Included `sdkconfig.h` and HTTP/S server based headers
  explicitly
2023-01-12 16:16:45 +05:30
Chen Yudong
c07d237ffe examples: enable build esp32c6 for wifi and network examples 2023-01-12 14:50:06 +08:00
Chen Yudong
8aca3932b0 CI: enable more wifi cases 2023-01-06 06:03:52 +00:00
Harshit Malpani
4673556691
tcp_client: Remove components dir from tcp_client example and use esp_stubs from protocols/linux_stubs 2023-01-04 11:20:52 +05:30
Harshit Malpani
5c728e94a7
Update esp_http_client example to build for linux target 2023-01-04 11:20:43 +05:30
Laukik Hase
b3fa7fcf73
esp_local_ctrl: Add support for insecure HTTP server transport 2022-12-23 12:14:25 +05:30
Chen Yu Dong
e0d564fc30 Merge branch 'ci/optimize_some_test_cases' into 'master'
Ci: optimize some test cases

See merge request espressif/esp-idf!21729
2022-12-21 22:07:31 +08:00
Suren Gabrielyan
e5926d1b1b Merge branch 'examples/mqtt_tests_migration_pytest' into 'master'
Examples: migration mqtt examples to pytest

See merge request espressif/esp-idf!20957
2022-12-21 21:23:14 +08:00
Chen Yudong
4af4edc3da CI: fix pattern in test case test_examples_protocol_mqtt5 2022-12-21 10:50:11 +08:00
Suren Gabrielyan
b68203bfb5 Examples: migration mqtt examples to pytest 2022-12-20 17:48:48 +04:00
Chen Yu Dong
e5b318ab71 Merge branch 'ci/fix_socket_ipv6_test' into 'master'
CI: Migrate socket example tests to pytest

See merge request espressif/esp-idf!21596
2022-12-20 11:13:09 +08:00
Mahavir Jain
35d2a825c4 Merge branch 'bugfix/fix_httpd_req_cleanup' into 'master'
esp_http_server: fix wrong context pointer in httpd_req_cleanup function

Closes IDFGH-8842

See merge request espressif/esp-idf!21320
2022-12-19 14:40:24 +08:00
Chen Yudong
51d2d20f75 example: add socket scripts again 2022-12-16 19:03:25 +08:00
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
Suren Gabrielyan
ec9abc7b02 Examples: update README of socket examples 2022-12-15 14:55:47 +08:00
Chen Yudong
2d006d488c CI: Migrate socket example tests to pytest 2022-12-15 14:55:42 +08:00
David Cermak
38dec0be48 esp-netif: Support non-lwip mode, add test
It is required to define a mandatory dependency on lwip, so we
introduced esp_netif_stack component and made it require lwip, instead
of directly depending on lwip.
This enables building w-out lwip and support other TCP/IP stacks.
2022-12-14 14:12:50 +00:00
Chen Yudong
df92048180 CI: fix ipv6 test failed on some runners 2022-12-14 15:58:49 +08:00
Laukik Hase
184c09ea81
protocols/security: Remove -Wno-format compile option for examples 2022-12-07 13:02:00 +05:30
Song Ruo Jing
7466ddfa8c ci: Make consistence between pytest_*.py and .build-test-rules.yml for esp32c6 (i.e. to pass check_test_scripts_build_test_rules.py) 2022-11-28 11:58:30 +08:00
Harshit Malpani
3276054810 Merge branch 'feature/upgrade_components_version' into 'master'
Feature/upgrade components version

Closes IDF-6192

See merge request espressif/esp-idf!20965
2022-11-11 18:37:30 +08:00
Harshit Malpani
5ff6dbba85
cbor: Update cbor component version in idf_component.yml file in example 2022-11-09 18:03:26 +05:30