// nbl.h
typedef struct _NET_BUFFER_SHARED_MEMORY {
NET_BUFFER_SHARED_MEMORY *NextSharedMemorySegment;
ULONG SharedMemoryFlags;
NDIS_HANDLE SharedMemoryHandle;
ULONG SharedMemoryOffset;
ULONG SharedMemoryLength;
} NET_BUFFER_SHARED_MEMORY, *PNET_BUFFER_SHARED_MEMORY;
View the official Windows Driver Kit DDI referenceNo description available.
The NET_BUFFER_SHARED_MEMORY structure specifies a shared memory buffer that is associated with a NET_BUFFER structure.
NextSharedMemorySegmentA pointer to the next NET_BUFFER_SHARED_MEMORY structure in a NULL-terminated linked list of such structures.
SharedMemoryFlagsA ULONG value that contains shared memory flags. This member is reserved for future use.
SharedMemoryHandleAn NDIS_HANDLE that contains an NDIS shared memory handle.
SharedMemoryOffsetA ULONG value that contains the offset, in bytes, of the shared memory.
SharedMemoryLengthA ULONG value for the length, in bytes, of the shared memory segment.
An NDIS 6.20 or later driver uses the NET_BUFFER_SHARED_MEMORY structure to describe a shared memory buffer. There can be a linked list of such shared memory buffers that are associated with a NET_BUFFER structure. Virtual machine queue (VMQ) capable NICs use these shared memory buffers in the virtualization environment.
Use the NET_BUFFER_SHARED_MEM_NEXT_SEGMENT, NET_BUFFER_SHARED_MEM_FLAGS, NET_BUFFER_SHARED_MEM_HANDLE, NET_BUFFER_SHARED_MEM_OFFSET, and NET_BUFFER_SHARED_MEM_LENGTH macros to access the NET_BUFFER_SHARED_MEMORY in a NET_BUFFER structure. The SharedMemoryInfo member of the NET_BUFFER structure contains the first NET_BUFFER_SHARED_MEMORY structure in the linked list.
NET_BUFFER_SHARED_MEM_NEXT_SEGMENT