diff options
Diffstat (limited to 'drivers/net/wireless/libertas/scan.c')
-rw-r--r-- | drivers/net/wireless/libertas/scan.c | 42 |
1 files changed, 20 insertions, 22 deletions
diff --git a/drivers/net/wireless/libertas/scan.c b/drivers/net/wireless/libertas/scan.c index 23f100a971b5..26488b08f057 100644 --- a/drivers/net/wireless/libertas/scan.c +++ b/drivers/net/wireless/libertas/scan.c | |||
@@ -84,11 +84,11 @@ | |||
84 | * | 84 | * |
85 | * @return Index in scantable, or error code if negative | 85 | * @return Index in scantable, or error code if negative |
86 | */ | 86 | */ |
87 | static int is_network_compatible(wlan_adapter * adapter, int index, int mode) | 87 | static int is_network_compatible(wlan_adapter * adapter, int index, u8 mode) |
88 | { | 88 | { |
89 | ENTER(); | 89 | ENTER(); |
90 | 90 | ||
91 | if (adapter->scantable[index].inframode == mode) { | 91 | if (adapter->scantable[index].mode == mode) { |
92 | if ( !adapter->secinfo.wep_enabled | 92 | if ( !adapter->secinfo.wep_enabled |
93 | && !adapter->secinfo.WPAenabled | 93 | && !adapter->secinfo.WPAenabled |
94 | && !adapter->secinfo.WPA2enabled | 94 | && !adapter->secinfo.WPA2enabled |
@@ -996,9 +996,9 @@ static int InterpretBSSDescriptionWithIE(struct bss_descriptor * pBSSEntry, | |||
996 | } | 996 | } |
997 | 997 | ||
998 | if (pcap->ibss == 1) { | 998 | if (pcap->ibss == 1) { |
999 | pBSSEntry->inframode = wlan802_11ibss; | 999 | pBSSEntry->mode = IW_MODE_ADHOC; |
1000 | } else { | 1000 | } else { |
1001 | pBSSEntry->inframode = wlan802_11infrastructure; | 1001 | pBSSEntry->mode = IW_MODE_INFRA; |
1002 | } | 1002 | } |
1003 | 1003 | ||
1004 | /* process variable IE */ | 1004 | /* process variable IE */ |
@@ -1196,7 +1196,7 @@ int libertas_SSID_cmp(struct WLAN_802_11_SSID *ssid1, struct WLAN_802_11_SSID *s | |||
1196 | * | 1196 | * |
1197 | * @return index in BSSID list, or error return code (< 0) | 1197 | * @return index in BSSID list, or error return code (< 0) |
1198 | */ | 1198 | */ |
1199 | int libertas_find_BSSID_in_list(wlan_adapter * adapter, u8 * bssid, int mode) | 1199 | int libertas_find_BSSID_in_list(wlan_adapter * adapter, u8 * bssid, u8 mode) |
1200 | { | 1200 | { |
1201 | int ret = -ENETUNREACH; | 1201 | int ret = -ENETUNREACH; |
1202 | int i; | 1202 | int i; |
@@ -1216,8 +1216,8 @@ int libertas_find_BSSID_in_list(wlan_adapter * adapter, u8 * bssid, int mode) | |||
1216 | for (i = 0; ret < 0 && i < adapter->numinscantable; i++) { | 1216 | for (i = 0; ret < 0 && i < adapter->numinscantable; i++) { |
1217 | if (!memcmp(adapter->scantable[i].macaddress, bssid, ETH_ALEN)) { | 1217 | if (!memcmp(adapter->scantable[i].macaddress, bssid, ETH_ALEN)) { |
1218 | switch (mode) { | 1218 | switch (mode) { |
1219 | case wlan802_11infrastructure: | 1219 | case IW_MODE_INFRA: |
1220 | case wlan802_11ibss: | 1220 | case IW_MODE_ADHOC: |
1221 | ret = is_network_compatible(adapter, i, mode); | 1221 | ret = is_network_compatible(adapter, i, mode); |
1222 | break; | 1222 | break; |
1223 | default: | 1223 | default: |
@@ -1241,7 +1241,7 @@ int libertas_find_BSSID_in_list(wlan_adapter * adapter, u8 * bssid, int mode) | |||
1241 | * @return index in BSSID list | 1241 | * @return index in BSSID list |
1242 | */ | 1242 | */ |
1243 | int libertas_find_SSID_in_list(wlan_adapter * adapter, | 1243 | int libertas_find_SSID_in_list(wlan_adapter * adapter, |
1244 | struct WLAN_802_11_SSID *ssid, u8 * bssid, int mode) | 1244 | struct WLAN_802_11_SSID *ssid, u8 * bssid, u8 mode) |
1245 | { | 1245 | { |
1246 | int net = -ENETUNREACH; | 1246 | int net = -ENETUNREACH; |
1247 | u8 bestrssi = 0; | 1247 | u8 bestrssi = 0; |
@@ -1256,8 +1256,8 @@ int libertas_find_SSID_in_list(wlan_adapter * adapter, | |||
1256 | !memcmp(adapter->scantable[i]. | 1256 | !memcmp(adapter->scantable[i]. |
1257 | macaddress, bssid, ETH_ALEN))) { | 1257 | macaddress, bssid, ETH_ALEN))) { |
1258 | switch (mode) { | 1258 | switch (mode) { |
1259 | case wlan802_11infrastructure: | 1259 | case IW_MODE_INFRA: |
1260 | case wlan802_11ibss: | 1260 | case IW_MODE_ADHOC: |
1261 | j = is_network_compatible(adapter, i, mode); | 1261 | j = is_network_compatible(adapter, i, mode); |
1262 | 1262 | ||
1263 | if (j >= 0) { | 1263 | if (j >= 0) { |
@@ -1280,7 +1280,7 @@ int libertas_find_SSID_in_list(wlan_adapter * adapter, | |||
1280 | } | 1280 | } |
1281 | } | 1281 | } |
1282 | break; | 1282 | break; |
1283 | case wlan802_11autounknown: | 1283 | case IW_MODE_AUTO: |
1284 | default: | 1284 | default: |
1285 | if (SCAN_RSSI(adapter->scantable[i].rssi) | 1285 | if (SCAN_RSSI(adapter->scantable[i].rssi) |
1286 | > bestrssi) { | 1286 | > bestrssi) { |
@@ -1307,8 +1307,7 @@ int libertas_find_SSID_in_list(wlan_adapter * adapter, | |||
1307 | * | 1307 | * |
1308 | * @return index in BSSID list | 1308 | * @return index in BSSID list |
1309 | */ | 1309 | */ |
1310 | int libertas_find_best_SSID_in_list(wlan_adapter * adapter, | 1310 | int libertas_find_best_SSID_in_list(wlan_adapter * adapter, u8 mode) |
1311 | enum WLAN_802_11_NETWORK_INFRASTRUCTURE mode) | ||
1312 | { | 1311 | { |
1313 | int bestnet = -ENETUNREACH; | 1312 | int bestnet = -ENETUNREACH; |
1314 | u8 bestrssi = 0; | 1313 | u8 bestrssi = 0; |
@@ -1320,8 +1319,8 @@ int libertas_find_best_SSID_in_list(wlan_adapter * adapter, | |||
1320 | 1319 | ||
1321 | for (i = 0; i < adapter->numinscantable; i++) { | 1320 | for (i = 0; i < adapter->numinscantable; i++) { |
1322 | switch (mode) { | 1321 | switch (mode) { |
1323 | case wlan802_11infrastructure: | 1322 | case IW_MODE_INFRA: |
1324 | case wlan802_11ibss: | 1323 | case IW_MODE_ADHOC: |
1325 | if (is_network_compatible(adapter, i, mode) >= 0) { | 1324 | if (is_network_compatible(adapter, i, mode) >= 0) { |
1326 | if (SCAN_RSSI(adapter->scantable[i].rssi) > | 1325 | if (SCAN_RSSI(adapter->scantable[i].rssi) > |
1327 | bestrssi) { | 1326 | bestrssi) { |
@@ -1332,7 +1331,7 @@ int libertas_find_best_SSID_in_list(wlan_adapter * adapter, | |||
1332 | } | 1331 | } |
1333 | } | 1332 | } |
1334 | break; | 1333 | break; |
1335 | case wlan802_11autounknown: | 1334 | case IW_MODE_AUTO: |
1336 | default: | 1335 | default: |
1337 | if (SCAN_RSSI(adapter->scantable[i].rssi) > bestrssi) { | 1336 | if (SCAN_RSSI(adapter->scantable[i].rssi) > bestrssi) { |
1338 | bestrssi = | 1337 | bestrssi = |
@@ -1357,8 +1356,7 @@ int libertas_find_best_SSID_in_list(wlan_adapter * adapter, | |||
1357 | */ | 1356 | */ |
1358 | int libertas_find_best_network_SSID(wlan_private * priv, | 1357 | int libertas_find_best_network_SSID(wlan_private * priv, |
1359 | struct WLAN_802_11_SSID *pSSID, | 1358 | struct WLAN_802_11_SSID *pSSID, |
1360 | enum WLAN_802_11_NETWORK_INFRASTRUCTURE preferred_mode, | 1359 | u8 preferred_mode, u8 *out_mode) |
1361 | enum WLAN_802_11_NETWORK_INFRASTRUCTURE *out_mode) | ||
1362 | { | 1360 | { |
1363 | wlan_adapter *adapter = priv->adapter; | 1361 | wlan_adapter *adapter = priv->adapter; |
1364 | int ret = 0; | 1362 | int ret = 0; |
@@ -1383,7 +1381,7 @@ int libertas_find_best_network_SSID(wlan_private * priv, | |||
1383 | preqbssid = &adapter->scantable[i]; | 1381 | preqbssid = &adapter->scantable[i]; |
1384 | memcpy(pSSID, &preqbssid->ssid, | 1382 | memcpy(pSSID, &preqbssid->ssid, |
1385 | sizeof(struct WLAN_802_11_SSID)); | 1383 | sizeof(struct WLAN_802_11_SSID)); |
1386 | *out_mode = preqbssid->inframode; | 1384 | *out_mode = preqbssid->mode; |
1387 | 1385 | ||
1388 | if (!pSSID->ssidlength) { | 1386 | if (!pSSID->ssidlength) { |
1389 | ret = -1; | 1387 | ret = -1; |
@@ -1601,7 +1599,7 @@ int libertas_get_scan(struct net_device *dev, struct iw_request_info *info, | |||
1601 | 1599 | ||
1602 | //Add mode | 1600 | //Add mode |
1603 | iwe.cmd = SIOCGIWMODE; | 1601 | iwe.cmd = SIOCGIWMODE; |
1604 | iwe.u.mode = adapter->scantable[i].inframode + 1; | 1602 | iwe.u.mode = adapter->scantable[i].mode; |
1605 | iwe.len = IW_EV_UINT_LEN; | 1603 | iwe.len = IW_EV_UINT_LEN; |
1606 | current_ev = | 1604 | current_ev = |
1607 | iwe_stream_add_event(current_ev, end_buf, &iwe, iwe.len); | 1605 | iwe_stream_add_event(current_ev, end_buf, &iwe, iwe.len); |
@@ -1635,7 +1633,7 @@ int libertas_get_scan(struct net_device *dev, struct iw_request_info *info, | |||
1635 | iwe.u.qual.noise = | 1633 | iwe.u.qual.noise = |
1636 | CAL_NF(adapter->NF[TYPE_BEACON][TYPE_NOAVG]); | 1634 | CAL_NF(adapter->NF[TYPE_BEACON][TYPE_NOAVG]); |
1637 | } | 1635 | } |
1638 | if ((adapter->inframode == wlan802_11ibss) && | 1636 | if ((adapter->mode == IW_MODE_ADHOC) && |
1639 | !libertas_SSID_cmp(&adapter->curbssparams.ssid, | 1637 | !libertas_SSID_cmp(&adapter->curbssparams.ssid, |
1640 | &adapter->scantable[i].ssid) | 1638 | &adapter->scantable[i].ssid) |
1641 | && adapter->adhoccreate) { | 1639 | && adapter->adhoccreate) { |
@@ -1700,7 +1698,7 @@ int libertas_get_scan(struct net_device *dev, struct iw_request_info *info, | |||
1700 | end_buf, &iwe, iwe.len); | 1698 | end_buf, &iwe, iwe.len); |
1701 | 1699 | ||
1702 | } | 1700 | } |
1703 | if ((adapter->scantable[i].inframode == wlan802_11ibss) | 1701 | if ((adapter->scantable[i].mode == IW_MODE_ADHOC) |
1704 | && !libertas_SSID_cmp(&adapter->curbssparams.ssid, | 1702 | && !libertas_SSID_cmp(&adapter->curbssparams.ssid, |
1705 | &adapter->scantable[i].ssid) | 1703 | &adapter->scantable[i].ssid) |
1706 | && adapter->adhoccreate) { | 1704 | && adapter->adhoccreate) { |