NdisIfAllocateNetLuidIndex 関数 (ndis.h)
NdisIfAllocateNetLuidIndex 関数は、NDIS ネットワーク インターフェイス プロバイダーのNET_LUIDインデックスを割り当てます。
構文
NDIS_STATUS NdisIfAllocateNetLuidIndex(
NET_IFTYPE ifType,
[out] PUINT32 pNetLuidIndex
);
パラメーター
ifType
インデックスのインターネット割り当て番号機関 (IANA) インターフェイス型。 たとえば、IF_TYPE_ETHERNET_CSMACD (6) は、任意のイーサネットに似たインターフェイスに割り当てられる IfType の値です。 インターフェイスの種類の一覧については、「 NDIS インターフェイスの種類」を参照してください。
[out] pNetLuidIndex
呼び出し元が指定した インデックス変数へのポインター NET_LUID 。 割り当てが成功した場合、 NdisIfAllocateNetLuidIndex は、割り当てられた 24 ビット NET_LUIDインデックス値にこの変数を設定します。
戻り値
NdisIfAllocateNetLuidIndex は 、次のいずれかの値を返します。
リターン コード | 説明 |
---|---|
|
操作は正常に完了しました。 |
|
リソースが不足しているため、操作に失敗しました。 |
注釈
NDIS インターフェイス プロバイダーは、 NdisIfAllocateNetLuidIndex 関数を呼び出して 、NET_LUID インデックスを割り当てます。 インターフェイス プロバイダーは、インターフェイス プロバイダーがインターフェイスを登録する前に、NET_LUID インデックスを割り当てる必要があります。
NdisIfAllocateNetLuidIndex は、ローカル コンピューターに固有で 、IfType パラメーターが指定するインターフェイスの種類に関連付けられている 24 ビット NET_LUID インデックスの割り当てを試みます。 NDIS は、コンピューターの再起動後もインデックスを同じインターフェイスに関連付けたままにできるように、永続的な記憶域にNET_LUIDインデックスを記録します。 NDIS は、インターフェイス プロバイダーが NdisIfFreeNetLuidIndex 関数を呼び出してインデックスを解放するまで、NdisIfAllocateNetLuidIndex の今後の呼び出し元に同じNET_LUID インデックスを割り当てません。
NET_LUID インデックスとインターフェイス型から NET_LUID 値を作成するには、インターフェイス プロバイダーが NDIS_MAKE_NET_LUID マクロを呼び出します。
インターフェイス プロバイダーは、割り当てるNET_LUID値を永続ストレージに格納する必要があります。 たとえば、コンピューターの電源が失われた場合、プロバイダーは、後で NdisIfFreeNetLuidIndex を呼び出して、使用されなくなったインデックスを解放できるように、NET_LUID値を永続ストレージに格納する必要があります。 また、プロバイダーは、同じインターフェイスを に登録するたびに、同じNET_LUID値を使用する必要があります。 NdisIfRegisterInterface 関数。
要件
要件 | 値 |
---|---|
サポートされている最小のクライアント | NDIS 6.0 以降でサポートされています。 |
対象プラットフォーム | デスクトップ |
Header | ndis.h (Ndis.h を含む) |
Library | Ndis.lib |
IRQL | PASSIVE_LEVEL |
DDI コンプライアンス規則 | Irql_Interfaces_Function(ndis) |