NdisMTerminateOffloadComplete 함수(ndischimney.h)

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

오프로드 대상은 NdisMTerminateOffloadComplete 함수를 호출하여 에 대한 이전 호출에 의해 시작된 종료 오프로드 작업을 완료합니다.오프로드 대상의 MiniportTerminateOffload 함수입니다.

구문

void NdisMTerminateOffloadComplete(
  [in] IN NDIS_HANDLE                       NdisMiniportHandle,
  [in] IN PNDIS_MINIPORT_OFFLOAD_BLOCK_LIST OffloadBlockList
);

매개 변수

[in] NdisMiniportHandle

이전 호출에서 오프로드 대상을 가져온 핸들입니다. NdisMRegisterMiniportDriver.

[in] OffloadBlockList

에 대한 포인터 NDIS_MINIPORT_OFFLOAD_BLOCK_LIST 구조체입니다. 오프로드 대상은 이 포인터를 에 대한 입력 매개 변수로 가져옵니다. MiniportTerminateOffload 함수입니다.

반환 값

없음

설명

NdisMTerminateOffloadComplete 함수를 호출하기 전에 오프로드 대상은 상태 트리의 각 NDIS_MINIPORT_OFFLOAD_BLOCK_LIST 구조체의 Status 멤버에 다음 NDIS_STATUS 값 중 하나를 작성해야 합니다.

  • NDIS_STATUS_SUCCESS

    오프로드 대상은 NDIS_MINIPORT_OFFLOAD_BLOCK_LIST 구조체에서 참조하는 상태 개체의 오프로드를 성공적으로 종료했습니다. NDIS_MINIPORT_OFFLOAD_BLOCK_LIST 구조 뒤에 위임된 상태 구조체(XXX_OFFLOAD_STATE_DELEGATED)가 있으면 오프로드 대상은 해당 상태 개체의 위임된 변수 값을 위임된 상태 구조에 성공적으로 작성했습니다.

  • NDIS_STATUS_FAILURE

    종료 작업이 성공하지 못했습니다. 이러한 오류는 종료될 상태 개체의 손실을 초래하는 치명적인 오류로 인해 발생합니다. 이 경우 오프로드 대상 하드웨어가 응답하지 않을 수 있습니다. 호스트 스택이 연결을 중단해야 할 수 있습니다.

NdisMTerminateOffloadComplete 함수를 호출하기 전에 오프로드 대상도 다음을 수행해야 합니다. 종료되는 TCP 연결에 미해결 송신 데이터가 있는 경우 오프로드 대상은 이러한 데이터를 순 버퍼에 패키지하고 패키지된 데이터를 연결된 NET_BUFFER_LIST 구조 목록의 호스트 스택에 전달합니다. 이 경우 오프로드 대상은 해당 연결에 대한 NDIS_MINIPORT_OFFLOAD_BLOCK_LIST 구조체의 NetBufferListChain 멤버에 대해 NULL이 아닌 값을 지정합니다. (NDIS_MINIPORT_OFFLOAD_BLOCK_LIST 구조체는 OffloadBlockList 포인터가 가리키는 연결된 목록에 있습니다. NetBufferListChain 멤버는 전송 데이터가 연결된 NET_BUFFER_LIST 구조체의 연결된 목록을 가리킵니다.

호스트 스택에 미해결 송신 데이터를 전달할 때 오프로드 대상은 종료되는 연결에 대해 다음 위임된 TCP 변수에 대해 NULL 이 아닌 값도 지정해야 합니다.

  • SndUna
  • SndNxt
  • SndMax
미해결 송신 데이터 전달에 대한 자세한 내용은 오프로드 작업 중 및 이후의 미해결 송신 데이터 처리

종료되는 TCP 연결에 미해결 송신 데이터가 없는 경우 오프로드 대상은 NetBufferListChain 멤버에 대해 NULL 값을 지정해야 합니다.

업로드 중인 TCP 연결에 미해결 수신 데이터가 있을 수 있습니다. 이는 오프로드 대상이 유선에서 수신하고, 처리하고, 승인한 데이터입니다. 이러한 데이터 처리에 대한 자세한 내용은 오프로드 종료 작업 중 버퍼링된 수신 데이터 처리

오프로드 대상은 종료된 상태 개체와 연결된 메모리와 같은 모든 리소스를 해제합니다.

요구 사항

요구 사항
대상 플랫폼 유니버설
헤더 ndischimney.h(Ndischimney.h 포함)
IRQL 모든 수준

추가 정보

MiniportTerminateOffload

NDIS_MINIPORT_OFFLOAD_BLOCK_LIST

NdisMRegisterMiniportDriver

TCP_OFFLOAD_STATE_DELEGATED