Função FwpsCloneStreamData0 (fwpsk.h)
A função FwpsCloneStreamData0 aloca um clone de um fluxo de dados FWPS_STREAM_DATA0 existente.
Sintaxe
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
);
Parâmetros
[in, out] calloutStreamData
Um ponteiro para a estrutura de FWPS_STREAM_DATA0 original que deve ter sua estrutura NET_BUFFER_LIST clonada.
[in, optional] netBufferListPoolHandle
Um identificador de pool NET_BUFFER_LIST obtido de uma chamada anterior para a função NdisAllocateNetBufferListPool . Esse parâmetro é opcional e pode ser NULL.
[in, optional] netBufferPoolHandle
Um identificador de pool de NET_BUFFER que foi obtido de uma chamada anterior para o Função NdisAllocateNetBufferPool . Esse parâmetro é opcional e pode ser NULL.
[in] allocateCloneFlags
Atualmente, não há sinalizadores definidos para essa função. Os drivers de texto explicativo devem definir esse parâmetro como zero.
[out] netBufferListChain
Um ponteiro para um local que recebe um ponteiro para uma cadeia de estruturas NET_BUFFER_LIST que descrevem todos os dados de fluxo clonados.
Retornar valor
A função FwpsCloneStreamData0 retorna um dos seguintes códigos NTSTATUS.
Código de retorno | Descrição |
---|---|
|
A estrutura de FWPS_STREAM_DATA0 do clone foi alocada com êxito. |
|
Ocorreu um erro. |
Comentários
Esses dados de fluxo clonados podem ser injetados por um driver de texto explicativo na pilha de rede TCP/IP posteriormente.
A função FwpsCloneStreamData0 clona toda a cadeia de estruturas de NET_BUFFER_LIST contidas no fluxo de dados FWPS_STREAM_DATA0 existente. A função corta dados não utilizados de modo que um driver de texto explicativo possa passar com êxito a cadeia clonada para o Função FwpsStreamInjectAsync0 .
Depois que os dados de fluxo na cadeia de estrutura NET_BUFFER_LIST clone tiverem sido injetados com êxito na pilha de rede, a função de texto explicativo completionFn é chamada para cada estrutura de NET_BUFFER_LIST de clones e um texto explicativo deve chamar FwpsFreeCloneNetBufferList0 para liberar a estrutura de NET_BUFFER_LIST clone.
Um texto explicativo deve chamar a função FwpsDiscardClonedStreamData0 se os dados de fluxo clonados devem ser descartados sem serem reinjetados.
Requisitos
Requisito | Valor |
---|---|
Cliente mínimo com suporte | Disponível a partir do Windows Vista. |
Plataforma de Destino | Universal |
Cabeçalho | fwpsk.h (inclua Fwpsk.h) |
Biblioteca | Fwpkclnt.lib |
IRQL | <= DISPATCH_LEVEL |