atheros: Fix WPA/802.1X disabling to clear Privacy flag

Setting IEEE80211_PARAM_AUTHMODE to IEEE80211_AUTH_AUTO ends up enabling
Privacy mode in the driver. We need to clear that to allow hostapd to be
reconfigured into open mode.
This commit is contained in:
Jouni Malinen 2010-05-28 21:51:31 +03:00 committed by Jouni Malinen
parent 7d6640a62c
commit 8b0ea5a07e

View file

@ -74,6 +74,7 @@ struct madwifi_driver_data {
static int madwifi_sta_deauth(void *priv, const u8 *own_addr, const u8 *addr,
int reason_code);
static int madwifi_set_privacy(void *priv, int enabled);
static const char * athr_get_ioctl_name(int op)
{
@ -343,8 +344,11 @@ madwifi_set_ieee8021x(void *priv, struct wpa_bss_params *params)
if (!params->enabled) {
/* XXX restore state */
return set80211param(priv, IEEE80211_PARAM_AUTHMODE,
IEEE80211_AUTH_AUTO);
if (set80211param(priv, IEEE80211_PARAM_AUTHMODE,
IEEE80211_AUTH_AUTO) < 0)
return -1;
/* IEEE80211_AUTH_AUTO ends up enabling Privacy; clear that */
return madwifi_set_privacy(drv, 0);
}
if (!params->wpa && !params->ieee802_1x) {
hostapd_logger(drv->hapd, NULL, HOSTAPD_MODULE_DRIVER,