]> git.ipfire.org Git - thirdparty/hostap.git/commitdiff
wpa_supplicant: Fix global control interface for STA/STA-FIRST/STA-NEXT
authorDmitry Shmidt <dimitrysh@google.com>
Tue, 24 Jan 2017 23:12:54 +0000 (23:12 +0000)
committerJouni Malinen <j@w1.fi>
Sun, 29 Jan 2017 23:54:22 +0000 (01:54 +0200)
update_stations(ctrl_conn) is stuck in never-ending loop:

sendto(3, "STA-FIRST", 9, 0, NULL, 0)   = 9
pselect6(4, [3], NULL, NULL, {10, 0}, NULL) = 1 (in [3], left {9, 999995000})
recvfrom(3, "UNKNOWN COMMAND\n", 4095, 0, NULL, NULL) = 16
sendto(3, "STA-NEXT UNKNOWN COMMAND", 24, 0, NULL, 0) = 24
pselect6(4, [3], NULL, NULL, {10, 0}, NULL) = 1 (in [3], left {9, 999995833})
recvfrom(3, "UNKNOWN COMMAND\n", 4095, 0, NULL, NULL) = 16
sendto(3, "STA-NEXT UNKNOWN COMMAND", 24, 0, NULL, 0) = 24
pselect6(4, [3], NULL, NULL, {10, 0}, NULL) = 1 (in [3], left {9, 999995000})
recvfrom(3, "UNKNOWN COMMAND\n", 4095, 0, NULL, NULL) = 16
sendto(3, "STA-NEXT UNKNOWN COMMAND", 24, 0, NULL, 0) = 24

Direct STA, STA-FIRST, and STA-NEXT commands from the global control
interface to a per-interface control interface to avoid this.

Signed-off-by: Dmitry Shmidt <dimitrysh@google.com>
wpa_supplicant/ctrl_iface.c

index ead5fe63875c81424a1062efd8de53253bcef8ff..dff53ad9285ed47a31891a2c53ffc1208eb5136d 100644 (file)
@@ -10231,6 +10231,9 @@ static char * wpas_global_ctrl_iface_redir_p2p(struct wpa_global *global,
                "P2P_CANCEL",
                "P2P_PRESENCE_REQ",
                "P2P_EXT_LISTEN",
+#ifdef CONFIG_AP
+               "STA-FIRST",
+#endif /* CONFIG_AP */
                NULL
        };
        static const char * prefix[] = {
@@ -10268,6 +10271,10 @@ static char * wpas_global_ctrl_iface_redir_p2p(struct wpa_global *global,
                "NFC_REPORT_HANDOVER ",
                "P2P_ASP_PROVISION ",
                "P2P_ASP_PROVISION_RESP ",
+#ifdef CONFIG_AP
+               "STA ",
+               "STA-NEXT ",
+#endif /* CONFIG_AP */
                NULL
        };
        int found = 0;