mirror of
https://github.com/espressif/esp-idf.git
synced 2026-09-22 13:01:16 +03:00
docs(nan): document group-protection fields, CSID ciphers and NIRA
Refresh stale/missing documentation now that the features are implemented: - group_data_prot / group_mgmt_prot in wifi_nan_discovery_security_params_t (esp_wifi_types_generic.h) and wifi_nan_security_params_t (esp_private/ wifi.h): describe GTKSA / IGTKSA+BIGTKSA instead of "not supported". - CSID enum: document NCS-GTK-CCM-128 (set internally via group_data_prot, not user-selectable) and NCS-PK-PASN-128 (NAN Pairing, via the Wi-Fi Aware component). - Drop "dummy" from the esp_nan_construct_nira() doc (it builds a real NIRA) and a stale "IGTK/BIGTK are placeholders" comment.
This commit is contained in:
@@ -67,8 +67,8 @@ typedef struct {
|
||||
uint16_t csid_bitmap; /**< Selected Cipher Suite ID bit (WIFI_NAN_CSID_BIT_*) */
|
||||
uint8_t nd_pmk[ESP_WIFI_NAN_NDP_PMK_LEN]; /**< ND-PMK */
|
||||
uint8_t nd_pmkid[ESP_WIFI_NAN_NDP_PMKID_LEN]; /**< ND-PMKID */
|
||||
uint8_t group_data_prot: 1; /**< Group addressed data frame protection. Reserved: not supported right now. */
|
||||
uint8_t group_mgmt_prot: 1; /**< Group addressed management frame protection. Reserved: not supported right now. */
|
||||
uint8_t group_data_prot: 1; /**< Group addressed data frame protection (GTKSA): distribute a GTK on the secured NDP so multicast data frames are protected. */
|
||||
uint8_t group_mgmt_prot: 1; /**< Group addressed management frame protection (IGTKSA/BIGTKSA): BIP-protect multicast SDFs and Beacons. */
|
||||
uint8_t reserved: 6; /**< Reserved */
|
||||
} wifi_nan_security_params_t;
|
||||
|
||||
@@ -1209,7 +1209,7 @@ esp_err_t esp_wifi_disconnect_internal(void);
|
||||
uint32_t esp_nan_get_nira_len(void);
|
||||
|
||||
/**
|
||||
* @brief Construct dummy NAN Identity Resolution Attribute (NIRA)
|
||||
* @brief Construct NAN Identity Resolution Attribute (NIRA)
|
||||
*
|
||||
* @param[out] frm Buffer to write the attribute to
|
||||
*
|
||||
|
||||
@@ -933,9 +933,9 @@ typedef enum {
|
||||
WIFI_NAN_CSID_NCS_SK_256 = 2, /**< NCS-SK-256 (PSK/Passphrase). Reserved: not supported right now. */
|
||||
WIFI_NAN_CSID_NCS_PK_2WDH_128 = 3, /**< NCS-PK-2WDH-128. Reserved: not supported right now. */
|
||||
WIFI_NAN_CSID_NCS_PK_2WDH_256 = 4, /**< NCS-PK-2WDH-256. Reserved: not supported right now. */
|
||||
WIFI_NAN_CSID_NCS_GTK_CCM_128 = 5,
|
||||
WIFI_NAN_CSID_NCS_GTK_GCM_256 = 6,
|
||||
WIFI_NAN_CSID_NCS_PK_PASN_128 = 7, /**< NCS-PK-PASN-128. Reserved: not supported right now. */
|
||||
WIFI_NAN_CSID_NCS_GTK_CCM_128 = 5, /**< Group-data cipher (GTKSA). Selected internally when group_data_prot is set; not user-selectable via csid_bitmap. */
|
||||
WIFI_NAN_CSID_NCS_GTK_GCM_256 = 6, /**< Reserved: not supported right now. */
|
||||
WIFI_NAN_CSID_NCS_PK_PASN_128 = 7, /**< NCS-PK-PASN-128 (NAN Pairing). Requires CONFIG_ESP_WIFI_NAN_PAIRING and the Wi-Fi Aware component (esp-wifi-apps); not usable with stand-alone ESP-IDF. */
|
||||
WIFI_NAN_CSID_NCS_PK_PASN_256 = 8, /**< NCS-PK-PASN-256. Reserved: not supported right now. */
|
||||
} wifi_nan_cipher_suite_id_t;
|
||||
|
||||
@@ -975,8 +975,8 @@ typedef struct {
|
||||
* is computed by the stack as the union of each credential's @c csid.
|
||||
*/
|
||||
typedef struct {
|
||||
uint8_t group_data_prot: 1; /**< Group addressed data frame protection. Reserved: not supported right now. */
|
||||
uint8_t group_mgmt_prot: 1; /**< Group addressed management frame protection. Reserved: not supported right now. */
|
||||
uint8_t group_data_prot: 1; /**< Group addressed data frame protection (GTKSA): distribute a GTK on the secured NDP so multicast data frames are protected. */
|
||||
uint8_t group_mgmt_prot: 1; /**< Group addressed management frame protection (IGTKSA/BIGTKSA): BIP-protect multicast SDFs and Beacons. */
|
||||
uint8_t reserved: 6; /**< Reserved */
|
||||
uint8_t num_credentials; /**< Number of valid entries in @c creds (0..ESP_WIFI_NAN_MAX_CREDS_PER_SVC). 0 = open service. */
|
||||
wifi_nan_credential_t creds[ESP_WIFI_NAN_MAX_CREDS_PER_SVC]; /**< Credentials list. */
|
||||
|
||||
@@ -645,7 +645,7 @@ static int nan_build_rsna_key_descriptor(uint8_t *kd, uint16_t key_info_flags,
|
||||
* Group Key Data (GTK/IGTK/BIGTK KDEs) — Wi-Fi Aware v4.0 §7.1.3.2/§7.1.3.5/
|
||||
* §9.5.21.5. Initiator distributes in M3, responder in M4; KDEs are always
|
||||
* KEK-wrapped (NIST AES Key Wrap), never in clear. Structure mirrors hostap
|
||||
* src/nan/nan_sec.c nan_sec_add_kdes(); IGTK/BIGTK are placeholders for now.
|
||||
* src/nan/nan_sec.c nan_sec_add_kdes().
|
||||
*-----------------------------------------------------------------------*/
|
||||
|
||||
/* True if a GTKSA was negotiated for this NDP. gtk_required is the explicit
|
||||
|
||||
Reference in New Issue
Block a user