X-Git-Url: http://vcs.maemo.org/git/?a=blobdiff_plain;f=hostapd%2Fwpa.h;h=d3538443ea396168ab4438ecf0606996c827082f;hb=fda90ab4b73b19d4638e8b7cd4c90458e51f9e3e;hp=5bcb6a60f14c0f444c0f04dfa3229e805a74450a;hpb=bf98f7f3bcf827f5cdcd2179dfcf3b0c55a8cd16;p=wpasupplicant diff --git a/hostapd/wpa.h b/hostapd/wpa.h index 5bcb6a6..d353844 100644 --- a/hostapd/wpa.h +++ b/hostapd/wpa.h @@ -22,11 +22,12 @@ #pragma pack(push, 1) #endif /* _MSC_VER */ -/* IEEE 802.11r/D8.0, 11A.10.3 - Remote request/response frame definition */ +/* IEEE Std 802.11r-2008, 11A.10.3 - Remote request/response frame definition + */ struct ft_rrb_frame { u8 frame_type; /* RSN_REMOTE_FRAME_TYPE_FT_RRB */ u8 packet_type; /* FT_PACKET_REQUEST/FT_PACKET_RESPONSE */ - u16 action_length; /* little endian length of action_frame */ + le16 action_length; /* little endian length of action_frame */ u8 ap_address[ETH_ALEN]; /* * Followed by action_length bytes of FT Action frame (from Category @@ -54,7 +55,7 @@ struct ft_rrb_frame { struct ft_r0kh_r1kh_pull_frame { u8 frame_type; /* RSN_REMOTE_FRAME_TYPE_FT_RRB */ u8 packet_type; /* FT_PACKET_R0KH_R1KH_PULL */ - u16 data_length; /* little endian length of data (44) */ + le16 data_length; /* little endian length of data (44) */ u8 ap_address[ETH_ALEN]; u8 nonce[16]; @@ -68,7 +69,7 @@ struct ft_r0kh_r1kh_pull_frame { struct ft_r0kh_r1kh_resp_frame { u8 frame_type; /* RSN_REMOTE_FRAME_TYPE_FT_RRB */ u8 packet_type; /* FT_PACKET_R0KH_R1KH_RESP */ - u16 data_length; /* little endian length of data (76) */ + le16 data_length; /* little endian length of data (76) */ u8 ap_address[ETH_ALEN]; u8 nonce[16]; /* copied from pull */ @@ -83,7 +84,7 @@ struct ft_r0kh_r1kh_resp_frame { struct ft_r0kh_r1kh_push_frame { u8 frame_type; /* RSN_REMOTE_FRAME_TYPE_FT_RRB */ u8 packet_type; /* FT_PACKET_R0KH_R1KH_PUSH */ - u16 data_length; /* little endian length of data (80) */ + le16 data_length; /* little endian length of data (80) */ u8 ap_address[ETH_ALEN]; /* Encrypted with AES key-wrap */ @@ -135,6 +136,7 @@ struct wpa_auth_config { int wpa_group_rekey; int wpa_strict_rekey; int wpa_gmk_rekey; + int wpa_ptk_rekey; int rsn_pairwise; int rsn_preauth; int eapol_version; @@ -215,7 +217,7 @@ enum { WPA_IE_OK, WPA_INVALID_IE, WPA_INVALID_GROUP, WPA_INVALID_PAIRWISE, WPA_INVALID_AKMP, WPA_NOT_ENABLED, WPA_ALLOC_FAIL, WPA_MGMT_FRAME_PROTECTION_VIOLATION, WPA_INVALID_MGMT_GROUP_CIPHER, - WPA_INVALID_MDIE + WPA_INVALID_MDIE, WPA_INVALID_PROTO }; int wpa_validate_wpa_ie(struct wpa_authenticator *wpa_auth, @@ -227,6 +229,7 @@ struct wpa_state_machine * wpa_auth_sta_init(struct wpa_authenticator *wpa_auth, const u8 *addr); void wpa_auth_sta_associated(struct wpa_authenticator *wpa_auth, struct wpa_state_machine *sm); +void wpa_auth_sta_no_wpa(struct wpa_state_machine *sm); void wpa_auth_sta_deinit(struct wpa_state_machine *sm); void wpa_receive(struct wpa_authenticator *wpa_auth, struct wpa_state_machine *sm, @@ -243,6 +246,7 @@ int wpa_get_mib(struct wpa_authenticator *wpa_auth, char *buf, size_t buflen); int wpa_get_mib_sta(struct wpa_state_machine *sm, char *buf, size_t buflen); void wpa_auth_countermeasures_start(struct wpa_authenticator *wpa_auth); int wpa_auth_pairwise_set(struct wpa_state_machine *sm); +int wpa_auth_get_pairwise(struct wpa_state_machine *sm); int wpa_auth_sta_key_mgmt(struct wpa_state_machine *sm); int wpa_auth_sta_wpa_version(struct wpa_state_machine *sm); int wpa_auth_sta_clear_pmksa(struct wpa_state_machine *sm,