On Thu March 12 2009, The Doctor wrote:
> On Wed, Mar 11, 2009 at 11:51:23AM +0100, Ger Hobbelt wrote:
> > On Tue, Mar 10, 2009 at 8:02 PM, The Doctor <doc...@doctor.nl2k.ab.ca> 
> > wrote:
> > > This is happening again
> > 
> > Holy (beep)!
> > 
> > mmmm... would you do me a favor, please? (and maybe make some others
> > happy in the process as well)
> > 
> > I love an essay, but let's just say that the combination of riding the
> > bleeding edge of development using snapshots, combined with the
> > glaring ability to feed an entire make && make test console output,
> > unfiltered for optimum appreciation, produces a rather, ah,
> > unprofesssional, impression.
> > 
> > To the point: thank you very much for reporting failures; even more
> > thanks when you can strip away obvious (successful?) parts. E.g. all
> > those lucky compiler invocations.
> > 
> > Here's how one might go about, reducing cruft in feedback: here's your
> > report, reduced to maybe-relevant bits -- and I didn't even do this
> > thoroughly; this is the result of a rush job to kill the most obvious
> > clutter only:
> > 
> > > Script started on Tue Mar 10 12:06:29 2009
> > > [r...@ns1 /usr/source/openssl-0.9.8-stable-SNAP-20090310]# cat 
> > > /usr/local/bin/co
> > > nfigopenssl
> > >
> > > ./Configure threads shared experimental-store  enable-capieng enable-cms 
> > > enable-montasm enable-krb5 enable-tlsext enable-seed  enable-fips fipsdso 
> > > enable-camellia enable-rfc3779 enable-gmp enable-mdc2 enable-rc5 
> > > zlib-dynamic --prefix=/usr/ --openssldir=/usr/ BSD-x86-elf "-g -O3 -Wall 
> > > "; make depend
> > >
> > > [r...@ns1 /usr/source/openssl-0.9.8-stable-SNAP-20090310]# make && make 
> > > test
> > [...] && make -e PLATFORM='BSD-x86-elf' PROCESSOR=''  CC='gcc'
> > CFLAG='-fPIC -DOPENSSL_PIC -DZLIB_SHARED -DZLIB -DOPENSSL_THREADS
> > -pthread -D_THREAD_SAFE -D_REENTRANT -DDSO_DLFCN -DHAVE_DLFCN_H -g -O3
> > -Wall  -DL_ENDIAN -DTERMIOS -O3 -fomit-frame-pointer -Wall
> > -DOPENSSL_BN_ASM_PART_WORDS -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT
> > -DSHA1_ASM -DMD5_ASM -DRMD160_ASM -DAES_ASM'
> > AS='gcc' ASFLAG='-fPIC -DOPENSSL_PIC -DZLIB_SHARED -DZLIB
> > -DOPENSSL_THREADS -pthread -D_THREAD_SAFE -D_REENTRANT -DDSO_DLFCN
> > -DHAVE_DLFCN_H -g -O3 -Wall  -DL_ENDIAN -DTERMIOS -O3
> > -fomit-frame-pointer -Wall -DOPENSSL_BN_ASM_PART_WORDS
> > -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DSHA1_ASM -DMD5_ASM
> > -DRMD160_ASM -DAES_ASM -c'                     AR='ar  r'
> > PERL='/usr/bin/perl5' RANLIB='/usr/bin/ranlib'       SDIRS='objects
> > md2 md4 md5 sha mdc2 hmac ripemd  des aes rc2 rc4 rc5 idea bf cast
> > camellia seed  bn ec rsa dsa ecdsa dh ecdh dso engine  buffer bio
> > stack lhash rand err  evp asn1 pem x509 x509v3 conf txt_db pkcs7
> > pkcs12 comp ocsp ui krb5  store cms pqueue' LIBRPATH='/usr/lib'
> > INSTALL_PREFIX=''               INSTALLTOP='/usr' OPENSSLDIR='/usr'
> >  MAKEDEPEND='$${TOP}/util/domd $${TOP} -MD gcc'
> > DEPFLAG='-DOPENSSL_NO_DEPRECATED -DOPENSSL_NO_JPAKE'
> > MAKEDEPPROG='gcc'                       SHARED_LDFLAGS=''
> >  KRB5_INCLUDES='' LIBKRB5=''     EXE_EXT=''
> > SHARED_LIBS='libfips.so.0.9.8 libcrypto.so.0.9.8 libssl.so.0.9.8'
> > SHLIB_EXT='.so.0.9.8' SHLIB_TARGET='bsd-shared'         PEX_LIBS=''
> > EX_LIBS=''  CPUID_OBJ='x86cpuid-elf.o'
> > BN_ASM='bn86-elf.o co86-elf.o mo86-elf.o' DES_ENC='dx86-elf.o
> > yx86-elf.o'       AES_ASM_OBJ='ax86-elf.o'
> > BF_ENC='bx86-elf.o' CAST_ENC='c_enc.o'  RC4_ENC='rx86-elf.o
> > rc4_skey.o' RC5_ENC='r586-elf.o'    SHA1_ASM_OBJ='sx86-elf.o
> > s512sse2-elf.o'                        MD5_ASM_OBJ='mx86-elf.o'
> >                 RMD160_ASM_OBJ='rm86-elf.o'             FIPSLIBDIR=''
> >                  FIPSCANLIB="${FIPSCANLIB:-libfips}"
> > FIPSCANISTERINTERNAL='y'        FIPS_EX_OBJ='../crypto/aes/aes_cfb.o
> > [...]
> > > making all in crypto...
> > >
> > > ( echo "#ifndef MK1MF_BUILD";  echo '  /* auto-generated by 
> > > crypto/Makefile for crypto/cversion.c */';  echo '  #define CFLAGS "gcc 
> > > -fPIC -DOPENSSL_PIC -DZLIB_SHARED -DZLIB -DOPENSSL_THREADS -pthread 
> > > -D_THREAD_SAFE -D_REENTRANT -DDSO_DLFCN -DHAVE_DLFCN_H -g -O3 -Wall  
> > > -DL_ENDIAN -DTERMIOS -O3 -fomit-frame-pointer -Wall 
> > > -DOPENSSL_BN_ASM_PART_WORDS -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT 
> > > -DSHA1_ASM -DMD5_ASM -DRMD160_ASM -DAES_ASM"';  echo '  #define PLATFORM 
> > > "BSD-x86-elf"';  echo "  #define DATE \"`LC_ALL=C LC_TIME=C date`\"";  
> > > echo '#endif' ) >buildinf.h
> > [...]
> > > making all in crypto/objects...
> > [...]
> > > testing...
> > [...]
> > Testing SHA-384 ... passed.
> > 
> > if [ -n "libfips" ]; then  ../util/shlib_wrap.sh ./fips_shatest <
> > SHAmix.r | diff -w SHAmix.x - ;  fi
> > 
> > ERROR:2d06c071:lib=45,func=108,reason=113:file=fips.c:line=276:
> > 
> > 1,129d0
> > 
> > < [L = 64]
> > <
> > < Len = 16
> > < Msg = 98a1
> > < MD = 
> > 74d78642f70ca830bec75fc60a585917e388cfa4cd1d23daab1c4d9ff1010cac3e67275df64db5a6a7c7d0fda24f1fc3eb272678a7c8becff6743ee812129078
> > <
> > < Len = 104
> > < Msg = 35a37a46df4ccbadd815942249
> > < MD = 
> > 6f5589ea195e745654885d50de687d7fe682affc8da1fb09e681540525f04ecb93022361a27759b9e272c883564223c5e4ecafeb0daaf1abce6caa4bd4153379
> > <
> > < Len = 352
> > < Msg = 
> > a93aed0fa5e163a82c9a934aebaab8180edf7de0b32f0fe99f9c75ec305b24609334cefa372c7c758262dc8f
> > < MD = 
> > 66a16799d606c569d2fcd70d7d8321ec90ef61711481aaf7d747744ebfd08ec2e7aead49429af7b4ceec6d8e147ed018e034efbe07982699e818db5fc4b1d71a
> > <
> > < Len = 1016
> > < Msg = 
> > 433e88eb2f8aba562d15c18126fbdffb81d5d6c9397fa052321f5f78cd629708ba099b540da5451e949eeab8687a8d6ac35c531411cb37144ab5ff6a7eb46f1ab28fbcd2ea0444cd87c57bf7d3c02952dba3d3987da07622c16e7c086d90e88ad3d9d4afee301d2bad915d868f54197b70b23c9fa385c443404fbc9abf7e6a
> > < MD = 
> > 790bc4844e9aeef8938df0ccda17890556a4151817111a526a88919cfb172f0b03c216080c1b60210eb1942097f17b6d0691bf5b018b6d959198d6a694b922c9
> > <
> > ... and so on, and so on...
> > ... same alarming output for:
> > < [L = 48]
> > < [L = 32]
> > < [L = 28]
> > < [L = 20]
> > ... after which 'make test' aborts with error 1.
> > 
> > 
> > 
> > See how this looks much more palatable?
> > 
> > Extra kudos, by the way, when you've diff-compared your last working
> > snapshot sourcetree and the this one or further attempts at helping to
> > resolve this. Of course, there's always the alternative of hiring one
> > of the members of the core development team (or myself) as I'm sure
> > you'll find the tariffs very reasonable.
> > Always glad to help out a fellow software physician.
> > 
> > 
> > -- 
> > Met vriendelijke groeten / Best regards,
> > 
> > Ger Hobbelt
> > 
> 
> 
> Getting to point
> 
> Here is the part of the code in question:
> 
> #ifdef OPENSSL_IA32_SSE2
>         if ((OPENSSL_ia32cap & (1<<25|1<<26)) != (1<<25|1<<26))
>             {
>             FIPSerr(FIPS_F_FIPS_MODE_SET,FIPS_R_UNSUPPORTED_PLATFORM);
>             fips_selftest_fail = 1;
>             ret = 0;
>             goto end;
>             }
> #endif 
> 
> Now FreeBSD i386 is part of the SSE2 issue.
> 
> Please explain why this is happening and a fix tat can resolve this issue.
>

What version of gcc are you using?

Reason 1: *BSD systems are often using a series 2 gcc, many of which
did not support the SSE2 instructions.
 
Reason 2: In early support for SSE2 there was a bug that required a
128 bit alignment (16 bytes).

Mike
> 
> -- 
> Member - Liberal International        This is doc...@nl2k.ab.ca
> Ici doc...@nl2k.ab.ca God, Queen and country! Beware Anti-Christ rising!
> Never Satan President Republic!
> Point to http://tv.cityonahillproductions.com/ 
> 


______________________________________________________________________
OpenSSL Project                                 http://www.openssl.org
User Support Mailing List                    openssl-users@openssl.org
Automated List Manager                           majord...@openssl.org

Reply via email to