Update RSN supplicant MAC address on driver reinitialization

I have a test case where I remove and insert another network adapter
between two connections to AP. The interface get the same interface name
but switches macadresses between the connections. When running WPA2 I
got a failure in EAPOL negotiation and found out that the reason for
this was that the supplicant did not update the MAC address in the
correct place.
This commit is contained in:
Johan Hedlund 2011-12-03 13:02:57 +02:00 committed by Jouni Malinen
parent 3b1c7bfdc5
commit f98eb880eb

View file

@ -2092,6 +2092,7 @@ int wpa_supplicant_driver_init(struct wpa_supplicant *wpa_s)
wpa_dbg(wpa_s, MSG_DEBUG, "Own MAC address: " MACSTR,
MAC2STR(wpa_s->own_addr));
wpa_sm_set_own_addr(wpa_s->wpa, wpa_s->own_addr);
if (wpa_s->bridge_ifname[0]) {
wpa_dbg(wpa_s, MSG_DEBUG, "Receiving packets from bridge "
@ -2339,8 +2340,6 @@ next_driver:
return -1;
}
wpa_sm_set_own_addr(wpa_s->wpa, wpa_s->own_addr);
if (wpas_wps_init(wpa_s))
return -1;