1ee30fadf583ee03c6cb0bad19adc697325ccc5e
[reactos.git] / reactos / drivers / network / tcpip / include / routines.h
1 /*
2 * COPYRIGHT: See COPYING in the top level directory
3 * PROJECT: ReactOS TCP/IP protocol driver
4 * FILE: include/routines.h
5 * PURPOSE: Common routine prototypes
6 */
7 #ifndef __ROUTINES_H
8 #define __ROUTINES_H
9
10
11 UINT Random(VOID);
12
13 UINT CopyBufferToBufferChain(
14 PNDIS_BUFFER DstBuffer,
15 UINT DstOffset,
16 PCHAR SrcData,
17 UINT Length);
18
19 UINT CopyBufferChainToBuffer(
20 PCHAR DstData,
21 PNDIS_BUFFER SrcBuffer,
22 UINT SrcOffset,
23 UINT Length);
24
25 UINT CopyPacketToBuffer(
26 PCHAR DstData,
27 PNDIS_PACKET SrcPacket,
28 UINT SrcOffset,
29 UINT Length);
30
31 UINT CopyPacketToBufferChain(
32 PNDIS_BUFFER DstBuffer,
33 UINT DstOffset,
34 PNDIS_PACKET SrcPacket,
35 UINT SrcOffset,
36 UINT Length);
37
38 VOID FreeNdisPacketX(
39 PNDIS_PACKET Packet,
40 PCHAR File,
41 UINT Line);
42
43 PVOID AdjustPacket(
44 PNDIS_PACKET Packet,
45 UINT Available,
46 UINT Needed);
47
48 UINT ResizePacket(
49 PNDIS_PACKET Packet,
50 UINT Size);
51
52 NDIS_STATUS AllocatePacketWithBufferX( PNDIS_PACKET *NdisPacket,
53 PCHAR Data, UINT Len,
54 PCHAR File, UINT Line );
55
56 void GetDataPtr( PNDIS_PACKET Packet,
57 UINT Offset,
58 PCHAR *DataOut,
59 PUINT Size );
60
61 #ifdef DBG
62 VOID DisplayIPPacket(
63 PIP_PACKET IPPacket);
64 #define DISPLAY_IP_PACKET(x) DisplayIPPacket(x)
65 VOID DisplayTCPPacket(
66 PIP_PACKET IPPacket);
67 #define DISPLAY_TCP_PACKET(x) DisplayTCPPacket(x)
68 #else
69 #define DISPLAY_IP_PACKET(x)
70 #define DISPLAY_TCP_PACKET(x)
71 #endif /* DBG */
72
73 #endif /* __ROUTINES_H */
74
75 /* EOF */