diff options
-rw-r--r-- | net-mgmt/snmp++/Makefile | 2 | ||||
-rw-r--r-- | net-mgmt/snmp++/files/patch-asn1.cpp | 14 |
2 files changed, 15 insertions, 1 deletions
diff --git a/net-mgmt/snmp++/Makefile b/net-mgmt/snmp++/Makefile index a8565da56bd6..effa8f5d195e 100644 --- a/net-mgmt/snmp++/Makefile +++ b/net-mgmt/snmp++/Makefile @@ -7,7 +7,7 @@ PORTNAME= snmp++ PORTVERSION= 3.2.22 -PORTREVISION= 1 +PORTREVISION= 2 CATEGORIES= net-mgmt MASTER_SITES= http://www.agentpp.com/ DISTNAME= ${PORTNAME}v${PORTVERSION} diff --git a/net-mgmt/snmp++/files/patch-asn1.cpp b/net-mgmt/snmp++/files/patch-asn1.cpp new file mode 100644 index 000000000000..a5ede28c23bf --- /dev/null +++ b/net-mgmt/snmp++/files/patch-asn1.cpp @@ -0,0 +1,14 @@ +--- asn1.cpp.orig 2007-10-26 20:24:08.000000000 +0200 ++++ asn1.cpp 2007-10-26 20:25:34.000000000 +0200 +@@ -550,8 +550,9 @@ unsigned char * asn_parse_length( unsign + memcpy((char *)length, (char *)data + 1, (int)lengthbyte); + *length = ntohl(*length); + // ntohl even on ALPHA (DEC/COMPAQ) 64bit platforms works on 32bit int, +- // whereas long is 64bit - therefore: +-#ifdef __osf__ ++ // whereas long is 64bit. The same is true for FreeBSD (and probably ++ // for lots of other platforms). Therefore: ++#if defined(__osf__) || defined(__FreeBSD__) + *length >>= (8 * ((sizeof(int)) - lengthbyte)); + #else + *length >>= (8 * ((sizeof(long)) - lengthbyte)); |