From: Xin Deng Date: Tue, 11 Apr 2023 10:24:58 +0000 (+0800) Subject: hostapd: Restore the flow of set beacon and WPA key init X-Git-Tag: hostap_2_11~1203 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=f8931fcbafc8889ef96615593d26964cb60910c3;p=thirdparty%2Fhostap.git hostapd: Restore the flow of set beacon and WPA key init hostapd start AP flow changed in commit 931e5d4f9e2e. However, that could cause a regression in a legacy AP driver where the set key operation for GTK, IGTK, and BIGTK before AP start (set beacon) would cause the driver to ignore the key set command. Restore the flow of the set beacon and WPA key init operations to make sure drivers can receive and set group keys correctly. Fixes: 931e5d4f9e2e ("mbssid: Configure all BSSes before beacon setup") Signed-off-by: Jouni Malinen --- diff --git a/src/ap/hostapd.c b/src/ap/hostapd.c index 8b3fb404d..a20882794 100644 --- a/src/ap/hostapd.c +++ b/src/ap/hostapd.c @@ -1476,11 +1476,11 @@ static int hostapd_setup_bss(struct hostapd_data *hapd, int first, return -1; } - if (hapd->wpa_auth && wpa_init_keys(hapd->wpa_auth) < 0) + if (start_beacon && hostapd_start_beacon(hapd, flush_old_stations) < 0) return -1; - if (start_beacon) - return hostapd_start_beacon(hapd, flush_old_stations); + if (hapd->wpa_auth && wpa_init_keys(hapd->wpa_auth) < 0) + return -1; return 0; }