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__
24 #define MAXLEN_IFDESCR 256
25 #define MAXLEN_PHYSADDR 8
27 typedef struct _MIB_IFROW
29 WCHAR wszName[MAX_INTERFACE_NAME_LEN];
35 BYTE bPhysAddr[MAXLEN_PHYSADDR];
44 DWORD dwInUnknownProtos;
47 DWORD dwOutNUcastPkts;
52 BYTE bDescr[MAXLEN_IFDESCR];
53 } MIB_IFROW,*PMIB_IFROW;
55 typedef struct _MIB_IFTABLE
59 } MIB_IFTABLE, *PMIB_IFTABLE;
61 typedef struct _MIBICMPSTATS
73 DWORD dwTimestampReps;
78 typedef struct _MIBICMPINFO
80 MIBICMPSTATS icmpInStats;
81 MIBICMPSTATS icmpOutStats;
84 typedef struct _MIB_ICMP
87 } MIB_ICMP,*PMIB_ICMP;
89 typedef struct _MIB_UDPSTATS
96 } MIB_UDPSTATS,*PMIB_UDPSTATS;
98 typedef struct _MIB_UDPROW
102 } MIB_UDPROW, *PMIB_UDPROW;
104 typedef struct _MIB_UDPTABLE
108 } MIB_UDPTABLE, *PMIB_UDPTABLE;
110 typedef struct _MIB_TCPSTATS
112 DWORD dwRtoAlgorithm;
117 DWORD dwPassiveOpens;
118 DWORD dwAttemptFails;
127 } MIB_TCPSTATS, *PMIB_TCPSTATS;
129 typedef struct _MIB_TCPROW
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
155 } MIB_TCPTABLE, *PMIB_TCPTABLE;
157 typedef struct _MIB_IPSTATS
163 DWORD dwInAddrErrors;
164 DWORD dwForwDatagrams;
165 DWORD dwInUnknownProtos;
169 DWORD dwRoutingDiscards;
172 DWORD dwReasmTimeout;
182 } MIB_IPSTATS, *PMIB_IPSTATS;
184 typedef struct _MIB_IPADDRROW
191 unsigned short unused1;
192 unsigned short wType;
193 } MIB_IPADDRROW, *PMIB_IPADDRROW;
195 typedef struct _MIB_IPADDRTABLE
198 MIB_IPADDRROW table[1];
199 } MIB_IPADDRTABLE, *PMIB_IPADDRTABLE;
202 typedef struct _MIB_IPFORWARDNUMBER
205 }MIB_IPFORWARDNUMBER,*PMIB_IPFORWARDNUMBER;
207 typedef struct _MIB_IPFORWARDROW
211 DWORD dwForwardPolicy;
212 DWORD dwForwardNextHop;
213 DWORD dwForwardIfIndex;
215 DWORD dwForwardProto;
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
252 MIB_IPFORWARDROW table[1];
253 } MIB_IPFORWARDTABLE, *PMIB_IPFORWARDTABLE;
255 typedef struct _MIB_IPNETROW
259 BYTE bPhysAddr[MAXLEN_PHYSADDR];
262 } MIB_IPNETROW, *PMIB_IPNETROW;
264 #define MIB_IPNET_TYPE_OTHER 1
265 #define MIB_IPNET_TYPE_INVALID 2
266 #define MIB_IPNET_TYPE_DYNAMIC 3
267 #define MIB_IPNET_TYPE_STATIC 4
269 typedef struct _MIB_IPNETTABLE
272 MIB_IPNETROW table[1];
273 } MIB_IPNETTABLE, *PMIB_IPNETTABLE;
275 #endif /* WINE_IPRTRMIB_H__ */