Función NdisIfAllocateNetLuidIndex (ndis.h)
La función NdisIfAllocateNetLuidIndex asigna un índice de NET_LUID para un proveedor de interfaz de red NDIS.
Sintaxis
NDIS_STATUS NdisIfAllocateNetLuidIndex(
NET_IFTYPE ifType,
[out] PUINT32 pNetLuidIndex
);
Parámetros
ifType
El tipo de interfaz De autoridad de números asignados a Internet (IANA) para un índice. Por ejemplo, IF_TYPE_ETHERNET_CSMACD (6) es el valor de IfType asignado a cualquier interfaz similar a Ethernet. Para obtener una lista de tipos de interfaz, consulte Tipos de interfaz NDIS.
[out] pNetLuidIndex
Puntero a una variable de índice NET_LUID proporcionada por el autor de la llamada. Si la asignación se realiza correctamente, NdisIfAllocateNetLuidIndex establece esta variable en el valor de índice de NET_LUID de 24 bits asignado.
Valor devuelto
NdisIfAllocateNetLuidIndex devuelve uno de los siguientes valores:
Código devuelto | Descripción |
---|---|
|
La operación se ha completado correctamente. |
|
Error en la operación debido a recursos insuficientes. |
Comentarios
Los proveedores de interfaz NDIS llaman a la función NdisIfAllocateNetLuidIndex para asignar un índice NET_LUID . Un proveedor de interfaz debe asignar un índice de NET_LUID para que el proveedor de interfaz pueda registrar una interfaz.
NdisIfAllocateNetLuidIndex intenta asignar un índice de NET_LUID de 24 bits que es único para el equipo local y está asociado al tipo de interfaz que especifica el parámetro IfType . NDIS registra el índice de NET_LUID en el almacenamiento persistente para que el índice pueda permanecer asociado a la misma interfaz incluso después de que se reinicie el equipo. NDIS no asignará el mismo índice NET_LUID a futuros autores de llamadas de NdisIfAllocateNetLuidIndex hasta después de que el proveedor de interfaz llame a la función NdisIfFreeNetLuidIndex para liberar el índice.
Para compilar un valor de NET_LUID a partir del índice NET_LUID y el tipo de interfaz, un proveedor de interfaz llama a la macro NDIS_MAKE_NET_LUID .
El proveedor de interfaz debe almacenar los valores de NET_LUID que asigna en el almacenamiento persistente. Por ejemplo, si hay una pérdida de energía del equipo, el proveedor debe haber almacenado los valores de NET_LUID en el almacenamiento persistente para que pueda llamar a NdisIfFreeNetLuidIndex más adelante para liberar los índices que ya no están en uso. Además, el proveedor debe usar el mismo valor de NET_LUID cada vez que registra la misma interfaz con . Función NdisIfRegisterInterface .
Requisitos
Requisito | Value |
---|---|
Cliente mínimo compatible | Compatible con NDIS 6.0 y versiones posteriores. |
Plataforma de destino | Escritorio |
Encabezado | ndis.h (incluya Ndis.h) |
Library | Ndis.lib |
IRQL | PASSIVE_LEVEL |
Reglas de cumplimiento de DDI | Irql_Interfaces_Function(ndis) |