NdisCancelSendNetBufferLists 함수(ndis.h)

프로토콜 드라이버는 NdisCancelSendNetBufferLists 함수를 호출하여 네트워크 데이터 전송을 취소합니다.

구문

void NdisCancelSendNetBufferLists(
  [in] NDIS_HANDLE NdisBindingHandle,
  [in] PVOID       CancelId
);

매개 변수

[in] NdisBindingHandle

취소가 적용되는 미니포트 드라이버 또는 가상 미니포트를 식별하는 NdisOpenAdapterEx 함수에서 반환된 핸들입니다.

[in] CancelId

취소 식별자입니다. 이 식별자는 전송이 취소되는 네트워크 데이터를 지정합니다.

반환 값

없음

설명

프로토콜 드라이버는 상위 수준의 소프트웨어에서 수신하는 IRP를 NDIS 네트워크 데이터에 매핑합니다. NET_BUFFER_LIST 구조 목록은 프로토콜 드라이버가 전송을 위해 하위 수준 드라이버에 보내는 네트워크 데이터를 설명합니다. IRP가 취소되면 프로토콜 드라이버는 NdisCancelSendNetBufferLists 함수를 호출하여 해당 NDIS 네트워크 데이터의 보류 중인 전송을 취소할 수 있습니다.

다음을 호출합니다. 전송 을 위해 하위 수준 드라이버에 전달되는 각 NET_BUFFER_LIST 구조에 대한 매크로를 NDIS_SET_NET_BUFFER_LIST_CANCEL_ID. NDIS_SET_NET_BUFFER_LIST_CANCEL_ID 매크로는 지정된 패킷을 취소 식별자로 표시합니다.

NdisCancelSendNetBufferLists 는 지정된 취소 식별자로 표시되고 지정된 미니포트 드라이버와 연결된 모든 데이터의 전송을 취소합니다. NdisBindingHandle 매개 변수에 지정된 바인딩 핸들은 미니포트 드라이버를 식별합니다.

NdisCancelSendNetBufferLists 함수는 단일 바인딩에서 네트워크 데이터 전송을 취소합니다. 둘 이상의 바인딩에서 네트워크 데이터 전송을 취소하려면 프로토콜 드라이버가 각 바인딩에 대해 NdisCancelSendNetBufferLists 함수를 한 번 호출해야 합니다.

프로토콜 드라이버는 NdisBindingHandle 매개 변수가 지정하는 핸들이 NdisCancelSendNetBufferLists 호출 기간 동안 유효한지 확인해야 합니다. 즉, 프로토콜 드라이버는 NdisCancelSendNetBufferLists가 반환되기 전에 바인딩을 닫기 위해 NdisCloseAdapterEx 함수를 호출해서는 안 됩니다.

NdisCancelSendNetBufferLists를 호출하면 지정된 취소 식별자를 사용하여 모든 네트워크 데이터의 보류 중인 전송이 취소된다는 보장은 없습니다. 예를 들어 프로토콜 드라이버가 바인딩된 다음 하위 드라이버가 MiniportCancelSend 함수를 제공하지 않는 경우 NdisCancelSendNetBufferLists 에 대한 호출은 아무 작업도 수행하지 않습니다.

모든 경우에 NDIS는 원래 프로토콜 드라이버에 전송하기 위해 제출된 네트워크 데이터를 반환합니다. ProtocolSendNetBufferListsComplete 함수. NDIS는 완료 상태 NDIS_STATUS_SEND_ABORTED 있는 취소된 보내기 데이터를 반환합니다. NdisCancelSendNetBufferLists 호출과 취소된 NET_BUFFER_LIST 구조체의 반환 사이의 지연은 다를 수 있으므로 정확히 지정할 수 없습니다.

요구 사항

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

추가 정보

MiniportCancelSend

NDIS_SET_NET_BUFFER_LIST_CANCEL_ID

NET_BUFFER_LIST

NdisCloseAdapterEx

NdisOpenAdapterEx

ProtocolSendNetBufferListsComplete