Función NdisClOpenAddressFamilyEx (ndis.h)
La función NdisClOpenAddressFamilyEx registra una familia de direcciones (AF) asociada a un administrador de llamadas para un cliente orientado a la conexión.
Sintaxis
NDIS_STATUS NdisClOpenAddressFamilyEx(
[in] NDIS_HANDLE NdisBindingHandle,
[in] PCO_ADDRESS_FAMILY AddressFamily,
[in] NDIS_HANDLE ClientAfContext,
[out] PNDIS_HANDLE NdisAfHandle
);
Parámetros
[in] NdisBindingHandle
Identificador al que devuelve NdisOpenAdapterEx y que identifica la tarjeta de interfaz de red (NIC) de destino o el adaptador virtual del controlador inferior al que está enlazado el autor de la llamada.
[in] AddressFamily
Puntero a una estructura de CO_ADDRESS_FAMILY que describe el administrador de llamadas y af que se va a abrir.
Este puntero es un parámetro de entrada para el cliente. Función ProtocolCoAfRegisterNotify , que llama a NdisClOpenAddressFamilyEx.
[in] ClientAfContext
Identificador de un área de contexto residente proporcionada por el autor de la llamada en la que el cliente mantiene el estado de este AF después de que se haya abierto el AF. NDIS devuelve este identificador al cliente en todas las llamadas posteriores relativas a este AF si la llamada a NdisClOpenAddressFamilyEx se realiza correctamente.
[out] NdisAfHandle
Puntero a una variable proporcionada por el autor de la llamada en la que NdisClOpenAddressFamilyEx devuelve un identificador que representa la familia de direcciones recién abierta.
Valor devuelto
Cuando NdisClOpenAddressFamilyEx devuelve algo distinto de NDIS_STATUS_PENDING, el cliente debe realizar una llamada interna a su Función ProtocolClOpenAfCompleteEx . De lo contrario, NDIS llama a la función ProtocolClOpenAfCompleteEx del cliente cuando se completa esta operación.
Comentarios
Un cliente de CoNDIS llama a NdisClOpenAddressFamilyEx desde su La función ProtocolCoAfRegisterNotify , después de que el cliente compruebe el búfer de entrada al que apunta el parámetro AddressFamily para determinar si el cliente reconoce el administrador de llamadas y las direcciones registradas. NDIS reenvía la llamada del cliente de NdisClOpenAddressFamilyEx a la función ProtocolCmOpenAf del administrador de llamadas, lo que garantiza que el cliente haya pasado una estructura de AF válida.
Una llamada correcta a NdisClOpenAddressFamilyEx configura la comunicación desde el cliente a un administrador de llamadas. Después, el cliente puede prepararse para recibir llamadas entrantes mediante una llamada a la función NdisClRegisterSap . El cliente también puede configurar una conexión virtual (VC) llamando a la función NdisCoCreateVc para que pueda realizar una llamada saliente llamando a la función NdisClMakeCall .
Si se produce un error en la llamada del cliente a NdisClOpenAddressFamilyEx , el cliente debe llamar a la función NdisUnbindAdapter para solicitar a NDIS que libere su enlace al adaptador de miniport subyacente. De lo contrario, el cliente debe guardar el identificador que se devuelve en el parámetro NdisAfHandle . Este identificador identifica al administrador de llamadas al que se dirigen las solicitudes posteriores relativas a la familia de direcciones especificadas. El cliente debe tratar este identificador devuelto como una variable opaca, pasándolo sin modificar y sin interpretar en llamadas de función NdisXxx posteriores.
NDIS pasa el puntero del parámetro ClientAfContext a las funciones ProtocolClXxx registradas del cliente en todas las llamadas posteriores que afectan al AF hasta que el cliente llama a NdisClCloseAddressFamily con el mismo NdisAfHandle . Una vez cerrado el AF, el cliente puede liberar o reutilizar el almacenamiento que asignó en ClientAfContext .
Requisitos
Requisito | Value |
---|---|
Cliente mínimo compatible | Se admite en 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_Protocol_Driver_Function(ndis) |