commit: 947ed74a707e1eb8916856507bf18461537d8aa3 Author: Andreas K. Hüttel <dilfridge <AT> gentoo <DOT> org> AuthorDate: Sun May 15 11:23:46 2016 +0000 Commit: Andreas Hüttel <dilfridge <AT> gentoo <DOT> org> CommitDate: Sun May 15 11:24:25 2016 +0000 URL: https://gitweb.gentoo.org/dev/dilfridge.git/commit/?id=947ed74a
net-analyzer/net-snmp: Add version fixed for Perl 5.24 net-analyzer/net-snmp/Manifest | 2 + .../files/net-snmp-5.1.2-snmpconf-selinux.patch | 12 + .../net-snmp/files/net-snmp-5.7.3-perl524.patch | 2519 ++++++++++++++++++++ net-analyzer/net-snmp/files/snmpd.conf | 20 + net-analyzer/net-snmp/files/snmpd.init.2 | 35 + net-analyzer/net-snmp/files/snmpd.service | 9 + net-analyzer/net-snmp/files/snmptrapd.conf | 16 + net-analyzer/net-snmp/files/snmptrapd.init.2 | 14 + net-analyzer/net-snmp/files/snmptrapd.service | 9 + net-analyzer/net-snmp/metadata.xml | 20 + net-analyzer/net-snmp/net-snmp-5.7.3-r5.ebuild | 188 ++ 11 files changed, 2844 insertions(+) diff --git a/net-analyzer/net-snmp/Manifest b/net-analyzer/net-snmp/Manifest new file mode 100644 index 0000000..f261269 --- /dev/null +++ b/net-analyzer/net-snmp/Manifest @@ -0,0 +1,2 @@ +DIST net-snmp-5.7.3-patches-2.tar.xz 3312 SHA256 a72732f9e40988ef1d79b6750c7ef7f56accbf5a32543dd15c000e58b1e9054c SHA512 22ca6cc4dd1fd58a8cff53881d248155dbfdab765e9a3664320c8c4a5cfa35e741adfb0304bb38be7719ba1c7418f9b0f9178719951b82d70257c3c944c450ad WHIRLPOOL 509da418db4c380f431af1d2d342bea4bd18caad99f2fb8120466ffcbbe8d2e09702a28b43b59d2a633ae3566d599a82a221eae4e9ac601a545445c614d3459f +DIST net-snmp-5.7.3.tar.gz 6382428 SHA256 12ef89613c7707dc96d13335f153c1921efc9d61d3708ef09f3fc4a7014fb4f0 SHA512 0758bba5844cfd6c80959ac16b83906a2f830ba49fd0ab1bf9e191dc6a79d312a2e4760bd53b3e1a1c82759481f0064d088d5a3cf475d84b25679a6bd0f049bb WHIRLPOOL ee741c1278206dd8dae00e085629e7c13ce518ad1911af804872ccaba576ab4d234f7801dbb447ae1ddba8196d43d1dbcd46c4bd8f69aa9dc9eb1662ce5e718a diff --git a/net-analyzer/net-snmp/files/net-snmp-5.1.2-snmpconf-selinux.patch b/net-analyzer/net-snmp/files/net-snmp-5.1.2-snmpconf-selinux.patch new file mode 100644 index 0000000..d2e3721 --- /dev/null +++ b/net-analyzer/net-snmp/files/net-snmp-5.1.2-snmpconf-selinux.patch @@ -0,0 +1,12 @@ +https://bugzilla.redhat.com/show_bug.cgi?id=248329 + +--- a/local/snmpconf.in ++++ b/local/snmpconf.in +@@ -680,6 +680,7 @@ + } + } + close(O); ++ system("restorecon $outputf"); + } + } + diff --git a/net-analyzer/net-snmp/files/net-snmp-5.7.3-perl524.patch b/net-analyzer/net-snmp/files/net-snmp-5.7.3-perl524.patch new file mode 100644 index 0000000..40e5402 --- /dev/null +++ b/net-analyzer/net-snmp/files/net-snmp-5.7.3-perl524.patch @@ -0,0 +1,2519 @@ +From 477b4307ef12ddce3b6a9205e0bdddbfb2e0e9b6 Mon Sep 17 00:00:00 2001 +From: Bart Van Assche <[email protected]> +Date: Sat, 20 Feb 2016 18:58:18 -0800 +Subject: [PATCH] Remove U64 typedef + +The U64 typedef conflicts with a typedef in a Perl header file. Hence +remove the U64 typedef from the Net-SNMP header files. This patch does +not modify the Net-SNMP ABI. +--- + agent/mibgroup/if-mib/ifXTable/ifXTable.c | 16 +- + agent/mibgroup/if-mib/ifXTable/ifXTable.h | 48 +- + .../mibgroup/if-mib/ifXTable/ifXTable_interface.c | 32 +- + .../ip-mib/data_access/systemstats_common.c | 2 +- + .../ipIfStatsTable/ipIfStatsTable_data_get.c | 28 +- + .../ipIfStatsTable/ipIfStatsTable_data_get.h | 28 +- + .../ipIfStatsTable/ipIfStatsTable_interface.c | 56 +- + .../ip-mib/ipSystemStatsTable/ipSystemStatsTable.c | 28 +- + .../ip-mib/ipSystemStatsTable/ipSystemStatsTable.h | 921 ++------------------- + .../ipSystemStatsTable_interface.c | 56 +- + include/net-snmp/data_access/ipstats.h | 42 +- + include/net-snmp/library/int64.h | 34 +- + snmplib/int64.c | 38 +- + snmplib/read_config.c | 6 +- + testing/fulltests/unit-tests/T015int64_clib.c | 10 +- + 15 files changed, 274 insertions(+), 1071 deletions(-) + +diff --git a/agent/mibgroup/if-mib/ifXTable/ifXTable.c b/agent/mibgroup/if-mib/ifXTable/ifXTable.c +index bb3e736..0c952ba 100644 +--- a/agent/mibgroup/if-mib/ifXTable/ifXTable.c ++++ b/agent/mibgroup/if-mib/ifXTable/ifXTable.c +@@ -722,7 +722,7 @@ The total number of octets received on the interface, + */ + int + ifHCInOctets_get(ifXTable_rowreq_ctx * rowreq_ctx, +- U64 * ifHCInOctets_val_ptr) ++ struct counter64 *ifHCInOctets_val_ptr) + { + /** we should have a non-NULL pointer */ + netsnmp_assert(NULL != ifHCInOctets_val_ptr); +@@ -779,7 +779,7 @@ The number of packets, delivered by this sub-layer to a + */ + int + ifHCInUcastPkts_get(ifXTable_rowreq_ctx * rowreq_ctx, +- U64 * ifHCInUcastPkts_val_ptr) ++ struct counter64 *ifHCInUcastPkts_val_ptr) + { + /** we should have a non-NULL pointer */ + netsnmp_assert(NULL != ifHCInUcastPkts_val_ptr); +@@ -838,7 +838,7 @@ The number of packets, delivered by this sub-layer to a + */ + int + ifHCInMulticastPkts_get(ifXTable_rowreq_ctx * rowreq_ctx, +- U64 * ifHCInMulticastPkts_val_ptr) ++ struct counter64 *ifHCInMulticastPkts_val_ptr) + { + /** we should have a non-NULL pointer */ + netsnmp_assert(NULL != ifHCInMulticastPkts_val_ptr); +@@ -897,7 +897,7 @@ The number of packets, delivered by this sub-layer to a + */ + int + ifHCInBroadcastPkts_get(ifXTable_rowreq_ctx * rowreq_ctx, +- U64 * ifHCInBroadcastPkts_val_ptr) ++ struct counter64 *ifHCInBroadcastPkts_val_ptr) + { + /** we should have a non-NULL pointer */ + netsnmp_assert(NULL != ifHCInBroadcastPkts_val_ptr); +@@ -955,7 +955,7 @@ The total number of octets transmitted out of the + */ + int + ifHCOutOctets_get(ifXTable_rowreq_ctx * rowreq_ctx, +- U64 * ifHCOutOctets_val_ptr) ++ struct counter64 *ifHCOutOctets_val_ptr) + { + /** we should have a non-NULL pointer */ + netsnmp_assert(NULL != ifHCOutOctets_val_ptr); +@@ -1013,7 +1013,7 @@ The total number of packets that higher-level protocols + */ + int + ifHCOutUcastPkts_get(ifXTable_rowreq_ctx * rowreq_ctx, +- U64 * ifHCOutUcastPkts_val_ptr) ++ struct counter64 *ifHCOutUcastPkts_val_ptr) + { + /** we should have a non-NULL pointer */ + netsnmp_assert(NULL != ifHCOutUcastPkts_val_ptr); +@@ -1074,7 +1074,7 @@ The total number of packets that higher-level protocols + */ + int + ifHCOutMulticastPkts_get(ifXTable_rowreq_ctx * rowreq_ctx, +- U64 * ifHCOutMulticastPkts_val_ptr) ++ struct counter64 *ifHCOutMulticastPkts_val_ptr) + { + /** we should have a non-NULL pointer */ + netsnmp_assert(NULL != ifHCOutMulticastPkts_val_ptr); +@@ -1134,7 +1134,7 @@ The total number of packets that higher-level protocols + */ + int + ifHCOutBroadcastPkts_get(ifXTable_rowreq_ctx * rowreq_ctx, +- U64 * ifHCOutBroadcastPkts_val_ptr) ++ struct counter64 *ifHCOutBroadcastPkts_val_ptr) + { + /** we should have a non-NULL pointer */ + netsnmp_assert(NULL != ifHCOutBroadcastPkts_val_ptr); +diff --git a/agent/mibgroup/if-mib/ifXTable/ifXTable.h b/agent/mibgroup/if-mib/ifXTable/ifXTable.h +index ba22f97..925af13 100644 +--- a/agent/mibgroup/if-mib/ifXTable/ifXTable.h ++++ b/agent/mibgroup/if-mib/ifXTable/ifXTable.h +@@ -143,28 +143,28 @@ config_require(if-mib/ifXTable/ifXTable_data_access) + u_long * + ifOutBroadcastPkts_val_ptr); + int ifHCInOctets_get(ifXTable_rowreq_ctx * rowreq_ctx, +- U64 * ifHCInOctets_val_ptr); ++ struct counter64 *ifHCInOctets_val_ptr); + int ifHCInUcastPkts_get(ifXTable_rowreq_ctx * rowreq_ctx, +- U64 * ifHCInUcastPkts_val_ptr); ++ struct counter64 *ifHCInUcastPkts_val_ptr); + int ifHCInMulticastPkts_get(ifXTable_rowreq_ctx * + rowreq_ctx, +- U64 * ++ struct counter64 * + ifHCInMulticastPkts_val_ptr); + int ifHCInBroadcastPkts_get(ifXTable_rowreq_ctx * + rowreq_ctx, +- U64 * ++ struct counter64 * + ifHCInBroadcastPkts_val_ptr); + int ifHCOutOctets_get(ifXTable_rowreq_ctx * rowreq_ctx, +- U64 * ifHCOutOctets_val_ptr); ++ struct counter64 *ifHCOutOctets_val_ptr); + int ifHCOutUcastPkts_get(ifXTable_rowreq_ctx * rowreq_ctx, +- U64 * ifHCOutUcastPkts_val_ptr); ++ struct counter64 *ifHCOutUcastPkts_val_ptr); + int ifHCOutMulticastPkts_get(ifXTable_rowreq_ctx * + rowreq_ctx, +- U64 * ++ struct counter64 * + ifHCOutMulticastPkts_val_ptr); + int ifHCOutBroadcastPkts_get(ifXTable_rowreq_ctx * + rowreq_ctx, +- U64 * ++ struct counter64 * + ifHCOutBroadcastPkts_val_ptr); + int ifLinkUpDownTrapEnable_get(ifXTable_rowreq_ctx * + rowreq_ctx, +@@ -284,86 +284,86 @@ config_require(if-mib/ifXTable/ifXTable_data_access) + + int ifHCInOctets_check_value(ifXTable_rowreq_ctx * + rowreq_ctx, +- U64 ifHCInOctets_val); ++ struct counter64 ifHCInOctets_val); + int ifHCInOctets_undo_setup(ifXTable_rowreq_ctx * + rowreq_ctx); + int ifHCInOctets_set(ifXTable_rowreq_ctx * rowreq_ctx, +- U64 ifHCInOctets_val); ++ struct counter64 ifHCInOctets_val); + int ifHCInOctets_undo(ifXTable_rowreq_ctx * rowreq_ctx); + + int ifHCInUcastPkts_check_value(ifXTable_rowreq_ctx * + rowreq_ctx, +- U64 ifHCInUcastPkts_val); ++ struct counter64 ifHCInUcastPkts_val); + int ifHCInUcastPkts_undo_setup(ifXTable_rowreq_ctx * + rowreq_ctx); + int ifHCInUcastPkts_set(ifXTable_rowreq_ctx * rowreq_ctx, +- U64 ifHCInUcastPkts_val); ++ struct counter64 ifHCInUcastPkts_val); + int ifHCInUcastPkts_undo(ifXTable_rowreq_ctx * rowreq_ctx); + + int ifHCInMulticastPkts_check_value(ifXTable_rowreq_ctx * + rowreq_ctx, +- U64 ++ struct counter64 + ifHCInMulticastPkts_val); + int ifHCInMulticastPkts_undo_setup(ifXTable_rowreq_ctx * + rowreq_ctx); + int ifHCInMulticastPkts_set(ifXTable_rowreq_ctx * + rowreq_ctx, +- U64 ifHCInMulticastPkts_val); ++ struct counter64 ifHCInMulticastPkts_val); + int ifHCInMulticastPkts_undo(ifXTable_rowreq_ctx * + rowreq_ctx); + + int ifHCInBroadcastPkts_check_value(ifXTable_rowreq_ctx * + rowreq_ctx, +- U64 ++ struct counter64 + ifHCInBroadcastPkts_val); + int ifHCInBroadcastPkts_undo_setup(ifXTable_rowreq_ctx * + rowreq_ctx); + int ifHCInBroadcastPkts_set(ifXTable_rowreq_ctx * + rowreq_ctx, +- U64 ifHCInBroadcastPkts_val); ++ struct counter64 ifHCInBroadcastPkts_val); + int ifHCInBroadcastPkts_undo(ifXTable_rowreq_ctx * + rowreq_ctx); + + int ifHCOutOctets_check_value(ifXTable_rowreq_ctx * + rowreq_ctx, +- U64 ifHCOutOctets_val); ++ struct counter64 ifHCOutOctets_val); + int ifHCOutOctets_undo_setup(ifXTable_rowreq_ctx * + rowreq_ctx); + int ifHCOutOctets_set(ifXTable_rowreq_ctx * rowreq_ctx, +- U64 ifHCOutOctets_val); ++ struct counter64 ifHCOutOctets_val); + int ifHCOutOctets_undo(ifXTable_rowreq_ctx * rowreq_ctx); + + int ifHCOutUcastPkts_check_value(ifXTable_rowreq_ctx * + rowreq_ctx, +- U64 ifHCOutUcastPkts_val); ++ struct counter64 ifHCOutUcastPkts_val); + int ifHCOutUcastPkts_undo_setup(ifXTable_rowreq_ctx * + rowreq_ctx); + int ifHCOutUcastPkts_set(ifXTable_rowreq_ctx * rowreq_ctx, +- U64 ifHCOutUcastPkts_val); ++ struct counter64 ifHCOutUcastPkts_val); + int ifHCOutUcastPkts_undo(ifXTable_rowreq_ctx * + rowreq_ctx); + + int ifHCOutMulticastPkts_check_value(ifXTable_rowreq_ctx * + rowreq_ctx, +- U64 ++ struct counter64 + ifHCOutMulticastPkts_val); + int ifHCOutMulticastPkts_undo_setup(ifXTable_rowreq_ctx * + rowreq_ctx); + int ifHCOutMulticastPkts_set(ifXTable_rowreq_ctx * + rowreq_ctx, +- U64 ifHCOutMulticastPkts_val); ++ struct counter64 ifHCOutMulticastPkts_val); + int ifHCOutMulticastPkts_undo(ifXTable_rowreq_ctx * + rowreq_ctx); + + int ifHCOutBroadcastPkts_check_value(ifXTable_rowreq_ctx * + rowreq_ctx, +- U64 ++ struct counter64 + ifHCOutBroadcastPkts_val); + int ifHCOutBroadcastPkts_undo_setup(ifXTable_rowreq_ctx * + rowreq_ctx); + int ifHCOutBroadcastPkts_set(ifXTable_rowreq_ctx * + rowreq_ctx, +- U64 ifHCOutBroadcastPkts_val); ++ struct counter64 ifHCOutBroadcastPkts_val); + int ifHCOutBroadcastPkts_undo(ifXTable_rowreq_ctx * + rowreq_ctx); + +diff --git a/agent/mibgroup/if-mib/ifXTable/ifXTable_interface.c b/agent/mibgroup/if-mib/ifXTable/ifXTable_interface.c +index 23b50d0..e561842 100644 +--- a/agent/mibgroup/if-mib/ifXTable/ifXTable_interface.c ++++ b/agent/mibgroup/if-mib/ifXTable/ifXTable_interface.c +@@ -729,72 +729,72 @@ _ifXTable_get_column(ifXTable_rowreq_ctx * rowreq_ctx, + * ifHCInOctets(6)/COUNTER64/ASN_COUNTER64/U64(U64)//l/A/w/e/r/d/h + */ + case COLUMN_IFHCINOCTETS: +- var->val_len = sizeof(U64); ++ var->val_len = sizeof(struct counter64); + var->type = ASN_COUNTER64; +- rc = ifHCInOctets_get(rowreq_ctx, (U64 *) var->val.string); ++ rc = ifHCInOctets_get(rowreq_ctx, (struct counter64 *) var->val.string); + break; + + /* + * ifHCInUcastPkts(7)/COUNTER64/ASN_COUNTER64/U64(U64)//l/A/w/e/r/d/h + */ + case COLUMN_IFHCINUCASTPKTS: +- var->val_len = sizeof(U64); ++ var->val_len = sizeof(struct counter64); + var->type = ASN_COUNTER64; +- rc = ifHCInUcastPkts_get(rowreq_ctx, (U64 *) var->val.string); ++ rc = ifHCInUcastPkts_get(rowreq_ctx, (struct counter64 *) var->val.string); + break; + + /* + * ifHCInMulticastPkts(8)/COUNTER64/ASN_COUNTER64/U64(U64)//l/A/w/e/r/d/h + */ + case COLUMN_IFHCINMULTICASTPKTS: +- var->val_len = sizeof(U64); ++ var->val_len = sizeof(struct counter64); + var->type = ASN_COUNTER64; +- rc = ifHCInMulticastPkts_get(rowreq_ctx, (U64 *) var->val.string); ++ rc = ifHCInMulticastPkts_get(rowreq_ctx, (struct counter64 *) var->val.string); + break; + + /* + * ifHCInBroadcastPkts(9)/COUNTER64/ASN_COUNTER64/U64(U64)//l/A/w/e/r/d/h + */ + case COLUMN_IFHCINBROADCASTPKTS: +- var->val_len = sizeof(U64); ++ var->val_len = sizeof(struct counter64); + var->type = ASN_COUNTER64; +- rc = ifHCInBroadcastPkts_get(rowreq_ctx, (U64 *) var->val.string); ++ rc = ifHCInBroadcastPkts_get(rowreq_ctx, (struct counter64 *) var->val.string); + break; + + /* + * ifHCOutOctets(10)/COUNTER64/ASN_COUNTER64/U64(U64)//l/A/w/e/r/d/h + */ + case COLUMN_IFHCOUTOCTETS: +- var->val_len = sizeof(U64); ++ var->val_len = sizeof(struct counter64); + var->type = ASN_COUNTER64; +- rc = ifHCOutOctets_get(rowreq_ctx, (U64 *) var->val.string); ++ rc = ifHCOutOctets_get(rowreq_ctx, (struct counter64 *) var->val.string); + break; + + /* + * ifHCOutUcastPkts(11)/COUNTER64/ASN_COUNTER64/U64(U64)//l/A/w/e/r/d/h + */ + case COLUMN_IFHCOUTUCASTPKTS: +- var->val_len = sizeof(U64); ++ var->val_len = sizeof(struct counter64); + var->type = ASN_COUNTER64; +- rc = ifHCOutUcastPkts_get(rowreq_ctx, (U64 *) var->val.string); ++ rc = ifHCOutUcastPkts_get(rowreq_ctx, (struct counter64 *) var->val.string); + break; + + /* + * ifHCOutMulticastPkts(12)/COUNTER64/ASN_COUNTER64/U64(U64)//l/A/w/e/r/d/h + */ + case COLUMN_IFHCOUTMULTICASTPKTS: +- var->val_len = sizeof(U64); ++ var->val_len = sizeof(struct counter64); + var->type = ASN_COUNTER64; +- rc = ifHCOutMulticastPkts_get(rowreq_ctx, (U64 *) var->val.string); ++ rc = ifHCOutMulticastPkts_get(rowreq_ctx, (struct counter64 *) var->val.string); + break; + + /* + * ifHCOutBroadcastPkts(13)/COUNTER64/ASN_COUNTER64/U64(U64)//l/A/w/e/r/d/h + */ + case COLUMN_IFHCOUTBROADCASTPKTS: +- var->val_len = sizeof(U64); ++ var->val_len = sizeof(struct counter64); + var->type = ASN_COUNTER64; +- rc = ifHCOutBroadcastPkts_get(rowreq_ctx, (U64 *) var->val.string); ++ rc = ifHCOutBroadcastPkts_get(rowreq_ctx, (struct counter64 *) var->val.string); + break; + + /* +diff --git a/agent/mibgroup/ip-mib/data_access/systemstats_common.c b/agent/mibgroup/ip-mib/data_access/systemstats_common.c +index 29109bd..7434b3a 100644 +--- a/agent/mibgroup/ip-mib/data_access/systemstats_common.c ++++ b/agent/mibgroup/ip-mib/data_access/systemstats_common.c +@@ -264,7 +264,7 @@ _calculate_entries(netsnmp_systemstats_entry * entry) + && entry->stats.columnAvail[IPSYSTEMSTATSTABLE_HCOUTFRAGCREATES] + && entry->stats.columnAvail[IPSYSTEMSTATSTABLE_HCOUTDISCARDS]) { + +- U64 tmp, tmp2, tmp3; ++ struct counter64 tmp, tmp2, tmp3; + tmp = entry->stats.HCOutRequests; + u64Incr(&tmp, &entry->stats.HCOutForwDatagrams); + u64Incr(&tmp, &entry->stats.HCOutFragCreates); +diff --git a/agent/mibgroup/ip-mib/ipIfStatsTable/ipIfStatsTable_data_get.c b/agent/mibgroup/ip-mib/ipIfStatsTable/ipIfStatsTable_data_get.c +index db673dc..fec36b2 100644 +--- a/agent/mibgroup/ip-mib/ipIfStatsTable/ipIfStatsTable_data_get.c ++++ b/agent/mibgroup/ip-mib/ipIfStatsTable/ipIfStatsTable_data_get.c +@@ -270,7 +270,7 @@ The total number of input IP datagrams received, including + */ + int + ipIfStatsHCInReceives_get(ipIfStatsTable_rowreq_ctx * rowreq_ctx, +- U64 * ipIfStatsHCInReceives_val_ptr) ++ struct counter64 *ipIfStatsHCInReceives_val_ptr) + { + /** we should have a non-NULL pointer */ + netsnmp_assert(NULL != ipIfStatsHCInReceives_val_ptr); +@@ -395,7 +395,7 @@ The total number of octets received in input IP datagrams, + */ + int + ipIfStatsHCInOctets_get(ipIfStatsTable_rowreq_ctx * rowreq_ctx, +- U64 * ipIfStatsHCInOctets_val_ptr) ++ struct counter64 *ipIfStatsHCInOctets_val_ptr) + { + /** we should have a non-NULL pointer */ + netsnmp_assert(NULL != ipIfStatsHCInOctets_val_ptr); +@@ -862,7 +862,7 @@ The number of input datagrams for which this entity was not + */ + int + ipIfStatsHCInForwDatagrams_get(ipIfStatsTable_rowreq_ctx * rowreq_ctx, +- U64 * ipIfStatsHCInForwDatagrams_val_ptr) ++ struct counter64 *ipIfStatsHCInForwDatagrams_val_ptr) + { + /** we should have a non-NULL pointer */ + netsnmp_assert(NULL != ipIfStatsHCInForwDatagrams_val_ptr); +@@ -1267,7 +1267,7 @@ The total number of datagrams successfully delivered to IP + */ + int + ipIfStatsHCInDelivers_get(ipIfStatsTable_rowreq_ctx * rowreq_ctx, +- U64 * ipIfStatsHCInDelivers_val_ptr) ++ struct counter64 *ipIfStatsHCInDelivers_val_ptr) + { + /** we should have a non-NULL pointer */ + netsnmp_assert(NULL != ipIfStatsHCInDelivers_val_ptr); +@@ -1396,7 +1396,7 @@ The total number of IP datagrams that local IP user- + */ + int + ipIfStatsHCOutRequests_get(ipIfStatsTable_rowreq_ctx * rowreq_ctx, +- U64 * ipIfStatsHCOutRequests_val_ptr) ++ struct counter64 *ipIfStatsHCOutRequests_val_ptr) + { + /** we should have a non-NULL pointer */ + netsnmp_assert(NULL != ipIfStatsHCOutRequests_val_ptr); +@@ -1532,7 +1532,7 @@ The number of datagrams for which this entity was not their + */ + int + ipIfStatsHCOutForwDatagrams_get(ipIfStatsTable_rowreq_ctx * rowreq_ctx, +- U64 * ipIfStatsHCOutForwDatagrams_val_ptr) ++ struct counter64 *ipIfStatsHCOutForwDatagrams_val_ptr) + { + /** we should have a non-NULL pointer */ + netsnmp_assert(NULL != ipIfStatsHCOutForwDatagrams_val_ptr); +@@ -1999,7 +1999,7 @@ The total number of IP datagrams that this entity supplied + */ + int + ipIfStatsHCOutTransmits_get(ipIfStatsTable_rowreq_ctx * rowreq_ctx, +- U64 * ipIfStatsHCOutTransmits_val_ptr) ++ struct counter64 *ipIfStatsHCOutTransmits_val_ptr) + { + /** we should have a non-NULL pointer */ + netsnmp_assert(NULL != ipIfStatsHCOutTransmits_val_ptr); +@@ -2123,7 +2123,7 @@ The total number of octets in IP datagrams delivered to the + */ + int + ipIfStatsHCOutOctets_get(ipIfStatsTable_rowreq_ctx * rowreq_ctx, +- U64 * ipIfStatsHCOutOctets_val_ptr) ++ struct counter64 *ipIfStatsHCOutOctets_val_ptr) + { + /** we should have a non-NULL pointer */ + netsnmp_assert(NULL != ipIfStatsHCOutOctets_val_ptr); +@@ -2245,7 +2245,7 @@ The number of IP multicast datagrams received. This object + */ + int + ipIfStatsHCInMcastPkts_get(ipIfStatsTable_rowreq_ctx * rowreq_ctx, +- U64 * ipIfStatsHCInMcastPkts_val_ptr) ++ struct counter64 *ipIfStatsHCInMcastPkts_val_ptr) + { + /** we should have a non-NULL pointer */ + netsnmp_assert(NULL != ipIfStatsHCInMcastPkts_val_ptr); +@@ -2372,7 +2372,7 @@ The total number of octets received in IP multicast + */ + int + ipIfStatsHCInMcastOctets_get(ipIfStatsTable_rowreq_ctx * rowreq_ctx, +- U64 * ipIfStatsHCInMcastOctets_val_ptr) ++ struct counter64 *ipIfStatsHCInMcastOctets_val_ptr) + { + /** we should have a non-NULL pointer */ + netsnmp_assert(NULL != ipIfStatsHCInMcastOctets_val_ptr); +@@ -2497,7 +2497,7 @@ The number of IP multicast datagrams transmitted. This + */ + int + ipIfStatsHCOutMcastPkts_get(ipIfStatsTable_rowreq_ctx * rowreq_ctx, +- U64 * ipIfStatsHCOutMcastPkts_val_ptr) ++ struct counter64 *ipIfStatsHCOutMcastPkts_val_ptr) + { + /** we should have a non-NULL pointer */ + netsnmp_assert(NULL != ipIfStatsHCOutMcastPkts_val_ptr); +@@ -2621,7 +2621,7 @@ The total number of octets transmitted in IP multicast + */ + int + ipIfStatsHCOutMcastOctets_get(ipIfStatsTable_rowreq_ctx * rowreq_ctx, +- U64 * ipIfStatsHCOutMcastOctets_val_ptr) ++ struct counter64 *ipIfStatsHCOutMcastOctets_val_ptr) + { + /** we should have a non-NULL pointer */ + netsnmp_assert(NULL != ipIfStatsHCOutMcastOctets_val_ptr); +@@ -2743,7 +2743,7 @@ The number of IP broadcast datagrams received. This object + */ + int + ipIfStatsHCInBcastPkts_get(ipIfStatsTable_rowreq_ctx * rowreq_ctx, +- U64 * ipIfStatsHCInBcastPkts_val_ptr) ++ struct counter64 *ipIfStatsHCInBcastPkts_val_ptr) + { + /** we should have a non-NULL pointer */ + netsnmp_assert(NULL != ipIfStatsHCInBcastPkts_val_ptr); +@@ -2865,7 +2865,7 @@ The number of IP broadcast datagrams transmitted. This + */ + int + ipIfStatsHCOutBcastPkts_get(ipIfStatsTable_rowreq_ctx * rowreq_ctx, +- U64 * ipIfStatsHCOutBcastPkts_val_ptr) ++ struct counter64 *ipIfStatsHCOutBcastPkts_val_ptr) + { + /** we should have a non-NULL pointer */ + netsnmp_assert(NULL != ipIfStatsHCOutBcastPkts_val_ptr); +diff --git a/agent/mibgroup/ip-mib/ipIfStatsTable/ipIfStatsTable_data_get.h b/agent/mibgroup/ip-mib/ipIfStatsTable/ipIfStatsTable_data_get.h +index 0cc7e47..ad5d8a0 100644 +--- a/agent/mibgroup/ip-mib/ipIfStatsTable/ipIfStatsTable_data_get.h ++++ b/agent/mibgroup/ip-mib/ipIfStatsTable/ipIfStatsTable_data_get.h +@@ -50,7 +50,7 @@ extern "C" { + ipIfStatsInReceives_val_ptr); + int ipIfStatsHCInReceives_get(ipIfStatsTable_rowreq_ctx * + rowreq_ctx, +- U64 * ++ struct counter64 * + ipIfStatsHCInReceives_val_ptr); + int ipIfStatsInOctets_get(ipIfStatsTable_rowreq_ctx * + rowreq_ctx, +@@ -58,7 +58,7 @@ extern "C" { + ipIfStatsInOctets_val_ptr); + int ipIfStatsHCInOctets_get(ipIfStatsTable_rowreq_ctx * + rowreq_ctx, +- U64 * ++ struct counter64 * + ipIfStatsHCInOctets_val_ptr); + int ipIfStatsInHdrErrors_get(ipIfStatsTable_rowreq_ctx * + rowreq_ctx, +@@ -87,7 +87,7 @@ extern "C" { + int + ipIfStatsHCInForwDatagrams_get(ipIfStatsTable_rowreq_ctx * + rowreq_ctx, +- U64 * ++ struct counter64 * + ipIfStatsHCInForwDatagrams_val_ptr); + int ipIfStatsReasmReqds_get(ipIfStatsTable_rowreq_ctx * + rowreq_ctx, +@@ -111,7 +111,7 @@ extern "C" { + ipIfStatsInDelivers_val_ptr); + int ipIfStatsHCInDelivers_get(ipIfStatsTable_rowreq_ctx * + rowreq_ctx, +- U64 * ++ struct counter64 * + ipIfStatsHCInDelivers_val_ptr); + int ipIfStatsOutRequests_get(ipIfStatsTable_rowreq_ctx * + rowreq_ctx, +@@ -119,7 +119,7 @@ extern "C" { + ipIfStatsOutRequests_val_ptr); + int ipIfStatsHCOutRequests_get(ipIfStatsTable_rowreq_ctx * + rowreq_ctx, +- U64 * ++ struct counter64 * + ipIfStatsHCOutRequests_val_ptr); + int ipIfStatsOutForwDatagrams_get(ipIfStatsTable_rowreq_ctx + * rowreq_ctx, +@@ -128,7 +128,7 @@ extern "C" { + int + ipIfStatsHCOutForwDatagrams_get(ipIfStatsTable_rowreq_ctx * + rowreq_ctx, +- U64 * ++ struct counter64 * + ipIfStatsHCOutForwDatagrams_val_ptr); + int ipIfStatsOutDiscards_get(ipIfStatsTable_rowreq_ctx * + rowreq_ctx, +@@ -156,7 +156,7 @@ extern "C" { + ipIfStatsOutTransmits_val_ptr); + int ipIfStatsHCOutTransmits_get(ipIfStatsTable_rowreq_ctx * + rowreq_ctx, +- U64 * ++ struct counter64 * + ipIfStatsHCOutTransmits_val_ptr); + int ipIfStatsOutOctets_get(ipIfStatsTable_rowreq_ctx * + rowreq_ctx, +@@ -164,7 +164,7 @@ extern "C" { + ipIfStatsOutOctets_val_ptr); + int ipIfStatsHCOutOctets_get(ipIfStatsTable_rowreq_ctx * + rowreq_ctx, +- U64 * ++ struct counter64 * + ipIfStatsHCOutOctets_val_ptr); + int ipIfStatsInMcastPkts_get(ipIfStatsTable_rowreq_ctx * + rowreq_ctx, +@@ -172,7 +172,7 @@ extern "C" { + ipIfStatsInMcastPkts_val_ptr); + int ipIfStatsHCInMcastPkts_get(ipIfStatsTable_rowreq_ctx * + rowreq_ctx, +- U64 * ++ struct counter64 * + ipIfStatsHCInMcastPkts_val_ptr); + int ipIfStatsInMcastOctets_get(ipIfStatsTable_rowreq_ctx * + rowreq_ctx, +@@ -180,7 +180,7 @@ extern "C" { + ipIfStatsInMcastOctets_val_ptr); + int ipIfStatsHCInMcastOctets_get(ipIfStatsTable_rowreq_ctx + * rowreq_ctx, +- U64 * ++ struct counter64 * + ipIfStatsHCInMcastOctets_val_ptr); + int ipIfStatsOutMcastPkts_get(ipIfStatsTable_rowreq_ctx * + rowreq_ctx, +@@ -188,7 +188,7 @@ extern "C" { + ipIfStatsOutMcastPkts_val_ptr); + int ipIfStatsHCOutMcastPkts_get(ipIfStatsTable_rowreq_ctx * + rowreq_ctx, +- U64 * ++ struct counter64 * + ipIfStatsHCOutMcastPkts_val_ptr); + int ipIfStatsOutMcastOctets_get(ipIfStatsTable_rowreq_ctx * + rowreq_ctx, +@@ -196,7 +196,7 @@ extern "C" { + ipIfStatsOutMcastOctets_val_ptr); + int ipIfStatsHCOutMcastOctets_get(ipIfStatsTable_rowreq_ctx + * rowreq_ctx, +- U64 * ++ struct counter64 * + ipIfStatsHCOutMcastOctets_val_ptr); + int ipIfStatsInBcastPkts_get(ipIfStatsTable_rowreq_ctx * + rowreq_ctx, +@@ -204,7 +204,7 @@ extern "C" { + ipIfStatsInBcastPkts_val_ptr); + int ipIfStatsHCInBcastPkts_get(ipIfStatsTable_rowreq_ctx * + rowreq_ctx, +- U64 * ++ struct counter64 * + ipIfStatsHCInBcastPkts_val_ptr); + int ipIfStatsOutBcastPkts_get(ipIfStatsTable_rowreq_ctx * + rowreq_ctx, +@@ -212,7 +212,7 @@ extern "C" { + ipIfStatsOutBcastPkts_val_ptr); + int ipIfStatsHCOutBcastPkts_get(ipIfStatsTable_rowreq_ctx * + rowreq_ctx, +- U64 * ++ struct counter64 * + ipIfStatsHCOutBcastPkts_val_ptr); + int + ipIfStatsDiscontinuityTime_get(ipIfStatsTable_rowreq_ctx * +diff --git a/agent/mibgroup/ip-mib/ipIfStatsTable/ipIfStatsTable_interface.c b/agent/mibgroup/ip-mib/ipIfStatsTable/ipIfStatsTable_interface.c +index 559d1c1..4955a8b 100644 +--- a/agent/mibgroup/ip-mib/ipIfStatsTable/ipIfStatsTable_interface.c ++++ b/agent/mibgroup/ip-mib/ipIfStatsTable/ipIfStatsTable_interface.c +@@ -722,10 +722,10 @@ _ipIfStatsTable_get_column(ipIfStatsTable_rowreq_ctx * rowreq_ctx, + * ipIfStatsHCInReceives(4)/COUNTER64/ASN_COUNTER64/U64(U64)//l/A/w/e/r/d/h + */ + case COLUMN_IPIFSTATSHCINRECEIVES: +- var->val_len = sizeof(U64); ++ var->val_len = sizeof(struct counter64); + var->type = ASN_COUNTER64; + rc = ipIfStatsHCInReceives_get(rowreq_ctx, +- (U64 *) var->val.string); ++ (struct counter64 *) var->val.string); + break; + + /* +@@ -741,9 +741,9 @@ _ipIfStatsTable_get_column(ipIfStatsTable_rowreq_ctx * rowreq_ctx, + * ipIfStatsHCInOctets(6)/COUNTER64/ASN_COUNTER64/U64(U64)//l/A/w/e/r/d/h + */ + case COLUMN_IPIFSTATSHCINOCTETS: +- var->val_len = sizeof(U64); ++ var->val_len = sizeof(struct counter64); + var->type = ASN_COUNTER64; +- rc = ipIfStatsHCInOctets_get(rowreq_ctx, (U64 *) var->val.string); ++ rc = ipIfStatsHCInOctets_get(rowreq_ctx, (struct counter64 *) var->val.string); + break; + + /* +@@ -810,10 +810,10 @@ _ipIfStatsTable_get_column(ipIfStatsTable_rowreq_ctx * rowreq_ctx, + * ipIfStatsHCInForwDatagrams(13)/COUNTER64/ASN_COUNTER64/U64(U64)//l/A/w/e/r/d/h + */ + case COLUMN_IPIFSTATSHCINFORWDATAGRAMS: +- var->val_len = sizeof(U64); ++ var->val_len = sizeof(struct counter64); + var->type = ASN_COUNTER64; + rc = ipIfStatsHCInForwDatagrams_get(rowreq_ctx, +- (U64 *) var->val.string); ++ (struct counter64 *) var->val.string); + break; + + /* +@@ -869,10 +869,10 @@ _ipIfStatsTable_get_column(ipIfStatsTable_rowreq_ctx * rowreq_ctx, + * ipIfStatsHCInDelivers(19)/COUNTER64/ASN_COUNTER64/U64(U64)//l/A/w/e/r/d/h + */ + case COLUMN_IPIFSTATSHCINDELIVERS: +- var->val_len = sizeof(U64); ++ var->val_len = sizeof(struct counter64); + var->type = ASN_COUNTER64; + rc = ipIfStatsHCInDelivers_get(rowreq_ctx, +- (U64 *) var->val.string); ++ (struct counter64 *) var->val.string); + break; + + /* +@@ -889,10 +889,10 @@ _ipIfStatsTable_get_column(ipIfStatsTable_rowreq_ctx * rowreq_ctx, + * ipIfStatsHCOutRequests(21)/COUNTER64/ASN_COUNTER64/U64(U64)//l/A/w/e/r/d/h + */ + case COLUMN_IPIFSTATSHCOUTREQUESTS: +- var->val_len = sizeof(U64); ++ var->val_len = sizeof(struct counter64); + var->type = ASN_COUNTER64; + rc = ipIfStatsHCOutRequests_get(rowreq_ctx, +- (U64 *) var->val.string); ++ (struct counter64 *) var->val.string); + break; + + /* +@@ -909,10 +909,10 @@ _ipIfStatsTable_get_column(ipIfStatsTable_rowreq_ctx * rowreq_ctx, + * ipIfStatsHCOutForwDatagrams(24)/COUNTER64/ASN_COUNTER64/U64(U64)//l/A/w/e/r/d/h + */ + case COLUMN_IPIFSTATSHCOUTFORWDATAGRAMS: +- var->val_len = sizeof(U64); ++ var->val_len = sizeof(struct counter64); + var->type = ASN_COUNTER64; + rc = ipIfStatsHCOutForwDatagrams_get(rowreq_ctx, +- (U64 *) var->val.string); ++ (struct counter64 *) var->val.string); + break; + + /* +@@ -979,10 +979,10 @@ _ipIfStatsTable_get_column(ipIfStatsTable_rowreq_ctx * rowreq_ctx, + * ipIfStatsHCOutTransmits(31)/COUNTER64/ASN_COUNTER64/U64(U64)//l/A/w/e/r/d/h + */ + case COLUMN_IPIFSTATSHCOUTTRANSMITS: +- var->val_len = sizeof(U64); ++ var->val_len = sizeof(struct counter64); + var->type = ASN_COUNTER64; + rc = ipIfStatsHCOutTransmits_get(rowreq_ctx, +- (U64 *) var->val.string); ++ (struct counter64 *) var->val.string); + break; + + /* +@@ -999,9 +999,9 @@ _ipIfStatsTable_get_column(ipIfStatsTable_rowreq_ctx * rowreq_ctx, + * ipIfStatsHCOutOctets(33)/COUNTER64/ASN_COUNTER64/U64(U64)//l/A/w/e/r/d/h + */ + case COLUMN_IPIFSTATSHCOUTOCTETS: +- var->val_len = sizeof(U64); ++ var->val_len = sizeof(struct counter64); + var->type = ASN_COUNTER64; +- rc = ipIfStatsHCOutOctets_get(rowreq_ctx, (U64 *) var->val.string); ++ rc = ipIfStatsHCOutOctets_get(rowreq_ctx, (struct counter64 *) var->val.string); + break; + + /* +@@ -1018,10 +1018,10 @@ _ipIfStatsTable_get_column(ipIfStatsTable_rowreq_ctx * rowreq_ctx, + * ipIfStatsHCInMcastPkts(35)/COUNTER64/ASN_COUNTER64/U64(U64)//l/A/w/e/r/d/h + */ + case COLUMN_IPIFSTATSHCINMCASTPKTS: +- var->val_len = sizeof(U64); ++ var->val_len = sizeof(struct counter64); + var->type = ASN_COUNTER64; + rc = ipIfStatsHCInMcastPkts_get(rowreq_ctx, +- (U64 *) var->val.string); ++ (struct counter64 *) var->val.string); + break; + + /* +@@ -1038,10 +1038,10 @@ _ipIfStatsTable_get_column(ipIfStatsTable_rowreq_ctx * rowreq_ctx, + * ipIfStatsHCInMcastOctets(37)/COUNTER64/ASN_COUNTER64/U64(U64)//l/A/w/e/r/d/h + */ + case COLUMN_IPIFSTATSHCINMCASTOCTETS: +- var->val_len = sizeof(U64); ++ var->val_len = sizeof(struct counter64); + var->type = ASN_COUNTER64; + rc = ipIfStatsHCInMcastOctets_get(rowreq_ctx, +- (U64 *) var->val.string); ++ (struct counter64 *) var->val.string); + break; + + /* +@@ -1058,10 +1058,10 @@ _ipIfStatsTable_get_column(ipIfStatsTable_rowreq_ctx * rowreq_ctx, + * ipIfStatsHCOutMcastPkts(39)/COUNTER64/ASN_COUNTER64/U64(U64)//l/A/w/e/r/d/h + */ + case COLUMN_IPIFSTATSHCOUTMCASTPKTS: +- var->val_len = sizeof(U64); ++ var->val_len = sizeof(struct counter64); + var->type = ASN_COUNTER64; + rc = ipIfStatsHCOutMcastPkts_get(rowreq_ctx, +- (U64 *) var->val.string); ++ (struct counter64 *) var->val.string); + break; + + /* +@@ -1078,10 +1078,10 @@ _ipIfStatsTable_get_column(ipIfStatsTable_rowreq_ctx * rowreq_ctx, + * ipIfStatsHCOutMcastOctets(41)/COUNTER64/ASN_COUNTER64/U64(U64)//l/A/w/e/r/d/h + */ + case COLUMN_IPIFSTATSHCOUTMCASTOCTETS: +- var->val_len = sizeof(U64); ++ var->val_len = sizeof(struct counter64); + var->type = ASN_COUNTER64; + rc = ipIfStatsHCOutMcastOctets_get(rowreq_ctx, +- (U64 *) var->val.string); ++ (struct counter64 *) var->val.string); + break; + + /* +@@ -1098,10 +1098,10 @@ _ipIfStatsTable_get_column(ipIfStatsTable_rowreq_ctx * rowreq_ctx, + * ipIfStatsHCInBcastPkts(43)/COUNTER64/ASN_COUNTER64/U64(U64)//l/A/w/e/r/d/h + */ + case COLUMN_IPIFSTATSHCINBCASTPKTS: +- var->val_len = sizeof(U64); ++ var->val_len = sizeof(struct counter64); + var->type = ASN_COUNTER64; + rc = ipIfStatsHCInBcastPkts_get(rowreq_ctx, +- (U64 *) var->val.string); ++ (struct counter64 *) var->val.string); + break; + + /* +@@ -1118,10 +1118,10 @@ _ipIfStatsTable_get_column(ipIfStatsTable_rowreq_ctx * rowreq_ctx, + * ipIfStatsHCOutBcastPkts(45)/COUNTER64/ASN_COUNTER64/U64(U64)//l/A/w/e/r/d/h + */ + case COLUMN_IPIFSTATSHCOUTBCASTPKTS: +- var->val_len = sizeof(U64); ++ var->val_len = sizeof(struct counter64); + var->type = ASN_COUNTER64; + rc = ipIfStatsHCOutBcastPkts_get(rowreq_ctx, +- (U64 *) var->val.string); ++ (struct counter64 *) var->val.string); + break; + + /* +diff --git a/agent/mibgroup/ip-mib/ipSystemStatsTable/ipSystemStatsTable.c b/agent/mibgroup/ip-mib/ipSystemStatsTable/ipSystemStatsTable.c +index 10587e2..5a9323f 100644 +--- a/agent/mibgroup/ip-mib/ipSystemStatsTable/ipSystemStatsTable.c ++++ b/agent/mibgroup/ip-mib/ipSystemStatsTable/ipSystemStatsTable.c +@@ -452,7 +452,7 @@ The total number of input IP datagrams received, including + */ + int + ipSystemStatsHCInReceives_get(ipSystemStatsTable_rowreq_ctx * rowreq_ctx, +- U64 * ipSystemStatsHCInReceives_val_ptr) ++ struct counter64 *ipSystemStatsHCInReceives_val_ptr) + { + /** we should have a non-NULL pointer */ + netsnmp_assert(NULL != ipSystemStatsHCInReceives_val_ptr); +@@ -579,7 +579,7 @@ The total number of octets received in input IP datagrams, + */ + int + ipSystemStatsHCInOctets_get(ipSystemStatsTable_rowreq_ctx * rowreq_ctx, +- U64 * ipSystemStatsHCInOctets_val_ptr) ++ struct counter64 *ipSystemStatsHCInOctets_val_ptr) + { + /** we should have a non-NULL pointer */ + netsnmp_assert(NULL != ipSystemStatsHCInOctets_val_ptr); +@@ -1058,7 +1058,7 @@ The number of input datagrams for which this entity was not + int + ipSystemStatsHCInForwDatagrams_get(ipSystemStatsTable_rowreq_ctx * + rowreq_ctx, +- U64 * ++ struct counter64 * + ipSystemStatsHCInForwDatagrams_val_ptr) + { + /** we should have a non-NULL pointer */ +@@ -1474,7 +1474,7 @@ The total number of datagrams successfully delivered to IP + */ + int + ipSystemStatsHCInDelivers_get(ipSystemStatsTable_rowreq_ctx * rowreq_ctx, +- U64 * ipSystemStatsHCInDelivers_val_ptr) ++ struct counter64 *ipSystemStatsHCInDelivers_val_ptr) + { + /** we should have a non-NULL pointer */ + netsnmp_assert(NULL != ipSystemStatsHCInDelivers_val_ptr); +@@ -1602,7 +1602,7 @@ The total number of IP datagrams which local IP user- + */ + int + ipSystemStatsHCOutRequests_get(ipSystemStatsTable_rowreq_ctx * rowreq_ctx, +- U64 * ipSystemStatsHCOutRequests_val_ptr) ++ struct counter64 *ipSystemStatsHCOutRequests_val_ptr) + { + /** we should have a non-NULL pointer */ + netsnmp_assert(NULL != ipSystemStatsHCOutRequests_val_ptr); +@@ -1809,7 +1809,7 @@ The number of datagrams for which this entity was not their + int + ipSystemStatsHCOutForwDatagrams_get(ipSystemStatsTable_rowreq_ctx * + rowreq_ctx, +- U64 * ++ struct counter64 * + ipSystemStatsHCOutForwDatagrams_val_ptr) + { + /** we should have a non-NULL pointer */ +@@ -2288,7 +2288,7 @@ The total number of IP datagrams that this entity supplied + */ + int + ipSystemStatsHCOutTransmits_get(ipSystemStatsTable_rowreq_ctx * rowreq_ctx, +- U64 * ipSystemStatsHCOutTransmits_val_ptr) ++ struct counter64 *ipSystemStatsHCOutTransmits_val_ptr) + { + /** we should have a non-NULL pointer */ + netsnmp_assert(NULL != ipSystemStatsHCOutTransmits_val_ptr); +@@ -2415,7 +2415,7 @@ The total number of octets in IP datagrams delivered to the + */ + int + ipSystemStatsHCOutOctets_get(ipSystemStatsTable_rowreq_ctx * rowreq_ctx, +- U64 * ipSystemStatsHCOutOctets_val_ptr) ++ struct counter64 *ipSystemStatsHCOutOctets_val_ptr) + { + /** we should have a non-NULL pointer */ + netsnmp_assert(NULL != ipSystemStatsHCOutOctets_val_ptr); +@@ -2539,7 +2539,7 @@ The number of IP multicast datagrams received. This object + */ + int + ipSystemStatsHCInMcastPkts_get(ipSystemStatsTable_rowreq_ctx * rowreq_ctx, +- U64 * ipSystemStatsHCInMcastPkts_val_ptr) ++ struct counter64 *ipSystemStatsHCInMcastPkts_val_ptr) + { + /** we should have a non-NULL pointer */ + netsnmp_assert(NULL != ipSystemStatsHCInMcastPkts_val_ptr); +@@ -2665,7 +2665,7 @@ The total number of octets received in IP multicast + int + ipSystemStatsHCInMcastOctets_get(ipSystemStatsTable_rowreq_ctx * + rowreq_ctx, +- U64 * ++ struct counter64 * + ipSystemStatsHCInMcastOctets_val_ptr) + { + /** we should have a non-NULL pointer */ +@@ -2790,7 +2790,7 @@ The number of IP multicast datagrams transmitted. This + */ + int + ipSystemStatsHCOutMcastPkts_get(ipSystemStatsTable_rowreq_ctx * rowreq_ctx, +- U64 * ipSystemStatsHCOutMcastPkts_val_ptr) ++ struct counter64 *ipSystemStatsHCOutMcastPkts_val_ptr) + { + /** we should have a non-NULL pointer */ + netsnmp_assert(NULL != ipSystemStatsHCOutMcastPkts_val_ptr); +@@ -2921,7 +2921,7 @@ The total number of octets transmitted in IP multicast + int + ipSystemStatsHCOutMcastOctets_get(ipSystemStatsTable_rowreq_ctx * + rowreq_ctx, +- U64 * ++ struct counter64 * + ipSystemStatsHCOutMcastOctets_val_ptr) + { + /** we should have a non-NULL pointer */ +@@ -3046,7 +3046,7 @@ The number of IP broadcast datagrams received. This object + */ + int + ipSystemStatsHCInBcastPkts_get(ipSystemStatsTable_rowreq_ctx * rowreq_ctx, +- U64 * ipSystemStatsHCInBcastPkts_val_ptr) ++ struct counter64 *ipSystemStatsHCInBcastPkts_val_ptr) + { + /** we should have a non-NULL pointer */ + netsnmp_assert(NULL != ipSystemStatsHCInBcastPkts_val_ptr); +@@ -3170,7 +3170,7 @@ The number of IP broadcast datagrams transmitted. This + */ + int + ipSystemStatsHCOutBcastPkts_get(ipSystemStatsTable_rowreq_ctx * rowreq_ctx, +- U64 * ipSystemStatsHCOutBcastPkts_val_ptr) ++ struct counter64 *ipSystemStatsHCOutBcastPkts_val_ptr) + { + /** we should have a non-NULL pointer */ + netsnmp_assert(NULL != ipSystemStatsHCOutBcastPkts_val_ptr); +diff --git a/agent/mibgroup/ip-mib/ipSystemStatsTable/ipSystemStatsTable.h b/agent/mibgroup/ip-mib/ipSystemStatsTable/ipSystemStatsTable.h +index ca1e1f3..5c3823e 100644 +--- a/agent/mibgroup/ip-mib/ipSystemStatsTable/ipSystemStatsTable.h ++++ b/agent/mibgroup/ip-mib/ipSystemStatsTable/ipSystemStatsTable.h +@@ -144,93 +144,22 @@ config_require(ip-mib/ipSystemStatsTable/ipSystemStatsTable_data_access) + ********************************************************************* + * function prototypes + */ +- int +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- ipSystemStatsTable_pre_request(ipSystemStatsTable_registration * ++ int ipSystemStatsTable_pre_request(ipSystemStatsTable_registration * + user_context); +- int +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- ipSystemStatsTable_post_request(ipSystemStatsTable_registration * ++ int ipSystemStatsTable_post_request(ipSystemStatsTable_registration * + user_context, int rc); + +- int +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- ipSystemStatsTable_rowreq_ctx_init(ipSystemStatsTable_rowreq_ctx * ++ int ipSystemStatsTable_rowreq_ctx_init(ipSystemStatsTable_rowreq_ctx * + rowreq_ctx, + void *user_init_ctx); + void +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- + ipSystemStatsTable_rowreq_ctx_cleanup(ipSystemStatsTable_rowreq_ctx + * rowreq_ctx); + + ipSystemStatsTable_data *ipSystemStatsTable_allocate_data(void); + void ipSystemStatsTable_release_data(ipSystemStatsTable_data + * data); +- +- +- +- +- +- +- +- +- ipSystemStatsTable_rowreq_ctx ++ ipSystemStatsTable_rowreq_ctx + * ipSystemStatsTable_row_find_by_mib_index + (ipSystemStatsTable_mib_index * mib_idx); + +@@ -265,226 +194,50 @@ config_require(ip-mib/ipSystemStatsTable/ipSystemStatsTable_data_access) + * indexes + */ + +- int +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- ipSystemStatsInReceives_get(ipSystemStatsTable_rowreq_ctx * ++ int ipSystemStatsInReceives_get(ipSystemStatsTable_rowreq_ctx * + rowreq_ctx, + u_long * + ipSystemStatsInReceives_val_ptr); +- int +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- ipSystemStatsHCInReceives_get(ipSystemStatsTable_rowreq_ctx * ++ int ipSystemStatsHCInReceives_get(ipSystemStatsTable_rowreq_ctx * + rowreq_ctx, +- U64 * ++ struct counter64 * + ipSystemStatsHCInReceives_val_ptr); + int ipSystemStatsInOctets_get(ipSystemStatsTable_rowreq_ctx + * rowreq_ctx, + u_long * + ipSystemStatsInOctets_val_ptr); +- int +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- ipSystemStatsHCInOctets_get(ipSystemStatsTable_rowreq_ctx * ++ int ipSystemStatsHCInOctets_get(ipSystemStatsTable_rowreq_ctx * + rowreq_ctx, +- U64 * ipSystemStatsHCInOctets_val_ptr); +- int +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- ipSystemStatsInHdrErrors_get(ipSystemStatsTable_rowreq_ctx * ++ struct counter64 *ipSystemStatsHCInOctets_val_ptr); ++ int ipSystemStatsInHdrErrors_get(ipSystemStatsTable_rowreq_ctx * + rowreq_ctx, + u_long * + ipSystemStatsInHdrErrors_val_ptr); +- int +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- ipSystemStatsInNoRoutes_get(ipSystemStatsTable_rowreq_ctx * ++ int ipSystemStatsInNoRoutes_get(ipSystemStatsTable_rowreq_ctx * + rowreq_ctx, + u_long * + ipSystemStatsInNoRoutes_val_ptr); +- int +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- ipSystemStatsInAddrErrors_get(ipSystemStatsTable_rowreq_ctx * ++ int ipSystemStatsInAddrErrors_get(ipSystemStatsTable_rowreq_ctx * + rowreq_ctx, + u_long * + ipSystemStatsInAddrErrors_val_ptr); +- int +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- ipSystemStatsInUnknownProtos_get(ipSystemStatsTable_rowreq_ctx * ++ int ipSystemStatsInUnknownProtos_get(ipSystemStatsTable_rowreq_ctx * + rowreq_ctx, + u_long * + ipSystemStatsInUnknownProtos_val_ptr); +- int +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- ipSystemStatsInTruncatedPkts_get(ipSystemStatsTable_rowreq_ctx * ++ int ipSystemStatsInTruncatedPkts_get(ipSystemStatsTable_rowreq_ctx * + rowreq_ctx, + u_long * + ipSystemStatsInTruncatedPkts_val_ptr); +- int +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- ipSystemStatsInForwDatagrams_get(ipSystemStatsTable_rowreq_ctx * ++ int ipSystemStatsInForwDatagrams_get(ipSystemStatsTable_rowreq_ctx * + rowreq_ctx, + u_long * + ipSystemStatsInForwDatagrams_val_ptr); +- int +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- ipSystemStatsHCInForwDatagrams_get(ipSystemStatsTable_rowreq_ctx * ++ int ipSystemStatsHCInForwDatagrams_get(ipSystemStatsTable_rowreq_ctx * + rowreq_ctx, +- U64 * ++ struct counter64 * + ipSystemStatsHCInForwDatagrams_val_ptr); +- int +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- ipSystemStatsReasmReqds_get(ipSystemStatsTable_rowreq_ctx * ++ int ipSystemStatsReasmReqds_get(ipSystemStatsTable_rowreq_ctx * + rowreq_ctx, + u_long * + ipSystemStatsReasmReqds_val_ptr); +@@ -492,690 +245,142 @@ config_require(ip-mib/ipSystemStatsTable/ipSystemStatsTable_data_access) + * rowreq_ctx, + u_long * + ipSystemStatsReasmOKs_val_ptr); +- int +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- ipSystemStatsReasmFails_get(ipSystemStatsTable_rowreq_ctx * ++ int ipSystemStatsReasmFails_get(ipSystemStatsTable_rowreq_ctx * + rowreq_ctx, + u_long * + ipSystemStatsReasmFails_val_ptr); +- int +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- ipSystemStatsInDiscards_get(ipSystemStatsTable_rowreq_ctx * ++ int ipSystemStatsInDiscards_get(ipSystemStatsTable_rowreq_ctx * + rowreq_ctx, + u_long * + ipSystemStatsInDiscards_val_ptr); +- int +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- ipSystemStatsInDelivers_get(ipSystemStatsTable_rowreq_ctx * ++ int ipSystemStatsInDelivers_get(ipSystemStatsTable_rowreq_ctx * + rowreq_ctx, + u_long * + ipSystemStatsInDelivers_val_ptr); +- int +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- ipSystemStatsHCInDelivers_get(ipSystemStatsTable_rowreq_ctx * ++ int ipSystemStatsHCInDelivers_get(ipSystemStatsTable_rowreq_ctx * + rowreq_ctx, +- U64 * ++ struct counter64 * + ipSystemStatsHCInDelivers_val_ptr); +- int +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- ipSystemStatsOutRequests_get(ipSystemStatsTable_rowreq_ctx * ++ int ipSystemStatsOutRequests_get(ipSystemStatsTable_rowreq_ctx * + rowreq_ctx, + u_long * + ipSystemStatsOutRequests_val_ptr); +- int +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- ipSystemStatsHCOutRequests_get(ipSystemStatsTable_rowreq_ctx * ++ int ipSystemStatsHCOutRequests_get(ipSystemStatsTable_rowreq_ctx * + rowreq_ctx, +- U64 * ++ struct counter64 * + ipSystemStatsHCOutRequests_val_ptr); +- int +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- ipSystemStatsOutNoRoutes_get(ipSystemStatsTable_rowreq_ctx * ++ int ipSystemStatsOutNoRoutes_get(ipSystemStatsTable_rowreq_ctx * + rowreq_ctx, + u_long * + ipSystemStatsOutNoRoutes_val_ptr); +- int +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- ipSystemStatsOutForwDatagrams_get(ipSystemStatsTable_rowreq_ctx * ++ int ipSystemStatsOutForwDatagrams_get(ipSystemStatsTable_rowreq_ctx * + rowreq_ctx, + u_long * + ipSystemStatsOutForwDatagrams_val_ptr); +- int +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- ipSystemStatsHCOutForwDatagrams_get(ipSystemStatsTable_rowreq_ctx * ++ int ipSystemStatsHCOutForwDatagrams_get(ipSystemStatsTable_rowreq_ctx * + rowreq_ctx, +- U64 * ++ struct counter64 * + ipSystemStatsHCOutForwDatagrams_val_ptr); +- int +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- ipSystemStatsOutDiscards_get(ipSystemStatsTable_rowreq_ctx * ++ int ipSystemStatsOutDiscards_get(ipSystemStatsTable_rowreq_ctx * + rowreq_ctx, + u_long * + ipSystemStatsOutDiscards_val_ptr); +- int +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- ipSystemStatsOutFragReqds_get(ipSystemStatsTable_rowreq_ctx * ++ int ipSystemStatsOutFragReqds_get(ipSystemStatsTable_rowreq_ctx * + rowreq_ctx, + u_long * + ipSystemStatsOutFragReqds_val_ptr); +- int +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- ipSystemStatsOutFragOKs_get(ipSystemStatsTable_rowreq_ctx * ++ int ipSystemStatsOutFragOKs_get(ipSystemStatsTable_rowreq_ctx * + rowreq_ctx, + u_long * + ipSystemStatsOutFragOKs_val_ptr); +- int +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- ipSystemStatsOutFragFails_get(ipSystemStatsTable_rowreq_ctx * ++ int ipSystemStatsOutFragFails_get(ipSystemStatsTable_rowreq_ctx * + rowreq_ctx, + u_long * + ipSystemStatsOutFragFails_val_ptr); +- int +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- ipSystemStatsOutFragCreates_get(ipSystemStatsTable_rowreq_ctx * ++ int ipSystemStatsOutFragCreates_get(ipSystemStatsTable_rowreq_ctx * + rowreq_ctx, + u_long * + ipSystemStatsOutFragCreates_val_ptr); +- int +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- ipSystemStatsOutTransmits_get(ipSystemStatsTable_rowreq_ctx * ++ int ipSystemStatsOutTransmits_get(ipSystemStatsTable_rowreq_ctx * + rowreq_ctx, + u_long * + ipSystemStatsOutTransmits_val_ptr); +- int +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- ipSystemStatsHCOutTransmits_get(ipSystemStatsTable_rowreq_ctx * ++ int ipSystemStatsHCOutTransmits_get(ipSystemStatsTable_rowreq_ctx * + rowreq_ctx, +- U64 * ++ struct counter64 * + ipSystemStatsHCOutTransmits_val_ptr); +- int +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- ipSystemStatsOutOctets_get(ipSystemStatsTable_rowreq_ctx * ++ int ipSystemStatsOutOctets_get(ipSystemStatsTable_rowreq_ctx * + rowreq_ctx, + u_long * + ipSystemStatsOutOctets_val_ptr); +- int +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- ipSystemStatsHCOutOctets_get(ipSystemStatsTable_rowreq_ctx * ++ int ipSystemStatsHCOutOctets_get(ipSystemStatsTable_rowreq_ctx * + rowreq_ctx, +- U64 * ++ struct counter64 * + ipSystemStatsHCOutOctets_val_ptr); +- int +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- ipSystemStatsInMcastPkts_get(ipSystemStatsTable_rowreq_ctx * ++ int ipSystemStatsInMcastPkts_get(ipSystemStatsTable_rowreq_ctx * + rowreq_ctx, + u_long * + ipSystemStatsInMcastPkts_val_ptr); +- int +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- ipSystemStatsHCInMcastPkts_get(ipSystemStatsTable_rowreq_ctx * ++ int ipSystemStatsHCInMcastPkts_get(ipSystemStatsTable_rowreq_ctx * + rowreq_ctx, +- U64 * ++ struct counter64 * + ipSystemStatsHCInMcastPkts_val_ptr); +- int +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- ipSystemStatsInMcastOctets_get(ipSystemStatsTable_rowreq_ctx * ++ int ipSystemStatsInMcastOctets_get(ipSystemStatsTable_rowreq_ctx * + rowreq_ctx, + u_long * + ipSystemStatsInMcastOctets_val_ptr); +- int +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- ipSystemStatsHCInMcastOctets_get(ipSystemStatsTable_rowreq_ctx * ++ int ipSystemStatsHCInMcastOctets_get(ipSystemStatsTable_rowreq_ctx * + rowreq_ctx, +- U64 * ++ struct counter64 * + ipSystemStatsHCInMcastOctets_val_ptr); +- int +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- ipSystemStatsOutMcastPkts_get(ipSystemStatsTable_rowreq_ctx * ++ int ipSystemStatsOutMcastPkts_get(ipSystemStatsTable_rowreq_ctx * + rowreq_ctx, + u_long * + ipSystemStatsOutMcastPkts_val_ptr); +- int +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- ipSystemStatsHCOutMcastPkts_get(ipSystemStatsTable_rowreq_ctx * ++ int ipSystemStatsHCOutMcastPkts_get(ipSystemStatsTable_rowreq_ctx * + rowreq_ctx, +- U64 * ++ struct counter64 * + ipSystemStatsHCOutMcastPkts_val_ptr); +- int +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- ipSystemStatsOutMcastOctets_get(ipSystemStatsTable_rowreq_ctx * ++ int ipSystemStatsOutMcastOctets_get(ipSystemStatsTable_rowreq_ctx * + rowreq_ctx, + u_long * + ipSystemStatsOutMcastOctets_val_ptr); +- int +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- ipSystemStatsHCOutMcastOctets_get(ipSystemStatsTable_rowreq_ctx * ++ int ipSystemStatsHCOutMcastOctets_get(ipSystemStatsTable_rowreq_ctx * + rowreq_ctx, +- U64 * ++ struct counter64 * + ipSystemStatsHCOutMcastOctets_val_ptr); +- int +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- ipSystemStatsInBcastPkts_get(ipSystemStatsTable_rowreq_ctx * ++ int ipSystemStatsInBcastPkts_get(ipSystemStatsTable_rowreq_ctx * + rowreq_ctx, + u_long * + ipSystemStatsInBcastPkts_val_ptr); +- int +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- ipSystemStatsHCInBcastPkts_get(ipSystemStatsTable_rowreq_ctx * ++ int ipSystemStatsHCInBcastPkts_get(ipSystemStatsTable_rowreq_ctx * + rowreq_ctx, +- U64 * ++ struct counter64 * + ipSystemStatsHCInBcastPkts_val_ptr); +- int +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- ipSystemStatsOutBcastPkts_get(ipSystemStatsTable_rowreq_ctx * ++ int ipSystemStatsOutBcastPkts_get(ipSystemStatsTable_rowreq_ctx * + rowreq_ctx, + u_long * + ipSystemStatsOutBcastPkts_val_ptr); +- int +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- ipSystemStatsHCOutBcastPkts_get(ipSystemStatsTable_rowreq_ctx * ++ int ipSystemStatsHCOutBcastPkts_get(ipSystemStatsTable_rowreq_ctx * + rowreq_ctx, +- U64 * ++ struct counter64 * + ipSystemStatsHCOutBcastPkts_val_ptr); +- int +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- ipSystemStatsDiscontinuityTime_get(ipSystemStatsTable_rowreq_ctx * ++ int ipSystemStatsDiscontinuityTime_get(ipSystemStatsTable_rowreq_ctx * + rowreq_ctx, + u_long * + ipSystemStatsDiscontinuityTime_val_ptr); +- int +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- ipSystemStatsRefreshRate_get(ipSystemStatsTable_rowreq_ctx * ++ int ipSystemStatsRefreshRate_get(ipSystemStatsTable_rowreq_ctx * + rowreq_ctx, + u_long * + ipSystemStatsRefreshRate_val_ptr); +- +- +- int +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- ipSystemStatsTable_indexes_set_tbl_idx(ipSystemStatsTable_mib_index ++ int ipSystemStatsTable_indexes_set_tbl_idx(ipSystemStatsTable_mib_index + * tbl_idx, + u_long + ipSystemStatsIPVersion_val); +- int +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- ipSystemStatsTable_indexes_set(ipSystemStatsTable_rowreq_ctx * ++ int ipSystemStatsTable_indexes_set(ipSystemStatsTable_rowreq_ctx * + rowreq_ctx, + u_long ipSystemStatsIPVersion_val); + +- +- + /* + ********************************************************************* + * SET function declarations +diff --git a/agent/mibgroup/ip-mib/ipSystemStatsTable/ipSystemStatsTable_interface.c b/agent/mibgroup/ip-mib/ipSystemStatsTable/ipSystemStatsTable_interface.c +index e1ca2cb..09c061f 100644 +--- a/agent/mibgroup/ip-mib/ipSystemStatsTable/ipSystemStatsTable_interface.c ++++ b/agent/mibgroup/ip-mib/ipSystemStatsTable/ipSystemStatsTable_interface.c +@@ -674,10 +674,10 @@ _ipSystemStatsTable_get_column(ipSystemStatsTable_rowreq_ctx * rowreq_ctx, + * ipSystemStatsHCInReceives(4)/COUNTER64/ASN_COUNTER64/U64(U64)//l/A/w/e/r/d/h + */ + case COLUMN_IPSYSTEMSTATSHCINRECEIVES: +- var->val_len = sizeof(U64); ++ var->val_len = sizeof(struct counter64); + var->type = ASN_COUNTER64; + rc = ipSystemStatsHCInReceives_get(rowreq_ctx, +- (U64 *) var->val.string); ++ (struct counter64 *) var->val.string); + break; + + /* +@@ -694,10 +694,10 @@ _ipSystemStatsTable_get_column(ipSystemStatsTable_rowreq_ctx * rowreq_ctx, + * ipSystemStatsHCInOctets(6)/COUNTER64/ASN_COUNTER64/U64(U64)//l/A/w/e/r/d/h + */ + case COLUMN_IPSYSTEMSTATSHCINOCTETS: +- var->val_len = sizeof(U64); ++ var->val_len = sizeof(struct counter64); + var->type = ASN_COUNTER64; + rc = ipSystemStatsHCInOctets_get(rowreq_ctx, +- (U64 *) var->val.string); ++ (struct counter64 *) var->val.string); + break; + + /* +@@ -764,10 +764,10 @@ _ipSystemStatsTable_get_column(ipSystemStatsTable_rowreq_ctx * rowreq_ctx, + * ipSystemStatsHCInForwDatagrams(13)/COUNTER64/ASN_COUNTER64/U64(U64)//l/A/w/e/r/d/h + */ + case COLUMN_IPSYSTEMSTATSHCINFORWDATAGRAMS: +- var->val_len = sizeof(U64); ++ var->val_len = sizeof(struct counter64); + var->type = ASN_COUNTER64; + rc = ipSystemStatsHCInForwDatagrams_get(rowreq_ctx, +- (U64 *) var->val.string); ++ (struct counter64 *) var->val.string); + break; + + /* +@@ -824,10 +824,10 @@ _ipSystemStatsTable_get_column(ipSystemStatsTable_rowreq_ctx * rowreq_ctx, + * ipSystemStatsHCInDelivers(19)/COUNTER64/ASN_COUNTER64/U64(U64)//l/A/w/e/r/d/h + */ + case COLUMN_IPSYSTEMSTATSHCINDELIVERS: +- var->val_len = sizeof(U64); ++ var->val_len = sizeof(struct counter64); + var->type = ASN_COUNTER64; + rc = ipSystemStatsHCInDelivers_get(rowreq_ctx, +- (U64 *) var->val.string); ++ (struct counter64 *) var->val.string); + break; + + /* +@@ -844,10 +844,10 @@ _ipSystemStatsTable_get_column(ipSystemStatsTable_rowreq_ctx * rowreq_ctx, + * ipSystemStatsHCOutRequests(21)/COUNTER64/ASN_COUNTER64/U64(U64)//l/A/w/e/r/d/h + */ + case COLUMN_IPSYSTEMSTATSHCOUTREQUESTS: +- var->val_len = sizeof(U64); ++ var->val_len = sizeof(struct counter64); + var->type = ASN_COUNTER64; + rc = ipSystemStatsHCOutRequests_get(rowreq_ctx, +- (U64 *) var->val.string); ++ (struct counter64 *) var->val.string); + break; + + /* +@@ -874,10 +874,10 @@ _ipSystemStatsTable_get_column(ipSystemStatsTable_rowreq_ctx * rowreq_ctx, + * ipSystemStatsHCOutForwDatagrams(24)/COUNTER64/ASN_COUNTER64/U64(U64)//l/A/w/e/r/d/h + */ + case COLUMN_IPSYSTEMSTATSHCOUTFORWDATAGRAMS: +- var->val_len = sizeof(U64); ++ var->val_len = sizeof(struct counter64); + var->type = ASN_COUNTER64; + rc = ipSystemStatsHCOutForwDatagrams_get(rowreq_ctx, +- (U64 *) var->val.string); ++ (struct counter64 *) var->val.string); + break; + + /* +@@ -944,10 +944,10 @@ _ipSystemStatsTable_get_column(ipSystemStatsTable_rowreq_ctx * rowreq_ctx, + * ipSystemStatsHCOutTransmits(31)/COUNTER64/ASN_COUNTER64/U64(U64)//l/A/w/e/r/d/h + */ + case COLUMN_IPSYSTEMSTATSHCOUTTRANSMITS: +- var->val_len = sizeof(U64); ++ var->val_len = sizeof(struct counter64); + var->type = ASN_COUNTER64; + rc = ipSystemStatsHCOutTransmits_get(rowreq_ctx, +- (U64 *) var->val.string); ++ (struct counter64 *) var->val.string); + break; + + /* +@@ -964,10 +964,10 @@ _ipSystemStatsTable_get_column(ipSystemStatsTable_rowreq_ctx * rowreq_ctx, + * ipSystemStatsHCOutOctets(33)/COUNTER64/ASN_COUNTER64/U64(U64)//l/A/w/e/r/d/h + */ + case COLUMN_IPSYSTEMSTATSHCOUTOCTETS: +- var->val_len = sizeof(U64); ++ var->val_len = sizeof(struct counter64); + var->type = ASN_COUNTER64; + rc = ipSystemStatsHCOutOctets_get(rowreq_ctx, +- (U64 *) var->val.string); ++ (struct counter64 *) var->val.string); + break; + + /* +@@ -984,10 +984,10 @@ _ipSystemStatsTable_get_column(ipSystemStatsTable_rowreq_ctx * rowreq_ctx, + * ipSystemStatsHCInMcastPkts(35)/COUNTER64/ASN_COUNTER64/U64(U64)//l/A/w/e/r/d/h + */ + case COLUMN_IPSYSTEMSTATSHCINMCASTPKTS: +- var->val_len = sizeof(U64); ++ var->val_len = sizeof(struct counter64); + var->type = ASN_COUNTER64; + rc = ipSystemStatsHCInMcastPkts_get(rowreq_ctx, +- (U64 *) var->val.string); ++ (struct counter64 *) var->val.string); + break; + + /* +@@ -1004,10 +1004,10 @@ _ipSystemStatsTable_get_column(ipSystemStatsTable_rowreq_ctx * rowreq_ctx, + * ipSystemStatsHCInMcastOctets(37)/COUNTER64/ASN_COUNTER64/U64(U64)//l/A/w/e/r/d/h + */ + case COLUMN_IPSYSTEMSTATSHCINMCASTOCTETS: +- var->val_len = sizeof(U64); ++ var->val_len = sizeof(struct counter64); + var->type = ASN_COUNTER64; + rc = ipSystemStatsHCInMcastOctets_get(rowreq_ctx, +- (U64 *) var->val.string); ++ (struct counter64 *) var->val.string); + break; + + /* +@@ -1024,10 +1024,10 @@ _ipSystemStatsTable_get_column(ipSystemStatsTable_rowreq_ctx * rowreq_ctx, + * ipSystemStatsHCOutMcastPkts(39)/COUNTER64/ASN_COUNTER64/U64(U64)//l/A/w/e/r/d/h + */ + case COLUMN_IPSYSTEMSTATSHCOUTMCASTPKTS: +- var->val_len = sizeof(U64); ++ var->val_len = sizeof(struct counter64); + var->type = ASN_COUNTER64; + rc = ipSystemStatsHCOutMcastPkts_get(rowreq_ctx, +- (U64 *) var->val.string); ++ (struct counter64 *) var->val.string); + break; + + /* +@@ -1044,10 +1044,10 @@ _ipSystemStatsTable_get_column(ipSystemStatsTable_rowreq_ctx * rowreq_ctx, + * ipSystemStatsHCOutMcastOctets(41)/COUNTER64/ASN_COUNTER64/U64(U64)//l/A/w/e/r/d/h + */ + case COLUMN_IPSYSTEMSTATSHCOUTMCASTOCTETS: +- var->val_len = sizeof(U64); ++ var->val_len = sizeof(struct counter64); + var->type = ASN_COUNTER64; + rc = ipSystemStatsHCOutMcastOctets_get(rowreq_ctx, +- (U64 *) var->val.string); ++ (struct counter64 *) var->val.string); + break; + + /* +@@ -1064,10 +1064,10 @@ _ipSystemStatsTable_get_column(ipSystemStatsTable_rowreq_ctx * rowreq_ctx, + * ipSystemStatsHCInBcastPkts(43)/COUNTER64/ASN_COUNTER64/U64(U64)//l/A/w/e/r/d/h + */ + case COLUMN_IPSYSTEMSTATSHCINBCASTPKTS: +- var->val_len = sizeof(U64); ++ var->val_len = sizeof(struct counter64); + var->type = ASN_COUNTER64; + rc = ipSystemStatsHCInBcastPkts_get(rowreq_ctx, +- (U64 *) var->val.string); ++ (struct counter64 *) var->val.string); + break; + + /* +@@ -1084,10 +1084,10 @@ _ipSystemStatsTable_get_column(ipSystemStatsTable_rowreq_ctx * rowreq_ctx, + * ipSystemStatsHCOutBcastPkts(45)/COUNTER64/ASN_COUNTER64/U64(U64)//l/A/w/e/r/d/h + */ + case COLUMN_IPSYSTEMSTATSHCOUTBCASTPKTS: +- var->val_len = sizeof(U64); ++ var->val_len = sizeof(struct counter64); + var->type = ASN_COUNTER64; + rc = ipSystemStatsHCOutBcastPkts_get(rowreq_ctx, +- (U64 *) var->val.string); ++ (struct counter64 *) var->val.string); + break; + + /* +diff --git a/include/net-snmp/data_access/ipstats.h b/include/net-snmp/data_access/ipstats.h +index f782459..f0df46b 100644 +--- a/include/net-snmp/data_access/ipstats.h ++++ b/include/net-snmp/data_access/ipstats.h +@@ -58,45 +58,45 @@ typedef struct netsnmp_ipstats_s { + * other columns, when underlying OS does not provide them. + * Always fill at least 32 bits, the table is periodically polled -> 32 bit + * overflow shall be detected and 64 bit value should be computed automatically. */ +- U64 HCInReceives; +- U64 HCInOctets; ++ struct counter64 HCInReceives; ++ struct counter64 HCInOctets; + u_long InHdrErrors; +- U64 HCInNoRoutes; ++ struct counter64 HCInNoRoutes; + u_long InAddrErrors; + u_long InUnknownProtos; + u_long InTruncatedPkts; + + /* optional, can be computed from HCInNoRoutes and HCOutForwDatagrams */ +- U64 HCInForwDatagrams; ++ struct counter64 HCInForwDatagrams; + + u_long ReasmReqds; + u_long ReasmOKs; + u_long ReasmFails; + u_long InDiscards; +- U64 HCInDelivers; +- U64 HCOutRequests; +- U64 HCOutNoRoutes; +- U64 HCOutForwDatagrams; +- U64 HCOutDiscards; ++ struct counter64 HCInDelivers; ++ struct counter64 HCOutRequests; ++ struct counter64 HCOutNoRoutes; ++ struct counter64 HCOutForwDatagrams; ++ struct counter64 HCOutDiscards; + + /* optional, can be computed from HCOutFragOKs + HCOutFragFails*/ +- U64 HCOutFragReqds; +- U64 HCOutFragOKs; +- U64 HCOutFragFails; +- U64 HCOutFragCreates; ++ struct counter64 HCOutFragReqds; ++ struct counter64 HCOutFragOKs; ++ struct counter64 HCOutFragFails; ++ struct counter64 HCOutFragCreates; + + /* optional, can be computed from + * HCOutRequests +HCOutForwDatagrams + HCOutFragCreates + * - HCOutFragReqds - HCOutNoRoutes - HCOutDiscards */ +- U64 HCOutTransmits; ++ struct counter64 HCOutTransmits; + +- U64 HCOutOctets; +- U64 HCInMcastPkts; +- U64 HCInMcastOctets; +- U64 HCOutMcastPkts; +- U64 HCOutMcastOctets; +- U64 HCInBcastPkts; +- U64 HCOutBcastPkts; ++ struct counter64 HCOutOctets; ++ struct counter64 HCInMcastPkts; ++ struct counter64 HCInMcastOctets; ++ struct counter64 HCOutMcastPkts; ++ struct counter64 HCOutMcastOctets; ++ struct counter64 HCInBcastPkts; ++ struct counter64 HCOutBcastPkts; + + /* Array of available columns.*/ + int columnAvail[IPSYSTEMSTATSTABLE_LAST+1]; +diff --git a/include/net-snmp/library/int64.h b/include/net-snmp/library/int64.h +index 9c7c894..3a85213 100644 +--- a/include/net-snmp/library/int64.h ++++ b/include/net-snmp/library/int64.h +@@ -5,31 +5,29 @@ + extern "C" { + #endif + +- typedef struct counter64 U64; +- + #define I64CHARSZ 21 + +- void divBy10(U64, U64 *, unsigned int *); +- void multBy10(U64, U64 *); +- void incrByU16(U64 *, unsigned int); +- void incrByU32(U64 *, unsigned int); ++ void divBy10(struct counter64, struct counter64 *, unsigned int *); ++ void multBy10(struct counter64, struct counter64 *); ++ void incrByU16(struct counter64 *, unsigned int); ++ void incrByU32(struct counter64 *, unsigned int); + NETSNMP_IMPORT +- void zeroU64(U64 *); +- int isZeroU64(const U64 *); ++ void zeroU64(struct counter64 *); ++ int isZeroU64(const struct counter64 *); + NETSNMP_IMPORT +- void printU64(char *, const U64 *); ++ void printU64(char *, const struct counter64 *); + NETSNMP_IMPORT +- void printI64(char *, const U64 *); +- int read64(U64 *, const char *); ++ void printI64(char *, const struct counter64 *); ++ int read64(struct counter64 *, const char *); + NETSNMP_IMPORT +- void u64Subtract(const U64 * pu64one, const U64 * pu64two, +- U64 * pu64out); +- void u64Incr(U64 * pu64out, const U64 * pu64one); +- void u64UpdateCounter(U64 * pu64out, const U64 * pu64one, +- const U64 * pu64two); +- void u64Copy(U64 * pu64one, const U64 * pu64two); ++ void u64Subtract(const struct counter64 *pu64one, const struct counter64 *pu64two, ++ struct counter64 *pu64out); ++ void u64Incr(struct counter64 *pu64out, const struct counter64 *pu64one); ++ void u64UpdateCounter(struct counter64 *pu64out, const struct counter64 *pu64one, ++ const struct counter64 *pu64two); ++ void u64Copy(struct counter64 *pu64one, const struct counter64 *pu64two); + +- int netsnmp_c64_check_for_32bit_wrap(U64 *old_val, U64 *new_val, ++ int netsnmp_c64_check_for_32bit_wrap(struct counter64 *old_val, struct counter64 *new_val, + int adjust); + NETSNMP_IMPORT + int netsnmp_c64_check32_and_update(struct counter64 *prev_val, +diff --git a/snmplib/int64.c b/snmplib/int64.c +index 51f1f32..951f813 100644 +--- a/snmplib/int64.c ++++ b/snmplib/int64.c +@@ -33,7 +33,7 @@ + * @param[out] puR Remainder. + */ + void +-divBy10(U64 u64, U64 * pu64Q, unsigned int *puR) ++divBy10(struct counter64 u64, struct counter64 *pu64Q, unsigned int *puR) + { + unsigned long ulT; + unsigned long ulQ; +@@ -83,7 +83,7 @@ divBy10(U64 u64, U64 * pu64Q, unsigned int *puR) + * @param[out] pu64P Product. + */ + void +-multBy10(U64 u64, U64 * pu64P) ++multBy10(struct counter64 u64, struct counter64 *pu64P) + { + unsigned long ulT; + unsigned long ulP; +@@ -130,7 +130,7 @@ multBy10(U64 u64, U64 * pu64P) + * + */ + void +-incrByU16(U64 * pu64, unsigned int u16) ++incrByU16(struct counter64 *pu64, unsigned int u16) + { + incrByU32(pu64, u16); + } +@@ -143,7 +143,7 @@ incrByU16(U64 * pu64, unsigned int u16) + * + */ + void +-incrByU32(U64 * pu64, unsigned int u32) ++incrByU32(struct counter64 *pu64, unsigned int u32) + { + uint32_t tmp; + +@@ -161,7 +161,7 @@ incrByU32(U64 * pu64, unsigned int u32) + * @param[out] pu64out pu64one - pu64two. + */ + void +-u64Subtract(const U64 * pu64one, const U64 * pu64two, U64 * pu64out) ++u64Subtract(const struct counter64 *pu64one, const struct counter64 *pu64two, struct counter64 *pu64out) + { + int carry; + +@@ -177,7 +177,7 @@ u64Subtract(const U64 * pu64one, const U64 * pu64two, U64 * pu64out) + * @param[in,out] pu64out pu64out += pu64one. + */ + void +-u64Incr(U64 * pu64out, const U64 * pu64one) ++u64Incr(struct counter64 *pu64out, const struct counter64 *pu64one) + { + pu64out->high = (uint32_t)(pu64out->high + pu64one->high); + incrByU32(pu64out, pu64one->low); +@@ -191,9 +191,9 @@ u64Incr(U64 * pu64out, const U64 * pu64one) + * @param[out] pu64out pu64out += (pu64one - pu64two) + */ + void +-u64UpdateCounter(U64 * pu64out, const U64 * pu64one, const U64 * pu64two) ++u64UpdateCounter(struct counter64 *pu64out, const struct counter64 *pu64one, const struct counter64 *pu64two) + { +- U64 tmp; ++ struct counter64 tmp; + + u64Subtract(pu64one, pu64two, &tmp); + u64Incr(pu64out, &tmp); +@@ -208,7 +208,7 @@ netsnmp_feature_child_of(u64copy, netsnmp_unused) + * @param[out] pu64one Where to store the copy - *pu64one = *pu64two. + */ + void +-u64Copy(U64 * pu64one, const U64 * pu64two) ++u64Copy(struct counter64 *pu64one, const struct counter64 *pu64two) + { + *pu64one = *pu64two; + } +@@ -220,7 +220,7 @@ u64Copy(U64 * pu64one, const U64 * pu64two) + * @param[in] pu64 Number to be zeroed. + */ + void +-zeroU64(U64 * pu64) ++zeroU64(struct counter64 *pu64) + { + pu64->low = 0; + pu64->high = 0; +@@ -232,7 +232,7 @@ zeroU64(U64 * pu64) + * @param[in] pu64 Number to be checked. + */ + int +-isZeroU64(const U64 * pu64) ++isZeroU64(const struct counter64 *pu64) + { + return pu64->low == 0 && pu64->high == 0; + } +@@ -390,10 +390,10 @@ netsnmp_c64_check32_and_update(struct counter64 *prev_val, struct counter64 *new + /** Convert an unsigned 64-bit number to ASCII. */ + void + printU64(char *buf, /* char [I64CHARSZ+1]; */ +- const U64 * pu64) ++ const struct counter64 *pu64) + { +- U64 u64a; +- U64 u64b; ++ struct counter64 u64a; ++ struct counter64 u64b; + + char aRes[I64CHARSZ + 1]; + unsigned int u; +@@ -414,9 +414,9 @@ printU64(char *buf, /* char [I64CHARSZ+1]; */ + /** Convert a signed 64-bit number to ASCII. */ + void + printI64(char *buf, /* char [I64CHARSZ+1]; */ +- const U64 * pu64) ++ const struct counter64 *pu64) + { +- U64 u64a; ++ struct counter64 u64a; + + if (pu64->high & 0x80000000) { + u64a.high = (uint32_t) ~pu64->high; +@@ -429,11 +429,11 @@ printI64(char *buf, /* char [I64CHARSZ+1]; */ + } + } + +-/** Convert a signed 64-bit integer from ASCII to U64. */ ++/** Convert a signed 64-bit integer from ASCII to struct counter64. */ + int +-read64(U64 * i64, const char *str) ++read64(struct counter64 *i64, const char *str) + { +- U64 i64p; ++ struct counter64 i64p; + unsigned int u; + int sign = 0; + int ok = 0; +diff --git a/snmplib/read_config.c b/snmplib/read_config.c +index e159c27..ab5b6a3 100644 +--- a/snmplib/read_config.c ++++ b/snmplib/read_config.c +@@ -2279,10 +2279,10 @@ read_config_read_memory(int type, char *readfrom, + return readfrom; + + case ASN_COUNTER64: +- if (*len < sizeof(U64)) ++ if (*len < sizeof(struct counter64)) + return NULL; +- *len = sizeof(U64); +- read64((U64 *) dataptr, readfrom); ++ *len = sizeof(struct counter64); ++ read64((struct counter64 *) dataptr, readfrom); + readfrom = skip_token(readfrom); + return readfrom; + } +diff --git a/testing/fulltests/unit-tests/T015int64_clib.c b/testing/fulltests/unit-tests/T015int64_clib.c +index 5f5f4b6..66f66b7 100644 +--- a/testing/fulltests/unit-tests/T015int64_clib.c ++++ b/testing/fulltests/unit-tests/T015int64_clib.c +@@ -1,4 +1,4 @@ +-/* HEADER Testing 64-bit integer operations (U64). */ ++/* HEADER Testing 64-bit integer operations (struct counter64). */ + + int i, j; + char buf[22]; +@@ -15,7 +15,7 @@ static const int64_t intval[] = { + }; + + for (i = 0; i < sizeof(intval)/sizeof(intval[0]); ++i) { +- U64 a, b; ++ struct counter64 a, b; + a.low = (uint32_t)intval[i]; + a.high = (uint32_t)(intval[i] >> 32); + printI64(buf, &a); +@@ -27,7 +27,7 @@ for (i = 0; i < sizeof(intval)/sizeof(intval[0]); ++i) { + + for (i = 0; i < sizeof(intval)/sizeof(intval[0]); ++i) { + for (j = i; j < sizeof(intval)/sizeof(intval[0]); ++j) { +- U64 a, b; ++ struct counter64 a, b; + uint64_t d; + a.low = (uint32_t)intval[i]; + a.high = (uint32_t)(intval[i] >> 32); +@@ -43,7 +43,7 @@ for (i = 0; i < sizeof(intval)/sizeof(intval[0]); ++i) { + + for (i = 0; i < sizeof(intval)/sizeof(intval[0]); ++i) { + for (j = i; j < sizeof(intval)/sizeof(intval[0]); ++j) { +- U64 a, b, c; ++ struct counter64 a, b, c; + uint64_t d; + a.low = (uint32_t)intval[i]; + a.high = (uint32_t)(intval[i] >> 32); +@@ -58,7 +58,7 @@ for (i = 0; i < sizeof(intval)/sizeof(intval[0]); ++i) { + } + + { +- U64 old_val, new_val; ++ struct counter64 old_val, new_val; + old_val.low = 7; + old_val.high = 0; + new_val = old_val; +-- +2.8.2 + diff --git a/net-analyzer/net-snmp/files/snmpd.conf b/net-analyzer/net-snmp/files/snmpd.conf new file mode 100644 index 0000000..ba8ba66 --- /dev/null +++ b/net-analyzer/net-snmp/files/snmpd.conf @@ -0,0 +1,20 @@ +# Copyright 1999-2004 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +# Initial (empty) options. +SNMPD_FLAGS="" + +# Disable smux by default +SNMPD_FLAGS="${SNMPD_FLAGS} -I -smux" + +# Enable connection logging. +#SNMPD_FLAGS="${SNMPD_FLAGS} -a" + +# Enable syslog and disable file log. +#SNMPD_FLAGS="${SNMPD_FLAGS} -Lsd -Lf /dev/null" + +# Enable agentx socket as /var/agentx/master +# *NOTE* Before uncommenting this, make sure +# the /var/agentx directory exists. +#SNMPD_FLAGS="${SNMPD_FLAGS} -x /var/agentx/master" diff --git a/net-analyzer/net-snmp/files/snmpd.init.2 b/net-analyzer/net-snmp/files/snmpd.init.2 new file mode 100644 index 0000000..6b923dd --- /dev/null +++ b/net-analyzer/net-snmp/files/snmpd.init.2 @@ -0,0 +1,35 @@ +#!/sbin/runscript +# Copyright 1999-2012 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +SNMPD_PIDFILE="${SNMPD_PIDFILE:-/var/run/snmpd.pid}" + +extra_started_commands="reload" + +command="/usr/sbin/snmpd" +command_args="-p ${SNMPD_PIDFILE} ${SNMPD_FLAGS}" +pidfile="${SNMPD_PIDFILE}" + +depend() { + use logger +} + +checkconfig() { + if [ ! -e /etc/snmp/snmpd.conf ] ; then + eerror "${SVCNAME} requires an /etc/snmp/snmpd.conf configuration file" + return 1 + fi +} + +start_pre() { + checkconfig || return 1 +} + +reload() { + checkconfig || return 1 + + ebegin "Reloading ${SVCNAME} configuration" + kill -HUP $(cat ${SNMPD_PIDFILE}) 2>&1 > /dev/null + eend $? +} diff --git a/net-analyzer/net-snmp/files/snmpd.service b/net-analyzer/net-snmp/files/snmpd.service new file mode 100644 index 0000000..8150d7b --- /dev/null +++ b/net-analyzer/net-snmp/files/snmpd.service @@ -0,0 +1,9 @@ +[Unit] +Description=Simple Network Management Protocol (SNMP) Daemon +After=syslog.target network.target + +[Service] +ExecStart=/usr/sbin/snmpd -f + +[Install] +WantedBy=multi-user.target diff --git a/net-analyzer/net-snmp/files/snmptrapd.conf b/net-analyzer/net-snmp/files/snmptrapd.conf new file mode 100644 index 0000000..775f358 --- /dev/null +++ b/net-analyzer/net-snmp/files/snmptrapd.conf @@ -0,0 +1,16 @@ +# Copyright 1999-2005 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +# extra flags to pass to snmptrapd +SNMPTRAPD_FLAGS="" + +# ignore authentication failure traps +#SNMPTRAPD_FLAGS="${SNMPTRAPD_FLAGS} -a" + +# log messages to specified file +#SNMPTRAPD_FLAGS="${SNMPTRAPD_FLAGS} -Lf /var/log/snmptrapd.log" + +# log messages to syslog with the specified facility +# where facility is: 'd' = LOG_DAEMON, 'u' = LOG_USER, [0-7] = LOG_LOCAL[0-7] +#SNMPTRAPD_FLAGS="${SNMPTRAPD_FLAGS} -Ls d" diff --git a/net-analyzer/net-snmp/files/snmptrapd.init.2 b/net-analyzer/net-snmp/files/snmptrapd.init.2 new file mode 100644 index 0000000..27b501a --- /dev/null +++ b/net-analyzer/net-snmp/files/snmptrapd.init.2 @@ -0,0 +1,14 @@ +#!/sbin/runscript +# Copyright 1999-2012 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +SNMPTRAPD_PIDFILE="${SNMPTRAPD_PIDFILE:-/var/run/snmptrapd.pid}" + +command="/usr/sbin/snmptrapd" +command_args="-p ${SNMPTRAPD_PIDFILE} ${SNMPTRAPD_FLAGS}" +pidfile="${SNMPTRAPD_PIDFILE}" + +depend() { + use logger +} diff --git a/net-analyzer/net-snmp/files/snmptrapd.service b/net-analyzer/net-snmp/files/snmptrapd.service new file mode 100644 index 0000000..7d19444 --- /dev/null +++ b/net-analyzer/net-snmp/files/snmptrapd.service @@ -0,0 +1,9 @@ +[Unit] +Description=Simple Network Management Protocol (SNMP) TRAP Daemon +After=syslog.target network.target + +[Service] +ExecStart=/usr/sbin/snmptrapd -f + +[Install] +WantedBy=multi-user.target diff --git a/net-analyzer/net-snmp/metadata.xml b/net-analyzer/net-snmp/metadata.xml new file mode 100644 index 0000000..9946231 --- /dev/null +++ b/net-analyzer/net-snmp/metadata.xml @@ -0,0 +1,20 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd"> +<pkgmetadata> +<maintainer type="project"> +<email>[email protected]</email> +<name>Gentoo network monitoring and analysis project</name> +</maintainer> +<use> +<flag name="elf">Enable the use of elf utils to check uptime on some systems</flag> +<flag name="mfd-rewrites">Use MFD rewrites of mib modules where available</flag> +<flag name="netlink">Use <pkg>dev-libs/libnl</pkg> to fetch TCP statistics instead of using /proc/net/tcp (Linux only).</flag> +<flag name="pci">Use libpci (from <pkg>sys-apps/pciutils</pkg>) to look up network interface description. This feature is only available on Linux.</flag> +<flag name="rpm">Enable monitoring of <pkg>app-arch/rpm</pkg>. This flag requires the bzip2 and zlib flags to be enabled as well.</flag> +<flag name="ucd-compat">Build UCD compatibility library. Increases significantly the install size.</flag> +<flag name="smux">Enable support for the legacy smux protocol (superseded by agentx)</flag> +</use> +<upstream> +<remote-id type="sourceforge">net-snmp</remote-id> +</upstream> +</pkgmetadata> diff --git a/net-analyzer/net-snmp/net-snmp-5.7.3-r5.ebuild b/net-analyzer/net-snmp/net-snmp-5.7.3-r5.ebuild new file mode 100644 index 0000000..f2931c6 --- /dev/null +++ b/net-analyzer/net-snmp/net-snmp-5.7.3-r5.ebuild @@ -0,0 +1,188 @@ +# Copyright 1999-2016 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +EAPI=5 +PYTHON_COMPAT=( python2_7 ) +DISTUTILS_SINGLE_IMPL=yesplz +DISTUTILS_OPTIONAL=yesplz +WANT_AUTOMAKE=none +PATCHSET=2 +GENTOO_DEPEND_ON_PERL=no + +inherit autotools distutils-r1 eutils perl-module systemd + +DESCRIPTION="Software for generating and retrieving SNMP data" +HOMEPAGE="http://net-snmp.sourceforge.net/" +SRC_URI=" + mirror://sourceforge/project/${PN}/${PN}/${PV}/${P}.tar.gz + https://dev.gentoo.org/~jer/${PN}-5.7.3-patches-${PATCHSET}.tar.xz +" + +S=${WORKDIR}/${P/_/.} + +# GPL-2 for the init scripts +LICENSE="HPND BSD GPL-2" +SLOT="0" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86" +IUSE="X bzip2 doc elf ipv6 libressl lm_sensors mfd-rewrites minimal mysql netlink pci perl python rpm selinux smux ssl tcpd ucd-compat zlib" + +COMMON_DEPEND=" + ssl? ( + !libressl? ( >=dev-libs/openssl-0.9.6d:0 ) + libressl? ( dev-libs/libressl ) + ) + tcpd? ( >=sys-apps/tcp-wrappers-7.6 ) + rpm? ( + app-arch/rpm + dev-libs/popt + ) + bzip2? ( app-arch/bzip2 ) + zlib? ( >=sys-libs/zlib-1.1.4 ) + elf? ( dev-libs/elfutils ) + python? ( + dev-python/setuptools[${PYTHON_USEDEP}] + ${PYTHON_DEPS} + ) + pci? ( sys-apps/pciutils ) + lm_sensors? ( sys-apps/lm_sensors ) + netlink? ( dev-libs/libnl:3 ) + mysql? ( virtual/mysql ) + perl? ( dev-lang/perl:= ) +" +DEPEND=" + ${COMMON_DEPEND} + doc? ( app-doc/doxygen ) +" +RDEPEND=" + ${COMMON_DEPEND} + perl? ( + X? ( dev-perl/Tk ) + !minimal? ( dev-perl/TermReadKey ) + ) + selinux? ( sec-policy/selinux-snmp ) +" + +REQUIRED_USE=" + python? ( ${PYTHON_REQUIRED_USE} ) + rpm? ( bzip2 zlib ) +" + +RESTRICT=test + +pkg_setup() { + use python && python-single-r1_pkg_setup +} + +src_prepare() { + # snmpconf generates config files with proper selinux context + use selinux && epatch "${FILESDIR}"/${PN}-5.1.2-snmpconf-selinux.patch + epatch "${FILESDIR}"/${P}-perl524.patch + + epatch "${WORKDIR}"/patches/*.patch + + epatch_user + + eautoconf +} + +src_configure() { + # keep this in the same line, configure.ac arguments are passed down to config.h + local mibs="host ucd-snmp/dlmod ucd-snmp/diskio ucd-snmp/extensible mibII/mta_sendmail etherlike-mib/dot3StatsTable" + use lm_sensors && mibs="${mibs} ucd-snmp/lmsensorsMib" + use smux && mibs="${mibs} smux" + + # Assume /etc/mtab is not present with a recent baselayout/openrc (bug #565136) + use kernel_linux && export ac_cv_ETC_MNTTAB=/etc/mtab + + econf \ + $(use_enable !ssl internal-md5) \ + $(use_enable ipv6) \ + $(use_enable mfd-rewrites) \ + $(use_enable perl embedded-perl) \ + $(use_enable ucd-compat ucd-snmp-compatibility) \ + $(use_with bzip2) \ + $(use_with elf) \ + $(use_with mysql) \ + $(use_with netlink nl) \ + $(use_with pci) \ + $(use_with perl perl-modules INSTALLDIRS=vendor) \ + $(use_with python python-modules) \ + $(use_with rpm) \ + $(use_with ssl openssl) \ + $(use_with tcpd libwrap) \ + $(use_with zlib) \ + --enable-shared --disable-static \ + --with-default-snmp-version="3" \ + --with-install-prefix="${D}" \ + --with-ldflags="${LDFLAGS}" \ + --with-logfile="/var/log/net-snmpd.log" \ + --with-mib-modules="${mibs}" \ + --with-persistent-directory="/var/lib/net-snmp" \ + --with-sys-contact="root@Unknown" \ + --with-sys-location="Unknown" +} + +src_compile() { + emake \ + OTHERLDFLAGS="${LDFLAGS}" \ + sedscript all + + use doc && emake docsdox +} + +src_install () { + # bug #317965 + emake -j1 DESTDIR="${D}" install + + if use perl ; then + perl_delete_localpod + if ! use X; then + rm "${D}"/usr/bin/tkmib || die + fi + else + rm -f \ + "${D}"/usr/bin/fixproc \ + "${D}"/usr/bin/ipf-mod.pl \ + "${D}"/usr/bin/mib2c \ + "${D}"/usr/bin/net-snmp-cert \ + "${D}"/usr/bin/snmp-bridge-mib \ + "${D}"/usr/bin/snmpcheck \ + "${D}"/usr/bin/snmpconf \ + "${D}"/usr/bin/tkmib \ + "${D}"/usr/bin/traptoemail \ + "${D}"/usr/share/snmp/mib2c.perl.conf \ + "${D}"/usr/share/snmp/snmp_perl_trapd.pl \ + || die + fi + + dodoc AGENT.txt ChangeLog FAQ INSTALL NEWS PORTING README* TODO + newdoc EXAMPLE.conf.def EXAMPLE.conf + + use doc && dohtml docs/html/* + + keepdir /var/lib/net-snmp + + newinitd "${FILESDIR}"/snmpd.init.2 snmpd + newconfd "${FILESDIR}"/snmpd.conf snmpd + + newinitd "${FILESDIR}"/snmptrapd.init.2 snmptrapd + newconfd "${FILESDIR}"/snmptrapd.conf snmptrapd + + systemd_dounit "${FILESDIR}"/snmpd.service + systemd_dounit "${FILESDIR}"/snmptrapd.service + + insinto /etc/snmp + newins "${S}"/EXAMPLE.conf snmpd.conf.example + + # Remove everything not required for an agent. + # Keep only the snmpd, snmptrapd, MIBs, headers and libraries. + if use minimal; then + rm -rf \ + "${D}"/**/*.pl \ + "${D}"/usr/bin/{encode_keychange,snmp{get,getnext,set,usm,walk,bulkwalk,table,trap,bulkget,translate,status,delta,test,df,vacm,netstat,inform,check,conf},fixproc,traptoemail} \ + "${D}"/usr/share/snmp/*.conf \ + "${D}"/usr/share/snmp/snmpconf-data \ + || die + fi +}
