FwpsCloneStreamData0, fonction (fwpsk.h)
La fonction FwpsCloneStreamData0 alloue un clone d’un flux de données FWPS_STREAM_DATA0 existant.
Syntaxe
NTSTATUS FwpsCloneStreamData0(
[in, out] FWPS_STREAM_DATA0 *calloutStreamData,
[in, optional] NDIS_HANDLE netBufferListPoolHandle,
[in, optional] NDIS_HANDLE netBufferPoolHandle,
[in] ULONG allocateCloneFlags,
[out] NET_BUFFER_LIST **netBufferListChain
);
Paramètres
[in, out] calloutStreamData
Pointeur vers la structure de FWPS_STREAM_DATA0 d’origine qui doit avoir sa structure NET_BUFFER_LIST clonées.
[in, optional] netBufferListPoolHandle
Handle de pool NET_BUFFER_LIST obtenu à partir d’un appel précédent à la fonction NdisAllocateNetBufferListPool. Ce paramètre est facultatif et peut être NULL.
[in, optional] netBufferPoolHandle
Handle de pool NET_BUFFER qui a été obtenu à partir d’un appel précédent au fonction NdisAllocateNetBufferPool. Ce paramètre est facultatif et peut être NULL.
[in] allocateCloneFlags
Il n’existe actuellement aucun indicateur défini pour cette fonction. Les pilotes de légende doivent définir ce paramètre sur zéro.
[out] netBufferListChain
Pointeur vers un emplacement qui reçoit un pointeur vers une chaîne de structures NET_BUFFER_LIST qui décrivent toutes les données de flux clonés.
Valeur de retour
La fonction FwpsCloneStreamData0 retourne l’un des codes NTSTATUS suivants.
Retourner le code | Description |
---|---|
|
La structure FWPS_STREAM_DATA0 clone a été correctement allouée. |
|
Une erreur s’est produite. |
Remarques
Ces données de flux clonées peuvent être injectées par un pilote de légende dans la pile réseau TCP/IP ultérieurement.
La fonction FwpsCloneStreamData0 clone toute la chaîne de structures NET_BUFFER_LIST contenues dans le flux de données FWPS_STREAM_DATA0 existant. La fonction supprime les données inutilisées de sorte qu’un pilote de légende puisse transmettre correctement la chaîne cloné à l’instance fonction FwpsStreamInjectAsync0.
Une fois que les données de flux dans la chaîne de structure de NET_BUFFER_LIST clone ont été correctement injectées dans la pile réseau, la fonction de légende completionFn est appelée pour chaque structure de NET_BUFFER_LIST clone, et une légende doit appeler FwpsFreeCloneNetBufferList0 pour libérer la structure de NET_BUFFER_LIST clone.
Une légende doit appeler la fonction FwpsDiscardClonedStreamData0 si les données de flux clonées doivent être ignorées sans être réinjectées.
Exigences
Exigence | Valeur |
---|---|
client minimum pris en charge | Disponible à partir de Windows Vista. |
plateforme cible | Universel |
d’en-tête | fwpsk.h (include Fwpsk.h) |
bibliothèque | Fwpkclnt.lib |
IRQL | <= DISPATCH_LEVEL |