mirror of
https://github.com/openembedded/meta-openembedded.git
synced 2026-06-01 01:30:23 +00:00
net-snmp: uprev it to 5.7.2.1
Signed-off-by: Roy Li <rongqing.li@windriver.com> Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
This commit is contained in:
-126
@@ -1,126 +0,0 @@
|
||||
diff -urpN a/agent/mibgroup/mibII/icmp.c b/agent/mibgroup/mibII/icmp.c
|
||||
--- a/agent/mibgroup/mibII/icmp.c
|
||||
+++ b/agent/mibgroup/mibII/icmp.c
|
||||
@@ -106,10 +106,20 @@ struct icmp_msg_stats_table_entry {
|
||||
int flags;
|
||||
};
|
||||
|
||||
+#ifdef linux
|
||||
+/* Linux keeps track of all possible message types */
|
||||
+#define ICMP_MSG_STATS_IPV4_COUNT 256
|
||||
+#else
|
||||
#define ICMP_MSG_STATS_IPV4_COUNT 11
|
||||
+#endif
|
||||
|
||||
#ifdef NETSNMP_ENABLE_IPV6
|
||||
+#ifdef linux
|
||||
+/* Linux keeps track of all possible message types */
|
||||
+#define ICMP_MSG_STATS_IPV6_COUNT 256
|
||||
+#else
|
||||
#define ICMP_MSG_STATS_IPV6_COUNT 14
|
||||
+#endif
|
||||
#else
|
||||
#define ICMP_MSG_STATS_IPV6_COUNT 0
|
||||
#endif /* NETSNMP_ENABLE_IPV6 */
|
||||
@@ -177,7 +187,7 @@ icmp_msg_stats_load(netsnmp_cache *cache
|
||||
inc = 0;
|
||||
linux_read_icmp_msg_stat(&v4icmp, &v4icmpmsg, &flag);
|
||||
if (flag) {
|
||||
- while (254 != k) {
|
||||
+ while (255 >= k) {
|
||||
if (v4icmpmsg.vals[k].InType) {
|
||||
icmp_msg_stats_table[i].ipVer = 1;
|
||||
icmp_msg_stats_table[i].icmpMsgStatsType = k;
|
||||
@@ -1050,6 +1060,12 @@ icmp_stats_table_handler(netsnmp_mib_han
|
||||
continue;
|
||||
table_info = netsnmp_extract_table_info(request);
|
||||
subid = table_info->colnum;
|
||||
+ DEBUGMSGTL(( "mibII/icmpStatsTable", "oid: " ));
|
||||
+ DEBUGMSGOID(( "mibII/icmpStatsTable", request->requestvb->name,
|
||||
+ request->requestvb->name_length ));
|
||||
+ DEBUGMSG(( "mibII/icmpStatsTable", " In %d InErr %d Out %d OutErr %d\n",
|
||||
+ entry->icmpStatsInMsgs, entry->icmpStatsInErrors,
|
||||
+ entry->icmpStatsOutMsgs, entry->icmpStatsOutErrors ));
|
||||
|
||||
switch (subid) {
|
||||
case ICMP_STAT_INMSG:
|
||||
@@ -1117,6 +1133,11 @@ icmp_msg_stats_table_handler(netsnmp_mib
|
||||
continue;
|
||||
table_info = netsnmp_extract_table_info(request);
|
||||
subid = table_info->colnum;
|
||||
+ DEBUGMSGTL(( "mibII/icmpMsgStatsTable", "oid: " ));
|
||||
+ DEBUGMSGOID(( "mibII/icmpMsgStatsTable", request->requestvb->name,
|
||||
+ request->requestvb->name_length ));
|
||||
+ DEBUGMSG(( "mibII/icmpMsgStatsTable", " In %d Out %d Flags 0x%x\n",
|
||||
+ entry->icmpMsgStatsInPkts, entry->icmpMsgStatsOutPkts, entry->flags ));
|
||||
|
||||
switch (subid) {
|
||||
case ICMP_MSG_STAT_IN_PKTS:
|
||||
diff -urpN a/agent/mibgroup/mibII/kernel_linux.c b/agent/mibgroup/mibII/kernel_linux.c
|
||||
--- a/agent/mibgroup/mibII/kernel_linux.c
|
||||
+++ b/agent/mibgroup/mibII/kernel_linux.c
|
||||
@@ -81,9 +81,9 @@ decode_icmp_msg(char *line, char *data,
|
||||
index = strtol(token, &delim, 0);
|
||||
if (ERANGE == errno) {
|
||||
continue;
|
||||
- } else if (index > LONG_MAX) {
|
||||
+ } else if (index > 255) {
|
||||
continue;
|
||||
- } else if (index < LONG_MIN) {
|
||||
+ } else if (index < 0) {
|
||||
continue;
|
||||
}
|
||||
if (NULL == (token = strtok_r(dataptr, " ", &saveptr1)))
|
||||
@@ -94,9 +94,9 @@ decode_icmp_msg(char *line, char *data,
|
||||
index = strtol(token, &delim, 0);
|
||||
if (ERANGE == errno) {
|
||||
continue;
|
||||
- } else if (index > LONG_MAX) {
|
||||
+ } else if (index > 255) {
|
||||
continue;
|
||||
- } else if (index < LONG_MIN) {
|
||||
+ } else if (index < 0) {
|
||||
continue;
|
||||
}
|
||||
if(NULL == (token = strtok_r(dataptr, " ", &saveptr1)))
|
||||
@@ -426,14 +426,21 @@ linux_read_icmp6_parse(struct icmp6_mib
|
||||
|
||||
vals = name;
|
||||
if (NULL != icmp6msgstat) {
|
||||
+ int type;
|
||||
if (0 == strncmp(name, "Icmp6OutType", 12)) {
|
||||
strsep(&vals, "e");
|
||||
- icmp6msgstat->vals[atoi(vals)].OutType = stats;
|
||||
+ type = atoi(vals);
|
||||
+ if ( type < 0 || type > 255 )
|
||||
+ continue;
|
||||
+ icmp6msgstat->vals[type].OutType = stats;
|
||||
*support = 1;
|
||||
continue;
|
||||
} else if (0 == strncmp(name, "Icmp6InType", 11)) {
|
||||
strsep(&vals, "e");
|
||||
- icmp6msgstat->vals[atoi(vals)].InType = stats;
|
||||
+ type = atoi(vals);
|
||||
+ if ( type < 0 || type > 255 )
|
||||
+ continue;
|
||||
+ icmp6msgstat->vals[type].OutType = stats;
|
||||
*support = 1;
|
||||
continue;
|
||||
}
|
||||
diff -urpN a/agent/mibgroup/mibII/kernel_linux.h b/agent/mibgroup/mibII/kernel_linux.h
|
||||
--- a/agent/mibgroup/mibII/kernel_linux.h
|
||||
+++ b/agent/mibgroup/mibII/kernel_linux.h
|
||||
@@ -121,11 +121,11 @@ struct icmp_msg_mib {
|
||||
|
||||
/* Lets use wrapper structures for future expansion */
|
||||
struct icmp4_msg_mib {
|
||||
- struct icmp_msg_mib vals[255];
|
||||
+ struct icmp_msg_mib vals[256];
|
||||
};
|
||||
|
||||
struct icmp6_msg_mib {
|
||||
- struct icmp_msg_mib vals[255];
|
||||
+ struct icmp_msg_mib vals[256];
|
||||
};
|
||||
|
||||
struct udp_mib {
|
||||
-26
@@ -1,26 +0,0 @@
|
||||
--- a/perl/TrapReceiver/TrapReceiver.xs
|
||||
+++ b/perl/TrapReceiver/TrapReceiver.xs
|
||||
@@ -81,18 +81,18 @@ int perl_trapd_handler( netsnmp_pdu
|
||||
STOREPDUi("securitymodel", pdu->securityModel);
|
||||
STOREPDUi("securitylevel", pdu->securityLevel);
|
||||
STOREPDU("contextName",
|
||||
- newSVpv(pdu->contextName, pdu->contextNameLen));
|
||||
+ newSVpv(pdu->contextName ? pdu->contextName : "", pdu->contextNameLen));
|
||||
STOREPDU("contextEngineID",
|
||||
- newSVpv((char *) pdu->contextEngineID,
|
||||
+ newSVpv(pdu->contextEngineID ? (char *) pdu->contextEngineID : "",
|
||||
pdu->contextEngineIDLen));
|
||||
STOREPDU("securityEngineID",
|
||||
- newSVpv((char *) pdu->securityEngineID,
|
||||
+ newSVpv(pdu->securityEngineID ? (char *) pdu->securityEngineID : "",
|
||||
pdu->securityEngineIDLen));
|
||||
STOREPDU("securityName",
|
||||
- newSVpv((char *) pdu->securityName, pdu->securityNameLen));
|
||||
+ newSVpv(pdu->securityName ? (char *) pdu->securityName : "", pdu->securityNameLen));
|
||||
} else {
|
||||
STOREPDU("community",
|
||||
- newSVpv((char *) pdu->community, pdu->community_len));
|
||||
+ newSVpv(pdu->community ? (char *) pdu->community : "", pdu->community_len));
|
||||
}
|
||||
|
||||
if (transport && transport->f_fmtaddr) {
|
||||
+3
-7
@@ -6,9 +6,7 @@ LIC_FILES_CHKSUM = "file://README;beginline=3;endline=8;md5=7f7f00ba639ac8e8deb5
|
||||
|
||||
DEPENDS = "openssl libnl pciutils"
|
||||
|
||||
PR = "r1"
|
||||
|
||||
SRC_URI = "${SOURCEFORGE_MIRROR}/net-snmp/net-snmp-${PV}.tar.gz \
|
||||
SRC_URI = "${SOURCEFORGE_MIRROR}/net-snmp/net-snmp-${PV}.zip \
|
||||
file://init \
|
||||
file://snmpd.conf \
|
||||
file://snmptrapd.conf \
|
||||
@@ -16,12 +14,10 @@ SRC_URI = "${SOURCEFORGE_MIRROR}/net-snmp/net-snmp-${PV}.tar.gz \
|
||||
file://snmpd.service \
|
||||
file://snmptrapd.service \
|
||||
file://ifmib.patch \
|
||||
file://net-snmp-5.7.2-fix-CVE-2014-2284.patch \
|
||||
file://net-snmp-5.7.2-fix-CVE-2014-2285.patch \
|
||||
"
|
||||
|
||||
SRC_URI[md5sum] = "5bddd02e2f82b62daa79f82717737a14"
|
||||
SRC_URI[sha256sum] = "09ed31b4cc1f3c0411ef9a16eff79ef3b30d89c32ca46d5a01a41826c4ceb816"
|
||||
SRC_URI[md5sum] = "a2c83518648b0f2a5d378625e45c0e18"
|
||||
SRC_URI[sha256sum] = "ac9105539971f7cfb1456a86d479e18e8a8b3712212595ad40504347ba5843da"
|
||||
|
||||
inherit autotools update-rc.d siteinfo systemd
|
||||
|
||||
Reference in New Issue
Block a user