Lines Matching refs:wdev
39 struct wireless_dev *wdev = dev->ieee80211_ptr; in cfg80211_wext_siwmode() local
45 rdev = wiphy_to_rdev(wdev->wiphy); in cfg80211_wext_siwmode()
61 if (type == wdev->iftype) in cfg80211_wext_siwmode()
66 wiphy_lock(wdev->wiphy); in cfg80211_wext_siwmode()
68 wiphy_unlock(wdev->wiphy); in cfg80211_wext_siwmode()
78 struct wireless_dev *wdev = dev->ieee80211_ptr; in cfg80211_wext_giwmode() local
80 if (!wdev) in cfg80211_wext_giwmode()
83 switch (wdev->iftype) { in cfg80211_wext_giwmode()
116 struct wireless_dev *wdev = dev->ieee80211_ptr; in cfg80211_wext_giwrange() local
121 if (!wdev) in cfg80211_wext_giwrange()
142 switch (wdev->wiphy->signal_type) { in cfg80211_wext_giwrange()
166 for (i = 0; i < wdev->wiphy->n_cipher_suites; i++) { in cfg80211_wext_giwrange()
167 switch (wdev->wiphy->cipher_suites[i]) { in cfg80211_wext_giwrange()
193 sband = wdev->wiphy->bands[band]; in cfg80211_wext_giwrange()
218 if (wdev->wiphy->max_scan_ssids > 0) in cfg80211_wext_giwrange()
260 struct wireless_dev *wdev = dev->ieee80211_ptr; in cfg80211_wext_siwrts() local
261 struct cfg80211_registered_device *rdev = wiphy_to_rdev(wdev->wiphy); in cfg80211_wext_siwrts()
262 u32 orts = wdev->wiphy->rts_threshold; in cfg80211_wext_siwrts()
267 wdev->wiphy->rts_threshold = (u32) -1; in cfg80211_wext_siwrts()
272 wdev->wiphy->rts_threshold = rts->value; in cfg80211_wext_siwrts()
278 wdev->wiphy->rts_threshold = orts; in cfg80211_wext_siwrts()
291 struct wireless_dev *wdev = dev->ieee80211_ptr; in cfg80211_wext_giwrts() local
293 rts->value = wdev->wiphy->rts_threshold; in cfg80211_wext_giwrts()
306 struct wireless_dev *wdev = dev->ieee80211_ptr; in cfg80211_wext_siwfrag() local
307 struct cfg80211_registered_device *rdev = wiphy_to_rdev(wdev->wiphy); in cfg80211_wext_siwfrag()
308 u32 ofrag = wdev->wiphy->frag_threshold; in cfg80211_wext_siwfrag()
313 wdev->wiphy->frag_threshold = (u32) -1; in cfg80211_wext_siwfrag()
319 wdev->wiphy->frag_threshold = frag->value & ~0x1; in cfg80211_wext_siwfrag()
324 wdev->wiphy->frag_threshold = ofrag; in cfg80211_wext_siwfrag()
337 struct wireless_dev *wdev = dev->ieee80211_ptr; in cfg80211_wext_giwfrag() local
339 frag->value = wdev->wiphy->frag_threshold; in cfg80211_wext_giwfrag()
352 struct wireless_dev *wdev = dev->ieee80211_ptr; in cfg80211_wext_siwretry() local
353 struct cfg80211_registered_device *rdev = wiphy_to_rdev(wdev->wiphy); in cfg80211_wext_siwretry()
355 u8 olong = wdev->wiphy->retry_long; in cfg80211_wext_siwretry()
356 u8 oshort = wdev->wiphy->retry_short; in cfg80211_wext_siwretry()
365 wdev->wiphy->retry_long = retry->value; in cfg80211_wext_siwretry()
368 wdev->wiphy->retry_short = retry->value; in cfg80211_wext_siwretry()
371 wdev->wiphy->retry_short = retry->value; in cfg80211_wext_siwretry()
372 wdev->wiphy->retry_long = retry->value; in cfg80211_wext_siwretry()
379 wdev->wiphy->retry_short = oshort; in cfg80211_wext_siwretry()
380 wdev->wiphy->retry_long = olong; in cfg80211_wext_siwretry()
392 struct wireless_dev *wdev = dev->ieee80211_ptr; in cfg80211_wext_giwretry() local
402 retry->value = wdev->wiphy->retry_short; in cfg80211_wext_giwretry()
403 if (wdev->wiphy->retry_long == wdev->wiphy->retry_short) in cfg80211_wext_giwretry()
411 retry->value = wdev->wiphy->retry_long; in cfg80211_wext_giwretry()
423 struct wireless_dev *wdev = dev->ieee80211_ptr; in __cfg80211_set_encryption() local
427 if (wdev->valid_links) in __cfg80211_set_encryption()
437 if (!wdev->wext.keys) { in __cfg80211_set_encryption()
438 wdev->wext.keys = kzalloc(sizeof(*wdev->wext.keys), in __cfg80211_set_encryption()
440 if (!wdev->wext.keys) in __cfg80211_set_encryption()
443 wdev->wext.keys->params[i].key = in __cfg80211_set_encryption()
444 wdev->wext.keys->data[i]; in __cfg80211_set_encryption()
447 if (wdev->iftype != NL80211_IFTYPE_ADHOC && in __cfg80211_set_encryption()
448 wdev->iftype != NL80211_IFTYPE_STATION) in __cfg80211_set_encryption()
452 if (!wdev->connected) in __cfg80211_set_encryption()
465 if (wdev->connected || in __cfg80211_set_encryption()
466 (wdev->iftype == NL80211_IFTYPE_ADHOC && in __cfg80211_set_encryption()
467 wdev->u.ibss.current_bss)) { in __cfg80211_set_encryption()
472 if (idx == wdev->wext.default_key && in __cfg80211_set_encryption()
473 wdev->iftype == NL80211_IFTYPE_ADHOC) { in __cfg80211_set_encryption()
474 __cfg80211_leave_ibss(rdev, wdev->netdev, true); in __cfg80211_set_encryption()
485 wdev->wext.connect.privacy = false; in __cfg80211_set_encryption()
494 memset(wdev->wext.keys->data[idx], 0, in __cfg80211_set_encryption()
495 sizeof(wdev->wext.keys->data[idx])); in __cfg80211_set_encryption()
496 wdev->wext.keys->params[idx].key_len = 0; in __cfg80211_set_encryption()
497 wdev->wext.keys->params[idx].cipher = 0; in __cfg80211_set_encryption()
499 if (idx == wdev->wext.default_key) in __cfg80211_set_encryption()
500 wdev->wext.default_key = -1; in __cfg80211_set_encryption()
501 else if (idx == wdev->wext.default_mgmt_key) in __cfg80211_set_encryption()
502 wdev->wext.default_mgmt_key = -1; in __cfg80211_set_encryption()
506 err = cfg80211_ibss_wext_join(rdev, wdev); in __cfg80211_set_encryption()
518 if (wdev->connected || in __cfg80211_set_encryption()
519 (wdev->iftype == NL80211_IFTYPE_ADHOC && in __cfg80211_set_encryption()
520 wdev->u.ibss.current_bss)) in __cfg80211_set_encryption()
535 wdev->wext.keys->params[idx] = *params; in __cfg80211_set_encryption()
536 memcpy(wdev->wext.keys->data[idx], in __cfg80211_set_encryption()
538 wdev->wext.keys->params[idx].key = in __cfg80211_set_encryption()
539 wdev->wext.keys->data[idx]; in __cfg80211_set_encryption()
544 (tx_key || (!addr && wdev->wext.default_key == -1))) { in __cfg80211_set_encryption()
545 if (wdev->connected || in __cfg80211_set_encryption()
546 (wdev->iftype == NL80211_IFTYPE_ADHOC && in __cfg80211_set_encryption()
547 wdev->u.ibss.current_bss)) { in __cfg80211_set_encryption()
553 if (wdev->iftype == NL80211_IFTYPE_ADHOC && in __cfg80211_set_encryption()
554 wdev->wext.default_key == -1) { in __cfg80211_set_encryption()
555 __cfg80211_leave_ibss(rdev, wdev->netdev, true); in __cfg80211_set_encryption()
562 wdev->wext.default_key = idx; in __cfg80211_set_encryption()
564 err = cfg80211_ibss_wext_join(rdev, wdev); in __cfg80211_set_encryption()
570 (tx_key || (!addr && wdev->wext.default_mgmt_key == -1))) { in __cfg80211_set_encryption()
571 if (wdev->connected || in __cfg80211_set_encryption()
572 (wdev->iftype == NL80211_IFTYPE_ADHOC && in __cfg80211_set_encryption()
573 wdev->u.ibss.current_bss)) in __cfg80211_set_encryption()
576 wdev->wext.default_mgmt_key = idx; in __cfg80211_set_encryption()
603 struct wireless_dev *wdev = dev->ieee80211_ptr; in cfg80211_wext_siwencode() local
604 struct cfg80211_registered_device *rdev = wiphy_to_rdev(wdev->wiphy); in cfg80211_wext_siwencode()
609 if (wdev->iftype != NL80211_IFTYPE_STATION && in cfg80211_wext_siwencode()
610 wdev->iftype != NL80211_IFTYPE_ADHOC) in cfg80211_wext_siwencode()
620 if (wdev->valid_links) { in cfg80211_wext_siwencode()
627 idx = wdev->wext.default_key; in cfg80211_wext_siwencode()
642 wdev_lock(wdev); in cfg80211_wext_siwencode()
643 if (wdev->connected || in cfg80211_wext_siwencode()
644 (wdev->iftype == NL80211_IFTYPE_ADHOC && in cfg80211_wext_siwencode()
645 wdev->u.ibss.current_bss)) in cfg80211_wext_siwencode()
649 wdev->wext.default_key = idx; in cfg80211_wext_siwencode()
650 wdev_unlock(wdev); in cfg80211_wext_siwencode()
667 wdev->wext.default_key == -1, in cfg80211_wext_siwencode()
680 struct wireless_dev *wdev = dev->ieee80211_ptr; in cfg80211_wext_siwencodeext() local
681 struct cfg80211_registered_device *rdev = wiphy_to_rdev(wdev->wiphy); in cfg80211_wext_siwencodeext()
690 if (wdev->iftype != NL80211_IFTYPE_STATION && in cfg80211_wext_siwencodeext()
691 wdev->iftype != NL80211_IFTYPE_ADHOC) in cfg80211_wext_siwencodeext()
700 wdev_lock(wdev); in cfg80211_wext_siwencodeext()
701 if (wdev->valid_links) { in cfg80211_wext_siwencodeext()
702 wdev_unlock(wdev); in cfg80211_wext_siwencodeext()
705 wdev_unlock(wdev); in cfg80211_wext_siwencodeext()
739 idx = wdev->wext.default_mgmt_key; in cfg80211_wext_siwencodeext()
746 idx = wdev->wext.default_key; in cfg80211_wext_siwencodeext()
767 wiphy_lock(wdev->wiphy); in cfg80211_wext_siwencodeext()
774 wiphy_unlock(wdev->wiphy); in cfg80211_wext_siwencodeext()
784 struct wireless_dev *wdev = dev->ieee80211_ptr; in cfg80211_wext_giwencode() local
787 if (wdev->iftype != NL80211_IFTYPE_STATION && in cfg80211_wext_giwencode()
788 wdev->iftype != NL80211_IFTYPE_ADHOC) in cfg80211_wext_giwencode()
793 idx = wdev->wext.default_key; in cfg80211_wext_giwencode()
803 if (!wdev->wext.keys || !wdev->wext.keys->params[idx].cipher) { in cfg80211_wext_giwencode()
810 wdev->wext.keys->params[idx].key_len); in cfg80211_wext_giwencode()
811 memcpy(keybuf, wdev->wext.keys->params[idx].key, erq->length); in cfg80211_wext_giwencode()
822 struct wireless_dev *wdev = dev->ieee80211_ptr; in cfg80211_wext_siwfreq() local
823 struct cfg80211_registered_device *rdev = wiphy_to_rdev(wdev->wiphy); in cfg80211_wext_siwfreq()
831 switch (wdev->iftype) { in cfg80211_wext_siwfreq()
872 ret = cfg80211_set_mesh_channel(rdev, wdev, &chandef); in cfg80211_wext_siwfreq()
889 struct wireless_dev *wdev = dev->ieee80211_ptr; in cfg80211_wext_giwfreq() local
890 struct cfg80211_registered_device *rdev = wiphy_to_rdev(wdev->wiphy); in cfg80211_wext_giwfreq()
895 switch (wdev->iftype) { in cfg80211_wext_giwfreq()
908 ret = rdev_get_channel(rdev, wdev, 0, &chandef); in cfg80211_wext_giwfreq()
929 struct wireless_dev *wdev = dev->ieee80211_ptr; in cfg80211_wext_siwtxpower() local
930 struct cfg80211_registered_device *rdev = wiphy_to_rdev(wdev->wiphy); in cfg80211_wext_siwtxpower()
976 ret = rdev_set_tx_power(rdev, wdev, type, DBM_TO_MBM(dbm)); in cfg80211_wext_siwtxpower()
986 struct wireless_dev *wdev = dev->ieee80211_ptr; in cfg80211_wext_giwtxpower() local
987 struct cfg80211_registered_device *rdev = wiphy_to_rdev(wdev->wiphy); in cfg80211_wext_giwtxpower()
999 err = rdev_get_tx_power(rdev, wdev, &val); in cfg80211_wext_giwtxpower()
1013 static int cfg80211_set_auth_alg(struct wireless_dev *wdev, in cfg80211_set_auth_alg() argument
1028 wdev->wext.connect.auth_type = NL80211_AUTHTYPE_OPEN_SYSTEM; in cfg80211_set_auth_alg()
1033 wdev->wext.connect.auth_type = NL80211_AUTHTYPE_SHARED_KEY; in cfg80211_set_auth_alg()
1038 wdev->wext.connect.auth_type = NL80211_AUTHTYPE_NETWORK_EAP; in cfg80211_set_auth_alg()
1042 wdev->wext.connect.auth_type = NL80211_AUTHTYPE_AUTOMATIC; in cfg80211_set_auth_alg()
1047 static int cfg80211_set_wpa_version(struct wireless_dev *wdev, u32 wpa_versions) in cfg80211_set_wpa_version() argument
1060 wdev->wext.connect.crypto.wpa_versions &= in cfg80211_set_wpa_version()
1064 wdev->wext.connect.crypto.wpa_versions |= in cfg80211_set_wpa_version()
1068 wdev->wext.connect.crypto.wpa_versions |= in cfg80211_set_wpa_version()
1074 static int cfg80211_set_cipher_group(struct wireless_dev *wdev, u32 cipher) in cfg80211_set_cipher_group() argument
1077 wdev->wext.connect.crypto.cipher_group = in cfg80211_set_cipher_group()
1080 wdev->wext.connect.crypto.cipher_group = in cfg80211_set_cipher_group()
1083 wdev->wext.connect.crypto.cipher_group = in cfg80211_set_cipher_group()
1086 wdev->wext.connect.crypto.cipher_group = in cfg80211_set_cipher_group()
1089 wdev->wext.connect.crypto.cipher_group = in cfg80211_set_cipher_group()
1092 wdev->wext.connect.crypto.cipher_group = 0; in cfg80211_set_cipher_group()
1099 static int cfg80211_set_cipher_pairwise(struct wireless_dev *wdev, u32 cipher) in cfg80211_set_cipher_pairwise() argument
1102 u32 *ciphers_pairwise = wdev->wext.connect.crypto.ciphers_pairwise; in cfg80211_set_cipher_pairwise()
1131 wdev->wext.connect.crypto.n_ciphers_pairwise = nr_ciphers; in cfg80211_set_cipher_pairwise()
1137 static int cfg80211_set_key_mgt(struct wireless_dev *wdev, u32 key_mgt) in cfg80211_set_key_mgt() argument
1146 wdev->wext.connect.crypto.akm_suites[nr_akm_suites] = in cfg80211_set_key_mgt()
1152 wdev->wext.connect.crypto.akm_suites[nr_akm_suites] = in cfg80211_set_key_mgt()
1157 wdev->wext.connect.crypto.n_akm_suites = nr_akm_suites; in cfg80211_set_key_mgt()
1167 struct wireless_dev *wdev = dev->ieee80211_ptr; in cfg80211_wext_siwauth() local
1169 if (wdev->iftype != NL80211_IFTYPE_STATION) in cfg80211_wext_siwauth()
1174 wdev->wext.connect.privacy = data->value; in cfg80211_wext_siwauth()
1177 return cfg80211_set_wpa_version(wdev, data->value); in cfg80211_wext_siwauth()
1179 return cfg80211_set_cipher_group(wdev, data->value); in cfg80211_wext_siwauth()
1181 return cfg80211_set_key_mgt(wdev, data->value); in cfg80211_wext_siwauth()
1183 return cfg80211_set_cipher_pairwise(wdev, data->value); in cfg80211_wext_siwauth()
1185 return cfg80211_set_auth_alg(wdev, data->value); in cfg80211_wext_siwauth()
1210 struct wireless_dev *wdev = dev->ieee80211_ptr; in cfg80211_wext_siwpower() local
1211 struct cfg80211_registered_device *rdev = wiphy_to_rdev(wdev->wiphy); in cfg80211_wext_siwpower()
1213 int timeout = wdev->ps_timeout; in cfg80211_wext_siwpower()
1216 if (wdev->iftype != NL80211_IFTYPE_STATION) in cfg80211_wext_siwpower()
1248 wdev->ps = ps; in cfg80211_wext_siwpower()
1249 wdev->ps_timeout = timeout; in cfg80211_wext_siwpower()
1260 struct wireless_dev *wdev = dev->ieee80211_ptr; in cfg80211_wext_giwpower() local
1262 wrq->disabled = !wdev->ps; in cfg80211_wext_giwpower()
1272 struct wireless_dev *wdev = dev->ieee80211_ptr; in cfg80211_wext_siwrate() local
1273 struct cfg80211_registered_device *rdev = wiphy_to_rdev(wdev->wiphy); in cfg80211_wext_siwrate()
1296 sband = wdev->wiphy->bands[band]; in cfg80211_wext_siwrate()
1331 struct wireless_dev *wdev = dev->ieee80211_ptr; in cfg80211_wext_giwrate() local
1332 struct cfg80211_registered_device *rdev = wiphy_to_rdev(wdev->wiphy); in cfg80211_wext_giwrate()
1337 if (wdev->iftype != NL80211_IFTYPE_STATION) in cfg80211_wext_giwrate()
1344 wdev_lock(wdev); in cfg80211_wext_giwrate()
1345 if (!wdev->valid_links && wdev->links[0].client.current_bss) in cfg80211_wext_giwrate()
1346 memcpy(addr, wdev->links[0].client.current_bss->pub.bssid, in cfg80211_wext_giwrate()
1350 wdev_unlock(wdev); in cfg80211_wext_giwrate()
1375 struct wireless_dev *wdev = dev->ieee80211_ptr; in cfg80211_wireless_stats() local
1376 struct cfg80211_registered_device *rdev = wiphy_to_rdev(wdev->wiphy); in cfg80211_wireless_stats()
1390 wdev_lock(wdev); in cfg80211_wireless_stats()
1391 if (wdev->valid_links || !wdev->links[0].client.current_bss) { in cfg80211_wireless_stats()
1392 wdev_unlock(wdev); in cfg80211_wireless_stats()
1395 memcpy(bssid, wdev->links[0].client.current_bss->pub.bssid, ETH_ALEN); in cfg80211_wireless_stats()
1396 wdev_unlock(wdev); in cfg80211_wireless_stats()
1455 struct wireless_dev *wdev = dev->ieee80211_ptr; in cfg80211_wext_siwap() local
1456 struct cfg80211_registered_device *rdev = wiphy_to_rdev(wdev->wiphy); in cfg80211_wext_siwap()
1460 switch (wdev->iftype) { in cfg80211_wext_siwap()
1481 struct wireless_dev *wdev = dev->ieee80211_ptr; in cfg80211_wext_giwap() local
1482 struct cfg80211_registered_device *rdev = wiphy_to_rdev(wdev->wiphy); in cfg80211_wext_giwap()
1486 switch (wdev->iftype) { in cfg80211_wext_giwap()
1507 struct wireless_dev *wdev = dev->ieee80211_ptr; in cfg80211_wext_siwessid() local
1508 struct cfg80211_registered_device *rdev = wiphy_to_rdev(wdev->wiphy); in cfg80211_wext_siwessid()
1512 switch (wdev->iftype) { in cfg80211_wext_siwessid()
1533 struct wireless_dev *wdev = dev->ieee80211_ptr; in cfg80211_wext_giwessid() local
1534 struct cfg80211_registered_device *rdev = wiphy_to_rdev(wdev->wiphy); in cfg80211_wext_giwessid()
1541 switch (wdev->iftype) { in cfg80211_wext_giwessid()
1561 struct wireless_dev *wdev = dev->ieee80211_ptr; in cfg80211_wext_siwpmksa() local
1562 struct cfg80211_registered_device *rdev = wiphy_to_rdev(wdev->wiphy); in cfg80211_wext_siwpmksa()
1569 if (wdev->iftype != NL80211_IFTYPE_STATION) in cfg80211_wext_siwpmksa()