patch-2_6_7-vs1_9_1_12
[linux-2.6.git] / include / net / snmp.h
index 67e22b8..c702dda 100644 (file)
  * cacheline machine it makes a *lot* of sense -AK
  */ 
 
+struct snmp_item {
+       char *name;
+       int offset;
+};
+
+#define SNMP_ITEM(mib,entry,procname)  {       \
+       .name = procname,                       \
+       .offset = offsetof(mib, entry),         \
+}
+
+#define SNMP_ITEM_SENTINEL {                   \
+       .name = NULL,                           \
+       .offset = 0,                            \
+}
+
 /*
  * RFC 1213:  MIB-II
  * RFC 2011 (updates 1213):  SNMPv2-MIB-IP
  * RFC 2863:  Interfaces Group MIB
- */
-struct ip_mib
-{
-       unsigned long   IpInReceives;
-       unsigned long   IpInHdrErrors;
-       unsigned long   IpInAddrErrors;
-       unsigned long   IpForwDatagrams;
-       unsigned long   IpInUnknownProtos;
-       unsigned long   IpInDiscards;
-       unsigned long   IpInDelivers;
-       unsigned long   IpOutRequests;
-       unsigned long   IpOutDiscards;
-       unsigned long   IpOutNoRoutes;
-       unsigned long   IpReasmTimeout;
-       unsigned long   IpReasmReqds;
-       unsigned long   IpReasmOKs;
-       unsigned long   IpReasmFails;
-       unsigned long   IpFragOKs;
-       unsigned long   IpFragFails;
-       unsigned long   IpFragCreates;
-       unsigned long   __pad[0]; 
-};
-/*
  * RFC 2465:  IPv6 MIB: General Group
+ * draft-ietf-ipv6-rfc2011-update-10.txt: MIB for IP: IP Statistics Tables
  */
-struct ipv6_mib
+struct ipstats_mib
 {
-       unsigned long   Ip6InReceives;
-       unsigned long   Ip6InHdrErrors;
-       unsigned long   Ip6InTooBigErrors;
-       unsigned long   Ip6InNoRoutes;
-       unsigned long   Ip6InAddrErrors;
-       unsigned long   Ip6InUnknownProtos;
-       unsigned long   Ip6InTruncatedPkts;
-       unsigned long   Ip6InDiscards;
-       unsigned long   Ip6InDelivers;
-       unsigned long   Ip6OutForwDatagrams;
-       unsigned long   Ip6OutRequests;
-       unsigned long   Ip6OutDiscards;
-       unsigned long   Ip6OutNoRoutes;
-       unsigned long   Ip6ReasmTimeout;
-       unsigned long   Ip6ReasmReqds;
-       unsigned long   Ip6ReasmOKs;
-       unsigned long   Ip6ReasmFails;
-       unsigned long   Ip6FragOKs;
-       unsigned long   Ip6FragFails;
-       unsigned long   Ip6FragCreates;
-       unsigned long   Ip6InMcastPkts;
-       unsigned long   Ip6OutMcastPkts;
+       unsigned long   InReceives;
+       unsigned long   InHdrErrors;
+       unsigned long   InTooBigErrors;
+       unsigned long   InNoRoutes;
+       unsigned long   InAddrErrors;
+       unsigned long   InUnknownProtos;
+       unsigned long   InTruncatedPkts;
+       unsigned long   InDiscards;
+       unsigned long   InDelivers;
+       unsigned long   OutForwDatagrams;
+       unsigned long   OutRequests;
+       unsigned long   OutDiscards;
+       unsigned long   OutNoRoutes;
+       unsigned long   ReasmTimeout;
+       unsigned long   ReasmReqds;
+       unsigned long   ReasmOKs;
+       unsigned long   ReasmFails;
+       unsigned long   FragOKs;
+       unsigned long   FragFails;
+       unsigned long   FragCreates;
+       unsigned long   InMcastPkts;
+       unsigned long   OutMcastPkts;
        unsigned long   __pad[0]; 
 };