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 #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 _MIB_TCPROW
137 } MIB_TCPROW
, *PMIB_TCPROW
;
139 #define MIB_TCP_STATE_CLOSED 1
140 #define MIB_TCP_STATE_LISTEN 2
141 #define MIB_TCP_STATE_SYN_SENT 3
142 #define MIB_TCP_STATE_SYN_RCVD 4
143 #define MIB_TCP_STATE_ESTAB 5
144 #define MIB_TCP_STATE_FIN_WAIT1 6
145 #define MIB_TCP_STATE_FIN_WAIT2 7
146 #define MIB_TCP_STATE_CLOSE_WAIT 8
147 #define MIB_TCP_STATE_CLOSING 9
148 #define MIB_TCP_STATE_LAST_ACK 10
149 #define MIB_TCP_STATE_TIME_WAIT 11
150 #define MIB_TCP_STATE_DELETE_TCB 12
152 typedef struct _MIB_TCPTABLE
156 } MIB_TCPTABLE
, *PMIB_TCPTABLE
;
158 typedef struct _MIB_IPSTATS
164 DWORD dwInAddrErrors
;
165 DWORD dwForwDatagrams
;
166 DWORD dwInUnknownProtos
;
170 DWORD dwRoutingDiscards
;
173 DWORD dwReasmTimeout
;
183 } MIB_IPSTATS
, *PMIB_IPSTATS
;
185 typedef struct _MIB_IPADDRROW
192 unsigned short unused1
;
193 unsigned short wType
;
194 } MIB_IPADDRROW
, *PMIB_IPADDRROW
;
196 typedef struct _MIB_IPADDRTABLE
199 MIB_IPADDRROW table
[1];
200 } MIB_IPADDRTABLE
, *PMIB_IPADDRTABLE
;
203 typedef struct _MIB_IPFORWARDNUMBER
206 }MIB_IPFORWARDNUMBER
,*PMIB_IPFORWARDNUMBER
;
208 typedef struct _MIB_IPFORWARDROW
212 DWORD dwForwardPolicy
;
213 DWORD dwForwardNextHop
;
214 DWORD dwForwardIfIndex
;
216 DWORD dwForwardProto
;
218 DWORD dwForwardNextHopAS
;
219 DWORD dwForwardMetric1
;
220 DWORD dwForwardMetric2
;
221 DWORD dwForwardMetric3
;
222 DWORD dwForwardMetric4
;
223 DWORD dwForwardMetric5
;
224 }MIB_IPFORWARDROW
, *PMIB_IPFORWARDROW
;
226 #define MIB_IPROUTE_TYPE_OTHER 1
227 #define MIB_IPROUTE_TYPE_INVALID 2
228 #define MIB_IPROUTE_TYPE_DIRECT 3
229 #define MIB_IPROUTE_TYPE_INDIRECT 4
231 #define MIB_IPPROTO_OTHER 1
232 #define MIB_IPPROTO_LOCAL 2
233 #define MIB_IPPROTO_NETMGMT 3
234 #define MIB_IPPROTO_ICMP 4
235 #define MIB_IPPROTO_EGP 5
236 #define MIB_IPPROTO_GGP 6
237 #define MIB_IPPROTO_HELLO 7
238 #define MIB_IPPROTO_RIP 8
239 #define MIB_IPPROTO_IS_IS 9
240 #define MIB_IPPROTO_ES_IS 10
241 #define MIB_IPPROTO_CISCO 11
242 #define MIB_IPPROTO_BBN 12
243 #define MIB_IPPROTO_OSPF 13
244 #define MIB_IPPROTO_BGP 14
246 #define MIB_IPPROTO_NT_AUTOSTATIC 10002
247 #define MIB_IPPROTO_NT_STATIC 10006
248 #define MIB_IPPROTO_NT_STATIC_NON_DOD 10007
250 typedef struct _MIB_IPFORWARDTABLE
253 MIB_IPFORWARDROW table
[1];
254 } MIB_IPFORWARDTABLE
, *PMIB_IPFORWARDTABLE
;
256 typedef struct _MIB_IPNETROW
260 BYTE bPhysAddr
[MAXLEN_PHYSADDR
];
263 } MIB_IPNETROW
, *PMIB_IPNETROW
;
265 #define MIB_IPNET_TYPE_OTHER 1
266 #define MIB_IPNET_TYPE_INVALID 2
267 #define MIB_IPNET_TYPE_DYNAMIC 3
268 #define MIB_IPNET_TYPE_STATIC 4
270 typedef struct _MIB_IPNETTABLE
273 MIB_IPNETROW table
[1];
274 } MIB_IPNETTABLE
, *PMIB_IPNETTABLE
;
276 #endif /* WINE_IPRTRMIB_H__ */