hostapd: fix a mesh mode crash with CONFIG_TAXONOMY enabled
authorFelix Fietkau <nbd@nbd.name>
Thu, 3 May 2018 10:38:20 +0000 (12:38 +0200)
committerFelix Fietkau <nbd@nbd.name>
Thu, 3 May 2018 10:38:33 +0000 (12:38 +0200)
Signed-off-by: Felix Fietkau <nbd@nbd.name>
package/network/services/hostapd/patches/022-mesh-fix-crash-with-CONFIG_TAXONOMY-enabled.patch [new file with mode: 0644]

diff --git a/package/network/services/hostapd/patches/022-mesh-fix-crash-with-CONFIG_TAXONOMY-enabled.patch b/package/network/services/hostapd/patches/022-mesh-fix-crash-with-CONFIG_TAXONOMY-enabled.patch
new file mode 100644 (file)
index 0000000..bbc4672
--- /dev/null
@@ -0,0 +1,23 @@
+From: Felix Fietkau <nbd@nbd.name>
+Date: Thu, 3 May 2018 12:34:31 +0200
+Subject: [PATCH] mesh: fix crash with CONFIG_TAXONOMY enabled
+
+wpa_s->ifmsh needs to be allocated using hostapd_alloc_iface() instead
+of a direct call to os_zalloc, otherwise the linked list for station
+taxonomy items remains uninitialized, leading to a crash on the first
+attempt to traverse that list
+
+Signed-off-by: Felix Fietkau <nbd@nbd.name>
+---
+
+--- a/wpa_supplicant/mesh.c
++++ b/wpa_supplicant/mesh.c
+@@ -216,7 +216,7 @@ static int wpa_supplicant_mesh_init(stru
+               return 0;
+       }
+-      wpa_s->ifmsh = ifmsh = os_zalloc(sizeof(*wpa_s->ifmsh));
++      wpa_s->ifmsh = ifmsh = hostapd_alloc_iface();
+       if (!ifmsh)
+               return -ENOMEM;