From 5d91a27a1eed9f3b4602e0874b7b216750f6cdd9 Mon Sep 17 00:00:00 2001 From: ryan kurte Date: Tue, 1 Dec 2020 13:09:38 +1300 Subject: [PATCH] lwip: Added KConfig option to control checksum validation on IP/UDP/ICMP This maintains the current default, but could be swapped if desired Merges https://github.com/espressif/esp-idf/pull/6187 --- components/lwip/Kconfig | 22 +++++++++++++++++++ components/lwip/port/esp32/include/lwipopts.h | 5 +++-- 2 files changed, 25 insertions(+), 2 deletions(-) diff --git a/components/lwip/Kconfig b/components/lwip/Kconfig index 41d9ea6f97..bf07b1f580 100644 --- a/components/lwip/Kconfig +++ b/components/lwip/Kconfig @@ -559,6 +559,28 @@ menu "LWIP" endmenu # UDP + menu "Checksums" + + config LWIP_CHECKSUM_CHECK_IP + bool "Enable LWIP IP checksums" + default n + help + Enable checksum checking for received IP messages + + config LWIP_CHECKSUM_CHECK_UDP + bool "Enable LWIP UDP checksums" + default n + help + Enable checksum checking for received UDP messages + + config LWIP_CHECKSUM_CHECK_ICMP + bool "Enable LWIP ICMP checksums" + default y + help + Enable checksum checking for received ICMP messages + + endmenu # Checksums + config LWIP_TCPIP_TASK_STACK_SIZE int "TCP/IP Task Stack Size" default 3072 diff --git a/components/lwip/port/esp32/include/lwipopts.h b/components/lwip/port/esp32/include/lwipopts.h index 7d2a4c4868..e66c5fe446 100644 --- a/components/lwip/port/esp32/include/lwipopts.h +++ b/components/lwip/port/esp32/include/lwipopts.h @@ -968,8 +968,9 @@ #define LWIP_DEBUG LWIP_DBG_OFF #define TCP_DEBUG LWIP_DBG_OFF -#define CHECKSUM_CHECK_UDP 0 -#define CHECKSUM_CHECK_IP 0 +#define CHECKSUM_CHECK_UDP CONFIG_LWIP_CHECKSUM_CHECK_UDP +#define CHECKSUM_CHECK_IP CONFIG_LWIP_CHECKSUM_CHECK_IP +#define CHECKSUM_CHECK_ICMP CONFIG_LWIP_CHECKSUM_CHECK_ICMP #define LWIP_NETCONN_FULLDUPLEX 1 #define LWIP_NETCONN_SEM_PER_THREAD 1