extern int wpa_debug_level;
extern int wpa_debug_show_keys;
extern int wpa_debug_timestamp;
-extern struct wpa_driver_ops *wpa_supplicant_drivers[];
+extern struct wpa_driver_ops *wpa_drivers[];
/* Configure default/group WEP keys for static WEP */
static int wpa_set_wep_keys(struct wpa_supplicant *wpa_s,
int reason_code)
{
u8 *addr = NULL;
- wpa_supplicant_set_state(wpa_s, WPA_DISCONNECTED);
if (!is_zero_ether_addr(wpa_s->bssid)) {
if (wpa_s->drv_flags & WPA_DRIVER_FLAGS_USER_SPACE_MLME)
ieee80211_sta_deauthenticate(wpa_s, reason_code);
addr = wpa_s->bssid;
}
wpa_clear_keys(wpa_s, addr);
+ wpa_supplicant_mark_disassoc(wpa_s);
wpa_s->current_ssid = NULL;
wpa_sm_set_config(wpa_s->wpa, NULL);
eapol_sm_notify_config(wpa_s->eapol, NULL, NULL);
- eapol_sm_notify_portEnabled(wpa_s->eapol, FALSE);
- eapol_sm_notify_portValid(wpa_s->eapol, FALSE);
}
if (wpa_s == NULL)
return -1;
- if (wpa_supplicant_drivers[0] == NULL) {
+ if (wpa_drivers[0] == NULL) {
wpa_printf(MSG_ERROR, "No driver interfaces build into "
"wpa_supplicant.");
return -1;
if (name == NULL) {
/* default to first driver in the list */
- wpa_s->driver = wpa_supplicant_drivers[0];
+ wpa_s->driver = wpa_drivers[0];
return 0;
}
len = pos - name;
else
len = os_strlen(name);
- for (i = 0; wpa_supplicant_drivers[i]; i++) {
- if (os_strlen(wpa_supplicant_drivers[i]->name) == len &&
- os_strncmp(name, wpa_supplicant_drivers[i]->name, len) ==
+ for (i = 0; wpa_drivers[i]; i++) {
+ if (os_strlen(wpa_drivers[i]->name) == len &&
+ os_strncmp(name, wpa_drivers[i]->name, len) ==
0) {
- wpa_s->driver = wpa_supplicant_drivers[i];
+ wpa_s->driver = wpa_drivers[i];
return 0;
}
}
}
-void wpa_supplicant_sta_free_hw_features(struct hostapd_hw_modes *hw_features,
- size_t num_hw_features)
-{
- ieee80211_sta_free_hw_features(hw_features, num_hw_features);
-}
-
-
void wpa_supplicant_sta_rx(void *ctx, const u8 *buf, size_t len,
struct ieee80211_rx_status *rx_status)
{
}
}
- for (i = 0; wpa_supplicant_drivers[i]; i++)
+ for (i = 0; wpa_drivers[i]; i++)
global->drv_count++;
if (global->drv_count == 0) {
wpa_printf(MSG_ERROR, "No drivers enabled");
wpa_supplicant_deinit(global);
return NULL;
}
- for (i = 0; wpa_supplicant_drivers[i]; i++) {
- if (!wpa_supplicant_drivers[i]->global_init)
+ for (i = 0; wpa_drivers[i]; i++) {
+ if (!wpa_drivers[i]->global_init)
continue;
- global->drv_priv[i] = wpa_supplicant_drivers[i]->global_init();
+ global->drv_priv[i] = wpa_drivers[i]->global_init();
if (global->drv_priv[i] == NULL) {
wpa_printf(MSG_ERROR, "Failed to initialize driver "
- "'%s'", wpa_supplicant_drivers[i]->name);
+ "'%s'", wpa_drivers[i]->name);
wpa_supplicant_deinit(global);
return NULL;
}
eap_peer_unregister_methods();
- for (i = 0; wpa_supplicant_drivers[i] && global->drv_priv; i++) {
+ for (i = 0; wpa_drivers[i] && global->drv_priv; i++) {
if (!global->drv_priv[i])
continue;
- wpa_supplicant_drivers[i]->global_deinit(global->drv_priv[i]);
+ wpa_drivers[i]->global_deinit(global->drv_priv[i]);
}
os_free(global->drv_priv);