Partager via


FwpsInjectvSwitchEthernetIngressAsync0, fonction (fwpsk.h)

La FwpsInjectvSwitchEthernetIngressAsync0 (était FwpsInjectvSwitchIngressAsync0) réinjecte un paquet de commutateur virtuel (non modifié) précédemment absorbé vers le chemin de données d’entrée du commutateur virtuel où il a été intercepté. Cette fonction peut également injecter un paquet créé avec la fonction FwpsAllocateNetBufferAndNetBufferList0.

RemarqueFwpsInjectvSwitchEthernetIngressAsync0 est une version spécifique de FwpsInjectvSwitchEthernetIngressAsync. Pour plus d’informations, consultez PAM Version-Independent noms et ciblage de versions spécifiques de Windows.
 

Syntaxe

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

Paramètres

[in] injectionHandle

Handle d’injection créé précédemment par un appel à la fonction FwpsInjectionHandleCreate0 avec les indicateurs de défini sur FWPS_INJECTION_TYPE_L2.

Le paramètre addressFamily n’est pas utilisé et doit être défini sur AF_UNSPEC.

[in, optional] injectionContext

Handle facultatif vers le contexte d’injection qui peut être récupéré avec la fonction FwpsQueryPacketInjectionState0.

[in] flags

Réservé. Doit être défini sur zéro.

[in, optional] reserved

Réservé. Doit être défini sur NULL.

[in] vSwitchId

Identificateur de commutateur virtuel transmis par le moteur de filtrage dans la structure FWPS_INCOMING_VALUES0 au classifieFn fonction de légende du pilote de légende. Il s’agit du GUID du commutateur virtuel fourni dans un champ xxx_VSWITCH_ID.

[in] vSwitchSourcePortId

Identificateur du port source du commutateur virtuel.

[in] vSwitchSourceNicIndex

Index de carte réseau source du commutateur virtuel.

netBufferLists

Chaîne de structures NET_BUFFER_LIST à injecter dans le chemin de données de sortie du commutateur virtuel.

[in] completionFn

Pointeur vers une fonction de légende completionFn fournie par le pilote de légende. Le moteur de filtre appelle cette fonction après les données de paquets, au netBufferLists paramètre, a été injecté dans le chemin de données de sortie du commutateur virtuel. La fonction completionFn sera appelée une fois pour chaque NET_BUFFER_LIST dans la chaîne. completionFn doit être spécifié lors de l’injection de structures NET_BUFFER_LIST clonées ou créées. Ce paramètre peut être NULL lors de l’injection de structures NET_BUFFER_LIST non modifiables d’origine reçues du moteur de filtre.

[in, optional] completionContext

Pointeur vers un contexte fourni par un pilote de légende transmis à la fonction de légende pointée par le paramètre completionFn. Ce paramètre est facultatif et peut être NULL.

Valeur de retour

La fonction FwpsInjectvSwitchEthernetIngressAsync0 retourne l’un des codes NTSTATUS suivants.

Retourner le code Description
STATUS_SUCCESS
Le commutateur virtuel NET_BUFFER_LIST chaîne a été injecté avec succès.
Autres codes d’état
Une erreur s’est produite.

Remarques

Lorsqu’une légende injecte des paquets avec FwpsInjectvSwitchEthernetIngressAsync0, les paquets injectés peuvent être classés à nouveau si les paquets correspondent au même filtre qu’ils ont été initialement classés. Par conséquent, comme les légendes sur les couches IP, les légendes de commutateur virtuel doivent appeler la fonction FwpsQueryPacketInjectionState0 pour vous protéger contre les inspections de paquets infinies.

Exigences

Exigence Valeur
client minimum pris en charge Disponible à partir de Windows 8.
plateforme cible Universel
d’en-tête fwpsk.h (include Fwpsk.h)
bibliothèque Fwpkclnt.lib
IRQL <= DISPATCH_LEVEL

Voir aussi

FWPS_INCOMING_VALUES0

FwpsAllocateNetBufferAndNetBufferList0

FwpsInjectionHandleCreate0

FwpsQueryPacketInjectionState0

NET_BUFFER_LIST

completionFn