The real, definitive, Visual C++ support branch. Accept no substitutes
[reactos.git] / drivers / network / tcpip / include / ports.h
1 #ifndef _TCPIP_PORTS_H
2 #define _TCPIP_PORTS_H
3
4 /*
5 * COPYRIGHT: See COPYING in the top level directory
6 * PROJECT: ReactOS TCP/IP protocol driver
7 * FILE: include/ports.h
8 * PURPOSE: Port allocation
9 * PROGRAMMERS: arty (ayerkes@speakeasy.net)
10 * REVISIONS:
11 * arty 20041114 Created
12 */
13
14 typedef struct _PORT_SET {
15 RTL_BITMAP ProtoBitmap;
16 PVOID ProtoBitBuffer;
17 UINT StartingPort;
18 UINT PortsToOversee;
19 UINT LastAllocatedPort;
20 FAST_MUTEX Mutex;
21 } PORT_SET, *PPORT_SET;
22
23 NTSTATUS PortsStartup( PPORT_SET PortSet,
24 UINT StartingPort,
25 UINT PortsToManage );
26 VOID PortsShutdown( PPORT_SET PortSet );
27 VOID DeallocatePort( PPORT_SET PortSet, ULONG Port );
28 BOOLEAN AllocatePort( PPORT_SET PortSet, ULONG Port );
29 ULONG AllocateAnyPort( PPORT_SET PortSet );
30 ULONG AllocatePortFromRange( PPORT_SET PortSet, ULONG Lowest, ULONG Highest );
31
32 #endif/*_TCPIP_PORTS_H*/