Commit Graph

6357 Commits

Author SHA1 Message Date
xueyunfei a45be9e438 feat(lwip):add fall back dns config in menuconfig 2024-01-25 11:04:49 +08:00
Christoph Baechler 1de11efadd dns: fix init with only ipv4 enabled 2023-11-30 13:22:02 +00:00
xueyunfei d3c89e938a optimize add TCP ooseq buf timeout configuration 2023-11-22 20:55:23 +08:00
xueyunfei d5093349ba bugfix for optimize tcp connection 2023-11-22 20:55:23 +08:00
David Cermak 90c1e93e40 Add sbom descripton file for Software BOM
This file is used by the esp-idf-sbom tool to generate
an SBOM file in the SPDX format for esp-idf projects.
2023-10-11 12:27:06 +00:00
Li Bo 0f2d472722 napt: restore to the initial state in deinit
This bug casue NAPT not work as normal after deinit then reinit
2023-09-20 11:39:16 +00:00
muhaidong 4f24c9baf9 lower the dhcp discover and request retry backoff time 2023-07-19 20:52:36 +08:00
xueyunfei a4d70c7e91 netdb:fixed bug for getaddrinfo returns null when IPV4 mapped address 2023-07-19 20:36:26 +08:00
Abhik Roy 8290c3b8f2 lwip/dhcp: Fixed ondemand fine timers leakage bug.
Fixed ondemand fine timers bug, that allowed
only one dhcp client to run at a time without issue.
2023-04-21 20:00:31 +10:00
xueyunfei 6bb132e379 tcp_in/ooseq: Fix incorrect segment trim when FIN moved
In case FIN flag was present in the *next* segment,
it's copied to the current *inseg* and thus it's length
needs to be adjusted, so the segment is trimmed correctly.
2023-03-14 17:42:17 +08:00
David Cermak 53a6e019c5 api_msg: fix tcp_abort thread safety (2.1.2-esp)
As this tcp_abort could be directly called by application thread without
locking the TCP/TP core.

Original commit 10197b212a
2023-02-22 09:37:27 +01:00
xueyunfei a7abf28e02 lwip:optimization dhcp coarse timer 2023-02-09 19:17:05 +08:00
LiPeng abab9fef47 napt: Fix ip_portmap_add() to keep only one port mapping 2023-01-20 14:29:51 +00:00
zhangyanjiao 6fa02bd30d reduce the DHCP Request timeout 2022-12-07 11:21:46 +08:00
xueyunfei 79182163e9 lwip timer:optimization dhcp fine timer 2022-12-06 17:29:04 +08:00
xueyunfei 17f41c9fdf optimization lwip ip4 reassembly timer 2022-12-05 20:30:48 +08:00
xueyunfei c943fc5a97 optimization lwip ip6 reassembly timer 2022-12-05 20:26:48 +08:00
xueyunfei 7f5ab42c7e optimization lwip dns timer 2022-12-05 20:21:07 +08:00
David Cermak 6132c9755a napt: Fix clean compilation
Unused variable introduced in fb1f35523
2022-10-31 09:54:21 +08:00
xueyunfei 15b4400eaf Lwip:add TCP Fin2 timeout configuration 2022-10-25 17:41:34 +08:00
yuanjm c950063f73 napt: Fix IP forwarding when forward netif enable NAPT
* Fix communication between different netifs fails if NAPT is enabled
* Fixes IDF-4896
2022-07-29 10:18:16 +08:00
David Cermak 475d658a47 napt/stats: Move some napt counters to stats module 2022-04-25 11:32:55 +02:00
Deomid "rojer" Ryabkov 2e9045089b ip_napt_maint: Fix timestamp overflow handling
s_last_now was not being updated once overflow happened.
2022-04-16 15:57:03 +01:00
Deomid "rojer" Ryabkov fb1f355234 napt: Fixes and improvements
1. Fix enable/disable to properly allocate and deallocate tables.
    Current algorithm is just broken.
 2. Introduce eviction policy when table gets full: oldest connection
    is evicted, instead of new ones getting silently dropped. this
    results in much better behavior with small tables than before.
    When TCP connection is dropped, RSTs are sent both ways to inform
    parties instead of dropping silently. thiw requires additional 8
    bytes per entry but is, again, a big improvement for clients in
    terms of usability.
 3. FIxed handling of timestamp wraparound (every ~50 days of uptime).
 3. Added ip_portmap_get() to retrieve current port mapping settings.
 4. Added ip_napt_get_stats() for some insight into the state of NAT.
2022-03-27 22:41:59 +01:00
David Cermak 76303df238 test/napt: Add unit test for IP forward with PBUF_REF 2022-03-08 07:28:03 +00:00
xueyunfei 39068263f0 napt: Fix PBUF_REF type to clone the pbuf before forwarding 2022-03-08 07:28:03 +00:00
David Cermak 2b922919a1 version: Update version numbers to match 2.1.2-esp 2022-03-08 07:02:11 +00:00
Peter Putz 537c69d573 pppos: fix in_tail null
happens during quick reconnect of LTE ppp session
2022-02-18 18:15:09 +01:00
David Cermak 202a07da76 PPP: Add test exhibiting empty packet null-deref 2022-02-18 18:14:27 +01:00
Erik Ekman 1c9cd9c1e4 pbuf: Add pbuf_copy_partial_pbuf library function
Like pbuf_copy, but can copy part of a pbuf to an offset in another.
pbuf_copy now uses this function internally.

Signed-off-by: Simon Goldschmidt <goldsimon@gmx.de>
2021-12-07 08:06:22 +00:00
Dirk Ziegelmeier d2dc577bc7 Add #define for minimum IPv6 MTU length 2021-12-07 08:06:22 +00:00
Erik Ekman 64ab7f2a6e zepif: Copy possibly chained output pbuf properly
Fixes bug #58554
2021-12-07 08:06:22 +00:00
Erik Ekman 4a64731b5b icmp6: Don't copy too much data
Fix of the fix for bug #58553
2021-12-07 08:06:22 +00:00
Erik Ekman 7c822ff4e5 icmp6: Fix copying of chained pbuf in reply
Fixes bug #58553, and the newly added unit test.

The pbuf_take_at loop should probably be made into a pbuf library
function, which would avoid this mistake in the future and provide
a simpler implementation of pbuf_copy.
2021-12-07 08:06:22 +00:00
Simon Goldschmidt 29100ab634 icmp6: keep to the RFC and send as much as possible with icmp6 error messages
See bug 56013

Signed-off-by: Simon Goldschmidt <goldsimon@gmx.de>
2021-12-07 08:06:22 +00:00
yuanjm ee59f77d77 dns: Add API to clear dns cache 2021-12-02 07:11:58 +00:00
David Cermak 5a2bdba797 CI: Fixed adding gitlab key 2021-11-03 10:33:48 +01:00
Chen Yu Dong 6b090f7d05 test case: modify test case test_tcp_new_max_num_remove_FIN_WAIT_1 2021-11-01 15:10:00 +08:00
xueyunfei 2749568fe1 add function for deinit lwip timers 2021-10-13 15:42:35 +08:00
yuanjm d827dbf777 dhcp: Fix build issue that set ESP_DHCP_DISABLE_VENDOR_CLASS_IDENTIFIER to true will build fail 2021-09-10 15:34:44 +08:00
David Fries 54acdb598e Document that sntp_setservername doesn't copy the string
I was expecting the string to be duplicate, doing a Google search
shows others did as well.
2021-08-19 19:41:14 +08:00
Liu Han ae7edc2a93 lwip/dhcp: add 60 option for vendor class identify
Closes https://github.com/espressif/esp-idf/issues/6786
2021-08-17 20:09:13 +08:00
David Cermak 55ea9d9c7d dhcp: Restore dhcp_cb on restart after dhcp_release_and_stop()
Closes https://github.com/espressif/esp-lwip/issues/32
2021-07-30 14:27:22 +08:00
yuanjm 74cf7f9f92 napt: Fix disbale IPv6 and enable NAPT will build error
Closes https://github.com/espressif/esp-idf/issues/7217
2021-07-09 15:20:35 +08:00
leo chung bb63eed183 napt: fix checksum of UDP
According to the UDP protocol, the checksum is optional.
so if the checksum is 0, this meaning the checksum is turn off, and no need to
correct checksum.

Signed-off-by: leo chung <gewalalb@gmail.com>
2021-06-25 08:46:57 +08:00
yuanjm 1c1642fe45 sntp: Fix client receive KOD packet that make pool MEMP_SYS_TIMEOUT not be freed 2021-06-21 14:37:21 +08:00
Chen Yu Dong 67deb8055a test case: add tcp state and reset test cases. 2021-06-16 21:48:40 +08:00
David Cermak 2195f7416f dhcp: Fix client identifier to be added to relevant packets
Also added a configuration macro to disable client id option in DHCP packets

Closes https://github.com/espressif/esp-lwip/issues/30
2021-05-07 19:46:33 +08:00
yuanjm 5a567d52f7 dns: Fix server_idx increasing to DNS_MAX_SERVERS and trigger the LWIP_ASSERT
Closes https://github.com/espressif/esp-idf/issues/6878
2021-05-07 15:01:52 +08:00
xueyunfei 2c9c531f0a bugfix for assert when tcp send data 2021-03-24 17:46:29 +08:00