Share via


FwpsReassembleForwardFragmentGroup0 함수(fwpsk.h)

FwpsReassembleForwardFragmentGroup0 함수는 전달 데이터 경로의 IP 조각 목록을 단일 패킷으로 어셈블합니다.

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

구문

NTSTATUS FwpsReassembleForwardFragmentGroup0(
  [in]           ADDRESS_FAMILY  addressFamily,
  [in, out]      NET_BUFFER_LIST *fragmentGroupNblChain,
  [in, optional] NDIS_HANDLE     netBufferAndNetBufferListPoolHandle,
  [in]           ULONG           dataBackFill,
  [in]           ULONG           flags,
  [out]          NET_BUFFER_LIST **reassembledNbl
);

매개 변수

[in] addressFamily

다음 주소 패밀리 중 하나입니다.

AF_INET

IPv4 주소 패밀리입니다.

AF_INET6

IPv6 주소 패밀리입니다.

[in, out] fragmentGroupNblChain

단일 패킷으로 다시 조립할 IP 조각의 NET_BUFFER_LIST 체인에 대한 포인터입니다. 이 매개 변수의 사용에 대한 자세한 내용은 비고를 참조하세요.

[in, optional] netBufferAndNetBufferListPoolHandle

이전에 에서 반환된 선택적 NET_BUFFER_LIST 구조체 풀 핸들입니다. NdisAllocateNetBufferListPool 함수. 호출자가 NdisAllocateNetBufferListPool에 전달한 NET_BUFFER_LIST_POOL_PARAMETERS 구조체의 fAllocateNetBuffer 멤버는 TRUE로 설정되고 DataSize 멤버는 0으로 설정되어야 합니다. 이 매개 변수가 NULL인 경우 NDIS는 내부 풀을 사용합니다.

[in] dataBackFill

사용되지 않는 데이터 공간(백필 공간)을 할당해야 하는 경우 이 매개 변수는 할당할 사용되지 않는 데이터 공간의 바이트 수를 지정합니다.

[in] flags

예약되어 있습니다. 콜아웃 드라이버는 이 매개 변수를 0으로 설정해야 합니다.

[out] reassembledNbl

다시 조립된 단일 네트워크 버퍼 목록의 주소를 수신하는 NET_BUFFER_LIST 포인터에 대한 포인터입니다.

반환 값

FwpsReassembleForwardFragmentGroup0 함수는 다음 NTSTATUS 코드 중 하나를 반환합니다.

반환 코드 설명
STATUS_SUCCESS
IP 조각 목록이 단일 NET_BUFFER_LIST 구조로 성공적으로 다시 조립되었습니다.
STATUS_FWP_TCPIP_NOT_READY
TCP/IP 네트워크 스택이 패킷 다시 어셈블리를 수행할 준비가 되지 않았습니다. 이 오류는 Tcpip.sys 로드되기 전에 또는 Tcpip.sys 언로드된 후에 이 함수가 호출되는 경우에 발생할 수 있습니다.
기타 상태 코드
오류가 발생했습니다.

설명

FwpsReassembleForwardFragmentGroup0 함수는 NET_BUFFER_LIST 체인에서 설명하는 전달 데이터 경로의 IP 조각 목록을 단일 패킷으로 어셈블합니다. 다시 어셈블된 패킷은 하나의 net 버퍼를 포함하고 입력 조각 체인을 참조하는 단일 net 버퍼 목록입니다. 이 함수는 일반적으로 에지 방화벽에서 네트워크 패킷을 검사하는 데 사용됩니다.

ip 조각의 입력 체인인 fragmentGroupNblChain은 FWP_CONDITION_FLAG_IS_FRAGMENT_GROUP 플래그가 설정될 때 classifyFn 설명선 함수에서 FWPS_LAYER_IPFORWARD_V4 또는 FWPS_LAYER_IPFORWARD_V6 계층으로 표시되는 입력 체인이어야 합니다. 그렇지 않은 경우 FwpsReassembleForwardFragmentGroup0 의 동작이 정의되지 않습니다.

FwpsFreeNetBufferList0 함수를 호출하여 reassembledNbl NET_BUFFER_LIST 구조체와 관련된 모든 NET_BUFFER 구조체 및 MDL 체인을 해제합니다. FwpsFreeNetBufferList0 은 원래 입력 조각 체인을 역참조합니다.

다음 명령을 사용하여 시스템에 대한 현재 "그룹 전달 조각" 설정을 볼 수 있습니다. netsh 인터페이스 {ipv4|ipv6} show global.

FwpsReassembleForwardFragmentGroup0은 입력 조각 체인을 참조하므로 이 함수를 호출하기 전에 설명선이 체인을 참조하거나 복제할 필요는 없습니다.

요구 사항

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

추가 정보

FwpsFreeNetBufferList0

NET_BUFFER

NET_BUFFER_LIST

NET_BUFFER_LIST_POOL_PARAMETERS

NdisAllocateNetBufferListPool

classifyFn