PROTOCOL_CL_NOTIFY_CLOSE_AF función de devolución de llamada (ndis.h)
La función ProtocolClNotifyCloseAf notifica a un cliente CoNDIS que el cliente debe cerrar la familia de direcciones asociada (AF).
Sintaxis
PROTOCOL_CL_NOTIFY_CLOSE_AF ProtocolClNotifyCloseAf;
NDIS_STATUS ProtocolClNotifyCloseAf(
[in] NDIS_HANDLE ClientAfContext
)
{...}
Parámetros
[in] ClientAfContext
Identificador proporcionado por el cliente a su área de contexto para el AF asociado. El cliente asignó este área de contexto y pasó este identificador a NDIS en su llamada a . Función NdisClOpenAddressFamilyEx .
Valor devuelto
ProtocolClNotifyCloseAf puede devolver una de las siguientes opciones:
Código devuelto | Descripción |
---|---|
|
El cliente cerró correctamente la familia de direcciones. |
|
El cliente controla esta solicitud de forma asincrónica y llamará a . Función NdisClNotifyCloseAddressFamilyComplete cuando se completa la operación de cierre. |
|
El cliente produjo un error en la solicitud por algún motivo determinado por el controlador. |
Comentarios
TheLa función ProtocolClNotifyCloseAf es necesaria para los clientes de CoNDIS. NDIS llama a ProtocolClNotifyCloseAf cuando un administrador de llamadas notifica a NDIS que la familia de direcciones (AF) que especifica el parámetro ProtocolAfContext debe cerrarse. En respuesta, el cliente debe:
- Llame a la función NdisClDropParty tantas veces como sea necesario hasta que solo una sola entidad permanezca activa en cada conexión virtual de varios puntos (VC), si el cliente tiene conexiones multipunto activas.
- Llame a la función NdisClCloseCall tantas veces como sea necesario para cerrar todas las llamadas que todavía están abiertas y están asociadas al AF.
- Llame a la función NdisClDeregisterSap tantas veces como sea necesario para anular el registro de todos los puntos de acceso de servicio (SAP) que el cliente ha registrado con el administrador de llamadas.
- Llamar a Función NdisClCloseAddressFamily para cerrar el AF.
NDIS llama a ProtocolClNotifyCloseAf en IRQL <= DISPATCH_LEVEL.
El cliente puede usar NdisAfHandle mientras el AF está abierto o mientras un La operación ProtocolClNotifyCloseAf está pendiente. Si el parámetro La función ProtocolClNotifyCloseAf devuelve NDIS_STATUS_PENDING, use el identificador en . NdisClNotifyCloseAddressFamilyComplete llamada después de que se complete la operación de cierre.
Ejemplos
Para definir una función ProtocolClNotifyCloseAf , primero debe proporcionar una declaración de función que identifique el tipo de función que va a definir. Windows proporciona un conjunto de tipos de función para controladores. Declarar una función mediante los tipos de función ayuda a Code Analysis for Drivers, Static Driver Verifier (SDV) y otras herramientas de comprobación a encontrar errores y es un requisito para escribir controladores para el sistema operativo Windows.Por ejemplo, para definir una función ProtocolClNotifyCloseAf denominada "MyClNotifyCloseAf", use el tipo PROTOCOL_CL_NOTIFY_CLOSE_AF como se muestra en este ejemplo de código:
PROTOCOL_CL_NOTIFY_CLOSE_AF MyClNotifyCloseAf;
A continuación, implemente la función de la siguiente manera:
_Use_decl_annotations_
NDIS_STATUS
MyClNotifyCloseAf(
NDIS_HANDLE ProtocolAfContext
)
{...}
El tipo de función PROTOCOL_CL_NOTIFY_CLOSE_AF se define en el archivo de encabezado Ndis.h. Para identificar con más precisión los errores al ejecutar las herramientas de análisis de código, asegúrese de agregar la anotación Use_decl_annotations a la definición de función. La anotación Use_decl_annotations garantiza que se usen las anotaciones que se aplican al tipo de función PROTOCOL_CL_NOTIFY_CLOSE_AF en el archivo de encabezado. Para obtener más información sobre los requisitos de las declaraciones de función, consulte Declaración de funciones mediante el uso de tipos de roles de función para controladores NDIS.
Para obtener información sobre Use_decl_annotations, consulte Anotación del comportamiento de la función.
Requisitos
Requisito | Value |
---|---|
Cliente mínimo compatible | Se admite en NDIS 6.0 y versiones posteriores. |
Plataforma de destino | Windows |
Encabezado | ndis.h (incluya Ndis.h) |
IRQL | <= DISPATCH_LEVEL |