PROTOCOL_CM_NOTIFY_CLOSE_AF_COMPLETE função de retorno de chamada (ndis.h)

A função ProtocolCmNotifyCloseAfComplete indica que um cliente concluiu o fechamento de uma AF (família de endereços) que um gerenciador de chamadas autônomo ou um MCM (gerenciador de chamadas de miniporto) iniciou chamando o NdisCmNotifyCloseAddressFamily ou Função NdisMCmNotifyCloseAddressFamily , respectivamente.

Nota Você deve declarar a função usando o tipo PROTOCOL_CM_NOTIFY_CLOSE_AF_COMPLETE . Para obter mais informações, consulte a seção Exemplos a seguir.
 

Sintaxe

PROTOCOL_CM_NOTIFY_CLOSE_AF_COMPLETE ProtocolCmNotifyCloseAfComplete;

void ProtocolCmNotifyCloseAfComplete(
  [in] NDIS_HANDLE CallMgrAfContext,
  [in] NDIS_STATUS Status
)
{...}

Parâmetros

[in] CallMgrAfContext

Um identificador para a área de contexto af do gerenciador de chamadas que o gerenciador de chamadas forneceu ao NDIS na função ProtocolCmOpenAf .

[in] Status

Os clientes status finais para a notificação de fechamento do AF. O status pode ser um dos seguintes:

NDIS_STATUS_SUCCESS

O cliente fechou com êxito sua família de endereços.

NDIS_STATUS_XXX

O cliente falhou na solicitação por algum motivo determinado pelo driver.

Retornar valor

Nenhum

Comentários

A função ProtocolCmNotifyCloseAfComplete é necessária para gerenciadores de chamadas do CoNDIS.

Se um gerenciador de chamadas autônomo for desassociado de um adaptador de miniporto subjacente, o gerenciador de chamadas deverá chamar o Função NdisCmNotifyCloseAddressFamily antes de desassociar. Quando um MCM (gerenciador de chamadas de miniporto) interrompe um adaptador de miniporta, o MCM deve chamar o Função NdisMCmNotifyCloseAddressFamily .

Se NdisCmNotifyCloseAddressFamily ou NdisMCmNotifyCloseAddressFamily retornar NDIS_STATUS_PENDING, o NDIS chamará ProtocolCmNotifyCloseAfComplete depois que o cliente concluir a operação de fechamento do AF.

O NDIS chama ProtocolCmNotifyCloseAfComplete em IRQL <= DISPATCH_LEVEL.

Exemplos

Para definir uma função ProtocolCmNotifyCloseAfComplete , primeiro você deve fornecer uma declaração de função que identifique o tipo de função que você está definindo. O Windows fornece um conjunto de tipos de função para drivers. Declarar uma função usando os tipos de função ajuda a Análise de Código para Drivers, SDV ( Verificador de Driver Estático ) e outras ferramentas de verificação a encontrar erros e é um requisito para escrever drivers para o sistema operacional Windows.

Por exemplo, para definir uma função ProtocolCmNotifyCloseAfComplete chamada "MyCmNotifyCloseAfComplete", use o tipo PROTOCOL_CM_NOTIFY_CLOSE_AF_COMPLETE conforme mostrado neste exemplo de código:

PROTOCOL_CM_NOTIFY_CLOSE_AF_COMPLETE MyCmNotifyCloseAfComplete;

Em seguida, implemente sua função da seguinte maneira:

_Use_decl_annotations_
VOID
 MyCmNotifyCloseAfComplete(
    NDIS_HANDLE  CallMgrAfContext,
    NDIS_STATUS  Status
    )
  {...}

O tipo de função PROTOCOL_CM_NOTIFY_CLOSE_AF_COMPLETE é definido no arquivo de cabeçalho Ndis.h. Para identificar erros com mais precisão ao executar as ferramentas de análise de código, adicione a anotação Use_decl_annotations à sua definição de função. A anotação Use_decl_annotations garante que as anotações aplicadas ao tipo de função PROTOCOL_CM_NOTIFY_CLOSE_AF_COMPLETE no arquivo de cabeçalho sejam usadas. Para obter mais informações sobre os requisitos para declarações de função, consulte Declarando funções usando tipos de função de função para drivers NDIS.

Para obter informações sobre Use_decl_annotations, consulte Anotando o comportamento da função.

Requisitos

Requisito Valor
Cliente mínimo com suporte Com suporte no NDIS 6.0 e posterior.
Plataforma de Destino Windows
Cabeçalho ndis.h (inclua Ndis.h)
IRQL <= DISPATCH_LEVEL

Confira também

NdisCmNotifyCloseAddressFamily NdisMCmNotifyCloseAddressFamily

ProtocolCmOpenAf