stash
[wine/wine64.git] / include / iprtrmib.h
blobcf2bb24db34a8192913887fa6a2ec241b30208e6
1 /* WINE iprtrmib.h
2 * Copyright (C) 2003 Juan Lang
4 * This library is free software; you can redistribute it and/or
5 * modify it under the terms of the GNU Lesser General Public
6 * License as published by the Free Software Foundation; either
7 * version 2.1 of the License, or (at your option) any later version.
9 * This library is distributed in the hope that it will be useful,
10 * but WITHOUT ANY WARRANTY; without even the implied warranty of
11 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
12 * Lesser General Public License for more details.
14 * You should have received a copy of the GNU Lesser General Public
15 * License along with this library; if not, write to the Free Software
16 * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
18 #ifndef WINE_IPRTRMIB_H__
19 #define WINE_IPRTRMIB_H__
21 #include <mprapi.h>
22 #include <ipifcons.h>
24 #define MAXLEN_IFDESCR 256
25 #define MAXLEN_PHYSADDR 8
27 typedef struct _MIB_IFROW
29 WCHAR wszName[MAX_INTERFACE_NAME_LEN];
30 DWORD dwIndex;
31 DWORD dwType;
32 DWORD dwMtu;
33 DWORD dwSpeed;
34 DWORD dwPhysAddrLen;
35 BYTE bPhysAddr[MAXLEN_PHYSADDR];
36 DWORD dwAdminStatus;
37 DWORD dwOperStatus;
38 DWORD dwLastChange;
39 DWORD dwInOctets;
40 DWORD dwInUcastPkts;
41 DWORD dwInNUcastPkts;
42 DWORD dwInDiscards;
43 DWORD dwInErrors;
44 DWORD dwInUnknownProtos;
45 DWORD dwOutOctets;
46 DWORD dwOutUcastPkts;
47 DWORD dwOutNUcastPkts;
48 DWORD dwOutDiscards;
49 DWORD dwOutErrors;
50 DWORD dwOutQLen;
51 DWORD dwDescrLen;
52 BYTE bDescr[MAXLEN_IFDESCR];
53 } MIB_IFROW,*PMIB_IFROW;
55 typedef struct _MIB_IFTABLE
57 DWORD dwNumEntries;
58 MIB_IFROW table[1];
59 } MIB_IFTABLE, *PMIB_IFTABLE;
61 typedef struct _MIBICMPSTATS
63 DWORD dwMsgs;
64 DWORD dwErrors;
65 DWORD dwDestUnreachs;
66 DWORD dwTimeExcds;
67 DWORD dwParmProbs;
68 DWORD dwSrcQuenchs;
69 DWORD dwRedirects;
70 DWORD dwEchos;
71 DWORD dwEchoReps;
72 DWORD dwTimestamps;
73 DWORD dwTimestampReps;
74 DWORD dwAddrMasks;
75 DWORD dwAddrMaskReps;
76 } MIBICMPSTATS;
78 typedef struct _MIBICMPINFO
80 MIBICMPSTATS icmpInStats;
81 MIBICMPSTATS icmpOutStats;
82 } MIBICMPINFO;
84 typedef struct _MIB_ICMP
86 MIBICMPINFO stats;
87 } MIB_ICMP,*PMIB_ICMP;
89 typedef struct _MIB_UDPSTATS
91 DWORD dwInDatagrams;
92 DWORD dwNoPorts;
93 DWORD dwInErrors;
94 DWORD dwOutDatagrams;
95 DWORD dwNumAddrs;
96 } MIB_UDPSTATS,*PMIB_UDPSTATS;
98 typedef struct _MIB_UDPROW
100 DWORD dwLocalAddr;
101 DWORD dwLocalPort;
102 } MIB_UDPROW, *PMIB_UDPROW;
104 typedef struct _MIB_UDPTABLE
106 DWORD dwNumEntries;
107 MIB_UDPROW table[1];
108 } MIB_UDPTABLE, *PMIB_UDPTABLE;
110 typedef struct _MIB_TCPSTATS
112 DWORD dwRtoAlgorithm;
113 DWORD dwRtoMin;
114 DWORD dwRtoMax;
115 DWORD dwMaxConn;
116 DWORD dwActiveOpens;
117 DWORD dwPassiveOpens;
118 DWORD dwAttemptFails;
119 DWORD dwEstabResets;
120 DWORD dwCurrEstab;
121 DWORD dwInSegs;
122 DWORD dwOutSegs;
123 DWORD dwRetransSegs;
124 DWORD dwInErrs;
125 DWORD dwOutRsts;
126 DWORD dwNumConns;
127 } MIB_TCPSTATS, *PMIB_TCPSTATS;
129 typedef struct _MIB_TCPROW
131 DWORD dwState;
132 DWORD dwLocalAddr;
133 DWORD dwLocalPort;
134 DWORD dwRemoteAddr;
135 DWORD dwRemotePort;
136 } MIB_TCPROW, *PMIB_TCPROW;
138 #define MIB_TCP_STATE_CLOSED 1
139 #define MIB_TCP_STATE_LISTEN 2
140 #define MIB_TCP_STATE_SYN_SENT 3
141 #define MIB_TCP_STATE_SYN_RCVD 4
142 #define MIB_TCP_STATE_ESTAB 5
143 #define MIB_TCP_STATE_FIN_WAIT1 6
144 #define MIB_TCP_STATE_FIN_WAIT2 7
145 #define MIB_TCP_STATE_CLOSE_WAIT 8
146 #define MIB_TCP_STATE_CLOSING 9
147 #define MIB_TCP_STATE_LAST_ACK 10
148 #define MIB_TCP_STATE_TIME_WAIT 11
149 #define MIB_TCP_STATE_DELETE_TCB 12
151 typedef struct _MIB_TCPTABLE
153 DWORD dwNumEntries;
154 MIB_TCPROW table[1];
155 } MIB_TCPTABLE, *PMIB_TCPTABLE;
157 typedef struct _MIB_IPSTATS
159 DWORD dwForwarding;
160 DWORD dwDefaultTTL;
161 DWORD dwInReceives;
162 DWORD dwInHdrErrors;
163 DWORD dwInAddrErrors;
164 DWORD dwForwDatagrams;
165 DWORD dwInUnknownProtos;
166 DWORD dwInDiscards;
167 DWORD dwInDelivers;
168 DWORD dwOutRequests;
169 DWORD dwRoutingDiscards;
170 DWORD dwOutDiscards;
171 DWORD dwOutNoRoutes;
172 DWORD dwReasmTimeout;
173 DWORD dwReasmReqds;
174 DWORD dwReasmOks;
175 DWORD dwReasmFails;
176 DWORD dwFragOks;
177 DWORD dwFragFails;
178 DWORD dwFragCreates;
179 DWORD dwNumIf;
180 DWORD dwNumAddr;
181 DWORD dwNumRoutes;
182 } MIB_IPSTATS, *PMIB_IPSTATS;
184 typedef struct _MIB_IPADDRROW
186 DWORD dwAddr;
187 DWORD dwIndex;
188 DWORD dwMask;
189 DWORD dwBCastAddr;
190 DWORD dwReasmSize;
191 unsigned short unused1;
192 unsigned short wType;
193 } MIB_IPADDRROW, *PMIB_IPADDRROW;
195 typedef struct _MIB_IPADDRTABLE
197 DWORD dwNumEntries;
198 MIB_IPADDRROW table[1];
199 } MIB_IPADDRTABLE, *PMIB_IPADDRTABLE;
202 typedef struct _MIB_IPFORWARDNUMBER
204 DWORD dwValue;
205 }MIB_IPFORWARDNUMBER,*PMIB_IPFORWARDNUMBER;
207 typedef struct _MIB_IPFORWARDROW
209 DWORD dwForwardDest;
210 DWORD dwForwardMask;
211 DWORD dwForwardPolicy;
212 DWORD dwForwardNextHop;
213 DWORD dwForwardIfIndex;
214 DWORD dwForwardType;
215 DWORD dwForwardProto;
216 DWORD dwForwardAge;
217 DWORD dwForwardNextHopAS;
218 DWORD dwForwardMetric1;
219 DWORD dwForwardMetric2;
220 DWORD dwForwardMetric3;
221 DWORD dwForwardMetric4;
222 DWORD dwForwardMetric5;
223 }MIB_IPFORWARDROW, *PMIB_IPFORWARDROW;
225 #define MIB_IPROUTE_TYPE_OTHER 1
226 #define MIB_IPROUTE_TYPE_INVALID 2
227 #define MIB_IPROUTE_TYPE_DIRECT 3
228 #define MIB_IPROUTE_TYPE_INDIRECT 4
230 #define MIB_IPPROTO_OTHER 1
231 #define MIB_IPPROTO_LOCAL 2
232 #define MIB_IPPROTO_NETMGMT 3
233 #define MIB_IPPROTO_ICMP 4
234 #define MIB_IPPROTO_EGP 5
235 #define MIB_IPPROTO_GGP 6
236 #define MIB_IPPROTO_HELLO 7
237 #define MIB_IPPROTO_RIP 8
238 #define MIB_IPPROTO_IS_IS 9
239 #define MIB_IPPROTO_ES_IS 10
240 #define MIB_IPPROTO_CISCO 11
241 #define MIB_IPPROTO_BBN 12
242 #define MIB_IPPROTO_OSPF 13
243 #define MIB_IPPROTO_BGP 14
245 #define MIB_IPPROTO_NT_AUTOSTATIC 10002
246 #define MIB_IPPROTO_NT_STATIC 10006
247 #define MIB_IPPROTO_NT_STATIC_NON_DOD 10007
249 typedef struct _MIB_IPFORWARDTABLE
251 DWORD dwNumEntries;
252 MIB_IPFORWARDROW table[1];
253 } MIB_IPFORWARDTABLE, *PMIB_IPFORWARDTABLE;
255 typedef struct _MIB_IPNETROW
257 DWORD dwIndex;
258 DWORD dwPhysAddrLen;
259 BYTE bPhysAddr[MAXLEN_PHYSADDR];
260 DWORD dwAddr;
261 DWORD dwType;
262 } MIB_IPNETROW, *PMIB_IPNETROW;
264 #define MIB_TCP_RTO_OTHER 1
265 #define MIB_TCP_RTO_CONSTANT 2
266 #define MIB_TCP_RTO_RSRE 3
267 #define MIB_TCP_RTO_VANJ 4
268 #define MIB_IPNET_TYPE_OTHER 1
269 #define MIB_IPNET_TYPE_INVALID 2
270 #define MIB_IPNET_TYPE_DYNAMIC 3
271 #define MIB_IPNET_TYPE_STATIC 4
273 typedef struct _MIB_IPNETTABLE
275 DWORD dwNumEntries;
276 MIB_IPNETROW table[1];
277 } MIB_IPNETTABLE, *PMIB_IPNETTABLE;
279 #endif /* WINE_IPRTRMIB_H__ */