Lines Matching full:ssid
110 struct wpa_ssid *ssid,
130 bss = wpa_bss_get(wpa_s, cred->mac_addr, ssid->ssid, ssid->ssid_len);
151 if (ie == NULL && (ssid->proto & WPA_PROTO_WPA) &&
152 (ssid->pairwise_cipher & WPA_CIPHER_TKIP)) {
164 if (ccmp && !(ssid->pairwise_cipher & WPA_CIPHER_CCMP) &&
165 (ssid->pairwise_cipher & WPA_CIPHER_TKIP) &&
170 ssid->pairwise_cipher |= WPA_CIPHER_CCMP;
172 ssid->pairwise_cipher = WPA_CIPHER_CCMP;
175 if (wpa2 && !(ssid->proto & WPA_PROTO_RSN) &&
176 (ssid->proto & WPA_PROTO_WPA) &&
181 ssid->proto |= WPA_PROTO_RSN;
183 ssid->proto = WPA_PROTO_RSN;
192 struct wpa_ssid *ssid = wpa_s->current_ssid;
219 wpa_hexdump_ascii(MSG_DEBUG, "WPS: SSID", cred->ssid, cred->ssid_len);
246 if (ssid && (ssid->key_mgmt & WPA_KEY_MGMT_WPS)) {
249 if (ssid->eap.identity &&
250 ssid->eap.identity_len == WSC_ID_REGISTRAR_LEN &&
251 os_memcmp(ssid->eap.identity, WSC_ID_REGISTRAR,
254 os_free(ssid->eap.identity);
255 ssid->eap.identity = NULL;
256 ssid->eap.identity_len = 0;
257 os_free(ssid->eap.phase1);
258 ssid->eap.phase1 = NULL;
259 os_free(ssid->eap.eap_methods);
260 ssid->eap.eap_methods = NULL;
261 if (!ssid->p2p_group)
262 ssid->temporary = 0;
266 ssid = wpa_config_add_network(wpa_s->conf);
267 if (ssid == NULL)
269 wpas_notify_network_added(wpa_s, ssid);
272 wpa_config_set_network_defaults(ssid);
274 os_free(ssid->ssid);
275 ssid->ssid = os_malloc(cred->ssid_len);
276 if (ssid->ssid) {
277 os_memcpy(ssid->ssid, cred->ssid, cred->ssid_len);
278 ssid->ssid_len = cred->ssid_len;
302 ssid->wep_key[key_idx],
308 ssid->wep_key_len[key_idx] = cred->key_len / 2;
310 os_memcpy(ssid->wep_key[key_idx], cred->key,
312 ssid->wep_key_len[key_idx] = cred->key_len;
314 ssid->wep_tx_keyidx = key_idx;
317 ssid->pairwise_cipher = WPA_CIPHER_TKIP;
320 ssid->pairwise_cipher = WPA_CIPHER_CCMP;
326 ssid->auth_alg = WPA_AUTH_ALG_OPEN;
327 ssid->key_mgmt = WPA_KEY_MGMT_NONE;
328 ssid->proto = 0;
335 ssid->id, ssid->id);
336 ssid->disabled = 1;
341 ssid->auth_alg = WPA_AUTH_ALG_SHARED;
342 ssid->key_mgmt = WPA_KEY_MGMT_NONE;
343 ssid->proto = 0;
346 ssid->auth_alg = WPA_AUTH_ALG_OPEN;
347 ssid->key_mgmt = WPA_KEY_MGMT_PSK;
348 ssid->proto = WPA_PROTO_WPA;
351 ssid->auth_alg = WPA_AUTH_ALG_OPEN;
352 ssid->key_mgmt = WPA_KEY_MGMT_IEEE8021X;
353 ssid->proto = WPA_PROTO_WPA;
356 ssid->auth_alg = WPA_AUTH_ALG_OPEN;
357 ssid->key_mgmt = WPA_KEY_MGMT_IEEE8021X;
358 ssid->proto = WPA_PROTO_RSN;
361 ssid->auth_alg = WPA_AUTH_ALG_OPEN;
362 ssid->key_mgmt = WPA_KEY_MGMT_PSK;
363 ssid->proto = WPA_PROTO_RSN;
367 if (ssid->key_mgmt == WPA_KEY_MGMT_PSK) {
369 if (hexstr2bin((const char *) cred->key, ssid->psk,
375 ssid->psk_set = 1;
376 ssid->export_keys = 1;
378 os_free(ssid->passphrase);
379 ssid->passphrase = os_malloc(cred->key_len + 1);
380 if (ssid->passphrase == NULL)
382 os_memcpy(ssid->passphrase, cred->key, cred->key_len);
383 ssid->passphrase[cred->key_len] = '\0';
384 wpa_config_update_psk(ssid);
385 ssid->export_keys = 1;
394 wpas_wps_security_workaround(wpa_s, ssid, cred);
580 "uuid=%s ssid=%s auth_type=0x%04x encr_type=0x%04x "
582 uuid_str, wpa_ssid_txt(cred->ssid, cred->ssid_len),
664 enum wps_request_type wpas_wps_get_req_type(struct wpa_ssid *ssid)
666 if (eap_is_wps_pbc_enrollee(&ssid->eap) ||
667 eap_is_wps_pin_enrollee(&ssid->eap))
677 struct wpa_ssid *ssid, *remove_ssid = NULL, *prev_current;
684 ssid = wpa_s->conf->ssid;
685 while (ssid) {
686 if (ssid->key_mgmt & WPA_KEY_MGMT_WPS) {
687 if (ssid == wpa_s->current_ssid) {
689 if (ssid != NULL)
692 id = ssid->id;
693 remove_ssid = ssid;
696 ssid = ssid->next;
722 struct wpa_ssid *ssid;
724 ssid = wpa_config_add_network(wpa_s->conf);
725 if (ssid == NULL)
727 wpas_notify_network_added(wpa_s, ssid);
728 wpa_config_set_network_defaults(ssid);
729 ssid->temporary = 1;
730 if (wpa_config_set(ssid, "key_mgmt", "WPS", 0) < 0 ||
731 wpa_config_set(ssid, "eap", "WSC", 0) < 0 ||
732 wpa_config_set(ssid, "identity", registrar ?
735 wpas_notify_network_removed(wpa_s, ssid);
736 wpa_config_remove_network(wpa_s->conf, ssid->id);
746 os_memcpy(ssid->bssid, bssid, ETH_ALEN);
747 ssid->bssid_set = 1;
750 * Note: With P2P, the SSID may change at the time the WPS
752 * on the current SSID in the scan results.
759 os_free(ssid->ssid);
760 ssid->ssid = os_malloc(bss->ssid_len);
761 if (ssid->ssid == NULL)
763 os_memcpy(ssid->ssid, bss->ssid, bss->ssid_len);
764 ssid->ssid_len = bss->ssid_len;
765 wpa_hexdump_ascii(MSG_DEBUG, "WPS: Picked SSID from "
767 ssid->ssid, ssid->ssid_len);
772 wpa_printf(MSG_DEBUG, "WPS: More than one SSID found "
774 os_free(ssid->ssid);
775 ssid->ssid = NULL;
776 ssid->ssid_len = 0;
781 return ssid;
788 struct wpa_ssid *ssid;
791 ssid = wpa_s->conf->ssid;
792 while (ssid) {
793 int was_disabled = ssid->disabled;
801 ssid->disabled = ssid != selected;
802 if (was_disabled != ssid->disabled)
804 ssid);
806 ssid = ssid->next;
820 struct wpa_ssid *ssid;
822 ssid = wpas_wps_add_network(wpa_s, 0, bssid);
823 if (ssid == NULL)
825 ssid->temporary = 1;
826 ssid->p2p_group = p2p_group;
829 ssid->ssid = os_zalloc(wpa_s->go_params->ssid_len + 1);
830 if (ssid->ssid) {
831 ssid->ssid_len = wpa_s->go_params->ssid_len;
832 os_memcpy(ssid->ssid, wpa_s->go_params->ssid,
833 ssid->ssid_len);
835 "SSID", ssid->ssid, ssid->ssid_len);
839 wpa_config_set(ssid, "phase1", "\"pbc=1\"", 0);
841 ssid->eap.fragment_size = wpa_s->wps_fragment_size;
844 wpas_wps_reassoc(wpa_s, ssid);
852 struct wpa_ssid *ssid;
857 ssid = wpas_wps_add_network(wpa_s, 0, bssid);
858 if (ssid == NULL)
860 ssid->temporary = 1;
861 ssid->p2p_group = p2p_group;
864 ssid->ssid = os_zalloc(wpa_s->go_params->ssid_len + 1);
865 if (ssid->ssid) {
866 ssid->ssid_len = wpa_s->go_params->ssid_len;
867 os_memcpy(ssid->ssid, wpa_s->go_params->ssid,
868 ssid->ssid_len);
870 "SSID", ssid->ssid, ssid->ssid_len);
882 wpa_config_set(ssid, "phase1", val, 0);
884 ssid->eap.fragment_size = wpa_s->wps_fragment_size;
887 wpas_wps_reassoc(wpa_s, ssid);
972 struct wpa_ssid *ssid;
980 ssid = wpas_wps_add_network(wpa_s, 1, bssid);
981 if (ssid == NULL)
983 ssid->temporary = 1;
1002 wpa_config_set(ssid, "phase1", val, 0);
1004 ssid->eap.fragment_size = wpa_s->wps_fragment_size;
1007 wpas_wps_reassoc(wpa_s, ssid);
1199 struct wpa_ssid *ssid, struct wpa_scan_res *bss)
1203 if (!(ssid->key_mgmt & WPA_KEY_MGMT_WPS))
1207 if (eap_is_wps_pbc_enrollee(&ssid->eap)) {
1227 if (eap_is_wps_pin_enrollee(&ssid->eap)) {
1267 struct wpa_ssid *ssid,
1273 if (eap_is_wps_pbc_enrollee(&ssid->eap)) {
1276 /* allow wildcard SSID for WPS PBC */
1279 } else if (eap_is_wps_pin_enrollee(&ssid->eap)) {
1284 /* allow wildcard SSID for WPS PIN */
1289 if (!ret && ssid->bssid_set &&
1290 os_memcmp(ssid->bssid, bss->bssid, ETH_ALEN) == 0) {
1291 /* allow wildcard SSID due to hardcoded BSSID match */
1324 struct wpa_bss *selected, struct wpa_ssid *ssid)
1331 if (!eap_is_wps_pbc_enrollee(&ssid->eap))
1425 struct wpa_ssid *ssid;
1427 for (ssid = wpa_s->conf->ssid; ssid; ssid = ssid->next) {
1428 if ((ssid->key_mgmt & WPA_KEY_MGMT_WPS) && !ssid->disabled)
1522 struct wpa_ssid *ssid;
1527 ssid = wpa_config_get_network(wpa_s->conf, id);
1528 if (ssid == NULL || ssid->ssid == NULL)
1532 if (ssid->ssid_len > 32)
1534 os_memcpy(cred.ssid, ssid->ssid, ssid->ssid_len);
1535 cred.ssid_len = ssid->ssid_len;
1536 if (ssid->key_mgmt & WPA_KEY_MGMT_PSK) {
1537 cred.auth_type = (ssid->proto & WPA_PROTO_RSN) ?
1539 if (ssid->pairwise_cipher & WPA_CIPHER_CCMP)
1543 if (ssid->passphrase) {
1544 cred.key_len = os_strlen(ssid->passphrase);
1547 os_memcpy(cred.key, ssid->passphrase, cred.key_len);
1548 } else if (ssid->psk_set) {
1550 os_memcpy(cred.key, ssid->psk, 32);
1576 if ((len & 1) || len > 2 * sizeof(cred.ssid) ||
1577 hexstr2bin(settings->ssid_hex, cred.ssid, len / 2))
1639 struct wpa_ssid *ssid;
1641 for (ssid = wpa_s->conf->ssid; ssid; ssid = ssid->next) {
1642 if (!ssid->disabled && ssid->key_mgmt == WPA_KEY_MGMT_WPS)