wpa_ie.h revision 33e38bfa7159cef089d6ee0d904778e184c72c47
1fa0588ff672564af1c235a63589573829035a60bcaryclark@google.com/* 2fa0588ff672564af1c235a63589573829035a60bcaryclark@google.com * wpa_supplicant - WPA/RSN IE and KDE definitions 3fa0588ff672564af1c235a63589573829035a60bcaryclark@google.com * Copyright (c) 2004-2007, Jouni Malinen <j@w1.fi> 4fa0588ff672564af1c235a63589573829035a60bcaryclark@google.com * 5fa0588ff672564af1c235a63589573829035a60bcaryclark@google.com * This software may be distributed under the terms of the BSD license. 6fa0588ff672564af1c235a63589573829035a60bcaryclark@google.com * See README for more details. 7b45a1b46ee25e9b19800b028bb1ca925212ac7b4caryclark@google.com */ 8fa0588ff672564af1c235a63589573829035a60bcaryclark@google.com 9fa0588ff672564af1c235a63589573829035a60bcaryclark@google.com#ifndef WPA_IE_H 10fa0588ff672564af1c235a63589573829035a60bcaryclark@google.com#define WPA_IE_H 11fa0588ff672564af1c235a63589573829035a60bcaryclark@google.com 1215fa138f2276a77679530fb608463ff5b4133f7bcaryclark@google.comstruct wpa_sm; 1315fa138f2276a77679530fb608463ff5b4133f7bcaryclark@google.com 1415fa138f2276a77679530fb608463ff5b4133f7bcaryclark@google.comstruct wpa_eapol_ie_parse { 15b45a1b46ee25e9b19800b028bb1ca925212ac7b4caryclark@google.com const u8 *wpa_ie; 16b45a1b46ee25e9b19800b028bb1ca925212ac7b4caryclark@google.com size_t wpa_ie_len; 1715fa138f2276a77679530fb608463ff5b4133f7bcaryclark@google.com const u8 *rsn_ie; 1815fa138f2276a77679530fb608463ff5b4133f7bcaryclark@google.com size_t rsn_ie_len; 1915fa138f2276a77679530fb608463ff5b4133f7bcaryclark@google.com const u8 *pmkid; 2047580694fbe974a065caf7c39c3d2075708c2018caryclark@google.com const u8 *gtk; 2115fa138f2276a77679530fb608463ff5b4133f7bcaryclark@google.com size_t gtk_len; 22fa0588ff672564af1c235a63589573829035a60bcaryclark@google.com const u8 *mac_addr; 2347580694fbe974a065caf7c39c3d2075708c2018caryclark@google.com size_t mac_addr_len; 2447580694fbe974a065caf7c39c3d2075708c2018caryclark@google.com#ifdef CONFIG_PEERKEY 2547580694fbe974a065caf7c39c3d2075708c2018caryclark@google.com const u8 *smk; 2647580694fbe974a065caf7c39c3d2075708c2018caryclark@google.com size_t smk_len; 2747580694fbe974a065caf7c39c3d2075708c2018caryclark@google.com const u8 *nonce; 28a461ff0866526bc51dbd4c4f9f066a727ec21510caryclark@google.com size_t nonce_len; 29a461ff0866526bc51dbd4c4f9f066a727ec21510caryclark@google.com const u8 *lifetime; 3047580694fbe974a065caf7c39c3d2075708c2018caryclark@google.com size_t lifetime_len; 3147580694fbe974a065caf7c39c3d2075708c2018caryclark@google.com const u8 *error; 32a461ff0866526bc51dbd4c4f9f066a727ec21510caryclark@google.com size_t error_len; 33fa0588ff672564af1c235a63589573829035a60bcaryclark@google.com#endif /* CONFIG_PEERKEY */ 3447580694fbe974a065caf7c39c3d2075708c2018caryclark@google.com#ifdef CONFIG_IEEE80211W 35fa0588ff672564af1c235a63589573829035a60bcaryclark@google.com const u8 *igtk; 3647580694fbe974a065caf7c39c3d2075708c2018caryclark@google.com size_t igtk_len; 37fa0588ff672564af1c235a63589573829035a60bcaryclark@google.com#endif /* CONFIG_IEEE80211W */ 3847580694fbe974a065caf7c39c3d2075708c2018caryclark@google.com const u8 *mdie; 39c899ad9c7fa28234d99479ab09afb6866bbd8dc3caryclark@google.com size_t mdie_len; 4047580694fbe974a065caf7c39c3d2075708c2018caryclark@google.com const u8 *ftie; 418dcf114db9762c02d217beba6e29dffa4e92d298caryclark@google.com size_t ftie_len; 4247580694fbe974a065caf7c39c3d2075708c2018caryclark@google.com const u8 *reassoc_deadline; 43a461ff0866526bc51dbd4c4f9f066a727ec21510caryclark@google.com const u8 *key_lifetime; 4447580694fbe974a065caf7c39c3d2075708c2018caryclark@google.com const u8 *lnkid; 45afe56de6361a81eef537ddd8f6d5626c8546d4c7caryclark@google.com size_t lnkid_len; 468dcf114db9762c02d217beba6e29dffa4e92d298caryclark@google.com const u8 *ext_capab; 47fa0588ff672564af1c235a63589573829035a60bcaryclark@google.com size_t ext_capab_len; 48fa0588ff672564af1c235a63589573829035a60bcaryclark@google.com const u8 *supp_rates; 49fa0588ff672564af1c235a63589573829035a60bcaryclark@google.com size_t supp_rates_len; 5047580694fbe974a065caf7c39c3d2075708c2018caryclark@google.com const u8 *ext_supp_rates; 51fa0588ff672564af1c235a63589573829035a60bcaryclark@google.com size_t ext_supp_rates_len; 52c91dfe417a51f73c28ecf2708df1e0bee942c6eacaryclark@google.com const u8 *ht_capabilities; 536aea33f92c611d6fdc88bc2352c5c966168af83bcaryclark@google.com size_t ht_capabilities_len; 546aea33f92c611d6fdc88bc2352c5c966168af83bcaryclark@google.com const u8 *vht_capabilities; 553350c3c68ab75cd08721da3a938b8d2b10096d70caryclark@google.com size_t vht_capabilities_len; 563350c3c68ab75cd08721da3a938b8d2b10096d70caryclark@google.com u8 qosinfo; 57534aa5b9460639a09b9dc30d29e77782e44b8fffcaryclark@google.com}; 583350c3c68ab75cd08721da3a938b8d2b10096d70caryclark@google.com 5965f9f0a1664a9cb38157ccfbcc3e0e936af0a58ecaryclark@google.comint wpa_supplicant_parse_ies(const u8 *buf, size_t len, 6047580694fbe974a065caf7c39c3d2075708c2018caryclark@google.com struct wpa_eapol_ie_parse *ie); 61afe56de6361a81eef537ddd8f6d5626c8546d4c7caryclark@google.comint wpa_gen_wpa_ie(struct wpa_sm *sm, u8 *wpa_ie, size_t wpa_ie_len); 6247580694fbe974a065caf7c39c3d2075708c2018caryclark@google.com 63fa0588ff672564af1c235a63589573829035a60bcaryclark@google.com#endif /* WPA_IE_H */ 64fa0588ff672564af1c235a63589573829035a60bcaryclark@google.com