Native 802.11 IHV Extensibility functions

Important

The Native 802.11 Wireless LAN interface is deprecated in Windows 10 and later. Please use the WLAN Device Driver Interface (WDI) instead. For more information about WDI, see WLAN Universal Windows driver model.

The Native 802.11 IHV Extensibility functions are provided by the operating system and are called by the IHV Extensions DLL to do the following:

  • Allocate and free buffers that are used within the Native 802.11 framework.
  • Send packets, such as a packet defined by an authentication algorithm, through the IHV's wireless LAN (WLAN) adapter.
  • Configure the IHV's WLAN adapter with various security settings for any authentication and cipher algorithms supported by the IHV Extensions DLL.
  • Interface with the IHV UI Extensions DLL (if installed) to process event notifications. For example, the IHV Extensions DLL could notify the IHV UI Extensions DLL about the various stages involved in a basic service set (BSS) network connection.

For more information about the IHV UI Extensions DLL, see Native 802.11 IHV UI Extensions DLL.

Note

The IHV Extensions DLL calls each Native 802.11 IHV Extensibility function through a function pointer associated with a member of the DOT11EXT_APIS structure. When the operating system calls the Dot11ExtIhvInitService IHV Handler function, it passes the list of pointers to the IHV Extensibility functions through the pDot11ExtAPI parameter.

The following table lists the Native 802.11 IHV Extensibility Functions that can be called by the IHV Extensions DLL. Each IHV Extensibility function can only be called under these conditions.

  • Called After Service Initialization
    The IHV Extensibility function can only be called after the Dot11ExtIhvInitService IHV Handler function has been called to initialize the IHV Extensions DLL. Also, the Extensions DLL cannot call the IHV Extensibility function after the Dot11ExtIhvDeinitService IHV Handler function has been called.
  • Called after Adapter Initialization
    The IHV Extensibility function can only be called after the Dot11ExtIhvInitAdapter IHV Handler function has been called to initialize the interface to the IHV's WLAN adapter.
    The IHV Extensibility function requires a handle, which identifies the WLAN adapter. When Dot11ExtIhvInitAdapter is called, the IHV Extensions DLL is passed this handle through the hDot11SvcHandle parameter.
    The Extensions DLL cannot call the IHV Extensibility function after the Dot11ExtIhvDeinitAdapter IHV Handler function has been called.
  • Called after Pre-Association
    The IHV Extensibility function can only be called after the Dot11ExtIhvPerformPreAssociate IHV Handler function has been called to initiate a pre-association operation with a basic service set (BSS) network.
    The IHV Extensibility function requires a handle, which identifies the BSS network connection. When Dot11ExtIhvPerformPreAssociate is called, the IHV Extensions DLL is passed this handle through the hConnection parameter.
    The Extensions DLL cannot call the IHV Extensibility function after the Dot11ExtIhvDeinitAdapter or Dot11ExtIhvAdapterReset IHV Handler functions have been called.
  • Called after Post-Association
    The IHV Extensibility function can only be called after the Dot11ExtIhvPerformPostAssociate IHV Handler function has been called to initiate a post-association operation with a basic service set (BSS) network.
    The IHV Extensibility function requires a handle, which identifies the security session with the BSS network connection. When Dot11ExtIhvPerformPostAssociate is called, the IHV Extensions DLL is passed this handle through the hSecuritySessionID parameter.
    The Extensions DLL cannot call the IHV Extensibility function after the Dot11ExtIhvDeinitAdapter or Dot11ExtIhvAdapterReset IHV Handler functions have been called.
Function Called after service initialization Called after adapter initialization Called after pre-association Called after post-association
Dot11ExtAllocateBuffer X
Dot11ExtFreeBuffer X
Dot11ExtGetProfileCustomUserData X
Dot11ExtNicSpecificExtension X
Dot11ExtStartOneX X
Dot11ExtStopOneX X
Dot11ExtPostAssociateCompletion X
Dot11ExtPreAssociateCompletion X
Dot11ExtProcessOneXPacket X
Dot11ExtQueryVirtualStationProperties X
Dot11ExtReleaseVirtualStation X
Dot11ExtRequestVirtualStation X
Dot11ExtSendNotification X
Dot11ExtSendUIRequest X
Dot11ExtSetAuthAlgorithm X
Dot11ExtSetCurrentProfile X
Dot11ExtSetDefaultKey X
Dot11ExtSetDefaultKeyId X
Dot11ExtSetEtherTypeHandling X
Dot11ExtSetExcludeUnencrypted X
Dot11ExtSetKeyMappingKey X
Dot11ExtSetMulticastCipherAlgorithm X
Dot11ExtSetProfileCustomUserData X
Dot11ExtSetUnicastCipherAlgorithm X
Dot11ExtSetVirtualStationAPProperties X

For more information about IHV Handler functions, see Native 802.11 IHV Handler Functions.