Scroll to navigation

STRUCT IEEE80211_KEY(9) Advanced driver interface STRUCT IEEE80211_KEY(9)

NAME

struct_ieee80211_key_conf - key information

SYNOPSIS

struct ieee80211_key_conf {

void * drv_priv;
atomic64_t tx_pn;
u32 cipher;
u8 icv_len;
u8 iv_len;
u8 hw_key_idx;
u8 flags;
s8 keyidx;
u8 keylen;
u8 key[0]; };

MEMBERS

drv_priv

pointer for driver use

tx_pn

PN used for TX on non-TKIP keys, may be used by the driver as well if it needs to do software PN assignment by itself (e.g. due to TSO)

cipher

The key´s cipher suite selector.

icv_len

The ICV length for this key type

iv_len

The IV length for this key type

hw_key_idx

To be set by the driver, this is the key index the driver wants to be given when a frame is transmitted and needs to be encrypted in hardware.

flags

key flags, see enum ieee80211_key_flags.

keyidx

the key index (0-3)

keylen

key material length

key[0]

key material. For ALG_TKIP the key is encoded as a 256-bit (32 byte)

DESCRIPTION

This key information is given by mac80211 to the driver by the set_key callback in struct ieee80211_ops.

DATA BLOCK

- Temporal Encryption Key (128 bits) - Temporal Authenticator Tx MIC Key (64 bits) - Temporal Authenticator Rx MIC Key (64 bits)

AUTHOR

Johannes Berg <johannes@sipsolutions.net>

Author.

COPYRIGHT

April 2023 Kernel Hackers Manual 2.6.