802.11 Miniport Driver Initialization

An 802.11 miniport driver's MiniportInitializefunction must follow the guidelines described in the NDIS Miniport Driver Initializationsection.

The 802.11 miniport driver's MiniportInitializefunction must also do the following:

  • As part of its 802.3 emulation, the driver must support the NdisMedium802_3 media type and must set the SelectedMediumIndex parameter to the index of that medium within the MediumArray parameter.

  • The driver must not associate with any infrastructure or ad hoc network within its MiniportInitialize function. A driver can only associate with a network after OID_802_11_SSID has been set.

  • To show that it is not associated, the driver must also call NdisMIndicateStatus to generate a media disconnect indication. This indication must be made shortly after MiniportInitialize returns.

  • The driver must default to a network mode of Ndis802_11AutoUnknown. It must not default to network modes of either infrastructure or ad hoc during initialization. For more information about network modes, see OID_802_11_INFRASTRUCTURE_MODE.

  • The driver must set its network type to Ndis802_11Automode and configure the device to function on all radios supported and enabled on the 802.11 NIC. For more information about network types, see OID_802_11_NETWORK_TYPE_IN_USE.

  • The driver must power on the radio, unless the radio was powered off through a proprietary configuration setting developed by the independent hardware vendor (IHV).

  • The driver must set its media streaming mode to Ndis802_11MediaStreamOff and disable media streaming on the device. For more information about media streaming modes, see OID_802_11_MEDIA_STREAM_MODE.

  • The driver must default to 802.11 open authentication and set its authentication mode to Ndis802_11AuthModeOpen. For more information about authentication modes, see OID_802_11_AUTHENTICATION_MODE.

  • The driver must set its encryption mode to the most secure cipher suite supported on the device. The following table defines the encryption mode the driver must use as its initialization default.

    Cipher suite Default encryption mode

    AES

    Ndis802_11Encryption3KeyAbsent

    TKIP

    Ndis802_11Encryption2KeyAbsent

    WEP

    Ndis802_11Encryption1Enabled

    NONE

    Ndis802_11EncryptionNotSupported

     

  • The device must not maintain encryption keys in permanent storage (disk, registry, flash, or other storage). During initialization, the driver must clear any cipher keys used by the device.

  • The driver must clear all statistical counters used for queries of OID_802_11_STATISTICS.

  • The driver must clear all cached lists used in scanning operations. These include the BSSID scan list and the non-broadcast SSID list.

  • The driver must clear its pairwise master key (PMK) cache.

In addition, it is recommended that the driver's MiniportInitializefunction use the following defaults, unless they are configured through proprietary registry settings:

  • Set its transmit and receive antennas to operate in full diversity.

  • Disable 802.11 fragmentation on the device.

  • Disable RTS for transmitted packets by setting its RTS threshold to 2347.

 

 

Send comments about this topic to Microsoft