Try to set WPA-None key after IBSS-joined event
cfg80211 rejects the set_key operations before the IBSS network has been fully formed, so add one more attempt to set the key for WPA-None at IBSS joined driver event. Signed-hostap: Jouni Malinen <jouni@qca.qualcomm.com>
This commit is contained in:
parent
66562e9c75
commit
6ea1f4135b
3 changed files with 14 additions and 2 deletions
|
@ -1777,6 +1777,16 @@ static void wpa_supplicant_event_assoc(struct wpa_supplicant *wpa_s,
|
|||
wpa_s->key_mgmt == WPA_KEY_MGMT_WPA_NONE ||
|
||||
(wpa_s->current_ssid &&
|
||||
wpa_s->current_ssid->mode == IEEE80211_MODE_IBSS)) {
|
||||
if (wpa_s->key_mgmt == WPA_KEY_MGMT_WPA_NONE &&
|
||||
(wpa_s->drv_flags &
|
||||
WPA_DRIVER_FLAGS_SET_KEYS_AFTER_ASSOC_DONE)) {
|
||||
/*
|
||||
* Set the key after having received joined-IBSS event
|
||||
* from the driver.
|
||||
*/
|
||||
wpa_supplicant_set_wpa_none_key(wpa_s,
|
||||
wpa_s->current_ssid);
|
||||
}
|
||||
wpa_supplicant_cancel_auth_timeout(wpa_s);
|
||||
wpa_supplicant_set_state(wpa_s, WPA_COMPLETED);
|
||||
} else if (!ft_completed) {
|
||||
|
|
|
@ -126,8 +126,8 @@ int wpa_set_wep_keys(struct wpa_supplicant *wpa_s, struct wpa_ssid *ssid)
|
|||
}
|
||||
|
||||
|
||||
static int wpa_supplicant_set_wpa_none_key(struct wpa_supplicant *wpa_s,
|
||||
struct wpa_ssid *ssid)
|
||||
int wpa_supplicant_set_wpa_none_key(struct wpa_supplicant *wpa_s,
|
||||
struct wpa_ssid *ssid)
|
||||
{
|
||||
u8 key[32];
|
||||
size_t keylen;
|
||||
|
|
|
@ -702,6 +702,8 @@ void wpa_supplicant_apply_vht_overrides(
|
|||
struct wpa_driver_associate_params *params);
|
||||
|
||||
int wpa_set_wep_keys(struct wpa_supplicant *wpa_s, struct wpa_ssid *ssid);
|
||||
int wpa_supplicant_set_wpa_none_key(struct wpa_supplicant *wpa_s,
|
||||
struct wpa_ssid *ssid);
|
||||
|
||||
int wpa_supplicant_reload_configuration(struct wpa_supplicant *wpa_s);
|
||||
|
||||
|
|
Loading…
Reference in a new issue