Função NdisBuildScatterGatherList (ndis.h)
A função NdisBuildScatterGatherList cria uma lista de dispersão/coleta usando os parâmetros especificados.
Sintaxe
NDIS_STATUS NdisBuildScatterGatherList(
[in] IN NDIS_HANDLE NdisHandle,
[in] IN PNDIS_SCATTER_GATHER_LIST_PARAMETERS SGListParameters
);
Parâmetros
[in] NdisHandle
Um identificador de instância ou driver NDIS que foi obtido durante a inicialização do chamador. Por exemplo, um driver de miniporte pode usar o identificador NDIS obtido do Função NdisMRegisterMiniportDriver ou MiniportInitializeEx . Outros drivers NDIS podem usar os identificadores das seguintes funções:
[in] SGListParameters
Um ponteiro para um NDIS_SCATTER_GATHER_LIST_PARAMETERS estrutura que especifica os parâmetros para alocar a lista de dispersão/coleta.
Retornar valor
NdisBuildScatterGatherList pode retornar os seguintes valores de status:
Código de retorno | Descrição |
---|---|
|
A operação foi concluída com sucesso. |
|
A operação falhou porque o comprimento do buffer especificado no membro ScatterGatherListBufferSize do NDIS_SCATTER_GATHER_LIST_PARAMETERS estrutura era muito curta. Nesse caso, o NDIS forneceu o tamanho do buffer necessário no membro ScatterGatherListBufferSizeNeeded . |
Comentários
Os drivers NDIS chamam a função NdisBuildScatterGatherList para criar uma lista de dispersão/coleta para um buffer. Para chamar essa função, um driver de miniporto especifica um identificador de adaptador de miniporto ou um driver de protocolo especifica um identificador de associação NDIS.
O adaptador de miniporte subjacente deve ter chamado NdisMRegisterScatterGatherDma antes que um driver possa chamar NdisBuildScatterGatherList.
O NDIS chama a função NetProcessSGList especificada no membro ProcessSGListHandler do NDIS_SCATTER_GATHER_LIST_PARAMETERS estrutura no contexto de NdisBuildScatterGatherList.
Os drivers devem chamar o Função NdisFreeScatterGatherList para liberar uma lista de dispersão/coleta que foi criada com o Função NdisBuildScatterGatherList .
Requisitos
Requisito | Valor |
---|---|
Cliente mínimo com suporte | Com suporte no NDIS 6.20 e posterior. |
Plataforma de Destino | Universal |
Cabeçalho | ndis.h (inclua Ndis.h) |
Biblioteca | Ndis.lib |
IRQL | = DISPATCH_LEVEL |