[PATCH] libertas: remove WLAN_802_11_AUTHENTICATION_MODE
Remove WLAN_802_11_AUTHENTICATION_MODE enum and use IW_AUTH_ALG_* instead. Signed-off-by: Dan Williams <dcbw@redhat.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
This commit is contained in:
committed by
John W. Linville
parent
43631e15c1
commit
6affe785aa
@@ -300,8 +300,7 @@ static int should_deauth_infrastructure(wlan_adapter *adapter,
|
|||||||
}
|
}
|
||||||
|
|
||||||
if (test_bit(ASSOC_FLAG_SECINFO, &assoc_req->flags)) {
|
if (test_bit(ASSOC_FLAG_SECINFO, &assoc_req->flags)) {
|
||||||
if (adapter->secinfo.authmode !=
|
if (adapter->secinfo.auth_mode != assoc_req->secinfo.auth_mode) {
|
||||||
assoc_req->secinfo.authmode) {
|
|
||||||
lbs_pr_debug(1, "Deauthenticating due to updated security "
|
lbs_pr_debug(1, "Deauthenticating due to updated security "
|
||||||
"info in configuration request.\n");
|
"info in configuration request.\n");
|
||||||
return 1;
|
return 1;
|
||||||
|
@@ -276,13 +276,6 @@ enum WLAN_802_11_NETWORK_INFRASTRUCTURE {
|
|||||||
wlan802_11infrastructuremax
|
wlan802_11infrastructuremax
|
||||||
};
|
};
|
||||||
|
|
||||||
/** WLAN_802_11_AUTHENTICATION_MODE */
|
|
||||||
enum WLAN_802_11_AUTHENTICATION_MODE {
|
|
||||||
wlan802_11authmodeopen = 0x00,
|
|
||||||
wlan802_11authmodeshared = 0x01,
|
|
||||||
wlan802_11authmodenetworkEAP = 0x80,
|
|
||||||
};
|
|
||||||
|
|
||||||
/** WLAN_802_11_WEP_STATUS */
|
/** WLAN_802_11_WEP_STATUS */
|
||||||
enum WLAN_802_11_WEP_STATUS {
|
enum WLAN_802_11_WEP_STATUS {
|
||||||
wlan802_11WEPenabled,
|
wlan802_11WEPenabled,
|
||||||
|
@@ -58,7 +58,7 @@ struct wlan_802_11_security {
|
|||||||
u8 WPAenabled;
|
u8 WPAenabled;
|
||||||
u8 WPA2enabled;
|
u8 WPA2enabled;
|
||||||
enum WLAN_802_11_WEP_STATUS WEPstatus;
|
enum WLAN_802_11_WEP_STATUS WEPstatus;
|
||||||
enum WLAN_802_11_AUTHENTICATION_MODE authmode;
|
u8 auth_mode;
|
||||||
};
|
};
|
||||||
|
|
||||||
/** Current Basic Service Set State Structure */
|
/** Current Basic Service Set State Structure */
|
||||||
|
@@ -200,7 +200,7 @@ static void wlan_init_adapter(wlan_private * priv)
|
|||||||
memset(&adapter->wep_keys[i], 0, sizeof(struct WLAN_802_11_KEY));
|
memset(&adapter->wep_keys[i], 0, sizeof(struct WLAN_802_11_KEY));
|
||||||
adapter->wep_tx_keyidx = 0;
|
adapter->wep_tx_keyidx = 0;
|
||||||
adapter->secinfo.WEPstatus = wlan802_11WEPdisabled;
|
adapter->secinfo.WEPstatus = wlan802_11WEPdisabled;
|
||||||
adapter->secinfo.authmode = wlan802_11authmodeopen;
|
adapter->secinfo.auth_mode = IW_AUTH_ALG_OPEN_SYSTEM;
|
||||||
adapter->inframode = wlan802_11infrastructure;
|
adapter->inframode = wlan802_11infrastructure;
|
||||||
|
|
||||||
adapter->assoc_req = NULL;
|
adapter->assoc_req = NULL;
|
||||||
|
@@ -398,22 +398,39 @@ int libertas_cmd_80211_authenticate(wlan_private * priv,
|
|||||||
void *pdata_buf)
|
void *pdata_buf)
|
||||||
{
|
{
|
||||||
wlan_adapter *adapter = priv->adapter;
|
wlan_adapter *adapter = priv->adapter;
|
||||||
struct cmd_ds_802_11_authenticate *pauthenticate =
|
struct cmd_ds_802_11_authenticate *pauthenticate = &cmd->params.auth;
|
||||||
&cmd->params.auth;
|
int ret = -1;
|
||||||
u8 *bssid = pdata_buf;
|
u8 *bssid = pdata_buf;
|
||||||
|
|
||||||
cmd->command = cpu_to_le16(cmd_802_11_authenticate);
|
cmd->command = cpu_to_le16(cmd_802_11_authenticate);
|
||||||
cmd->size =
|
cmd->size = cpu_to_le16(sizeof(struct cmd_ds_802_11_authenticate)
|
||||||
cpu_to_le16(sizeof(struct cmd_ds_802_11_authenticate)
|
+ S_DS_GEN);
|
||||||
+ S_DS_GEN);
|
|
||||||
|
/* translate auth mode to 802.11 defined wire value */
|
||||||
|
switch (adapter->secinfo.auth_mode) {
|
||||||
|
case IW_AUTH_ALG_OPEN_SYSTEM:
|
||||||
|
pauthenticate->authtype = 0x00;
|
||||||
|
break;
|
||||||
|
case IW_AUTH_ALG_SHARED_KEY:
|
||||||
|
pauthenticate->authtype = 0x01;
|
||||||
|
break;
|
||||||
|
case IW_AUTH_ALG_LEAP:
|
||||||
|
pauthenticate->authtype = 0x80;
|
||||||
|
break;
|
||||||
|
default:
|
||||||
|
lbs_pr_debug(1, "AUTH_CMD: invalid auth alg 0x%X\n",
|
||||||
|
adapter->secinfo.auth_mode);
|
||||||
|
goto out;
|
||||||
|
}
|
||||||
|
|
||||||
pauthenticate->authtype = adapter->secinfo.authmode;
|
|
||||||
memcpy(pauthenticate->macaddr, bssid, ETH_ALEN);
|
memcpy(pauthenticate->macaddr, bssid, ETH_ALEN);
|
||||||
|
|
||||||
lbs_pr_debug(1, "AUTH_CMD: Bssid is : %x:%x:%x:%x:%x:%x\n",
|
lbs_pr_debug(1, "AUTH_CMD: Bssid is : %x:%x:%x:%x:%x:%x\n",
|
||||||
bssid[0], bssid[1], bssid[2], bssid[3], bssid[4], bssid[5]);
|
bssid[0], bssid[1], bssid[2], bssid[3], bssid[4], bssid[5]);
|
||||||
|
ret = 0;
|
||||||
|
|
||||||
return 0;
|
out:
|
||||||
|
return ret;
|
||||||
}
|
}
|
||||||
|
|
||||||
int libertas_cmd_80211_deauthenticate(wlan_private * priv,
|
int libertas_cmd_80211_deauthenticate(wlan_private * priv,
|
||||||
|
@@ -1772,13 +1772,13 @@ static int wlan_get_encode(struct net_device *dev,
|
|||||||
dwrq->flags = 0;
|
dwrq->flags = 0;
|
||||||
|
|
||||||
/* Authentication method */
|
/* Authentication method */
|
||||||
switch (adapter->secinfo.authmode) {
|
switch (adapter->secinfo.auth_mode) {
|
||||||
case wlan802_11authmodeopen:
|
case IW_AUTH_ALG_OPEN_SYSTEM:
|
||||||
dwrq->flags = IW_ENCODE_OPEN;
|
dwrq->flags = IW_ENCODE_OPEN;
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case wlan802_11authmodeshared:
|
case IW_AUTH_ALG_SHARED_KEY:
|
||||||
case wlan802_11authmodenetworkEAP:
|
case IW_AUTH_ALG_LEAP:
|
||||||
dwrq->flags = IW_ENCODE_RESTRICTED;
|
dwrq->flags = IW_ENCODE_RESTRICTED;
|
||||||
break;
|
break;
|
||||||
default:
|
default:
|
||||||
@@ -1915,7 +1915,7 @@ static void disable_wep(struct assoc_request *assoc_req)
|
|||||||
int i;
|
int i;
|
||||||
|
|
||||||
/* Set Open System auth mode */
|
/* Set Open System auth mode */
|
||||||
assoc_req->secinfo.authmode = wlan802_11authmodeopen;
|
assoc_req->secinfo.auth_mode = IW_AUTH_ALG_OPEN_SYSTEM;
|
||||||
|
|
||||||
/* Clear WEP keys and mark WEP as disabled */
|
/* Clear WEP keys and mark WEP as disabled */
|
||||||
assoc_req->secinfo.WEPstatus = wlan802_11WEPdisabled;
|
assoc_req->secinfo.WEPstatus = wlan802_11WEPdisabled;
|
||||||
@@ -1984,9 +1984,9 @@ static int wlan_set_encode(struct net_device *dev,
|
|||||||
set_bit(ASSOC_FLAG_WEP_TX_KEYIDX, &assoc_req->flags);
|
set_bit(ASSOC_FLAG_WEP_TX_KEYIDX, &assoc_req->flags);
|
||||||
|
|
||||||
if (dwrq->flags & IW_ENCODE_RESTRICTED) {
|
if (dwrq->flags & IW_ENCODE_RESTRICTED) {
|
||||||
assoc_req->secinfo.authmode = wlan802_11authmodeshared;
|
assoc_req->secinfo.auth_mode = IW_AUTH_ALG_SHARED_KEY;
|
||||||
} else if (dwrq->flags & IW_ENCODE_OPEN) {
|
} else if (dwrq->flags & IW_ENCODE_OPEN) {
|
||||||
assoc_req->secinfo.authmode = wlan802_11authmodeopen;
|
assoc_req->secinfo.auth_mode = IW_AUTH_ALG_OPEN_SYSTEM;
|
||||||
}
|
}
|
||||||
|
|
||||||
out:
|
out:
|
||||||
@@ -2144,11 +2144,9 @@ static int wlan_set_encodeext(struct net_device *dev,
|
|||||||
goto out;
|
goto out;
|
||||||
|
|
||||||
if (dwrq->flags & IW_ENCODE_RESTRICTED) {
|
if (dwrq->flags & IW_ENCODE_RESTRICTED) {
|
||||||
assoc_req->secinfo.authmode =
|
assoc_req->secinfo.auth_mode = IW_AUTH_ALG_SHARED_KEY;
|
||||||
wlan802_11authmodeshared;
|
|
||||||
} else if (dwrq->flags & IW_ENCODE_OPEN) {
|
} else if (dwrq->flags & IW_ENCODE_OPEN) {
|
||||||
assoc_req->secinfo.authmode =
|
assoc_req->secinfo.auth_mode = IW_AUTH_ALG_OPEN_SYSTEM;
|
||||||
wlan802_11authmodeopen;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/* Mark the various WEP bits as modified */
|
/* Mark the various WEP bits as modified */
|
||||||
@@ -2334,14 +2332,12 @@ static int wlan_set_auth(struct net_device *dev,
|
|||||||
if (dwrq->value & IW_AUTH_WPA_VERSION_WPA) {
|
if (dwrq->value & IW_AUTH_WPA_VERSION_WPA) {
|
||||||
assoc_req->secinfo.WPAenabled = 1;
|
assoc_req->secinfo.WPAenabled = 1;
|
||||||
assoc_req->secinfo.WEPstatus = wlan802_11WEPdisabled;
|
assoc_req->secinfo.WEPstatus = wlan802_11WEPdisabled;
|
||||||
assoc_req->secinfo.authmode =
|
assoc_req->secinfo.auth_mode = IW_AUTH_ALG_OPEN_SYSTEM;
|
||||||
wlan802_11authmodeopen;
|
|
||||||
}
|
}
|
||||||
if (dwrq->value & IW_AUTH_WPA_VERSION_WPA2) {
|
if (dwrq->value & IW_AUTH_WPA_VERSION_WPA2) {
|
||||||
assoc_req->secinfo.WPA2enabled = 1;
|
assoc_req->secinfo.WPA2enabled = 1;
|
||||||
assoc_req->secinfo.WEPstatus = wlan802_11WEPdisabled;
|
assoc_req->secinfo.WEPstatus = wlan802_11WEPdisabled;
|
||||||
assoc_req->secinfo.authmode =
|
assoc_req->secinfo.auth_mode = IW_AUTH_ALG_OPEN_SYSTEM;
|
||||||
wlan802_11authmodeopen;
|
|
||||||
}
|
}
|
||||||
updated = 1;
|
updated = 1;
|
||||||
break;
|
break;
|
||||||
@@ -2359,14 +2355,11 @@ static int wlan_set_auth(struct net_device *dev,
|
|||||||
|
|
||||||
case IW_AUTH_80211_AUTH_ALG:
|
case IW_AUTH_80211_AUTH_ALG:
|
||||||
if (dwrq->value & IW_AUTH_ALG_SHARED_KEY) {
|
if (dwrq->value & IW_AUTH_ALG_SHARED_KEY) {
|
||||||
assoc_req->secinfo.authmode =
|
assoc_req->secinfo.auth_mode = IW_AUTH_ALG_SHARED_KEY;
|
||||||
wlan802_11authmodeshared;
|
|
||||||
} else if (dwrq->value & IW_AUTH_ALG_OPEN_SYSTEM) {
|
} else if (dwrq->value & IW_AUTH_ALG_OPEN_SYSTEM) {
|
||||||
assoc_req->secinfo.authmode =
|
assoc_req->secinfo.auth_mode = IW_AUTH_ALG_OPEN_SYSTEM;
|
||||||
wlan802_11authmodeopen;
|
|
||||||
} else if (dwrq->value & IW_AUTH_ALG_LEAP) {
|
} else if (dwrq->value & IW_AUTH_ALG_LEAP) {
|
||||||
assoc_req->secinfo.authmode =
|
assoc_req->secinfo.auth_mode = IW_AUTH_ALG_LEAP;
|
||||||
wlan802_11authmodenetworkEAP;
|
|
||||||
} else {
|
} else {
|
||||||
ret = -EINVAL;
|
ret = -EINVAL;
|
||||||
}
|
}
|
||||||
@@ -2380,8 +2373,7 @@ static int wlan_set_auth(struct net_device *dev,
|
|||||||
assoc_req->secinfo.WPAenabled = 1;
|
assoc_req->secinfo.WPAenabled = 1;
|
||||||
assoc_req->secinfo.WPA2enabled = 1;
|
assoc_req->secinfo.WPA2enabled = 1;
|
||||||
assoc_req->secinfo.WEPstatus = wlan802_11WEPdisabled;
|
assoc_req->secinfo.WEPstatus = wlan802_11WEPdisabled;
|
||||||
assoc_req->secinfo.authmode =
|
assoc_req->secinfo.auth_mode = IW_AUTH_ALG_OPEN_SYSTEM;
|
||||||
wlan802_11authmodeopen;
|
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
assoc_req->secinfo.WPAenabled = 0;
|
assoc_req->secinfo.WPAenabled = 0;
|
||||||
@@ -2438,19 +2430,7 @@ static int wlan_get_auth(struct net_device *dev,
|
|||||||
break;
|
break;
|
||||||
|
|
||||||
case IW_AUTH_80211_AUTH_ALG:
|
case IW_AUTH_80211_AUTH_ALG:
|
||||||
switch (adapter->secinfo.authmode) {
|
dwrq->value = adapter->secinfo.auth_mode;
|
||||||
case wlan802_11authmodeshared:
|
|
||||||
dwrq->value = IW_AUTH_ALG_SHARED_KEY;
|
|
||||||
break;
|
|
||||||
case wlan802_11authmodeopen:
|
|
||||||
dwrq->value = IW_AUTH_ALG_OPEN_SYSTEM;
|
|
||||||
break;
|
|
||||||
case wlan802_11authmodenetworkEAP:
|
|
||||||
dwrq->value = IW_AUTH_ALG_LEAP;
|
|
||||||
break;
|
|
||||||
default:
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case IW_AUTH_WPA_ENABLED:
|
case IW_AUTH_WPA_ENABLED:
|
||||||
|
Reference in New Issue
Block a user