Jiang Jiang Jian
2b16bd7eac
Merge branch 'bugfix/change_default_value_for_ip_ttl_5.0' into 'release/v5.0'
...
Fix(lwip):bugfix for change default value for ip ttl 5.0
See merge request espressif/esp-idf!28399
2024-01-11 21:20:32 +08:00
xueyunfei
8926466b4d
Fix(lwip):bugfix for change default value for ip ttl
2024-01-11 14:30:23 +08:00
Xue yun fei
a60e0adb66
optimize(lwip):when psram is enable the number of ooseq is not limited
2023-12-15 15:29:44 +08:00
xueyunfei
ec63da0753
Backport some lwip bugs for 5.0
...
* Update submodule: git log --oneline 6bf7044c0368d587f70f7083e39e0a619b4d5788..542ba2997f6cc14fe9c3d781bf9b0d890cd70bb1
Detailed description of the changes:
- fix router forwarding flag set (esp-lwip@542ba299)
- optimize add TCP ooseq buf timeout configuration (esp-lwip@4a8286ab)
2023-12-15 15:28:53 +08:00
xueyunfei
4bd2b33d9b
Fix(tcp):optimize tcp connection
2023-10-26 13:00:44 +08:00
xueyunfei
1e3bb1469a
fix(dhcp server):fix set dhcp server poll fail issue
2023-10-26 12:59:57 +08:00
Jiang Jiang Jian
64ceda77f4
Merge branch 'feat/imporve_iperf_performance_v5.0' into 'release/v5.0'
...
feat(wifi): optimize iperf performance (Backport V5.0)
See merge request espressif/esp-idf!26406
2023-10-19 10:33:28 +08:00
xuxiao
d2b82b47c7
feat(wifi): optimize iperf performance (Backport V5.0)
2023-10-11 17:14:52 +08:00
Abhik Roy
08a83bbea5
feat(lwip): Fixes and Improvements for NAPT and SBOM Support
...
- napt: restore to the initial state in deinit (espressif/esp-lwip@5c4f899f )
- napt: Fix ip_portmap_add() to keep only one port mapping (espressif/esp-lwip@d65ad241 )
- napt: Fix clean compilation (espressif/esp-lwip@7033e26f )
- napt: Fix IP forwarding when forward netif enable NAPT (espressif/esp-lwip@bc78df87 )
- napt/stats: Move some napt counters to stats module (espressif/esp-lwip@b55e64ae )
- ip_napt_maint: Fix timestamp overflow handling (2.1.3) (espressif/esp-lwip@a7e0a50c )
- napt: Fixes and improvements (2.1.3) (espressif/esp-lwip@fadb9109 )
- Add sbom descripton file for Software BOM (espressif/esp-lwip@f07097d7 )
2023-10-06 19:46:18 +11:00
xueyunfei
bc003fc6d4
fix(dhcp server): Fix dhcp server address pool issue
2023-08-21 11:54:30 +08:00
Abhik Roy
73d238cdfb
fix: Added check to ensure safe restart of dhcp fine timer
2023-08-17 19:04:33 +10:00
muhaidong
8b59c17ef0
fix(wifi): fix some wifi bugs 230726
...
1. process association request verify ssid
2. fix ftm timer macro issue
3. lower the dhcp discover and request retry backoff time
2023-07-26 16:52:13 +08:00
wuyuanyi135
5689db1ddf
Fix incorrect invocation of the hook LWIP_HOOK_DHCPS_POST_APPEND_OPTS
...
Fix https://github.com/espressif/esp-idf/issues/11373
2023-07-07 14:14:15 +02:00
xueyunfei
64911ed444
Lwip:Backport some lwip bugs to 5.0
...
* Update submodule: git log --oneline d5e56d06658ae11292be1baea56204f7120b6fa7..57c29648ff40e2a19a51683717928aaf766a0495
Detailed description of the changes:
- ip6: add a hook for ip6 source address selection(esp-lwip@57c29648)
- netdb:fixed bug for getaddrinfo returns null when IPV4 mapped address (esp-lwip@dafc8225)
2023-06-13 11:55:49 +08:00
David Cermak
a18d019fc9
lwip: Fix lwiopts macro expansion and dhcps-test
...
Minor issue in lwipopts.h in macro expansion in parameters (cosmetic
change: it expands correctly but doesn't pass the expected argument)
Fix lwip thread safety issue in tests: dhcp server should be started and
stopped only in lwip context/thread. Without this fix, the test would
fail if `CONFIG_LWIP_CHECK_THREAD_SAFETY=y`
Adds CONFIG_LWIP_TCPIP_CORE_LOCKING=y to some mqtt example tests (the
same configs as used in v5.1)
2023-03-21 11:21:07 +01:00
David Cermak
285362e8d6
lwip: Add missing esp_sntp_enabled()
2023-03-21 11:09:56 +01:00
David Cermak
42594bffe4
lwip/sntp: Fix esp_sntp_ API races (v5.0)
...
Some of the esp_sntp_...() APIs that wrap lwip's SNTP
module use tcpip_callback() to execute the lwip functionality
in the correct state (either with locked TCP/IP core,
or within the TCP/IP thread).
tcpip_callback() however doesn't wait for completion of the callback,
which doesn't prevent from using the stack variables after destroy
if used as a parameter.
Introduced in a71fa82
.
Fixed by using of tcpip_api_call() instead of the tcpip_callback().
Closes https://github.com/espressif/esp-idf/issues/10611
2023-03-21 11:09:56 +01:00
David Cermak
5b75693522
esp_netif/lwip: Fix core-locking config (v5.0)
...
* 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
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-03-21 11:09:56 +01:00
xueyunfei
392533f0e2
Fixed bug for dhcp server support CIDR
...
Closes https://github.com/espressif/esp-idf/issues/10024
Closes https://github.com/espressif/esp-idf/issues/10559
2023-03-15 16:20:33 +08:00
xueyunfei
446b49cc15
dhcp server:bugfix softap excedes the range of subnet
2023-03-15 14:35:42 +08:00
xueyunfei
62983624ae
1 dhcp: Fix dhcp_fine_tmr() not to use netif after free
...
2 tcp_in/ooseq: Fix incorrect segment trim when FIN moved
* Update submodule: git log --oneline 10197b212a95c49c733fb18ffed56cafb0d196d4..d5e56d06658ae11292be1baea56204f7120b6fa7
Detailed description of the changes:
- dhcp: Fix dhcp_fine_tmr() not to use netif after free (esp-lwip@d5e56d06)
- tcp_in/ooseq: Fix incorrect segment trim when FIN moved (esp-lwip@9e62afff)
- netdb:fixed addrtype and length in gethostbyname (esp-lwip@aee6b3ed)
- lwip/napt: Added api to enable/disable napt based on lwip netif (esp-lwip@280c3d61)
- lwip/dhcp: Fixed ondemand fine timers bug, that allowed only one dhcp (esp-lwip@86df9f44)
2023-03-15 14:35:42 +08:00
xueyunfei
3b46f2f698
lwip:optimization dhcp coarse timer
2023-03-15 14:35:42 +08:00
xueyunfei
6f311db07e
lwip: solve some routers do not forward multicast packet issue
2023-03-15 14:35:42 +08:00
xueyunfei
651db95177
lwip:optimization dns ipv4 ipv6 timeir
...
* Update submodule: git log --oneline 33912690ea005e8ff05b2c579ebbf0a4189c3b00..705dd71d46779bf29653f1f1d7b1af5a09fb2aa7
Detailed description of the changes:
- dhcp: init fine timer when dhcp start(esp-lwip@705dd71d)
- ip6 timer: optimization lwip ip6 reassembly timer (esp-lwip@9813ea9a)
- ip4 timer: optimization lwip ip4 reassembly timer (esp-lwip@ce1a7099)
- dns timer: optimization lwip dns timer (esp-lwip@6b0bfc2e)
2022-12-06 16:06:57 +08:00
xueyunfei
ebd1609073
lwip timer:optimization dhcp fine timer
2022-12-06 16:04:21 +08:00
zhangyanjiao
4d46e8205a
lwip: fix the bug that long time to get IP
2022-12-06 16:01:38 +08:00
xueyunfei
cd58bad218
Lwip:add TCP Fin2 timeout configuration
2022-10-21 16:23:54 +08:00
xueyunfei
9948de101d
lwip:bugfix for increase ping task stack size
2022-10-21 16:21:06 +08:00
David Cermak
c7d1bcaf79
lwip: Fix close() might block forever if SO_LINGER=y
...
* Update submodule: git log --oneline ec115c720b8909364ec5898dc5cc430cc898192d..316cfc17ce24f2d5d65c9f28251ec43a59a74cb1
Detailed description of the changes:
- tcp/close: Fix clean socket closure when lignering (espressif/esp-lwip@316cfc17 )
- tcp_in: Fix incomplete closure if linger active (espressif/esp-lwip@8b599aa1 )
- ci: Introduce lwip test apps (espressif/esp-lwip@0866f578 )
2022-09-19 07:35:57 +02:00
David Cermak
09a8f171f2
lwip: Reference official 2.1.3-esp branch
...
Actual changes against 2.1.3-esp-dev:
* Fix IPv6 zoning violations
* Melted on-demand timer's commits into one
2022-08-16 15:07:54 +02:00
Ivan Grokhotkov
401c10ecfb
build system: re-add -Wno-format as private flag for some components
2022-08-03 16:42:47 +04:00
Shu Chen
e380704731
Merge branch 'feature/otbr-nat64' into 'master'
...
openthread: add NAT64 and DNS64 support
See merge request espressif/esp-idf!18708
2022-08-03 12:01:23 +08:00
Jiacheng Guo
905856a054
openthread: add NAT64 and DNS64 support
...
* Add required configs and headers for NAT64 and DNS64
* Add hook for DNS name resolution
* Add NAT64 and DNS64 example commands
2022-08-01 15:31:49 +08:00
David Čermák
8d62485a12
Merge branch 'feat/lwip_dhcps_append_opts' into 'master'
...
lw-ip/dhcpserver: Support for adding extra opts
Closes IDFGH-973
See merge request espressif/esp-idf!19115
2022-07-29 14:02:20 +08:00
David Cermak
64f4f0ac1e
esp_netif/lwip: Use netif-client-data to store esp_netif ptr
...
lwip/netif struct has two places to store user's data
* netif->state (1 void*) but that might be occupied in special cases
* netif->client_dtat (n void*s) but that must be enabled in opts.h
This commit stores esp_netif_t* primarily in state, but if any special
netif is enabled in menuconfig (bridgeif, pppos), it uses netif->client_data.
This commit also fixes incorrect esp_netif that is attached to
IP_EVENT_GOT_IP6 event posted by pppos interfaces in:
c585618b97/components/esp_netif/lwip/esp_netif_lwip_ppp.c (L114)
Closes https://github.com/espressif/esp-idf/issues/9345
2022-07-27 11:55:18 +00:00
David Cermak
b5d13b9837
lwip/dhcpserver: Support for adding extra opts
...
This enables users appending an extra, user defined options in dhcp
server messages. Example of adding captive_portal option (160) to dhcp
offer message is provided:
* Add idf-lwip hook file (project makefile):
idf_component_get_property(lwip lwip COMPONENT_LIB)
target_compile_options(${lwip} PRIVATE "-I${PROJECT_DIR}/main")
target_compile_definitions(${lwip} PRIVATE "-DESP_IDF_LWIP_HOOK_FILENAME=\"add_captive_portal.h\"")
* Implement appending (add_captive_portal.h):
#pragma once
#define LWIP_HOOK_DHCPS_POST_APPEND_OPTS(netif, dhcp, state, pp_opts) \
if ((state)==DHCPOFFER) { *(pp_opts) = append_captive_portal_uri(*(pp_opts)); }
static inline uint8_t *append_captive_portal_uri(uint8_t *optptr)
{
const static uint8_t DHCP_OPTION_CAPTIVE_PORTAL=160;
const static char CAPTIVE_PORTAL_URI[]="my_uri";
int size = sizeof(CAPTIVE_PORTAL_URI) - 1;
*optptr++ = DHCP_OPTION_CAPTIVE_PORTAL;
*optptr++ = size;
for(int i = 0; i < size; ++i) {
*optptr++ = CAPTIVE_PORTAL_URI[i];
}
return optptr;
}
Merges https://github.com/espressif/esp-idf/pull/3308
2022-07-26 07:09:22 +00:00
Darian Leung
781d06af73
esp_hw_support: Remove compare_set.h API
...
This function removes the following legacy atomic CAS functions:
From compare_set.h (file removed):
- compare_and_set_native()
- compare_and_set_extram()
From portmacro.h
- uxPortCompareSet()
- uxPortCompareSetExtram()
Users should call esp_cpu_compare_and_set() instead as this function hides the details
of atomic CAS on internal and external RAM addresses.
Due to the removal of compare_set.h, some missing header includes are also fixed in this commit.
2022-07-22 00:06:06 +08: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
David Čermák
5548f5acd6
Merge branch 'bugfix/lwip_ondemand_timers_num_system_timeout' into 'master'
...
lw ip: Fix on-demand timers to update internal system touts
Closes IDFGH-7595
See merge request espressif/esp-idf!18724
2022-07-18 21:56:57 +08:00
David Cermak
58b0def0d9
lwip: Fix on-demand timers to update internal system touts
...
If on-demand timers (IGMP+MLD6) were enabled, idf updated user config
MEMP_NUM_SYS_TIMEOUT. The implementation of these timers are in lwip
project so the internal system timeout shall be updated accordingly,
enabling port layers to modify MEMP_NUM_SYS_TIMEOUT.
Closes https://github.com/espressif/esp-idf/issues/9150
2022-07-14 05:09:53 +00:00
Fu Hanxi
c0568611dd
docs: changes docs supported targets tables
2022-07-14 08:26:32 +08:00
xueyunfei
45ad770c37
Icmp: get tos parameter in icmp reply
2022-07-05 11:37:41 +08:00
xueyunfei
b569f4069a
bugfix for add ttl for ping socket
2022-07-05 11:37:41 +08:00
Anton Maklakov
d2ce9abb2a
lwip: suppress some GCC 11 warnings
...
Closes https://github.com/espressif/esp-idf/issues/9142
2022-06-29 11:42:09 +00:00
Ondrej Kosta
53082a22f7
esp_netif: added support for LwIP bridge
...
examples: created bridge example
2022-06-14 15:29:44 +02:00
David Cermak
343cf2696e
esp_eth: Reduce internal deps onto netif-glue
2022-06-09 07:55:40 +00:00
morris
aa3ddbc3c6
Merge branch 'test/enable_c2_target_tests' into 'master'
...
ci: enable target tests for ESP32-C2
Closes IDF-4989
See merge request espressif/esp-idf!18182
2022-06-03 16:41:24 +08:00
David Čermák
46e599c56d
Merge branch 'feature/lwip_rework_patches' into 'master'
...
lw-IP: Reworked patches
Closes IDFGH-6197
See merge request espressif/esp-idf!17388
2022-06-03 15:26:55 +08:00
David Cermak
c67f4c2b4c
lwip: Remove vanilla-lwip config until it's fully deployable
2022-06-02 20:45:24 +02:00
Michael (XIAO Xufeng)
6a8aed12ee
ci: partially enable ut tests for esp32c2
...
Disabled test cases are tracked in:
IDF-4465, IDF-5045, IDF-5057, IDF-5058, IDF-5059, IDF-5060, IDF-5061, IDF-5131
- test_fatfs: IDF-5136
- test_pm: IDF-5053
- test_cache_mmu: IDF-5138
- test_partitions: IDF-5137
- test_vfs: IDF-5139
- test_freertos: IDF-5140
- test_wpa_supplicant: IDF-5046
- test_mbedtls: IDF-5141
- test_pthread: IDF-5142
- test_protocomm: IDF-5143
- test_lightsleep: IDF-5053
- test_taskwdt: IDF-5055
- test_tcp_transport: IDF-5144
- test_app_update: IDF-5145
- test_timer: IDF-5052
- test_spi: IDF-5146
- test_rtc_clk: IDF-5060
- test_heap: IDF-5167
ci: fixed issues for tests of libgcc, ets_timer, newlib
test_pm: support on C2
2022-06-02 14:23:35 +08:00