From 5557eec370bcad7f974d0c00124a7143445f2c13 Mon Sep 17 00:00:00 2001
From: "A. Wilcox" <AWilcox@Wilcox-Tech.com>
Date: Sun, 9 Sep 2018 18:17:16 +0000
Subject: [PATCH] user/net-snmp: bump to 5.8

---
 user/net-snmp/APKBUILD                 |   12 +-
 user/net-snmp/CVE-2015-5621.patch      |  132 --
 user/net-snmp/fix-Makefile-PL.patch    |   22 -
 user/net-snmp/remove-U64-typedef.patch | 2519 ------------------------
 4 files changed, 3 insertions(+), 2682 deletions(-)
 delete mode 100644 user/net-snmp/CVE-2015-5621.patch
 delete mode 100644 user/net-snmp/fix-Makefile-PL.patch
 delete mode 100644 user/net-snmp/remove-U64-typedef.patch

diff --git a/user/net-snmp/APKBUILD b/user/net-snmp/APKBUILD
index 333cb8a693..0984823299 100644
--- a/user/net-snmp/APKBUILD
+++ b/user/net-snmp/APKBUILD
@@ -1,8 +1,8 @@
 # Contributor: Carlo Landmeter <clandmeter@gmail.com>
 # Maintainer: 
 pkgname=net-snmp
-pkgver=5.7.3
-pkgrel=11
+pkgver=5.8
+pkgrel=0
 pkgdesc="Simple Network Management Protocol"
 url="http://www.net-snmp.org/"
 arch="all"
@@ -18,9 +18,6 @@ subpackages="$pkgname-doc $pkgname-dev $pkgname-libs $pkgname-agent-libs:alibs
 source="https://downloads.sourceforge.net/$pkgname/$pkgname-$pkgver.tar.gz
 	netsnmp-swinst-crash.patch
 	fix-includes.patch
-	CVE-2015-5621.patch
-	remove-U64-typedef.patch
-	fix-Makefile-PL.patch
 
 	snmpd.initd
 	snmpd.confd
@@ -140,12 +137,9 @@ tools() {
 	mv "$pkgdir"/usr/bin "$subpkgdir"/usr
 }
 
-sha512sums="0758bba5844cfd6c80959ac16b83906a2f830ba49fd0ab1bf9e191dc6a79d312a2e4760bd53b3e1a1c82759481f0064d088d5a3cf475d84b25679a6bd0f049bb  net-snmp-5.7.3.tar.gz
+sha512sums="27895a583b23f3e14c48562bc32f3ba83513d81aa848e878be9a3650f0458d45950635c937ef627135f80b757b663e71fab9a3bde4fd91889153998ae3468fe7  net-snmp-5.8.tar.gz
 4ad92f50b14d5e27ba86256cc532a2dd055502f4d5fbb1700434f9f01f881fd09bb1eadb94e727554e1470f036707558314c64a66d0376b54e71ab31d5e4baa3  netsnmp-swinst-crash.patch
 87a552bd2e41684bba6e87fbcf6454a85ee912d7a339411fda24cebddf7661f0856729e076a917920a542cf84b687ffd90a091daa15f2c48f0ff64f3a53c0ddb  fix-includes.patch
-2b2a7be54a570e3c1bb701f8ccfb98ea8e50a19fda021f43a521d4e968ded1bc5e794fc4348dff7fcdf57da34ff6b555398851bbccfcf92bb75ad6f365a80dba  CVE-2015-5621.patch
-25e45c493b8da74cb12a8094d12a4f0ee1f59b60df648a958ebc7b0a33b4f350d9c5bf1e6f6ff372d78e066c369d99f2ae549b5d5d1daa969e3ef301fc820c29  remove-U64-typedef.patch
-d17058976fd635f153ff2e5d798807dde4d89071c252ea1223d93cc169270bb39cdd2c84ee4d01c05c9a0b6df80b92ceae3e1078e41f94e6077d7275661898e9  fix-Makefile-PL.patch
 896ef65a6f420073746470cdbd0de8f356c5b936d35e131754905b3d4323c24dcd3a09e0cc8bd90b12e3402f01e478f927f0e4163cb85cb0cc03db3c2e0491f4  snmpd.initd
 fb101aa758d741ed3ea88b11f1cd49cfd04bd03ce62435f3acb17724748131c57f00b71fd45cb7e7871d65a1aab576652cd6e158b6406aa6d0998582b8235ef5  snmpd.confd
 073fd2b83eedd6eda1f7345350268ce7946ef6d67a8f26f7c232e46feb75babf68272ae12071a2f9ea76ede71393b3ae4672d3cd47cfd14ab77e3a6482f2e124  snmptrapd.confd"
diff --git a/user/net-snmp/CVE-2015-5621.patch b/user/net-snmp/CVE-2015-5621.patch
deleted file mode 100644
index 6d30f99ee7..0000000000
--- a/user/net-snmp/CVE-2015-5621.patch
+++ /dev/null
@@ -1,132 +0,0 @@
-From 3714c5be3212d2af61545439eeb432e5d84a8d39 Mon Sep 17 00:00:00 2001
-From: Robert Story <rstory@localhost>
-Date: Sat, 11 Apr 2015 18:49:02 -0400
-Subject: [PATCH] CHANGES: BUG: #2615: Don't return incompletely parsed
- varbinds
-
----
- snmplib/snmp_api.c | 55 +++++++++++++++++++++++++++---------------------------
- 1 file changed, 28 insertions(+), 27 deletions(-)
-
-diff --git a/snmplib/snmp_api.c b/snmplib/snmp_api.c
-index 191debf..adae4e4 100644
---- a/snmplib/snmp_api.c
-+++ b/snmplib/snmp_api.c
-@@ -4350,10 +4350,9 @@ snmp_pdu_parse(netsnmp_pdu *pdu, u_char * data, size_t * length)
-     u_char          type;
-     u_char          msg_type;
-     u_char         *var_val;
--    int             badtype = 0;
-     size_t          len;
-     size_t          four;
--    netsnmp_variable_list *vp = NULL;
-+    netsnmp_variable_list *vp = NULL, *vplast = NULL;
-     oid             objid[MAX_OID_LEN];
-     u_char         *p;
- 
-@@ -4493,38 +4492,24 @@ snmp_pdu_parse(netsnmp_pdu *pdu, u_char * data, size_t * length)
-                               (ASN_SEQUENCE | ASN_CONSTRUCTOR),
-                               "varbinds");
-     if (data == NULL)
--        return -1;
-+        goto fail;
- 
-     /*
-      * get each varBind sequence 
-      */
-     while ((int) *length > 0) {
--        netsnmp_variable_list *vptemp;
--        vptemp = (netsnmp_variable_list *) malloc(sizeof(*vptemp));
--        if (NULL == vptemp) {
--            return -1;
--        }
--        if (NULL == vp) {
--            pdu->variables = vptemp;
--        } else {
--            vp->next_variable = vptemp;
--        }
--        vp = vptemp;
-+        vp = SNMP_MALLOC_TYPEDEF(netsnmp_variable_list);
-+        if (NULL == vp)
-+            goto fail;
- 
--        vp->next_variable = NULL;
--        vp->val.string = NULL;
-         vp->name_length = MAX_OID_LEN;
--        vp->name = NULL;
--        vp->index = 0;
--        vp->data = NULL;
--        vp->dataFreeHook = NULL;
-         DEBUGDUMPSECTION("recv", "VarBind");
-         data = snmp_parse_var_op(data, objid, &vp->name_length, &vp->type,
-                                  &vp->val_len, &var_val, length);
-         if (data == NULL)
--            return -1;
-+            goto fail;
-         if (snmp_set_var_objid(vp, objid, vp->name_length))
--            return -1;
-+            goto fail;
- 
-         len = MAX_PACKET_LENGTH;
-         DEBUGDUMPHEADER("recv", "Value");
-@@ -4604,7 +4589,7 @@ snmp_pdu_parse(netsnmp_pdu *pdu, u_char * data, size_t * length)
-                 vp->val.string = (u_char *) malloc(vp->val_len);
-             }
-             if (vp->val.string == NULL) {
--                return -1;
-+                goto fail;
-             }
-             p = asn_parse_string(var_val, &len, &vp->type, vp->val.string,
-                              &vp->val_len);
-@@ -4619,7 +4604,7 @@ snmp_pdu_parse(netsnmp_pdu *pdu, u_char * data, size_t * length)
-             vp->val_len *= sizeof(oid);
-             vp->val.objid = (oid *) malloc(vp->val_len);
-             if (vp->val.objid == NULL) {
--                return -1;
-+                goto fail;
-             }
-             memmove(vp->val.objid, objid, vp->val_len);
-             break;
-@@ -4631,7 +4616,7 @@ snmp_pdu_parse(netsnmp_pdu *pdu, u_char * data, size_t * length)
-         case ASN_BIT_STR:
-             vp->val.bitstring = (u_char *) malloc(vp->val_len);
-             if (vp->val.bitstring == NULL) {
--                return -1;
-+                goto fail;
-             }
-             p = asn_parse_bitstring(var_val, &len, &vp->type,
-                                 vp->val.bitstring, &vp->val_len);
-@@ -4640,12 +4625,28 @@ snmp_pdu_parse(netsnmp_pdu *pdu, u_char * data, size_t * length)
-             break;
-         default:
-             snmp_log(LOG_ERR, "bad type returned (%x)\n", vp->type);
--            badtype = -1;
-+            goto fail;
-             break;
-         }
-         DEBUGINDENTADD(-4);
-+
-+        if (NULL == vplast) {
-+            pdu->variables = vp;
-+        } else {
-+            vplast->next_variable = vp;
-+        }
-+        vplast = vp;
-+        vp = NULL;
-     }
--    return badtype;
-+    return 0;
-+
-+  fail:
-+    DEBUGMSGTL(("recv", "error while parsing VarBindList\n"));
-+    /** if we were parsing a var, remove it from the pdu and free it */
-+    if (vp)
-+        snmp_free_var(vp);
-+
-+    return -1;
- }
- 
- /*
--- 
-2.5.0
-
diff --git a/user/net-snmp/fix-Makefile-PL.patch b/user/net-snmp/fix-Makefile-PL.patch
deleted file mode 100644
index 735f01447b..0000000000
--- a/user/net-snmp/fix-Makefile-PL.patch
+++ /dev/null
@@ -1,22 +0,0 @@
-diff -up net-snmp-5.7.3/perl/ASN/Makefile.PL.orig net-snmp-5.7.3/perl/ASN/Makefile.PL
---- net-snmp-5.7.3/perl/ASN/Makefile.PL.orig	2016-05-06 10:35:30.005905040 +0200
-+++ net-snmp-5.7.3/perl/ASN/Makefile.PL	2016-05-06 10:35:57.518776400 +0200
-@@ -3,6 +3,7 @@ require 5;
- use Config;
- use Getopt::Long;
- my $lib_version;
-+my %MakeParams = ();
- 
- # See lib/ExtUtils/MakeMaker.pm for details of how to influence
- # the contents of the Makefile that is written.
-diff -up net-snmp-5.7.3/perl/Makefile.PL.orig net-snmp-5.7.3/perl/Makefile.PL
---- net-snmp-5.7.3/perl/Makefile.PL.orig	2016-05-06 10:34:38.975143641 +0200
-+++ net-snmp-5.7.3/perl/Makefile.PL	2016-05-06 10:35:13.326983024 +0200
-@@ -2,6 +2,7 @@ use ExtUtils::MakeMaker;
- use Config;
- use Getopt::Long;
- require 5;
-+my %MakeParams = ();
- 
- %MakeParams = InitMakeParams();
- 
diff --git a/user/net-snmp/remove-U64-typedef.patch b/user/net-snmp/remove-U64-typedef.patch
deleted file mode 100644
index 51d7a369c8..0000000000
--- a/user/net-snmp/remove-U64-typedef.patch
+++ /dev/null
@@ -1,2519 +0,0 @@
-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.1
-
-- 
GitLab