执行关联后的操作
当无线 LAN (WLAN) 适配器成功完成与接入点 (AP) 的 802.11 关联操作时,Native 802.11 微型端口驱动程序将通过发出 NDIS_STATUS_DOT11_ASSOCIATION_COMPLETION 指示来通知操作系统。 有关关联操作的详细信息,请参阅 关联操作。
注意 对于 Windows Vista,IHV 扩展 DLL 仅支持基础结构基本服务集 (BSS) 网络。
操作系统收到NDIS_STATUS_DOT11_ASSOCIATION_COMPLETION指示后,它会调用 Dot11ExtIhvPerformPostAssociate 函数来通知 IHV 扩展 DLL:
为与 AP 的关联创建新的数据端口。 IHV 扩展 DLL 通过 Dot11ExtIhvPerformPostAssociate 函数的 pPortState 参数传递数据端口的当前状态。 有关端口状态参数的详细信息,请参阅 DOT11_PORT_STATE。
无线 LAN (WLAN) 适配器与 AP 之间的关联参数。 IHV 扩展 DLL 通过 Dot11ExtIhvPerformPostAssociate 函数的 pDot11AssocParams 参数传递关联参数。 有关关联参数的详细信息,请参阅 DOT11_ASSOCIATION_COMPLETION_PARAMETERS。
调用 Dot11ExtIhvPerformPostAssociate 时,IHV 扩展 DLL 会启动与 AP 的关联后操作,以对数据端口进行身份验证。 通过此操作,IHV 扩展 DLL 可以执行以下操作:
分配新数据端口所需的任何资源。
对关联的数据端口执行专有安全处理。 IHV 扩展 DLL 可以从 Dot11ExtIhvPerformPostAssociate 函数的 pPortState 参数确定数据端口的当前状态。
调用 Dot11ExtSendUIRequest 函数以请求 IHV UI 扩展 DLL 以提示用户输入安全参数,例如用户的凭据。
使用通过 Dot11ExtSetAuthAlgorithm 启用的身份验证算法向 AP 进行身份验证。 IHV 扩展 DLL 在预关联操作期间调用 Dot11ExtSetAuthAlgorithm 。 有关此操作的详细信息,请参阅 预关联操作。
通过调用 Dot11ExtSendPacket 函数将安全数据包发送到 AP。
发送安全数据包后,操作将通过调用 Dot11ExtIhvSendPacketCompletion 函数通知 IHV 扩展 DLL。
有关发送安全数据包的详细信息,请参阅 发送操作。
从 AP 接收安全数据包。 操作系统为 WLAN 适配器接收的每个安全数据包调用 Dot11ExtIhvReceivePacket 函数。
每个收到的安全数据包都进行序列化,并按从 WLAN 适配器接收它们的顺序进行指示。 操作系统仅调用 Dot11ExtIhvReceivePacket 函数来指示接收的安全数据包,这些数据包与 IEEE EtherTypes 列表中的条目匹配,这些条目是由 IHV 扩展 DLL 通过调用 Dot11ExtSetEtherTypeHandling 函数指定的。
有关接收安全数据包的详细信息,请参阅 接收操作。
使用通过身份验证算法派生的加密密钥配置 WLAN 适配器。 可以调用以下 IHV 扩展性函数,将密码密钥下载到 WLAN 适配器。
将 WLAN 适配器配置为通过调用 Dot11ExtSetExcludeUnencrypted IHV 扩展性函数排除未加密的数据包。
对数据端口进行身份验证后,IHV 扩展 DLL 必须调用 Dot11ExtPostAssociateCompletion 来完成关联后操作。
下图显示了关联后操作期间涉及的步骤。
执行关联后操作时,IHV 扩展 DLL 必须遵循这些准则。
IHV 扩展 DLL 必须从对 Dot11ExtIhvPerformPostAssociate 的调用中异步调用 Dot11ExtPostAssociateCompletion。
完成关联后操作后,每当数据端口的身份验证状态更改时,IHV 扩展 DLL 都可以调用 Dot11ExtPostAssociateCompletion 。
如果调用 Dot11ExtIhvAdapterReset 函数,则 IHV 扩展 DLL 必须通过调用 Dot11ExtPostAssociateCompletion 取消所有挂起的关联后操作。 有关重置操作的详细信息,请参阅 802.11 WLAN 适配器重置。
如果调用 Dot11ExtIhvDeinitAdapter 函数,则 IHV 扩展 DLL 必须在内部取消所有挂起的关联后操作。 但是,它不得调用任何只能在适配器初始化后调用的 IHV 扩展性函数,包括 Dot11ExtPostAssociateCompletion。 有关 IHV 扩展性函数的详细信息,请参阅 本机 802.11 IHV 扩展性函数。