aboutsummaryrefslogtreecommitdiff
path: root/net-mgmt/net-snmp-devel
diff options
context:
space:
mode:
authorMaxime Henrion <mux@FreeBSD.org>2007-02-15 12:29:33 +0000
committerMaxime Henrion <mux@FreeBSD.org>2007-02-15 12:29:33 +0000
commit061da8663df7f41778195cd86be84ffbfddd6d47 (patch)
treea91ae2c64702c6cbe8838e6424aa75081979b63c /net-mgmt/net-snmp-devel
parentdfc0ce2db31c49f2bf300bed9357d8dbb32ddfcb (diff)
downloadports-061da8663df7f41778195cd86be84ffbfddd6d47.tar.gz
ports-061da8663df7f41778195cd86be84ffbfddd6d47.zip
Add a patch taken from CVS to fix huge memory leaks in the code for
embedded Perl agents, and bump PORTREVISION. Reviewed by: pav Approved by: maintainer timeout
Notes
Notes: svn path=/head/; revision=185231
Diffstat (limited to 'net-mgmt/net-snmp-devel')
-rw-r--r--net-mgmt/net-snmp-devel/Makefile2
-rw-r--r--net-mgmt/net-snmp-devel/files/patch-agent.xs36
2 files changed, 37 insertions, 1 deletions
diff --git a/net-mgmt/net-snmp-devel/Makefile b/net-mgmt/net-snmp-devel/Makefile
index 11aaceda9c23..798559723bc1 100644
--- a/net-mgmt/net-snmp-devel/Makefile
+++ b/net-mgmt/net-snmp-devel/Makefile
@@ -7,7 +7,7 @@
PORTNAME= snmp
PORTVERSION= 5.2.3
-PORTREVISION= 3
+PORTREVISION= 4
CATEGORIES= net-mgmt ipv6
MASTER_SITES= ${MASTER_SITE_SOURCEFORGE}
MASTER_SITE_SUBDIR= net-snmp
diff --git a/net-mgmt/net-snmp-devel/files/patch-agent.xs b/net-mgmt/net-snmp-devel/files/patch-agent.xs
new file mode 100644
index 000000000000..15862d39d7c2
--- /dev/null
+++ b/net-mgmt/net-snmp-devel/files/patch-agent.xs
@@ -0,0 +1,36 @@
+--- perl/agent/agent.xs.old 2006/09/01 21:05:50 5.15.2.3
++++ perl/agent/agent.xs 2007/01/06 00:35:12 5.15.2.4
+@@ -569,7 +569,7 @@
+ arg = newSVrv(rarg, "netsnmp_oidPtr");
+ sv_setiv(arg, (IV) o);
+
+- XPUSHs(rarg);
++ XPUSHs(sv_2mortal(rarg));
+
+ PUTBACK;
+ i = perl_call_pv("NetSNMP::OID::newwithptr", G_SCALAR);
+@@ -608,7 +608,7 @@
+ arg = newSVrv(rarg, "netsnmp_oidPtr");
+ sv_setiv(arg, (IV) o);
+
+- XPUSHs(rarg);
++ XPUSHs(sv_2mortal(rarg));
+
+ PUTBACK;
+ i = perl_call_pv("NetSNMP::OID::newwithptr", G_SCALAR);
+@@ -997,11 +997,13 @@
+ rarg = newSViv(0);
+ arg = newSVrv(rarg, "NetSNMP::agent::netsnmp_request_infoPtr");
+ sv_setiv(arg, (IV) request);
+- ST(0) = rarg;
++ RETVAL = rarg;
+ } else {
+- ST(0) = &sv_undef;
++ RETVAL = &sv_undef;
+ }
+ }
++ OUTPUT:
++ RETVAL
+
+ MODULE = NetSNMP::agent PACKAGE = NetSNMP::agent::netsnmp_agent_request_info PREFIX = narqi_
+