Git for Windows Git-1.6.5.1-preview20100112-with-cheetah
[msysgit.git] / mingw / include / iprtrmib.h
blob3b32f45b90b7eba5d037ce7a3bc49718e94128e9
1 #ifndef _IPRTRMIB_H
2 #define _IPRTRMIB_H
3 #if __GNUC__ >=3
4 #pragma GCC system_header
5 #endif
7 #include <ipifcons.h>
8 #ifdef __cplusplus
9 extern "C" {
10 #endif
11 #ifndef ANY_SIZE
12 #define ANY_SIZE 1
13 #endif
14 #define MAXLEN_PHYSADDR 8
15 #define MAXLEN_IFDESCR 256
16 #ifndef MAX_INTERFACE_NAME_LEN
17 #define MAX_INTERFACE_NAME_LEN 256
18 #endif
19 #define MIB_IPNET_TYPE_OTHER 1
20 #define MIB_IPNET_TYPE_INVALID 2
21 #define MIB_IPNET_TYPE_DYNAMIC 3
22 #define MIB_IPNET_TYPE_STATIC 4
23 #define MIB_TCP_RTO_OTHER 1
24 #define MIB_TCP_RTO_CONSTANT 2
25 #define MIB_TCP_RTO_RSRE 3
26 #define MIB_TCP_RTO_VANJ 4
27 #define MIB_TCP_STATE_CLOSED 1
28 #define MIB_TCP_STATE_LISTEN 2
29 #define MIB_TCP_STATE_SYN_SENT 3
30 #define MIB_TCP_STATE_SYN_RCVD 4
31 #define MIB_TCP_STATE_ESTAB 5
32 #define MIB_TCP_STATE_FIN_WAIT1 6
33 #define MIB_TCP_STATE_FIN_WAIT2 7
34 #define MIB_TCP_STATE_CLOSE_WAIT 8
35 #define MIB_TCP_STATE_CLOSING 9
36 #define MIB_TCP_STATE_LAST_ACK 10
37 #define MIB_TCP_STATE_TIME_WAIT 11
38 #define MIB_TCP_STATE_DELETE_TCB 12
39 #define MIB_USE_CURRENT_TTL ((DWORD)-1)
40 #define MIB_USE_CURRENT_FORWARDING ((DWORD)-1)
41 #define MIB_TCP_MAXCONN_DYNAMIC ((DWORD)-1)
42 typedef enum {
43 TCP_TABLE_BASIC_LISTENER,
44 TCP_TABLE_BASIC_CONNECTIONS,
45 TCP_TABLE_BASIC_ALL,
46 TCP_TABLE_OWNER_PID_LISTENER,
47 TCP_TABLE_OWNER_PID_CONNECTIONS,
48 TCP_TABLE_OWNER_PID_ALL,
49 TCP_TABLE_OWNER_MODULE_LISTENER,
50 TCP_TABLE_OWNER_MODULE_CONNECTIONS,
51 TCP_TABLE_OWNER_MODULE_ALL
52 } TCP_TABLE_CLASS, *PTCP_TABLE_CLASS;
53 typedef struct {
54 DWORD dwAddr;
55 DWORD dwIndex;
56 DWORD dwMask;
57 DWORD dwBCastAddr;
58 DWORD dwReasmSize;
59 unsigned short unused1;
60 unsigned short unused2;
61 } MIB_IPADDRROW, *PMIB_IPADDRROW;
62 typedef struct {
63 DWORD dwNumEntries;
64 MIB_IPADDRROW table[ANY_SIZE];
65 } MIB_IPADDRTABLE, *PMIB_IPADDRTABLE;
66 typedef struct {
67 DWORD dwForwardDest;
68 DWORD dwForwardMask;
69 DWORD dwForwardPolicy;
70 DWORD dwForwardNextHop;
71 DWORD dwForwardIfIndex;
72 DWORD dwForwardType;
73 DWORD dwForwardProto;
74 DWORD dwForwardAge;
75 DWORD dwForwardNextHopAS;
76 DWORD dwForwardMetric1;
77 DWORD dwForwardMetric2;
78 DWORD dwForwardMetric3;
79 DWORD dwForwardMetric4;
80 DWORD dwForwardMetric5;
81 } MIB_IPFORWARDROW, *PMIB_IPFORWARDROW;
82 typedef struct {
83 DWORD dwNumEntries;
84 MIB_IPFORWARDROW table[ANY_SIZE];
85 } MIB_IPFORWARDTABLE, *PMIB_IPFORWARDTABLE;
86 typedef struct {
87 DWORD dwIndex;
88 DWORD dwPhysAddrLen;
89 BYTE bPhysAddr[MAXLEN_PHYSADDR];
90 DWORD dwAddr;
91 DWORD dwType;
92 } MIB_IPNETROW, *PMIB_IPNETROW;
93 typedef struct {
94 DWORD dwNumEntries;
95 MIB_IPNETROW table[ANY_SIZE];
96 } MIB_IPNETTABLE, *PMIB_IPNETTABLE;
97 typedef struct {
98 DWORD dwMsgs;
99 DWORD dwErrors;
100 DWORD dwDestUnreachs;
101 DWORD dwTimeExcds;
102 DWORD dwParmProbs;
103 DWORD dwSrcQuenchs;
104 DWORD dwRedirects;
105 DWORD dwEchos;
106 DWORD dwEchoReps;
107 DWORD dwTimestamps;
108 DWORD dwTimestampReps;
109 DWORD dwAddrMasks;
110 DWORD dwAddrMaskReps;
111 } MIBICMPSTATS, *PMIBICMPSTATS;
112 typedef struct {
113 MIBICMPSTATS icmpInStats;
114 MIBICMPSTATS icmpOutStats;
115 } MIBICMPINFO, *PMIBICMPINFO;
116 typedef struct {
117 MIBICMPINFO stats;
118 } MIB_ICMP, *PMIB_ICMP;
119 typedef struct {
120 WCHAR wszName[MAX_INTERFACE_NAME_LEN];
121 DWORD dwIndex;
122 DWORD dwType;
123 DWORD dwMtu;
124 DWORD dwSpeed;
125 DWORD dwPhysAddrLen;
126 BYTE bPhysAddr[MAXLEN_PHYSADDR];
127 DWORD dwAdminStatus;
128 DWORD dwOperStatus;
129 DWORD dwLastChange;
130 DWORD dwInOctets;
131 DWORD dwInUcastPkts;
132 DWORD dwInNUcastPkts;
133 DWORD dwInDiscards;
134 DWORD dwInErrors;
135 DWORD dwInUnknownProtos;
136 DWORD dwOutOctets;
137 DWORD dwOutUcastPkts;
138 DWORD dwOutNUcastPkts;
139 DWORD dwOutDiscards;
140 DWORD dwOutErrors;
141 DWORD dwOutQLen;
142 DWORD dwDescrLen;
143 BYTE bDescr[MAXLEN_IFDESCR];
144 } MIB_IFROW, *PMIB_IFROW;
145 typedef struct {
146 DWORD dwNumEntries;
147 MIB_IFROW table[ANY_SIZE];
148 } MIB_IFTABLE, *PMIB_IFTABLE;
149 typedef struct {
150 DWORD dwForwarding;
151 DWORD dwDefaultTTL;
152 DWORD dwInReceives;
153 DWORD dwInHdrErrors;
154 DWORD dwInAddrErrors;
155 DWORD dwForwDatagrams;
156 DWORD dwInUnknownProtos;
157 DWORD dwInDiscards;
158 DWORD dwInDelivers;
159 DWORD dwOutRequests;
160 DWORD dwRoutingDiscards;
161 DWORD dwOutDiscards;
162 DWORD dwOutNoRoutes;
163 DWORD dwReasmTimeout;
164 DWORD dwReasmReqds;
165 DWORD dwReasmOks;
166 DWORD dwReasmFails;
167 DWORD dwFragOks;
168 DWORD dwFragFails;
169 DWORD dwFragCreates;
170 DWORD dwNumIf;
171 DWORD dwNumAddr;
172 DWORD dwNumRoutes;
173 } MIB_IPSTATS, *PMIB_IPSTATS;
174 typedef struct {
175 DWORD dwRtoAlgorithm;
176 DWORD dwRtoMin;
177 DWORD dwRtoMax;
178 DWORD dwMaxConn;
179 DWORD dwActiveOpens;
180 DWORD dwPassiveOpens;
181 DWORD dwAttemptFails;
182 DWORD dwEstabResets;
183 DWORD dwCurrEstab;
184 DWORD dwInSegs;
185 DWORD dwOutSegs;
186 DWORD dwRetransSegs;
187 DWORD dwInErrs;
188 DWORD dwOutRsts;
189 DWORD dwNumConns;
190 } MIB_TCPSTATS, *PMIB_TCPSTATS;
191 typedef struct {
192 DWORD dwState;
193 DWORD dwLocalAddr;
194 DWORD dwLocalPort;
195 DWORD dwRemoteAddr;
196 DWORD dwRemotePort;
197 } MIB_TCPROW, *PMIB_TCPROW;
198 typedef struct {
199 DWORD dwNumEntries;
200 MIB_TCPROW table[ANY_SIZE];
201 } MIB_TCPTABLE, *PMIB_TCPTABLE;
202 typedef struct {
203 DWORD dwState;
204 DWORD dwLocalAddr;
205 DWORD dwLocalPort;
206 DWORD dwRemoteAddr;
207 DWORD dwRemotePort;
208 DWORD dwOwningPid;
209 } MIB_TCPROW_OWNER_PID, *PMIB_TCPROW_OWNER_PID;
210 typedef struct {
211 DWORD dwNumEntries;
212 MIB_TCPROW_OWNER_PID table[ANY_SIZE];
213 } MIB_TCPTABLE_OWNER_PID, *PMIB_TCPTABLE_OWNER_PID;
214 typedef struct {
215 DWORD dwInDatagrams;
216 DWORD dwNoPorts;
217 DWORD dwInErrors;
218 DWORD dwOutDatagrams;
219 DWORD dwNumAddrs;
220 } MIB_UDPSTATS, *PMIB_UDPSTATS;
221 typedef struct {
222 DWORD dwLocalAddr;
223 DWORD dwLocalPort;
224 } MIB_UDPROW, *PMIB_UDPROW;
225 typedef struct {
226 DWORD dwNumEntries;
227 MIB_UDPROW table[ANY_SIZE];
228 } MIB_UDPTABLE, *PMIB_UDPTABLE;
229 typedef struct {
230 UCHAR ucLocalAddr[16];
231 DWORD dwLocalScopeId;
232 DWORD dwLocalPort;
233 UCHAR ucRemoteAddr[16];
234 DWORD dwRemoteScopeId;
235 DWORD dwRemotePort;
236 DWORD dwState;
237 DWORD dwOwningPid;
238 } MIB_TCP6ROW_OWNER_PID, *PMIB_TCP6ROW_OWNER_PID;
239 typedef struct {
240 DWORD dwNumEntries;
241 MIB_TCP6ROW_OWNER_PID table[ANY_SIZE];
242 } MIB_TCP6TABLE_OWNER_PID, *PMIB_TCP6TABLE_OWNER_PID;
243 #ifdef __cplusplus
245 #endif
246 #endif /* _IPRTRMIB_H */