802.11 WLAN アダプターの接続
オペレーティング システムは、IHV 拡張機能 DLL がインストールされているワイヤレス LAN (WLAN) アダプターを検出すると、Dot11ExtIhvInitAdapter IHV ハンドラー関数を呼び出します。 オペレーティング システムは、WLAN アダプターが使用可能になり、PCMCIA アダプターが挿入されたときなど、使用が有効になると、この関数を呼び出します。
Dot11ExtIhvInitAdapter 関数が呼び出されると、IHV 拡張機能 DLL は次の処理を行います。
WLAN アダプター コンテキスト データと、DLL が WLAN アダプターに必要とするリソースに配列を割り当てる。
IHV 拡張機能 DLL によって受信および使用されるセキュリティ パケットの IEEE EtherTypes の一覧を登録する。
IHV によって定義された独自の設定でアダプターを構成する。
IHV 拡張機能 DLL は、Dot11ExtIhvInitAdapter が呼び出されたときに、これらのガイドラインに従う必要があります。
hDot11SvcHandle パラメーターには、WLAN アダプターのオペレーティング システムによって割り当てられた一意のハンドル値が含まれています。 IHV 拡張機能 DLL は、このハンドル値を保存し、Dot11ExtSetKeyMappingKey などのアダプター固有の処理に関連する IHV 拡張機能関数の hDot11SvcHandle パラメーターに渡す必要があります。
通常、DLL は WLAN アダプター コンテキスト配列のメンバー内にこのハンドル値を保存します。
IHV 拡張 DLL は、phIhvExtAdapter パラメーターを使用して WLAN アダプターの一意のハンドル値を返す必要があります。 オペレーティング システムは、アダプター固有の処理 (Dot11ExtIhvReceiveIndication など) に関連する IHV ハンドラー関数の hIhvExtAdapter パラメーターにハンドル値を渡します。
通常、DLL は WLAN アダプター コンテキスト配列のアドレスをハンドル値として返します。
IHV 拡張機能 DLL は Dot11ExtSetEtherTypeHandling を呼び出して、DLL が受信するセキュリティ パケットの IEEE EtherTypes の一覧を登録します。 IHV 拡張機能 DLL では、ペイロードの暗号化解除から除外される EtherTypes の一覧を指定することもできます。 EtherTypes の登録の詳細については、「IEEE EtherType の処理」を参照してください。
EtherTypes が登録されると、オペレーティング システムは、EtherType が一覧内のエントリと一致するすべてのパケットに対して Dot11ExtIhvReceivePacket IHV ハンドラー関数を呼び出します。
オペレーティング システムは、ネイティブ 802.11 オブジェクト識別子 (OID) の set 要求を使用して、標準の 802.11 パラメーターを使用してアダプターを構成します。 これらの OID の詳細については、「ネイティブ 802.11 ワイヤレス LAN OID」を参照してください。
ただし、DLL は Dot11ExtNicSpecificExtension 関数を呼び出すことで、独自のパラメーターを使用してアダプターを構成できます。 この関数の呼び出しによって、DLL は、WLAN アダプターを管理したり、IHV によって定義された独自の形式に基づいてドライバーにクエリーや set 要求を発行したりする、ネイティブ 802.11 ミニポート ドライバーと直接通信できます。
DLL および WLAN アダプターが通信するインターフェイスの詳細については、「802.11 WLAN アダプターの通信チャネル」を参照してください。