Lines Matching refs:wdev
38 struct wireless_dev *wdev = dev->ieee80211_ptr; in cfg80211_wext_siwmode() local
43 rdev = wiphy_to_rdev(wdev->wiphy); in cfg80211_wext_siwmode()
62 if (type == wdev->iftype) in cfg80211_wext_siwmode()
74 struct wireless_dev *wdev = dev->ieee80211_ptr; in cfg80211_wext_giwmode() local
76 if (!wdev) in cfg80211_wext_giwmode()
79 switch (wdev->iftype) { in cfg80211_wext_giwmode()
111 struct wireless_dev *wdev = dev->ieee80211_ptr; in cfg80211_wext_giwrange() local
116 if (!wdev) in cfg80211_wext_giwrange()
137 switch (wdev->wiphy->signal_type) { in cfg80211_wext_giwrange()
161 for (i = 0; i < wdev->wiphy->n_cipher_suites; i++) { in cfg80211_wext_giwrange()
162 switch (wdev->wiphy->cipher_suites[i]) { in cfg80211_wext_giwrange()
188 sband = wdev->wiphy->bands[band]; in cfg80211_wext_giwrange()
213 if (wdev->wiphy->max_scan_ssids > 0) in cfg80211_wext_giwrange()
254 struct wireless_dev *wdev = dev->ieee80211_ptr; in cfg80211_wext_siwrts() local
255 struct cfg80211_registered_device *rdev = wiphy_to_rdev(wdev->wiphy); in cfg80211_wext_siwrts()
256 u32 orts = wdev->wiphy->rts_threshold; in cfg80211_wext_siwrts()
260 wdev->wiphy->rts_threshold = (u32) -1; in cfg80211_wext_siwrts()
264 wdev->wiphy->rts_threshold = rts->value; in cfg80211_wext_siwrts()
268 wdev->wiphy->rts_threshold = orts; in cfg80211_wext_siwrts()
278 struct wireless_dev *wdev = dev->ieee80211_ptr; in cfg80211_wext_giwrts() local
280 rts->value = wdev->wiphy->rts_threshold; in cfg80211_wext_giwrts()
292 struct wireless_dev *wdev = dev->ieee80211_ptr; in cfg80211_wext_siwfrag() local
293 struct cfg80211_registered_device *rdev = wiphy_to_rdev(wdev->wiphy); in cfg80211_wext_siwfrag()
294 u32 ofrag = wdev->wiphy->frag_threshold; in cfg80211_wext_siwfrag()
298 wdev->wiphy->frag_threshold = (u32) -1; in cfg80211_wext_siwfrag()
303 wdev->wiphy->frag_threshold = frag->value & ~0x1; in cfg80211_wext_siwfrag()
308 wdev->wiphy->frag_threshold = ofrag; in cfg80211_wext_siwfrag()
318 struct wireless_dev *wdev = dev->ieee80211_ptr; in cfg80211_wext_giwfrag() local
320 frag->value = wdev->wiphy->frag_threshold; in cfg80211_wext_giwfrag()
332 struct wireless_dev *wdev = dev->ieee80211_ptr; in cfg80211_wext_siwretry() local
333 struct cfg80211_registered_device *rdev = wiphy_to_rdev(wdev->wiphy); in cfg80211_wext_siwretry()
335 u8 olong = wdev->wiphy->retry_long; in cfg80211_wext_siwretry()
336 u8 oshort = wdev->wiphy->retry_short; in cfg80211_wext_siwretry()
344 wdev->wiphy->retry_long = retry->value; in cfg80211_wext_siwretry()
347 wdev->wiphy->retry_short = retry->value; in cfg80211_wext_siwretry()
350 wdev->wiphy->retry_short = retry->value; in cfg80211_wext_siwretry()
351 wdev->wiphy->retry_long = retry->value; in cfg80211_wext_siwretry()
358 wdev->wiphy->retry_short = oshort; in cfg80211_wext_siwretry()
359 wdev->wiphy->retry_long = olong; in cfg80211_wext_siwretry()
369 struct wireless_dev *wdev = dev->ieee80211_ptr; in cfg80211_wext_giwretry() local
379 retry->value = wdev->wiphy->retry_short; in cfg80211_wext_giwretry()
380 if (wdev->wiphy->retry_long == wdev->wiphy->retry_short) in cfg80211_wext_giwretry()
388 retry->value = wdev->wiphy->retry_long; in cfg80211_wext_giwretry()
400 struct wireless_dev *wdev = dev->ieee80211_ptr; in __cfg80211_set_encryption() local
411 if (!wdev->wext.keys) { in __cfg80211_set_encryption()
412 wdev->wext.keys = kzalloc(sizeof(*wdev->wext.keys), in __cfg80211_set_encryption()
414 if (!wdev->wext.keys) in __cfg80211_set_encryption()
417 wdev->wext.keys->params[i].key = in __cfg80211_set_encryption()
418 wdev->wext.keys->data[i]; in __cfg80211_set_encryption()
421 if (wdev->iftype != NL80211_IFTYPE_ADHOC && in __cfg80211_set_encryption()
422 wdev->iftype != NL80211_IFTYPE_STATION) in __cfg80211_set_encryption()
426 if (!wdev->current_bss) in __cfg80211_set_encryption()
439 if (wdev->current_bss) { in __cfg80211_set_encryption()
444 if (idx == wdev->wext.default_key && in __cfg80211_set_encryption()
445 wdev->iftype == NL80211_IFTYPE_ADHOC) { in __cfg80211_set_encryption()
446 __cfg80211_leave_ibss(rdev, wdev->netdev, true); in __cfg80211_set_encryption()
457 wdev->wext.connect.privacy = false; in __cfg80211_set_encryption()
466 memset(wdev->wext.keys->data[idx], 0, in __cfg80211_set_encryption()
467 sizeof(wdev->wext.keys->data[idx])); in __cfg80211_set_encryption()
468 wdev->wext.keys->params[idx].key_len = 0; in __cfg80211_set_encryption()
469 wdev->wext.keys->params[idx].cipher = 0; in __cfg80211_set_encryption()
471 if (idx == wdev->wext.default_key) in __cfg80211_set_encryption()
472 wdev->wext.default_key = -1; in __cfg80211_set_encryption()
473 else if (idx == wdev->wext.default_mgmt_key) in __cfg80211_set_encryption()
474 wdev->wext.default_mgmt_key = -1; in __cfg80211_set_encryption()
478 err = cfg80211_ibss_wext_join(rdev, wdev); in __cfg80211_set_encryption()
490 if (wdev->current_bss) in __cfg80211_set_encryption()
505 wdev->wext.keys->params[idx] = *params; in __cfg80211_set_encryption()
506 memcpy(wdev->wext.keys->data[idx], in __cfg80211_set_encryption()
508 wdev->wext.keys->params[idx].key = in __cfg80211_set_encryption()
509 wdev->wext.keys->data[idx]; in __cfg80211_set_encryption()
514 (tx_key || (!addr && wdev->wext.default_key == -1))) { in __cfg80211_set_encryption()
515 if (wdev->current_bss) { in __cfg80211_set_encryption()
521 if (wdev->iftype == NL80211_IFTYPE_ADHOC && in __cfg80211_set_encryption()
522 wdev->wext.default_key == -1) { in __cfg80211_set_encryption()
523 __cfg80211_leave_ibss(rdev, wdev->netdev, true); in __cfg80211_set_encryption()
529 wdev->wext.default_key = idx; in __cfg80211_set_encryption()
531 err = cfg80211_ibss_wext_join(rdev, wdev); in __cfg80211_set_encryption()
537 (tx_key || (!addr && wdev->wext.default_mgmt_key == -1))) { in __cfg80211_set_encryption()
538 if (wdev->current_bss) in __cfg80211_set_encryption()
541 wdev->wext.default_mgmt_key = idx; in __cfg80211_set_encryption()
567 struct wireless_dev *wdev = dev->ieee80211_ptr; in cfg80211_wext_siwencode() local
568 struct cfg80211_registered_device *rdev = wiphy_to_rdev(wdev->wiphy); in cfg80211_wext_siwencode()
573 if (wdev->iftype != NL80211_IFTYPE_STATION && in cfg80211_wext_siwencode()
574 wdev->iftype != NL80211_IFTYPE_ADHOC) in cfg80211_wext_siwencode()
585 idx = wdev->wext.default_key; in cfg80211_wext_siwencode()
598 wdev_lock(wdev); in cfg80211_wext_siwencode()
599 if (wdev->current_bss) in cfg80211_wext_siwencode()
603 wdev->wext.default_key = idx; in cfg80211_wext_siwencode()
604 wdev_unlock(wdev); in cfg80211_wext_siwencode()
619 wdev->wext.default_key == -1, in cfg80211_wext_siwencode()
627 struct wireless_dev *wdev = dev->ieee80211_ptr; in cfg80211_wext_siwencodeext() local
628 struct cfg80211_registered_device *rdev = wiphy_to_rdev(wdev->wiphy); in cfg80211_wext_siwencodeext()
636 if (wdev->iftype != NL80211_IFTYPE_STATION && in cfg80211_wext_siwencodeext()
637 wdev->iftype != NL80211_IFTYPE_ADHOC) in cfg80211_wext_siwencodeext()
678 idx = wdev->wext.default_mgmt_key; in cfg80211_wext_siwencodeext()
685 idx = wdev->wext.default_key; in cfg80211_wext_siwencodeext()
718 struct wireless_dev *wdev = dev->ieee80211_ptr; in cfg80211_wext_giwencode() local
721 if (wdev->iftype != NL80211_IFTYPE_STATION && in cfg80211_wext_giwencode()
722 wdev->iftype != NL80211_IFTYPE_ADHOC) in cfg80211_wext_giwencode()
727 idx = wdev->wext.default_key; in cfg80211_wext_giwencode()
737 if (!wdev->wext.keys || !wdev->wext.keys->params[idx].cipher) { in cfg80211_wext_giwencode()
744 wdev->wext.keys->params[idx].key_len); in cfg80211_wext_giwencode()
745 memcpy(keybuf, wdev->wext.keys->params[idx].key, erq->length); in cfg80211_wext_giwencode()
755 struct wireless_dev *wdev = dev->ieee80211_ptr; in cfg80211_wext_siwfreq() local
756 struct cfg80211_registered_device *rdev = wiphy_to_rdev(wdev->wiphy); in cfg80211_wext_siwfreq()
762 switch (wdev->iftype) { in cfg80211_wext_siwfreq()
788 return cfg80211_set_mesh_channel(rdev, wdev, &chandef); in cfg80211_wext_siwfreq()
798 struct wireless_dev *wdev = dev->ieee80211_ptr; in cfg80211_wext_giwfreq() local
799 struct cfg80211_registered_device *rdev = wiphy_to_rdev(wdev->wiphy); in cfg80211_wext_giwfreq()
803 switch (wdev->iftype) { in cfg80211_wext_giwfreq()
812 ret = rdev_get_channel(rdev, wdev, &chandef); in cfg80211_wext_giwfreq()
827 struct wireless_dev *wdev = dev->ieee80211_ptr; in cfg80211_wext_siwtxpower() local
828 struct cfg80211_registered_device *rdev = wiphy_to_rdev(wdev->wiphy); in cfg80211_wext_siwtxpower()
872 return rdev_set_tx_power(rdev, wdev, type, DBM_TO_MBM(dbm)); in cfg80211_wext_siwtxpower()
879 struct wireless_dev *wdev = dev->ieee80211_ptr; in cfg80211_wext_giwtxpower() local
880 struct cfg80211_registered_device *rdev = wiphy_to_rdev(wdev->wiphy); in cfg80211_wext_giwtxpower()
891 err = rdev_get_tx_power(rdev, wdev, &val); in cfg80211_wext_giwtxpower()
904 static int cfg80211_set_auth_alg(struct wireless_dev *wdev, in cfg80211_set_auth_alg() argument
919 wdev->wext.connect.auth_type = NL80211_AUTHTYPE_OPEN_SYSTEM; in cfg80211_set_auth_alg()
924 wdev->wext.connect.auth_type = NL80211_AUTHTYPE_SHARED_KEY; in cfg80211_set_auth_alg()
929 wdev->wext.connect.auth_type = NL80211_AUTHTYPE_NETWORK_EAP; in cfg80211_set_auth_alg()
933 wdev->wext.connect.auth_type = NL80211_AUTHTYPE_AUTOMATIC; in cfg80211_set_auth_alg()
938 static int cfg80211_set_wpa_version(struct wireless_dev *wdev, u32 wpa_versions) in cfg80211_set_wpa_version() argument
951 wdev->wext.connect.crypto.wpa_versions &= in cfg80211_set_wpa_version()
955 wdev->wext.connect.crypto.wpa_versions |= in cfg80211_set_wpa_version()
959 wdev->wext.connect.crypto.wpa_versions |= in cfg80211_set_wpa_version()
965 static int cfg80211_set_cipher_group(struct wireless_dev *wdev, u32 cipher) in cfg80211_set_cipher_group() argument
968 wdev->wext.connect.crypto.cipher_group = in cfg80211_set_cipher_group()
971 wdev->wext.connect.crypto.cipher_group = in cfg80211_set_cipher_group()
974 wdev->wext.connect.crypto.cipher_group = in cfg80211_set_cipher_group()
977 wdev->wext.connect.crypto.cipher_group = in cfg80211_set_cipher_group()
980 wdev->wext.connect.crypto.cipher_group = in cfg80211_set_cipher_group()
983 wdev->wext.connect.crypto.cipher_group = 0; in cfg80211_set_cipher_group()
990 static int cfg80211_set_cipher_pairwise(struct wireless_dev *wdev, u32 cipher) in cfg80211_set_cipher_pairwise() argument
993 u32 *ciphers_pairwise = wdev->wext.connect.crypto.ciphers_pairwise; in cfg80211_set_cipher_pairwise()
1022 wdev->wext.connect.crypto.n_ciphers_pairwise = nr_ciphers; in cfg80211_set_cipher_pairwise()
1028 static int cfg80211_set_key_mgt(struct wireless_dev *wdev, u32 key_mgt) in cfg80211_set_key_mgt() argument
1037 wdev->wext.connect.crypto.akm_suites[nr_akm_suites] = in cfg80211_set_key_mgt()
1043 wdev->wext.connect.crypto.akm_suites[nr_akm_suites] = in cfg80211_set_key_mgt()
1048 wdev->wext.connect.crypto.n_akm_suites = nr_akm_suites; in cfg80211_set_key_mgt()
1057 struct wireless_dev *wdev = dev->ieee80211_ptr; in cfg80211_wext_siwauth() local
1059 if (wdev->iftype != NL80211_IFTYPE_STATION) in cfg80211_wext_siwauth()
1064 wdev->wext.connect.privacy = data->value; in cfg80211_wext_siwauth()
1067 return cfg80211_set_wpa_version(wdev, data->value); in cfg80211_wext_siwauth()
1069 return cfg80211_set_cipher_group(wdev, data->value); in cfg80211_wext_siwauth()
1071 return cfg80211_set_key_mgt(wdev, data->value); in cfg80211_wext_siwauth()
1073 return cfg80211_set_cipher_pairwise(wdev, data->value); in cfg80211_wext_siwauth()
1075 return cfg80211_set_auth_alg(wdev, data->value); in cfg80211_wext_siwauth()
1099 struct wireless_dev *wdev = dev->ieee80211_ptr; in cfg80211_wext_siwpower() local
1100 struct cfg80211_registered_device *rdev = wiphy_to_rdev(wdev->wiphy); in cfg80211_wext_siwpower()
1101 bool ps = wdev->ps; in cfg80211_wext_siwpower()
1102 int timeout = wdev->ps_timeout; in cfg80211_wext_siwpower()
1105 if (wdev->iftype != NL80211_IFTYPE_STATION) in cfg80211_wext_siwpower()
1135 wdev->ps = ps; in cfg80211_wext_siwpower()
1136 wdev->ps_timeout = timeout; in cfg80211_wext_siwpower()
1146 struct wireless_dev *wdev = dev->ieee80211_ptr; in cfg80211_wext_giwpower() local
1148 wrq->disabled = !wdev->ps; in cfg80211_wext_giwpower()
1157 struct wireless_dev *wdev = dev->ieee80211_ptr; in cfg80211_wds_wext_siwap() local
1158 struct cfg80211_registered_device *rdev = wiphy_to_rdev(wdev->wiphy); in cfg80211_wds_wext_siwap()
1161 if (WARN_ON(wdev->iftype != NL80211_IFTYPE_WDS)) in cfg80211_wds_wext_siwap()
1177 memcpy(&wdev->wext.bssid, (u8 *) &addr->sa_data, ETH_ALEN); in cfg80211_wds_wext_siwap()
1186 struct wireless_dev *wdev = dev->ieee80211_ptr; in cfg80211_wds_wext_giwap() local
1188 if (WARN_ON(wdev->iftype != NL80211_IFTYPE_WDS)) in cfg80211_wds_wext_giwap()
1192 memcpy(&addr->sa_data, wdev->wext.bssid, ETH_ALEN); in cfg80211_wds_wext_giwap()
1201 struct wireless_dev *wdev = dev->ieee80211_ptr; in cfg80211_wext_siwrate() local
1202 struct cfg80211_registered_device *rdev = wiphy_to_rdev(wdev->wiphy); in cfg80211_wext_siwrate()
1225 sband = wdev->wiphy->bands[band]; in cfg80211_wext_siwrate()
1252 struct wireless_dev *wdev = dev->ieee80211_ptr; in cfg80211_wext_giwrate() local
1253 struct cfg80211_registered_device *rdev = wiphy_to_rdev(wdev->wiphy); in cfg80211_wext_giwrate()
1258 if (wdev->iftype != NL80211_IFTYPE_STATION) in cfg80211_wext_giwrate()
1265 wdev_lock(wdev); in cfg80211_wext_giwrate()
1266 if (wdev->current_bss) in cfg80211_wext_giwrate()
1267 memcpy(addr, wdev->current_bss->pub.bssid, ETH_ALEN); in cfg80211_wext_giwrate()
1270 wdev_unlock(wdev); in cfg80211_wext_giwrate()
1293 struct wireless_dev *wdev = dev->ieee80211_ptr; in cfg80211_wireless_stats() local
1294 struct cfg80211_registered_device *rdev = wiphy_to_rdev(wdev->wiphy); in cfg80211_wireless_stats()
1307 wdev_lock(wdev); in cfg80211_wireless_stats()
1308 if (!wdev->current_bss) { in cfg80211_wireless_stats()
1309 wdev_unlock(wdev); in cfg80211_wireless_stats()
1312 memcpy(bssid, wdev->current_bss->pub.bssid, ETH_ALEN); in cfg80211_wireless_stats()
1313 wdev_unlock(wdev); in cfg80211_wireless_stats()
1367 struct wireless_dev *wdev = dev->ieee80211_ptr; in cfg80211_wext_siwap() local
1369 switch (wdev->iftype) { in cfg80211_wext_siwap()
1385 struct wireless_dev *wdev = dev->ieee80211_ptr; in cfg80211_wext_giwap() local
1387 switch (wdev->iftype) { in cfg80211_wext_giwap()
1403 struct wireless_dev *wdev = dev->ieee80211_ptr; in cfg80211_wext_siwessid() local
1405 switch (wdev->iftype) { in cfg80211_wext_siwessid()
1419 struct wireless_dev *wdev = dev->ieee80211_ptr; in cfg80211_wext_giwessid() local
1424 switch (wdev->iftype) { in cfg80211_wext_giwessid()
1438 struct wireless_dev *wdev = dev->ieee80211_ptr; in cfg80211_wext_siwpmksa() local
1439 struct cfg80211_registered_device *rdev = wiphy_to_rdev(wdev->wiphy); in cfg80211_wext_siwpmksa()
1445 if (wdev->iftype != NL80211_IFTYPE_STATION) in cfg80211_wext_siwpmksa()