hostapd: fix crash on interface setup failure
authorFelix Fietkau <nbd@nbd.name>
Fri, 14 Jun 2024 12:43:39 +0000 (14:43 +0200)
committerFelix Fietkau <nbd@nbd.name>
Fri, 21 Jun 2024 09:52:25 +0000 (11:52 +0200)
Add a missing NULL pointer check when deleting beacons

Signed-off-by: Felix Fietkau <nbd@nbd.name>
package/network/services/hostapd/patches/060-nl80211-fix-crash-when-adding-an-interface-fails.patch [new file with mode: 0644]

diff --git a/package/network/services/hostapd/patches/060-nl80211-fix-crash-when-adding-an-interface-fails.patch b/package/network/services/hostapd/patches/060-nl80211-fix-crash-when-adding-an-interface-fails.patch
new file mode 100644 (file)
index 0000000..1df2eff
--- /dev/null
@@ -0,0 +1,21 @@
+From: Felix Fietkau <nbd@nbd.name>
+Date: Fri, 14 Jun 2024 14:41:16 +0200
+Subject: [PATCH] nl80211: fix crash when adding an interface fails
+
+When adding an interface fails early, the bss link is still NULL.
+Avoid crashing on deleting beacons.
+
+Signed-off-by: Felix Fietkau <nbd@nbd.name>
+---
+
+--- a/src/drivers/driver_nl80211.c
++++ b/src/drivers/driver_nl80211.c
+@@ -3071,7 +3071,7 @@ static int wpa_driver_nl80211_del_beacon
+       struct wpa_driver_nl80211_data *drv = bss->drv;
+       struct i802_link *link = nl80211_get_link(bss, link_id);
+-      if (!link->beacon_set)
++      if (!link || !link->beacon_set)
+               return 0;
+       wpa_printf(MSG_DEBUG, "nl80211: Remove beacon (ifindex=%d)",