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