다음을 통해 공유


TCP_OFFLOAD_DISCONNECT_COMPLETE_HANDLER 콜백 함수(ndischimney.h)

[TCP 굴뚝 오프로드 기능은 더 이상 사용되지 않으며 사용하면 안 됩니다.]

NDIS는 프로토콜 드라이버 또는 중간 드라이버의 ProtocolTcpOffloadDisconnectComplete 함수를 호출하여 드라이버가 이전에 호출하여 시작한 연결 끊기 작업을 완료합니다. NdisOffloadTcpDisconnect 함수.

구문

TCP_OFFLOAD_DISCONNECT_COMPLETE_HANDLER TcpOffloadDisconnectCompleteHandler;

void TcpOffloadDisconnectCompleteHandler(
  [in] IN NDIS_HANDLE ProtocolBindingContext,
  [in] IN PNET_BUFFER_LIST NetBufferList
)
{...}

매개 변수

[in] ProtocolBindingContext

프로토콜 드라이버에서 할당한 컨텍스트 영역에 대한 핸들입니다. 드라이버는 이 컨텍스트 영역에서 바인딩당 컨텍스트 정보를 유지 관리합니다. 드라이버가 NdisOpenAdapterEx 함수를 호출할 때 드라이버가 NDIS에 이 핸들을 제공했습니다.

[in] NetBufferList

NULL이 아닌 경우 단일 NET_BUFFER_LIST 구조체에 대한 포인터입니다. 드라이버는 에 대한 이전 호출에서 이 포인터를 입력 매개 변수로 제공했습니다. NdisOffloadTcpDisconnect 함수.

반환 값

없음

설명

기본 드라이버 또는 오프로드 대상의 호출에 대한 응답으로 NdisTcpOffloadDisconnectComplete 함수, NDIS는 오버리싱 프로토콜 드라이버 또는 중간 드라이버의 ProtocolTcpOffloadDisconnectComplete 함수를 호출합니다.

연결 끊기 작업의 완료를 오버리싱 드라이버로 전파하기 위해 중간 드라이버는 NdisOffloadTcpDisconnectComplete 함수를 호출하여 다음을 전달합니다.

  • 중간 드라이버를 고유하게 식별하는 핸들인 ProtocolBindingContext입니다.
  • NDIS가 중간 드라이버의 ProtocolTcpOffloadDisconnectComplete 함수에 전달한 것과 동일한 PNET_BUFFER_LIST 포인터입니다.
이에 대한 응답으로 NDIS는 오버리싱 드라이버의 ProtocolTcpOffloadDisconnectComplete 함수를 호출 하여 ProtocolBindingContext 핸들과 중간 드라이버가 NdisOffloadTcpDisconnectComplete 함수에 전달한 PNET_BUFFER_LIST 포인터를 전달합니다.

반환하기 전에 ProtocolTcpOffloadDisconnectComplete 함수는 함수에 전달된 NET_BUFFER_LIST 구조체에 대해 만든 컨텍스트에 대한 메모리의 할당을 취소해야 합니다.

중간 드라이버가 둘 이상의 인터페이스를 오버리싱 프로토콜로 내보내는 경우 연결 해제 완료를 받아야 하는 프로토콜을 결정해야 합니다. 이 결정을 내리기 위해 중간 드라이버는 에 저장된 정보를 사용합니다. NET_BUFFER_LIST 구조체와 연결된 NET_BUFFER_LIST_CONTEXT 구조체입니다.

요구 사항

요구 사항
대상 플랫폼 Windows
헤더 ndischimney.h(Ndischimney.h 포함)

추가 정보

MiniportTcpOffloadDisconnect

NET_BUFFER_LIST

NdisOffloadTcpDisconnect

NdisOpenAdapterEx

NdisTcpOffloadDisconnectComplete