Dot11ExtPostAssociateCompletion (Compact 7)
3/12/2014
The IHV Extensions DLL calls this function to asynchronously complete a post-association operation that was initiated by a call to the Dot11ExtIhvPerformPostAssociate IHV Handler function.
Syntax
DWORD WINAPI Dot11ExtPostAssociateCompletion(
HANDLE hDot11SvcHandle,
HANDLE hSecuritySessionID,
PDOT11_MAC_ADDRESS pPeer,
DWORD dwReasonCode,
DWORD dwWin32Error
);
Parameters
- hDot11SvcHandle
[in] The handle that is used by the operating system to reference the wireless LAN (WLAN) adapter. This handle value was specified through a previous call to the Dot11ExtIhvInitAdapter IHV Handler function.
- hSecuritySessionID
[in] The handle of the security session identifier (ID) that was returned through a previous call to the Dot11ExtIhvPerformPostAssociate IHV Handler function.
- pPeer
[in] The media access control (MAC) address of the access point (AP) with which the IHV Extensions DLL performed a security operation. This parameter is formatted as a DOT11_MAC_ADDRESS structure.
dwReasonCode
[in] A value that provides additional information for the completion status of the post-association operation. The IHV Extensions DLL must set dwReasonCode to an L2_REASON_CODE_xxxx value, which are defined in L2cmn.h.The IHV Extensions DLL returns the general completion status of the post-association operation through the dwWin32Error parameter. Typically, the IHV Extensions DLL sets dwReasonCode to a value within the range from L2_REASON_CODE_IHV_BASE to (L2_REASON_CODE_IHV_BASE+ L2_REASON_CODE_GROUP_SIZE-1).
- dwWin32Error
[in] The completion status of the post-association operation as defined by an error code within Winerror.h. If the operation completes successfully, the IHV Extensions DLL must set dwWin32Error to ERROR_SUCCESS.
Return Value
If the call succeeds, the function returns ERROR_SUCCESS. Otherwise, it returns an error code defined in Winerror.h.
Remarks
The IHV Extensions DLL calls the Dot11ExtPostAssociateCompletion function to do any of the following:
- Complete the post-association operation initiated by a call to the Dot11ExtIhvPerformPostAssociate IHV Handler function.
- After completing the post-association operation, indicate a change in the port state for the security session referenced by the hSecuritySessionID parameter.
For example, if the authorization state of the port changes, the IHV Extensions DLL can notify the operating system by calling Dot11ExtPostAssociateCompletion.
The IHV Extensions DLL must follow these guidelines when it calls the Dot11ExtPostAssociateCompletion function:
If the post-association operation completed successfully, the IHV Extensions DLL must set dwReasonCode to one of the following:
- L2_REASON_CODE_SUCCESS
- An IHV-defined value in the range from L2_REASON_CODE_IHV_BASE to (L2_REASON_CODE_IHV_BASE+ L2_REASON_CODE_GROUP_SIZE-1)
In this situation, the IHV Extensions DLL must set dwWin32Error to ERROR_SUCCESS.
Note
If the IHV Extensions DLL sets dwWin32Error to ERROR_SUCCESS, the operating system will assume that the port state for the security session is in an authorized state. After the port is in an authorized state, the operating system allows all data packets to be sent through the WLAN adapter.
If the post-association operation completed with a failure, the IHV Extensions DLL must not set dwReasonCode to L2_REASON_CODE_SUCCESS. Instead, the DLL must set dwReasonCode to one of the following:
An appropriate L2_REASON_CODE_xxxx error value
An IHV-defined value in the range from L2_REASON_CODE_IHV_BASE to (L2_REASON_CODE_IHV_BASE+ L2_REASON_CODE_GROUP_SIZE-1)
In this situation, the IHV Extensions DLL must not set dwWin32Error to ERROR_SUCCESS. Instead, the DLL must set dwWin32Error to an appropriate error code defined in Winerror.h.Note
If the IHV Extensions DLL does not set dwWin32Error to ERROR_SUCCESS, the operating system will assume the port state for the security session is in an unauthorized state. After the port is in an unauthorized state, the operating system allows security packets. This includes packets sent through the Dot11ExtSendPacket IHV Extensions function, to be sent through the WLAN adapter.
- The IHV Extensions DLL must call Dot11ExtPostAssociateCompletion to cancel all pending post-association operation whenever the Dot11ExtIhvAdapterReset or Dot11ExtIhvDeinitAdapter IHV Handler functions are called. In this situation, the DLL must set the dwStatus parameter to ERROR_CANCELLED.
Requirements
Header |
wlanihv.h |
See Also
Reference
Native 802.11 IHV Extensibility Functions
Dot11ExtIhvPerformPostAssociate
Dot11ExtIhvInitAdapter
Dot11ExtIhvAdapterReset
Dot11ExtIhvDeinitAdapter
Dot11ExtSendPacket
Native 802.11 IHV Handler Functions
Native 802.11 IHV Extensions DLL