include: Split iprtrmib.h into multiple mib.h files.
[wine/multimedia.git] / include / ipmib.h
blobc9d76e7e160903ffe7379990185c47b2f2cc7432
1 /*
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
21 #include <ifmib.h>
22 #include <nldef.h>
25 /* IPADDR table */
27 typedef struct _MIB_IPADDRROW
29 DWORD dwAddr;
30 DWORD dwIndex;
31 DWORD dwMask;
32 DWORD dwBCastAddr;
33 DWORD dwReasmSize;
34 unsigned short unused1;
35 unsigned short wType;
36 } MIB_IPADDRROW, *PMIB_IPADDRROW;
38 typedef struct _MIB_IPADDRTABLE
40 DWORD dwNumEntries;
41 MIB_IPADDRROW table[1];
42 } MIB_IPADDRTABLE, *PMIB_IPADDRTABLE;
45 /* IPFORWARD table */
47 typedef struct _MIB_IPFORWARDNUMBER
49 DWORD dwValue;
50 } MIB_IPFORWARDNUMBER, *PMIB_IPFORWARDNUMBER;
52 #define MIB_IPROUTE_TYPE_OTHER 1
53 #define MIB_IPROUTE_TYPE_INVALID 2
54 #define MIB_IPROUTE_TYPE_DIRECT 3
55 #define MIB_IPROUTE_TYPE_INDIRECT 4
57 typedef struct _MIB_IPFORWARDROW
59 DWORD dwForwardDest;
60 DWORD dwForwardMask;
61 DWORD dwForwardPolicy;
62 DWORD dwForwardNextHop;
63 DWORD dwForwardIfIndex;
64 DWORD dwForwardType;
65 DWORD dwForwardProto;
66 DWORD dwForwardAge;
67 DWORD dwForwardNextHopAS;
68 DWORD dwForwardMetric1;
69 DWORD dwForwardMetric2;
70 DWORD dwForwardMetric3;
71 DWORD dwForwardMetric4;
72 DWORD dwForwardMetric5;
73 } MIB_IPFORWARDROW, *PMIB_IPFORWARDROW;
75 typedef struct _MIB_IPFORWARDTABLE
77 DWORD dwNumEntries;
78 MIB_IPFORWARDROW table[1];
79 } MIB_IPFORWARDTABLE, *PMIB_IPFORWARDTABLE;
82 /* IPNET table */
84 #define MIB_IPNET_TYPE_OTHER 1
85 #define MIB_IPNET_TYPE_INVALID 2
86 #define MIB_IPNET_TYPE_DYNAMIC 3
87 #define MIB_IPNET_TYPE_STATIC 4
89 typedef struct _MIB_IPNETROW
91 DWORD dwIndex;
92 DWORD dwPhysAddrLen;
93 BYTE bPhysAddr[MAXLEN_PHYSADDR];
94 DWORD dwAddr;
95 DWORD dwType;
96 } MIB_IPNETROW, *PMIB_IPNETROW;
98 typedef struct _MIB_IPNETTABLE
100 DWORD dwNumEntries;
101 MIB_IPNETROW table[1];
102 } MIB_IPNETTABLE, *PMIB_IPNETTABLE;
105 /* IP statistics */
107 typedef struct _MIB_IPSTATS
109 DWORD dwForwarding;
110 DWORD dwDefaultTTL;
111 DWORD dwInReceives;
112 DWORD dwInHdrErrors;
113 DWORD dwInAddrErrors;
114 DWORD dwForwDatagrams;
115 DWORD dwInUnknownProtos;
116 DWORD dwInDiscards;
117 DWORD dwInDelivers;
118 DWORD dwOutRequests;
119 DWORD dwRoutingDiscards;
120 DWORD dwOutDiscards;
121 DWORD dwOutNoRoutes;
122 DWORD dwReasmTimeout;
123 DWORD dwReasmReqds;
124 DWORD dwReasmOks;
125 DWORD dwReasmFails;
126 DWORD dwFragOks;
127 DWORD dwFragFails;
128 DWORD dwFragCreates;
129 DWORD dwNumIf;
130 DWORD dwNumAddr;
131 DWORD dwNumRoutes;
132 } MIB_IPSTATS, *PMIB_IPSTATS;
135 /* ICMP statistics */
137 typedef struct _MIBICMPSTATS
139 DWORD dwMsgs;
140 DWORD dwErrors;
141 DWORD dwDestUnreachs;
142 DWORD dwTimeExcds;
143 DWORD dwParmProbs;
144 DWORD dwSrcQuenchs;
145 DWORD dwRedirects;
146 DWORD dwEchos;
147 DWORD dwEchoReps;
148 DWORD dwTimestamps;
149 DWORD dwTimestampReps;
150 DWORD dwAddrMasks;
151 DWORD dwAddrMaskReps;
152 } MIBICMPSTATS;
154 typedef struct _MIBICMPINFO
156 MIBICMPSTATS icmpInStats;
157 MIBICMPSTATS icmpOutStats;
158 } MIBICMPINFO;
160 typedef struct _MIB_ICMP
162 MIBICMPINFO stats;
163 } MIB_ICMP, *PMIB_ICMP;
165 #endif /* __WINE_IPMIB_H */