[92268] trunk/dports/devel/openssl

jmr at macports.org jmr at macports.org
Mon Apr 23 08:38:13 PDT 2012


Revision: 92268
          https://trac.macports.org/changeset/92268
Author:   jmr at macports.org
Date:     2012-04-23 08:38:12 -0700 (Mon, 23 Apr 2012)
Log Message:
-----------
openssl: fix build on ppc (#34135, maintainer timeout)

Modified Paths:
--------------
    trunk/dports/devel/openssl/Portfile

Added Paths:
-----------
    trunk/dports/devel/openssl/files/openssl_patchset_22455.diff

Modified: trunk/dports/devel/openssl/Portfile
===================================================================
--- trunk/dports/devel/openssl/Portfile	2012-04-23 14:51:32 UTC (rev 92267)
+++ trunk/dports/devel/openssl/Portfile	2012-04-23 15:38:12 UTC (rev 92268)
@@ -29,7 +29,10 @@
 
 depends_lib         port:zlib
 
-patchfiles          patch-Makefile.org.diff patch-crypto-Makefile.diff patch-bn_internal.pod.diff patch-Configure.diff
+patchfiles          patch-Makefile.org.diff patch-crypto-Makefile.diff \
+                    patch-bn_internal.pod.diff patch-Configure.diff \
+                    openssl_patchset_22455.diff
+# openssl_patchset_22455.diff is for ticket #34135
 post-patch {
     # Ensure that the correct compiler is used
     reinplace "s|cc:|${configure.cc}:|" ${worksrcpath}/Configure

Added: trunk/dports/devel/openssl/files/openssl_patchset_22455.diff
===================================================================
--- trunk/dports/devel/openssl/files/openssl_patchset_22455.diff	                        (rev 0)
+++ trunk/dports/devel/openssl/files/openssl_patchset_22455.diff	2012-04-23 15:38:12 UTC (rev 92268)
@@ -0,0 +1,43 @@
+Index: openssl/crypto/evp/e_rc4_hmac_md5.c
+RCS File: /v/openssl/cvs/openssl/crypto/evp/e_rc4_hmac_md5.c,v
+rcsdiff -q -kk '-r1.1.2.5' '-r1.1.2.6' -u '/v/openssl/cvs/openssl/crypto/evp/e_rc4_hmac_md5.c,v' 2>/dev/null
+--- crypto/evp/e_rc4_hmac_md5.c	2012/04/18 17:51:33	1.1.2.5
++++ crypto/evp/e_rc4_hmac_md5.c	2012/04/19 20:43:02	1.1.2.6
+@@ -121,6 +121,7 @@
+ 		md5_off = MD5_CBLOCK-key->md.num,
+ 		blocks;
+ 	unsigned int l;
++	extern unsigned int OPENSSL_ia32cap_P[];
+ #endif
+ 	size_t	plen = key->payload_length;
+ 
+@@ -132,7 +133,8 @@
+ 		/* cipher has to "fall behind" */
+ 		if (rc4_off>md5_off) md5_off+=MD5_CBLOCK;
+ 
+-		if (plen>md5_off && (blocks=(plen-md5_off)/MD5_CBLOCK)) {
++		if (plen>md5_off && (blocks=(plen-md5_off)/MD5_CBLOCK) &&
++		    (OPENSSL_ia32cap_P[0]&(1<<20))==0) {
+ 			MD5_Update(&key->md,in,md5_off);
+ 			RC4(&key->ks,rc4_off,in,out);
+ 
+@@ -172,7 +174,8 @@
+ 		if (md5_off>rc4_off)	rc4_off += 2*MD5_CBLOCK;
+ 		else			rc4_off += MD5_CBLOCK;
+ 
+-		if (len>rc4_off && (blocks=(len-rc4_off)/MD5_CBLOCK)) {
++		if (len>rc4_off && (blocks=(len-rc4_off)/MD5_CBLOCK) &&
++		    (OPENSSL_ia32cap_P[0]&(1<<20))==0) {
+ 			RC4(&key->ks,rc4_off,in,out);
+ 			MD5_Update(&key->md,out,md5_off);
+ 
+@@ -289,8 +292,6 @@
+ 
+ const EVP_CIPHER *EVP_rc4_hmac_md5(void)
+ 	{
+-	extern unsigned int OPENSSL_ia32cap_P[];
+-	/* RC4_CHAR flag ------------vvvvv */
+-	return(OPENSSL_ia32cap_P[0]&(1<<20) ? NULL : &r4_hmac_md5_cipher);
++	return(&r4_hmac_md5_cipher);
+ 	}
+ #endif
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.macosforge.org/pipermail/macports-changes/attachments/20120423/0a427486/attachment.html>


More information about the macports-changes mailing list