From cf76be61b2e151df155b29e021b5d915f4dd0440 Mon Sep 17 00:00:00 2001 From: Francois Gouget Date: Tue, 13 Dec 2011 21:04:41 +0100 Subject: [PATCH] include: Split iprtrmib.h into multiple mib.h files. Include them where appropriate. --- include/Makefile.in | 4 + include/ifmib.h | 65 ++++++++++++++++ include/ipmib.h | 165 ++++++++++++++++++++++++++++++++++++++++ include/{nldef.h => iprtrmib.h} | 41 +++------- include/nldef.h | 19 +++++ include/tcpmib.h | 79 +++++++++++++++++++ include/{nldef.h => udpmib.h} | 57 +++++++------- 7 files changed, 368 insertions(+), 62 deletions(-) create mode 100644 include/ifmib.h create mode 100644 include/ipmib.h copy include/{nldef.h => iprtrmib.h} (52%) create mode 100644 include/tcpmib.h copy include/{nldef.h => udpmib.h} (53%) diff --git a/include/Makefile.in b/include/Makefile.in index 6bd9020e372..2d139e462ad 100644 --- a/include/Makefile.in +++ b/include/Makefile.in @@ -297,6 +297,7 @@ SRCDIR_INCLUDES = \ icmpapi.h \ idispids.h \ ifdef.h \ + ifmib.h \ imagehlp.h \ imm.h \ in6addr.h \ @@ -306,6 +307,7 @@ SRCDIR_INCLUDES = \ ipexport.h \ iphlpapi.h \ ipifcons.h \ + ipmib.h \ iprtrmib.h \ iptypes.h \ isguids.h \ @@ -499,11 +501,13 @@ SRCDIR_INCLUDES = \ t2embapi.h \ tapi.h \ tchar.h \ + tcpmib.h \ textserv.h \ tlhelp32.h \ tmschema.h \ traffic.h \ twain.h \ + udpmib.h \ userenv.h \ usp10.h \ uuids.h \ diff --git a/include/ifmib.h b/include/ifmib.h new file mode 100644 index 00000000000..dbdcd4121c0 --- /dev/null +++ b/include/ifmib.h @@ -0,0 +1,65 @@ +/* + * Copyright (C) 2003 Juan Lang + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA + */ +#ifndef __WINE_IFMIB_H +#define __WINE_IFMIB_H + +#include + + +/* Interface table */ + +#define MAX_INTERFACE_NAME_LEN 256 +#define MAXLEN_PHYSADDR 8 +#define MAXLEN_IFDESCR 256 + +typedef struct _MIB_IFROW +{ + WCHAR wszName[MAX_INTERFACE_NAME_LEN]; + DWORD dwIndex; + DWORD dwType; + DWORD dwMtu; + DWORD dwSpeed; + DWORD dwPhysAddrLen; + BYTE bPhysAddr[MAXLEN_PHYSADDR]; + DWORD dwAdminStatus; + DWORD dwOperStatus; + DWORD dwLastChange; + DWORD dwInOctets; + DWORD dwInUcastPkts; + DWORD dwInNUcastPkts; + DWORD dwInDiscards; + DWORD dwInErrors; + DWORD dwInUnknownProtos; + DWORD dwOutOctets; + DWORD dwOutUcastPkts; + DWORD dwOutNUcastPkts; + DWORD dwOutDiscards; + DWORD dwOutErrors; + DWORD dwOutQLen; + DWORD dwDescrLen; + BYTE bDescr[MAXLEN_IFDESCR]; +} MIB_IFROW, *PMIB_IFROW; + +typedef struct _MIB_IFTABLE +{ + DWORD dwNumEntries; + MIB_IFROW table[1]; +} MIB_IFTABLE, *PMIB_IFTABLE; + + +#endif /* __WINE_IFMIB_H */ diff --git a/include/ipmib.h b/include/ipmib.h new file mode 100644 index 00000000000..c9d76e7e160 --- /dev/null +++ b/include/ipmib.h @@ -0,0 +1,165 @@ +/* + * Copyright (C) 2003 Juan Lang + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA + */ +#ifndef __WINE_IPMIB_H +#define __WINE_IPMIB_H + +#include +#include + + +/* IPADDR table */ + +typedef struct _MIB_IPADDRROW +{ + DWORD dwAddr; + DWORD dwIndex; + DWORD dwMask; + DWORD dwBCastAddr; + DWORD dwReasmSize; + unsigned short unused1; + unsigned short wType; +} MIB_IPADDRROW, *PMIB_IPADDRROW; + +typedef struct _MIB_IPADDRTABLE +{ + DWORD dwNumEntries; + MIB_IPADDRROW table[1]; +} MIB_IPADDRTABLE, *PMIB_IPADDRTABLE; + + +/* IPFORWARD table */ + +typedef struct _MIB_IPFORWARDNUMBER +{ + DWORD dwValue; +} MIB_IPFORWARDNUMBER, *PMIB_IPFORWARDNUMBER; + +#define MIB_IPROUTE_TYPE_OTHER 1 +#define MIB_IPROUTE_TYPE_INVALID 2 +#define MIB_IPROUTE_TYPE_DIRECT 3 +#define MIB_IPROUTE_TYPE_INDIRECT 4 + +typedef struct _MIB_IPFORWARDROW +{ + DWORD dwForwardDest; + DWORD dwForwardMask; + DWORD dwForwardPolicy; + DWORD dwForwardNextHop; + DWORD dwForwardIfIndex; + DWORD dwForwardType; + DWORD dwForwardProto; + DWORD dwForwardAge; + DWORD dwForwardNextHopAS; + DWORD dwForwardMetric1; + DWORD dwForwardMetric2; + DWORD dwForwardMetric3; + DWORD dwForwardMetric4; + DWORD dwForwardMetric5; +} MIB_IPFORWARDROW, *PMIB_IPFORWARDROW; + +typedef struct _MIB_IPFORWARDTABLE +{ + DWORD dwNumEntries; + MIB_IPFORWARDROW table[1]; +} MIB_IPFORWARDTABLE, *PMIB_IPFORWARDTABLE; + + +/* IPNET table */ + +#define MIB_IPNET_TYPE_OTHER 1 +#define MIB_IPNET_TYPE_INVALID 2 +#define MIB_IPNET_TYPE_DYNAMIC 3 +#define MIB_IPNET_TYPE_STATIC 4 + +typedef struct _MIB_IPNETROW +{ + DWORD dwIndex; + DWORD dwPhysAddrLen; + BYTE bPhysAddr[MAXLEN_PHYSADDR]; + DWORD dwAddr; + DWORD dwType; +} MIB_IPNETROW, *PMIB_IPNETROW; + +typedef struct _MIB_IPNETTABLE +{ + DWORD dwNumEntries; + MIB_IPNETROW table[1]; +} MIB_IPNETTABLE, *PMIB_IPNETTABLE; + + +/* IP statistics */ + +typedef struct _MIB_IPSTATS +{ + DWORD dwForwarding; + DWORD dwDefaultTTL; + DWORD dwInReceives; + DWORD dwInHdrErrors; + DWORD dwInAddrErrors; + DWORD dwForwDatagrams; + DWORD dwInUnknownProtos; + DWORD dwInDiscards; + DWORD dwInDelivers; + DWORD dwOutRequests; + DWORD dwRoutingDiscards; + DWORD dwOutDiscards; + DWORD dwOutNoRoutes; + DWORD dwReasmTimeout; + DWORD dwReasmReqds; + DWORD dwReasmOks; + DWORD dwReasmFails; + DWORD dwFragOks; + DWORD dwFragFails; + DWORD dwFragCreates; + DWORD dwNumIf; + DWORD dwNumAddr; + DWORD dwNumRoutes; +} MIB_IPSTATS, *PMIB_IPSTATS; + + +/* ICMP statistics */ + +typedef struct _MIBICMPSTATS +{ + DWORD dwMsgs; + DWORD dwErrors; + DWORD dwDestUnreachs; + DWORD dwTimeExcds; + DWORD dwParmProbs; + DWORD dwSrcQuenchs; + DWORD dwRedirects; + DWORD dwEchos; + DWORD dwEchoReps; + DWORD dwTimestamps; + DWORD dwTimestampReps; + DWORD dwAddrMasks; + DWORD dwAddrMaskReps; +} MIBICMPSTATS; + +typedef struct _MIBICMPINFO +{ + MIBICMPSTATS icmpInStats; + MIBICMPSTATS icmpOutStats; +} MIBICMPINFO; + +typedef struct _MIB_ICMP +{ + MIBICMPINFO stats; +} MIB_ICMP, *PMIB_ICMP; + +#endif /* __WINE_IPMIB_H */ diff --git a/include/nldef.h b/include/iprtrmib.h similarity index 52% copy from include/nldef.h copy to include/iprtrmib.h index abce1afabb8..477f1dd0d41 100644 --- a/include/nldef.h +++ b/include/iprtrmib.h @@ -1,4 +1,4 @@ -/* +/* WINE iprtrmib.h * Copyright (C) 2003 Juan Lang * * This library is free software; you can redistribute it and/or @@ -15,37 +15,14 @@ * License along with this library; if not, write to the Free Software * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA */ -#ifndef __WINE_NLDEF_H -#define __WINE_NLDEF_H +#ifndef WINE_IPRTRMIB_H__ +#define WINE_IPRTRMIB_H__ -typedef enum -{ - IpPrefixOriginOther = 0, - IpPrefixOriginManual, - IpPrefixOriginWellKnown, - IpPrefixOriginDhcp, - IpPrefixOriginRouterAdvertisement, - IpPrefixOriginUnchanged = 16, -} NL_PREFIX_ORIGIN; +#include +#include -typedef enum -{ - IpSuffixOriginOther = 0, - IpSuffixOriginManual, - IpSuffixOriginWellKnown, - IpSuffixOriginDhcp, - IpSuffixOriginLinkLayerAddress, - IpSuffixOriginRandom, - IpSuffixOriginUnchanged = 16, -} NL_SUFFIX_ORIGIN; +#include +#include +#include -typedef enum -{ - IpDadStateInvalid = 0, - IpDadStateTentative, - IpDadStateDuplicate, - IpDadStateDeprecated, - IpDadStatePreferred, -} NL_DAD_STATE; - -#endif /* __WINE_NLDEF_H */ +#endif /* WINE_IPRTRMIB_H__ */ diff --git a/include/nldef.h b/include/nldef.h index abce1afabb8..cbf82ee0872 100644 --- a/include/nldef.h +++ b/include/nldef.h @@ -48,4 +48,23 @@ typedef enum IpDadStatePreferred, } NL_DAD_STATE; +#define MIB_IPPROTO_OTHER 1 +#define MIB_IPPROTO_LOCAL 2 +#define MIB_IPPROTO_NETMGMT 3 +#define MIB_IPPROTO_ICMP 4 +#define MIB_IPPROTO_EGP 5 +#define MIB_IPPROTO_GGP 6 +#define MIB_IPPROTO_HELLO 7 +#define MIB_IPPROTO_RIP 8 +#define MIB_IPPROTO_IS_IS 9 +#define MIB_IPPROTO_ES_IS 10 +#define MIB_IPPROTO_CISCO 11 +#define MIB_IPPROTO_BBN 12 +#define MIB_IPPROTO_OSPF 13 +#define MIB_IPPROTO_BGP 14 + +#define MIB_IPPROTO_NT_AUTOSTATIC 10002 +#define MIB_IPPROTO_NT_STATIC 10006 +#define MIB_IPPROTO_NT_STATIC_NON_DOD 10007 + #endif /* __WINE_NLDEF_H */ diff --git a/include/tcpmib.h b/include/tcpmib.h new file mode 100644 index 00000000000..51ee9f5ec4b --- /dev/null +++ b/include/tcpmib.h @@ -0,0 +1,79 @@ +/* + * Copyright (C) 2003 Juan Lang + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA + */ +#ifndef __WINE_TCPMIB_H +#define __WINE_TCPMIB_H + + +/* TCP tables */ + +#define MIB_TCP_STATE_CLOSED 1 +#define MIB_TCP_STATE_LISTEN 2 +#define MIB_TCP_STATE_SYN_SENT 3 +#define MIB_TCP_STATE_SYN_RCVD 4 +#define MIB_TCP_STATE_ESTAB 5 +#define MIB_TCP_STATE_FIN_WAIT1 6 +#define MIB_TCP_STATE_FIN_WAIT2 7 +#define MIB_TCP_STATE_CLOSE_WAIT 8 +#define MIB_TCP_STATE_CLOSING 9 +#define MIB_TCP_STATE_LAST_ACK 10 +#define MIB_TCP_STATE_TIME_WAIT 11 +#define MIB_TCP_STATE_DELETE_TCB 12 + +typedef struct _MIB_TCPROW +{ + DWORD dwState; + DWORD dwLocalAddr; + DWORD dwLocalPort; + DWORD dwRemoteAddr; + DWORD dwRemotePort; +} MIB_TCPROW, *PMIB_TCPROW; + +typedef struct _MIB_TCPTABLE +{ + DWORD dwNumEntries; + MIB_TCPROW table[1]; +} MIB_TCPTABLE, *PMIB_TCPTABLE; + + +/* TCP stats */ + +#define MIB_TCP_RTO_OTHER 1 +#define MIB_TCP_RTO_CONSTANT 2 +#define MIB_TCP_RTO_RSRE 3 +#define MIB_TCP_RTO_VANJ 4 + +typedef struct _MIB_TCPSTATS +{ + DWORD dwRtoAlgorithm; + DWORD dwRtoMin; + DWORD dwRtoMax; + DWORD dwMaxConn; + DWORD dwActiveOpens; + DWORD dwPassiveOpens; + DWORD dwAttemptFails; + DWORD dwEstabResets; + DWORD dwCurrEstab; + DWORD dwInSegs; + DWORD dwOutSegs; + DWORD dwRetransSegs; + DWORD dwInErrs; + DWORD dwOutRsts; + DWORD dwNumConns; +} MIB_TCPSTATS, *PMIB_TCPSTATS; + +#endif /* __WINE_TCPMIB_H */ diff --git a/include/nldef.h b/include/udpmib.h similarity index 53% copy from include/nldef.h copy to include/udpmib.h index abce1afabb8..5dc0efebe58 100644 --- a/include/nldef.h +++ b/include/udpmib.h @@ -15,37 +15,34 @@ * License along with this library; if not, write to the Free Software * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA */ -#ifndef __WINE_NLDEF_H -#define __WINE_NLDEF_H +#ifndef __WINE_UDPMIB_H +#define __WINE_UDPMIB_H -typedef enum + +/* UDP table */ + +typedef struct _MIB_UDPROW { - IpPrefixOriginOther = 0, - IpPrefixOriginManual, - IpPrefixOriginWellKnown, - IpPrefixOriginDhcp, - IpPrefixOriginRouterAdvertisement, - IpPrefixOriginUnchanged = 16, -} NL_PREFIX_ORIGIN; - -typedef enum + DWORD dwLocalAddr; + DWORD dwLocalPort; +} MIB_UDPROW, *PMIB_UDPROW; + +typedef struct _MIB_UDPTABLE { - IpSuffixOriginOther = 0, - IpSuffixOriginManual, - IpSuffixOriginWellKnown, - IpSuffixOriginDhcp, - IpSuffixOriginLinkLayerAddress, - IpSuffixOriginRandom, - IpSuffixOriginUnchanged = 16, -} NL_SUFFIX_ORIGIN; - -typedef enum + DWORD dwNumEntries; + MIB_UDPROW table[1]; +} MIB_UDPTABLE, *PMIB_UDPTABLE; + + +/* UDP statistics */ + +typedef struct _MIB_UDPSTATS { - IpDadStateInvalid = 0, - IpDadStateTentative, - IpDadStateDuplicate, - IpDadStateDeprecated, - IpDadStatePreferred, -} NL_DAD_STATE; - -#endif /* __WINE_NLDEF_H */ + DWORD dwInDatagrams; + DWORD dwNoPorts; + DWORD dwInErrors; + DWORD dwOutDatagrams; + DWORD dwNumAddrs; +} MIB_UDPSTATS, *PMIB_UDPSTATS; + +#endif /* __WINE_UDPMIB_H */ -- 2.11.4.GIT