Funzione FwpsInjectvSwitchEthernetIngresAsync0 (fwpsk.h)

La funzione FwpsInjectvSwitchEthernetIngresAsync0 (è stata FwpsInjectvSwitchIngresAsync0) reinietta un pacchetto di commutatori virtuali precedentemente assorbito (non modificato) al percorso dati in ingresso del commutatore virtuale in cui è stato intercettato. Questa funzione può anche inserire un pacchetto creato con la funzione FwpsAllocateNetBufferAndNetBufferList0 .

NotaFwpsInjectvSwitchEthernetIngresAsync0 è una versione specifica di FwpsInjectvSwitchEthernetIngresAsync. Per altre informazioni , vedere Nomi Version-Independent WFP e Versioni specifiche di Windows .
 

Sintassi

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

Parametri

[in] injectionHandle

Handle di inserimento creato in precedenza da una chiamata alla funzione FwpsChangectionHandleCreate0 con il parametro flag impostato su FWPS_INJECTION_TYPE_L2.

Il parametro addressFamily non viene usato e deve essere impostato su AF_UNSPEC.

[in, optional] injectionContext

Handle facoltativo per il contesto di inserimento che può essere recuperato con la funzione FwpsQueryPacketChangectionState0 .

[in] flags

Riservato. Deve essere impostato su zero.

[in, optional] reserved

Riservato. Deve essere impostato su NULL.

[in] vSwitchId

Identificatore del commutatore virtuale passato il motore di filtro nella struttura FWPS_INCOMING_VALUES0 alla funzione di callout del driver di classificazioneFn . Si tratta del GUID del commutatore virtuale fornito in un campo xxx_VSWITCH_ID.

[in] vSwitchSourcePortId

Identificatore della porta di origine del commutatore virtuale.

[in] vSwitchSourceNicIndex

Indice della scheda di interfaccia di rete dell'opzione virtuale.

netBufferLists

Una catena di strutture NET_BUFFER_LIST da inserire nel percorso dati di uscita del commutatore virtuale.

[in] completionFn

Puntatore a una funzione callout di completamentoFn fornita dal driver di callout. Il motore di filtro chiama questa funzione dopo i dati del pacchetto, nel parametro netBufferLists , è stato inserito nel percorso dati del commutatore virtuale in uscita. La funzione completionFn verrà chiamata una volta per ogni NET_BUFFER_LIST nella catena. completamentoFn deve essere specificato durante l'inserimento di strutture clonate o create NET_BUFFER_LIST . Questo parametro può essere NULL quando si inseriscono strutture originali NET_BUFFER_LIST ricevute dal motore di filtro.

[in, optional] completionContext

Puntatore a un driver callout fornito dal contesto passato alla funzione callout a cui punta il parametro di completamentoFn . Questo parametro è facoltativo e può essere NULL.

Valore restituito

La funzione FwpsInjectvSwitchEthernetIngresAsync0 restituisce uno dei codici NTSTATUS seguenti.

Codice restituito Descrizione
STATUS_SUCCESS
Il commutatore virtuale NET_BUFFER_LIST catena è stato inserito correttamente.
Altri codici di stato
Si è verificato un errore.

Commenti

Quando un callout inserisce pacchetti con FwpsInjectvSwitchEthernetIngresAsync0, i pacchetti inseriti potrebbero essere classificati di nuovo se i pacchetti corrispondono allo stesso filtro di cui sono stati originariamente classificati. Pertanto, come i callout a livelli IP, i callout del commutatore virtuale devono chiamare la funzione FwpsQueryPacketChangectionState0 per proteggere dalle ispezioni infinite dei pacchetti.

Requisiti

Requisito Valore
Client minimo supportato Disponibile a partire da Windows 8.
Piattaforma di destinazione Universale
Intestazione fwpsk.h (includere Fwpsk.h)
Libreria Fwpkclnt.lib
IRQL <= DISPATCH_LEVEL

Vedi anche

FWPS_INCOMING_VALUES0

FwpsAllocateNetBufferAndNetBufferList0

FwpsChangectionHandleCreate0

FwpsQueryPacketChangectionState0

NET_BUFFER_LIST

completamentoFn