Compartir a través de


Función NdisCmRegisterAddressFamilyEx (ndis.h)

La función NdisCmRegisterAddressFamilyEx registra una familia de direcciones (AF) para la comunicación entre controladores CoNDIS.

Sintaxis

NDIS_STATUS NdisCmRegisterAddressFamilyEx(
  [in] NDIS_HANDLE        NdisBindingHandle,
  [in] PCO_ADDRESS_FAMILY AddressFamily
);

Parámetros

[in] NdisBindingHandle

Identificador que NDIS proporcionó en el parámetro NdisBindingHandle de la función NdisOpenAdapterEx . Este identificador identifica el enlace que se va a asociar con af.

[in] AddressFamily

Puntero a una estructura de CO_ADDRESS_FAMILY que identifica el administrador de llamadas y el AF que admite para el enlace que especifica NdisBindingHandle .

El puntero de AddressFamily se convierte en un parámetro de entrada en el ProtocolCoAfRegisterNotify funciones de todos los clientes que están enlazados al mismo adaptador de miniporte de CoNDIS.

Valor devuelto

NdisCmRegisterAddressFamilyEx puede devolver cualquiera de las siguientes opciones:

Código devuelto Descripción
NDIS_STATUS_SUCCESS
El controlador de protocolo registró el AF al que apunta AddressFamily , por lo que NDIS llamará al ProtocolCoAfRegisterNotify funciones de todos los clientes que se enlazan al mismo adaptador de minipuerto.
NDIS_STATUS_RESOURCES
Error en la operación solicitada porque NDIS no pudo asignar memoria suficiente ni inicializar el estado que usa para realizar el seguimiento del administrador de llamadas o del AF especificado.
NDIS_STATUS_FAILURE
NDIS no pudo llamar a NdisCmRegisterAddressFamilyEx, posiblemente por uno de los siguientes motivos:
  • El autor de la llamada no se registró como controlador de protocolo orientado a la conexión.
  • El controlador de minipuerto al que está enlazado el autor de la llamada no se registró como un controlador de miniporte orientado a la conexión.
  • Otro administrador de llamadas ya ha registrado el AF especificado.
  • El enlace del autor de la llamada se está cerrando.

Comentarios

Administradores de llamadas independientes de NDIS, que se registran como controladores de protocolo NDIS mediante una llamada a La función NdisRegisterProtocolDriver debe llamar a la función NdisCmRegisterAddressFamilyEx para registrar un AF. En su lugar, los administradores de llamadas miniportar (MCM) deben llamar a Función NdisMCmRegisterAddressFamilyEx .

Para registrar un AF para un enlace, el administrador de llamadas independiente debe llamar a NdisCmRegisterAddressFamilyEx desde el Función ProtocolBindAdapterEx .

Una función ProtocolBindAdapterEx del administrador de llamadas independiente establece primero el enlace al controlador de miniport subyacente llamando a la función NdisOpenAdapterEx . Cada vez que NDIS llama a ProtocolBindAdapterEx con otro identificador en el parámetro BindContext , ProtocolBindAdapterEx establece un enlace y registra un AF que admite. En otras palabras, un administrador de llamadas independiente finalmente registra un AF para cada enlace en el que proporciona servicios de administración de llamadas a clientes orientados a conexiones.

El administrador de llamadas puede admitir más de un AF y puede admitir más de un AF para un único enlace. Sin embargo, solo un administrador de llamadas puede admitir un AF determinado para los clientes enlazados a un adaptador de minipuerto determinado.

Cuando la función ProtocolBindAdapterEx de un administrador de llamadas devuelve el control después de una operación de enlace correcta, NDIS llama a ProtocolCoAfRegisterNotify funciones de todos los clientes enlazados al mismo adaptador de minipuerto.

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_CallManager_Function(ndis)

Consulte también

CO_ADDRESS_FAMILY

NdisMCmRegisterAddressFamilyEx

NdisOpenAdapterEx

NdisRegisterProtocolDriver

ProtocolBindAdapterEx

ProtocolCoAfRegisterNotify