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
종료 작업이 성공하지 못했습니다. 이러한 오류는 종료될 상태 개체의 손실을 초래하는 치명적인 오류로 인해 발생합니다. 이 경우 오프로드 대상 하드웨어가 응답하지 않을 수 있습니다. 호스트 스택이 연결을 중단해야 할 수 있습니다.
- MiniportInvalidateOffload, MiniportQueryOffload, MiniportTcpOffloadReceive에 대한 미해결 호출을 완료합니다. MiniportTcpOffloadDisconnect, MiniportTcpOffloadForward, MiniportTcpOffloadSend 및 MiniportUpdateOffload 함수.
- NdisMIndicateStatusEx, NdisMOffloadEventIndicate, NdisTcpOffloadEventHandler 및 에 대한 미해결 호출이 있는지 확인합니다. NdisTcpOffloadReceiveHandler 함수가 반환되었습니다.
호스트 스택에 미해결 송신 데이터를 전달할 때 오프로드 대상은 종료되는 연결에 대해 다음 위임된 TCP 변수에 대해 NULL 이 아닌 값도 지정해야 합니다.
- SndUna
- SndNxt
- SndMax
종료되는 TCP 연결에 미해결 송신 데이터가 없는 경우 오프로드 대상은 NetBufferListChain 멤버에 대해 NULL 값을 지정해야 합니다.
업로드 중인 TCP 연결에 미해결 수신 데이터가 있을 수 있습니다. 이는 오프로드 대상이 유선에서 수신하고, 처리하고, 승인한 데이터입니다. 이러한 데이터 처리에 대한 자세한 내용은 오프로드 종료 작업 중 버퍼링된 수신 데이터 처리
오프로드 대상은 종료된 상태 개체와 연결된 메모리와 같은 모든 리소스를 해제합니다.
요구 사항
요구 사항 | 값 |
---|---|
대상 플랫폼 | 유니버설 |
헤더 | ndischimney.h(Ndischimney.h 포함) |
IRQL | 모든 수준 |