From dc50463c7d5b18fdd742149fd4aa0796ca6adc0c Mon Sep 17 00:00:00 2001 From: nbd Date: Mon, 2 Dec 2013 13:08:11 +0000 Subject: [PATCH] wpa_supplicant: clean up hostapd control socket on exit to fix socket leak in ap+sta mode on wifi restarts Signed-off-by: Felix Fietkau git-svn-id: svn://svn.openwrt.org/openwrt/trunk@38985 3c298f89-4303-0410-b956-a3cf2f4a3e73 --- .../hostapd/patches/370-ap_sta_support.patch | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/package/network/services/hostapd/patches/370-ap_sta_support.patch b/package/network/services/hostapd/patches/370-ap_sta_support.patch index 95bde3f659..a3d05727eb 100644 --- a/package/network/services/hostapd/patches/370-ap_sta_support.patch +++ b/package/network/services/hostapd/patches/370-ap_sta_support.patch @@ -126,6 +126,18 @@ /* RSNA Supplicant Key Management - INITIALIZE */ eapol_sm_notify_portEnabled(wpa_s->eapol, FALSE); eapol_sm_notify_portValid(wpa_s->eapol, FALSE); +@@ -3125,6 +3183,11 @@ static void wpa_supplicant_deinit_iface( + if (terminate) + wpa_msg(wpa_s, MSG_INFO, WPA_EVENT_TERMINATING); + ++ if (wpa_s->hostapd) { ++ wpa_ctrl_close(wpa_s->hostapd); ++ wpa_s->hostapd = NULL; ++ } ++ + if (wpa_s->ctrl_iface) { + wpa_supplicant_ctrl_iface_deinit(wpa_s->ctrl_iface); + wpa_s->ctrl_iface = NULL; --- a/wpa_supplicant/bss.c +++ b/wpa_supplicant/bss.c @@ -11,6 +11,7 @@ -- 2.30.2