Fix on 64-bit architerctures. Bump portrevision.

Approved by:	maintainer
Sponsored by:	catpipe Systems ApS
This commit is contained in:
Anton Berezin 2007-10-26 18:31:35 +00:00
parent 628d08e889
commit 5fd91d2d93
2 changed files with 15 additions and 1 deletions

View file

@ -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}

View file

@ -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));