Freigeben über


FwpsInjectvSwitchEthernetIngressAsync0-Funktion (fwpsk.h)

Die FwpsInjectvSwitchEthernetIngressAsync0 (was FwpsInjectvSwitchIngressAsync0) funktion ein zuvor aufgenommenes virtuelles Switchpaket (nicht geändert) zurück in den Pfad des virtuellen Switch-Eingangsdatenpfads zurückwirft, in dem er abgefangen wurde. Diese Funktion kann auch ein Paket einfügen, das mit der FwpsAllocateNetBufferAndNetBufferList0-Funktion erstellt wurde.

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

Syntax

NTSTATUS FwpsInjectvSwitchEthernetIngressAsync0(
  [in]           HANDLE                injectionHandle,
  [in, optional] HANDLE                injectionContext,
  [in]           UINT32                flags,
  [in, optional] void                  *reserved,
  [in]           const FWP_BYTE_BLOB   *vSwitchId,
  [in]           NDIS_SWITCH_PORT_ID   vSwitchSourcePortId,
  [in]           NDIS_SWITCH_NIC_INDEX vSwitchSourceNicIndex,
                 NET_BUFFER_LIST       *netBufferLists,
  [in]           FWPS_INJECT_COMPLETE  completionFn,
  [in, optional] HANDLE                completionContext
);

Parameter

[in] injectionHandle

Ein Einfügungshandle, das zuvor durch einen Aufruf der FwpsInjectionHandleCreate0 Funktion erstellt wurde, wobei die Flags Parameter auf FWPS_INJECTION_TYPE_L2festgelegt sind.

Der parameter addressFamily wird nicht verwendet und sollte auf AF_UNSPECfestgelegt werden.

[in, optional] injectionContext

Ein optionales Handle für den Einfügungskontext, der mit der FwpsQueryPacketInjectionState0-Funktion abgerufen werden kann.

[in] flags

Reserviert. Muss auf Null festgelegt werden.

[in, optional] reserved

Reserviert. Muss auf NULL festgelegt werden.

[in] vSwitchId

Der virtuelle Switchbezeichner, den das Filtermodul in der FWPS_INCOMING_VALUES0 Struktur an die klassifizierenFn Legendenfunktion des Popuptreibers übergeben hat. Dies ist die GUID- des virtuellen Switches, der in einem xxx_VSWITCH_ID Feld bereitgestellt wird.

[in] vSwitchSourcePortId

Der Quellportbezeichner des virtuellen Switchs.

[in] vSwitchSourceNicIndex

Der NIC-Index des virtuellen Switchs.

netBufferLists

Eine Kette von NET_BUFFER_LIST Strukturen, die in den Virtuellen Switch-Ausgangsdatenpfad eingefügt werden sollen.

[in] completionFn

Ein Zeiger auf eine completionFn Legendenfunktion, die vom Legendentreiber bereitgestellt wird. Das Filtermodul ruft diese Funktion nach den Paketdaten auf, an der netBufferLists Parameter, wurde in den Virtuellen Switch-Ausgangsdatenpfad eingefügt. Die completionFn--Funktion wird einmal für jede NET_BUFFER_LIST in der Kette aufgerufen. completionFn- müssen beim Einfügen geklonter oder erstellter NET_BUFFER_LIST Strukturen angegeben werden. Dieser Parameter kann NULL sein, wenn ursprüngliche, unveränderte NET_BUFFER_LIST Strukturen eingefügt werden, die vom Filtermodul empfangen wurden.

[in, optional] completionContext

Ein Zeiger auf einen vom Legendentreiber bereitgestellten Kontext, der an die Legendenfunktion übergeben wird, auf die der completionFn-Parameter verweist. Dieser Parameter ist optional und kann NULL-werden.

Rückgabewert

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

Rückgabecode Beschreibung
STATUS_SUCCESS
Der virtuelle Switch NET_BUFFER_LIST Kette wurde erfolgreich eingefügt.
Andere Statuscodes
Fehler.

Bemerkungen

Wenn ein Popup Pakete mit FwpsInjectvSwitchEthernetIngressAsync0einbindet, können die injizierten Pakete erneut klassifiziert werden, wenn die Pakete mit demselben Filter übereinstimmen wie ursprünglich klassifiziert wurden. Daher müssen virtuelle Switchbeschriftungen wie Legenden auf IP-Ebenen die FwpsQueryPacketInjectionState0-Funktion aufrufen, um vor unendlichen Paketüberprüfungen zu schützen.

Anforderungen

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

Siehe auch

FWPS_INCOMING_VALUES0

FwpsAllocateNetBufferAndNetBufferList0

FwpsInjectionHandleCreate0

FwpsQueryPacketInjectionState0

NET_BUFFER_LIST

completionFn-