Lines Matching refs:ie
378 struct wpa_eapol_ie_parse ie; in wpa_supplicant_process_1_of_4() local
393 os_memset(&ie, 0, sizeof(ie)); in wpa_supplicant_process_1_of_4()
400 if (wpa_supplicant_parse_ies(_buf, len, &ie) < 0) in wpa_supplicant_process_1_of_4()
402 if (ie.pmkid) { in wpa_supplicant_process_1_of_4()
404 "Authenticator", ie.pmkid, PMKID_LEN); in wpa_supplicant_process_1_of_4()
408 res = wpa_supplicant_get_pmk(sm, src_addr, ie.pmkid); in wpa_supplicant_process_1_of_4()
707 struct wpa_eapol_ie_parse *ie) in ieee80211w_set_keys() argument
713 if (ie->igtk) { in ieee80211w_set_keys()
716 if (ie->igtk_len != sizeof(*igtk)) in ieee80211w_set_keys()
718 igtk = (const struct wpa_igtk_kde *) ie->igtk; in ieee80211w_set_keys()
788 struct wpa_eapol_ie_parse *ie, in ft_validate_mdie() argument
793 mdie = (struct rsn_mdie *) (ie->mdie + 2); in ft_validate_mdie()
794 if (ie->mdie == NULL || ie->mdie_len < 2 + sizeof(*mdie) || in ft_validate_mdie()
803 (assoc_resp_mdie[1] != ie->mdie[1] || in ft_validate_mdie()
804 os_memcmp(assoc_resp_mdie, ie->mdie, 2 + ie->mdie[1]) != 0)) { in ft_validate_mdie()
807 ie->mdie, 2 + ie->mdie[1]); in ft_validate_mdie()
819 struct wpa_eapol_ie_parse *ie, in ft_validate_ftie() argument
822 if (ie->ftie == NULL) { in ft_validate_ftie()
831 if (assoc_resp_ftie[1] != ie->ftie[1] || in ft_validate_ftie()
832 os_memcmp(assoc_resp_ftie, ie->ftie, 2 + ie->ftie[1]) != 0) { in ft_validate_ftie()
835 ie->ftie, 2 + ie->ftie[1]); in ft_validate_ftie()
847 struct wpa_eapol_ie_parse *ie) in ft_validate_rsnie() argument
851 if (!ie->rsn_ie) in ft_validate_rsnie()
858 if (wpa_parse_wpa_ie_rsn(ie->rsn_ie, ie->rsn_ie_len, &rsn) < 0 || in ft_validate_rsnie()
882 struct wpa_eapol_ie_parse *ie) in wpa_supplicant_validate_ie_ft() argument
904 if (ft_validate_mdie(sm, src_addr, ie, mdie) < 0 || in wpa_supplicant_validate_ie_ft()
905 ft_validate_ftie(sm, src_addr, ie, ftie) < 0 || in wpa_supplicant_validate_ie_ft()
906 ft_validate_rsnie(sm, src_addr, ie) < 0) in wpa_supplicant_validate_ie_ft()
917 struct wpa_eapol_ie_parse *ie) in wpa_supplicant_validate_ie() argument
934 if (ie->wpa_ie == NULL && ie->rsn_ie == NULL && in wpa_supplicant_validate_ie()
938 src_addr, ie->wpa_ie, ie->wpa_ie_len, in wpa_supplicant_validate_ie()
939 ie->rsn_ie, ie->rsn_ie_len); in wpa_supplicant_validate_ie()
943 if ((ie->wpa_ie && sm->ap_wpa_ie && in wpa_supplicant_validate_ie()
944 (ie->wpa_ie_len != sm->ap_wpa_ie_len || in wpa_supplicant_validate_ie()
945 os_memcmp(ie->wpa_ie, sm->ap_wpa_ie, ie->wpa_ie_len) != 0)) || in wpa_supplicant_validate_ie()
946 (ie->rsn_ie && sm->ap_rsn_ie && in wpa_supplicant_validate_ie()
949 ie->rsn_ie, ie->rsn_ie_len))) { in wpa_supplicant_validate_ie()
952 src_addr, ie->wpa_ie, ie->wpa_ie_len, in wpa_supplicant_validate_ie()
953 ie->rsn_ie, ie->rsn_ie_len); in wpa_supplicant_validate_ie()
958 ie->rsn_ie && sm->ap_rsn_ie == NULL && sm->rsn_enabled) { in wpa_supplicant_validate_ie()
963 src_addr, ie->wpa_ie, ie->wpa_ie_len, in wpa_supplicant_validate_ie()
964 ie->rsn_ie, ie->rsn_ie_len); in wpa_supplicant_validate_ie()
970 wpa_supplicant_validate_ie_ft(sm, src_addr, ie) < 0) in wpa_supplicant_validate_ie()
1039 struct wpa_eapol_ie_parse ie; in wpa_supplicant_process_3_of_4() local
1050 if (wpa_supplicant_parse_ies(pos, len, &ie) < 0) in wpa_supplicant_process_3_of_4()
1052 if (ie.gtk && !(key_info & WPA_KEY_INFO_ENCR_KEY_DATA)) { in wpa_supplicant_process_3_of_4()
1058 if (ie.igtk && !(key_info & WPA_KEY_INFO_ENCR_KEY_DATA)) { in wpa_supplicant_process_3_of_4()
1064 if (ie.igtk && ie.igtk_len != sizeof(struct wpa_igtk_kde)) { in wpa_supplicant_process_3_of_4()
1067 (unsigned long) ie.igtk_len); in wpa_supplicant_process_3_of_4()
1072 if (wpa_supplicant_validate_ie(sm, sm->bssid, &ie) < 0) in wpa_supplicant_process_3_of_4()
1115 if (ie.gtk && in wpa_supplicant_process_3_of_4()
1117 ie.gtk, ie.gtk_len, key_info) < 0) { in wpa_supplicant_process_3_of_4()
1123 if (ieee80211w_set_keys(sm, &ie) < 0) { in wpa_supplicant_process_3_of_4()
1145 struct wpa_eapol_ie_parse ie; in wpa_supplicant_process_1_of_2_rsn() local
1148 if (wpa_supplicant_parse_ies(keydata, keydatalen, &ie) < 0) in wpa_supplicant_process_1_of_2_rsn()
1150 if (ie.gtk && !(key_info & WPA_KEY_INFO_ENCR_KEY_DATA)) { in wpa_supplicant_process_1_of_2_rsn()
1155 if (ie.gtk == NULL) { in wpa_supplicant_process_1_of_2_rsn()
1160 maxkeylen = gd->gtk_len = ie.gtk_len - 2; in wpa_supplicant_process_1_of_2_rsn()
1168 ie.gtk, ie.gtk_len); in wpa_supplicant_process_1_of_2_rsn()
1169 gd->keyidx = ie.gtk[0] & 0x3; in wpa_supplicant_process_1_of_2_rsn()
1171 !!(ie.gtk[0] & BIT(2))); in wpa_supplicant_process_1_of_2_rsn()
1172 if (ie.gtk_len - 2 > sizeof(gd->gtk)) { in wpa_supplicant_process_1_of_2_rsn()
1175 (unsigned long) ie.gtk_len - 2); in wpa_supplicant_process_1_of_2_rsn()
1178 os_memcpy(gd->gtk, ie.gtk + 2, ie.gtk_len - 2); in wpa_supplicant_process_1_of_2_rsn()
1180 if (ieee80211w_set_keys(sm, &ie) < 0) in wpa_supplicant_process_1_of_2_rsn()
2476 int wpa_sm_set_assoc_wpa_ie(struct wpa_sm *sm, const u8 *ie, size_t len) in wpa_sm_set_assoc_wpa_ie() argument
2482 if (ie == NULL || len == 0) { in wpa_sm_set_assoc_wpa_ie()
2488 wpa_hexdump(MSG_DEBUG, "WPA: set own WPA/RSN IE", ie, len); in wpa_sm_set_assoc_wpa_ie()
2493 os_memcpy(sm->assoc_wpa_ie, ie, len); in wpa_sm_set_assoc_wpa_ie()
2511 int wpa_sm_set_ap_wpa_ie(struct wpa_sm *sm, const u8 *ie, size_t len) in wpa_sm_set_ap_wpa_ie() argument
2517 if (ie == NULL || len == 0) { in wpa_sm_set_ap_wpa_ie()
2523 wpa_hexdump(MSG_DEBUG, "WPA: set AP WPA IE", ie, len); in wpa_sm_set_ap_wpa_ie()
2528 os_memcpy(sm->ap_wpa_ie, ie, len); in wpa_sm_set_ap_wpa_ie()
2546 int wpa_sm_set_ap_rsn_ie(struct wpa_sm *sm, const u8 *ie, size_t len) in wpa_sm_set_ap_rsn_ie() argument
2552 if (ie == NULL || len == 0) { in wpa_sm_set_ap_rsn_ie()
2558 wpa_hexdump(MSG_DEBUG, "WPA: set AP RSN IE", ie, len); in wpa_sm_set_ap_rsn_ie()
2563 os_memcpy(sm->ap_rsn_ie, ie, len); in wpa_sm_set_ap_rsn_ie()