1/* 2 * hostapd - WPA/RSN IE and KDE definitions 3 * Copyright (c) 2004-2007, Jouni Malinen <j@w1.fi> 4 * 5 * This software may be distributed under the terms of the BSD license. 6 * See README for more details. 7 */ 8 9#ifndef WPA_AUTH_IE_H 10#define WPA_AUTH_IE_H 11 12struct wpa_eapol_ie_parse { 13 const u8 *wpa_ie; 14 size_t wpa_ie_len; 15 const u8 *rsn_ie; 16 size_t rsn_ie_len; 17 const u8 *pmkid; 18 const u8 *gtk; 19 size_t gtk_len; 20 const u8 *mac_addr; 21 size_t mac_addr_len; 22#ifdef CONFIG_IEEE80211W 23 const u8 *igtk; 24 size_t igtk_len; 25#endif /* CONFIG_IEEE80211W */ 26#ifdef CONFIG_IEEE80211R_AP 27 const u8 *mdie; 28 size_t mdie_len; 29 const u8 *ftie; 30 size_t ftie_len; 31#endif /* CONFIG_IEEE80211R_AP */ 32#ifdef CONFIG_P2P 33 const u8 *ip_addr_req; 34 const u8 *ip_addr_alloc; 35#endif /* CONFIG_P2P */ 36#ifdef CONFIG_OCV 37 const u8 *oci; 38 size_t oci_len; 39#endif /* CONFIG_OCV */ 40 41 const u8 *osen; 42 size_t osen_len; 43}; 44 45int wpa_parse_kde_ies(const u8 *buf, size_t len, 46 struct wpa_eapol_ie_parse *ie); 47u8 * wpa_add_kde(u8 *pos, u32 kde, const u8 *data, size_t data_len, 48 const u8 *data2, size_t data2_len); 49int wpa_auth_gen_wpa_ie(struct wpa_authenticator *wpa_auth); 50 51#endif /* WPA_AUTH_IE_H */ 52