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
yuanjianmin
f74447103f
esp-tls: Add config and api to set and get ciphersuites list
2023-04-27 19:22:27 +08:00
Aditya Patwardhan
2dd280f126
esp-tls: Added getter/setter function for the conn_state.
...
* Added the setter function to set the connection sockfd value
Closes https://github.com/espressif/esp-idf/issues/10871
2023-04-13 20:03:50 +05:30
Mahavir Jain
496cd83944
Fix coverity warning in esp-tls component
...
The regressions was introduced in the commit: 0abd1cb51f
2023-03-27 12:03:49 +05:30
Mahavir Jain
8d90249829
Merge branch 'contrib/github_pr_10967' into 'master'
...
[esp-tls] Add addr_family option to esp_tls_cfg_t (GitHub PR)
Closes IDFGH-9620
See merge request espressif/esp-idf!22892
2023-03-24 18:02:31 +08:00
Mark H. Spatz
0abd1cb51f
[esp-tls] Add addr_family option to esp_tls_cfg_t
2023-03-12 17:41:30 -04:00
Harshit Malpani
866e6b0d6b
esp-tls: Fix esp-tls component to resolve esp_http_client example failure for Linux target.
...
esp_http_client does not use lwip component when building for linux target. Using lwip configs directly in esp-tls caused the test failures
2023-03-08 14:56:04 +05:30
David Cermak
5f6cb31105
lwip: Support IPv6 only mode
2023-02-27 08:53:34 +01:00
Harshit Malpani
aefd3b0aec
esp-tls: update esp-tls to support linux build
2023-01-04 11:17:27 +05:30
Laukik Hase
665ad3dbdb
esp_tls: Fix issue when timeout is not explicitly given in esp_tls_cfg_t
...
- If internet connectivity weakened or disappeared suddenly while we were
in the TLS handshake stage, the app got stuck at that point indefinitely.
- This was because when timeout was not explicitly specified in esp_tls_cfg_t,
the default timeout was set at the wrong place. This causes the sockets to be
setup with zero timeout, hence the indefinite wait.
2022-12-16 10:20:21 +05:30
Harshit Malpani
295507bc1b
esp-tls: use gettimeofday() instead of xTaskGetTickCount()
2022-11-29 11:04:54 +05:30
Li Jingyi
6d58008119
esp-tls: add api to free client session
...
Free session with mbedtls api to avoid mem-leak
2022-05-23 16:28:40 +08:00
Aditya Patwardhan
788c9ddf8d
esp_tls: Added getter function for esp_tls ssl ctx.
2022-05-11 07:09:34 +00:00
Aditya Patwardhan
434e74ff73
esp_tls: Make esp_tls_t as private structure.
2022-05-11 07:09:34 +00:00
Laukik Hase
864c59c091
esp_tls: Remove deprecated API
...
- Removed deprecated esp_tls_conn_new() viz. duplicated by
esp_tls_conn_new_sync()
- Removed deprecated esp_tls_conn_delete()
- Marked esp_tls_conn_http_new() as deprecated, added alternative
esp_tls_conn_http_new_sync() (similar to esp_tls_conn_http_new_async())
2022-04-20 12:18:25 +05:30
Mahavir Jain
c26500cd5a
esp-tls: mark esp_tls_conn_delete API as deprecated
...
It is recommended to use `esp_tls_conn_destroy` API instead
2022-01-04 15:40:07 +05:30
Aditya Patwardhan
b4e4b9f20d
Added support for client session tickets in esp-tls (with mbedtls)
...
* client session tickets for individual tls connections are supported
* reorganize the esp-tls error codes.
* Update esp_err_to_name.c
* Fix styling
2021-09-15 22:19:04 +05:30
Daniel Bahrdt
7e886ca9ed
Implement server session ticket support with mbedtls
...
Closes https://github.com/espressif/esp-idf/pull/7048
Signed-off-by: Aditya Patwardhan <aditya.patwardhan@espressif.com>
2021-09-15 22:19:04 +05:30
Jan Brudny
967e057906
esp-tls, esp_http_client and esp_http_server: update copyright notice
2021-05-31 20:06:09 +08:00
David Cermak
f68d7d7023
esp_tls: Renamed public API to indicate the Plain TCP connection
...
Also added parameter checks if used from as a public API
and updated the `is_plein_tcp` description that it's possible to connect
directly using plain tcp transport with the new API.
2021-05-25 10:55:50 +02:00
David Cermak
f249ddd9ae
esp_transport: Use tcp_connect from esp_tls for plain TCP
...
so we don't have to allocate esp_tls structure (~2KB) to save heap when using plain TCP connection
Closes https://github.com/espressif/esp-idf/issues/6940
2021-05-25 07:04:02 +02:00
Jiri Schiebel
c01e259a98
esp_tls: esp_tls_connect: Reduce input params to err_handle
...
Pass only the error_handle instead of instead of the full config structure
2021-05-25 07:04:02 +02:00
Axel Lin
52442be9e1
esp-tls: Fix setsockopt for TCP_KEEPIDLE
...
Current code applies keep_alive_enable setting to TCP_KEEPIDLE, fix it.
Fixes: 2d25252746
("esp-tls: Rework tcp_connect() to use more subroutines")
Signed-off-by: Axel Lin <axel.lin@gmail.com>
2021-04-06 15:37:16 +08:00
yuanjm
f68e55edb3
esp-tls: Separate timeout_ms conditional judgement from keep alive
2021-03-10 02:19:29 +00:00
yuanjm
c62cbd1254
transport: Support bind socket to specified interface in transport and esp-tls
2021-03-10 02:19:29 +00:00
yuanjm
da58235a0e
components: Use CONFIG_LWIP_IPV6 to strip IPv6 function in components
2021-02-23 18:26:03 +08:00
David Cermak
5cfa545d08
esp-tls: Added _esp_tls_net_init to init fd for both mbedtls/wolfssl
2021-02-16 09:01:35 +01:00
David Cermak
2d25252746
esp-tls: Rework tcp_connect() to use more subroutines
...
Refactored the esp_tcp_connect() functionality to break it down to
* dns-resolution + socket creation
* set configured socket options
* set/reset non-block mode
* the actual connection in non-blocking mode
2021-02-16 09:01:35 +01:00
David Cermak
6b318fe583
esp_tls: Updated connection method to use non-blocking connect
...
For better control over connection timeouts
To be in line with former tcp_transport, as esp-tls is not used for
plain tcp transports
2021-02-16 09:00:43 +01:00
David Cermak
2c28ffffee
tcp_transport/esp_tls: Use common TCP transport to reduce code duplication
...
For high level review of the changes.
2021-02-16 09:00:43 +01:00
yuanjm
044c3e3e74
Modify esp-tls and tcp_transport to support keep alive for tcp and ssl connection
...
Closes IDFGH-4543
2021-01-22 06:56:28 +00:00
Angus Gratton
935e4b4d62
Merge branch 'feature/riscv_arch' into 'master'
...
Add RISC-V support
Closes IDF-2359
See merge request espressif/esp-idf!11140
2020-11-13 07:50:31 +08:00
Angus Gratton
420aef1ffe
Updates for riscv support
...
* Target components pull in xtensa component directly
* Use CPU HAL where applicable
* Remove unnecessary xtensa headers
* Compilation changes necessary to support non-xtensa gcc types (ie int32_t/uint32_t is no
longer signed/unsigned int).
Changes come from internal branch commit a6723fc
2020-11-13 07:49:11 +11:00
David Cermak
ce519ee783
tcp_transport: Extend transport error storage for socket error
...
Everytime we report error and log errno, we also capture the actual
errno to an internal storage so that user application can retrieve
its value.
2020-11-12 12:46:22 +00:00
David Cermak
6182e6f303
tcp_transport: close to return error only for socket error or invalid args
...
Closes https://github.com/espressif/esp-idf/issues/4872
2020-05-05 15:53:09 +02:00
Aditya Patwardhan
d35862b662
esp-tls: Add support for https_server using wolfSSL
2020-02-27 15:20:22 +05:30
Angus Gratton
3f532c8895
Merge branch 'bugfix/esp_tls_blocking_timeout' into 'master'
...
esp-tls: add timeout for blocking connection
See merge request espressif/esp-idf!7316
2020-01-20 09:35:23 +08:00
David Cermak
98cf3142fa
esp_tls: fail connection if esp_tls_conn_new() timeouts
2020-01-16 07:32:19 +00:00
David Cermak
aa3b1da384
esp_tls: added connection timeout to esp_tls_conn_new_sync()
2020-01-16 07:32:19 +00:00
Aditya Patwardhan
c7418042b4
esp32/esp-tls: provide API to retrieve sockfd value from esp_tls_t
2020-01-16 12:27:44 +05:30
Ivan Grokhotkov
87a41fabfa
esp-tls: check return value of fcntl
2019-12-11 14:53:27 +01:00
Aditya Patwardhan
f7eaa5f946
ESP_TLS: Restructuring esp_tls
...
1)Segregating mbedtls API into seperate file and cleaned esp_tls.c
2)Added support for wolfssl for CMake and make
3)Added support for debug_wolfssl (with menuconfig option)
4)Added info on wolfssl in ESP-TLS docs
2019-10-28 16:05:22 +05:30
David Cermak
a9e63d947b
esp-tls: Added support for fragmenting outgoing data in tls_write(), for cases of out data being larger than the maximum out buffer of underlying tls-stack.
2019-10-22 08:49:42 +00:00
Liu Han
3ca07b3e70
fix(transport): Fix a bug of the connection whether be active or not by timeout option when the select function return a correct value.
2019-09-12 13:55:47 +08:00
David Cermak
f3d6a34e7d
esp_tls: enable psk verification mode, added mqtt example using psk authentication
2019-08-07 14:27:40 +10:00
Angus Gratton
7ef5fa8a0a
Merge branch 'feature/transport_support_der_certs' into 'master'
...
tcp transport ssl DER-support
See merge request espressif/esp-idf!5627
2019-08-05 09:52:08 +08:00
David Cermak
25dd5e39af
esp-tls: Naming variables refering to certificates and keys in a neutral way to suggest that both PEM and DER format could be used, added comments descibing important details about using these formats
2019-08-02 09:25:16 +02:00
Anton Maklakov
afbaf74007
tools: Mass fixing of empty prototypes (for -Wstrict-prototypes)
2019-08-01 16:28:56 +07:00
David Cermak
587739391c
esp-tls: extending error handle to contain error descriptors with last mbedtls failure and latest certificate verification result flags, reworked tcp_transport to use this error handle
2019-07-04 20:55:10 +02:00
David Cermak
2972f96982
esp-tls: capturing specific errors to be available in tcp_transport and then in application code
2019-07-04 20:55:10 +02:00