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., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
18 #ifndef WINE_IPRTRMIB_H__
19 #define WINE_IPRTRMIB_H__
21 #define MAX_INTERFACE_NAME_LEN 256
25 #define MAXLEN_IFDESCR 256
26 #define MAXLEN_PHYSADDR 8
28 typedef struct _MIB_IFROW
30 WCHAR wszName
[MAX_INTERFACE_NAME_LEN
];
36 BYTE bPhysAddr
[MAXLEN_PHYSADDR
];
45 DWORD dwInUnknownProtos
;
48 DWORD dwOutNUcastPkts
;
53 BYTE bDescr
[MAXLEN_IFDESCR
];
54 } MIB_IFROW
,*PMIB_IFROW
;
56 typedef struct _MIB_IFTABLE
60 } MIB_IFTABLE
, *PMIB_IFTABLE
;
62 typedef struct _MIBICMPSTATS
74 DWORD dwTimestampReps
;
79 typedef struct _MIBICMPINFO
81 MIBICMPSTATS icmpInStats
;
82 MIBICMPSTATS icmpOutStats
;
85 typedef struct _MIB_ICMP
88 } MIB_ICMP
,*PMIB_ICMP
;
90 typedef struct _MIB_UDPSTATS
97 } MIB_UDPSTATS
,*PMIB_UDPSTATS
;
99 typedef struct _MIB_UDPROW
103 } MIB_UDPROW
, *PMIB_UDPROW
;
105 typedef struct _MIB_UDPTABLE
109 } MIB_UDPTABLE
, *PMIB_UDPTABLE
;
111 typedef struct _MIB_TCPSTATS
113 DWORD dwRtoAlgorithm
;
118 DWORD dwPassiveOpens
;
119 DWORD dwAttemptFails
;
128 } MIB_TCPSTATS
, *PMIB_TCPSTATS
;
130 typedef struct _MIBICMPSTATS_EX
134 DWORD rgdwTypeCount
[256];
135 } MIBICMPSTATS_EX
, *PMIBICMPSTATS_EX
;
137 typedef struct _MIB_ICMP_EX
139 MIBICMPSTATS_EX icmpInStats
;
140 MIBICMPSTATS_EX icmpOutStats
;
141 } MIB_ICMP_EX
,*PMIB_ICMP_EX
;
143 typedef struct _MIB_TCPROW
150 } MIB_TCPROW
, *PMIB_TCPROW
;
152 #define MIB_TCP_STATE_CLOSED 1
153 #define MIB_TCP_STATE_LISTEN 2
154 #define MIB_TCP_STATE_SYN_SENT 3
155 #define MIB_TCP_STATE_SYN_RCVD 4
156 #define MIB_TCP_STATE_ESTAB 5
157 #define MIB_TCP_STATE_FIN_WAIT1 6
158 #define MIB_TCP_STATE_FIN_WAIT2 7
159 #define MIB_TCP_STATE_CLOSE_WAIT 8
160 #define MIB_TCP_STATE_CLOSING 9
161 #define MIB_TCP_STATE_LAST_ACK 10
162 #define MIB_TCP_STATE_TIME_WAIT 11
163 #define MIB_TCP_STATE_DELETE_TCB 12
165 typedef struct _MIB_TCPTABLE
169 } MIB_TCPTABLE
, *PMIB_TCPTABLE
;
171 typedef struct _MIB_IPSTATS
177 DWORD dwInAddrErrors
;
178 DWORD dwForwDatagrams
;
179 DWORD dwInUnknownProtos
;
183 DWORD dwRoutingDiscards
;
186 DWORD dwReasmTimeout
;
196 } MIB_IPSTATS
, *PMIB_IPSTATS
;
198 typedef struct _MIB_IPADDRROW
205 unsigned short unused1
;
206 unsigned short wType
;
207 } MIB_IPADDRROW
, *PMIB_IPADDRROW
;
209 typedef struct _MIB_IPADDRTABLE
212 MIB_IPADDRROW table
[1];
213 } MIB_IPADDRTABLE
, *PMIB_IPADDRTABLE
;
216 typedef struct _MIB_IPFORWARDNUMBER
219 }MIB_IPFORWARDNUMBER
,*PMIB_IPFORWARDNUMBER
;
221 typedef struct _MIB_IPFORWARDROW
225 DWORD dwForwardPolicy
;
226 DWORD dwForwardNextHop
;
227 DWORD dwForwardIfIndex
;
229 DWORD dwForwardProto
;
231 DWORD dwForwardNextHopAS
;
232 DWORD dwForwardMetric1
;
233 DWORD dwForwardMetric2
;
234 DWORD dwForwardMetric3
;
235 DWORD dwForwardMetric4
;
236 DWORD dwForwardMetric5
;
237 }MIB_IPFORWARDROW
, *PMIB_IPFORWARDROW
;
239 #define MIB_IPROUTE_TYPE_OTHER 1
240 #define MIB_IPROUTE_TYPE_INVALID 2
241 #define MIB_IPROUTE_TYPE_DIRECT 3
242 #define MIB_IPROUTE_TYPE_INDIRECT 4
244 #define MIB_IPPROTO_OTHER 1
245 #define MIB_IPPROTO_LOCAL 2
246 #define MIB_IPPROTO_NETMGMT 3
247 #define MIB_IPPROTO_ICMP 4
248 #define MIB_IPPROTO_EGP 5
249 #define MIB_IPPROTO_GGP 6
250 #define MIB_IPPROTO_HELLO 7
251 #define MIB_IPPROTO_RIP 8
252 #define MIB_IPPROTO_IS_IS 9
253 #define MIB_IPPROTO_ES_IS 10
254 #define MIB_IPPROTO_CISCO 11
255 #define MIB_IPPROTO_BBN 12
256 #define MIB_IPPROTO_OSPF 13
257 #define MIB_IPPROTO_BGP 14
259 #define MIB_IPPROTO_NT_AUTOSTATIC 10002
260 #define MIB_IPPROTO_NT_STATIC 10006
261 #define MIB_IPPROTO_NT_STATIC_NON_DOD 10007
263 typedef struct _MIB_IPFORWARDTABLE
266 MIB_IPFORWARDROW table
[1];
267 } MIB_IPFORWARDTABLE
, *PMIB_IPFORWARDTABLE
;
269 typedef struct _MIB_IPNETROW
273 BYTE bPhysAddr
[MAXLEN_PHYSADDR
];
276 } MIB_IPNETROW
, *PMIB_IPNETROW
;
278 #define MIB_IPNET_TYPE_OTHER 1
279 #define MIB_IPNET_TYPE_INVALID 2
280 #define MIB_IPNET_TYPE_DYNAMIC 3
281 #define MIB_IPNET_TYPE_STATIC 4
283 typedef struct _MIB_IPNETTABLE
286 MIB_IPNETROW table
[1];
287 } MIB_IPNETTABLE
, *PMIB_IPNETTABLE
;
289 #endif /* WINE_IPRTRMIB_H__ */