NET_BUFFER_DATA 구조체(ndis/nbl.h)
NET_BUFFER_DATA 구조에는 NET_BUFFER 구조에 연결된 데이터 버퍼를 관리하기 위한 정보가 포함되어 있으며 NET_BUFFER 구조 목록에서 다음 NET_BUFFER 구조를 식별합니다.
구문
typedef struct _NET_BUFFER_DATA {
NET_BUFFER *Next;
MDL *CurrentMdl;
ULONG CurrentMdlOffset;
NET_BUFFER_DATA_LENGTH NbDataLength;
MDL *MdlChain;
ULONG DataOffset;
} NET_BUFFER_DATA, *PNET_BUFFER_DATA;
멤버
Next
연결된 NET_BUFFER 구조 목록의 다음 NET_BUFFER 구조체에 대한 포인터입니다. 이 구조체가 목록의 마지막 NET_BUFFER 구조체인 경우 이 멤버는 NULL입니다.
CurrentMdl
현재 드라이버에서 사용 중인 첫 번째 MDL에 대한 포인터입니다. 이 멤버는 현재 드라이버에서 사용하지 않는 MDL을 건너뛰어 성능을 향상시키는 최적화를 제공합니다.
CurrentMdlOffset
CurrentMdl 멤버에 의해 지정된 MDL에서 사용된 데이터 공간의 시작 부분에 대한 오프셋(바이트)입니다.
NbDataLength
MDL 체인에서 사용된 데이터 공간의 길이(바이트)입니다. 최대 길이는 0xFFFFFFFF 바이트입니다.
MdlChain
데이터 버퍼를 매핑하는 연결된 MDL 목록에 대한 포인터입니다. 데이터 버퍼는 네트워크 데이터를 저장합니다.
DataOffset
MDL 체인의 시작부터 MDL 체인의 네트워크 데이터 시작까지의 오프셋(바이트)입니다. 또한 이 오프셋은 사용되지 않는 데이터 공간의 크기(바이트)이기도 합니다.
설명
NET_BUFFER_HEADER 구조에는 NET_BUFFER 구조체에 대한 데이터를 정의하는 NET_BUFFER_DATA 구조체가 포함되어 있습니다. NET_BUFFER_DATA 멤버에 액세스하려면 NdisRetreatNetBufferDataStart 및 NdisAdvanceNetBufferDataStart 함수 및 다음 매크로:
NET_BUFFER_CURRENT_MDL_OFFSET요구 사항
요구 사항 | 값 |
---|---|
지원되는 최소 클라이언트 | NDIS 6.0 이상에서 지원됩니다. |
머리글 | ndis/nbl.h(ndis.h 포함) |