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
David Cermak
7efcb5e625
lwip: Add missing null-checks, rename to vanilla-lwip
2022-06-01 20:38:40 +02:00
David Cermak
00377cf2e5
lwip/ci: Cleanup public header checker ignore list
2022-06-01 14:36:58 +02:00
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
David Cermak
8b40579aa4
lwip: Move wifi's custom pbuf alloc/free to IRAM if config
2022-05-31 16:21:47 +02:00
David Cermak
0e71a325de
lwip/wifi: Improve Rx throughput on the wifi defaults (sta+ap)
2022-05-31 15:23:06 +02:00
yuanjm
0ae030d0ca
fix(Kconfig): Fix lw-ip Kconfig display garbled characters
2022-05-27 02:48:45 +00:00
yuanjm
667a7c6cd0
feat(netif): Add NETIF_FLAG_MLD6 flag for eth netif
...
Closes https://github.com/espressif/esp-idf/issues/8602
2022-05-20 11:26:27 +00:00
David Cermak
60fc1ae035
lwip: Removed incorrect-fix 358ee481
2022-05-18 17:11:35 +02:00
David Cermak
d50739adec
lwip: forgotten ip4_route_src_hook to IRAM
2022-05-18 17:11:35 +02:00
David Cermak
e7f19f39bc
lwip: Fix the CI
2022-05-18 17:11:35 +02:00
David Cermak
a6154a5f10
lwip: Update default MEMP_NUM_SYS_TIMEOUT if timers on-demand
2022-05-18 17:11:35 +02:00
David Cermak
5d6afa3c4b
dhcp: Implement additional dhcp options
2022-05-18 17:11:35 +02:00
David Cermak
1564e8d5a9
lwip: Implement DHCP hook supporting MTU option
2022-05-18 17:11:35 +02:00
David Cermak
5aa3be11fd
dhcpserver: Minor #idfef fix
2022-05-18 17:11:35 +02:00
David Cermak
b6eb9002a8
add dhcp custom values
2022-05-18 17:11:35 +02:00
David Cermak
356bc603c4
lwip: Support DHCP restore last IP
2022-05-18 17:11:35 +02:00
David Cermak
7a04eb8d66
lwip: Reference specific ESP patches
...
Also adding ip4_napt.c to sources, as it's added by ESP-patches
2022-05-18 17:10:42 +02:00
David Cermak
53c009e626
lwip: Update socket API to include port-version of sockets/netdb
...
Added socket extention to the lwip hooks for implementing non-vanilla
{get/set}sockopts()
2022-05-18 17:10:42 +02:00