W_INITIATE_OFFLOAD_HANDLER função de retorno de chamada (ndischimney.h)

[O recurso de descarregamento de chaminé TCP foi preterido e não deve ser usado.]

MiniportInitiateOffload descarrega o estado da chaminé TCP da pilha de host.

Sintaxe

W_INITIATE_OFFLOAD_HANDLER WInitiateOffloadHandler;

void WInitiateOffloadHandler(
  [in]      IN NDIS_HANDLE MiniportAdapterContext,
  [in, out] IN OUT PNDIS_MINIPORT_OFFLOAD_BLOCK_LIST OffloadBlockList
)
{...}

Parâmetros

[in] MiniportAdapterContext

O identificador para uma área de contexto alocada de destino de descarregamento na qual o destino de descarregamento mantém informações de estado sobre essa instância do adaptador. O driver de miniporta forneceu esse identificador para o NDIS quando ele chamou NdisMSetMiniportAttributes de sua Função MiniportInitializeEx .

[in, out] OffloadBlockList

Um ponteiro para um NDIS_MINIPORT_OFFLOAD_BLOCK_LIST estrutura que pode ser uma estrutura autônoma ou a raiz de uma lista vinculada dessas estruturas.

Retornar valor

Nenhum

Comentários

A função MiniportInitiateOffload armazena o ponteiro OffloadBlockList e retorna. O destino de descarregamento sempre conclui a operação de descarregamento de forma assíncrona chamando NdisMInitiateOffloadComplete. A árvore de estado apontada pelo ponteiro OffloadBlockList é válida até que o driver de miniporto chame NdisMInitiateOffloadComplete.

Depois de retornar de sua função MiniportInitiateOffload , o destino de descarregamento descarrega o estado da árvore de estado. Uma estrutura NDIS_MINIPORT_OFFLOAD_BLOCK_LIST cujo membro MiniportOffloadContext aponta para um local de memória que contém um valor NULL é seguida pelo estado a ser descarregado. Para obter mais informações, consulte Armazenando e referenciando o estado descarregado. O membro Header de uma estrutura NDIS_MINIPORT_OFFLOAD_BLOCK_LIST contém um membro Type que especifica o tipo de estado de descarregamento e, por implicação, a estrutura ou estruturas de estado de descarregamento , que seguem imediatamente a estrutura NDIS_MINIPORT_OFFLOAD_BLOCK_LIST na memória.

O destino de descarregamento descarrega o estado de descarregamento associado a uma estrutura NDIS_MINIPORT_OFFLOAD_BLOCK_LIST em uma área de contexto de descarregamento. Para obter mais informações, consulte Armazenando e referenciando o estado descarregado.

Ao descarregar o estado, o destino de descarregamento deve percorrer a árvore de estado de forma detalhada/em segundo plano. É fundamental que um destino de descarregamento descarregre o estado dessa maneira.

Algumas das estruturas NDIS_MINIPORT_OFFLOAD_BLOCK_LIST na árvore de estado passadas para a função MiniportInitiateOffload podem ser espaços reservados ou nós de vinculação que não têm o estado de acompanhamento a ser descarregado. Para obter mais informações, consulte Espaços reservados, vinculadores e novos descarregamentos.

O destino de descarregamento pode receber dados armazenados em buffer da pilha de host para uma conexão que está sendo descarregada. O destino de descarregamento deve copiar esses dados em seu próprio buffer antes de concluir a operação de descarregamento. Para obter mais informações sobre como processar dados de recebimento em buffer, consulte Manipulando dados de recebimento em buffer durante e após uma operação de descarregamento.

Para cada objeto de estado descarregado, o destino de descarregamento também deve fornecer um valor PVOID que referencie a área de contexto de descarregamento na qual o destino de descarregamento armazena o objeto de estado. O destino de descarregamento grava esse valor PVOID no local de memória apontado pelo membro *MiniportOffloadContext da estrutura NDIS_MINIPORT_OFFLOAD_BLOCK_LIST associada ao estado. Se o destino de descarregamento não tiver descarregado com êxito o estado associado à estrutura NDIS_MINIPORT_OFFLOAD_BLOCK_LIST, ele não deverá gravar um valor no local de memória apontado pelo membro *MiniportOffloadContext . Para obter mais informações, consulte Armazenando e referenciando o estado descarregado.

Requisitos

Requisito Valor
Plataforma de Destino Windows
Cabeçalho ndischimney.h (inclua Ndischimney.h)
IRQL Qualquer nível

Confira também

MiniportInitializeEx

NDIS_MINIPORT_OFFLOAD_BLOCK_LIST

NdisMInitiateOffloadComplete

NdisMSetMiniportAttributes