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 구조 목록의 각 패킷이 동일한 원본 포트를 사용하는 경우 확장은 요청을 보낼 때 NdisFSendNetBufferListsSendFlags 매개 변수에서 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