ReactOS 0.4.15-dev-7958-gcd0bb1a
buffer.h
Go to the documentation of this file.
1/*
2 * COPYRIGHT: See COPYING in the top level directory
3 * PROJECT: ReactOS NDIS library
4 * FILE: include/buffer.h
5 * PURPOSE: Buffer management routine definitions
6 */
7
8#pragma once
9
10/* FIXME: Possibly move this to ntddk.h */
11typedef struct _NETWORK_HEADER
12{
13 MDL Mdl; /* Memory Descriptor List */
14 struct _NETWORK_HEADER *Next; /* Link to next NDIS buffer in pool */
15 struct _NDIS_BUFFER_POOL *BufferPool; /* Link to NDIS buffer pool */
17
18typedef struct _NDIS_BUFFER_POOL
19{
24
25typedef struct _NDISI_PACKET_POOL {
31
33 PNDIS_BUFFER DstBuffer,
34 UINT DstOffset,
35 PUCHAR SrcData,
36 UINT Length);
37
39 PUCHAR DstData,
40 PNDIS_BUFFER SrcBuffer,
41 UINT SrcOffset,
42 UINT Length);
43
45 PUCHAR DstData,
46 PNDIS_PACKET SrcPacket,
47 UINT SrcOffset,
48 UINT Length);
49
51 PNDIS_BUFFER DstBuffer,
52 UINT DstOffset,
53 PNDIS_PACKET SrcPacket,
54 UINT SrcOffset,
55 UINT Length);
56
57/* EOF */
struct _NDISI_PACKET_POOL * PNDISI_PACKET_POOL
UINT CopyBufferToBufferChain(PNDIS_BUFFER DstBuffer, UINT DstOffset, PUCHAR SrcData, UINT Length)
Definition: buffer.c:56
UINT CopyBufferChainToBuffer(PUCHAR DstData, PNDIS_BUFFER SrcBuffer, UINT SrcOffset, UINT Length)
Definition: buffer.c:113
UINT CopyPacketToBufferChain(PNDIS_BUFFER DstBuffer, UINT DstOffset, PNDIS_PACKET SrcPacket, UINT SrcOffset, UINT Length)
Definition: buffer.c:208
struct _NDISI_PACKET_POOL NDISI_PACKET_POOL
struct _NDIS_BUFFER_POOL NDIS_BUFFER_POOL
UINT CopyPacketToBuffer(PUCHAR DstData, PNDIS_PACKET SrcPacket, UINT SrcOffset, UINT Length)
Definition: buffer.c:172
struct _NETWORK_HEADER * PNETWORK_HEADER
struct _NDIS_BUFFER_POOL * PNDIS_BUFFER_POOL
struct _NETWORK_HEADER NETWORK_HEADER
Definition: bufpool.h:45
ULONG KSPIN_LOCK
Definition: env_spec_w32.h:72
unsigned int UINT
Definition: ndis.h:50
MDL * PNDIS_BUFFER
Definition: ndis.h:343
_In_ ULONG _In_ ULONG _In_ ULONG Length
Definition: ntddpcm.h:102
UINT PacketLength
Definition: buffer.h:28
NDIS_SPIN_LOCK SpinLock
Definition: buffer.h:26
struct _NDIS_PACKET * FreeList
Definition: buffer.h:27
KSPIN_LOCK SpinLock
Definition: buffer.h:20
PNETWORK_HEADER FreeList
Definition: buffer.h:21
NETWORK_HEADER Buffers[0]
Definition: buffer.h:22
struct _NDIS_BUFFER_POOL * BufferPool
Definition: buffer.h:15
struct _NETWORK_HEADER * Next
Definition: buffer.h:14
unsigned char * PUCHAR
Definition: typedefs.h:53
MDL
Definition: mmtypes.h:117
unsigned char UCHAR
Definition: xmlstorage.h:181