Commit Graph

80 Commits

Author SHA1 Message Date
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
hrushikesh.bhosale ace6a490bc feat(esp_https_server): Updated the ESP_TLS_SERVER_CERT_SELECT_HOOK config
Update the ESP_TLS_SERVER_CERT_SELECT_HOOK config to ESP_HTTPS_SERVER_CERT_SELECT_HOOK
And made it depend on  ESP_TLS_SERVER_CERT_SELECT_HOOK
2024-11-14 14:48:50 +05:30
nilesh.kale 3e1534e2f7 fix(esp_https_server): added default config for https_server example to set header size to 1024 2024-10-22 12:20:00 +05:30
nilesh.kale 0797f580bc fix: updated pytest for https_server example as per config option 2024-10-09 15:56:42 +05:30
Ondrej Kosta 2653ed5318 Merge branch 'feat/spi_eth_c61' into 'master'
feat(esp_eth): added SPI ETH defaults for C61 in examples

Closes IDF-9298

See merge request espressif/esp-idf!33559
2024-09-24 17:12:49 +08:00
Aditya Patwardhan 238615c634 fix(examples): Update accurate information for HTTPS Server 2024-09-20 17:49:23 +05:30
Ondrej Kosta 301e67157b ci(esp_eth): enabled build and test for c61 in eth/proto examples 2024-09-18 08:44:58 +02:00
Ondrej Kosta dd81b56fb6 feat(esp_eth): removed disable of C5 and P4 from examples .build-test-rules
Updated examples to be able to build for C5 and P4.

Added Ethernet support for static_ip example.
2024-08-14 10:07:48 +02: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
Harshit Malpani d52955efdd feat: Add event handler in simple https_server example 2024-02-14 14:36:14 +05:30
Harshit Malpani e636c680a5 fix: Check memory allocation failures in protocol examples 2024-01-03 15:23:53 +05:30
Marius Vikhammer d3ca964e5f fix(ci): fixed misnamed kconfig option in https server ci config 2023-11-03 09:13:22 +08:00
Aditya Patwardhan a0d73b5155 fix(esp_https_server): Convert HTTPD_SSL_CONFIG_DEFAULT MACRO to function
Previously with HTTPD_SSL_CONFIG_DEFAULT being a MACRO, the
    configuration options could not be applied to it. This was casuing
    error in multiple scenarios. For e.g., here user_cert_cb is a part
    of httpd_ssl_config_t which this macro defines. But the type of
    user_cert_cb (esp_tls_server_callback_t) is only available when it is enabled
    in esp-tls. The MACRO however cannot be modified to set the defaults
    based on configuration option. This fix solves the issue without
    breaking the compatibility
2023-10-26 09:30:13 +00: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
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
Aditya Patwardhan bd81d8f9d3 esp-tls: Add build test for server session ticket option 2023-02-24 04:45:23 +00:00
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
David Cermak 5c383d7b73 esp_netif/lwip: Fix deps cycles to "lwip -> esp_netif -> phy-drivers"
Fix dependency tree so that lwip doesn't depend on any specific network
interface component.
Network interface drivers shall depend on esp_netif.
esp_netif shall depend on lwip (but not on any specific interface
driver) -- it optionally depends on vfs and esp_eth (need ethernet
header for L2/bridge mode)
2022-07-20 14:59:07 +02: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 692fbc169c CI: use ssid password from stdin for pytest cases 2022-07-15 01:16:36 +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
Fu Hanxi c0568611dd docs: changes docs supported targets tables 2022-07-14 08:26:32 +08:00
yuanjm 63ed429a49 fix(example): Fix wss_server_example not close socket
Closes https://github.com/espressif/esp-idf/issues/9163
2022-06-20 03:01:38 +00:00
yuanjm 16cf6d7bf3 ci: Add PING test for ci 2022-06-08 16:30:51 +08: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 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 5a51af523c https examples pytest migration 2022-05-27 10:27:00 +05:30
Li Jingyi 0cdee37630 https_server: add mbedtls dynamic buffer function test 2022-05-20 11:21:48 +00:00
Mahavir Jain af1f342ee8 Merge branch 'fix/make_esp_tls_t_private' into 'master'
Make esp_tls_t as private structure

Closes IDF-2812

See merge request espressif/esp-idf!17812
2022-05-12 14:47:42 +08:00
Harshit Malpani 2c56c6cad8 Updated coding style and added error logs 2022-05-11 08:58:01 +00:00
Nathan Phillips e8e63a06e8 Don't ignore return value of httpd_stop 2022-05-11 08:58:01 +00:00
Aditya Patwardhan 26a15058d3 Add sdkconfig.h to protocol/https* examples 2022-05-11 07:09:34 +00:00
Aditya Patwardhan 788c9ddf8d esp_tls: Added getter function for esp_tls ssl ctx. 2022-05-11 07:09:34 +00:00
Laukik Hase 8f77caa637 https_server: Fix example test failure
- Closed the client connection gracefully for the https server
  callback check to pass in test
- Made some functions static in the example
2022-03-30 20:45:48 +05:30
Laukik Hase 1d71fbae92 https_server: Add provision for callback at session close
Closes https://github.com/espressif/esp-idf/issues/8288
2022-03-30 11:25:11 +05:30
Laukik Hase d7090b4d52 https_server: Add config option to min. cert. auth mode
- Added a config option to set the minimum Certificate Verification
  mode to Optional
- When this option is enabled, the peer (the client) certificate
  is checked by the server, however the handshake continues even if
  verification failed.
- By default, the peer certificate is not checked and ignored by the server.

Closes https://github.com/espressif/esp-idf/issues/8664
2022-03-29 08:57:36 +00:00
Mahavir Jain 99e7059cbe Merge branch 'bugfix/kconfig_defaults' into 'master'
kconfig: Changed default values of `bool` configs

Closes IDF-4747

See merge request espressif/esp-idf!17447
2022-03-11 11:48:17 +08:00
Laukik Hase 25c5c214f3 kconfig: Changed default values of bool configs
- Some bool configs were using default values true and false,
  instead of y and n.
2022-03-10 14:26:37 +05:30
David Cermak 795b7ed993 esp_netif: Remove tcpip_adapter compatibility layer 2022-03-10 08:19:43 +01:00
Laukik Hase 3925365351 ci: Fix pre-check stage failing tests
- Updated license headers
- Re-enabled public headers and static analysis checks
- Fix public header file check failure

Co-authored-by: Aditya Patwardhan <aditya.patwardhan@espressif.com>
2022-03-03 01:37:10 +05:30
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
Harshit Malpani 94056fd4a5 esp_https_server: API cleanup 2022-02-14 16:25:54 +05:30
Roland Dobai 766aa57084 Build & config: Remove leftover files from the unsupported "make" build system 2021-11-11 15:32:36 +01:00
Laukik Hase 1d2b2b5879 feature: Added user callback for esp_https_server
- Can be used to get connection or client information (SSL context)
- E.g. Client certificate, Socket FD, Connection state, etc.
- Added example callback for getting client certificate information in 'https_server/simple' example

Closes https://github.com/espressif/esp-idf/issues/7479
2021-10-11 09:41:01 +05:30
Harshit Malpani 294b805f31 docs: Updated protocols/http* examples READMEs 2021-09-13 09:55:19 +05:30