diff --git a/0124-fix-udp-recv-memleak.patch b/0124-fix-udp-recv-memleak.patch new file mode 100644 index 0000000..565643c --- /dev/null +++ b/0124-fix-udp-recv-memleak.patch @@ -0,0 +1,24 @@ +From b80f4cd0b3d5ea5349599ef12dd13a0bedafb3b9 Mon Sep 17 00:00:00 2001 +From: compile_success <980965867@qq.com> +Date: Mon, 22 Apr 2024 15:11:21 +0000 +Subject: [PATCH] fix udp recv memleak + +--- + src/api/api_msg.c | 1 + + 1 file changed, 1 insertion(+) + +diff --git a/src/api/api_msg.c b/src/api/api_msg.c +index f0a3e0b..9da4869 100644 +--- a/src/api/api_msg.c ++++ b/src/api/api_msg.c +@@ -286,6 +286,7 @@ recv_udp(void *arg, struct udp_pcb *pcb, struct pbuf *p, + p->port = port; + len = p->tot_len; + if (sys_mbox_trypost(&conn->recvmbox, p) != ERR_OK) { ++ pbuf_free(p); + return; + #else /* GAZELLE_UDP_ENABLE */ + err_t err; +-- +2.33.0 + diff --git a/lwip.spec b/lwip.spec index f86220e..4b3b38e 100644 --- a/lwip.spec +++ b/lwip.spec @@ -4,7 +4,7 @@ Summary: lwip is a small independent implementation of the TCP/IP protocol suite Name: lwip Version: 2.2.0 -Release: 16 +Release: 17 License: BSD URL: http://savannah.nongnu.org/projects/lwip/ Source0: http://download.savannah.nongnu.org/releases/lwip/%{name}-%{version}.zip @@ -135,6 +135,7 @@ Patch9119: 0120-enable-SO_REUSE_RXTOALL.patch Patch9120: 0121-add-vlan-filter.patch Patch9121: 0122-support-mldv2.patch Patch9122: 0123-opts-modify-MEMP_NUM_UDP_PCB.patch +Patch9123: 0124-fix-udp-recv-memleak.patch BuildRequires: gcc-c++ dos2unix dpdk-devel @@ -164,6 +165,9 @@ cd %{_builddir}/%{name}-%{version}/src %{_libdir}/liblwip.a %changelog +* Mon Apr 22 2024 zhujunhao - 2.2.0-17 +- fix udp recv memleak + * Thu Apr 11 2024 yinbin - 2.2.0-16 - opts: modify MEMP_NUM_UDP_PCB