Compartir a través de


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).

Nota Debe declarar la función mediante el tipo PROTOCOL_CL_NOTIFY_CLOSE_AF . Para obtener más información, consulte la sección Ejemplos siguientes.
 

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
NDIS_STATUS_SUCCESS
El cliente cerró correctamente la familia de direcciones.
NDIS_STATUS_PENDING
El cliente controla esta solicitud de forma asincrónica y llamará a . Función NdisClNotifyCloseAddressFamilyComplete cuando se completa la operación de cierre.
NDIS_STATUS_XXX
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:

  1. 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.
  2. 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.
  3. 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.
  4. Llamar a Función NdisClCloseAddressFamily para cerrar el AF.
El cliente puede completar estas acciones de forma asincrónica devolviendo NDIS_STATUS_PENDING. Si el cliente completa la llamada de forma asincrónica, debe llamar posteriormente a . Función NdisClNotifyCloseAddressFamilyComplete cuando se completa la operación de cierre. Si el cliente no devuelve NDIS_STATUS_PENDING, la operación de cierre se completa cuando ProtocolClNotifyCloseAf devuelve.

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

Consulte también

NdisClCloseAddressFamily

NdisClCloseCall

NdisClDeregisterSap

NdisClDropParty

NdisClNotifyCloseAddressFamilyComplete

NdisClOpenAddressFamilyEx