Freigeben über


FwpsReassembleForwardFragmentGroup0-Funktion (fwpsk.h)

Die FwpsReassembleForwardFragmentGroup0-Funktion fasst eine Liste von IP-Fragmenten im Weiterleitungsdatenpfad in einem einzelnen Paket zusammen.

HinweisFwpsReassembleForwardFragmentGroup0 ist eine bestimmte Version von FwpsReassembleForwardFragmentGroup. Weitere Informationen finden Sie unter WFP-Version-Independent Namen und zielspezifische Versionen von Windows.
 

Syntax

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
);

Parameter

[in] addressFamily

Eine der folgenden Adressfamilien:

AF_INET

Die IPv4-Adressfamilie.

AF_INET6

Die IPv6-Adressfamilie.

[in, out] fragmentGroupNblChain

Ein Zeiger auf die NET_BUFFER_LIST Kette von IP-Fragmenten, die in einem einzelnen Paket neu zusammengefasst werden sollen. Weitere Informationen zur Verwendung dieses Parameters finden Sie in den Hinweisen.

[in, optional] netBufferAndNetBufferListPoolHandle

Optionaler NET_BUFFER_LIST Strukturpoolhandle, der zuvor vom NdisAllocateNetBufferListPool Funktion. Der fAllocateNetBuffer Member der NET_BUFFER_LIST_POOL_PARAMETERS Struktur, die der Aufrufer an NdisAllocateNetBufferListPool übergeben hat, muss auf TRUEfestgelegt sein, und der DataSize Member auf Null festgelegt sein. Wenn dieser Parameter NULL-ist, verwendet NDIS einen internen Pool.

[in] dataBackFill

Wenn die Zuordnung nicht verwendeter Datenspeicher (Rückfüllbereich) erforderlich ist, gibt dieser Parameter die Anzahl der Bytes des nicht verwendeten Datenbereichs an, der zugewiesen werden soll.

[in] flags

Reserviert. Legendentreiber müssen diesen Parameter auf Null festlegen.

[out] reassembledNbl

Ein Zeiger auf einen NET_BUFFER_LIST Zeiger, der die Adresse der neu zusammengesetzten Einzelnen Netzwerkpufferliste empfängt.

Rückgabewert

Die FwpsReassembleForwardFragmentGroup0-Funktion gibt einen der folgenden NTSTATUS-Codes zurück.

Rückgabecode Beschreibung
STATUS_SUCCESS
Die Liste der IP-Fragmente wurde erfolgreich in einer einzelnen NET_BUFFER_LIST Struktur neu zusammengefasst.
STATUS_FWP_TCPIP_NOT_READY
Der TCP/IP-Netzwerkstapel ist nicht bereit, paketumbauend durchzuführen. Dieser Fehler kann auftreten, wenn diese Funktion aufgerufen wird, bevor Tcpip.sys geladen wird, oder nachdem Tcpip.sys entladen wurde.
Andere Statuscodes
Fehler.

Bemerkungen

Die FwpsReassembleForwardFragmentGroup0-Funktion fasst eine Liste von IP-Fragmenten im Weiterleitungsdatenpfad zusammen, die durch eine NET_BUFFER_LIST kette beschrieben wird, in einem einzelnen Paket. Das neu zusammengesetzte Paket ist eine einzelne Netpufferliste, die einen Nettopuffer enthält und auf die Eingabefragmentkette verweist. Diese Funktion wird in der Regel von Edgefirewalls verwendet, um Netzwerkpakete zu prüfen.

Die Eingabekette von IP-Fragmenten, fragmentGroupNblChain, muss eine sein, die durch die klassifizierenFn Legendenfunktion auf die FWPS_LAYER_IPFORWARD_V4- oder FWPS_LAYER_IPFORWARD_V6 Ebene angegeben wird, wenn das FWP_CONDITION_FLAG_IS_FRAGMENT_GROUP Flag festgelegt ist. Wenn dies nicht der Fall ist, ist das Verhalten von FwpsReassembleForwardFragmentGroup0 nicht definiert.

Rufen Sie die FwpsFreeNetBufferList0--Funktion auf, um die neu zusammengesetztENbl NET_BUFFER_LIST-Struktur und alle zugeordneten NET_BUFFER Strukturen und MDL-Ketten frei zu geben. FwpsFreeNetBufferList0 die ursprüngliche Eingabefragmentkette ableiten.

Mit dem folgenden Befehl können Sie die aktuelle Einstellung "Weitergeleitete Fragmente gruppieren" für das System anzeigen: netsh interface {ipv4|ipv6} zeigen globalean.

Da FwpsReassembleForwardFragmentGroup0 auf die Eingabefragmentkette verweist, ist es nicht erforderlich, dass Legenden vor dem Aufrufen dieser Funktion auf die Kette verweisen oder klonen.

Anforderungen

Anforderung Wert
mindestens unterstützte Client- Verfügbar ab Windows Server 2008.
Zielplattform- Universal
Header- fwpsk.h (include Fwpsk.h)
Library Fwpkclnt.lib
IRQL- <= DISPATCH_LEVEL

Siehe auch

FwpsFreeNetBufferList0

NET_BUFFER

NET_BUFFER_LIST

NET_BUFFER_LIST_POOL_PARAMETERS

NdisAllocateNetBufferListPool

klassifizierenFn-