Merge "Handle PMKSA flush in the driver for SAE/OWE offload cases" into main
diff --git a/src/drivers/driver_nl80211.c b/src/drivers/driver_nl80211.c
index fede740..3b96d55 100644
--- a/src/drivers/driver_nl80211.c
+++ b/src/drivers/driver_nl80211.c
@@ -6889,14 +6889,8 @@
if (params->wpa_proto & WPA_PROTO_WPA)
ver |= NL80211_WPA_VERSION_1;
- if (params->wpa_proto & WPA_PROTO_RSN) {
-#if !defined(CONFIG_DRIVER_NL80211_BRCM) && !defined(CONFIG_DRIVER_NL80211_SYNA)
- if (wpa_key_mgmt_sae(params->key_mgmt_suite))
- ver |= NL80211_WPA_VERSION_3;
- else
-#endif
- ver |= NL80211_WPA_VERSION_2;
- }
+ if (params->wpa_proto & WPA_PROTO_RSN)
+ ver |= NL80211_WPA_VERSION_2;
wpa_printf(MSG_DEBUG, " * WPA Versions 0x%x", ver);
if (nla_put_u32(msg, NL80211_ATTR_WPA_VERSIONS, ver))
@@ -11836,15 +11830,6 @@
if (!addr)
addr = drv->perm_addr;
- /*
- * Try to change the address first without setting the interface
- * down and then fall back to DOWN/set addr/UP if the first
- * attempt failed. This can reduce the interface setup time
- * significantly with some drivers.
- */
- if (!linux_set_ifhwaddr(drv->global->ioctl_sock, bss->ifname, addr))
- goto done;
-
if (linux_set_iface_flags(drv->global->ioctl_sock, bss->ifname, 0) < 0)
return -1;
@@ -11861,19 +11846,18 @@
return -1;
}
- if (linux_set_iface_flags(drv->global->ioctl_sock, bss->ifname, 1) < 0)
- {
- wpa_printf(MSG_DEBUG,
- "nl80211: Could not restore interface UP after set_mac_addr");
- }
-
-done:
wpa_printf(MSG_DEBUG, "nl80211: set_mac_addr for %s to " MACSTR,
bss->ifname, MAC2STR(addr));
drv->addr_changed = new_addr;
os_memcpy(bss->prev_addr, bss->addr, ETH_ALEN);
os_memcpy(bss->addr, addr, ETH_ALEN);
+ if (linux_set_iface_flags(drv->global->ioctl_sock, bss->ifname, 1) < 0)
+ {
+ wpa_printf(MSG_DEBUG,
+ "nl80211: Could not restore interface UP after set_mac_addr");
+ }
+
return 0;
}