다음을 통해 공유


NdisFSendNetBufferListsComplete 함수(ndis.h)

필터 드라이버는 NdisFSendNetBufferListsComplete 함수를 호출하여 NET_BUFFER_LIST 구조의 연결된 목록을 지나치게 많은 드라이버에 반환하고 보내기 요청의 최종 상태를 반환합니다.

통사론

void NdisFSendNetBufferListsComplete(
  [in] NDIS_HANDLE      NdisFilterHandle,
       PNET_BUFFER_LIST NetBufferList,
  [in] ULONG            SendCompleteFlags
);

매개 변수

[in] NdisFilterHandle

이 필터 모듈을 식별하는 NDIS 핸들입니다. NDIS는 FilterAttach 함수에 대한 호출에서 필터 드라이버에 핸들을 전달했습니다.

NetBufferList

NET_BUFFER_LIST 구조체의 연결된 목록에 대한 포인터입니다. 필터 드라이버는 이전 호출에서 NET_BUFFER_LIST 구조를 수신했습니다. filterSendNetBufferLists 함수를.

[in] SendCompleteFlags

OR 작업과 결합할 수 있는 NDIS 플래그입니다. 모든 플래그를 지우려면 이 멤버를 0으로 설정합니다. 이 함수는 다음 플래그를 지원합니다.

NDIS_SEND_COMPLETE_FLAGS_DISPATCH_LEVEL

현재 IRQL이 DISPATCH_LEVEL 지정합니다. 이 플래그에 대한 자세한 내용은 디스패치 IRQL 추적참조하세요.

NDIS_SEND_COMPLETE_FLAGS_SWITCH_SINGLE_SOURCE

이 플래그를 설정하면 NET_BUFFER_LIST 구조의 연결된 목록에 있는 모든 패킷은 동일한 Hyper-V 확장 가능한 스위치 소스 포트에서 시작됩니다.

자세한 내용은 Hyper-V 확장 가능한 스위치 보내기 및 받기 플래그참조하세요.

참고NET_BUFFER_LIST 구조의 연결된 목록에 있는 각 패킷이 동일한 원본 포트를 사용하는 경우 확장을 통해 요청을 보낼 때 NdisFSendNetBufferLists의 SendFlags 매개 변수에 NDIS_SEND_FLAGS_SWITCH_SINGLE_SOURCE 플래그를 설정해야 합니다.
 
참고 이 플래그는 NDIS 6.30 이상에서 사용할 수 있습니다.
 

반환 값

없음

발언

필터 드라이버는 NdisFSendNetBufferListsComplete 함수를 호출하여 NDIS가 드라이버에 수행한 보내기 요청을 완료합니다. filterSendNetBufferLists 함수를. 필터 드라이버는 완료된 송신 요청과 연결된 NET_BUFFER_LIST 구조의 연결된 목록을 지정합니다. 송신 요청의 상태가 보류 중인 동안 필터 드라이버는 NET_BUFFER_LIST 구조체 및 NET_BUFFER_LIST 구조와 연결된 모든 리소스의 소유권을 유지합니다.

필터 드라이버는 순서에 따라 보내기 요청을 완료할 수 있습니다. 예를 들어 필터 드라이버는 여러 FilterSendNetBufferLists의 NET_BUFFER_LIST 구조 목록을 호출을 연결하거나 FilterSendNetBufferLists 호출에서 목록을 분할할 수 있습니다. 그러나 필터 드라이버는 NET_BUFFER_LIST 구조와 연결된 NET_BUFFER 구조의 목록을 수정해서는 안됩니다.

참고 필터 드라이버는 시작된 보내기 요청을 추적하고 호출하지 않는지 확인해야 합니다. 요청이 완료되면 NdisFSendNetBufferListsComplete 함수입니다.
 

요구 사항

요구
지원되는 최소 클라이언트 NDIS 6.0 이상에서 지원됩니다.
대상 플랫폼 바탕 화면
헤더 ndis.h(Ndis.h 포함)
라이브러리 Ndis.lib
IRQL <= DISPATCH_LEVEL
DDI 규정 준수 규칙 Irql_Filter_Driver_Function(ndis)

참고 항목

filterAttach

FilterSendNetBufferLists

NET_BUFFER

NET_BUFFER_LIST