Commit Graph

100 Commits

Author SHA1 Message Date
Mahavir Jain
a8bf745f23 Merge branch 'feat/adding_different_strategy_to_perform_tls_using_dynamic_feature' into 'master'
Add configuration to control dynamic buffer strategy in mbedtls

Closes IDF-12591

See merge request espressif/esp-idf!39469
2025-06-12 09:52:35 +05:30
hrushikesh.bhosale
5928a87aa7 feat(mbedtls): Add configuration to control dynamic buffer strategy in mbedtls
Problem:
1. In low-memory scenarios, the dynamic buffer feature can fail due to memory fragmentation.
2. It requires a contiguous 16KB heap chunk, but continuous allocation and deallocation of
the RX buffer can lead to fragmentation.
3. If another component allocates memory between these operations, it can break up the
available 16KB block, causing allocation failure.

Solution:
1. Introduce configurable strategy for using dynamic buffers in TLS connections.
2. For example, convert RX buffers to static after the TLS handshake.
3. Allow users to select the strategy via a new field in the esp_http_client_cfg_t structure.
4. The strategy can be controlled independently for each TLS session.
2025-06-05 12:43:47 +05:30
Richard Allen
30758d9beb feat(esp_http_client): Event to signal last header download
When parsing ND-JSON streams, this is needed to indicate the
point when the ND-JSON stream is considered open, which
occurs just after the last HTTP_EVENT_ON_HEADER.

ND-JSON stream clients cannot rely on the first HTTP_EVENT_ON_DATA,
since that is only triggered by an event, which are optional and
may never be sent, or only sent well after the last HTTP_EVENT_ON_HEADER.

Closes #15952
2025-05-28 08:50:28 -05: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
hrushikesh.bhosale
3e1317fd13 fix(ota): Fix the OTA pytest idf_path
Due to ci/pytest-mark-formatter(branch) fix, while executing the main
function from the pytest, it gives error for the incorrect idf_path.

This commit ensure that, idf_path is fixed correctly.
2025-04-15 11:06:51 +05:30
igor.udot
daf2d31008 test: format all test scripts 2025-03-05 12:08:48 +08:00
Marek Fiala
2c814ef2fa feat(tools): Enforce utf-8 encoding with open() function 2024-12-27 17:12:21 +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
Konstantin Kondrashov
0592bb6888 fix(examples): Fix flash_enc_wifi test in pytest_simple_ota 2024-10-09 12:39:43 +03:00
Mahavir Jain
1e4ebabe9b Merge branch 'feat/enable_ota_examples_for_c61' into 'master'
feat(ota): Enable support for OTA examples for c61

Closes IDF-10915

See merge request espressif/esp-idf!33270
2024-09-27 12:38:09 +08:00
hrushikesh.bhosale
7db2dfce67 feat(ota): Enable support for OTA examples for c61
Tested OTA examples on esp32c61 and added their support in their
corresponding README.mds
2024-09-26 11:28:41 +05:30
Konstantin Kondrashov
d11b958209 refactor(examples): Refactoring and clean up OTA tests 2024-09-25 09:45:08 +03:00
hrushikesh.bhosale
ed4166a64c feat(ota): Checked the support of OTA for esp32c5
Checked the support of OTA features for esp32c5, tested
examples and added the support in README.md file. Even
added the support in systems .build-test-rules.yml
2024-08-21 11:45:41 +05:30
nilesh.kale
55bbd9c95a feat: add config option under partition menu to support large size ota
This commit adds one more config option under partition table menu
to support large size image during ota

This also updates the default config for simple ota example.
2024-07-12 14:49:16 +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
nilesh.kale
318038a746 fix: fixed issue faced while starting python server and updated ota readme
openssl server does not support for range request mechanism.
Consequently, it does not support partial download feature.
So, removing commands and steps required for staring openssl server.
Also, updated pytest file to avoid unnecssary issues while starting server.
2024-02-06 12:12:24 +05:30
Chen Yudong
a72d5f4b41 ci: update protocol/ethernet pytest markers 2024-02-01 22:47:18 +08:00
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
Harshit Malpani
dd6229e5cb ci: Add ota_example test with TLS 1.3 2023-08-16 11:26:59 +05:30
nilesh.kale
99db66676c fix: Fixed wrong filename in ota example readme 2023-08-08 11:23:45 +05:30
Mahavir Jain
20b10ba914 ci: add secure OTA test for application built without secure padding
Covers issue reported in:
https://github.com/espressif/esp-idf/issues/11995
2023-08-02 19:40:27 +05:30
Harshit Malpani
47740e3da5 Add esp32c6 in supported target for ota examples 2023-04-28 10:57:33 +05:30
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
Chen Yudong
bf0e4943be common_components: add wifi connect console commands 2022-07-15 01:16:27 +08:00
Fu Hanxi
c0568611dd docs: changes docs supported targets tables 2022-07-14 08:26:32 +08:00
Jiang Jiang Jian
ceb58a6c41 Merge branch 'ci/optimize_binary_size_for_ota_examples' into 'master'
ci: Optimize binary size for OTA examples

See merge request espressif/esp-idf!18914
2022-07-13 15:44:06 +08:00
Harshit Malpani
aee57fc895 ci: Optimize binary size for OTA examples 2022-07-11 15:28:48 +05:30
Chen Yudong
69e15827c9 CI: add specific job rules 2022-07-11 12:32:30 +08:00
Harshit Malpani
f9c25c65e1 Fix OTA example test to fix CI failures
Using `try finally` block to terminate thread
2022-07-05 14:31:43 +05:30
Harshit Malpani
573dd0187d Mark OTA tests as xfail 2022-07-01 11:45:50 +05:30
Harshit Malpani
e83f801462 Update examples README to include esp32c2 as supported device. 2022-06-03 15:31:05 +05:30
Djordje Nedic
facab8c5a7 tools: Increase the minimal supported CMake version to 3.16
This updates the minimal supported version of CMake to 3.16, which in turn enables us to use more CMake features and have a cleaner build system.
This is the version that provides most new features and also the one we use in our latest docker image for CI.
2022-06-01 06:35:02 +00:00
Harshit Malpani
48bbfaeeba ota_example: Mark tests as flaky 2022-05-30 11:13:05 +05:30
Mahavir Jain
5607018f28 Merge branch 'feature/ota_examples_pytest_migration' into 'master'
Migrate OTA example test to pytest framework

Closes IDFCI-1146

See merge request espressif/esp-idf!17767
2022-05-24 14:28:15 +08:00
Marius Vikhammer
0687daf2c8 kconfig: move remaining kconfig options out of target component
The kconfig options are moved to the component where they are used,
mostly esp_hw_support and esp_system.
2022-05-23 17:57:45 +08:00
Harshit Malpani
25f02efaa1 Migrate OTA example test to pytest framework 2022-05-23 13:11:21 +05:30
Mahavir Jain
021f545f0d examples: add dependency on cert bundle configuration
Refactor examples to build with MBEDTLS_CERTIFICATE_BUNDLE disabled. Only examples
that can work with certificate bundle disabled have been modified here.
2022-04-06 05:10:43 +00:00
Harshit Malpani
de2f915092 esp_https_ota: Update esp_https_ota() to support OTA updates with encrypted images 2022-03-11 16:52:08 +05:30
Mahavir Jain
8400ff8607 examples/simple_ota: use certificate bundle in default configuration
- This allows to easily test example with different public servers
- Flash footprint impact is limited due to selection of only most common
certs from bundle.
2022-02-14 12:43:42 +05:30
Laukik Hase
ca84d2d6c9 esp_http_client: Added event for HTTP redirect
- Allows users to manually intercept and process the HTTP redirection
 when disable_auto_redirect (from the esp_http_client handle) is set to true

Closes https://github.com/espressif/esp-idf/issues/8029
2022-01-12 11:40:32 +05:30
Mahavir Jain
0054732991 Fix debug print to handle URL in internal testing scenarios as well 2021-12-14 14:29:02 +05:30
Eric Fontaine
53b0263342 print Firmware Upgrade URL to help user debug 2021-12-08 12:09:42 -05:00
Harshit Malpani
b93d63b067 Fix 'address already in use' exception in OTA tests
We will stop the server instance at the end of each test case. This will solve the "address already in use" exception
2021-11-24 11:32:15 +08:00
Shubham Kulkarni
40a72ef3cf simple_ota_example: Move redundant and failing example_tests to nightly run 2021-11-19 15:07:31 +05:30