+ntoskrnl/ke/mutex.c
[reactos.git] / include / net / tdiinfo.h
1 /*
2  * COPYRIGHT:   See COPYING in the top level directory
3  * PROJECT:     ReactOS TDI library
4  * FILE:        include/net/tdiinfo.h
5  * PURPOSE:     TDI definitions for Tdi(Query/Set)InformationEx
6  */
7 #ifndef __TDIINFO_H
8 #define __TDIINFO_H
9
10 typedef struct TDIEntityID
11 {
12     ULONG   tei_entity;
13         ULONG   tei_instance;
14 } TDIEntityID;
15
16 typedef struct TDIObjectID
17 {
18     TDIEntityID toi_entity;
19     ULONG   toi_class;
20         ULONG   toi_type;
21         ULONG   toi_id;
22 } TDIObjectID;
23
24 #define CONTEXT_SIZE                16
25
26 #define MAX_TDI_ENTITIES                        512
27
28 #define INFO_CLASS_GENERIC          0x100
29 #define INFO_CLASS_PROTOCOL             0x200
30 #define INFO_CLASS_IMPLEMENTATION   0x300
31
32 #define INFO_TYPE_PROVIDER          0x100
33 #define INFO_TYPE_ADDRESS_OBJECT    0x200
34 #define INFO_TYPE_CONNECTION        0x300
35
36
37 #define ENTITY_LIST_ID              0
38
39 #define GENERIC_ENTITY              0
40
41
42 #define IF_ENTITY                   0x200
43
44 #define AT_ENTITY                   0x280
45
46 #define CO_NL_ENTITY                0x300
47 #define CL_NL_ENTITY                0x301
48
49 #define ER_ENTITY                   0x380
50
51 #define CO_TL_ENTITY                0x400
52 #define CL_TL_ENTITY                0x401
53
54
55 /* IDs supported by all entities */
56
57 #define ENTITY_TYPE_ID              1
58
59
60 #define IF_GENERIC                                      0x200
61 #define IF_MIB                                          0x202
62
63 #define AT_ARP                                          0x280
64 #define AT_NULL                                         0x282
65
66 #define CL_NL_IPX                                       0x301
67 #define CL_NL_IP                                        0x303
68
69 #define ER_ICMP                                         0x380
70
71 #define CO_TL_NBF                                       0x400
72 #define CO_TL_SPX                                       0x402
73 #define CO_TL_TCP                                       0x404
74 #define CO_TL_SPP                                       0x406
75
76 #define CL_TL_NBF                                       0x401
77 #define CL_TL_UDP                                       0x403
78
79 /* TCP specific structures */
80
81 typedef struct _TCP_REQUEST_QUERY_INFORMATION_EX
82 {
83         TDIObjectID ID;
84         UCHAR       Context[CONTEXT_SIZE];
85 } TCP_REQUEST_QUERY_INFORMATION_EX, *PTCP_REQUEST_QUERY_INFORMATION_EX;
86
87 typedef struct _TCP_REQUEST_SET_INFORMATION_EX
88 {
89         TDIObjectID ID;
90         UINT        BufferSize;
91         UCHAR       Buffer[1];
92 } TCP_REQUEST_SET_INFORMATION_EX, *PTCP_REQUEST_SET_INFORMATION_EX;
93
94 #endif /* __TDIINFO_H */
95
96 /* EOF */