NdisBuildScatterGatherList 関数 (ndis.h)
NdisBuildScatterGatherList 関数は、指定したパラメーターを使用して散布図/収集リストを作成します。
構文
NDIS_STATUS NdisBuildScatterGatherList(
[in] IN NDIS_HANDLE NdisHandle,
[in] IN PNDIS_SCATTER_GATHER_LIST_PARAMETERS SGListParameters
);
パラメーター
[in] NdisHandle
呼び出し元の初期化中に取得された NDIS ドライバーまたはインスタンス ハンドル。 たとえば、ミニポート ドライバーは、 から取得した NDIS ハンドルを使用できます。 NdisMRegisterMiniportDriver または MiniportInitializeEx 関数。 他の NDIS ドライバーでは、次の関数のハンドルを使用できます。
[in] SGListParameters
へのポインター NDIS_SCATTER_GATHER_LIST_PARAMETERS 分散/収集リストを割り当てるパラメーターを指定する構造体です。
戻り値
NdisBuildScatterGatherList は、次の状態値を返すことができます。
リターン コード | 説明 |
---|---|
|
操作は正常に完了しました。 |
|
の ScatterGatherListBufferSize メンバーで指定されているバッファー長が原因で、操作が失敗しました NDIS_SCATTER_GATHER_LIST_PARAMETERS 構造が短すぎます。 この場合、NDIS は ScatterGatherListBufferSizeNeeded メンバーに必要なバッファー サイズを指定しました。 |
注釈
NDIS ドライバーは NdisBuildScatterGatherList 関数を呼び出して、バッファーの散布/収集リストを作成します。 この関数を呼び出すには、ミニポート ドライバーはミニポート アダプター ハンドルを指定するか、プロトコル ドライバーは NDIS バインディング ハンドルを指定します。
基になるミニポート アダプターは、 を呼び出している必要があります ドライバーが NdisBuildScatterGatherList を呼び出す前の NdisMRegisterScatterGatherDma。
NDIS は、 の ProcessSGListHandler メンバーで指定された NetProcessSGList 関数を呼び出します。ndisBuildScatterGatherList のコンテキスト内の構造体をNDIS_SCATTER_GATHER_LIST_PARAMETERSします。
ドライバーは、 を呼び出す必要があります。を使用して作成された散布図/収集リストを解放する NdisFreeScatterGatherList 関数 NdisBuildScatterGatherList 関数。
要件
要件 | 値 |
---|---|
サポートされている最小のクライアント | NDIS 6.20 以降でサポートされています。 |
対象プラットフォーム | ユニバーサル |
Header | ndis.h (Ndis.h を含む) |
Library | Ndis.lib |
IRQL | = DISPATCH_LEVEL |