PASN: Common wpas_pasn structure for initiator and responder
Make struct wpas_pasn common for both the initiator and the responder by adding required parameters for responder to the existing struct wpas_pasn. This makes both hostapd and wpa_supplicant share the same structure definitions in preparation for allowing PASN functionality to be built into a separate library. Signed-off-by: Jouni Malinen <quic_jouni@quicinc.com>
This commit is contained in:
parent
14b5ebce73
commit
bc9fbe1b24
3 changed files with 23 additions and 48 deletions
|
@ -16,6 +16,7 @@
|
|||
#include "common/ieee802_11_defs.h"
|
||||
#include "common/sae.h"
|
||||
#include "crypto/sha384.h"
|
||||
#include "pasn/pasn_common.h"
|
||||
|
||||
/* STA flags */
|
||||
#define WLAN_STA_AUTH BIT(0)
|
||||
|
@ -68,44 +69,6 @@ struct pending_eapol_rx {
|
|||
enum frame_encryption encrypted;
|
||||
};
|
||||
|
||||
enum pasn_fils_state {
|
||||
PASN_FILS_STATE_NONE = 0,
|
||||
PASN_FILS_STATE_PENDING_AS,
|
||||
PASN_FILS_STATE_COMPLETE
|
||||
};
|
||||
|
||||
struct pasn_fils_data {
|
||||
u8 state;
|
||||
u8 nonce[FILS_NONCE_LEN];
|
||||
u8 anonce[FILS_NONCE_LEN];
|
||||
u8 session[FILS_SESSION_LEN];
|
||||
u8 erp_pmkid[PMKID_LEN];
|
||||
|
||||
struct wpabuf *erp_resp;
|
||||
};
|
||||
|
||||
struct pasn_data {
|
||||
int akmp;
|
||||
int cipher;
|
||||
u16 group;
|
||||
bool secure_ltf;
|
||||
u8 trans_seq;
|
||||
u8 wrapped_data_format;
|
||||
size_t kdk_len;
|
||||
|
||||
u8 hash[SHA384_MAC_LEN];
|
||||
struct wpa_ptk ptk;
|
||||
struct crypto_ecdh *ecdh;
|
||||
|
||||
struct wpabuf *secret;
|
||||
#ifdef CONFIG_SAE
|
||||
struct sae_data sae;
|
||||
#endif /* CONFIG_SAE */
|
||||
#ifdef CONFIG_FILS
|
||||
struct pasn_fils_data fils;
|
||||
#endif /* CONFIG_FILS */
|
||||
};
|
||||
|
||||
struct sta_info {
|
||||
struct sta_info *next; /* next entry in sta list */
|
||||
struct sta_info *hnext; /* next entry in hash table list */
|
||||
|
@ -333,7 +296,7 @@ struct sta_info {
|
|||
#endif /* CONFIG_AIRTIME_POLICY */
|
||||
|
||||
#ifdef CONFIG_PASN
|
||||
struct pasn_data *pasn;
|
||||
struct wpas_pasn *pasn;
|
||||
#endif /* CONFIG_PASN */
|
||||
};
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue