Home | History | Annotate | Download | only in wpa_supplicant

Lines Matching refs:ssid

119 					 struct wpa_ssid *ssid,
139 if (ssid->ssid == NULL)
141 bss = wpa_bss_get(wpa_s, cred->mac_addr, ssid->ssid, ssid->ssid_len);
162 if (ie == NULL && (ssid->proto & WPA_PROTO_WPA) &&
163 (ssid->pairwise_cipher & WPA_CIPHER_TKIP)) {
175 if (ccmp && !(ssid->pairwise_cipher & WPA_CIPHER_CCMP) &&
176 (ssid->pairwise_cipher & WPA_CIPHER_TKIP) &&
181 ssid->pairwise_cipher |= WPA_CIPHER_CCMP;
183 ssid->pairwise_cipher = WPA_CIPHER_CCMP;
186 if (wpa2 && !(ssid->proto & WPA_PROTO_RSN) &&
187 (ssid->proto & WPA_PROTO_WPA) &&
192 ssid->proto |= WPA_PROTO_RSN;
194 ssid->proto = WPA_PROTO_RSN;
203 struct wpa_ssid *ssid = wpa_s->current_ssid;
232 wpa_hexdump_ascii(MSG_DEBUG, "WPS: SSID", cred->ssid, cred->ssid_len);
259 if (ssid && (ssid->key_mgmt & WPA_KEY_MGMT_WPS)) {
263 if (ssid->eap.identity &&
264 ssid->eap.identity_len == WSC_ID_REGISTRAR_LEN &&
265 os_memcmp(ssid->eap.identity, WSC_ID_REGISTRAR,
269 os_free(ssid->eap.identity);
270 ssid->eap.identity = NULL;
271 ssid->eap.identity_len = 0;
272 os_free(ssid->eap.phase1);
273 ssid->eap.phase1 = NULL;
274 os_free(ssid->eap.eap_methods);
275 ssid->eap.eap_methods = NULL;
276 if (!ssid->p2p_group) {
277 ssid->temporary = 0;
278 ssid->bssid_set = 0;
280 ssid->disabled_until.sec = 0;
281 ssid->disabled_until.usec = 0;
282 ssid->auth_failures = 0;
286 ssid = wpa_config_add_network(wpa_s->conf);
287 if (ssid == NULL)
289 wpas_notify_network_added(wpa_s, ssid);
292 wpa_config_set_network_defaults(ssid);
294 os_free(ssid->ssid);
295 ssid->ssid = os_malloc(cred->ssid_len);
296 if (ssid->ssid) {
297 os_memcpy(ssid->ssid, cred->ssid, cred->ssid_len);
298 ssid->ssid_len = cred->ssid_len;
322 ssid->wep_key[key_idx],
328 ssid->wep_key_len[key_idx] = cred->key_len / 2;
330 os_memcpy(ssid->wep_key[key_idx], cred->key,
332 ssid->wep_key_len[key_idx] = cred->key_len;
334 ssid->wep_tx_keyidx = key_idx;
337 ssid->pairwise_cipher = WPA_CIPHER_TKIP;
340 ssid->pairwise_cipher = WPA_CIPHER_CCMP;
346 ssid->auth_alg = WPA_AUTH_ALG_OPEN;
347 ssid->key_mgmt = WPA_KEY_MGMT_NONE;
348 ssid->proto = 0;
355 ssid->id, ssid->id);
356 ssid->disabled = 1;
361 ssid->auth_alg = WPA_AUTH_ALG_SHARED;
362 ssid->key_mgmt = WPA_KEY_MGMT_NONE;
363 ssid->proto = 0;
366 ssid->auth_alg = WPA_AUTH_ALG_OPEN;
367 ssid->key_mgmt = WPA_KEY_MGMT_PSK;
368 ssid->proto = WPA_PROTO_WPA;
371 ssid->auth_alg = WPA_AUTH_ALG_OPEN;
372 ssid->key_mgmt = WPA_KEY_MGMT_PSK;
373 ssid->proto = WPA_PROTO_RSN;
377 if (ssid->key_mgmt == WPA_KEY_MGMT_PSK) {
379 if (hexstr2bin((const char *) cred->key, ssid->psk,
385 ssid->psk_set = 1;
386 ssid->export_keys = 1;
388 os_free(ssid->passphrase);
389 ssid->passphrase = os_malloc(cred->key_len + 1);
390 if (ssid->passphrase == NULL)
392 os_memcpy(ssid->passphrase, cred->key, cred->key_len);
393 ssid->passphrase[cred->key_len] = '\0';
394 wpa_config_update_psk(ssid);
395 ssid->export_keys = 1;
404 wpas_wps_security_workaround(wpa_s, ssid, cred);
590 "uuid=%s ssid=%s auth_type=0x%04x encr_type=0x%04x "
592 uuid_str, wpa_ssid_txt(cred->ssid, cred->ssid_len),
676 enum wps_request_type wpas_wps_get_req_type(struct wpa_ssid *ssid)
678 if (eap_is_wps_pbc_enrollee(&ssid->eap) ||
679 eap_is_wps_pin_enrollee(&ssid->eap))
689 struct wpa_ssid *ssid, *remove_ssid = NULL, *prev_current;
696 ssid = wpa_s->conf->ssid;
697 while (ssid) {
698 if (ssid->key_mgmt & WPA_KEY_MGMT_WPS) {
699 if (ssid == wpa_s->current_ssid) {
701 if (ssid != NULL)
704 id = ssid->id;
705 remove_ssid = ssid;
708 ssid = ssid->next;
736 struct wpa_ssid *ssid;
738 ssid = wpa_config_add_network(wpa_s->conf);
739 if (ssid == NULL)
741 wpas_notify_network_added(wpa_s, ssid);
742 wpa_config_set_network_defaults(ssid);
743 ssid->temporary = 1;
744 if (wpa_config_set(ssid, "key_mgmt", "WPS", 0) < 0 ||
745 wpa_config_set(ssid, "eap", "WSC", 0) < 0 ||
746 wpa_config_set(ssid, "identity", registrar ?
749 wpas_notify_network_removed(wpa_s, ssid);
750 wpa_config_remove_network(wpa_s->conf, ssid->id);
760 os_memcpy(ssid->bssid, bssid, ETH_ALEN);
761 ssid->bssid_set = 1;
764 * Note: With P2P, the SSID may change at the time the WPS
766 * on the current SSID in the scan results.
773 os_free(ssid->ssid);
774 ssid->ssid = os_malloc(bss->ssid_len);
775 if (ssid->ssid == NULL)
777 os_memcpy(ssid->ssid, bss->ssid, bss->ssid_len);
778 ssid->ssid_len = bss->ssid_len;
779 wpa_hexdump_ascii(MSG_DEBUG, "WPS: Picked SSID from "
781 ssid->ssid, ssid->ssid_len);
786 wpa_printf(MSG_DEBUG, "WPS: More than one SSID found "
788 os_free(ssid->ssid);
789 ssid->ssid = NULL;
790 ssid->ssid_len = 0;
795 return ssid;
802 struct wpa_ssid *ssid;
819 ssid = wpa_s->conf->ssid;
820 while (ssid) {
821 int was_disabled = ssid->disabled;
829 ssid->disabled = ssid != selected;
830 if (was_disabled != ssid->disabled)
832 ssid);
834 ssid = ssid->next;
849 struct wpa_ssid *ssid;
851 ssid = wpas_wps_add_network(wpa_s, 0, bssid);
852 if (ssid == NULL)
854 ssid->temporary = 1;
855 ssid->p2p_group = p2p_group;
858 ssid->ssid = os_zalloc(wpa_s->go_params->ssid_len + 1);
859 if (ssid->ssid) {
860 ssid->ssid_len = wpa_s->go_params->ssid_len;
861 os_memcpy(ssid->ssid, wpa_s->go_params->ssid,
862 ssid->ssid_len);
864 "SSID", ssid->ssid, ssid->ssid_len);
868 wpa_config_set(ssid, "phase1", "\"pbc=1\"", 0);
870 ssid->eap.fragment_size = wpa_s->wps_fragment_size;
873 wpas_wps_reassoc(wpa_s, ssid, bssid);
881 struct wpa_ssid *ssid;
886 ssid = wpas_wps_add_network(wpa_s, 0, bssid);
887 if (ssid == NULL)
889 ssid->temporary = 1;
890 ssid->p2p_group = p2p_group;
893 ssid->ssid = os_zalloc(wpa_s->go_params->ssid_len + 1);
894 if (ssid->ssid) {
895 ssid->ssid_len = wpa_s->go_params->ssid_len;
896 os_memcpy(ssid->ssid, wpa_s->go_params->ssid,
897 ssid->ssid_len);
899 "SSID", ssid->ssid, ssid->ssid_len);
911 wpa_config_set(ssid, "phase1", val, 0);
913 ssid->eap.fragment_size = wpa_s->wps_fragment_size;
917 wpas_wps_reassoc(wpa_s, ssid, bssid);
1004 struct wpa_ssid *ssid;
1012 ssid = wpas_wps_add_network(wpa_s, 1, bssid);
1013 if (ssid == NULL)
1015 ssid->temporary = 1;
1034 wpa_config_set(ssid, "phase1", val, 0);
1036 ssid->eap.fragment_size = wpa_s->wps_fragment_size;
1039 wpas_wps_reassoc(wpa_s, ssid, bssid);
1273 struct wpa_ssid *ssid, struct wpa_bss *bss)
1277 if (!(ssid->key_mgmt & WPA_KEY_MGMT_WPS))
1281 if (eap_is_wps_pbc_enrollee(&ssid->eap)) {
1301 if (eap_is_wps_pin_enrollee(&ssid->eap)) {
1341 struct wpa_ssid *ssid,
1347 if (eap_is_wps_pbc_enrollee(&ssid->eap)) {
1350 /* allow wildcard SSID for WPS PBC */
1353 } else if (eap_is_wps_pin_enrollee(&ssid->eap)) {
1358 /* allow wildcard SSID for WPS PIN */
1363 if (!ret && ssid->bssid_set &&
1364 os_memcmp(ssid->bssid, bss->bssid, ETH_ALEN) == 0) {
1365 /* allow wildcard SSID due to hardcoded BSSID match */
1398 struct wpa_bss *selected, struct wpa_ssid *ssid)
1405 if (!eap_is_wps_pbc_enrollee(&ssid->eap))
1499 struct wpa_ssid *ssid;
1501 for (ssid = wpa_s->conf->ssid; ssid; ssid = ssid->next) {
1502 if ((ssid->key_mgmt & WPA_KEY_MGMT_WPS) && !ssid->disabled)
1596 struct wpa_ssid *ssid;
1601 ssid = wpa_config_get_network(wpa_s->conf, id);
1602 if (ssid == NULL || ssid->ssid == NULL)
1606 if (ssid->ssid_len > 32)
1608 os_memcpy(cred.ssid, ssid->ssid, ssid->ssid_len);
1609 cred.ssid_len = ssid->ssid_len;
1610 if (ssid->key_mgmt & WPA_KEY_MGMT_PSK) {
1611 cred.auth_type = (ssid->proto & WPA_PROTO_RSN) ?
1613 if (ssid->pairwise_cipher & WPA_CIPHER_CCMP)
1617 if (ssid->passphrase) {
1618 cred.key_len = os_strlen(ssid->passphrase);
1621 os_memcpy(cred.key, ssid->passphrase, cred.key_len);
1622 } else if (ssid->psk_set) {
1624 os_memcpy(cred.key, ssid->psk, 32);
1650 if ((len & 1) || len > 2 * sizeof(cred.ssid) ||
1651 hexstr2bin(settings->ssid_hex, cred.ssid, len / 2))
1741 struct wpa_ssid *ssid;
1743 for (ssid = wpa_s->conf->ssid; ssid; ssid = ssid->next) {
1744 if (!ssid->disabled && ssid->key_mgmt == WPA_KEY_MGMT_WPS)