From 2dde30d5adda7c72f54e7d61dedd7b330c01fa66 Mon Sep 17 00:00:00 2001
From: Britney Fransen <brfransen@gmail.com>
Date: Sat, 3 Mar 2018 20:33:06 +0000
Subject: net-snmp: update to 5.7.3

---
 abs/extra/net-snmp/PKGBUILD                       |   39 +-
 abs/extra/net-snmp/fix-openssl-build-errors.patch |  171 ++
 abs/extra/net-snmp/libnl32.patch                  |   80 -
 abs/extra/net-snmp/net-snmp-5.7.3-perl-5.24.patch | 2599 +++++++++++++++++++++
 4 files changed, 2794 insertions(+), 95 deletions(-)
 create mode 100644 abs/extra/net-snmp/fix-openssl-build-errors.patch
 delete mode 100644 abs/extra/net-snmp/libnl32.patch
 create mode 100644 abs/extra/net-snmp/net-snmp-5.7.3-perl-5.24.patch

diff --git a/abs/extra/net-snmp/PKGBUILD b/abs/extra/net-snmp/PKGBUILD
index 4e003ed..a17ce4d 100644
--- a/abs/extra/net-snmp/PKGBUILD
+++ b/abs/extra/net-snmp/PKGBUILD
@@ -1,12 +1,12 @@
-# $Id: PKGBUILD 198340 2013-10-30 14:16:21Z allan $
-# Maintainer:
+# $Id$
+# Maintainer: Felix Yan <felixonmars@archlinux.org>
 # Contributor: Dale Blount <dale@archlinux.org>
 
 pkgname=net-snmp
-pkgver=5.7.2
-pkgrel=8
+pkgver=5.7.3
+pkgrel=7
 pkgdesc="A suite of applications used to implement SNMP v1, SNMP v2c and SNMP v3 using both IPv4 and IPv6"
-arch=('i686' 'x86_64')
+arch=('x86_64')
 url="http://www.net-snmp.org/"
 license=('BSD')
 depends=('openssl' 'libnl' 'pciutils')
@@ -15,19 +15,21 @@ optdepends=('perl-term-readkey: for snmpcheck application'
             'perl-tk: for snmpcheck and tkmib applications'
             'python2: for the python modules')
 options=('!emptydirs' '!makeflags')
-source=(http://downloads.sourceforge.net/${pkgname}/${pkgname}-${pkgver}.tar.gz{,.asc}
-        snmpd.service snmptrapd.service libnl32.patch)
-sha1sums=('c493027907f32400648244d81117a126aecd27ee'
-          'SKIP'
+source=(http://downloads.sourceforge.net/${pkgname}/${pkgname}-${pkgver}.tar.gz
+        snmpd.service snmptrapd.service net-snmp-5.7.3-perl-5.24.patch fix-openssl-build-errors.patch)
+sha1sums=('97dc25077257680815de44e34128d365c76bd839'
           '84e32c54d32e6b608747054e04a3ddfe6d6638cc'
           '0244e91c7baa0abebfb5c0560e8ce04c966c5992'
-          '74a9848b95f63378eb1753fc309d2b74de5afb0f')
+          '31beef2cb5ad9b4ac655f8ced53058ebf6e99ca9'
+          'b329ff700a3e20cdfcab4643a573ef976f9182c0')
+validpgpkeys=('8AAA779B597B405BBC329B6376CF47B8A77C5329'
+              '27CAA4A32E371383A33ED0587D5F9576E0F81533')  # Net-SNMP Administrators
 
 prepare() {
   cd ${pkgname}-${pkgver}
-# http://sourceforge.net/tracker/index.php?func=detail&aid=3250304&group_id=12694&atid=112694
-  patch -Np1 -i "$srcdir/libnl32.patch"
-  autoreconf -f -i
+  patch -p1 -i ../net-snmp-5.7.3-perl-5.24.patch
+  patch -p1 -i ../fix-openssl-build-errors.patch
+  autoreconf -i
 }
 
 build() {
@@ -43,8 +45,7 @@ build() {
     --with-sys-location="Unknown" \
     --with-logfile="/var/log/snmpd.log" \
     --with-mib-modules="host misc/ipfwacc ucd-snmp/diskio tunnel ucd-snmp/dlmod" \
-    --with-persistent-directory="/var/net-snmp" \
-    --disable-static
+    --with-persistent-directory="/var/net-snmp"
   make NETSNMP_DONT_CHECK_VERSION=1
 }
 
@@ -55,4 +56,12 @@ package() {
   install -D -m644 "${srcdir}/snmpd.service" "${pkgdir}/usr/lib/systemd/system/snmpd.service"
   install -D -m644 "${srcdir}/snmptrapd.service" "${pkgdir}/usr/lib/systemd/system/snmptrapd.service"
   install -D -m644 COPYING "${pkgdir}/usr/share/licenses/${pkgname}/LICENSE"
+
+# template start; name=perl-binary-module-dependency; version=1;
+if [[ $(find "$pkgdir/usr/lib/perl5/" -name "*.so") ]]; then
+	_perlver_min=$(perl -e '$v = $^V->{version}; print $v->[0].".".($v->[1]);')
+	_perlver_max=$(perl -e '$v = $^V->{version}; print $v->[0].".".($v->[1]+1);')
+	depends+=("perl>=$_perlver_min" "perl<$_perlver_max")
+fi
+# template end;
 }
diff --git a/abs/extra/net-snmp/fix-openssl-build-errors.patch b/abs/extra/net-snmp/fix-openssl-build-errors.patch
new file mode 100644
index 0000000..53bc372
--- /dev/null
+++ b/abs/extra/net-snmp/fix-openssl-build-errors.patch
@@ -0,0 +1,171 @@
+net-snmp build fails on Debian 9 with OpenSSL 1.1.0
+
+With these changes, net-snmp builds with both
+OpenSSL 1.0.x and 1.1.x.
+
+Author: Sharmila Podury <sharmila.podury@brocade.com>
+
+--- a/apps/snmpusm.c
++++ b/apps/snmpusm.c
+@@ -125,6 +125,32 @@ char           *usmUserPublic_val = NULL
+ int             docreateandwait = 0;
+ 
+ 
++#if OPENSSL_VERSION_NUMBER < 0x10100000L
++
++#include <string.h>
++#include <openssl/engine.h>
++
++void DH_get0_pqg(const DH *dh,
++                const BIGNUM **p, const BIGNUM **q, const BIGNUM **g)
++{
++   if (p != NULL)
++       *p = dh->p;
++   if (q != NULL)
++       *q = dh->q;
++   if (g != NULL)
++       *g = dh->g;
++}
++
++void DH_get0_key(const DH *dh, const BIGNUM **pub_key, const BIGNUM **priv_key)
++{
++   if (pub_key != NULL)
++       *pub_key = dh->pub_key;
++   if (priv_key != NULL)
++       *priv_key = dh->priv_key;
++}
++
++#endif
++
+ void
+ usage(void)
+ {
+@@ -190,7 +216,7 @@ get_USM_DH_key(netsnmp_variable_list *va
+                oid *keyoid, size_t keyoid_len) {
+     u_char *dhkeychange;
+     DH *dh;
+-    BIGNUM *other_pub;
++    BIGNUM *p, *g, *pub_key, *other_pub;
+     u_char *key;
+     size_t key_len;
+             
+@@ -205,25 +231,29 @@ get_USM_DH_key(netsnmp_variable_list *va
+         dh = d2i_DHparams(NULL, &cp, dhvar->val_len);
+     }
+ 
+-    if (!dh || !dh->g || !dh->p) {
++    if (dh)
++        DH_get0_pqg(dh, &p, NULL, &g);
++
++    if (!dh || !g || !p) {
+         SNMP_FREE(dhkeychange);
+         return SNMPERR_GENERR;
+     }
+ 
+-    DH_generate_key(dh);
+-    if (!dh->pub_key) {
++    if (!DH_generate_key(dh)) {
+         SNMP_FREE(dhkeychange);
+         return SNMPERR_GENERR;
+     }
+             
+-    if (vars->val_len != (unsigned int)BN_num_bytes(dh->pub_key)) {
++    DH_get0_key(dh, &pub_key, NULL);
++
++    if (vars->val_len != (unsigned int)BN_num_bytes(pub_key)) {
+         SNMP_FREE(dhkeychange);
+         fprintf(stderr,"incorrect diffie-helman lengths (%lu != %d)\n",
+-                (unsigned long)vars->val_len, BN_num_bytes(dh->pub_key));
++                (unsigned long)vars->val_len, BN_num_bytes(pub_key));
+         return SNMPERR_GENERR;
+     }
+ 
+-    BN_bn2bin(dh->pub_key, dhkeychange + vars->val_len);
++    BN_bn2bin(pub_key, dhkeychange + vars->val_len);
+ 
+     key_len = DH_size(dh);
+     if (!key_len) {
+--- a/configure.d/config_os_libs2
++++ b/configure.d/config_os_libs2
+@@ -327,10 +327,16 @@ if test "x$tryopenssl" != "xno" -a "x$tr
+              [[#include <openssl/evp.h>]])
+ 
+             AC_CHECK_LIB(${CRYPTO}, EVP_MD_CTX_create,
+-                AC_DEFINE([HAVE_EVP_MD_CTX_CREATE], [],
++                AC_DEFINE([HAVE_EVP_MD_CTX_CREATE], [1],
+                     [Define to 1 if you have the `EVP_MD_CTX_create' function.])
+-                AC_DEFINE([HAVE_EVP_MD_CTX_DESTROY], [],
++                AC_DEFINE([HAVE_EVP_MD_CTX_DESTROY], [1],
+                     [Define to 1 if you have the `EVP_MD_CTX_destroy' function.]))
++
++            AC_CHECK_LIB(${CRYPTO}, EVP_MD_CTX_new,
++                AC_DEFINE([HAVE_EVP_MD_CTX_NEW], [1],
++                    [Define to 1 if you have the `EVP_MD_CTX_new' function.])
++                AC_DEFINE([HAVE_EVP_MD_CTX_FREE], [1],
++                    [Define to 1 if you have the `EVP_MD_CTX_free' function.]))
+         fi
+         if echo " $transport_result_list " | $GREP "DTLS" > /dev/null; then
+ 	    AC_CHECK_LIB(ssl, DTLSv1_method,
+--- a/include/net-snmp/net-snmp-config.h.in
++++ b/include/net-snmp/net-snmp-config.h.in
+@@ -164,6 +164,12 @@
+ /* Define to 1 if you have the `EVP_MD_CTX_destroy' function. */
+ #undef HAVE_EVP_MD_CTX_DESTROY
+ 
++/* Define to 1 if you have the `EVP_MD_CTX_free' function. */
++#undef HAVE_EVP_MD_CTX_FREE
++
++/* Define to 1 if you have the `EVP_MD_CTX_new' function. */
++#undef HAVE_EVP_MD_CTX_NEW
++
+ /* Define if you have EVP_sha224/256 in openssl */
+ #undef HAVE_EVP_SHA224
+ 
+--- a/snmplib/keytools.c
++++ b/snmplib/keytools.c
+@@ -176,7 +176,9 @@ generate_Ku(const oid * hashtype, u_int
+         QUITFUN(SNMPERR_GENERR, generate_Ku_quit);
+     }
+ 
+-#ifdef HAVE_EVP_MD_CTX_CREATE
++#ifdef HAVE_EVP_MD_CTX_NEW
++    ctx = EVP_MD_CTX_new();
++#elif HAVE_EVP_MD_CTX_CREATE
+     ctx = EVP_MD_CTX_create();
+ #else
+     ctx = malloc(sizeof(*ctx));
+@@ -278,7 +280,9 @@ generate_Ku(const oid * hashtype, u_int
+     memset(buf, 0, sizeof(buf));
+ #ifdef NETSNMP_USE_OPENSSL
+     if (ctx) {
+-#ifdef HAVE_EVP_MD_CTX_DESTROY
++#ifdef HAVE_EVP_MD_CTX_FREE
++        EVP_MD_CTX_free(ctx);
++#elif HAVE_EVP_MD_CTX_DESTROY
+         EVP_MD_CTX_destroy(ctx);
+ #else
+         EVP_MD_CTX_cleanup(ctx);
+--- a/snmplib/scapi.c
++++ b/snmplib/scapi.c
+@@ -627,7 +627,9 @@ sc_hash(const oid * hashtype, size_t has
+         return SNMPERR_GENERR;
+ 
+ /** initialize the pointer */
+-#ifdef HAVE_EVP_MD_CTX_CREATE
++#ifdef HAVE_EVP_MD_CTX_NEW
++    cptr = EVP_MD_CTX_new();
++#elif HAVE_EVP_MD_CTX_CREATE
+     cptr = EVP_MD_CTX_create();
+ #else
+     cptr = malloc(sizeof(*cptr));
+@@ -648,7 +650,9 @@ sc_hash(const oid * hashtype, size_t has
+ /** do the final pass */
+     EVP_DigestFinal(cptr, MAC, &tmp_len);
+     *MAC_len = tmp_len;
+-#ifdef HAVE_EVP_MD_CTX_DESTROY
++#ifdef HAVE_EVP_MD_CTX_FREE
++    EVP_MD_CTX_free(cptr);
++#elif HAVE_EVP_MD_CTX_DESTROY
+     EVP_MD_CTX_destroy(cptr);
+ #else
+ #if !defined(OLD_DES)
diff --git a/abs/extra/net-snmp/libnl32.patch b/abs/extra/net-snmp/libnl32.patch
deleted file mode 100644
index d93d7ef..0000000
--- a/abs/extra/net-snmp/libnl32.patch
+++ /dev/null
@@ -1,80 +0,0 @@
-diff -u -r net-snmp-5.7.1/agent/mibgroup/mibII/tcpTable.c net-snmp-5.7.1-libnl32/agent/mibgroup/mibII/tcpTable.c
---- net-snmp-5.7.1/agent/mibgroup/mibII/tcpTable.c	2011-09-28 06:53:47.000000000 +0200
-+++ net-snmp-5.7.1-libnl32/agent/mibgroup/mibII/tcpTable.c	2012-02-09 20:02:49.136022132 +0100
-@@ -566,8 +566,9 @@
- static int
- tcpTable_load_netlink(void)
- {
-+	int err;
- 	/*  TODO: perhaps use permanent nl handle? */
--	struct nl_handle *nl = nl_handle_alloc();
-+	struct nl_sock *nl = nl_socket_alloc();
- 
- 	if (nl == NULL) {
- 		DEBUGMSGTL(("mibII/tcpTable", "Failed to allocate netlink handle\n"));
-@@ -575,10 +576,10 @@
- 		return -1;
- 	}
- 
--	if (nl_connect(nl, NETLINK_INET_DIAG) < 0) {
--		DEBUGMSGTL(("mibII/tcpTable", "Failed to connect to netlink: %s\n", nl_geterror()));
--		snmp_log(LOG_ERR, "snmpd: Couldn't connect to netlink: %s\n", nl_geterror());
--		nl_handle_destroy(nl);
-+	if ((err = nl_connect(nl, NETLINK_INET_DIAG)) < 0) {
-+		DEBUGMSGTL(("mibII/tcpTable", "Failed to connect to netlink: %s\n", nl_geterror(err)));
-+		snmp_log(LOG_ERR, "snmpd: Couldn't connect to netlink: %s\n", nl_geterror(err));
-+		nl_socket_free(nl);
- 		return -1;
- 	}
- 
-@@ -590,10 +591,10 @@
- 	struct nl_msg *nm = nlmsg_alloc_simple(TCPDIAG_GETSOCK, NLM_F_ROOT|NLM_F_MATCH|NLM_F_REQUEST);
- 	nlmsg_append(nm, &req, sizeof(struct inet_diag_req), 0);
- 
--	if (nl_send_auto_complete(nl, nm) < 0) {
--		DEBUGMSGTL(("mibII/tcpTable", "nl_send_autocomplete(): %s\n", nl_geterror()));
--		snmp_log(LOG_ERR, "snmpd: nl_send_autocomplete(): %s\n", nl_geterror());
--		nl_handle_destroy(nl);
-+	if ((err = nl_send_auto_complete(nl, nm)) < 0) {
-+		DEBUGMSGTL(("mibII/tcpTable", "nl_send_autocomplete(): %s\n", nl_geterror(err)));
-+		snmp_log(LOG_ERR, "snmpd: nl_send_autocomplete(): %s\n", nl_geterror(err));
-+		nl_socket_free(nl);
- 		return -1;
- 	}
- 	nlmsg_free(nm);
-@@ -604,9 +605,9 @@
- 
- 	while (running) {
- 		if ((len = nl_recv(nl, &peer, &buf, NULL)) <= 0) {
--			DEBUGMSGTL(("mibII/tcpTable", "nl_recv(): %s\n", nl_geterror()));
--			snmp_log(LOG_ERR, "snmpd: nl_recv(): %s\n", nl_geterror());
--			nl_handle_destroy(nl);
-+			DEBUGMSGTL(("mibII/tcpTable", "nl_recv(): %s\n", nl_geterror(len)));
-+			snmp_log(LOG_ERR, "snmpd: nl_recv(): %s\n", nl_geterror(len));
-+			nl_socket_free(nl);
- 			return -1;
- 		}
- 
-@@ -655,7 +656,7 @@
- 		free(buf);
- 	}
- 
--	nl_handle_destroy(nl);
-+	nl_socket_free(nl);
- 
- 	if (tcp_head) {
- 		DEBUGMSGTL(("mibII/tcpTable", "Loaded TCP Table using netlink\n"));
-diff -u -r net-snmp-5.7.1/configure.d/config_os_libs2 net-snmp-5.7.1-libnl32/configure.d/config_os_libs2
---- net-snmp-5.7.1/configure.d/config_os_libs2	2011-09-28 06:53:47.000000000 +0200
-+++ net-snmp-5.7.1-libnl32/configure.d/config_os_libs2	2012-02-09 20:10:44.282165275 +0100
-@@ -224,8 +224,9 @@
- if test "x$with_nl" != "xno"; then
-     case $target_os in
-     linux*) # Check for libnl (linux)
-+	CPPFLAGS="$CPPFLAGS $(pkg-config --cflags-only-I libnl-3.0)"
- 	NETSNMP_SEARCH_LIBS(
--	    nl_connect, nl,
-+	    nl_connect, nl-3,
- 	    [AC_CHECK_HEADERS(netlink/netlink.h)],,, LMIBLIBS)
-     ;;
-     esac
diff --git a/abs/extra/net-snmp/net-snmp-5.7.3-perl-5.24.patch b/abs/extra/net-snmp/net-snmp-5.7.3-perl-5.24.patch
new file mode 100644
index 0000000..0cb9c7c
--- /dev/null
+++ b/abs/extra/net-snmp/net-snmp-5.7.3-perl-5.24.patch
@@ -0,0 +1,2599 @@
+From 477b4307ef12ddce3b6a9205e0bdddbfb2e0e9b6 Mon Sep 17 00:00:00 2001
+From: Bart Van Assche <bvanassche@acm.org>
+Date: Sat, 20 Feb 2016 18:58:18 -0800
+Subject: [PATCH] Remove U64 typedef
+
+The U64 typedef conflicts with a typedef in a Perl header file. Hence
+remove the U64 typedef from the Net-SNMP header files. This patch does
+not modify the Net-SNMP ABI.
+---
+ agent/mibgroup/if-mib/ifXTable/ifXTable.c          |  16 +-
+ agent/mibgroup/if-mib/ifXTable/ifXTable.h          |  48 +-
+ .../mibgroup/if-mib/ifXTable/ifXTable_interface.c  |  32 +-
+ .../ip-mib/data_access/systemstats_common.c        |   2 +-
+ .../ipIfStatsTable/ipIfStatsTable_data_get.c       |  28 +-
+ .../ipIfStatsTable/ipIfStatsTable_data_get.h       |  28 +-
+ .../ipIfStatsTable/ipIfStatsTable_interface.c      |  56 +-
+ .../ip-mib/ipSystemStatsTable/ipSystemStatsTable.c |  28 +-
+ .../ip-mib/ipSystemStatsTable/ipSystemStatsTable.h | 921 ++-------------------
+ .../ipSystemStatsTable_interface.c                 |  56 +-
+ include/net-snmp/data_access/ipstats.h             |  42 +-
+ include/net-snmp/library/int64.h                   |  34 +-
+ snmplib/int64.c                                    |  38 +-
+ snmplib/read_config.c                              |   6 +-
+ testing/fulltests/unit-tests/T015int64_clib.c      |  10 +-
+ 15 files changed, 274 insertions(+), 1071 deletions(-)
+
+diff --git a/agent/mibgroup/if-mib/ifXTable/ifXTable.c b/agent/mibgroup/if-mib/ifXTable/ifXTable.c
+index bb3e736..0c952ba 100644
+--- a/agent/mibgroup/if-mib/ifXTable/ifXTable.c
++++ b/agent/mibgroup/if-mib/ifXTable/ifXTable.c
+@@ -722,7 +722,7 @@ The total number of octets received on the interface,
+  */
+ int
+ ifHCInOctets_get(ifXTable_rowreq_ctx * rowreq_ctx,
+-                 U64 * ifHCInOctets_val_ptr)
++                 struct counter64 *ifHCInOctets_val_ptr)
+ {
+    /** we should have a non-NULL pointer */
+     netsnmp_assert(NULL != ifHCInOctets_val_ptr);
+@@ -779,7 +779,7 @@ The number of packets, delivered by this sub-layer to a
+  */
+ int
+ ifHCInUcastPkts_get(ifXTable_rowreq_ctx * rowreq_ctx,
+-                    U64 * ifHCInUcastPkts_val_ptr)
++                    struct counter64 *ifHCInUcastPkts_val_ptr)
+ {
+    /** we should have a non-NULL pointer */
+     netsnmp_assert(NULL != ifHCInUcastPkts_val_ptr);
+@@ -838,7 +838,7 @@ The number of packets, delivered by this sub-layer to a
+  */
+ int
+ ifHCInMulticastPkts_get(ifXTable_rowreq_ctx * rowreq_ctx,
+-                        U64 * ifHCInMulticastPkts_val_ptr)
++                        struct counter64 *ifHCInMulticastPkts_val_ptr)
+ {
+    /** we should have a non-NULL pointer */
+     netsnmp_assert(NULL != ifHCInMulticastPkts_val_ptr);
+@@ -897,7 +897,7 @@ The number of packets, delivered by this sub-layer to a
+  */
+ int
+ ifHCInBroadcastPkts_get(ifXTable_rowreq_ctx * rowreq_ctx,
+-                        U64 * ifHCInBroadcastPkts_val_ptr)
++                        struct counter64 *ifHCInBroadcastPkts_val_ptr)
+ {
+    /** we should have a non-NULL pointer */
+     netsnmp_assert(NULL != ifHCInBroadcastPkts_val_ptr);
+@@ -955,7 +955,7 @@ The total number of octets transmitted out of the
+  */
+ int
+ ifHCOutOctets_get(ifXTable_rowreq_ctx * rowreq_ctx,
+-                  U64 * ifHCOutOctets_val_ptr)
++                  struct counter64 *ifHCOutOctets_val_ptr)
+ {
+    /** we should have a non-NULL pointer */
+     netsnmp_assert(NULL != ifHCOutOctets_val_ptr);
+@@ -1013,7 +1013,7 @@ The total number of packets that higher-level protocols
+  */
+ int
+ ifHCOutUcastPkts_get(ifXTable_rowreq_ctx * rowreq_ctx,
+-                     U64 * ifHCOutUcastPkts_val_ptr)
++                     struct counter64 *ifHCOutUcastPkts_val_ptr)
+ {
+    /** we should have a non-NULL pointer */
+     netsnmp_assert(NULL != ifHCOutUcastPkts_val_ptr);
+@@ -1074,7 +1074,7 @@ The total number of packets that higher-level protocols
+  */
+ int
+ ifHCOutMulticastPkts_get(ifXTable_rowreq_ctx * rowreq_ctx,
+-                         U64 * ifHCOutMulticastPkts_val_ptr)
++                         struct counter64 *ifHCOutMulticastPkts_val_ptr)
+ {
+    /** we should have a non-NULL pointer */
+     netsnmp_assert(NULL != ifHCOutMulticastPkts_val_ptr);
+@@ -1134,7 +1134,7 @@ The total number of packets that higher-level protocols
+  */
+ int
+ ifHCOutBroadcastPkts_get(ifXTable_rowreq_ctx * rowreq_ctx,
+-                         U64 * ifHCOutBroadcastPkts_val_ptr)
++                         struct counter64 *ifHCOutBroadcastPkts_val_ptr)
+ {
+    /** we should have a non-NULL pointer */
+     netsnmp_assert(NULL != ifHCOutBroadcastPkts_val_ptr);
+diff --git a/agent/mibgroup/if-mib/ifXTable/ifXTable.h b/agent/mibgroup/if-mib/ifXTable/ifXTable.h
+index ba22f97..925af13 100644
+--- a/agent/mibgroup/if-mib/ifXTable/ifXTable.h
++++ b/agent/mibgroup/if-mib/ifXTable/ifXTable.h
+@@ -143,28 +143,28 @@ config_require(if-mib/ifXTable/ifXTable_data_access)
+                                            u_long *
+                                            ifOutBroadcastPkts_val_ptr);
+     int             ifHCInOctets_get(ifXTable_rowreq_ctx * rowreq_ctx,
+-                                     U64 * ifHCInOctets_val_ptr);
++                                     struct counter64 *ifHCInOctets_val_ptr);
+     int             ifHCInUcastPkts_get(ifXTable_rowreq_ctx * rowreq_ctx,
+-                                        U64 * ifHCInUcastPkts_val_ptr);
++                                        struct counter64 *ifHCInUcastPkts_val_ptr);
+     int             ifHCInMulticastPkts_get(ifXTable_rowreq_ctx *
+                                             rowreq_ctx,
+-                                            U64 *
++                                            struct counter64 *
+                                             ifHCInMulticastPkts_val_ptr);
+     int             ifHCInBroadcastPkts_get(ifXTable_rowreq_ctx *
+                                             rowreq_ctx,
+-                                            U64 *
++                                            struct counter64 *
+                                             ifHCInBroadcastPkts_val_ptr);
+     int             ifHCOutOctets_get(ifXTable_rowreq_ctx * rowreq_ctx,
+-                                      U64 * ifHCOutOctets_val_ptr);
++                                      struct counter64 *ifHCOutOctets_val_ptr);
+     int             ifHCOutUcastPkts_get(ifXTable_rowreq_ctx * rowreq_ctx,
+-                                         U64 * ifHCOutUcastPkts_val_ptr);
++                                         struct counter64 *ifHCOutUcastPkts_val_ptr);
+     int             ifHCOutMulticastPkts_get(ifXTable_rowreq_ctx *
+                                              rowreq_ctx,
+-                                             U64 *
++                                             struct counter64 *
+                                              ifHCOutMulticastPkts_val_ptr);
+     int             ifHCOutBroadcastPkts_get(ifXTable_rowreq_ctx *
+                                              rowreq_ctx,
+-                                             U64 *
++                                             struct counter64 *
+                                              ifHCOutBroadcastPkts_val_ptr);
+     int             ifLinkUpDownTrapEnable_get(ifXTable_rowreq_ctx *
+                                                rowreq_ctx,
+@@ -284,86 +284,86 @@ config_require(if-mib/ifXTable/ifXTable_data_access)
+ 
+     int             ifHCInOctets_check_value(ifXTable_rowreq_ctx *
+                                              rowreq_ctx,
+-                                             U64 ifHCInOctets_val);
++                                             struct counter64 ifHCInOctets_val);
+     int             ifHCInOctets_undo_setup(ifXTable_rowreq_ctx *
+                                             rowreq_ctx);
+     int             ifHCInOctets_set(ifXTable_rowreq_ctx * rowreq_ctx,
+-                                     U64 ifHCInOctets_val);
++                                     struct counter64 ifHCInOctets_val);
+     int             ifHCInOctets_undo(ifXTable_rowreq_ctx * rowreq_ctx);
+ 
+     int             ifHCInUcastPkts_check_value(ifXTable_rowreq_ctx *
+                                                 rowreq_ctx,
+-                                                U64 ifHCInUcastPkts_val);
++                                                struct counter64 ifHCInUcastPkts_val);
+     int             ifHCInUcastPkts_undo_setup(ifXTable_rowreq_ctx *
+                                                rowreq_ctx);
+     int             ifHCInUcastPkts_set(ifXTable_rowreq_ctx * rowreq_ctx,
+-                                        U64 ifHCInUcastPkts_val);
++                                        struct counter64 ifHCInUcastPkts_val);
+     int             ifHCInUcastPkts_undo(ifXTable_rowreq_ctx * rowreq_ctx);
+ 
+     int             ifHCInMulticastPkts_check_value(ifXTable_rowreq_ctx *
+                                                     rowreq_ctx,
+-                                                    U64
++                                                    struct counter64
+                                                     ifHCInMulticastPkts_val);
+     int             ifHCInMulticastPkts_undo_setup(ifXTable_rowreq_ctx *
+                                                    rowreq_ctx);
+     int             ifHCInMulticastPkts_set(ifXTable_rowreq_ctx *
+                                             rowreq_ctx,
+-                                            U64 ifHCInMulticastPkts_val);
++                                            struct counter64 ifHCInMulticastPkts_val);
+     int             ifHCInMulticastPkts_undo(ifXTable_rowreq_ctx *
+                                              rowreq_ctx);
+ 
+     int             ifHCInBroadcastPkts_check_value(ifXTable_rowreq_ctx *
+                                                     rowreq_ctx,
+-                                                    U64
++                                                    struct counter64
+                                                     ifHCInBroadcastPkts_val);
+     int             ifHCInBroadcastPkts_undo_setup(ifXTable_rowreq_ctx *
+                                                    rowreq_ctx);
+     int             ifHCInBroadcastPkts_set(ifXTable_rowreq_ctx *
+                                             rowreq_ctx,
+-                                            U64 ifHCInBroadcastPkts_val);
++                                            struct counter64 ifHCInBroadcastPkts_val);
+     int             ifHCInBroadcastPkts_undo(ifXTable_rowreq_ctx *
+                                              rowreq_ctx);
+ 
+     int             ifHCOutOctets_check_value(ifXTable_rowreq_ctx *
+                                               rowreq_ctx,
+-                                              U64 ifHCOutOctets_val);
++                                              struct counter64 ifHCOutOctets_val);
+     int             ifHCOutOctets_undo_setup(ifXTable_rowreq_ctx *
+                                              rowreq_ctx);
+     int             ifHCOutOctets_set(ifXTable_rowreq_ctx * rowreq_ctx,
+-                                      U64 ifHCOutOctets_val);
++                                      struct counter64 ifHCOutOctets_val);
+     int             ifHCOutOctets_undo(ifXTable_rowreq_ctx * rowreq_ctx);
+ 
+     int             ifHCOutUcastPkts_check_value(ifXTable_rowreq_ctx *
+                                                  rowreq_ctx,
+-                                                 U64 ifHCOutUcastPkts_val);
++                                                 struct counter64 ifHCOutUcastPkts_val);
+     int             ifHCOutUcastPkts_undo_setup(ifXTable_rowreq_ctx *
+                                                 rowreq_ctx);
+     int             ifHCOutUcastPkts_set(ifXTable_rowreq_ctx * rowreq_ctx,
+-                                         U64 ifHCOutUcastPkts_val);
++                                         struct counter64 ifHCOutUcastPkts_val);
+     int             ifHCOutUcastPkts_undo(ifXTable_rowreq_ctx *
+                                           rowreq_ctx);
+ 
+     int             ifHCOutMulticastPkts_check_value(ifXTable_rowreq_ctx *
+                                                      rowreq_ctx,
+-                                                     U64
++                                                     struct counter64
+                                                      ifHCOutMulticastPkts_val);
+     int             ifHCOutMulticastPkts_undo_setup(ifXTable_rowreq_ctx *
+                                                     rowreq_ctx);
+     int             ifHCOutMulticastPkts_set(ifXTable_rowreq_ctx *
+                                              rowreq_ctx,
+-                                             U64 ifHCOutMulticastPkts_val);
++                                             struct counter64 ifHCOutMulticastPkts_val);
+     int             ifHCOutMulticastPkts_undo(ifXTable_rowreq_ctx *
+                                               rowreq_ctx);
+ 
+     int             ifHCOutBroadcastPkts_check_value(ifXTable_rowreq_ctx *
+                                                      rowreq_ctx,
+-                                                     U64
++                                                     struct counter64
+                                                      ifHCOutBroadcastPkts_val);
+     int             ifHCOutBroadcastPkts_undo_setup(ifXTable_rowreq_ctx *
+                                                     rowreq_ctx);
+     int             ifHCOutBroadcastPkts_set(ifXTable_rowreq_ctx *
+                                              rowreq_ctx,
+-                                             U64 ifHCOutBroadcastPkts_val);
++                                             struct counter64 ifHCOutBroadcastPkts_val);
+     int             ifHCOutBroadcastPkts_undo(ifXTable_rowreq_ctx *
+                                               rowreq_ctx);
+ 
+diff --git a/agent/mibgroup/if-mib/ifXTable/ifXTable_interface.c b/agent/mibgroup/if-mib/ifXTable/ifXTable_interface.c
+index 23b50d0..e561842 100644
+--- a/agent/mibgroup/if-mib/ifXTable/ifXTable_interface.c
++++ b/agent/mibgroup/if-mib/ifXTable/ifXTable_interface.c
+@@ -729,72 +729,72 @@ _ifXTable_get_column(ifXTable_rowreq_ctx * rowreq_ctx,
+          * ifHCInOctets(6)/COUNTER64/ASN_COUNTER64/U64(U64)//l/A/w/e/r/d/h 
+          */
+     case COLUMN_IFHCINOCTETS:
+-        var->val_len = sizeof(U64);
++        var->val_len = sizeof(struct counter64);
+         var->type = ASN_COUNTER64;
+-        rc = ifHCInOctets_get(rowreq_ctx, (U64 *) var->val.string);
++        rc = ifHCInOctets_get(rowreq_ctx, (struct counter64 *) var->val.string);
+         break;
+ 
+         /*
+          * ifHCInUcastPkts(7)/COUNTER64/ASN_COUNTER64/U64(U64)//l/A/w/e/r/d/h 
+          */
+     case COLUMN_IFHCINUCASTPKTS:
+-        var->val_len = sizeof(U64);
++        var->val_len = sizeof(struct counter64);
+         var->type = ASN_COUNTER64;
+-        rc = ifHCInUcastPkts_get(rowreq_ctx, (U64 *) var->val.string);
++        rc = ifHCInUcastPkts_get(rowreq_ctx, (struct counter64 *) var->val.string);
+         break;
+ 
+         /*
+          * ifHCInMulticastPkts(8)/COUNTER64/ASN_COUNTER64/U64(U64)//l/A/w/e/r/d/h 
+          */
+     case COLUMN_IFHCINMULTICASTPKTS:
+-        var->val_len = sizeof(U64);
++        var->val_len = sizeof(struct counter64);
+         var->type = ASN_COUNTER64;
+-        rc = ifHCInMulticastPkts_get(rowreq_ctx, (U64 *) var->val.string);
++        rc = ifHCInMulticastPkts_get(rowreq_ctx, (struct counter64 *) var->val.string);
+         break;
+ 
+         /*
+          * ifHCInBroadcastPkts(9)/COUNTER64/ASN_COUNTER64/U64(U64)//l/A/w/e/r/d/h 
+          */
+     case COLUMN_IFHCINBROADCASTPKTS:
+-        var->val_len = sizeof(U64);
++        var->val_len = sizeof(struct counter64);
+         var->type = ASN_COUNTER64;
+-        rc = ifHCInBroadcastPkts_get(rowreq_ctx, (U64 *) var->val.string);
++        rc = ifHCInBroadcastPkts_get(rowreq_ctx, (struct counter64 *) var->val.string);
+         break;
+ 
+         /*
+          * ifHCOutOctets(10)/COUNTER64/ASN_COUNTER64/U64(U64)//l/A/w/e/r/d/h 
+          */
+     case COLUMN_IFHCOUTOCTETS:
+-        var->val_len = sizeof(U64);
++        var->val_len = sizeof(struct counter64);
+         var->type = ASN_COUNTER64;
+-        rc = ifHCOutOctets_get(rowreq_ctx, (U64 *) var->val.string);
++        rc = ifHCOutOctets_get(rowreq_ctx, (struct counter64 *) var->val.string);
+         break;
+ 
+         /*
+          * ifHCOutUcastPkts(11)/COUNTER64/ASN_COUNTER64/U64(U64)//l/A/w/e/r/d/h 
+          */
+     case COLUMN_IFHCOUTUCASTPKTS:
+-        var->val_len = sizeof(U64);
++        var->val_len = sizeof(struct counter64);
+         var->type = ASN_COUNTER64;
+-        rc = ifHCOutUcastPkts_get(rowreq_ctx, (U64 *) var->val.string);
++        rc = ifHCOutUcastPkts_get(rowreq_ctx, (struct counter64 *) var->val.string);
+         break;
+ 
+         /*
+          * ifHCOutMulticastPkts(12)/COUNTER64/ASN_COUNTER64/U64(U64)//l/A/w/e/r/d/h 
+          */
+     case COLUMN_IFHCOUTMULTICASTPKTS:
+-        var->val_len = sizeof(U64);
++        var->val_len = sizeof(struct counter64);
+         var->type = ASN_COUNTER64;
+-        rc = ifHCOutMulticastPkts_get(rowreq_ctx, (U64 *) var->val.string);
++        rc = ifHCOutMulticastPkts_get(rowreq_ctx, (struct counter64 *) var->val.string);
+         break;
+ 
+         /*
+          * ifHCOutBroadcastPkts(13)/COUNTER64/ASN_COUNTER64/U64(U64)//l/A/w/e/r/d/h 
+          */
+     case COLUMN_IFHCOUTBROADCASTPKTS:
+-        var->val_len = sizeof(U64);
++        var->val_len = sizeof(struct counter64);
+         var->type = ASN_COUNTER64;
+-        rc = ifHCOutBroadcastPkts_get(rowreq_ctx, (U64 *) var->val.string);
++        rc = ifHCOutBroadcastPkts_get(rowreq_ctx, (struct counter64 *) var->val.string);
+         break;
+ 
+         /*
+diff --git a/agent/mibgroup/ip-mib/data_access/systemstats_common.c b/agent/mibgroup/ip-mib/data_access/systemstats_common.c
+index 29109bd..7434b3a 100644
+--- a/agent/mibgroup/ip-mib/data_access/systemstats_common.c
++++ b/agent/mibgroup/ip-mib/data_access/systemstats_common.c
+@@ -264,7 +264,7 @@ _calculate_entries(netsnmp_systemstats_entry * entry)
+            && entry->stats.columnAvail[IPSYSTEMSTATSTABLE_HCOUTFRAGCREATES]
+         && entry->stats.columnAvail[IPSYSTEMSTATSTABLE_HCOUTDISCARDS]) {
+ 
+-        U64 tmp, tmp2, tmp3;
++        struct counter64 tmp, tmp2, tmp3;
+         tmp = entry->stats.HCOutRequests;
+         u64Incr(&tmp, &entry->stats.HCOutForwDatagrams);
+         u64Incr(&tmp, &entry->stats.HCOutFragCreates);
+diff --git a/agent/mibgroup/ip-mib/ipIfStatsTable/ipIfStatsTable_data_get.c b/agent/mibgroup/ip-mib/ipIfStatsTable/ipIfStatsTable_data_get.c
+index db673dc..fec36b2 100644
+--- a/agent/mibgroup/ip-mib/ipIfStatsTable/ipIfStatsTable_data_get.c
++++ b/agent/mibgroup/ip-mib/ipIfStatsTable/ipIfStatsTable_data_get.c
+@@ -270,7 +270,7 @@ The total number of input IP datagrams received, including
+  */
+ int
+ ipIfStatsHCInReceives_get(ipIfStatsTable_rowreq_ctx * rowreq_ctx,
+-                          U64 * ipIfStatsHCInReceives_val_ptr)
++                          struct counter64 *ipIfStatsHCInReceives_val_ptr)
+ {
+    /** we should have a non-NULL pointer */
+     netsnmp_assert(NULL != ipIfStatsHCInReceives_val_ptr);
+@@ -395,7 +395,7 @@ The total number of octets received in input IP datagrams,
+  */
+ int
+ ipIfStatsHCInOctets_get(ipIfStatsTable_rowreq_ctx * rowreq_ctx,
+-                        U64 * ipIfStatsHCInOctets_val_ptr)
++                        struct counter64 *ipIfStatsHCInOctets_val_ptr)
+ {
+    /** we should have a non-NULL pointer */
+     netsnmp_assert(NULL != ipIfStatsHCInOctets_val_ptr);
+@@ -862,7 +862,7 @@ The number of input datagrams for which this entity was not
+  */
+ int
+ ipIfStatsHCInForwDatagrams_get(ipIfStatsTable_rowreq_ctx * rowreq_ctx,
+-                               U64 * ipIfStatsHCInForwDatagrams_val_ptr)
++                               struct counter64 *ipIfStatsHCInForwDatagrams_val_ptr)
+ {
+    /** we should have a non-NULL pointer */
+     netsnmp_assert(NULL != ipIfStatsHCInForwDatagrams_val_ptr);
+@@ -1267,7 +1267,7 @@ The total number of datagrams successfully delivered to IP
+  */
+ int
+ ipIfStatsHCInDelivers_get(ipIfStatsTable_rowreq_ctx * rowreq_ctx,
+-                          U64 * ipIfStatsHCInDelivers_val_ptr)
++                          struct counter64 *ipIfStatsHCInDelivers_val_ptr)
+ {
+    /** we should have a non-NULL pointer */
+     netsnmp_assert(NULL != ipIfStatsHCInDelivers_val_ptr);
+@@ -1396,7 +1396,7 @@ The total number of IP datagrams that local IP user-
+  */
+ int
+ ipIfStatsHCOutRequests_get(ipIfStatsTable_rowreq_ctx * rowreq_ctx,
+-                           U64 * ipIfStatsHCOutRequests_val_ptr)
++                           struct counter64 *ipIfStatsHCOutRequests_val_ptr)
+ {
+    /** we should have a non-NULL pointer */
+     netsnmp_assert(NULL != ipIfStatsHCOutRequests_val_ptr);
+@@ -1532,7 +1532,7 @@ The number of datagrams for which this entity was not their
+  */
+ int
+ ipIfStatsHCOutForwDatagrams_get(ipIfStatsTable_rowreq_ctx * rowreq_ctx,
+-                                U64 * ipIfStatsHCOutForwDatagrams_val_ptr)
++                                struct counter64 *ipIfStatsHCOutForwDatagrams_val_ptr)
+ {
+    /** we should have a non-NULL pointer */
+     netsnmp_assert(NULL != ipIfStatsHCOutForwDatagrams_val_ptr);
+@@ -1999,7 +1999,7 @@ The total number of IP datagrams that this entity supplied
+  */
+ int
+ ipIfStatsHCOutTransmits_get(ipIfStatsTable_rowreq_ctx * rowreq_ctx,
+-                            U64 * ipIfStatsHCOutTransmits_val_ptr)
++                            struct counter64 *ipIfStatsHCOutTransmits_val_ptr)
+ {
+    /** we should have a non-NULL pointer */
+     netsnmp_assert(NULL != ipIfStatsHCOutTransmits_val_ptr);
+@@ -2123,7 +2123,7 @@ The total number of octets in IP datagrams delivered to the
+  */
+ int
+ ipIfStatsHCOutOctets_get(ipIfStatsTable_rowreq_ctx * rowreq_ctx,
+-                         U64 * ipIfStatsHCOutOctets_val_ptr)
++                         struct counter64 *ipIfStatsHCOutOctets_val_ptr)
+ {
+    /** we should have a non-NULL pointer */
+     netsnmp_assert(NULL != ipIfStatsHCOutOctets_val_ptr);
+@@ -2245,7 +2245,7 @@ The number of IP multicast datagrams received.  This object
+  */
+ int
+ ipIfStatsHCInMcastPkts_get(ipIfStatsTable_rowreq_ctx * rowreq_ctx,
+-                           U64 * ipIfStatsHCInMcastPkts_val_ptr)
++                           struct counter64 *ipIfStatsHCInMcastPkts_val_ptr)
+ {
+    /** we should have a non-NULL pointer */
+     netsnmp_assert(NULL != ipIfStatsHCInMcastPkts_val_ptr);
+@@ -2372,7 +2372,7 @@ The total number of octets received in IP multicast
+  */
+ int
+ ipIfStatsHCInMcastOctets_get(ipIfStatsTable_rowreq_ctx * rowreq_ctx,
+-                             U64 * ipIfStatsHCInMcastOctets_val_ptr)
++                             struct counter64 *ipIfStatsHCInMcastOctets_val_ptr)
+ {
+    /** we should have a non-NULL pointer */
+     netsnmp_assert(NULL != ipIfStatsHCInMcastOctets_val_ptr);
+@@ -2497,7 +2497,7 @@ The number of IP multicast datagrams transmitted.  This
+  */
+ int
+ ipIfStatsHCOutMcastPkts_get(ipIfStatsTable_rowreq_ctx * rowreq_ctx,
+-                            U64 * ipIfStatsHCOutMcastPkts_val_ptr)
++                            struct counter64 *ipIfStatsHCOutMcastPkts_val_ptr)
+ {
+    /** we should have a non-NULL pointer */
+     netsnmp_assert(NULL != ipIfStatsHCOutMcastPkts_val_ptr);
+@@ -2621,7 +2621,7 @@ The total number of octets transmitted in IP multicast
+  */
+ int
+ ipIfStatsHCOutMcastOctets_get(ipIfStatsTable_rowreq_ctx * rowreq_ctx,
+-                              U64 * ipIfStatsHCOutMcastOctets_val_ptr)
++                              struct counter64 *ipIfStatsHCOutMcastOctets_val_ptr)
+ {
+    /** we should have a non-NULL pointer */
+     netsnmp_assert(NULL != ipIfStatsHCOutMcastOctets_val_ptr);
+@@ -2743,7 +2743,7 @@ The number of IP broadcast datagrams received.  This object
+  */
+ int
+ ipIfStatsHCInBcastPkts_get(ipIfStatsTable_rowreq_ctx * rowreq_ctx,
+-                           U64 * ipIfStatsHCInBcastPkts_val_ptr)
++                           struct counter64 *ipIfStatsHCInBcastPkts_val_ptr)
+ {
+    /** we should have a non-NULL pointer */
+     netsnmp_assert(NULL != ipIfStatsHCInBcastPkts_val_ptr);
+@@ -2865,7 +2865,7 @@ The number of IP broadcast datagrams transmitted.  This
+  */
+ int
+ ipIfStatsHCOutBcastPkts_get(ipIfStatsTable_rowreq_ctx * rowreq_ctx,
+-                            U64 * ipIfStatsHCOutBcastPkts_val_ptr)
++                            struct counter64 *ipIfStatsHCOutBcastPkts_val_ptr)
+ {
+    /** we should have a non-NULL pointer */
+     netsnmp_assert(NULL != ipIfStatsHCOutBcastPkts_val_ptr);
+diff --git a/agent/mibgroup/ip-mib/ipIfStatsTable/ipIfStatsTable_data_get.h b/agent/mibgroup/ip-mib/ipIfStatsTable/ipIfStatsTable_data_get.h
+index 0cc7e47..ad5d8a0 100644
+--- a/agent/mibgroup/ip-mib/ipIfStatsTable/ipIfStatsTable_data_get.h
++++ b/agent/mibgroup/ip-mib/ipIfStatsTable/ipIfStatsTable_data_get.h
+@@ -50,7 +50,7 @@ extern          "C" {
+                                             ipIfStatsInReceives_val_ptr);
+     int             ipIfStatsHCInReceives_get(ipIfStatsTable_rowreq_ctx *
+                                               rowreq_ctx,
+-                                              U64 *
++                                              struct counter64 *
+                                               ipIfStatsHCInReceives_val_ptr);
+     int             ipIfStatsInOctets_get(ipIfStatsTable_rowreq_ctx *
+                                           rowreq_ctx,
+@@ -58,7 +58,7 @@ extern          "C" {
+                                           ipIfStatsInOctets_val_ptr);
+     int             ipIfStatsHCInOctets_get(ipIfStatsTable_rowreq_ctx *
+                                             rowreq_ctx,
+-                                            U64 *
++                                            struct counter64 *
+                                             ipIfStatsHCInOctets_val_ptr);
+     int             ipIfStatsInHdrErrors_get(ipIfStatsTable_rowreq_ctx *
+                                              rowreq_ctx,
+@@ -87,7 +87,7 @@ extern          "C" {
+     int            
+         ipIfStatsHCInForwDatagrams_get(ipIfStatsTable_rowreq_ctx *
+                                        rowreq_ctx,
+-                                       U64 *
++                                       struct counter64 *
+                                        ipIfStatsHCInForwDatagrams_val_ptr);
+     int             ipIfStatsReasmReqds_get(ipIfStatsTable_rowreq_ctx *
+                                             rowreq_ctx,
+@@ -111,7 +111,7 @@ extern          "C" {
+                                             ipIfStatsInDelivers_val_ptr);
+     int             ipIfStatsHCInDelivers_get(ipIfStatsTable_rowreq_ctx *
+                                               rowreq_ctx,
+-                                              U64 *
++                                              struct counter64 *
+                                               ipIfStatsHCInDelivers_val_ptr);
+     int             ipIfStatsOutRequests_get(ipIfStatsTable_rowreq_ctx *
+                                              rowreq_ctx,
+@@ -119,7 +119,7 @@ extern          "C" {
+                                              ipIfStatsOutRequests_val_ptr);
+     int             ipIfStatsHCOutRequests_get(ipIfStatsTable_rowreq_ctx *
+                                                rowreq_ctx,
+-                                               U64 *
++                                               struct counter64 *
+                                                ipIfStatsHCOutRequests_val_ptr);
+     int             ipIfStatsOutForwDatagrams_get(ipIfStatsTable_rowreq_ctx
+                                                   * rowreq_ctx,
+@@ -128,7 +128,7 @@ extern          "C" {
+     int            
+         ipIfStatsHCOutForwDatagrams_get(ipIfStatsTable_rowreq_ctx *
+                                         rowreq_ctx,
+-                                        U64 *
++                                        struct counter64 *
+                                         ipIfStatsHCOutForwDatagrams_val_ptr);
+     int             ipIfStatsOutDiscards_get(ipIfStatsTable_rowreq_ctx *
+                                              rowreq_ctx,
+@@ -156,7 +156,7 @@ extern          "C" {
+                                               ipIfStatsOutTransmits_val_ptr);
+     int             ipIfStatsHCOutTransmits_get(ipIfStatsTable_rowreq_ctx *
+                                                 rowreq_ctx,
+-                                                U64 *
++                                                struct counter64 *
+                                                 ipIfStatsHCOutTransmits_val_ptr);
+     int             ipIfStatsOutOctets_get(ipIfStatsTable_rowreq_ctx *
+                                            rowreq_ctx,
+@@ -164,7 +164,7 @@ extern          "C" {
+                                            ipIfStatsOutOctets_val_ptr);
+     int             ipIfStatsHCOutOctets_get(ipIfStatsTable_rowreq_ctx *
+                                              rowreq_ctx,
+-                                             U64 *
++                                             struct counter64 *
+                                              ipIfStatsHCOutOctets_val_ptr);
+     int             ipIfStatsInMcastPkts_get(ipIfStatsTable_rowreq_ctx *
+                                              rowreq_ctx,
+@@ -172,7 +172,7 @@ extern          "C" {
+                                              ipIfStatsInMcastPkts_val_ptr);
+     int             ipIfStatsHCInMcastPkts_get(ipIfStatsTable_rowreq_ctx *
+                                                rowreq_ctx,
+-                                               U64 *
++                                               struct counter64 *
+                                                ipIfStatsHCInMcastPkts_val_ptr);
+     int             ipIfStatsInMcastOctets_get(ipIfStatsTable_rowreq_ctx *
+                                                rowreq_ctx,
+@@ -180,7 +180,7 @@ extern          "C" {
+                                                ipIfStatsInMcastOctets_val_ptr);
+     int             ipIfStatsHCInMcastOctets_get(ipIfStatsTable_rowreq_ctx
+                                                  * rowreq_ctx,
+-                                                 U64 *
++                                                 struct counter64 *
+                                                  ipIfStatsHCInMcastOctets_val_ptr);
+     int             ipIfStatsOutMcastPkts_get(ipIfStatsTable_rowreq_ctx *
+                                               rowreq_ctx,
+@@ -188,7 +188,7 @@ extern          "C" {
+                                               ipIfStatsOutMcastPkts_val_ptr);
+     int             ipIfStatsHCOutMcastPkts_get(ipIfStatsTable_rowreq_ctx *
+                                                 rowreq_ctx,
+-                                                U64 *
++                                                struct counter64 *
+                                                 ipIfStatsHCOutMcastPkts_val_ptr);
+     int             ipIfStatsOutMcastOctets_get(ipIfStatsTable_rowreq_ctx *
+                                                 rowreq_ctx,
+@@ -196,7 +196,7 @@ extern          "C" {
+                                                 ipIfStatsOutMcastOctets_val_ptr);
+     int             ipIfStatsHCOutMcastOctets_get(ipIfStatsTable_rowreq_ctx
+                                                   * rowreq_ctx,
+-                                                  U64 *
++                                                  struct counter64 *
+                                                   ipIfStatsHCOutMcastOctets_val_ptr);
+     int             ipIfStatsInBcastPkts_get(ipIfStatsTable_rowreq_ctx *
+                                              rowreq_ctx,
+@@ -204,7 +204,7 @@ extern          "C" {
+                                              ipIfStatsInBcastPkts_val_ptr);
+     int             ipIfStatsHCInBcastPkts_get(ipIfStatsTable_rowreq_ctx *
+                                                rowreq_ctx,
+-                                               U64 *
++                                               struct counter64 *
+                                                ipIfStatsHCInBcastPkts_val_ptr);
+     int             ipIfStatsOutBcastPkts_get(ipIfStatsTable_rowreq_ctx *
+                                               rowreq_ctx,
+@@ -212,7 +212,7 @@ extern          "C" {
+                                               ipIfStatsOutBcastPkts_val_ptr);
+     int             ipIfStatsHCOutBcastPkts_get(ipIfStatsTable_rowreq_ctx *
+                                                 rowreq_ctx,
+-                                                U64 *
++                                                struct counter64 *
+                                                 ipIfStatsHCOutBcastPkts_val_ptr);
+     int            
+         ipIfStatsDiscontinuityTime_get(ipIfStatsTable_rowreq_ctx *
+diff --git a/agent/mibgroup/ip-mib/ipIfStatsTable/ipIfStatsTable_interface.c b/agent/mibgroup/ip-mib/ipIfStatsTable/ipIfStatsTable_interface.c
+index 559d1c1..4955a8b 100644
+--- a/agent/mibgroup/ip-mib/ipIfStatsTable/ipIfStatsTable_interface.c
++++ b/agent/mibgroup/ip-mib/ipIfStatsTable/ipIfStatsTable_interface.c
+@@ -722,10 +722,10 @@ _ipIfStatsTable_get_column(ipIfStatsTable_rowreq_ctx * rowreq_ctx,
+          * ipIfStatsHCInReceives(4)/COUNTER64/ASN_COUNTER64/U64(U64)//l/A/w/e/r/d/h 
+          */
+     case COLUMN_IPIFSTATSHCINRECEIVES:
+-        var->val_len = sizeof(U64);
++        var->val_len = sizeof(struct counter64);
+         var->type = ASN_COUNTER64;
+         rc = ipIfStatsHCInReceives_get(rowreq_ctx,
+-                                       (U64 *) var->val.string);
++                                       (struct counter64 *) var->val.string);
+         break;
+ 
+         /*
+@@ -741,9 +741,9 @@ _ipIfStatsTable_get_column(ipIfStatsTable_rowreq_ctx * rowreq_ctx,
+          * ipIfStatsHCInOctets(6)/COUNTER64/ASN_COUNTER64/U64(U64)//l/A/w/e/r/d/h 
+          */
+     case COLUMN_IPIFSTATSHCINOCTETS:
+-        var->val_len = sizeof(U64);
++        var->val_len = sizeof(struct counter64);
+         var->type = ASN_COUNTER64;
+-        rc = ipIfStatsHCInOctets_get(rowreq_ctx, (U64 *) var->val.string);
++        rc = ipIfStatsHCInOctets_get(rowreq_ctx, (struct counter64 *) var->val.string);
+         break;
+ 
+         /*
+@@ -810,10 +810,10 @@ _ipIfStatsTable_get_column(ipIfStatsTable_rowreq_ctx * rowreq_ctx,
+          * ipIfStatsHCInForwDatagrams(13)/COUNTER64/ASN_COUNTER64/U64(U64)//l/A/w/e/r/d/h 
+          */
+     case COLUMN_IPIFSTATSHCINFORWDATAGRAMS:
+-        var->val_len = sizeof(U64);
++        var->val_len = sizeof(struct counter64);
+         var->type = ASN_COUNTER64;
+         rc = ipIfStatsHCInForwDatagrams_get(rowreq_ctx,
+-                                            (U64 *) var->val.string);
++                                            (struct counter64 *) var->val.string);
+         break;
+ 
+         /*
+@@ -869,10 +869,10 @@ _ipIfStatsTable_get_column(ipIfStatsTable_rowreq_ctx * rowreq_ctx,
+          * ipIfStatsHCInDelivers(19)/COUNTER64/ASN_COUNTER64/U64(U64)//l/A/w/e/r/d/h 
+          */
+     case COLUMN_IPIFSTATSHCINDELIVERS:
+-        var->val_len = sizeof(U64);
++        var->val_len = sizeof(struct counter64);
+         var->type = ASN_COUNTER64;
+         rc = ipIfStatsHCInDelivers_get(rowreq_ctx,
+-                                       (U64 *) var->val.string);
++                                       (struct counter64 *) var->val.string);
+         break;
+ 
+         /*
+@@ -889,10 +889,10 @@ _ipIfStatsTable_get_column(ipIfStatsTable_rowreq_ctx * rowreq_ctx,
+          * ipIfStatsHCOutRequests(21)/COUNTER64/ASN_COUNTER64/U64(U64)//l/A/w/e/r/d/h 
+          */
+     case COLUMN_IPIFSTATSHCOUTREQUESTS:
+-        var->val_len = sizeof(U64);
++        var->val_len = sizeof(struct counter64);
+         var->type = ASN_COUNTER64;
+         rc = ipIfStatsHCOutRequests_get(rowreq_ctx,
+-                                        (U64 *) var->val.string);
++                                        (struct counter64 *) var->val.string);
+         break;
+ 
+         /*
+@@ -909,10 +909,10 @@ _ipIfStatsTable_get_column(ipIfStatsTable_rowreq_ctx * rowreq_ctx,
+          * ipIfStatsHCOutForwDatagrams(24)/COUNTER64/ASN_COUNTER64/U64(U64)//l/A/w/e/r/d/h 
+          */
+     case COLUMN_IPIFSTATSHCOUTFORWDATAGRAMS:
+-        var->val_len = sizeof(U64);
++        var->val_len = sizeof(struct counter64);
+         var->type = ASN_COUNTER64;
+         rc = ipIfStatsHCOutForwDatagrams_get(rowreq_ctx,
+-                                             (U64 *) var->val.string);
++                                             (struct counter64 *) var->val.string);
+         break;
+ 
+         /*
+@@ -979,10 +979,10 @@ _ipIfStatsTable_get_column(ipIfStatsTable_rowreq_ctx * rowreq_ctx,
+          * ipIfStatsHCOutTransmits(31)/COUNTER64/ASN_COUNTER64/U64(U64)//l/A/w/e/r/d/h 
+          */
+     case COLUMN_IPIFSTATSHCOUTTRANSMITS:
+-        var->val_len = sizeof(U64);
++        var->val_len = sizeof(struct counter64);
+         var->type = ASN_COUNTER64;
+         rc = ipIfStatsHCOutTransmits_get(rowreq_ctx,
+-                                         (U64 *) var->val.string);
++                                         (struct counter64 *) var->val.string);
+         break;
+ 
+         /*
+@@ -999,9 +999,9 @@ _ipIfStatsTable_get_column(ipIfStatsTable_rowreq_ctx * rowreq_ctx,
+          * ipIfStatsHCOutOctets(33)/COUNTER64/ASN_COUNTER64/U64(U64)//l/A/w/e/r/d/h 
+          */
+     case COLUMN_IPIFSTATSHCOUTOCTETS:
+-        var->val_len = sizeof(U64);
++        var->val_len = sizeof(struct counter64);
+         var->type = ASN_COUNTER64;
+-        rc = ipIfStatsHCOutOctets_get(rowreq_ctx, (U64 *) var->val.string);
++        rc = ipIfStatsHCOutOctets_get(rowreq_ctx, (struct counter64 *) var->val.string);
+         break;
+ 
+         /*
+@@ -1018,10 +1018,10 @@ _ipIfStatsTable_get_column(ipIfStatsTable_rowreq_ctx * rowreq_ctx,
+          * ipIfStatsHCInMcastPkts(35)/COUNTER64/ASN_COUNTER64/U64(U64)//l/A/w/e/r/d/h 
+          */
+     case COLUMN_IPIFSTATSHCINMCASTPKTS:
+-        var->val_len = sizeof(U64);
++        var->val_len = sizeof(struct counter64);
+         var->type = ASN_COUNTER64;
+         rc = ipIfStatsHCInMcastPkts_get(rowreq_ctx,
+-                                        (U64 *) var->val.string);
++                                        (struct counter64 *) var->val.string);
+         break;
+ 
+         /*
+@@ -1038,10 +1038,10 @@ _ipIfStatsTable_get_column(ipIfStatsTable_rowreq_ctx * rowreq_ctx,
+          * ipIfStatsHCInMcastOctets(37)/COUNTER64/ASN_COUNTER64/U64(U64)//l/A/w/e/r/d/h 
+          */
+     case COLUMN_IPIFSTATSHCINMCASTOCTETS:
+-        var->val_len = sizeof(U64);
++        var->val_len = sizeof(struct counter64);
+         var->type = ASN_COUNTER64;
+         rc = ipIfStatsHCInMcastOctets_get(rowreq_ctx,
+-                                          (U64 *) var->val.string);
++                                          (struct counter64 *) var->val.string);
+         break;
+ 
+         /*
+@@ -1058,10 +1058,10 @@ _ipIfStatsTable_get_column(ipIfStatsTable_rowreq_ctx * rowreq_ctx,
+          * ipIfStatsHCOutMcastPkts(39)/COUNTER64/ASN_COUNTER64/U64(U64)//l/A/w/e/r/d/h 
+          */
+     case COLUMN_IPIFSTATSHCOUTMCASTPKTS:
+-        var->val_len = sizeof(U64);
++        var->val_len = sizeof(struct counter64);
+         var->type = ASN_COUNTER64;
+         rc = ipIfStatsHCOutMcastPkts_get(rowreq_ctx,
+-                                         (U64 *) var->val.string);
++                                         (struct counter64 *) var->val.string);
+         break;
+ 
+         /*
+@@ -1078,10 +1078,10 @@ _ipIfStatsTable_get_column(ipIfStatsTable_rowreq_ctx * rowreq_ctx,
+          * ipIfStatsHCOutMcastOctets(41)/COUNTER64/ASN_COUNTER64/U64(U64)//l/A/w/e/r/d/h 
+          */
+     case COLUMN_IPIFSTATSHCOUTMCASTOCTETS:
+-        var->val_len = sizeof(U64);
++        var->val_len = sizeof(struct counter64);
+         var->type = ASN_COUNTER64;
+         rc = ipIfStatsHCOutMcastOctets_get(rowreq_ctx,
+-                                           (U64 *) var->val.string);
++                                           (struct counter64 *) var->val.string);
+         break;
+ 
+         /*
+@@ -1098,10 +1098,10 @@ _ipIfStatsTable_get_column(ipIfStatsTable_rowreq_ctx * rowreq_ctx,
+          * ipIfStatsHCInBcastPkts(43)/COUNTER64/ASN_COUNTER64/U64(U64)//l/A/w/e/r/d/h 
+          */
+     case COLUMN_IPIFSTATSHCINBCASTPKTS:
+-        var->val_len = sizeof(U64);
++        var->val_len = sizeof(struct counter64);
+         var->type = ASN_COUNTER64;
+         rc = ipIfStatsHCInBcastPkts_get(rowreq_ctx,
+-                                        (U64 *) var->val.string);
++                                        (struct counter64 *) var->val.string);
+         break;
+ 
+         /*
+@@ -1118,10 +1118,10 @@ _ipIfStatsTable_get_column(ipIfStatsTable_rowreq_ctx * rowreq_ctx,
+          * ipIfStatsHCOutBcastPkts(45)/COUNTER64/ASN_COUNTER64/U64(U64)//l/A/w/e/r/d/h 
+          */
+     case COLUMN_IPIFSTATSHCOUTBCASTPKTS:
+-        var->val_len = sizeof(U64);
++        var->val_len = sizeof(struct counter64);
+         var->type = ASN_COUNTER64;
+         rc = ipIfStatsHCOutBcastPkts_get(rowreq_ctx,
+-                                         (U64 *) var->val.string);
++                                         (struct counter64 *) var->val.string);
+         break;
+ 
+         /*
+diff --git a/agent/mibgroup/ip-mib/ipSystemStatsTable/ipSystemStatsTable.c b/agent/mibgroup/ip-mib/ipSystemStatsTable/ipSystemStatsTable.c
+index 10587e2..5a9323f 100644
+--- a/agent/mibgroup/ip-mib/ipSystemStatsTable/ipSystemStatsTable.c
++++ b/agent/mibgroup/ip-mib/ipSystemStatsTable/ipSystemStatsTable.c
+@@ -452,7 +452,7 @@ The total number of input IP datagrams received, including
+  */
+ int
+ ipSystemStatsHCInReceives_get(ipSystemStatsTable_rowreq_ctx * rowreq_ctx,
+-                              U64 * ipSystemStatsHCInReceives_val_ptr)
++                              struct counter64 *ipSystemStatsHCInReceives_val_ptr)
+ {
+    /** we should have a non-NULL pointer */
+     netsnmp_assert(NULL != ipSystemStatsHCInReceives_val_ptr);
+@@ -579,7 +579,7 @@ The total number of octets received in input IP datagrams,
+  */
+ int
+ ipSystemStatsHCInOctets_get(ipSystemStatsTable_rowreq_ctx * rowreq_ctx,
+-                            U64 * ipSystemStatsHCInOctets_val_ptr)
++                            struct counter64 *ipSystemStatsHCInOctets_val_ptr)
+ {
+    /** we should have a non-NULL pointer */
+     netsnmp_assert(NULL != ipSystemStatsHCInOctets_val_ptr);
+@@ -1058,7 +1058,7 @@ The number of input datagrams for which this entity was not
+ int
+ ipSystemStatsHCInForwDatagrams_get(ipSystemStatsTable_rowreq_ctx *
+                                    rowreq_ctx,
+-                                   U64 *
++                                   struct counter64 *
+                                    ipSystemStatsHCInForwDatagrams_val_ptr)
+ {
+    /** we should have a non-NULL pointer */
+@@ -1474,7 +1474,7 @@ The total number of datagrams successfully delivered to IP
+  */
+ int
+ ipSystemStatsHCInDelivers_get(ipSystemStatsTable_rowreq_ctx * rowreq_ctx,
+-                              U64 * ipSystemStatsHCInDelivers_val_ptr)
++                              struct counter64 *ipSystemStatsHCInDelivers_val_ptr)
+ {
+    /** we should have a non-NULL pointer */
+     netsnmp_assert(NULL != ipSystemStatsHCInDelivers_val_ptr);
+@@ -1602,7 +1602,7 @@ The total number of IP datagrams which local IP user-
+  */
+ int
+ ipSystemStatsHCOutRequests_get(ipSystemStatsTable_rowreq_ctx * rowreq_ctx,
+-                               U64 * ipSystemStatsHCOutRequests_val_ptr)
++                               struct counter64 *ipSystemStatsHCOutRequests_val_ptr)
+ {
+    /** we should have a non-NULL pointer */
+     netsnmp_assert(NULL != ipSystemStatsHCOutRequests_val_ptr);
+@@ -1809,7 +1809,7 @@ The number of datagrams for which this entity was not their
+ int
+ ipSystemStatsHCOutForwDatagrams_get(ipSystemStatsTable_rowreq_ctx *
+                                     rowreq_ctx,
+-                                    U64 *
++                                    struct counter64 *
+                                     ipSystemStatsHCOutForwDatagrams_val_ptr)
+ {
+    /** we should have a non-NULL pointer */
+@@ -2288,7 +2288,7 @@ The total number of IP datagrams that this entity supplied
+  */
+ int
+ ipSystemStatsHCOutTransmits_get(ipSystemStatsTable_rowreq_ctx * rowreq_ctx,
+-                                U64 * ipSystemStatsHCOutTransmits_val_ptr)
++                                struct counter64 *ipSystemStatsHCOutTransmits_val_ptr)
+ {
+    /** we should have a non-NULL pointer */
+     netsnmp_assert(NULL != ipSystemStatsHCOutTransmits_val_ptr);
+@@ -2415,7 +2415,7 @@ The total number of octets in IP datagrams delivered to the
+  */
+ int
+ ipSystemStatsHCOutOctets_get(ipSystemStatsTable_rowreq_ctx * rowreq_ctx,
+-                             U64 * ipSystemStatsHCOutOctets_val_ptr)
++                             struct counter64 *ipSystemStatsHCOutOctets_val_ptr)
+ {
+    /** we should have a non-NULL pointer */
+     netsnmp_assert(NULL != ipSystemStatsHCOutOctets_val_ptr);
+@@ -2539,7 +2539,7 @@ The number of IP multicast datagrams received.  This object
+  */
+ int
+ ipSystemStatsHCInMcastPkts_get(ipSystemStatsTable_rowreq_ctx * rowreq_ctx,
+-                               U64 * ipSystemStatsHCInMcastPkts_val_ptr)
++                               struct counter64 *ipSystemStatsHCInMcastPkts_val_ptr)
+ {
+    /** we should have a non-NULL pointer */
+     netsnmp_assert(NULL != ipSystemStatsHCInMcastPkts_val_ptr);
+@@ -2665,7 +2665,7 @@ The total number of octets received in IP multicast
+ int
+ ipSystemStatsHCInMcastOctets_get(ipSystemStatsTable_rowreq_ctx *
+                                  rowreq_ctx,
+-                                 U64 *
++                                 struct counter64 *
+                                  ipSystemStatsHCInMcastOctets_val_ptr)
+ {
+    /** we should have a non-NULL pointer */
+@@ -2790,7 +2790,7 @@ The number of IP multicast datagrams transmitted.  This
+  */
+ int
+ ipSystemStatsHCOutMcastPkts_get(ipSystemStatsTable_rowreq_ctx * rowreq_ctx,
+-                                U64 * ipSystemStatsHCOutMcastPkts_val_ptr)
++                                struct counter64 *ipSystemStatsHCOutMcastPkts_val_ptr)
+ {
+    /** we should have a non-NULL pointer */
+     netsnmp_assert(NULL != ipSystemStatsHCOutMcastPkts_val_ptr);
+@@ -2921,7 +2921,7 @@ The total number of octets transmitted in IP multicast
+ int
+ ipSystemStatsHCOutMcastOctets_get(ipSystemStatsTable_rowreq_ctx *
+                                   rowreq_ctx,
+-                                  U64 *
++                                  struct counter64 *
+                                   ipSystemStatsHCOutMcastOctets_val_ptr)
+ {
+    /** we should have a non-NULL pointer */
+@@ -3046,7 +3046,7 @@ The number of IP broadcast datagrams received.  This object
+  */
+ int
+ ipSystemStatsHCInBcastPkts_get(ipSystemStatsTable_rowreq_ctx * rowreq_ctx,
+-                               U64 * ipSystemStatsHCInBcastPkts_val_ptr)
++                               struct counter64 *ipSystemStatsHCInBcastPkts_val_ptr)
+ {
+    /** we should have a non-NULL pointer */
+     netsnmp_assert(NULL != ipSystemStatsHCInBcastPkts_val_ptr);
+@@ -3170,7 +3170,7 @@ The number of IP broadcast datagrams transmitted.  This
+  */
+ int
+ ipSystemStatsHCOutBcastPkts_get(ipSystemStatsTable_rowreq_ctx * rowreq_ctx,
+-                                U64 * ipSystemStatsHCOutBcastPkts_val_ptr)
++                                struct counter64 *ipSystemStatsHCOutBcastPkts_val_ptr)
+ {
+    /** we should have a non-NULL pointer */
+     netsnmp_assert(NULL != ipSystemStatsHCOutBcastPkts_val_ptr);
+diff --git a/agent/mibgroup/ip-mib/ipSystemStatsTable/ipSystemStatsTable.h b/agent/mibgroup/ip-mib/ipSystemStatsTable/ipSystemStatsTable.h
+index ca1e1f3..5c3823e 100644
+--- a/agent/mibgroup/ip-mib/ipSystemStatsTable/ipSystemStatsTable.h
++++ b/agent/mibgroup/ip-mib/ipSystemStatsTable/ipSystemStatsTable.h
+@@ -144,93 +144,22 @@ config_require(ip-mib/ipSystemStatsTable/ipSystemStatsTable_data_access)
+      *********************************************************************
+      * function prototypes
+      */
+-    int
+-     
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        ipSystemStatsTable_pre_request(ipSystemStatsTable_registration *
++    int ipSystemStatsTable_pre_request(ipSystemStatsTable_registration *
+                                        user_context);
+-    int
+-     
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        ipSystemStatsTable_post_request(ipSystemStatsTable_registration *
++    int ipSystemStatsTable_post_request(ipSystemStatsTable_registration *
+                                         user_context, int rc);
+ 
+-    int
+-     
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        ipSystemStatsTable_rowreq_ctx_init(ipSystemStatsTable_rowreq_ctx *
++    int ipSystemStatsTable_rowreq_ctx_init(ipSystemStatsTable_rowreq_ctx *
+                                            rowreq_ctx,
+                                            void *user_init_ctx);
+     void
+-     
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+         ipSystemStatsTable_rowreq_ctx_cleanup(ipSystemStatsTable_rowreq_ctx
+                                               * rowreq_ctx);
+ 
+     ipSystemStatsTable_data *ipSystemStatsTable_allocate_data(void);
+     void            ipSystemStatsTable_release_data(ipSystemStatsTable_data
+                                                     * data);
+-
+-
+-         
+-         
+-         
+-         
+-         
+-         
+-        ipSystemStatsTable_rowreq_ctx
++    ipSystemStatsTable_rowreq_ctx
+         * ipSystemStatsTable_row_find_by_mib_index
+         (ipSystemStatsTable_mib_index * mib_idx);
+ 
+@@ -265,226 +194,50 @@ config_require(ip-mib/ipSystemStatsTable/ipSystemStatsTable_data_access)
+      * indexes
+      */
+ 
+-    int
+-     
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        ipSystemStatsInReceives_get(ipSystemStatsTable_rowreq_ctx *
++    int ipSystemStatsInReceives_get(ipSystemStatsTable_rowreq_ctx *
+                                     rowreq_ctx,
+                                     u_long *
+                                     ipSystemStatsInReceives_val_ptr);
+-    int
+-     
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        ipSystemStatsHCInReceives_get(ipSystemStatsTable_rowreq_ctx *
++    int ipSystemStatsHCInReceives_get(ipSystemStatsTable_rowreq_ctx *
+                                       rowreq_ctx,
+-                                      U64 *
++                                      struct counter64 *
+                                       ipSystemStatsHCInReceives_val_ptr);
+     int             ipSystemStatsInOctets_get(ipSystemStatsTable_rowreq_ctx
+                                               * rowreq_ctx,
+                                               u_long *
+                                               ipSystemStatsInOctets_val_ptr);
+-    int
+-     
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        ipSystemStatsHCInOctets_get(ipSystemStatsTable_rowreq_ctx *
++    int ipSystemStatsHCInOctets_get(ipSystemStatsTable_rowreq_ctx *
+                                     rowreq_ctx,
+-                                    U64 * ipSystemStatsHCInOctets_val_ptr);
+-    int
+-     
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        ipSystemStatsInHdrErrors_get(ipSystemStatsTable_rowreq_ctx *
++                                    struct counter64 *ipSystemStatsHCInOctets_val_ptr);
++    int ipSystemStatsInHdrErrors_get(ipSystemStatsTable_rowreq_ctx *
+                                      rowreq_ctx,
+                                      u_long *
+                                      ipSystemStatsInHdrErrors_val_ptr);
+-    int
+-     
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        ipSystemStatsInNoRoutes_get(ipSystemStatsTable_rowreq_ctx *
++    int ipSystemStatsInNoRoutes_get(ipSystemStatsTable_rowreq_ctx *
+                                     rowreq_ctx,
+                                     u_long *
+                                     ipSystemStatsInNoRoutes_val_ptr);
+-    int
+-     
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        ipSystemStatsInAddrErrors_get(ipSystemStatsTable_rowreq_ctx *
++    int ipSystemStatsInAddrErrors_get(ipSystemStatsTable_rowreq_ctx *
+                                       rowreq_ctx,
+                                       u_long *
+                                       ipSystemStatsInAddrErrors_val_ptr);
+-    int
+-     
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        ipSystemStatsInUnknownProtos_get(ipSystemStatsTable_rowreq_ctx *
++    int ipSystemStatsInUnknownProtos_get(ipSystemStatsTable_rowreq_ctx *
+                                          rowreq_ctx,
+                                          u_long *
+                                          ipSystemStatsInUnknownProtos_val_ptr);
+-    int
+-     
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        ipSystemStatsInTruncatedPkts_get(ipSystemStatsTable_rowreq_ctx *
++    int ipSystemStatsInTruncatedPkts_get(ipSystemStatsTable_rowreq_ctx *
+                                          rowreq_ctx,
+                                          u_long *
+                                          ipSystemStatsInTruncatedPkts_val_ptr);
+-    int
+-     
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        ipSystemStatsInForwDatagrams_get(ipSystemStatsTable_rowreq_ctx *
++    int ipSystemStatsInForwDatagrams_get(ipSystemStatsTable_rowreq_ctx *
+                                          rowreq_ctx,
+                                          u_long *
+                                          ipSystemStatsInForwDatagrams_val_ptr);
+-    int
+-     
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        ipSystemStatsHCInForwDatagrams_get(ipSystemStatsTable_rowreq_ctx *
++    int ipSystemStatsHCInForwDatagrams_get(ipSystemStatsTable_rowreq_ctx *
+                                            rowreq_ctx,
+-                                           U64 *
++                                           struct counter64 *
+                                            ipSystemStatsHCInForwDatagrams_val_ptr);
+-    int
+-     
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        ipSystemStatsReasmReqds_get(ipSystemStatsTable_rowreq_ctx *
++    int ipSystemStatsReasmReqds_get(ipSystemStatsTable_rowreq_ctx *
+                                     rowreq_ctx,
+                                     u_long *
+                                     ipSystemStatsReasmReqds_val_ptr);
+@@ -492,690 +245,142 @@ config_require(ip-mib/ipSystemStatsTable/ipSystemStatsTable_data_access)
+                                               * rowreq_ctx,
+                                               u_long *
+                                               ipSystemStatsReasmOKs_val_ptr);
+-    int
+-     
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        ipSystemStatsReasmFails_get(ipSystemStatsTable_rowreq_ctx *
++    int ipSystemStatsReasmFails_get(ipSystemStatsTable_rowreq_ctx *
+                                     rowreq_ctx,
+                                     u_long *
+                                     ipSystemStatsReasmFails_val_ptr);
+-    int
+-     
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        ipSystemStatsInDiscards_get(ipSystemStatsTable_rowreq_ctx *
++    int ipSystemStatsInDiscards_get(ipSystemStatsTable_rowreq_ctx *
+                                     rowreq_ctx,
+                                     u_long *
+                                     ipSystemStatsInDiscards_val_ptr);
+-    int
+-     
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        ipSystemStatsInDelivers_get(ipSystemStatsTable_rowreq_ctx *
++    int ipSystemStatsInDelivers_get(ipSystemStatsTable_rowreq_ctx *
+                                     rowreq_ctx,
+                                     u_long *
+                                     ipSystemStatsInDelivers_val_ptr);
+-    int
+-     
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        ipSystemStatsHCInDelivers_get(ipSystemStatsTable_rowreq_ctx *
++    int ipSystemStatsHCInDelivers_get(ipSystemStatsTable_rowreq_ctx *
+                                       rowreq_ctx,
+-                                      U64 *
++                                      struct counter64 *
+                                       ipSystemStatsHCInDelivers_val_ptr);
+-    int
+-     
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        ipSystemStatsOutRequests_get(ipSystemStatsTable_rowreq_ctx *
++    int ipSystemStatsOutRequests_get(ipSystemStatsTable_rowreq_ctx *
+                                      rowreq_ctx,
+                                      u_long *
+                                      ipSystemStatsOutRequests_val_ptr);
+-    int
+-     
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        ipSystemStatsHCOutRequests_get(ipSystemStatsTable_rowreq_ctx *
++    int ipSystemStatsHCOutRequests_get(ipSystemStatsTable_rowreq_ctx *
+                                        rowreq_ctx,
+-                                       U64 *
++                                       struct counter64 *
+                                        ipSystemStatsHCOutRequests_val_ptr);
+-    int
+-     
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        ipSystemStatsOutNoRoutes_get(ipSystemStatsTable_rowreq_ctx *
++    int ipSystemStatsOutNoRoutes_get(ipSystemStatsTable_rowreq_ctx *
+                                      rowreq_ctx,
+                                      u_long *
+                                      ipSystemStatsOutNoRoutes_val_ptr);
+-    int
+-     
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        ipSystemStatsOutForwDatagrams_get(ipSystemStatsTable_rowreq_ctx *
++    int ipSystemStatsOutForwDatagrams_get(ipSystemStatsTable_rowreq_ctx *
+                                           rowreq_ctx,
+                                           u_long *
+                                           ipSystemStatsOutForwDatagrams_val_ptr);
+-    int
+-     
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        ipSystemStatsHCOutForwDatagrams_get(ipSystemStatsTable_rowreq_ctx *
++    int ipSystemStatsHCOutForwDatagrams_get(ipSystemStatsTable_rowreq_ctx *
+                                             rowreq_ctx,
+-                                            U64 *
++                                            struct counter64 *
+                                             ipSystemStatsHCOutForwDatagrams_val_ptr);
+-    int
+-     
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        ipSystemStatsOutDiscards_get(ipSystemStatsTable_rowreq_ctx *
++    int ipSystemStatsOutDiscards_get(ipSystemStatsTable_rowreq_ctx *
+                                      rowreq_ctx,
+                                      u_long *
+                                      ipSystemStatsOutDiscards_val_ptr);
+-    int
+-     
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        ipSystemStatsOutFragReqds_get(ipSystemStatsTable_rowreq_ctx *
++    int ipSystemStatsOutFragReqds_get(ipSystemStatsTable_rowreq_ctx *
+                                       rowreq_ctx,
+                                       u_long *
+                                       ipSystemStatsOutFragReqds_val_ptr);
+-    int
+-     
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        ipSystemStatsOutFragOKs_get(ipSystemStatsTable_rowreq_ctx *
++    int ipSystemStatsOutFragOKs_get(ipSystemStatsTable_rowreq_ctx *
+                                     rowreq_ctx,
+                                     u_long *
+                                     ipSystemStatsOutFragOKs_val_ptr);
+-    int
+-     
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        ipSystemStatsOutFragFails_get(ipSystemStatsTable_rowreq_ctx *
++    int ipSystemStatsOutFragFails_get(ipSystemStatsTable_rowreq_ctx *
+                                       rowreq_ctx,
+                                       u_long *
+                                       ipSystemStatsOutFragFails_val_ptr);
+-    int
+-     
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        ipSystemStatsOutFragCreates_get(ipSystemStatsTable_rowreq_ctx *
++    int ipSystemStatsOutFragCreates_get(ipSystemStatsTable_rowreq_ctx *
+                                         rowreq_ctx,
+                                         u_long *
+                                         ipSystemStatsOutFragCreates_val_ptr);
+-    int
+-     
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        ipSystemStatsOutTransmits_get(ipSystemStatsTable_rowreq_ctx *
++    int ipSystemStatsOutTransmits_get(ipSystemStatsTable_rowreq_ctx *
+                                       rowreq_ctx,
+                                       u_long *
+                                       ipSystemStatsOutTransmits_val_ptr);
+-    int
+-     
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        ipSystemStatsHCOutTransmits_get(ipSystemStatsTable_rowreq_ctx *
++    int ipSystemStatsHCOutTransmits_get(ipSystemStatsTable_rowreq_ctx *
+                                         rowreq_ctx,
+-                                        U64 *
++                                        struct counter64 *
+                                         ipSystemStatsHCOutTransmits_val_ptr);
+-    int
+-     
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        ipSystemStatsOutOctets_get(ipSystemStatsTable_rowreq_ctx *
++    int ipSystemStatsOutOctets_get(ipSystemStatsTable_rowreq_ctx *
+                                    rowreq_ctx,
+                                    u_long *
+                                    ipSystemStatsOutOctets_val_ptr);
+-    int
+-     
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        ipSystemStatsHCOutOctets_get(ipSystemStatsTable_rowreq_ctx *
++    int ipSystemStatsHCOutOctets_get(ipSystemStatsTable_rowreq_ctx *
+                                      rowreq_ctx,
+-                                     U64 *
++                                     struct counter64 *
+                                      ipSystemStatsHCOutOctets_val_ptr);
+-    int
+-     
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        ipSystemStatsInMcastPkts_get(ipSystemStatsTable_rowreq_ctx *
++    int ipSystemStatsInMcastPkts_get(ipSystemStatsTable_rowreq_ctx *
+                                      rowreq_ctx,
+                                      u_long *
+                                      ipSystemStatsInMcastPkts_val_ptr);
+-    int
+-     
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        ipSystemStatsHCInMcastPkts_get(ipSystemStatsTable_rowreq_ctx *
++    int ipSystemStatsHCInMcastPkts_get(ipSystemStatsTable_rowreq_ctx *
+                                        rowreq_ctx,
+-                                       U64 *
++                                       struct counter64 *
+                                        ipSystemStatsHCInMcastPkts_val_ptr);
+-    int
+-     
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        ipSystemStatsInMcastOctets_get(ipSystemStatsTable_rowreq_ctx *
++    int ipSystemStatsInMcastOctets_get(ipSystemStatsTable_rowreq_ctx *
+                                        rowreq_ctx,
+                                        u_long *
+                                        ipSystemStatsInMcastOctets_val_ptr);
+-    int
+-     
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        ipSystemStatsHCInMcastOctets_get(ipSystemStatsTable_rowreq_ctx *
++    int ipSystemStatsHCInMcastOctets_get(ipSystemStatsTable_rowreq_ctx *
+                                          rowreq_ctx,
+-                                         U64 *
++                                         struct counter64 *
+                                          ipSystemStatsHCInMcastOctets_val_ptr);
+-    int
+-     
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        ipSystemStatsOutMcastPkts_get(ipSystemStatsTable_rowreq_ctx *
++    int ipSystemStatsOutMcastPkts_get(ipSystemStatsTable_rowreq_ctx *
+                                       rowreq_ctx,
+                                       u_long *
+                                       ipSystemStatsOutMcastPkts_val_ptr);
+-    int
+-     
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        ipSystemStatsHCOutMcastPkts_get(ipSystemStatsTable_rowreq_ctx *
++    int ipSystemStatsHCOutMcastPkts_get(ipSystemStatsTable_rowreq_ctx *
+                                         rowreq_ctx,
+-                                        U64 *
++                                        struct counter64 *
+                                         ipSystemStatsHCOutMcastPkts_val_ptr);
+-    int
+-     
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        ipSystemStatsOutMcastOctets_get(ipSystemStatsTable_rowreq_ctx *
++    int ipSystemStatsOutMcastOctets_get(ipSystemStatsTable_rowreq_ctx *
+                                         rowreq_ctx,
+                                         u_long *
+                                         ipSystemStatsOutMcastOctets_val_ptr);
+-    int
+-     
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        ipSystemStatsHCOutMcastOctets_get(ipSystemStatsTable_rowreq_ctx *
++    int ipSystemStatsHCOutMcastOctets_get(ipSystemStatsTable_rowreq_ctx *
+                                           rowreq_ctx,
+-                                          U64 *
++                                          struct counter64 *
+                                           ipSystemStatsHCOutMcastOctets_val_ptr);
+-    int
+-     
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        ipSystemStatsInBcastPkts_get(ipSystemStatsTable_rowreq_ctx *
++    int ipSystemStatsInBcastPkts_get(ipSystemStatsTable_rowreq_ctx *
+                                      rowreq_ctx,
+                                      u_long *
+                                      ipSystemStatsInBcastPkts_val_ptr);
+-    int
+-     
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        ipSystemStatsHCInBcastPkts_get(ipSystemStatsTable_rowreq_ctx *
++    int ipSystemStatsHCInBcastPkts_get(ipSystemStatsTable_rowreq_ctx *
+                                        rowreq_ctx,
+-                                       U64 *
++                                       struct counter64 *
+                                        ipSystemStatsHCInBcastPkts_val_ptr);
+-    int
+-     
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        ipSystemStatsOutBcastPkts_get(ipSystemStatsTable_rowreq_ctx *
++    int ipSystemStatsOutBcastPkts_get(ipSystemStatsTable_rowreq_ctx *
+                                       rowreq_ctx,
+                                       u_long *
+                                       ipSystemStatsOutBcastPkts_val_ptr);
+-    int
+-     
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        ipSystemStatsHCOutBcastPkts_get(ipSystemStatsTable_rowreq_ctx *
++    int ipSystemStatsHCOutBcastPkts_get(ipSystemStatsTable_rowreq_ctx *
+                                         rowreq_ctx,
+-                                        U64 *
++                                        struct counter64 *
+                                         ipSystemStatsHCOutBcastPkts_val_ptr);
+-    int
+-     
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        ipSystemStatsDiscontinuityTime_get(ipSystemStatsTable_rowreq_ctx *
++    int ipSystemStatsDiscontinuityTime_get(ipSystemStatsTable_rowreq_ctx *
+                                            rowreq_ctx,
+                                            u_long *
+                                            ipSystemStatsDiscontinuityTime_val_ptr);
+-    int
+-     
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        ipSystemStatsRefreshRate_get(ipSystemStatsTable_rowreq_ctx *
++    int ipSystemStatsRefreshRate_get(ipSystemStatsTable_rowreq_ctx *
+                                      rowreq_ctx,
+                                      u_long *
+                                      ipSystemStatsRefreshRate_val_ptr);
+-
+-
+-    int
+-     
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        ipSystemStatsTable_indexes_set_tbl_idx(ipSystemStatsTable_mib_index
++    int ipSystemStatsTable_indexes_set_tbl_idx(ipSystemStatsTable_mib_index
+                                                * tbl_idx,
+                                                u_long
+                                                ipSystemStatsIPVersion_val);
+-    int
+-     
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        
+-        ipSystemStatsTable_indexes_set(ipSystemStatsTable_rowreq_ctx *
++    int ipSystemStatsTable_indexes_set(ipSystemStatsTable_rowreq_ctx *
+                                        rowreq_ctx,
+                                        u_long ipSystemStatsIPVersion_val);
+ 
+-
+-
+     /*
+      *********************************************************************
+      * SET function declarations
+diff --git a/agent/mibgroup/ip-mib/ipSystemStatsTable/ipSystemStatsTable_interface.c b/agent/mibgroup/ip-mib/ipSystemStatsTable/ipSystemStatsTable_interface.c
+index e1ca2cb..09c061f 100644
+--- a/agent/mibgroup/ip-mib/ipSystemStatsTable/ipSystemStatsTable_interface.c
++++ b/agent/mibgroup/ip-mib/ipSystemStatsTable/ipSystemStatsTable_interface.c
+@@ -674,10 +674,10 @@ _ipSystemStatsTable_get_column(ipSystemStatsTable_rowreq_ctx * rowreq_ctx,
+          * ipSystemStatsHCInReceives(4)/COUNTER64/ASN_COUNTER64/U64(U64)//l/A/w/e/r/d/h 
+          */
+     case COLUMN_IPSYSTEMSTATSHCINRECEIVES:
+-        var->val_len = sizeof(U64);
++        var->val_len = sizeof(struct counter64);
+         var->type = ASN_COUNTER64;
+         rc = ipSystemStatsHCInReceives_get(rowreq_ctx,
+-                                           (U64 *) var->val.string);
++                                           (struct counter64 *) var->val.string);
+         break;
+ 
+         /*
+@@ -694,10 +694,10 @@ _ipSystemStatsTable_get_column(ipSystemStatsTable_rowreq_ctx * rowreq_ctx,
+          * ipSystemStatsHCInOctets(6)/COUNTER64/ASN_COUNTER64/U64(U64)//l/A/w/e/r/d/h 
+          */
+     case COLUMN_IPSYSTEMSTATSHCINOCTETS:
+-        var->val_len = sizeof(U64);
++        var->val_len = sizeof(struct counter64);
+         var->type = ASN_COUNTER64;
+         rc = ipSystemStatsHCInOctets_get(rowreq_ctx,
+-                                         (U64 *) var->val.string);
++                                         (struct counter64 *) var->val.string);
+         break;
+ 
+         /*
+@@ -764,10 +764,10 @@ _ipSystemStatsTable_get_column(ipSystemStatsTable_rowreq_ctx * rowreq_ctx,
+          * ipSystemStatsHCInForwDatagrams(13)/COUNTER64/ASN_COUNTER64/U64(U64)//l/A/w/e/r/d/h 
+          */
+     case COLUMN_IPSYSTEMSTATSHCINFORWDATAGRAMS:
+-        var->val_len = sizeof(U64);
++        var->val_len = sizeof(struct counter64);
+         var->type = ASN_COUNTER64;
+         rc = ipSystemStatsHCInForwDatagrams_get(rowreq_ctx,
+-                                                (U64 *) var->val.string);
++                                                (struct counter64 *) var->val.string);
+         break;
+ 
+         /*
+@@ -824,10 +824,10 @@ _ipSystemStatsTable_get_column(ipSystemStatsTable_rowreq_ctx * rowreq_ctx,
+          * ipSystemStatsHCInDelivers(19)/COUNTER64/ASN_COUNTER64/U64(U64)//l/A/w/e/r/d/h 
+          */
+     case COLUMN_IPSYSTEMSTATSHCINDELIVERS:
+-        var->val_len = sizeof(U64);
++        var->val_len = sizeof(struct counter64);
+         var->type = ASN_COUNTER64;
+         rc = ipSystemStatsHCInDelivers_get(rowreq_ctx,
+-                                           (U64 *) var->val.string);
++                                           (struct counter64 *) var->val.string);
+         break;
+ 
+         /*
+@@ -844,10 +844,10 @@ _ipSystemStatsTable_get_column(ipSystemStatsTable_rowreq_ctx * rowreq_ctx,
+          * ipSystemStatsHCOutRequests(21)/COUNTER64/ASN_COUNTER64/U64(U64)//l/A/w/e/r/d/h 
+          */
+     case COLUMN_IPSYSTEMSTATSHCOUTREQUESTS:
+-        var->val_len = sizeof(U64);
++        var->val_len = sizeof(struct counter64);
+         var->type = ASN_COUNTER64;
+         rc = ipSystemStatsHCOutRequests_get(rowreq_ctx,
+-                                            (U64 *) var->val.string);
++                                            (struct counter64 *) var->val.string);
+         break;
+ 
+         /*
+@@ -874,10 +874,10 @@ _ipSystemStatsTable_get_column(ipSystemStatsTable_rowreq_ctx * rowreq_ctx,
+          * ipSystemStatsHCOutForwDatagrams(24)/COUNTER64/ASN_COUNTER64/U64(U64)//l/A/w/e/r/d/h 
+          */
+     case COLUMN_IPSYSTEMSTATSHCOUTFORWDATAGRAMS:
+-        var->val_len = sizeof(U64);
++        var->val_len = sizeof(struct counter64);
+         var->type = ASN_COUNTER64;
+         rc = ipSystemStatsHCOutForwDatagrams_get(rowreq_ctx,
+-                                                 (U64 *) var->val.string);
++                                                 (struct counter64 *) var->val.string);
+         break;
+ 
+         /*
+@@ -944,10 +944,10 @@ _ipSystemStatsTable_get_column(ipSystemStatsTable_rowreq_ctx * rowreq_ctx,
+          * ipSystemStatsHCOutTransmits(31)/COUNTER64/ASN_COUNTER64/U64(U64)//l/A/w/e/r/d/h 
+          */
+     case COLUMN_IPSYSTEMSTATSHCOUTTRANSMITS:
+-        var->val_len = sizeof(U64);
++        var->val_len = sizeof(struct counter64);
+         var->type = ASN_COUNTER64;
+         rc = ipSystemStatsHCOutTransmits_get(rowreq_ctx,
+-                                             (U64 *) var->val.string);
++                                             (struct counter64 *) var->val.string);
+         break;
+ 
+         /*
+@@ -964,10 +964,10 @@ _ipSystemStatsTable_get_column(ipSystemStatsTable_rowreq_ctx * rowreq_ctx,
+          * ipSystemStatsHCOutOctets(33)/COUNTER64/ASN_COUNTER64/U64(U64)//l/A/w/e/r/d/h 
+          */
+     case COLUMN_IPSYSTEMSTATSHCOUTOCTETS:
+-        var->val_len = sizeof(U64);
++        var->val_len = sizeof(struct counter64);
+         var->type = ASN_COUNTER64;
+         rc = ipSystemStatsHCOutOctets_get(rowreq_ctx,
+-                                          (U64 *) var->val.string);
++                                          (struct counter64 *) var->val.string);
+         break;
+ 
+         /*
+@@ -984,10 +984,10 @@ _ipSystemStatsTable_get_column(ipSystemStatsTable_rowreq_ctx * rowreq_ctx,
+          * ipSystemStatsHCInMcastPkts(35)/COUNTER64/ASN_COUNTER64/U64(U64)//l/A/w/e/r/d/h 
+          */
+     case COLUMN_IPSYSTEMSTATSHCINMCASTPKTS:
+-        var->val_len = sizeof(U64);
++        var->val_len = sizeof(struct counter64);
+         var->type = ASN_COUNTER64;
+         rc = ipSystemStatsHCInMcastPkts_get(rowreq_ctx,
+-                                            (U64 *) var->val.string);
++                                            (struct counter64 *) var->val.string);
+         break;
+ 
+         /*
+@@ -1004,10 +1004,10 @@ _ipSystemStatsTable_get_column(ipSystemStatsTable_rowreq_ctx * rowreq_ctx,
+          * ipSystemStatsHCInMcastOctets(37)/COUNTER64/ASN_COUNTER64/U64(U64)//l/A/w/e/r/d/h 
+          */
+     case COLUMN_IPSYSTEMSTATSHCINMCASTOCTETS:
+-        var->val_len = sizeof(U64);
++        var->val_len = sizeof(struct counter64);
+         var->type = ASN_COUNTER64;
+         rc = ipSystemStatsHCInMcastOctets_get(rowreq_ctx,
+-                                              (U64 *) var->val.string);
++                                              (struct counter64 *) var->val.string);
+         break;
+ 
+         /*
+@@ -1024,10 +1024,10 @@ _ipSystemStatsTable_get_column(ipSystemStatsTable_rowreq_ctx * rowreq_ctx,
+          * ipSystemStatsHCOutMcastPkts(39)/COUNTER64/ASN_COUNTER64/U64(U64)//l/A/w/e/r/d/h 
+          */
+     case COLUMN_IPSYSTEMSTATSHCOUTMCASTPKTS:
+-        var->val_len = sizeof(U64);
++        var->val_len = sizeof(struct counter64);
+         var->type = ASN_COUNTER64;
+         rc = ipSystemStatsHCOutMcastPkts_get(rowreq_ctx,
+-                                             (U64 *) var->val.string);
++                                             (struct counter64 *) var->val.string);
+         break;
+ 
+         /*
+@@ -1044,10 +1044,10 @@ _ipSystemStatsTable_get_column(ipSystemStatsTable_rowreq_ctx * rowreq_ctx,
+          * ipSystemStatsHCOutMcastOctets(41)/COUNTER64/ASN_COUNTER64/U64(U64)//l/A/w/e/r/d/h 
+          */
+     case COLUMN_IPSYSTEMSTATSHCOUTMCASTOCTETS:
+-        var->val_len = sizeof(U64);
++        var->val_len = sizeof(struct counter64);
+         var->type = ASN_COUNTER64;
+         rc = ipSystemStatsHCOutMcastOctets_get(rowreq_ctx,
+-                                               (U64 *) var->val.string);
++                                               (struct counter64 *) var->val.string);
+         break;
+ 
+         /*
+@@ -1064,10 +1064,10 @@ _ipSystemStatsTable_get_column(ipSystemStatsTable_rowreq_ctx * rowreq_ctx,
+          * ipSystemStatsHCInBcastPkts(43)/COUNTER64/ASN_COUNTER64/U64(U64)//l/A/w/e/r/d/h 
+          */
+     case COLUMN_IPSYSTEMSTATSHCINBCASTPKTS:
+-        var->val_len = sizeof(U64);
++        var->val_len = sizeof(struct counter64);
+         var->type = ASN_COUNTER64;
+         rc = ipSystemStatsHCInBcastPkts_get(rowreq_ctx,
+-                                            (U64 *) var->val.string);
++                                            (struct counter64 *) var->val.string);
+         break;
+ 
+         /*
+@@ -1084,10 +1084,10 @@ _ipSystemStatsTable_get_column(ipSystemStatsTable_rowreq_ctx * rowreq_ctx,
+          * ipSystemStatsHCOutBcastPkts(45)/COUNTER64/ASN_COUNTER64/U64(U64)//l/A/w/e/r/d/h 
+          */
+     case COLUMN_IPSYSTEMSTATSHCOUTBCASTPKTS:
+-        var->val_len = sizeof(U64);
++        var->val_len = sizeof(struct counter64);
+         var->type = ASN_COUNTER64;
+         rc = ipSystemStatsHCOutBcastPkts_get(rowreq_ctx,
+-                                             (U64 *) var->val.string);
++                                             (struct counter64 *) var->val.string);
+         break;
+ 
+         /*
+diff --git a/include/net-snmp/data_access/ipstats.h b/include/net-snmp/data_access/ipstats.h
+index f782459..f0df46b 100644
+--- a/include/net-snmp/data_access/ipstats.h
++++ b/include/net-snmp/data_access/ipstats.h
+@@ -58,45 +58,45 @@ typedef struct netsnmp_ipstats_s {
+     * other columns, when underlying OS does not provide them.
+     * Always fill at least 32 bits, the table is periodically polled -> 32 bit
+     * overflow shall be detected and 64 bit value should be computed automatically. */
+-   U64             HCInReceives;
+-   U64             HCInOctets;
++   struct counter64 HCInReceives;
++   struct counter64 HCInOctets;
+    u_long          InHdrErrors;
+-   U64             HCInNoRoutes; 
++   struct counter64 HCInNoRoutes; 
+    u_long          InAddrErrors;
+    u_long          InUnknownProtos;
+    u_long          InTruncatedPkts;
+    
+    /* optional, can be computed from HCInNoRoutes and HCOutForwDatagrams */
+-   U64             HCInForwDatagrams; 
++   struct counter64 HCInForwDatagrams; 
+    
+    u_long          ReasmReqds;
+    u_long          ReasmOKs;
+    u_long          ReasmFails;
+    u_long          InDiscards;
+-   U64             HCInDelivers;
+-   U64             HCOutRequests;
+-   U64             HCOutNoRoutes;
+-   U64             HCOutForwDatagrams;
+-   U64             HCOutDiscards;
++   struct counter64 HCInDelivers;
++   struct counter64 HCOutRequests;
++   struct counter64 HCOutNoRoutes;
++   struct counter64 HCOutForwDatagrams;
++   struct counter64 HCOutDiscards;
+    
+    /* optional, can be computed from HCOutFragOKs + HCOutFragFails*/
+-   U64             HCOutFragReqds;
+-   U64             HCOutFragOKs;
+-   U64             HCOutFragFails;
+-   U64             HCOutFragCreates;
++   struct counter64 HCOutFragReqds;
++   struct counter64 HCOutFragOKs;
++   struct counter64 HCOutFragFails;
++   struct counter64 HCOutFragCreates;
+    
+    /* optional, can be computed from 
+     * HCOutRequests +HCOutForwDatagrams + HCOutFragCreates
+     * - HCOutFragReqds - HCOutNoRoutes  - HCOutDiscards */
+-   U64             HCOutTransmits;
++   struct counter64 HCOutTransmits;
+    
+-   U64             HCOutOctets;
+-   U64             HCInMcastPkts;
+-   U64             HCInMcastOctets;
+-   U64             HCOutMcastPkts;
+-   U64             HCOutMcastOctets;
+-   U64             HCInBcastPkts;
+-   U64             HCOutBcastPkts;
++   struct counter64 HCOutOctets;
++   struct counter64 HCInMcastPkts;
++   struct counter64 HCInMcastOctets;
++   struct counter64 HCOutMcastPkts;
++   struct counter64 HCOutMcastOctets;
++   struct counter64 HCInBcastPkts;
++   struct counter64 HCOutBcastPkts;
+ 
+    /* Array of available columns.*/
+    int             columnAvail[IPSYSTEMSTATSTABLE_LAST+1];
+diff --git a/include/net-snmp/library/int64.h b/include/net-snmp/library/int64.h
+index 9c7c894..3a85213 100644
+--- a/include/net-snmp/library/int64.h
++++ b/include/net-snmp/library/int64.h
+@@ -5,31 +5,29 @@
+ extern          "C" {
+ #endif
+ 
+-    typedef struct counter64 U64;
+-
+ #define I64CHARSZ 21
+ 
+-    void            divBy10(U64, U64 *, unsigned int *);
+-    void            multBy10(U64, U64 *);
+-    void            incrByU16(U64 *, unsigned int);
+-    void            incrByU32(U64 *, unsigned int);
++    void            divBy10(struct counter64, struct counter64 *, unsigned int *);
++    void            multBy10(struct counter64, struct counter64 *);
++    void            incrByU16(struct counter64 *, unsigned int);
++    void            incrByU32(struct counter64 *, unsigned int);
+     NETSNMP_IMPORT
+-    void            zeroU64(U64 *);
+-    int             isZeroU64(const U64 *);
++    void            zeroU64(struct counter64 *);
++    int             isZeroU64(const struct counter64 *);
+     NETSNMP_IMPORT
+-    void            printU64(char *, const U64 *);
++    void            printU64(char *, const struct counter64 *);
+     NETSNMP_IMPORT
+-    void            printI64(char *, const U64 *);
+-    int             read64(U64 *, const char *);
++    void            printI64(char *, const struct counter64 *);
++    int             read64(struct counter64 *, const char *);
+     NETSNMP_IMPORT
+-    void            u64Subtract(const U64 * pu64one, const U64 * pu64two,
+-                                U64 * pu64out);
+-    void            u64Incr(U64 * pu64out, const U64 * pu64one);
+-    void            u64UpdateCounter(U64 * pu64out, const U64 * pu64one,
+-                                     const U64 * pu64two);
+-    void            u64Copy(U64 * pu64one, const U64 * pu64two);
++    void            u64Subtract(const struct counter64 *pu64one, const struct counter64 *pu64two,
++                                struct counter64 *pu64out);
++    void            u64Incr(struct counter64 *pu64out, const struct counter64 *pu64one);
++    void            u64UpdateCounter(struct counter64 *pu64out, const struct counter64 *pu64one,
++                                     const struct counter64 *pu64two);
++    void            u64Copy(struct counter64 *pu64one, const struct counter64 *pu64two);
+ 
+-    int             netsnmp_c64_check_for_32bit_wrap(U64 *old_val, U64 *new_val,
++    int             netsnmp_c64_check_for_32bit_wrap(struct counter64 *old_val, struct counter64 *new_val,
+                                                      int adjust);
+     NETSNMP_IMPORT
+     int             netsnmp_c64_check32_and_update(struct counter64 *prev_val,
+diff --git a/snmplib/int64.c b/snmplib/int64.c
+index 51f1f32..951f813 100644
+--- a/snmplib/int64.c
++++ b/snmplib/int64.c
+@@ -33,7 +33,7 @@
+  * @param[out] puR   Remainder.
+  */
+ void
+-divBy10(U64 u64, U64 * pu64Q, unsigned int *puR)
++divBy10(struct counter64 u64, struct counter64 *pu64Q, unsigned int *puR)
+ {
+     unsigned long   ulT;
+     unsigned long   ulQ;
+@@ -83,7 +83,7 @@ divBy10(U64 u64, U64 * pu64Q, unsigned int *puR)
+  * @param[out] pu64P Product.
+  */
+ void
+-multBy10(U64 u64, U64 * pu64P)
++multBy10(struct counter64 u64, struct counter64 *pu64P)
+ {
+     unsigned long   ulT;
+     unsigned long   ulP;
+@@ -130,7 +130,7 @@ multBy10(U64 u64, U64 * pu64P)
+  *
+  */
+ void
+-incrByU16(U64 * pu64, unsigned int u16)
++incrByU16(struct counter64 *pu64, unsigned int u16)
+ {
+     incrByU32(pu64, u16);
+ }
+@@ -143,7 +143,7 @@ incrByU16(U64 * pu64, unsigned int u16)
+  *
+  */
+ void
+-incrByU32(U64 * pu64, unsigned int u32)
++incrByU32(struct counter64 *pu64, unsigned int u32)
+ {
+     uint32_t tmp;
+ 
+@@ -161,7 +161,7 @@ incrByU32(U64 * pu64, unsigned int u32)
+  * @param[out] pu64out pu64one - pu64two.
+  */
+ void
+-u64Subtract(const U64 * pu64one, const U64 * pu64two, U64 * pu64out)
++u64Subtract(const struct counter64 *pu64one, const struct counter64 *pu64two, struct counter64 *pu64out)
+ {
+     int carry;
+ 
+@@ -177,7 +177,7 @@ u64Subtract(const U64 * pu64one, const U64 * pu64two, U64 * pu64out)
+  * @param[in,out] pu64out pu64out += pu64one.
+  */
+ void
+-u64Incr(U64 * pu64out, const U64 * pu64one)
++u64Incr(struct counter64 *pu64out, const struct counter64 *pu64one)
+ {
+     pu64out->high = (uint32_t)(pu64out->high + pu64one->high);
+     incrByU32(pu64out, pu64one->low);
+@@ -191,9 +191,9 @@ u64Incr(U64 * pu64out, const U64 * pu64one)
+  * @param[out] pu64out pu64out += (pu64one - pu64two)
+  */
+ void
+-u64UpdateCounter(U64 * pu64out, const U64 * pu64one, const U64 * pu64two)
++u64UpdateCounter(struct counter64 *pu64out, const struct counter64 *pu64one, const struct counter64 *pu64two)
+ {
+-    U64 tmp;
++    struct counter64 tmp;
+ 
+     u64Subtract(pu64one, pu64two, &tmp);
+     u64Incr(pu64out, &tmp);
+@@ -208,7 +208,7 @@ netsnmp_feature_child_of(u64copy, netsnmp_unused)
+  * @param[out] pu64one Where to store the copy - *pu64one = *pu64two.
+  */
+ void
+-u64Copy(U64 * pu64one, const U64 * pu64two)
++u64Copy(struct counter64 *pu64one, const struct counter64 *pu64two)
+ {
+     *pu64one = *pu64two;
+ }
+@@ -220,7 +220,7 @@ u64Copy(U64 * pu64one, const U64 * pu64two)
+  * @param[in] pu64 Number to be zeroed.
+  */
+ void
+-zeroU64(U64 * pu64)
++zeroU64(struct counter64 *pu64)
+ {
+     pu64->low = 0;
+     pu64->high = 0;
+@@ -232,7 +232,7 @@ zeroU64(U64 * pu64)
+  * @param[in] pu64 Number to be checked.
+  */
+ int
+-isZeroU64(const U64 * pu64)
++isZeroU64(const struct counter64 *pu64)
+ {
+     return pu64->low == 0 && pu64->high == 0;
+ }
+@@ -390,10 +390,10 @@ netsnmp_c64_check32_and_update(struct counter64 *prev_val, struct counter64 *new
+ /** Convert an unsigned 64-bit number to ASCII. */
+ void
+ printU64(char *buf, /* char [I64CHARSZ+1]; */
+-         const U64 * pu64)
++         const struct counter64 *pu64)
+ {
+-    U64             u64a;
+-    U64             u64b;
++    struct counter64 u64a;
++    struct counter64 u64b;
+ 
+     char            aRes[I64CHARSZ + 1];
+     unsigned int    u;
+@@ -414,9 +414,9 @@ printU64(char *buf, /* char [I64CHARSZ+1]; */
+ /** Convert a signed 64-bit number to ASCII. */
+ void
+ printI64(char *buf, /* char [I64CHARSZ+1]; */
+-         const U64 * pu64)
++         const struct counter64 *pu64)
+ {
+-    U64             u64a;
++    struct counter64 u64a;
+ 
+     if (pu64->high & 0x80000000) {
+         u64a.high = (uint32_t) ~pu64->high;
+@@ -429,11 +429,11 @@ printI64(char *buf, /* char [I64CHARSZ+1]; */
+     }
+ }
+ 
+-/** Convert a signed 64-bit integer from ASCII to U64. */
++/** Convert a signed 64-bit integer from ASCII to struct counter64. */
+ int
+-read64(U64 * i64, const char *str)
++read64(struct counter64 *i64, const char *str)
+ {
+-    U64             i64p;
++    struct counter64 i64p;
+     unsigned int    u;
+     int             sign = 0;
+     int             ok = 0;
+diff --git a/snmplib/read_config.c b/snmplib/read_config.c
+index e159c27..ab5b6a3 100644
+--- a/snmplib/read_config.c
++++ b/snmplib/read_config.c
+@@ -2279,10 +2279,10 @@ read_config_read_memory(int type, char *readfrom,
+         return readfrom;
+ 
+     case ASN_COUNTER64:
+-        if (*len < sizeof(U64))
++        if (*len < sizeof(struct counter64))
+             return NULL;
+-        *len = sizeof(U64);
+-        read64((U64 *) dataptr, readfrom);
++        *len = sizeof(struct counter64);
++        read64((struct counter64 *) dataptr, readfrom);
+         readfrom = skip_token(readfrom);
+         return readfrom;
+     }
+diff --git a/testing/fulltests/unit-tests/T015int64_clib.c b/testing/fulltests/unit-tests/T015int64_clib.c
+index 5f5f4b6..66f66b7 100644
+--- a/testing/fulltests/unit-tests/T015int64_clib.c
++++ b/testing/fulltests/unit-tests/T015int64_clib.c
+@@ -1,4 +1,4 @@
+-/* HEADER Testing 64-bit integer operations (U64). */
++/* HEADER Testing 64-bit integer operations (struct counter64). */
+ 
+ int i, j;
+ char buf[22];
+@@ -15,7 +15,7 @@ static const int64_t intval[] = {
+ };
+ 
+ for (i = 0; i < sizeof(intval)/sizeof(intval[0]); ++i) {
+-    U64 a, b;
++    struct counter64 a, b;
+     a.low = (uint32_t)intval[i];
+     a.high = (uint32_t)(intval[i] >> 32);
+     printI64(buf, &a);
+@@ -27,7 +27,7 @@ for (i = 0; i < sizeof(intval)/sizeof(intval[0]); ++i) {
+ 
+ for (i = 0; i < sizeof(intval)/sizeof(intval[0]); ++i) {
+     for (j = i; j < sizeof(intval)/sizeof(intval[0]); ++j) {
+-        U64 a, b;
++        struct counter64 a, b;
+         uint64_t d;
+         a.low = (uint32_t)intval[i];
+         a.high = (uint32_t)(intval[i] >> 32);
+@@ -43,7 +43,7 @@ for (i = 0; i < sizeof(intval)/sizeof(intval[0]); ++i) {
+         
+ for (i = 0; i < sizeof(intval)/sizeof(intval[0]); ++i) {
+     for (j = i; j < sizeof(intval)/sizeof(intval[0]); ++j) {
+-        U64 a, b, c;
++        struct counter64 a, b, c;
+         uint64_t d;
+         a.low = (uint32_t)intval[i];
+         a.high = (uint32_t)(intval[i] >> 32);
+@@ -58,7 +58,7 @@ for (i = 0; i < sizeof(intval)/sizeof(intval[0]); ++i) {
+ }
+         
+ {
+-    U64 old_val, new_val;
++    struct counter64 old_val, new_val;
+     old_val.low = 7;
+     old_val.high = 0;
+     new_val = old_val;
+-- 
+2.8.2
+
+diff -puNr net-snmp-5.7.3.orig/perl/agent/default_store/Makefile.PL net-snmp-5.7.3/perl/agent/default_store/Makefile.PL
+--- net-snmp-5.7.3.orig/perl/agent/default_store/Makefile.PL	2014-12-08 21:23:22.000000000 +0100
++++ net-snmp-5.7.3/perl/agent/default_store/Makefile.PL	2016-05-11 00:02:32.571453072 +0200
+@@ -1,3 +1,4 @@
++package agent_default_store;
+ use ExtUtils::MakeMaker;
+ require 5;
+ use Config;
+diff -puNr net-snmp-5.7.3.orig/perl/agent/Makefile.PL net-snmp-5.7.3/perl/agent/Makefile.PL
+--- net-snmp-5.7.3.orig/perl/agent/Makefile.PL	2014-12-08 21:23:22.000000000 +0100
++++ net-snmp-5.7.3/perl/agent/Makefile.PL	2016-05-11 00:02:32.571453072 +0200
+@@ -1,3 +1,4 @@
++package agent;
+ use ExtUtils::MakeMaker;
+ require 5;
+ use Config;
+diff -puNr net-snmp-5.7.3.orig/perl/agent/Support/Makefile.PL net-snmp-5.7.3/perl/agent/Support/Makefile.PL
+--- net-snmp-5.7.3.orig/perl/agent/Support/Makefile.PL	2014-12-08 21:23:22.000000000 +0100
++++ net-snmp-5.7.3/perl/agent/Support/Makefile.PL	2016-05-11 00:02:32.571453072 +0200
+@@ -1,3 +1,4 @@
++package agent_Support;
+ use ExtUtils::MakeMaker;
+ require 5;
+ use Config;
+diff -puNr net-snmp-5.7.3.orig/perl/AnyData_SNMP/Makefile.PL net-snmp-5.7.3/perl/AnyData_SNMP/Makefile.PL
+--- net-snmp-5.7.3.orig/perl/AnyData_SNMP/Makefile.PL	2014-12-08 21:23:22.000000000 +0100
++++ net-snmp-5.7.3/perl/AnyData_SNMP/Makefile.PL	2016-05-11 00:02:32.570453079 +0200
+@@ -1,3 +1,4 @@
++package AnyData_SNMP;
+ use ExtUtils::MakeMaker;
+ # See lib/ExtUtils/MakeMaker.pm for details of how to influence
+ # the contents of the Makefile that is written.
+diff -puNr net-snmp-5.7.3.orig/perl/ASN/Makefile.PL net-snmp-5.7.3/perl/ASN/Makefile.PL
+--- net-snmp-5.7.3.orig/perl/ASN/Makefile.PL	2014-12-08 21:23:22.000000000 +0100
++++ net-snmp-5.7.3/perl/ASN/Makefile.PL	2016-05-11 00:02:32.551453196 +0200
+@@ -1,3 +1,4 @@
++package ASN;
+ use ExtUtils::MakeMaker;
+ require 5;
+ use Config;
+diff -puNr net-snmp-5.7.3.orig/perl/default_store/Makefile.PL net-snmp-5.7.3/perl/default_store/Makefile.PL
+--- net-snmp-5.7.3.orig/perl/default_store/Makefile.PL	2014-12-08 21:23:22.000000000 +0100
++++ net-snmp-5.7.3/perl/default_store/Makefile.PL	2016-05-11 00:02:32.572453066 +0200
+@@ -1,3 +1,4 @@
++package default_store;
+ use ExtUtils::MakeMaker;
+ require 5;
+ use Config;
+diff -puNr net-snmp-5.7.3.orig/perl/manager/Makefile.PL net-snmp-5.7.3/perl/manager/Makefile.PL
+--- net-snmp-5.7.3.orig/perl/manager/Makefile.PL	2014-12-08 21:23:22.000000000 +0100
++++ net-snmp-5.7.3/perl/manager/Makefile.PL	2016-05-11 00:02:32.572453066 +0200
+@@ -1,3 +1,4 @@
++package manager;
+ use ExtUtils::MakeMaker;
+ # See lib/ExtUtils/MakeMaker.pm for details of how to influence
+ # the contents of the Makefile that is written.
+diff -puNr net-snmp-5.7.3.orig/perl/OID/Makefile.PL net-snmp-5.7.3/perl/OID/Makefile.PL
+--- net-snmp-5.7.3.orig/perl/OID/Makefile.PL	2014-12-08 21:23:22.000000000 +0100
++++ net-snmp-5.7.3/perl/OID/Makefile.PL	2016-05-11 00:02:32.570453079 +0200
+@@ -1,3 +1,4 @@
++package OID;
+ # See lib/ExtUtils/MakeMaker.pm for details of how to influence
+ # the contents of the Makefile that is written.
+ 
+diff -puNr net-snmp-5.7.3.orig/perl/SNMP/Makefile.PL net-snmp-5.7.3/perl/SNMP/Makefile.PL
+--- net-snmp-5.7.3.orig/perl/SNMP/Makefile.PL	2014-12-08 21:23:22.000000000 +0100
++++ net-snmp-5.7.3/perl/SNMP/Makefile.PL	2016-05-11 00:02:32.570453079 +0200
+@@ -1,3 +1,4 @@
++package SNMP;
+ use ExtUtils::MakeMaker;
+ require 5;
+ use Config;
+diff -puNr net-snmp-5.7.3.orig/perl/TrapReceiver/Makefile.PL net-snmp-5.7.3/perl/TrapReceiver/Makefile.PL
+--- net-snmp-5.7.3.orig/perl/TrapReceiver/Makefile.PL	2014-12-08 21:23:22.000000000 +0100
++++ net-snmp-5.7.3/perl/TrapReceiver/Makefile.PL	2016-05-11 00:02:32.571453072 +0200
+@@ -1,3 +1,4 @@
++package TrapReceiver;
+ use ExtUtils::MakeMaker;
+ require 5;
+ use Config;
-- 
cgit v0.12

