feat(lwip): update lwip component according to IDF

commit ID: 79a5b0b5
This commit is contained in:
yuanjm
2020-07-16 20:23:43 +08:00
parent da3362ecab
commit ef2c714c06
23 changed files with 613 additions and 435 deletions

View File

@@ -71,6 +71,20 @@ menu "LWIP"
will be redirected to lwip_select(), therefore, select can be used
for sockets only.
config LWIP_SO_LINGER
bool "Enable SO_LINGER processing"
default n
help
Enabling this option allows SO_LINGER processing.
l_onoff = 1,l_linger can set the timeout.
If l_linger=0, When a connection is closed, TCP will terminate the connection.
This means that TCP will discard any data packets stored in the socket send buffer
and send an RST to the peer.
If l_linger!=0,Then closesocket() calls to block the process until
the remaining data packets has been sent or timed out.
config LWIP_SO_REUSE
bool "Enable SO_REUSEADDR option"
default y
@@ -105,18 +119,45 @@ menu "LWIP"
Enabling this option allows checking for the destination address
of a received IPv4 Packet.
config LWIP_IP_FRAG
bool "Enable fragment outgoing IP packets"
default n
config LWIP_IP4_FRAG
bool "Enable fragment outgoing IP4 packets"
default y
help
Enabling this option allows fragmenting outgoing IP packets if their size
Enabling this option allows fragmenting outgoing IP4 packets if their size
exceeds MTU.
config LWIP_IP_REASSEMBLY
bool "Enable reassembly incoming fragmented IP packets"
config LWIP_IP6_FRAG
bool "Enable fragment outgoing IP6 packets"
default y
help
Enabling this option allows fragmenting outgoing IP6 packets if their size
exceeds MTU.
config LWIP_IP4_REASSEMBLY
bool "Enable reassembly incoming fragmented IP4 packets"
default n
help
Enabling this option allows reassemblying incoming fragmented IP packets.
Enabling this option allows reassemblying incoming fragmented IP4 packets.
config LWIP_IP6_REASSEMBLY
bool "Enable reassembly incoming fragmented IP6 packets"
default n
help
Enabling this option allows reassemblying incoming fragmented IP6 packets.
config LWIP_IP_FORWARD
bool "Enable IP forwarding"
default n
help
Enabling this option allows packets forwarding across multiple interfaces.
config LWIP_IPV4_NAPT
bool "Enable NAT (new/experimental)"
depends on LWIP_IP_FORWARD
select LWIP_L2_TO_L3_COPY
default n
help
Enabling this option allows Network Address and Port Translation.
config LWIP_STATS
bool "Enable LWIP statistics"
@@ -254,6 +295,14 @@ menu "LWIP"
If rate limiting self-assignment requests, wait this long between
each request.
config LWIP_IPV6_AUTOCONFIG
bool "Enable IPV6 stateless address autoconfiguration"
default n
help
Enabling this option allows the devices to IPV6 stateless address autoconfiguration.
See RFC 4862.
menuconfig LWIP_NETIF_LOOPBACK
bool "Support per-interface loopback"
default y
@@ -344,7 +393,8 @@ menu "LWIP"
config LWIP_TCP_SND_BUF_DEFAULT
int "Default send buffer size"
default 5744 # 4 * default MSS
range 2440 65535
range 2440 65535 if !LWIP_WND_SCALE
range 2440 1024000 if LWIP_WND_SCALE
help
Set default send buffer size for new TCP sockets.
@@ -360,7 +410,8 @@ menu "LWIP"
config LWIP_TCP_WND_DEFAULT
int "Default receive window size"
default 5744 # 4 * default MSS
range 2440 65535
range 2440 65535 if !LWIP_WND_SCALE
range 2440 1024000 if LWIP_WND_SCALE
help
Set default TCP receive window size for new TCP sockets.
@@ -400,6 +451,12 @@ menu "LWIP"
Disable this option to save some RAM during TCP sessions, at the expense
of increased retransmissions if segments arrive out of order.
config LWIP_TCP_SACK_OUT
bool "Support sending selective acknowledgements"
default n
help
TCP will support sending selective acknowledgements (SACKs).
config LWIP_TCP_KEEP_CONNECTION_WHEN_IP_CHANGES
bool "Keep TCP connections when IP changed"
default n
@@ -449,6 +506,13 @@ menu "LWIP"
help
Enable this feature to support TCP window scaling.
config LWIP_TCP_RTO_TIME
int "Default TCP rto time"
default 3000
help
Set default TCP rto time for a reasonable initial rto.
In bad network environment, recommend set value of rto time to 1500.
endmenu # TCP
menu "UDP"
@@ -526,6 +590,17 @@ menu "LWIP"
PPP over serial support is experimental and unsupported.
config LWIP_PPP_ENABLE_IPV6
bool "Enable IPV6 support for PPP connections (IPV6CP)"
depends on LWIP_PPP_SUPPORT && LWIP_IPV6
default y
help
Enable IPV6 support in PPP for the local link between the DTE (processor) and DCE (modem).
There are some modems which do not support the IPV6 addressing in the local link.
If they are requested for IPV6CP negotiation, they may time out.
This would in turn fail the configuration for the whole link.
If your modem is not responding correctly to PPP Phase Network, try to disable IPV6 support.
config LWIP_PPP_NOTIFY_PHASE_SUPPORT
bool "Enable Notify Phase Callback"
depends on LWIP_PPP_SUPPORT
@@ -621,4 +696,11 @@ menu "LWIP"
endmenu # SNTP
config LWIP_ESP_LWIP_ASSERT
bool "Enable LWIP ASSERT checks"
default y
help
Enable this option allows lwip to check assert.
It is recommended to keep it open, do not close it.
endmenu