NdisCmDispatchIncomingCloseCall 함수(ndis.h)

NdisCmDispatchIncomingCloseCall 은 일반적으로 호출 관리자가 네트워크에서 연결을 닫기 위한 요청을 받았기 때문에 활성 또는 제공된 통화를 해제하도록 클라이언트에 지시합니다.

구문

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

매개 변수

[in] CloseStatus

연결 끊기 요청의 이유를 나타내는 CM 결정 NDIS_STATUS_XXX를 지정합니다. 정상적인 네트워크 작업 중에 통화 관리자는 NDIS_STATUS_SUCCESS 전달하여 원격 당사자가 시작한 요청을 수신했음을 나타내고 활성 통화를 닫습니다.

[in] NdisVcHandle

연결이 끊어지는 호출의 VC에 대한 핸들을 지정합니다. 이 핸들은 NdisCoCreateVc를 사용하여 호출 관리자 또는 클라이언트에서 VC를 원래 만들 때 NDIS에서 제공했습니다.

[in, optional] Buffer

추가 프로토콜별 연결 끊기 데이터가 포함된 호출자가 할당한 상주 버퍼에 대한 포인터입니다(있는 경우). 기본 매체에 따라 이 포인터는 NULL일 수 있습니다.

[in] Size

버퍼가 NULL인 경우 버퍼의 크기(바이트) 0으로 지정합니다.

반환 값

없음

설명

일반 네트워크 작업 과정에서 독립 실행형 CM은 원격 노드의 해당 클라이언트가 NdisCloseCall을 호출했기 때문에 CloseStatus가 NDIS_STATUS_SUCCESS 설정된 NdisCmDispatchIncomingCloseCall을 호출합니다.

그러나 호출 관리자는 다음 중 하나가 발생하는 경우 NdisCmDispatchIncomingCloseCall 을 호출할 수도 있습니다.

  • 호출 관리자가 들어오는 통화 제안의 클라이언트에 알림을 표시했습니다. CM의 경우 ProtocolCmIncomingCallComplete 함수는 클라이언트의 동의를 사용하여 호출되며, 클라이언트가 수정한 입력 호출 매개 변수의 유효성을 검사합니다. ProtocolCmIncomingCallComplete 는 클라이언트가 연결에 대해 지원되지 않는 호출 매개 변수를 제안하고 있음을 확인하므로 NdisCmDispatchIncomingCloseCall을 호출합니다.
  • 비정상적인 네트워크 조건으로 인해 호출 관리자가 활성 호출을 강제로 중단합니다. 예를 들어 이 클라이언트와 연결에 대한 원격 당사자 간의 연결에 대한 링크가 다운될 때 호출 관리자에 알림이 표시되면 CM은 NdisCmDispatchIncomingCloseCall 을 호출하여 클라이언트가 이러한 끊어진 연결에서 추가 데이터 전송을 시도(또는 예상)하지 못하도록 합니다.
호출을 중단한 후 VC의 원래 작성자는 VC와 연결된 추가 리소스를 해제한 후 NdisCoDeleteVc 를 호출할 책임이 있습니다.

NdisCmDispatchIncomingCloseCall을 호출하면 NDIS가 클라이언트의 를 호출합니다. ProtocolClIncomingCloseCall 함수입니다.

NDIS에 프로토콜 드라이버로 등록하는 독립 실행형 통화 관리자만 NdisCmDispatchIncomingCloseCall을 호출할 수 있습니다. 통화 관리 지원 호출을 제공하는 연결 지향 미니포트 드라이버대신 NdisMCmDispatchIncomingCall.

요구 사항

요구 사항
지원되는 최소 클라이언트 Windows Vista에서 NDIS 6.0 및 NDIS 5.1 드라이버에 대해 지원됩니다(NdisCmDispatchIncomingCloseCall(NDIS 5.1 참조)). Windows XP에서 NDIS 5.1 드라이버(NdisCmDispatchIncomingCloseCall(NDIS 5.1) 참조)에 대해 지원됩니다.
대상 플랫폼 데스크톱
머리글 ndis.h(Ndis.h 포함)
라이브러리 Ndis.lib
IRQL <= DISPATCH_LEVEL
DDI 규정 준수 규칙 Irql_CallManager_Function(ndis)

추가 정보

NdisClCloseCall

NdisCmDispatchIncomingDropParty

NdisCoDeleteVc

NdisMCmDispatchIncomingCloseCall

ProtocolClIncomingCloseCall

ProtocolCoReceiveNetBufferLists

ProtocolCoStatusEx