Re: [openssl.org #3269] 1.0.2 beta1 on UnixWare
On Thu, 27 Feb 2014, Andy Polyakov via RT wrote: | Comment first two line and replace elsif with if, i.e. | | #if (defined($base) $sym eq OPENSSL_ia32cap_P !$::macosx) | #{ ::lea($dst,::DWP($sym-$reflabel,$base));} | if (($::pic ($::elf || $::aout)) || $::macosx) | { if (!defined($base)) | | What happens? | | The build continues. | | There were a number of commits that address even this problem. I'd | suggest to checkout or wait for next 1.0.2 snapshot and test. Having not yet figured out how to update all my OpenSSL trees after the conversion to git, I downloaded openssl-1.0.2-stable-SNAP-20140228.tar.gz and tested. All test now pass on UnixWare 7.1.4 and OpenServer 6 using native compilers. Thanks. -- Tim RiceMultitalents(707) 456-1146 t...@multitalents.net __ OpenSSL Project http://www.openssl.org Development Mailing List openssl-dev@openssl.org Automated List Manager majord...@openssl.org
[openssl.org #3269] 1.0.2 beta1 on UnixWare
Platform: UnixWare 7.1.4 MP4 OpenSSL 1.0.2 beta1 It looks like the latest assembler changes to sha and aes break on USL assemblers. -- making all in crypto/sha... cc -I.. -I../.. -I../modes -I../asn1 -I../evp -I../../include -DOPENSSL_THREADS -Kthread -DDSO_DLFCN -DHAVE_DLFCN_H -D__i386__ -O -DFILIO_H -Kalloca -DOPENSSL_BN_ASM_PART_WORDS -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DMD5_ASM -DRMD160_ASM -DAES_ASM -DWHIRLPOOL_ASM -DGHASH_ASM -c -o sha256-586.o sha256-586.s UX:as: ERROR: sha256-586.s:28:defined relocatable values from the same section required, op - *** Error code 1 (bu21) UX:make: ERROR: fatal error. -- -- making all in crypto/aes... cc -I.. -I../.. -I../modes -I../asn1 -I../evp -I../../include -DOPENSSL_THREADS -Kthread -DDSO_DLFCN -DHAVE_DLFCN_H -D__i386__ -O -DFILIO_H -Kalloca -DOPENSSL_BN_ASM_PART_WORDS -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DMD5_ASM -DRMD160_ASM -DAES_ASM -DWHIRLPOOL_ASM -DGHASH_ASM -c -o aes-586.o aes-586.s UX:as: ERROR: aes-586.s:1003:defined relocatable values from the same section required, op - UX:as: ERROR: aes-586.s:2195:defined relocatable values from the same section required, op - UX:as: ERROR: aes-586.s:2251:defined relocatable values from the same section required, op - *** Error code 1 (bu21) UX:make: ERROR: fatal error. -- It does not seem to like lines like lealOPENSSL_ia32cap_P-.L001K256(%ebp),%edx Thanks for your consideration. -- Tim RiceMultitalents(707) 456-1146 t...@multitalents.net __ OpenSSL Project http://www.openssl.org Development Mailing List openssl-dev@openssl.org Automated List Manager majord...@openssl.org
Re: [openssl.org #3269] 1.0.2 beta1 on UnixWare
On Wed, 26 Feb 2014, Andy Polyakov via RT wrote: | Platform: UnixWare 7.1.4 MP4 | OpenSSL 1.0.2 beta1 | | It looks like the latest assembler changes to sha and aes break | on USL assemblers. | | -- | making all in crypto/sha... | cc -I.. -I../.. -I../modes -I../asn1 -I../evp -I../../include -DOPENSSL_THREADS -Kthread -DDSO_DLFCN -DHAVE_DLFCN_H -D__i386__ -O -DFILIO_H -Kalloca -DOPENSSL_BN_ASM_PART_WORDS -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DMD5_ASM -DRMD160_ASM -DAES_ASM -DWHIRLPOOL_ASM -DGHASH_ASM -c -o sha256-586.o sha256-586.s | UX:as: ERROR: sha256-586.s:28:defined relocatable values from the same section required, op - | *** Error code 1 (bu21) | UX:make: ERROR: fatal error. | -- | | http://git.openssl.org/gitweb/?p=openssl.git;a=commitdiff;h=d00ae7cf7019847c5d35728b01b22461a01bb336 I can confirm that commit works here. | -- | making all in crypto/aes... | cc -I.. -I../.. -I../modes -I../asn1 -I../evp -I../../include -DOPENSSL_THREADS -Kthread -DDSO_DLFCN -DHAVE_DLFCN_H -D__i386__ -O -DFILIO_H -Kalloca -DOPENSSL_BN_ASM_PART_WORDS -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DMD5_ASM -DRMD160_ASM -DAES_ASM -DWHIRLPOOL_ASM -DGHASH_ASM -c -o aes-586.o aes-586.s | UX:as: ERROR: aes-586.s:1003:defined relocatable values from the same section required, op - | UX:as: ERROR: aes-586.s:2195:defined relocatable values from the same section required, op - | UX:as: ERROR: aes-586.s:2251:defined relocatable values from the same section required, op - | *** Error code 1 (bu21) | UX:make: ERROR: fatal error. | -- | | But how did it work in 1.0.0? I mean this is not code that appeared in | 1.0.2. Interesting. I've been running a 1.0.1f-dev version on one of my UnixWare 7.1.4 boxes for quite soem time now. $ /opt/bin/openssl version -a OpenSSL 1.0.1f-dev 14 May 2013 built on: Mon May 27 15:49:18 PDT 2013 platform: unixware-7 options: bn(64,32) rc4(8x,mmx) des(ptr,risc1,16,long) idea(int) blowfish(idx) compiler: cc -Kpic -DOPENSSL_PIC -DZLIB_SHARED -DZLIB -DOPENSSL_THREADS -Kthread -DDSO_DLFCN -DHAVE_DLFCN_H -Kpentium_pro -D__i386__ -O -DFILIO_H -Kalloca -DOPENSSL_BN_ASM_PART_WORDS -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DMD5_ASM -DRMD160_ASM -DAES_ASM -DWHIRLPOOL_ASM -DGHASH_ASM OPENSSLDIR: /etc/ssl crypto/aes/asm/aes-586.pl has not changes between the version I am running and the released 1.0.1f but gdiff -ru openssl-1.0.1f/crypto/aes/asm/aes-586.pl \ openssl-1.0.2-beta1/crypto/aes/asm/aes-586.pl produces a 496 line file. Doing a diff -u on the crypto/aes/aes-586.s files shows the changes that chokes the assembler. --- Xopenssl-1.0.1f/crypto/aes/aes-586.s2014-02-24 23:09:12.771751012 -0800 +++ openssl-1.0.2-beta1/crypto/aes/aes-586.s2014-02-24 22:07:47.869751012 -0800 @@ -994,8 +1000,7 @@ call.L004pic_point .L004pic_point: popl%ebp - leal_GLOBAL_OFFSET_TABLE_+[.-.L004pic_point](%ebp),%eax - movlOPENSSL_ia32cap_P@GOT(%eax),%eax + lealOPENSSL_ia32cap_P-.L004pic_point(%ebp),%eax leal.LAES_Te-.L004pic_point(%ebp),%ebp leal764(%esp),%ebx subl%ebp,%ebx @@ -2185,8 +2192,7 @@ call.L010pic_point .L010pic_point: popl%ebp - leal_GLOBAL_OFFSET_TABLE_+[.-.L010pic_point](%ebp),%eax - movlOPENSSL_ia32cap_P@GOT(%eax),%eax + lealOPENSSL_ia32cap_P-.L010pic_point(%ebp),%eax leal.LAES_Td-.L010pic_point(%ebp),%ebp leal764(%esp),%ebx subl%ebp,%ebx @@ -2242,8 +2248,7 @@ call.L013pic_point .L013pic_point: popl%ebp - leal_GLOBAL_OFFSET_TABLE_+[.-.L013pic_point](%ebp),%eax - movlOPENSSL_ia32cap_P@GOT(%eax),%eax + lealOPENSSL_ia32cap_P-.L013pic_point(%ebp),%eax cmpl$0,40(%esp) leal.LAES_Te-.L013pic_point(%ebp),%ebp jne .L014picked_te Thanks for all your help. | | It does not seem to like lines like | lealOPENSSL_ia32cap_P-.L001K256(%ebp),%edx | | Yes, it seems so. | -- Tim RiceMultitalents(707) 456-1146 t...@multitalents.net __ OpenSSL Project http://www.openssl.org Development Mailing List openssl-dev@openssl.org Automated List Manager majord...@openssl.org
Re: [openssl.org #3269] 1.0.2 beta1 on UnixWare
On Wed, 26 Feb 2014, Tim Rice wrote: | On Wed, 26 Feb 2014, Andy Polyakov via RT wrote: | | #if (defined($base) $sym eq OPENSSL_ia32cap_P !$::macosx) | #{ ::lea($dst,::DWP($sym-$reflabel,$base));} | if (($::pic ($::elf || $::aout)) || $::macosx) | { if (!defined($base)) | | What happens? | | The build continues. | | Now to track down the next error. | I took a couple @'s out of Makefile to get more info | .. | making all in crypto/cmac... | if [ -n libcrypto.so.1.0.0 libssl.so.1.0.0 ]; then \ | (cd ..; make libcrypto.so.1.0.0); \ | fi | [ -z ] || cc -Kpic -DOPENSSL_PIC -DZLIB_SHARED -DZLIB -DOPENSSL_THREADS -Kthread -DDSO_DLFCN -DHAVE_DLFCN_H -Kpentium_pro -D__i386__ -O -DFILIO_H -Kalloca -DOPENSSL_BN_ASM_PART_WORDS -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DMD5_ASM -DRMD160_ASM -DAES_ASM -DWHIRLPOOL_ASM -DGHASH_ASM -Iinclude \ | -DFINGERPRINT_PREMAIN_DSO_LOAD -o fips_premain_dso \ | fips_premain.c fipscanister.o \ | libcrypto.a -lsocket -lnsl | if [ svr5-shared != ]; then \ | if [ = libcrypto ]; then \ | FIPSLD_LIBCRYPTO=libcrypto.a ; \ | FIPSLD_CC=cc; CC=/usr/local/ssl/fips-2.0/bin/fipsld; \ | export CC FIPSLD_CC FIPSLD_LIBCRYPTO; \ | fi; \ | make -e SHLIBDIRS=crypto CC=${CC:-cc} build-shared; \ | touch -c fips_premain_dso; \ | else \ | echo There's no support for shared libraries on this platform 2; \ | exit 1; \ | fi | *** Error code 1 (bu21) | UX:make: ERROR: fatal error. | .. | | Still looking. It turns out to be the touch -c. It returns 1 on UnixWare if the file does not exist. --- Makefile.org.old2014-02-03 07:00:13.0 -0800 +++ Makefile.org2014-02-26 13:55:36.430461665 -0800 @@ -303,7 +303,7 @@ export CC FIPSLD_CC FIPSLD_LIBCRYPTO; \ fi; \ $(MAKE) -e SHLIBDIRS=crypto CC=$${CC:-$(CC)} build-shared; \ - touch -c fips_premain_dso$(EXE_EXT); \ + touch -c fips_premain_dso$(EXE_EXT) ||:; \ else \ echo There's no support for shared libraries on this platform 2; \ exit 1; \ Tests pass now. -- Tim RiceMultitalents t...@multitalents.net __ OpenSSL Project http://www.openssl.org Development Mailing List openssl-dev@openssl.org Automated List Manager majord...@openssl.org
[openssl.org #2154] OpenSSL 0.9.8 on UnixWare
CVS OpenSSL_0_9_8-stable pulled 20 Jan 2010 On UnixWare 7.1.4 w/ MP4, OpenSSL 0.9.8 builds and tests fine with both static and dynamic libs. . OpenSSL 0.9.8m-dev 20 Jan 2010 built on: Sat Jan 23 18:42:02 PST 2010 platform: unixware-7 options: bn(64,32) md2(char) rc4(idx,int) des(ptr,risc1,16,long) idea(int) blowfish(idx) compiler: cc -Kpic -DOPENSSL_PIC -DZLIB -DOPENSSL_THREADS -Kthread -DDSO_DLFCN -DHAVE_DLFCN_H -Kpentium_pro -D__i386__ -O -DFILIO_H -Kalloca -DOPENSSL_BN_ASM_PART_WORDS -DSHA1_ASM -DMD5_ASM -DRMD160_ASM -DAES_ASM OPENSSLDIR: /etc/ssl . On UnixWare 7.1.1 w/ MP5, OpenSSL 0.9.8 builds and tests fine with both static and dynamic libs. . OpenSSL 0.9.8m-dev 20 Jan 2010 built on: Sat Jan 23 18:43:24 PST 2010 platform: unixware-7 options: bn(64,32) md2(char) rc4(idx,int) des(ptr,risc1,16,long) idea(int) blowfish(idx) compiler: cc -Kpic -DOPENSSL_PIC -DZLIB -DOPENSSL_THREADS -Kthread -DDSO_DLFCN -DHAVE_DLFCN_H -D__i386__ -O -DFILIO_H -Kalloca -DOPENSSL_BN_ASM_PART_WORDS -DSHA1_ASM -DMD5_ASM -DRMD160_ASM -DAES_ASM OPENSSLDIR: /etc/ssl . -- Tim RiceMultitalents(707) 887-1469 t...@multitalents.net __ OpenSSL Project http://www.openssl.org Development Mailing List openssl-dev@openssl.org Automated List Manager majord...@openssl.org
Re: [openssl.org #2153] OpenSSL 1.0.0 on UnixWare
On Sun, 24 Jan 2010, The default queue via RT wrote: CVS OpenSSL_1_0_0-stable pulled 20 Jan 2010 On UnixWare 7.1.4 w/ MP4, If I build OpenSSL without static libs it builds and tests fine. . ALL TESTS SUCCESSFUL. OPENSSL_CONF=apps/openssl.cnf util/opensslwrap.sh version -a OpenSSL 1.0.0-beta6-dev 20 Jan 2010 built on: Sat Jan 23 11:10:13 PST 2010 platform: unixware-7 options: bn(64,32) rc4(1x,char) des(ptr,risc1,16,long) idea(int) blowfish(idx) compiler: cc -DZLIB -DOPENSSL_THREADS -Kthread -DDSO_DLFCN -DHAVE_DLFCN_H -Kpentium_pro -D__i386__ -O -DFILIO_H -Kalloca -DOPENSSL_BN_ASM_PART_WORDS -DOPENSSL_BN_ASM_MONT -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DMD5_ASM -DRMD160_ASM -DAES_ASM -DWHIRLPOOL_ASM OPENSSLDIR: /etc/ssl . If I add the shared option to config it will build but tests fail. . enveloped content test streaming S/MIME format, 3 recipients, keyid: OK enveloped content test streaming PEM format, KEK: verify error *** Error code 1 (bu21) UX:make: ERROR: fatal error. . It looks like I've uncovered a compiler optimization bug. If I remove the -Kpentium_pro option all test pass. .. ALL TESTS SUCCESSFUL. OPENSSL_CONF=apps/openssl.cnf util/opensslwrap.sh version -a OpenSSL 1.0.0-beta6-dev 20 Jan 2010 built on: Mon Jan 25 09:09:25 PST 2010 platform: unixware-7 options: bn(64,32) rc4(1x,char) des(ptr,risc1,16,long) idea(int) blowfish(idx) compiler: cc -Kpic -DOPENSSL_PIC -DZLIB -DOPENSSL_THREADS -Kthread -DDSO_DLFCN -DHAVE_DLFCN_H -D__i386__ -O -DFILIO_H -Kalloca -DOPENSSL_BN_ASM_PART_WORDS -DOPENSSL_BN_ASM_MONT -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DMD5_ASM -DRMD160_ASM -DAES_ASM -DWHIRLPOOL_ASM OPENSSLDIR: /etc/ssl .. For reference Optimizing C Compilation System (CCS) 4.2 05/13/08 (uw714mp4.bl3h) Now I need to come up with a small reproducable test case and report it to the vendor. -- Tim RiceMultitalents(707) 887-1469 t...@multitalents.net __ OpenSSL Project http://www.openssl.org Development Mailing List openssl-dev@openssl.org Automated List Manager majord...@openssl.org
[openssl.org #2153] OpenSSL 1.0.0 on UnixWare
CVS OpenSSL_1_0_0-stable pulled 20 Jan 2010 On UnixWare 7.1.4 w/ MP4, If I build OpenSSL without static libs it builds and tests fine. . ALL TESTS SUCCESSFUL. OPENSSL_CONF=apps/openssl.cnf util/opensslwrap.sh version -a OpenSSL 1.0.0-beta6-dev 20 Jan 2010 built on: Sat Jan 23 11:10:13 PST 2010 platform: unixware-7 options: bn(64,32) rc4(1x,char) des(ptr,risc1,16,long) idea(int) blowfish(idx) compiler: cc -DZLIB -DOPENSSL_THREADS -Kthread -DDSO_DLFCN -DHAVE_DLFCN_H -Kpentium_pro -D__i386__ -O -DFILIO_H -Kalloca -DOPENSSL_BN_ASM_PART_WORDS -DOPENSSL_BN_ASM_MONT -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DMD5_ASM -DRMD160_ASM -DAES_ASM -DWHIRLPOOL_ASM OPENSSLDIR: /etc/ssl . If I add the shared option to config it will build but tests fail. . enveloped content test streaming S/MIME format, 3 recipients, keyid: OK enveloped content test streaming PEM format, KEK: verify error *** Error code 1 (bu21) UX:make: ERROR: fatal error. . I've attached uw714-shared-testlog.gz On UnixWare 7.1.1 w/ MP5, OpenSSL fails to build because of the #define _XOPEN_SOURCE 500 line in test/ssltest.c (really ssl/ssltest.c) It we wrap it in a #ifdef OPENSSL_SYS_VMS it builds and tests fine both shared and static. -- Tim RiceMultitalents(707) 887-1469 t...@multitalents.net uw714-shared-testlog.gz Description: Binary data
Re: [openssl.org #1821] Extensive use of @commands in Makefile makes troubleshooting challenging
On Mon, 29 Jun 2009, Philip A. Prindeville wrote: Stephen Henson via RT wrote: It's not the @ command which might be non-portable IMHO but the expansion of $(Q) into @. I guess I still don't understand the issue. On the platforms that don't support this, it could be left undefined or set to the empty string... -Philip It is easy to understand if you try it on a make other than GNU make. Using your original post as an example: - $ cat Makefile QUIET=y ifeq ($(QUIET),y) Q:=@ else Q:= endif all: $(Q)echo done $ make UX:make: ERROR: Must be a separator on rules line 4 (bu39). $ gmake done $ - -- Tim RiceMultitalents t...@multitalents.net __ OpenSSL Project http://www.openssl.org Development Mailing List openssl-dev@openssl.org Automated List Manager majord...@openssl.org
[openssl.org #1888] socklen_t
OpenSSL_1_0_0-stable and HEAD use socklen_t. Some platforms do not have the socklen_t data type. I propose the following patch (also attached) so a person could ./config --socklen_t=int . --- openssl-1.0.0/Configure.old 2009-02-19 01:43:18.0 -0800 +++ openssl-1.0.0/Configure 2009-04-02 14:28:35.421293044 -0700 @@ -40,6 +40,9 @@ # # --cross-compile-prefix Add specified prefix to binutils components. # +# --socklen_t For systems without socklen_t data type. Set to int or +# size_t as appropriate for your platform. +# # no-hw-xxx do not compile support for specific crypto hardware. # Generic OpenSSL-style methods relating to this support # are always compiled but return NULL if the hardware @@ -613,6 +616,7 @@ my $exe_ext=; my $install_prefix=; my $cross_compile_prefix=; +my $socklen_t=; my $no_threads=0; my $threads=0; my $no_shared=0; # but no-shared is default @@ -834,6 +838,10 @@ { $cross_compile_prefix=$1; } + elsif (/^--socklen_t=(.*)$/) + { + $socklen_t=$1; + } else { print STDERR $usage; @@ -1371,6 +1379,11 @@ } $cmll_obj=$cmll_encunless ($cmll_obj =~ /.o$/); +if ($socklen_t) + { + $cflags=$cflags -DSOCKLEN_T=$socklen_t; + } + # Stringify the C flags string. This permits it to be made part of a string # and works as well on command lines. $cflags =~ s/([\\\])/\\\1/g; --- openssl-1.0.0/crypto/bio/b_sock.c.old 2008-01-03 14:43:01.0 -0800 +++ openssl-1.0.0/crypto/bio/b_sock.c 2009-04-02 14:02:28.116173005 -0700 @@ -811,7 +811,9 @@ # if defined(OPENSSL_SYS_VMS) || defined(OPENSSL_SYS_BEOS_BONE) || defined(OPENSSL_SYS_MSDOS) # define SOCKLEN_T size_t # else +# ifndef SOCKLEN_T # define SOCKLEN_T socklen_t +# endif #endif do { char h[NI_MAXHOST],s[NI_MAXSERV]; . -- Tim RiceMultitalents(707) 887-1469 t...@multitalents.net --- openssl-1.0.0/Configure.old 2009-02-19 01:43:18.0 -0800 +++ openssl-1.0.0/Configure 2009-04-02 14:28:35.421293044 -0700 @@ -40,6 +40,9 @@ # # --cross-compile-prefix Add specified prefix to binutils components. # +# --socklen_t For systems without socklen_t data type. Set to int or +# size_t as appropriate for your platform. +# # no-hw-xxx do not compile support for specific crypto hardware. # Generic OpenSSL-style methods relating to this support # are always compiled but return NULL if the hardware @@ -613,6 +616,7 @@ my $exe_ext=; my $install_prefix=; my $cross_compile_prefix=; +my $socklen_t=; my $no_threads=0; my $threads=0; my $no_shared=0; # but no-shared is default @@ -834,6 +838,10 @@ { $cross_compile_prefix=$1; } + elsif (/^--socklen_t=(.*)$/) + { + $socklen_t=$1; + } else { print STDERR $usage; @@ -1371,6 +1379,11 @@ } $cmll_obj=$cmll_encunless ($cmll_obj =~ /.o$/); +if ($socklen_t) + { + $cflags=$cflags -DSOCKLEN_T=$socklen_t; + } + # Stringify the C flags string. This permits it to be made part of a string # and works as well on command lines. $cflags =~ s/([\\\])/\\\1/g; --- openssl-1.0.0/crypto/bio/b_sock.c.old 2008-01-03 14:43:01.0 -0800 +++ openssl-1.0.0/crypto/bio/b_sock.c 2009-04-02 14:02:28.116173005 -0700 @@ -811,7 +811,9 @@ # if defined(OPENSSL_SYS_VMS) || defined(OPENSSL_SYS_BEOS_BONE) || defined(OPENSSL_SYS_MSDOS) # define SOCKLEN_T size_t # else +# ifndef SOCKLEN_T # define SOCKLEN_T socklen_t +# endif #endif do { char h[NI_MAXHOST],s[NI_MAXSERV];
[openssl.org #900] non portable additions to OpenSSL_0_9_7-stable
The FIPS stuff needs a little tune up. Makefile.org - if ! egrep 'define OPENSSL_FIPS' ..; then \ + if egrep 'define OPENSSL_FIPS' ...; then \ + : \ + else \ The install: section should be commented out in fips/aes/Makefile, fips/des/Makefile, and fips/sha1/Makefile as it was done in fips/dsa/Makefile. -- Tim RiceMultitalents [EMAIL PROTECTED] __ OpenSSL Project http://www.openssl.org Development Mailing List [EMAIL PROTECTED] Automated List Manager [EMAIL PROTECTED] __ OpenSSL Project http://www.openssl.org Development Mailing List [EMAIL PROTECTED] Automated List Manager [EMAIL PROTECTED]
Re: [openssl.org #900] non portable additions to OpenSSL_0_9_7-stable
On Mon, 21 Jun 2004, Richard Levitte - VMS Whacker via RT wrote: In message [EMAIL PROTECTED] on Mon, 21 Jun 2004 08:49:26 +0200 (METDST), Tim Rice via RT [EMAIL PROTECTED] said: rt The FIPS stuff needs a little tune up. rt rt Makefile.org rt - if ! egrep 'define OPENSSL_FIPS' ..; then \ rt + if egrep 'define OPENSSL_FIPS' ...; then \ rt + : \ rt + else \ I'm sorry, but exactly what does that change? It makes it work with sh. Without the change you get ... installing libcrypto.a UX:sh (sh): ERROR: !: Not found installing libssl.a UX:sh (sh): ERROR: !: Not found installing libcrypto.so.0.9.7 ... -- Tim RiceMultitalents(707) 887-1469 [EMAIL PROTECTED] __ OpenSSL Project http://www.openssl.org Development Mailing List [EMAIL PROTECTED] Automated List Manager [EMAIL PROTECTED]
[openssl.org #735] Makefile.org rev 1.154.2.63 breaks OpenServer 5
In trying to build ethier the OpenSSL_0_9_7c or OpenSSL_0_9_7-stable branch on OpenServer 5 I discovered a change to Makefile.org that caused the build to fail. revision 1.154.2.63 date: 2003/05/29 22:20:55; author: levitte; state: Exp; lines: +2 -2 Have ASFLAGS be defined the same way as CFLAGS causes some assembler modules to not build ... making all in crypto/sha... cc -c -o asm/sx86-elf.o asm/sx86-elf.s Assembler: sha1-586.s aline 13: Syntax error aline 13: illegal character aline 1902 : Syntax error aline 1907 : Syntax error aline 1907 : illegal character aline 1958 : Syntax error *** Error code 1 (bu21) ... If it was important to s/ASFLAGS/ASFLAG/ in Makefile.org, perhaps adding ASFLAGS= $(ASFLAG) to these makefiles would be in order. crypto/sha/Makefile.ssl crypto/ripemd/Makefile.ssl crypto/des/Makefile.ssl crypto/rc4/Makefile.ssl crypto/bf/Makefile.ssl That seems to solve the build problem here. -- Tim RiceMultitalents(707) 887-1469 [EMAIL PROTECTED] __ OpenSSL Project http://www.openssl.org Development Mailing List [EMAIL PROTECTED] Automated List Manager [EMAIL PROTECTED] __ OpenSSL Project http://www.openssl.org Development Mailing List [EMAIL PROTECTED] Automated List Manager [EMAIL PROTECTED]
Re: [openssl.org #464] TSU NOTIFICATION - encryption
On Sat, 18 Jan 2003, Andy Polyakov via RT wrote: Config was adding 386 to the Configure line causing the build to fail on the assembler modules. in what way? UX:as: ERROR: asm/sx86-elf.s:35:invalid register for instruction: %al in xchg Would it work if you add b to xchg mnemonic, i.e. make it look xchgb %al,%ah? I'm not saying that we'll stick to 386 code, I just wonder if xchgb does the trick. Yes it does. An argument in favor of knowing which processor it really has would be if at some future date we wanted to automaticly use say, crypto/des/asm/des686.pl instead of crypto/des/asm/des-586.pl on i686. To start with des686.pl is completely out-of-date and is not even operational, isn't it? Then it's perfectly possible to produce blended optimized code, and if it will be proven that des686.pl provides *superior* preformance, I'd rather fix des-586.pl and provide *next* to superior performance on P6 core. OK. To summarize. I'm hardcoding i586 to all Caldera/SCO targets. And according to RT#460 we also should get rid of -lresolv on those platforms, right? A. Carfefull when you start talking about all Caldera/SCO targets SCO has Linux based products and two totally different UNIX based products. Don't interchange OpenServer and UnixWare. (OpenUNIX is UnixWare 7.1.2) But yes, hardcoding the UnixWare/OpenUNIX targets to i586 would be fine. And yes, get rid of -lresolv on the sco5 (OpenServer 5) targets. -- Tim RiceMultitalents(707) 887-1469 [EMAIL PROTECTED] __ OpenSSL Project http://www.openssl.org Development Mailing List [EMAIL PROTECTED] Automated List Manager [EMAIL PROTECTED]
Re: [openssl.org #464] TSU NOTIFICATION - encryption
On Fri, 17 Jan 2003, Andy Polyakov via RT wrote: Config was adding 386 to the Configure line causing the build to fail on the assembler modules. in what way? Not really. So you mean that it's not like it fails, but generates not optimal code. No, it fails. ... (cd asm; /usr/bin/perl sha1-586.pl elf -I.. -I../.. -I../../include -Kpic -DOPENSSL_THREADS -Kthread -DDSO_DLFCN -DHAVE_DLFCN_H -DOPENSSL_NO_KRB5 -O -DFILIO_H -Kalloca -DSHA1_ASM -DMD5_ASM -DRMD160_ASM 386 sx86-elf.s) cc -c -Kpic -DOPENSSL_THREADS -Kthread -DDSO_DLFCN -DHAVE_DLFCN_H -DOPENSSL_NO_KRB5 -O -DFILIO_H -Kalloca -DSHA1_ASM -DMD5_ASM -DRMD160_ASM -o asm/sx86-elf.o asm/sx86-elf.s UX:as: ERROR: asm/sx86-elf.s:35:invalid register for instruction: %al in xchg UX:as: ERROR: asm/sx86-elf.s:35:invalid register for instruction: %ah in xchg UX:as: ERROR: asm/sx86-elf.s:37:invalid register for instruction: %al in xchg UX:as: ERROR: asm/sx86-elf.s:37:invalid register for instruction: %ah in xchg UX:as: ERROR: asm/sx86-elf.s:39:invalid register for instruction: %cl in xchg UX:as: ERROR: asm/sx86-elf.s:39:invalid register for instruction: %ch in xchg [snip] ... Minimum processor on any current UnixWare is a pentium. The older releases of UnixWare don't have assembler support. Then why bother with 'uname -X 2/dev/null | grep ^Machine' at all? It should be sufficient to just echo i586-sco-newenough and just drop a comment why i586 is hardcoded... A. If it's only important to know if it's i386 or ix86 and we don't need to know x, then that would be fine for the SVR5 boxes. (UnixWare 7, OpenUNIX 8) The 4.2MP machines (UnixWare 2.x) could be running an i386 but I doubt anyone would. (UnixWare 1.1 was slow enough on a 386) It's probably safe to hard code i586 in the 4.2MP section. Dump the OpenUNIX section at line 96, (it's bogus, Release is 5) ... System = OpenUNIX Node = ou8 Release = 5 KernelID = 01/06/09 Machine = Pentium II BusType = ISA Serial = 3IH026825 Users = 5 OEM# = 0 Origin# = 1 NumCPU = 1 ... Have the 5 section look something like -- 5) if [ `echo x$VERSION | sed -e 's/\..*//'` = x7 ]; then echo i586-sco-unixware7; exit 0 elif [ `echo x$VERSION | sed -e 's/\..*//'` = x8 ]; then echo i586-unknown-OpenUNIX${VERSION}; exit 0 fi ;; -- An argument in favor of knowing which processor it really has would be if at some future date we wanted to automaticly use say, crypto/des/asm/des686.pl instead of crypto/des/asm/des-586.pl on i686. -- Tim RiceMultitalents(707) 887-1469 [EMAIL PROTECTED] __ OpenSSL Project http://www.openssl.org Development Mailing List [EMAIL PROTECTED] Automated List Manager [EMAIL PROTECTED]
Re: [openssl.org #437] bad instructions in CHANGES for platform-dependent builds
On Sat, 4 Jan 2003, Nick Briggs via RT wrote: [snip] # Place yourself outside of the OpenSSL source tree. In # this example, the environment variable OPENSSL_SOURCE # is assumed to contain the absolute OpenSSL source directory. mkdir -p objtree/`uname -s`-`uname -r`-`uname -m` cd objtree/`uname -s`-`uname -r`-`uname -m` (cd $OPENSSL_SOURCE; find . -type f -o -type l) | while read F; do mkdir -p `dirname $F` ln -s $OPENSSL_SOURCE/$F $F done [snip] don't work very well -- in particular, files in $OPENSSL_SOURCE which are relative links already will end up as absolute links into $OPENSSL_SOURCE, [snip] In my environment I'm building on multiple platforms from a common read-only NFS source tree. Here are some observations on what my script does. I think $OPENSSL_SOURCE needs to be a full path name, not relative. It basicly starts with the commands above but my find doesn't have -o -type l. It may work with it, I don't know. Now I clean up after patch and remove files made from .in files find . -name *.orig -exec rm -f {} \; rm -f Makefile.ssl apps/CA.pl apps/der_chop \ crypto/opensslconf.h tools/c_rehash Now if you don't want to modify your source tree during the build, or your source tree is read-only, do something like. # make sure the auto generated files are writable for i in ${FILES} do rm -f ${i} cp ${OPENSSL_SOURCE}/${i} ${i} chmod ug+w ${i} done Here is the list auto generated files I found in 0.9.7 FILES=apps/progs.h crypto/asn1/asn1_err.c \ crypto/asn1/asn1.h crypto/bio/bio_err.c crypto/bio/bio.h \ crypto/bn/bn_err.c crypto/bn/bn.h crypto/bn/bn_prime.h \ crypto/buffer/buf_err.c crypto/buffer/buffer.h \ crypto/comp/comp_err.c crypto/comp/comp.h \ crypto/conf/conf_def.h crypto/conf/conf_err.c \ crypto/conf/conf.h crypto/cpt_err.c crypto/crypto.h \ crypto/dh/dh_err.c crypto/dh/dh.h crypto/dsa/dsa_err.c \ crypto/dsa/dsa.h crypto/dso/dso_err.c crypto/dso/dso.h \ crypto/evp/evp_err.c crypto/evp/evp.h crypto/objects/obj_dat.c \ crypto/objects/obj_dat.h crypto/objects/objects.h \ crypto/objects/obj_err.c crypto/objects/obj_mac.num \ crypto/objects/obj_mac.h crypto/pem/pem_err.c crypto/pem/pem.h \ crypto/pkcs12/pk12err.c crypto/pkcs12/pkcs12.h \ crypto/pkcs7/pkcs7err.c crypto/pkcs7/pkcs7.h \ crypto/rand/rand_err.c crypto/rand/rand.h crypto/rsa/rsa_err.c \ crypto/rsa/rsa.h crypto/x509/x509_err.c crypto/x509/x509.h \ crypto/x509v3/v3err.c crypto/x509v3/x509v3.h ssl/ssl_err.c \ ssl/ssl.h util/libeay.num util/ssleay.num crypto/opensslv.h Hope this helps. -- Tim RiceMultitalents(707) 887-1469 [EMAIL PROTECTED] __ OpenSSL Project http://www.openssl.org Development Mailing List [EMAIL PROTECTED] Automated List Manager [EMAIL PROTECTED]
Re: [openssl.org #437] bad instructions in CHANGES for platform-dependent builds
On Sat, 4 Jan 2003, Tim Rice wrote: Here is the list auto generated files I found in 0.9.7 . FILES=apps/progs.h crypto/asn1/asn1_err.c \ [snip] ssl/ssl.h util/libeay.num util/ssleay.num crypto/opensslv.h Oops, this is NOT part of the list ---^ -- Tim RiceMultitalents(707) 887-1469 [EMAIL PROTECTED] __ OpenSSL Project http://www.openssl.org Development Mailing List [EMAIL PROTECTED] Automated List Manager [EMAIL PROTECTED]
Re: [openssl.org #148] Re: 0.9.7 PATCH (strcasecmp)
On Tue, 16 Jul 2002, Richard Levitte via RT wrote: Quick question: does string.h in Unixware define strcasecmp()? It's not defined in string.h but that wouldn't really matter. strcasecmp() returns an int I just tested changing to string.h and it works fine. Hmm loking at the apps/apps.c and apps/ca.c again I see string.h was allready included. So this should be fine. --- apps.c.orig Tue Jun 18 10:44:01 2002 +++ apps.c Tue Jul 16 13:10:21 2002 @@ -128,8 +128,6 @@ #ifdef OPENSSL_SYS_WINDOWS #define strcasecmp _stricmp -#else -#include strings.h #endif #ifdef OPENSSL_SYS_WINDOWS --- ca.c.orig Sun May 19 09:32:20 2002 +++ ca.cTue Jul 16 13:10:40 2002 @@ -79,8 +79,6 @@ #ifdef OPENSSL_SYS_WINDOWS #define strcasecmp _stricmp -#else -#include strings.h #endif #ifndef W_OK strings.h is non-standard while string.h is standard, as far as I know. We should change that in any case, unless someone has a different opinion. [[EMAIL PROTECTED] - Mon Jul 15 09:33:16 2002]: This patch seems to have been lost. I'm resending the patch against the OpenSSL_0_9_7-stable branch (Jul 13) I'd like to have my UnixWare platforms working before I look at my SCO platforms. On Sun, 17 Feb 2002, Tim Rice wrote: Attached is a patch against the OpenSSL_0_9_7-stable branch (Feb 17) that fixes the build on UnixWare 2.x Files changed: Configure, apps/apps.c, and apps/ca.c I've added -lresolv so it can find strcasecmp(). UnixWare 2.0x does not have strings.h so I changed apps.c and ca.c It has string.h ... # ifdef NO_STRINGS_H int strcasecmp(); # else #include strings.h # endif /* NO_STRINGS_H */ ... -- Tim RiceMultitalents(707) 887-1469 [EMAIL PROTECTED] __ OpenSSL Project http://www.openssl.org Development Mailing List [EMAIL PROTECTED] Automated List Manager [EMAIL PROTECTED]