NdisIfAllocateNetLuidIndex 函数 (ndis.h)
NdisIfAllocateNetLuidIndex 函数为 NDIS 网络接口提供程序分配NET_LUID索引。
语法
NDIS_STATUS NdisIfAllocateNetLuidIndex(
NET_IFTYPE ifType,
[out] PUINT32 pNetLuidIndex
);
参数
ifType
Internet 分配号码机构 (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索引记录在永久性存储中,以便即使在计算机重启后,索引也能与同一接口保持关联。 在接口提供程序调用 NdisIfFreeNetLuidIndex 函数以释放索引之前,NDIS 不会向 NdisIfAllocateNetLuidIndex 的未来调用方分配相同的 NET_LUID 索引。
若要从 NET_LUID 索引和接口类型生成NET_LUID值,接口提供程序调用 NDIS_MAKE_NET_LUID 宏。
接口提供程序必须将其分配的NET_LUID值存储在永久性存储中。 例如,如果计算机电源丢失,提供程序应将NET_LUID值存储在持久存储中,以便以后可以调用 NdisIfFreeNetLuidIndex ,以释放不再使用的任何索引。 此外,每当提供程序向 注册相同的接口时,应使用相同的NET_LUID值 NdisIfRegisterInterface 函数。
要求
要求 | 值 |
---|---|
最低受支持的客户端 | 在 NDIS 6.0 及更高版本中受支持。 |
目标平台 | 桌面 |
标头 | ndis.h (包括 Ndis.h) |
Library | Ndis.lib |
IRQL | PASSIVE_LEVEL |
DDI 符合性规则 | Irql_Interfaces_Function (ndis) |