[openwrt/openwrt] hostapd: fix a segfault on sta disconnect with proxy arp enabled

LEDE Commits lede-commits at lists.infradead.org
Tue Nov 23 09:44:31 PST 2021


nbd pushed a commit to openwrt/openwrt.git, branch openwrt-21.02:
https://git.openwrt.org/aada4d0e785b8f44e298296208a577676aaa020e

commit aada4d0e785b8f44e298296208a577676aaa020e
Author: Felix Fietkau <nbd at nbd.name>
AuthorDate: Wed Jul 28 05:48:38 2021 +0200

    hostapd: fix a segfault on sta disconnect with proxy arp enabled
    
    Signed-off-by: Felix Fietkau <nbd at nbd.name>
    (cherry-picked from commit 5dd1bd5b80feb2dbaad8bdf93779acad74ed199a)
---
 ...oop-call-dl_list_del-before-freeing-ipv6-add.patch | 19 +++++++++++++++++++
 1 file changed, 19 insertions(+)

diff --git a/package/network/services/hostapd/patches/023-ndisc_snoop-call-dl_list_del-before-freeing-ipv6-add.patch b/package/network/services/hostapd/patches/023-ndisc_snoop-call-dl_list_del-before-freeing-ipv6-add.patch
new file mode 100644
index 0000000000..9ff9b2398d
--- /dev/null
+++ b/package/network/services/hostapd/patches/023-ndisc_snoop-call-dl_list_del-before-freeing-ipv6-add.patch
@@ -0,0 +1,19 @@
+From: Felix Fietkau <nbd at nbd.name>
+Date: Wed, 28 Jul 2021 05:43:29 +0200
+Subject: [PATCH] ndisc_snoop: call dl_list_del before freeing ipv6 addresses
+
+Fixes a segmentation fault on sta disconnect
+
+Signed-off-by: Felix Fietkau <nbd at nbd.name>
+---
+
+--- a/src/ap/ndisc_snoop.c
++++ b/src/ap/ndisc_snoop.c
+@@ -61,6 +61,7 @@ void sta_ip6addr_del(struct hostapd_data
+ 	dl_list_for_each_safe(ip6addr, prev, &sta->ip6addr, struct ip6addr,
+ 			      list) {
+ 		hostapd_drv_br_delete_ip_neigh(hapd, 6, (u8 *) &ip6addr->addr);
++		dl_list_del(&ip6addr->list);
+ 		os_free(ip6addr);
+ 	}
+ }



More information about the lede-commits mailing list