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_IPMIB_H
19 #define __WINE_IPMIB_H
27 typedef struct _MIB_IPADDRROW
34 unsigned short unused1
;
36 } MIB_IPADDRROW
, *PMIB_IPADDRROW
;
38 typedef struct _MIB_IPADDRTABLE
41 MIB_IPADDRROW table
[1];
42 } MIB_IPADDRTABLE
, *PMIB_IPADDRTABLE
;
47 typedef struct _MIB_IPFORWARDNUMBER
50 } MIB_IPFORWARDNUMBER
, *PMIB_IPFORWARDNUMBER
;
54 MIB_IPROUTE_TYPE_OTHER
= 1,
55 MIB_IPROUTE_TYPE_INVALID
= 2,
56 MIB_IPROUTE_TYPE_DIRECT
= 3,
57 MIB_IPROUTE_TYPE_INDIRECT
= 4,
60 typedef NL_ROUTE_PROTOCOL MIB_IPFORWARD_PROTO
;
62 typedef struct _MIB_IPFORWARDROW
66 DWORD dwForwardPolicy
;
67 DWORD dwForwardNextHop
;
68 IF_INDEX dwForwardIfIndex
;
72 MIB_IPFORWARD_TYPE ForwardType
;
77 MIB_IPFORWARD_PROTO ForwardProto
;
80 DWORD dwForwardNextHopAS
;
81 DWORD dwForwardMetric1
;
82 DWORD dwForwardMetric2
;
83 DWORD dwForwardMetric3
;
84 DWORD dwForwardMetric4
;
85 DWORD dwForwardMetric5
;
86 } MIB_IPFORWARDROW
, *PMIB_IPFORWARDROW
;
88 typedef struct _MIB_IPFORWARDTABLE
91 MIB_IPFORWARDROW table
[1];
92 } MIB_IPFORWARDTABLE
, *PMIB_IPFORWARDTABLE
;
99 MIB_IPNET_TYPE_OTHER
= 1,
100 MIB_IPNET_TYPE_INVALID
= 2,
101 MIB_IPNET_TYPE_DYNAMIC
= 3,
102 MIB_IPNET_TYPE_STATIC
= 4,
105 typedef struct _MIB_IPNETROW
109 BYTE bPhysAddr
[MAXLEN_PHYSADDR
];
116 } MIB_IPNETROW
, *PMIB_IPNETROW
;
118 typedef struct _MIB_IPNETTABLE
121 MIB_IPNETROW table
[1];
122 } MIB_IPNETTABLE
, *PMIB_IPNETTABLE
;
129 MIB_IP_FORWARDING
= 1,
130 MIB_IP_NOT_FORWARDING
= 2,
131 } MIB_IPSTATS_FORWARDING
, *PMIB_IPSTATS_FORWARDING
;
133 typedef struct _MIB_IPSTATS
138 MIB_IPSTATS_FORWARDING Forwarding
;
143 DWORD dwInAddrErrors
;
144 DWORD dwForwDatagrams
;
145 DWORD dwInUnknownProtos
;
149 DWORD dwRoutingDiscards
;
152 DWORD dwReasmTimeout
;
162 } MIB_IPSTATS
, *PMIB_IPSTATS
;
165 /* ICMP statistics */
167 typedef struct _MIBICMPSTATS
171 DWORD dwDestUnreachs
;
179 DWORD dwTimestampReps
;
181 DWORD dwAddrMaskReps
;
182 } MIBICMPSTATS
, *PMIBICMPSTATS
;
184 typedef struct _MIBICMPINFO
186 MIBICMPSTATS icmpInStats
;
187 MIBICMPSTATS icmpOutStats
;
190 typedef struct _MIB_ICMP
193 } MIB_ICMP
, *PMIB_ICMP
;
197 ICMP4_ECHO_REPLY
= 0,
198 ICMP4_DST_UNREACH
= 3,
199 ICMP4_SOURCE_QUENCH
= 4,
201 ICMP4_ECHO_REQUEST
= 8,
202 ICMP4_ROUTER_ADVERT
= 9,
203 ICMP4_ROUTER_SOLICIT
= 10,
204 ICMP4_TIME_EXCEEDED
= 11,
205 ICMP4_PARAM_PROB
= 12,
206 ICMP4_TIMESTAMP_REQUEST
= 13,
207 ICMP4_TIMESTAMP_REPLY
= 14,
208 ICMP4_MASK_REQUEST
= 17,
209 ICMP4_MASK_REPLY
= 18,
210 } ICMP4_TYPE
, *PICMP4_TYPE
;
214 ICMP6_DST_UNREACH
= 1,
215 ICMP6_PACKET_TOO_BIG
= 2,
216 ICMP6_TIME_EXCEEDED
= 3,
217 ICMP6_PARAM_PROB
= 4,
218 ICMP6_ECHO_REQUEST
= 128,
219 ICMP6_ECHO_REPLY
= 129,
220 ICMP6_MEMBERSHIP_QUERY
= 130,
221 ICMP6_MEMBERSHIP_REPORT
= 131,
222 ICMP6_MEMBERSHIP_REDUCTION
= 132,
223 ND_ROUTER_SOLICIT
= 133,
224 ND_ROUTER_ADVERT
= 134,
225 ND_NEIGHBOR_SOLICIT
= 135,
226 ND_NEIGHBOR_ADVERT
= 136,
228 ICMP6_V2_MEMBERSHIP_REPORT
= 143,
229 } ICMP6_TYPE
, *PICMP6_TYPE
;
231 typedef struct _MIBICMPSTATS_EX
235 DWORD rgdwTypeCount
[256];
236 } MIBICMPSTATS_EX
, *PMIBICMPSTATS_EX
;
238 typedef struct _MIB_ICMP_EX
240 MIBICMPSTATS_EX icmpInStats
;
241 MIBICMPSTATS_EX icmpOutStats
;
242 } MIB_ICMP_EX
, *PMIB_ICMP_EX
;
244 #endif /* __WINE_IPMIB_H */