Compartilhar via


Função NdisCmDispatchIncomingCloseCall (ndis.h)

NdisCmDispatchIncomingCloseCall informa a um cliente para derrubar uma chamada ativa ou oferecida, geralmente porque o gerenciador de chamadas recebeu uma solicitação da rede para fechar a conexão.

Sintaxe

void NdisCmDispatchIncomingCloseCall(
  [in]           NDIS_STATUS CloseStatus,
  [in]           NDIS_HANDLE NdisVcHandle,
  [in, optional] PVOID       Buffer,
  [in]           UINT        Size
);

Parâmetros

[in] CloseStatus

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

[in] NdisVcHandle

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 gerenciador de chamadas ou pelo cliente, com NdisCoCreateVc.

[in, optional] Buffer

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

[in] Size

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 CM autônomo chama NdisCmDispatchIncomingCloseCall com o CloseStatus definido como NDIS_STATUS_SUCCESS porque o cliente correspondente no nó remoto chamou NdisClCloseCall.

No entanto, um gerenciador de chamadas também pode chamar NdisCmDispatchIncomingCloseCall se ocorrer um dos seguintes procedimentos:

  • O gerenciador de chamadas notificou um cliente de uma oferta de chamada de entrada. Quando o CM'sA 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 NdisCmDispatchIncomingCloseCall.
  • Condições de rede anormais forçam o gerenciador de chamadas a derrubar chamadas ativas. Por exemplo, se o gerenciador de chamadas for notificado quando qualquer link na conexão entre esse cliente e a parte remota com a conexão ficar inoperante, o CM chamará NdisCmDispatchIncomingCloseCall para impedir que o cliente tente (ou espera) novas transferências de dados em uma conexão tão interrompida.
Depois de derrubar qualquer chamada, o criador original da VC é responsável por chamar NdisCoDeleteVc depois de liberar todos os recursos adicionais associados à VC.

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

Somente os gerentes de chamadas autônomos, que se registram no NDIS como drivers de protocolo, podem chamar NdisCmDispatchIncomingCloseCall. Drivers de miniporto orientados para conexão que fornecem chamada de suporte ao gerenciamento de chamadasEm vez disso , NdisMCmDispatchIncomingCall.

Requisitos

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

Confira também

NdisClCloseCall

NdisCmDispatchIncomingDropParty

NdisCoDeleteVc

NdisMCmDispatchIncomingCloseCall

ProtocolClIncomingCloseCall

ProtocolCoReceiveNetBufferLists

ProtocolCoStatusEx