Greetings -

We have been building OpenSSL on ppc64 and S390X platforms with Linux and have 
found some Configure errors in the 0.9.7 tree when compiling for 64 bit.  These 
errors include:

1. Building as 64bit on ppc64 or s390x is broken

Platforms are 64bit (ppc64 and s390x) both ReadHat and SuSE need both 
__arch64__ manually set on the gcc compile line (or on the Configure line).  We 
must set __arch64__ in order to meet the requirement to have a  64 bit entity 
for SHA_LONG64

2. Building ripemd on ppc64 or s390x is broken

Platforms are 64bit (ppc64 and s390x) both ReadHat and SuSE (both Big Endian 64 
bit machines) and either -D__ILP64__ must be set or no-ripemd set on the 
Configure line or the ripemd tests fails with the last (longest) test value.

The only way we are able to make a build with ripemd configured that passes all 
the tests, is by defining __ILP64__, which has the effect of changing SHA_LONG 
and all its cohorts that are mapped into HASH_LONG from 32 bit entities into a 
64 bit entities

This error affects only 64 bit targets, with gcc.

Versions affected: 0.9.7[fghijkl]

We have tested the attached patch on Linux (RHEL and SuSE) on ppc64, and s390x 
(both 64 bit).

Note that this patch must be added manually as the Configure script is 
different in different versions of OpenSSL-0.9.7?.

New ppc64-gcc entry:

"linux-ppc64",  "gcc:-m64 -D__arch64__ -DNO_ASM -DB_ENDIAN -DTERMIO -O3 
-fomit-frame-pointer -Wall::-D_REENTRANT::-ldl:SIXTY_FOUR_BIT_LONG RC4_CHAR 
RC4_CHUNK DES_RISC1 
DES_UNROLL:asm/linux_ppc64.o:::::::::dlfcn:linux-shared:-fPIC:-m64:.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",


New s390x-gcc entry:

"linux-s390x",    "gcc:-m64 -D__arch64__ -DB_ENDIAN -DTERMIO -DNO_ASM -O3 
-fomit-frame-pointer 
-Wall::-D_REENTRANT::-ldl:SIXTY_FOUR_BIT_LONG::::::::::dlfcn:linux-shared:-fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",


Since I am in the US, I have already submitted this code to the US Bureau of 
Industry and Security and the Encryption Request Coordinator.

Thanks,

Mike

----
Michael Kobar
Senior Software Engineer
Lymeware Corporation
www.lymeware.com


______________________________________________________________________
OpenSSL Project                                 http://www.openssl.org
Development Mailing List                       [email protected]
Automated List Manager                           [EMAIL PROTECTED]

Reply via email to