Export (0) Print
Expand All
Expand Minimize

DOT11_CIPHER_DEFAULT_KEY_VALUE (Compact 2013)

3/26/2014

This structure defines a default cipher key or per-station default cipher key that will be added to or deleted from the key tables on the 802.11 station.


typedef struct DOT11_CIPHER_DEFAULT_KEY_VALUE {
  NDIS_OBJECT_HEADER  Header;
  ULONG  uKeyIndex;
  DOT11_CIPHER_ALGORITHM  AlgorithmId;
  DOT11_MAC_ADDRESS  MacAddr;
  BOOLEAN  bDelete;
  BOOLEAN  bStatic;
  USHORT  usKeyLength;
  UCHAR  ucKey[1];
} DOT11_CIPHER_DEFAULT_KEY_VALUE, *PDOT11_CIPHER_DEFAULT_KEY_VALUE;

Header

The type, revision, and size of the DOT11_CIPHER_DEFAULT_KEY structure. This member is formatted as an NDIS_OBJECT_HEADER structure.

The miniport driver must set the members of Header to the following values:

Type

This member must be set to NDIS_OBJECT_TYPE_DEFAULT

Revision

This member must be set to DOT11_CIPHER_DEFAULT_KEY_VALUE_REVISION_1

Size

This member must be set to sizeof(DOT11_CIPHER_DEFAULT_KEY_VALUE)

uKeyIndex

The index of the key in the 802.11 station’s default key array.

For standard 802.11 cipher algorithms, uKeyIndex must be from 0 through 3. For a cipher algorithm developed by an IHV, uKeyIndex can be any value within the range that is defined by the IHV.

The IEEE 802.11-1999 standard defines default key index values from 1 through 4. The value x specified by this member maps to the 802.11 default key index (x + 1).

AlgorithmId

The value of the cipher algorithm that uses this key. For more information about values for cipher algorithms, see DOT11_CIPHER_ALGORITHM.

The miniport driver must ignore this member if bDelete is TRUE.

MacAddr

The media access control (MAC) address, which identifies the default key table to add or remove the key.

If the dot11DesiredBSSType management information base (MIB) object is set to dot11_BSS_type_infrastructure, the 802.11 station adds or removes the key from the default key table regardless of the value of the MacAddr member. If the key is dynamically obtained from the access point (AP) the station is associated with, the MacAddr member will contain the AP’s MAC address. Otherwise, MacAddr will have a value of 0x000000000000.

If the dot11DesiredBSSType management information base (MIB) object is set to dot11_BSS_type_ independent, the 802.11 station must add or remove the key in the following way:

  • If the value of this member is 0x000000000000, the 802.11 station adds or removes the key from the default key table.
  • If the value of this member is a valid unicast MAC address, the 802.11 station adds or removes the key from the per-station default key table for the peer station in an independent BSS (IBSS) network that has a MAC address equal to the value of MacAddr.
  • If a per-station default key table does not exist for the value of MacAddr, the 802.11 station must use any unused per-station default key table.

For more information about the dot11DesiredBSSType MIB object, see OID_DOT11_DESIRED_BSS_TYPE.

bDelete

A Boolean value that specifies whether the miniport driver should delete the default key. If set to TRUE, the miniport driver must delete the default key that is referenced by uKeyIndex. If set to FALSE, the miniport driver must add or update the default key that is referenced by uKeyIndex.

bStatic

A Boolean value that specifies whether the miniport driver should delete the default key following a connection or roaming operation.

If set to FALSE, the miniport driver must delete the default key that is referenced by uKeyIndex when the 802.11 station:

  • Disconnects from the basic service set (BSS) network
  • Roams to a new BSS network
  • Reconnects to the same BSS network

If set to TRUE, the default key referenced by uKeyIndex must not be deleted unless it is:

usKeyLength

The length, in bytes, of the key material in the ucKey array

ucKey

The key material.

If AlgorithmId is set to DOT11_CIPHER_ALGO_TKIP, the ucKey array defines the key material through the DOT11_KEY_ALGO_TKIP_MIC structure.

If AlgorithmId is set to DOT11_CIPHER_ALGO_CCMP, the ucKey array defines the key material through the DOT11_KEY_ALGO_CCMP structure.

If the bDelete member is TRUE, the following members are not valid and must be ignored:

  • bStatic
  • usKeyLength
  • ucKey

Header

windot11.h

Show:
© 2014 Microsoft