Compartilhar via


Macro NdisMCmDispatchIncomingCloseCall (ndis.h)

NdisMCmDispatchIncomingCloseCall informa a um cliente para derrubar uma chamada ativa ou oferecida, geralmente porque o driver MCM recebeu uma solicitação da rede para fechar a conexão.

Sintaxe

void NdisMCmDispatchIncomingCloseCall(
   _S_,
   _H_,
   _B_,
   _Z_
);

Parâmetros

_S_

Especifica um NDIS_STATUS_XXX determinado pelo chamador, indicando o motivo da solicitação de desconexão. Durante operações de rede normais, um driver MCM passa NDIS_STATUS_SUCCESS para indicar que recebeu uma solicitação, iniciada pela parte remota, para fechar uma chamada ativa.

_H_

Especifica o identificador para a VC da chamada que está sendo desconectada. Esse identificador foi fornecido pelo NDIS quando a VC foi criada originalmente, seja pelo driver MCM com NdisMCmCreateVc ou como um parâmetro de entrada para sua função ProtocolCoCreateVc .

_B_

Ponteiro para um buffer residente alocado pelo chamador que contém dados de desconexão adicionais específicos do protocolo, se houver. Dependendo do meio subjacente, esse ponteiro pode ser NULL.

_Z_

Especifica o tamanho em bytes do buffer, zero se Buffer for NULL.

Retornar valor

Nenhum

Comentários

No curso de operações de rede normais, um driver MCM chama NdisMCmDispatchIncomingCloseCall com o CloseStatus definido como NDIS_STATUS_SUCCESS porque o cliente correspondente no nó remoto chamou NdisClCloseCall.

No entanto, um driver MCM também pode chamar NdisMCmDispatchIncomingCloseCall se ocorrer um dos seguintes procedimentos:

  • O driver MCM notificou um cliente de uma oferta de chamada de entrada. Quando o driver de miniporteA função ProtocolCmIncomingCallComplete é chamada com a aceitação do cliente e valida os parâmetros de chamada de entrada, que esse cliente modificou. ProtocolCmIncomingCallComplete determina que o cliente está propondo parâmetros de chamada não compatíveis para a conexão, portanto, ele chama NdisMCmDispatchIncomingCloseCall.
  • Condições de rede anormais forçam o driver MCM a derrubar chamadas ativas. Por exemplo, se o driver MCM for notificado quando qualquer link na conexão entre esse cliente e a parte remota da conexão ficar inoperante, o driver de miniporto chamará NdisCmDispatchIncomingCloseCall para impedir que o cliente tente (ou espera) novas transferências de dados em uma conexão tão interrompida.
Depois que o cliente chama NdisClCloseCall , causando assim a desativação da VC, o criador original da VC é responsável por destruir a VC. O cliente chama NdisCoDeleteVc, o que faz com que o NDIS chame a função ProtocolCoDeleteVc do driver MCM ou o driver MCM chama NdisMCmDeleteVc depois de chamar NdisMCmDeactivateVc e liberar quaisquer recursos adicionais associados à VC que ele criou.

Uma chamada para NdisMCmDispatchIncomingCloseCall faz com que o NDIS chame o cliente Função ProtocolClIncomingCloseCall .

Somente os drivers de miniporto orientados à conexão que fornecem suporte ao gerenciamento de chamadas podem chamar NdisMCmDispatchIncomingCall. Os gerentes de chamadas autônomos, que se registram no NDIS como drivers de protocolo, chamam NdisCmDispatchIncomingCloseCall .

Requisitos

Requisito Valor
Cliente mínimo com suporte Com suporte para drivers NDIS 6.0 e NDIS 5.1 (consulte NdisMCmDispatchIncomingCloseCall (NDIS 5.1)) no Windows Vista. Com suporte para drivers NDIS 5.1 (consulte NdisMCmDispatchIncomingCloseCall (NDIS 5.1)) no Windows XP.
Plataforma de Destino Área de Trabalho
Cabeçalho ndis.h (inclua Ndis.h)
IRQL <= DISPATCH_LEVEL
Regras de conformidade de DDI Irql_MCM_Function(ndis)

Confira também

MiniportInterruptDPC

NdisClCloseCall

NdisMCmDeactivateVc

NdisMCmDeleteVc

NdisMCmDispatchIncomingCall

NdisMCmDispatchIncomingDropParty

ProtocolClIncomingCloseCall

ProtocolCoDeleteVc