From cf01e16940d82f4e80c5061d02e7d72bf7633652 Mon Sep 17 00:00:00 2001 From: Ryan Steinmetz Date: Wed, 7 Dec 2011 22:58:31 +0000 Subject: [PATCH] - Fix problem that was reintroduced with the upgrade to 5.7.1 [1] - Merge in upstream commits to resolve a handful of issues - 1421924b4852142192c5bb9e93ddbfed69e908fa [1] - 97172b311d20f4441c7a7e90092b59c1e0da99f7 - 5fd26e4fa3e000ea9c81c38ab975b7946efe2157 - cf82b894b2217c26edc6f1356351c932415604e2 - Bump PORTREVISION PR: ports/163069 [1] Reported by: Ryan Frederick [1] Obtained from: upstream repo Feature safe: yes --- net-mgmt/net-snmp/Makefile | 2 +- ...t-mibgroup-hardware-fsys-fsys_getfsstats.c | 10 ++++++-- .../files/patch-agent__helpers__old_api.c | 11 +++++++++ ..._mibgroup__host__data_access__swinst_apt.c | 11 +++++++++ .../net-snmp/files/patch-snmplib__snmp_api.c | 23 +++++++++++++++++++ 5 files changed, 54 insertions(+), 3 deletions(-) create mode 100644 net-mgmt/net-snmp/files/patch-agent__helpers__old_api.c create mode 100644 net-mgmt/net-snmp/files/patch-agent__mibgroup__host__data_access__swinst_apt.c create mode 100644 net-mgmt/net-snmp/files/patch-snmplib__snmp_api.c diff --git a/net-mgmt/net-snmp/Makefile b/net-mgmt/net-snmp/Makefile index 2f7be022d046..9f918f9ed5d7 100644 --- a/net-mgmt/net-snmp/Makefile +++ b/net-mgmt/net-snmp/Makefile @@ -7,7 +7,7 @@ PORTNAME= snmp PORTVERSION= 5.7.1 -PORTREVISION= 1 +PORTREVISION= 2 CATEGORIES= net-mgmt ipv6 MASTER_SITES= SF/net-${PORTNAME}/net-${PORTNAME}/${PORTVERSION} PKGNAMEPREFIX= net- diff --git a/net-mgmt/net-snmp/files/patch-agent-mibgroup-hardware-fsys-fsys_getfsstats.c b/net-mgmt/net-snmp/files/patch-agent-mibgroup-hardware-fsys-fsys_getfsstats.c index 97fe092541a5..a12b8bb30e4d 100644 --- a/net-mgmt/net-snmp/files/patch-agent-mibgroup-hardware-fsys-fsys_getfsstats.c +++ b/net-mgmt/net-snmp/files/patch-agent-mibgroup-hardware-fsys-fsys_getfsstats.c @@ -1,5 +1,5 @@ ---- ./agent/mibgroup/hardware/fsys/fsys_getfsstats.c.orig 2011-11-24 12:01:07.000000000 -0500 -+++ ./agent/mibgroup/hardware/fsys/fsys_getfsstats.c 2011-11-24 12:01:20.000000000 -0500 +--- ./agent/mibgroup/hardware/fsys/fsys_getfsstats.c.orig 2011-09-28 00:53:47.000000000 -0400 ++++ ./agent/mibgroup/hardware/fsys/fsys_getfsstats.c 2011-12-07 17:33:47.000000000 -0500 @@ -150,9 +150,9 @@ if (!entry) continue; @@ -12,3 +12,9 @@ entry->device[sizeof(entry->device)-1] = '\0'; entry->units = stats[i].f_bsize; /* or f_frsize */ entry->size = stats[i].f_blocks; +@@ -175,4 +175,5 @@ + } + netsnmp_fsys_calculate32(entry); + } ++ free(stats); + } diff --git a/net-mgmt/net-snmp/files/patch-agent__helpers__old_api.c b/net-mgmt/net-snmp/files/patch-agent__helpers__old_api.c new file mode 100644 index 000000000000..b41f1804bb1f --- /dev/null +++ b/net-mgmt/net-snmp/files/patch-agent__helpers__old_api.c @@ -0,0 +1,11 @@ +--- ./agent/helpers/old_api.c.orig 2011-12-07 17:43:45.000000000 -0500 ++++ ./agent/helpers/old_api.c 2011-12-07 17:44:06.000000000 -0500 +@@ -127,7 +127,7 @@ + */ + if (netsnmp_register_handler(reginfo) != MIB_REGISTERED_OK) { + /** netsnmp_handler_registration_free(reginfo); already freed */ +- SNMP_FREE(vp); ++ /* SNMP_FREE(vp); already freed */ + } + } + return SNMPERR_SUCCESS; diff --git a/net-mgmt/net-snmp/files/patch-agent__mibgroup__host__data_access__swinst_apt.c b/net-mgmt/net-snmp/files/patch-agent__mibgroup__host__data_access__swinst_apt.c new file mode 100644 index 000000000000..7ae8ced0a844 --- /dev/null +++ b/net-mgmt/net-snmp/files/patch-agent__mibgroup__host__data_access__swinst_apt.c @@ -0,0 +1,11 @@ +--- ./agent/mibgroup/host/data_access/swinst_apt.c.orig 2011-12-07 17:42:08.000000000 -0500 ++++ ./agent/mibgroup/host/data_access/swinst_apt.c 2011-12-07 17:42:15.000000000 -0500 +@@ -95,7 +95,7 @@ + entry->swDate_len = 8; + memcpy(entry->swDate, "\0\0\1\1\0\0\0\0", 8); + } +- fclose(p); ++ pclose(p); + DEBUGMSGTL(("swinst:load:arch"," loaded %d entries\n", + CONTAINER_SIZE(container))); + diff --git a/net-mgmt/net-snmp/files/patch-snmplib__snmp_api.c b/net-mgmt/net-snmp/files/patch-snmplib__snmp_api.c new file mode 100644 index 000000000000..e3ee857dc206 --- /dev/null +++ b/net-mgmt/net-snmp/files/patch-snmplib__snmp_api.c @@ -0,0 +1,23 @@ +--- ./snmplib/snmp_api.c.orig 2011-12-07 17:39:10.000000000 -0500 ++++ ./snmplib/snmp_api.c 2011-12-07 17:46:39.000000000 -0500 +@@ -704,6 +704,8 @@ + + netsnmp_ds_set_int(NETSNMP_DS_LIBRARY_ID, + NETSNMP_DS_LIB_HEX_OUTPUT_LENGTH, 16); ++ netsnmp_ds_set_int(NETSNMP_DS_LIBRARY_ID, NETSNMP_DS_LIB_RETRIES, ++ DEFAULT_RETRIES); + + #ifdef NETSNMP_USE_REVERSE_ASNENCODING + netsnmp_ds_set_boolean(NETSNMP_DS_LIBRARY_ID, +@@ -6032,8 +6034,9 @@ + */ + requests++; + for (rp = slp->internal->requests; rp; rp = rp->next_request) { +- if ((!timerisset(&earliest) +- || (timercmp(&rp->expire, &earliest, <)))) { ++ if (!timerisset(&earliest) ++ || (timerisset(&rp->expire) ++ && timercmp(&rp->expire, &earliest, <))) { + earliest = rp->expire; + DEBUGMSG(("verbose:sess_select","(to in %d.%06d sec) ", + (int)earliest.tv_sec, (int)earliest.tv_usec));