Merge branch 'bugfix/fix_wpa2_vulnerability_and_lwip_window_scale_v3.2' into 'release/v3.2'

esp32/lfix wpa2-enterprise vulnerability and support lwindow scale (backport v3.2)

See merge request idf/esp-idf!5411
This commit is contained in:
Jiang Jiang Jian 2019-07-02 14:26:48 +08:00
commit 476d4ba1b7
4 changed files with 35 additions and 4 deletions

View file

@ -1084,7 +1084,8 @@ config ESP32_WIFI_STATIC_RX_BUFFER_NUM
config ESP32_WIFI_DYNAMIC_RX_BUFFER_NUM
int "Max number of WiFi dynamic RX buffers"
range 0 128
range 0 128 if !LWIP_WND_SCALE
range 0 1024 if LWIP_WND_SCALE
default 32
help
Set the number of WiFi dynamic RX buffers, 0 means unlimited RX buffers will be allocated

@ -1 +1 @@
Subproject commit 55b813f2a3d91843c4c6c8a2485b11406a72c5a0
Subproject commit e5e3b12c31e4fe143aa1aabd94c8ffac93d76b5d

View file

@ -148,7 +148,8 @@ config GARP_TMR_INTERVAL
config TCPIP_RECVMBOX_SIZE
int "TCPIP task receive mail box size"
default 32
range 6 64
range 6 64 if !LWIP_WND_SCALE
range 6 1024 if LWIP_WND_SCALE
help
Set TCPIP task receive mail box size. Generally bigger value means higher throughput
but more memory. The value should be bigger than UDP/TCP mail box size.
@ -339,7 +340,8 @@ config TCP_WND_DEFAULT
config TCP_RECVMBOX_SIZE
int "Default TCP receive mail box size"
default 6
range 6 64
range 6 64 if !LWIP_WND_SCALE
range 6 1024 if LWIP_WND_SCALE
help
Set TCP receive mail box size. Generally bigger value means higher throughput
but more memory. The recommended value is: TCP_WND_DEFAULT/TCP_MSS + 2, e.g. if
@ -399,6 +401,21 @@ config TCP_OVERSIZE_DISABLE
endchoice
config LWIP_WND_SCALE
bool "Support TCP window scale"
depends on WIFI_LWIP_ALLOCATION_FROM_SPIRAM_FIRST
default n
help
Enable this feature to support TCP window scaling.
config TCP_RCV_SCALE
int "Set TCP receiving window scaling factor"
depends on LWIP_WND_SCALE
range 0 14
default 0
help
Enable this feature to support TCP window scaling.
endmenu # TCP
menu "UDP"

View file

@ -363,6 +363,19 @@
#error "One of CONFIG_TCP_OVERSIZE_xxx options should be set by sdkconfig"
#endif
/**
* LWIP_WND_SCALE and TCP_RCV_SCALE:
* Set LWIP_WND_SCALE to 1 to enable window scaling.
* Set TCP_RCV_SCALE to the desired scaling factor (shift count in the
* range of [0..14]).
* When LWIP_WND_SCALE is enabled but TCP_RCV_SCALE is 0, we can use a large
* send window while having a small receive window only.
*/
#ifdef CONFIG_LWIP_WND_SCALE
#define LWIP_WND_SCALE 1
#define TCP_RCV_SCALE CONFIG_TCP_RCV_SCALE
#endif
/*
----------------------------------
---------- Pbuf options ----------