VSF Documented
vsf_wifi_wpa.c File Reference
#include "./vsf_wifi.h"
#include "./vsf_wifi_priv.h"
#include "./vsf_wifi_wpa.h"
#include "./vsf_wifi_crypto.h"
#include <string.h>
#include <stdlib.h>

Macros

#define EAPOL_TYPE_OFF   1 /* 802.1X packet type (3 = Key) */
 
#define EAPOL_BODYLEN_OFF   2 /* 802.1X length (BE) */
 
#define EK_DESCTYPE_OFF   4 /* 2 = RSN, 254 = WPA */
 
#define EK_KEYINFO_OFF   5 /* key information (BE) */
 
#define EK_KEYLEN_OFF   7 /* pairwise key length (BE) */
 
#define EK_REPLAY_OFF   9 /* replay counter (8) */
 
#define EK_NONCE_OFF   17 /* key nonce (32) */
 
#define EK_MIC_OFF   81 /* key MIC (16) */
 
#define EK_KEYDATALEN_OFF   97 /* key data length (BE) */
 
#define EK_KEYDATA_OFF   99 /* key data */
 
#define EK_HDR_LEN   99 /* fixed length before key data */
 
#define EAPOL_TYPE_KEY   0x03
 
#define KI_VERSION_MASK   0x0007 /* 2 = HMAC-SHA1-128 / AES (CCMP) */
 
#define KI_KEYTYPE_PAIRWISE   0x0008
 
#define KI_INSTALL   0x0040
 
#define KI_ACK   0x0080
 
#define KI_MIC   0x0100
 
#define KI_SECURE   0x0200
 
#define KI_ENCRYPTED   0x1000
 
#define KI_VERSION_AES   2
 
#define KI_M2   (KI_VERSION_AES | KI_KEYTYPE_PAIRWISE | KI_MIC)
 
#define KI_M4   (KI_VERSION_AES | KI_KEYTYPE_PAIRWISE | KI_MIC | KI_SECURE)
 
#define KI_G2   (KI_VERSION_AES | KI_MIC | KI_SECURE)
 
#define __WPA_STEP_TIMEOUT_MS   1000
 
#define __WPA_BUF_MAX   256
 

Functions

void vsf_wifi_eapol_rx (vsf_wifi_t *wifi, const uint8_t *eapol, uint16_t len)
 

Macro Definition Documentation

◆ EAPOL_TYPE_OFF

#define EAPOL_TYPE_OFF   1 /* 802.1X packet type (3 = Key) */

◆ EAPOL_BODYLEN_OFF

#define EAPOL_BODYLEN_OFF   2 /* 802.1X length (BE) */

◆ EK_DESCTYPE_OFF

#define EK_DESCTYPE_OFF   4 /* 2 = RSN, 254 = WPA */

◆ EK_KEYINFO_OFF

#define EK_KEYINFO_OFF   5 /* key information (BE) */

◆ EK_KEYLEN_OFF

#define EK_KEYLEN_OFF   7 /* pairwise key length (BE) */

◆ EK_REPLAY_OFF

#define EK_REPLAY_OFF   9 /* replay counter (8) */

◆ EK_NONCE_OFF

#define EK_NONCE_OFF   17 /* key nonce (32) */

◆ EK_MIC_OFF

#define EK_MIC_OFF   81 /* key MIC (16) */

◆ EK_KEYDATALEN_OFF

#define EK_KEYDATALEN_OFF   97 /* key data length (BE) */

◆ EK_KEYDATA_OFF

#define EK_KEYDATA_OFF   99 /* key data */

◆ EK_HDR_LEN

#define EK_HDR_LEN   99 /* fixed length before key data */

◆ EAPOL_TYPE_KEY

#define EAPOL_TYPE_KEY   0x03

◆ KI_VERSION_MASK

#define KI_VERSION_MASK   0x0007 /* 2 = HMAC-SHA1-128 / AES (CCMP) */

◆ KI_KEYTYPE_PAIRWISE

#define KI_KEYTYPE_PAIRWISE   0x0008

◆ KI_INSTALL

#define KI_INSTALL   0x0040

◆ KI_ACK

#define KI_ACK   0x0080

◆ KI_MIC

#define KI_MIC   0x0100

◆ KI_SECURE

#define KI_SECURE   0x0200

◆ KI_ENCRYPTED

#define KI_ENCRYPTED   0x1000

◆ KI_VERSION_AES

#define KI_VERSION_AES   2

◆ KI_M2

#define KI_M2   (KI_VERSION_AES | KI_KEYTYPE_PAIRWISE | KI_MIC)

◆ KI_M4

#define KI_M4   (KI_VERSION_AES | KI_KEYTYPE_PAIRWISE | KI_MIC | KI_SECURE)

◆ KI_G2

#define KI_G2   (KI_VERSION_AES | KI_MIC | KI_SECURE)

◆ __WPA_STEP_TIMEOUT_MS

#define __WPA_STEP_TIMEOUT_MS   1000

◆ __WPA_BUF_MAX

#define __WPA_BUF_MAX   256

Function Documentation

◆ vsf_wifi_eapol_rx()

void vsf_wifi_eapol_rx ( vsf_wifi_t * wifi,
const uint8_t * eapol,
uint16_t len )
Generated from commit: vsfteam/vsf@d3b40b2