NdisBuildScatterGatherList 함수(ndis.h)
NdisBuildScatterGatherList 함수는 지정된 매개 변수를 사용하여 분산/수집 목록을 빌드합니다.
구문
NDIS_STATUS NdisBuildScatterGatherList(
[in] IN NDIS_HANDLE NdisHandle,
[in] IN PNDIS_SCATTER_GATHER_LIST_PARAMETERS SGListParameters
);
매개 변수
[in] NdisHandle
호출자 초기화 중에 가져온 NDIS 드라이버 또는 instance 핸들입니다. 예를 들어 미니포트 드라이버는 에서 가져온 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 이상에서 지원됩니다. |
대상 플랫폼 | 유니버설 |
헤더 | ndis.h(Ndis.h 포함) |
라이브러리 | Ndis.lib |
IRQL | = DISPATCH_LEVEL |