Commit Graph

117 Commits

Author SHA1 Message Date
hrushikesh.bhosale 2ec6f96f9f fix(examples): make https_request rom_impl test resilient to transient external server errors
The test_examples_protocol_https_request_rom_impl test on ESP32-C2 with
the ROM mbedTLS implementation hits a public TLS endpoint
(tls13.browserleaks.com / www.howsmyssl.com) for five sequential
sub-tests. CI runs frequently fail mid-test with one of:

  * mbedtls_ssl_handshake returned -0x7780
    (MBEDTLS_ERR_SSL_FATAL_ALERT_MESSAGE - server-side fatal alert)
  * esp-tls: [sock=NN] select() timeout
  * esp-tls: Failed to open new connection in specified timeout

In a representative log the first three sub-tests succeed and only the
fourth/fifth fail, which is consistent with rate-limiting or transient
server unavailability rather than a device bug. Mark the test as
flaky with up to two reruns (10 s delay) so a single transient remote
failure does not fail the CI job.

Also align this test with the rest of the file by injecting the host
timestamp via NVS (write_time_to_nvs) so the device clock no longer
depends on a previous boot's persisted SNTP result, removing one more
source of CI flakiness on first-boot or after NVS erase.
2026-04-13 15:20:30 +05:30
hrushikesh.bhosale 4868ebc64c fix(https_request): write host time to NVS to eliminate SNTP dependency in CI
Replace erase_nvs + SNTP time sync with direct NVS timestamp injection
from the pytest host. This eliminates CI flakiness caused by NTP servers
being unreachable from the CI lab network.

Changes:
- Add write_time_to_nvs() helper that generates an NVS partition image
  with the current host timestamp and flashes it to the DUT before each
  test. The firmware reads this via the existing update_time_from_nvs()
  path and skips SNTP entirely.
- Remove @pytest.mark.parametrize('erase_nvs', ['y']) from all 4
  Ethernet-based tests since NVS is now written with valid data.
2026-04-09 11:31:32 +05:30
hrushikesh.bhosale 91d1574ba2 fix(https_request): Fixed CI failure for https_request example
- Enabled chachapoly ciphersuite from menuconfig, required for
howmyssl URL
2026-02-19 16:19:14 +05:30
harshal.patil e91d50ed1e fix(mbedtls): Support partial hardware AES-GCM and s/w fallback for non-AES ciphers
- Support software-fallback for unsupported hardware AES lengths
2026-01-03 12:17:50 +05:30
Ashish Sharma cc0d469048 feat: migrates protocol examples to PSA APIs 2025-12-30 09:31:49 +05:30
glmfe f398594982 feat(protocol_examples_common): Use Ethernet Init component
- Refactored protocol_examples_common to use ethernet_init component
2025-11-19 15:58:12 +01:00
Ondrej Kosta d622d4d9ac feat(esp_eth): removed SPI Ethernet and PHY drivers from IDF 2025-09-28 16:19:42 +02:00
Marek Fiala 9d35d63651 feat(cmake): Update minimum cmake version to 3.22 (whole repository) 2025-08-19 14:44:32 +02:00
Ashish Sharma d9c431268a feat(mbedtls): restructure mbedtls configuration page 2025-07-30 17:47:54 +08:00
Ashish Sharma 2ef09a7952 fix(esp_tls): fix failing build with TLS1.3 only and dynamic buffer 2025-06-02 09:14:03 +08:00
Ashish Sharma 415e0f3c86 feat(mbedtls): add support for dynamic buffer for TLS1.3
Closes https://github.com/espressif/esp-idf/issues/15448
2025-04-24 12:05:36 +08:00
igor.udot daf2d31008 test: format all test scripts 2025-03-05 12:08:48 +08:00
Jiang Guang Ming 642ffec9ed ci: Enabled https_request example pytest with config esp32c2_rom_mbedtls 2024-12-23 17:30:06 +08:00
Frantisek Hrbata 1c92945f59 change(examples): switch examples to use a minimal build
Currently, several example dependencies rely on the fact that all
registered components are added to the build, along with components
specified in common requirements. This results in longer build times
because even unused components must be built. Switch all examples to use
idf_minimal_build to compile only the components actually required by
the example.

Signed-off-by: Frantisek Hrbata <frantisek.hrbata@espressif.com>
2024-11-20 20:14:40 +01:00
Frantisek Hrbata ad15109daa change(examples): explicitly specify component dependencies for examples
Currently, several examples do not explicitly state their component
dependencies, relying instead on the default behavior that includes all
registered components and commonly required ones in the build.
Explicitly adding component dependencies can reduce build time when
set(COMPONENTS main) is used.

Signed-off-by: Frantisek Hrbata <frantisek.hrbata@espressif.com>
2024-11-20 14:11:24 +01:00
Ondrej Kosta 301e67157b ci(esp_eth): enabled build and test for c61 in eth/proto examples 2024-09-18 08:44:58 +02:00
harshal.patil ba49442683 Revert "ci(https_request): disable example for P4"
This reverts commit 4b8a2b4a6e.
2024-08-27 14:09:21 +05:30
harshal.patil c94986d793 fix(mbedtls): Fix https_request example build failure for mbedtls_config
- This was caused due to some mbedtls confisg being defined but their all prerequisites were not
2024-08-27 14:09:21 +05:30
Marius Vikhammer 4b8a2b4a6e ci(https_request): disable example for P4 2024-08-22 09:38:28 +08:00
hrushikesh.bhosale 7d2253288f feat(protocols): Added and Tested eps32c5 with protocols examples
Tested examples from the protocols, added the support of esp32c5
into the README.md and .build-test-rules.yml file
2024-08-20 17:18:54 +05:30
nilesh.kale 553a117894 fix: Refactored script for initiating Python-based HTTPS server
This commit refactors the script responsible for starting a Python-based HTTPS server
to align with the latest Python version's requirements and best practices.

Closes https://github.com/espressif/esp-idf/issues/13575
2024-04-30 10:04:56 +05:30
Harshit Malpani 19104b430f ci: fix ESP32-P4 build failures in CI 2024-02-26 22:59:01 +08:00
Harshit Malpani 2df1ba8535 docs: Update App Utils programming guide docs for ESP32P4
Re-enable protocol and ota examples for ESP32P4
2024-02-23 12:33:11 +05:30
David Cermak 344cb342b8 fix(esp_wifi): Support for esp_wifi_remote 2024-02-01 12:17:43 +01:00
Marius Vikhammer 95703297a6 Merge branch 'ci/psram_config_fix' into 'master'
ci: fix warnings for invalid kconfig option

See merge request espressif/esp-idf!23250
2023-11-02 13:44:04 +08:00
Mahavir Jain 7441cdb82b Merge branch 'feature/esp_crt_bundle_deprecated_list' into 'master'
esp_crt_bundle: add support for deprecated cert list and relevant config

Closes IDF-8188 and IDFGH-10992

See merge request espressif/esp-idf!26734
2023-11-02 12:07:58 +08:00
Marius Vikhammer 77bb19c49e ci(build): fixed/ignored warnings from unknown symbols in sdkconfig.defaults 2023-11-01 01:14:00 +00:00
Mahavir Jain 5b047057ca feat(mbedtls): add new deprecated cert list and relevant config
Cert bundle is periodically updated with the upstream Mozilla's NSS
root cert store. Retracted certs are moved to deprecated list now and
an additional config allows to include them in the default bundle. New
config is kept default disabled but can be enabled if one would like
to ensure 100% compatibility w.r.t. cert bundle across IDF minor or
patch releases. In IDF major release the deprecated list shall be reset.
2023-10-29 12:21:22 +05:30
David Cermak a9846479ff fix(examples): Fix usage of SNTP netif API in examples 2023-10-27 09:28:20 +02:00
Zim Kalinowski c5ae121bac Merge branch 'bugfix/fix-clean-up-in-error-condition-in-http-example' into 'master'
fix(example/http): Fixed potential memory leak/crash in when handling error condition

See merge request espressif/esp-idf!26060
2023-10-26 18:11:20 +08:00
Zim Kalinowski d63f83d279 fix(example/http): Fixed potential memory leak/crash in when handling error condition 2023-10-25 14:44:06 +02:00
Aditya Patwardhan 7e6f4d4e87 fix(esp-tls): Fix the https_request example build for esp-wolfssl 2023-10-20 13:43:18 +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
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
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
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 3f58b33c7f example: Add example to test ciphersuites set function 2023-04-27 19:22:27 +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
Chen Yudong c07d237ffe examples: enable build esp32c6 for wifi and network examples 2023-01-12 14:50:06 +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 c351548ca5 Update pytest example for https_request to erase flash before start of test 2022-09-19 12:04:09 +05:30
Harshit Malpani eb47729301 example: Updated https_request example to fail when time is not synced.
Also added additional server for syncing time
2022-09-19 12:04:09 +05:30
Ivan Grokhotkov e596c84d49 build system: re-add -Wno-format as private flag for some example components 2022-08-03 16:42:47 +04:00
Chen Yudong d54e1e8379 CI: make sure that reading of the ipv4 address has finished 2022-07-15 14:21:39 +08:00
Chen Yudong 2f75733ad7 CI: Improve common test methods
also fix ota test cases
2022-07-15 14:21:34 +08:00
Chen Yudong 472ac26712 CI: update test cases to use different environment variables
change test environments
optimize asio udp server test
fix icmp echo test case
use ethernet_router env to run iperf test cases
2022-07-15 01:16:35 +08:00
Chen Yudong 9575f03b8d CI: fix ip address checker and trace log 2022-07-15 01:16:35 +08:00
Fu Hanxi c0568611dd docs: changes docs supported targets tables 2022-07-14 08:26:32 +08:00
Harshit Malpani e83f801462 Update examples README to include esp32c2 as supported device. 2022-06-03 15:31:05 +05:30