FwpsReferenceNetBufferList0 함수(fwpsk.h)

FwpsReferenceNetBufferList0 함수는 NET_BUFFER_LIST 구조체에 대한 참조 수를 증가합니다.

참고FwpsReferenceNetBufferList0특정 버전의 FwpsReferenceNetBufferList입니다. 자세한 내용은 WFP Version-Independent 이름 및 특정 버전의 Windows 대상 지정 을 참조하세요.
 

구문

void FwpsReferenceNetBufferList0(
  [in, out] NET_BUFFER_LIST *netBufferList,
  [in]      BOOLEAN         intendToModify
);

매개 변수

[in, out] netBufferList

참조 수가 증가되는 NET_BUFFER_LIST 구조체에 대한 포인터입니다.

[in] intendToModify

classifyFn 함수가 반환된 후 설명선이 netBufferList 매개 변수에 의해 부모가 가리키는 복제된 네트워크 버퍼 목록을 수정할지 여부를 나타내는 값입니다. TRUE이면 classifyFn이 반환된 후(대역 외 수정) 복제된 net 버퍼 목록을 수정하려고 합니다. 그렇지 않으면 를 FALSE로 설정합니다.

반환 값

없음

설명

설명선 드라이버는 FwpsReferenceNetBufferList0 함수를 호출하여 네트워크 버퍼 목록이 classifyFn 함수 외부에서 유효한 상태로 유지되도록 NET_BUFFER_LIST 구조에 대한 참조 수를 증가시킵니다.

예를 들어 설명선 드라이버가 패킷 을 다시 어셈블리로 수행하는 경우 개별 패킷을 구성하는 패킷 조각을 설명하는 수신된 각 NET_BUFFER_LIST 구조체에 대한 참조 횟수가 증가합니다. 이렇게 하면 다시 어셈블된 패킷을 설명하는 새 NET_BUFFER_LIST 구조체가 패킷 조각을 설명하는 NET_BUFFER_LIST 구조체가 가리키는 MDL(메모리 설명자 목록)을 안전하게 참조할 수 있습니다. 설명선 드라이버가 네트워크 스택에 새 NET_BUFFER_LIST 구조를 삽입한 후 패킷 삽입 완료 루틴에서 패킷 조각을 설명하는 각 NET_BUFFER_LIST 구조체에 대한 참조 수를 감소합니다.

설명선 드라이버는 설명선 드라이버가 구조체 참조를 완료한 후 NET_BUFFER_LIST 구조체에 대해 FwpsDereferenceNetBufferList0 함수를 호출해야 합니다.

참조된 패킷을 관리하기 위한 지침

설명선 드라이버는 참조된 패킷을 무기한 보유해서는 안 됩니다. 참조된 패킷은 유휴 컴퓨터에서 전원 관리 작업을 방해할 수 있습니다.

WFP에서 참조된 패킷에 대한 용도는 사용자 모드 애플리케이션 또는 기타 비교적 빠른 작업에서 설명을 가져오는 것입니다. 예를 들어 사용자 입력, 웹 서비스 정리 또는 임의의 시간이 걸릴 수 있는 기타 작업을 기다리는 동안 설명선 드라이버는 참조된 패킷을 보유해서는 안 됩니다.

설명선 드라이버가 잠재적으로 긴 작업을 기다려야 하는 경우 FwpsAllocateNetBufferAndNetBufferList0 를 사용하여 패킷의 심층 복사본을 만들고 원래 패킷을 차단하고 흡수해야 합니다.

설명선 드라이버는 항상 가능한 한 빨리 저장된 패킷을 반환해야 합니다.

요구 사항

요구 사항
지원되는 최소 클라이언트 Windows Vista부터 사용할 수 있습니다.
대상 플랫폼 유니버설
헤더 fwpsk.h(Fwpsk.h 포함)
라이브러리 Fwpkclnt.lib
IRQL <= DISPATCH_LEVEL

추가 정보

FwpsDereferenceNetBufferList0

NET_BUFFER_LIST

classifyFn