summaryrefslogtreecommitdiffstats
path: root/contrib/bsnmp/snmp_mibII/mibII.h
diff options
context:
space:
mode:
authorharti <harti@FreeBSD.org>2006-02-13 14:11:18 +0000
committerharti <harti@FreeBSD.org>2006-02-13 14:11:18 +0000
commita923e07ab3efd8202b4be3f02e729f61e7aef5af (patch)
tree58f53ab4a3f529c38f0fc2c5d695c82f16c80100 /contrib/bsnmp/snmp_mibII/mibII.h
parentaf0ed09791e779050efb210d9304ae1e7100c129 (diff)
downloadFreeBSD-src-a923e07ab3efd8202b4be3f02e729f61e7aef5af.zip
FreeBSD-src-a923e07ab3efd8202b4be3f02e729f61e7aef5af.tar.gz
Vendor fix: make mibII HC counters really 64-bit on 32-bit platforms by polling
the kernel periodically. Submitted by: glebius (partly)
Diffstat (limited to 'contrib/bsnmp/snmp_mibII/mibII.h')
-rw-r--r--contrib/bsnmp/snmp_mibII/mibII.h32
1 files changed, 25 insertions, 7 deletions
diff --git a/contrib/bsnmp/snmp_mibII/mibII.h b/contrib/bsnmp/snmp_mibII/mibII.h
index 4b0803d..65c14cc 100644
--- a/contrib/bsnmp/snmp_mibII/mibII.h
+++ b/contrib/bsnmp/snmp_mibII/mibII.h
@@ -56,7 +56,6 @@
#include "snmp_mibII.h"
#include "mibII_tree.h"
-
/*
* Interface list and flags.
*/
@@ -66,12 +65,19 @@ enum {
MIBIF_HIGHSPEED = 0x0002,
MIBIF_VERYHIGHSPEED = 0x0004,
};
-#define hc_inoctets mib.ifmd_data.ifi_ibytes
-#define hc_outoctets mib.ifmd_data.ifi_obytes
-#define hc_omcasts mib.ifmd_data.ifi_omcasts
-#define hc_opackets mib.ifmd_data.ifi_opackets
-#define hc_imcasts mib.ifmd_data.ifi_imcasts
-#define hc_ipackets mib.ifmd_data.ifi_ipackets
+
+/*
+ * Private mibif data - hang off from the mibif.
+ */
+struct mibif_private {
+ uint64_t hc_inoctets;
+ uint64_t hc_outoctets;
+ uint64_t hc_omcasts;
+ uint64_t hc_opackets;
+ uint64_t hc_imcasts;
+ uint64_t hc_ipackets;
+};
+#define MIBIF_PRIV(IFP) ((struct mibif_private *)((IFP)->private))
/*
* Interface addresses.
@@ -193,6 +199,18 @@ extern uint64_t mibarpticks;
/* info on system clocks */
extern struct clockinfo clockinfo;
+/* baud rate of fastest interface */
+extern uint64_t mibif_maxspeed;
+
+/* user-forced update interval */
+extern u_int mibif_force_hc_update_interval;
+
+/* current update interval */
+extern u_int mibif_hc_update_interval;
+
+/* re-compute update interval */
+void mibif_reset_hc_timer(void);
+
/* get interfaces and interface addresses. */
void mib_fetch_interfaces(void);
OpenPOWER on IntegriCloud