From f30839ecaa4bc8bfafb73a3b954c9f4abe78e5d0 Mon Sep 17 00:00:00 2001 From: Richard Levitte Date: Fri, 15 Sep 2000 22:36:49 +0000 Subject: [PATCH] Merged in the main trunk, did a 'make update', added a couple of warnings in appropriate places about building a shared library from the ENGINE source. --- CHANGES | 21 +++ Configure | 7 + INSTALL | 5 +- TABLE | 34 +++- apps/Makefile.ssl | 201 +++++++++++++--------- apps/apps.h | 2 +- apps/speed.c | 2 +- config | 5 + crypto/bn/bn_mont.c | 1 + crypto/crypto-lib.com | 5 +- crypto/dso/Makefile.ssl | 11 +- crypto/dso/dso.h | 14 ++ crypto/dso/dso_err.c | 5 + crypto/dso/dso_openssl.c | 2 + crypto/rand/rand_win.c | 36 +++- doc/crypto/BIO_ctrl.pod | 5 +- doc/crypto/BIO_f_base64.pod | 2 +- doc/crypto/BIO_f_cipher.pod | 2 +- doc/crypto/BIO_f_md.pod | 2 +- doc/crypto/BIO_f_null.pod | 2 +- doc/crypto/BIO_find_type.pod | 2 +- doc/crypto/BIO_new.pod | 2 +- doc/crypto/BIO_push.pod | 2 +- doc/crypto/BIO_read.pod | 10 +- doc/crypto/BIO_s_fd.pod | 14 +- doc/crypto/BIO_s_file.pod | 19 +- doc/crypto/BIO_s_mem.pod | 3 +- doc/crypto/BIO_s_null.pod | 2 +- doc/crypto/BIO_set_callback.pod | 3 +- doc/crypto/BIO_should_retry.pod | 4 +- doc/crypto/BN_mod_mul_reciprocal.pod | 2 +- doc/crypto/BN_zero.pod | 3 +- doc/crypto/ERR_error_string.pod | 4 +- doc/crypto/ERR_get_error.pod | 3 +- doc/crypto/EVP_DigestInit.pod | 7 +- doc/crypto/EVP_EncryptInit.pod | 12 +- doc/crypto/OPENSSL_VERSION_NUMBER.pod | 46 ++++- doc/crypto/OpenSSL_add_all_algorithms.pod | 3 +- doc/crypto/RSA_get_ex_new_index.pod | 14 +- doc/crypto/RSA_print.pod | 5 +- doc/crypto/RSA_set_method.pod | 2 +- doc/crypto/hmac.pod | 3 +- doc/crypto/threads.pod | 20 ++- e_os.h | 6 +- util/libeay.num | 113 ++++++------ 45 files changed, 438 insertions(+), 230 deletions(-) diff --git a/CHANGES b/CHANGES index 1eca683808..d47658a203 100644 --- a/CHANGES +++ b/CHANGES @@ -4,6 +4,27 @@ Changes between 0.9.5a and 0.9.6 [xx XXX 2000] + *) Add DSO method for VMS. + [Richard Levitte] + + *) Bug fix: Montgomery multiplication could produce results with the + wrong sign. + [Ulf Möller] + + *) Add RPM specification openssl.spec and modify it to build three + packages. The default package contains applications, application + documentation and run-time libraries. The devel package contains + include files, static libraries and function documentation. The + doc package contains the contents of the doc directory. The original + openssl.spec was provided by Damien Miller . + [Richard Levitte] + + *) Add a large number of documentation files for many SSL routines. + [Lutz Jaenicke ] + + *) Add a configuration entry for Sony News 4. + [NAKAJI Hiroyuki ] + *) Don't set the two most significant bits to one when generating a random number < q in the DSA library. [Ulf Möller] diff --git a/Configure b/Configure index 561ad93fbe..afe66c440e 100755 --- a/Configure +++ b/Configure @@ -33,6 +33,10 @@ my $usage="Usage: Configure [no- ...] [-Dxxx] [-lxxx] [-Lxxx] [-fxxx] [- # multithreaded applications (default is "threads" if we # know how to do it) # [no-]shared [don't] try to create shared libraries when supported. +# IT IS NOT RECOMMENDED TO USE "shared"! Since this is a +# development branch, the positions of the ENGINE symbols +# in the transfer vector are constantly moving, so binary +# backward compatibility can't be guaranteed in any way. # no-asm do not use assembler # no-dso do not compile in any native shared-library methods. This # will ensure that all methods just return NULL. @@ -398,6 +402,9 @@ my %table=( ##### MacOS X (a.k.a. Rhapsody) setup "rhapsody-ppc-cc","cc:-O3 -DB_ENDIAN::(unknown)::BN_LLONG RC4_CHAR RC4_CHUNK DES_UNROLL BF_PTR:::", +##### Sony NEWS-OS 4.x +"newsos4-gcc","gcc:-O -DB_ENDIAN -DNEWS4::(unknown):-lmld -liberty:BN_LLONG RC4_CHAR RC4_CHUNK DES_PTR DES_RISC1 DES_UNROLL BF_PTR::::", + ); my @WinTargets=qw(VC-NT VC-WIN32 VC-WIN16 VC-W31-16 VC-W31-32 VC-MSDOS BC-32 diff --git a/INSTALL b/INSTALL index ea9b8a3844..f658a0ad51 100644 --- a/INSTALL +++ b/INSTALL @@ -57,7 +57,10 @@ shared In addition to the usual static libraries, create shared libraries on platforms where it's supported. See "Note on - shared libraries" below. + shared libraries" below. THIS IS NOT RECOMMENDED! Since + this is a development branch, the positions of the ENGINE + symbols in the transfer vector are constantly moving, so + binary backward compatibility can't be guaranteed in any way. no-asm Do not use assembler code. diff --git a/TABLE b/TABLE index 1086a74706..eb561a69b0 100644 --- a/TABLE +++ b/TABLE @@ -36,7 +36,7 @@ $cast_obj = $rc4_obj = $rmd160_obj = $rc5_obj = -$dso_scheme = +$dso_scheme = win32 $shared_target= $shared_cflag = @@ -76,7 +76,7 @@ $cast_obj = $rc4_obj = $rmd160_obj = $rc5_obj = -$dso_scheme = +$dso_scheme = win32 $shared_target= $shared_cflag = @@ -156,7 +156,7 @@ $cast_obj = $rc4_obj = $rmd160_obj = $rc5_obj = -$dso_scheme = +$dso_scheme = win32 $shared_target= $shared_cflag = @@ -396,7 +396,7 @@ $cast_obj = $rc4_obj = $rmd160_obj = $rc5_obj = -$dso_scheme = +$dso_scheme = win32 $shared_target= $shared_cflag = @@ -476,7 +476,7 @@ $cast_obj = $rc4_obj = $rmd160_obj = $rc5_obj = -$dso_scheme = +$dso_scheme = win32 $shared_target= $shared_cflag = @@ -805,7 +805,7 @@ $cc = gcc $cflags = -DBN_DEBUG -DREF_CHECK -DCONF_DEBUG -DBN_CTX_DEBUG -DCRYPTO_MDEBUG -DL_ENDIAN -DTERMIO -g -m486 -Wall $unistd = $thread_cflag = -D_REENTRANT -$lflags = -lefence +$lflags = -lefence -ldl $bn_ops = BN_LLONG DES_PTR DES_RISC1 DES_UNROLL RC4_INDEX MD2_INT $bn_obj = asm/bn86-elf.o asm/co86-elf.o $des_obj = asm/dx86-elf.o asm/yx86-elf.o @@ -825,7 +825,7 @@ $cc = gcc $cflags = -DBN_DEBUG -DREF_CHECK -DCONF_DEBUG -DBN_CTX_DEBUG -DCRYPTO_MDEBUG -DL_ENDIAN -DTERMIO -g -m486 -Wall $unistd = $thread_cflag = -D_REENTRANT -$lflags = +$lflags = -ldl $bn_ops = BN_LLONG DES_PTR DES_RISC1 DES_UNROLL RC4_INDEX MD2_INT $bn_obj = asm/bn86-elf.o asm/co86-elf.o $des_obj = asm/dx86-elf.o asm/yx86-elf.o @@ -1740,6 +1740,26 @@ $dso_scheme = $shared_target= $shared_cflag = +*** newsos4-gcc +$cc = gcc +$cflags = -O -DB_ENDIAN -DNEWS4 +$unistd = +$thread_cflag = (unknown) +$lflags = -lmld -liberty +$bn_ops = BN_LLONG RC4_CHAR RC4_CHUNK DES_PTR DES_RISC1 DES_UNROLL BF_PTR +$bn_obj = +$des_obj = +$bf_obj = +$md5_obj = +$sha1_obj = +$cast_obj = +$rc4_obj = +$rmd160_obj = +$rc5_obj = +$dso_scheme = +$shared_target= +$shared_cflag = + *** nextstep $cc = cc $cflags = -O -Wall diff --git a/apps/Makefile.ssl b/apps/Makefile.ssl index 82d050e0ec..bc703ffd2b 100644 --- a/apps/Makefile.ssl +++ b/apps/Makefile.ssl @@ -146,8 +146,9 @@ progs.h: progs.pl app_rand.o: ../include/openssl/asn1.h ../include/openssl/bio.h app_rand.o: ../include/openssl/blowfish.h ../include/openssl/bn.h app_rand.o: ../include/openssl/buffer.h ../include/openssl/cast.h -app_rand.o: ../include/openssl/crypto.h ../include/openssl/des.h -app_rand.o: ../include/openssl/dh.h ../include/openssl/dsa.h +app_rand.o: ../include/openssl/conf.h ../include/openssl/crypto.h +app_rand.o: ../include/openssl/des.h ../include/openssl/dh.h +app_rand.o: ../include/openssl/dsa.h ../include/openssl/e_os.h app_rand.o: ../include/openssl/e_os.h ../include/openssl/e_os2.h app_rand.o: ../include/openssl/evp.h ../include/openssl/idea.h app_rand.o: ../include/openssl/lhash.h ../include/openssl/md2.h @@ -164,8 +165,9 @@ app_rand.o: ../include/openssl/x509.h ../include/openssl/x509_vfy.h apps.h apps.o: ../include/openssl/asn1.h ../include/openssl/bio.h apps.o: ../include/openssl/blowfish.h ../include/openssl/bn.h apps.o: ../include/openssl/buffer.h ../include/openssl/cast.h -apps.o: ../include/openssl/crypto.h ../include/openssl/des.h -apps.o: ../include/openssl/dh.h ../include/openssl/dsa.h +apps.o: ../include/openssl/conf.h ../include/openssl/crypto.h +apps.o: ../include/openssl/des.h ../include/openssl/dh.h +apps.o: ../include/openssl/dsa.h ../include/openssl/e_os.h apps.o: ../include/openssl/e_os.h ../include/openssl/e_os2.h apps.o: ../include/openssl/err.h ../include/openssl/evp.h apps.o: ../include/openssl/idea.h ../include/openssl/lhash.h @@ -184,8 +186,9 @@ apps.o: ../include/openssl/x509_vfy.h apps.h asn1pars.o: ../include/openssl/asn1.h ../include/openssl/bio.h asn1pars.o: ../include/openssl/blowfish.h ../include/openssl/bn.h asn1pars.o: ../include/openssl/buffer.h ../include/openssl/cast.h -asn1pars.o: ../include/openssl/crypto.h ../include/openssl/des.h -asn1pars.o: ../include/openssl/dh.h ../include/openssl/dsa.h +asn1pars.o: ../include/openssl/conf.h ../include/openssl/crypto.h +asn1pars.o: ../include/openssl/des.h ../include/openssl/dh.h +asn1pars.o: ../include/openssl/dsa.h ../include/openssl/e_os.h asn1pars.o: ../include/openssl/e_os.h ../include/openssl/e_os2.h asn1pars.o: ../include/openssl/err.h ../include/openssl/evp.h asn1pars.o: ../include/openssl/idea.h ../include/openssl/lhash.h @@ -225,9 +228,10 @@ ca.o: ../include/openssl/x509v3.h apps.h ciphers.o: ../include/openssl/asn1.h ../include/openssl/bio.h ciphers.o: ../include/openssl/blowfish.h ../include/openssl/bn.h ciphers.o: ../include/openssl/buffer.h ../include/openssl/cast.h -ciphers.o: ../include/openssl/comp.h ../include/openssl/crypto.h -ciphers.o: ../include/openssl/des.h ../include/openssl/dh.h -ciphers.o: ../include/openssl/dsa.h ../include/openssl/e_os.h +ciphers.o: ../include/openssl/comp.h ../include/openssl/conf.h +ciphers.o: ../include/openssl/crypto.h ../include/openssl/des.h +ciphers.o: ../include/openssl/dh.h ../include/openssl/dsa.h +ciphers.o: ../include/openssl/e_os.h ../include/openssl/e_os.h ciphers.o: ../include/openssl/e_os2.h ../include/openssl/err.h ciphers.o: ../include/openssl/evp.h ../include/openssl/idea.h ciphers.o: ../include/openssl/lhash.h ../include/openssl/md2.h @@ -268,8 +272,9 @@ crl.o: ../include/openssl/x509v3.h apps.h crl2p7.o: ../include/openssl/asn1.h ../include/openssl/bio.h crl2p7.o: ../include/openssl/blowfish.h ../include/openssl/bn.h crl2p7.o: ../include/openssl/buffer.h ../include/openssl/cast.h -crl2p7.o: ../include/openssl/crypto.h ../include/openssl/des.h -crl2p7.o: ../include/openssl/dh.h ../include/openssl/dsa.h +crl2p7.o: ../include/openssl/conf.h ../include/openssl/crypto.h +crl2p7.o: ../include/openssl/des.h ../include/openssl/dh.h +crl2p7.o: ../include/openssl/dsa.h ../include/openssl/e_os.h crl2p7.o: ../include/openssl/e_os.h ../include/openssl/e_os2.h crl2p7.o: ../include/openssl/err.h ../include/openssl/evp.h crl2p7.o: ../include/openssl/idea.h ../include/openssl/lhash.h @@ -287,8 +292,9 @@ crl2p7.o: ../include/openssl/x509.h ../include/openssl/x509_vfy.h apps.h dgst.o: ../include/openssl/asn1.h ../include/openssl/bio.h dgst.o: ../include/openssl/blowfish.h ../include/openssl/bn.h dgst.o: ../include/openssl/buffer.h ../include/openssl/cast.h -dgst.o: ../include/openssl/crypto.h ../include/openssl/des.h -dgst.o: ../include/openssl/dh.h ../include/openssl/dsa.h +dgst.o: ../include/openssl/conf.h ../include/openssl/crypto.h +dgst.o: ../include/openssl/des.h ../include/openssl/dh.h +dgst.o: ../include/openssl/dsa.h ../include/openssl/e_os.h dgst.o: ../include/openssl/e_os.h ../include/openssl/e_os2.h dgst.o: ../include/openssl/engine.h ../include/openssl/err.h dgst.o: ../include/openssl/evp.h ../include/openssl/idea.h @@ -307,28 +313,30 @@ dgst.o: ../include/openssl/x509.h ../include/openssl/x509_vfy.h apps.h dh.o: ../include/openssl/asn1.h ../include/openssl/bio.h dh.o: ../include/openssl/blowfish.h ../include/openssl/bn.h dh.o: ../include/openssl/buffer.h ../include/openssl/cast.h -dh.o: ../include/openssl/crypto.h ../include/openssl/des.h -dh.o: ../include/openssl/dh.h ../include/openssl/dsa.h -dh.o: ../include/openssl/e_os.h ../include/openssl/e_os2.h -dh.o: ../include/openssl/engine.h ../include/openssl/err.h -dh.o: ../include/openssl/evp.h ../include/openssl/idea.h -dh.o: ../include/openssl/lhash.h ../include/openssl/md2.h -dh.o: ../include/openssl/md4.h ../include/openssl/md5.h -dh.o: ../include/openssl/mdc2.h ../include/openssl/obj_mac.h -dh.o: ../include/openssl/objects.h ../include/openssl/opensslconf.h -dh.o: ../include/openssl/opensslv.h ../include/openssl/pem.h -dh.o: ../include/openssl/pem2.h ../include/openssl/pkcs7.h -dh.o: ../include/openssl/rand.h ../include/openssl/rc2.h -dh.o: ../include/openssl/rc4.h ../include/openssl/rc5.h -dh.o: ../include/openssl/ripemd.h ../include/openssl/rsa.h -dh.o: ../include/openssl/safestack.h ../include/openssl/sha.h -dh.o: ../include/openssl/stack.h ../include/openssl/symhacks.h -dh.o: ../include/openssl/x509.h ../include/openssl/x509_vfy.h apps.h +dh.o: ../include/openssl/conf.h ../include/openssl/crypto.h +dh.o: ../include/openssl/des.h ../include/openssl/dh.h ../include/openssl/dsa.h +dh.o: ../include/openssl/e_os.h ../include/openssl/e_os.h +dh.o: ../include/openssl/e_os2.h ../include/openssl/engine.h +dh.o: ../include/openssl/err.h ../include/openssl/evp.h +dh.o: ../include/openssl/idea.h ../include/openssl/lhash.h +dh.o: ../include/openssl/md2.h ../include/openssl/md4.h +dh.o: ../include/openssl/md5.h ../include/openssl/mdc2.h +dh.o: ../include/openssl/obj_mac.h ../include/openssl/objects.h +dh.o: ../include/openssl/opensslconf.h ../include/openssl/opensslv.h +dh.o: ../include/openssl/pem.h ../include/openssl/pem2.h +dh.o: ../include/openssl/pkcs7.h ../include/openssl/rand.h +dh.o: ../include/openssl/rc2.h ../include/openssl/rc4.h +dh.o: ../include/openssl/rc5.h ../include/openssl/ripemd.h +dh.o: ../include/openssl/rsa.h ../include/openssl/safestack.h +dh.o: ../include/openssl/sha.h ../include/openssl/stack.h +dh.o: ../include/openssl/symhacks.h ../include/openssl/x509.h +dh.o: ../include/openssl/x509_vfy.h apps.h dsa.o: ../include/openssl/asn1.h ../include/openssl/bio.h dsa.o: ../include/openssl/blowfish.h ../include/openssl/bn.h dsa.o: ../include/openssl/buffer.h ../include/openssl/cast.h -dsa.o: ../include/openssl/crypto.h ../include/openssl/des.h -dsa.o: ../include/openssl/dh.h ../include/openssl/dsa.h +dsa.o: ../include/openssl/conf.h ../include/openssl/crypto.h +dsa.o: ../include/openssl/des.h ../include/openssl/dh.h +dsa.o: ../include/openssl/dsa.h ../include/openssl/e_os.h dsa.o: ../include/openssl/e_os.h ../include/openssl/e_os2.h dsa.o: ../include/openssl/engine.h ../include/openssl/err.h dsa.o: ../include/openssl/evp.h ../include/openssl/idea.h @@ -347,8 +355,9 @@ dsa.o: ../include/openssl/x509.h ../include/openssl/x509_vfy.h apps.h dsaparam.o: ../include/openssl/asn1.h ../include/openssl/bio.h dsaparam.o: ../include/openssl/blowfish.h ../include/openssl/bn.h dsaparam.o: ../include/openssl/buffer.h ../include/openssl/cast.h -dsaparam.o: ../include/openssl/crypto.h ../include/openssl/des.h -dsaparam.o: ../include/openssl/dh.h ../include/openssl/dsa.h +dsaparam.o: ../include/openssl/conf.h ../include/openssl/crypto.h +dsaparam.o: ../include/openssl/des.h ../include/openssl/dh.h +dsaparam.o: ../include/openssl/dsa.h ../include/openssl/e_os.h dsaparam.o: ../include/openssl/e_os.h ../include/openssl/e_os2.h dsaparam.o: ../include/openssl/engine.h ../include/openssl/err.h dsaparam.o: ../include/openssl/evp.h ../include/openssl/idea.h @@ -367,8 +376,9 @@ dsaparam.o: ../include/openssl/x509.h ../include/openssl/x509_vfy.h apps.h enc.o: ../include/openssl/asn1.h ../include/openssl/bio.h enc.o: ../include/openssl/blowfish.h ../include/openssl/bn.h enc.o: ../include/openssl/buffer.h ../include/openssl/cast.h -enc.o: ../include/openssl/crypto.h ../include/openssl/des.h -enc.o: ../include/openssl/dh.h ../include/openssl/dsa.h +enc.o: ../include/openssl/conf.h ../include/openssl/crypto.h +enc.o: ../include/openssl/des.h ../include/openssl/dh.h +enc.o: ../include/openssl/dsa.h ../include/openssl/e_os.h enc.o: ../include/openssl/e_os.h ../include/openssl/e_os2.h enc.o: ../include/openssl/engine.h ../include/openssl/err.h enc.o: ../include/openssl/evp.h ../include/openssl/idea.h @@ -387,9 +397,10 @@ enc.o: ../include/openssl/x509.h ../include/openssl/x509_vfy.h apps.h errstr.o: ../include/openssl/asn1.h ../include/openssl/bio.h errstr.o: ../include/openssl/blowfish.h ../include/openssl/bn.h errstr.o: ../include/openssl/buffer.h ../include/openssl/cast.h -errstr.o: ../include/openssl/comp.h ../include/openssl/crypto.h -errstr.o: ../include/openssl/des.h ../include/openssl/dh.h -errstr.o: ../include/openssl/dsa.h ../include/openssl/e_os.h +errstr.o: ../include/openssl/comp.h ../include/openssl/conf.h +errstr.o: ../include/openssl/crypto.h ../include/openssl/des.h +errstr.o: ../include/openssl/dh.h ../include/openssl/dsa.h +errstr.o: ../include/openssl/e_os.h ../include/openssl/e_os.h errstr.o: ../include/openssl/e_os2.h ../include/openssl/err.h errstr.o: ../include/openssl/evp.h ../include/openssl/idea.h errstr.o: ../include/openssl/lhash.h ../include/openssl/md2.h @@ -409,8 +420,9 @@ errstr.o: ../include/openssl/x509.h ../include/openssl/x509_vfy.h apps.h gendh.o: ../include/openssl/asn1.h ../include/openssl/bio.h gendh.o: ../include/openssl/blowfish.h ../include/openssl/bn.h gendh.o: ../include/openssl/buffer.h ../include/openssl/cast.h -gendh.o: ../include/openssl/crypto.h ../include/openssl/des.h -gendh.o: ../include/openssl/dh.h ../include/openssl/dsa.h +gendh.o: ../include/openssl/conf.h ../include/openssl/crypto.h +gendh.o: ../include/openssl/des.h ../include/openssl/dh.h +gendh.o: ../include/openssl/dsa.h ../include/openssl/e_os.h gendh.o: ../include/openssl/e_os.h ../include/openssl/e_os2.h gendh.o: ../include/openssl/engine.h ../include/openssl/err.h gendh.o: ../include/openssl/evp.h ../include/openssl/idea.h @@ -429,8 +441,9 @@ gendh.o: ../include/openssl/x509.h ../include/openssl/x509_vfy.h apps.h gendsa.o: ../include/openssl/asn1.h ../include/openssl/bio.h gendsa.o: ../include/openssl/blowfish.h ../include/openssl/bn.h gendsa.o: ../include/openssl/buffer.h ../include/openssl/cast.h -gendsa.o: ../include/openssl/crypto.h ../include/openssl/des.h -gendsa.o: ../include/openssl/dh.h ../include/openssl/dsa.h +gendsa.o: ../include/openssl/conf.h ../include/openssl/crypto.h +gendsa.o: ../include/openssl/des.h ../include/openssl/dh.h +gendsa.o: ../include/openssl/dsa.h ../include/openssl/e_os.h gendsa.o: ../include/openssl/e_os.h ../include/openssl/e_os2.h gendsa.o: ../include/openssl/engine.h ../include/openssl/err.h gendsa.o: ../include/openssl/evp.h ../include/openssl/idea.h @@ -449,8 +462,9 @@ gendsa.o: ../include/openssl/x509.h ../include/openssl/x509_vfy.h apps.h genrsa.o: ../include/openssl/asn1.h ../include/openssl/bio.h genrsa.o: ../include/openssl/blowfish.h ../include/openssl/bn.h genrsa.o: ../include/openssl/buffer.h ../include/openssl/cast.h -genrsa.o: ../include/openssl/crypto.h ../include/openssl/des.h -genrsa.o: ../include/openssl/dh.h ../include/openssl/dsa.h +genrsa.o: ../include/openssl/conf.h ../include/openssl/crypto.h +genrsa.o: ../include/openssl/des.h ../include/openssl/dh.h +genrsa.o: ../include/openssl/dsa.h ../include/openssl/e_os.h genrsa.o: ../include/openssl/e_os.h ../include/openssl/e_os2.h genrsa.o: ../include/openssl/engine.h ../include/openssl/err.h genrsa.o: ../include/openssl/evp.h ../include/openssl/idea.h @@ -469,8 +483,9 @@ genrsa.o: ../include/openssl/x509.h ../include/openssl/x509_vfy.h apps.h nseq.o: ../include/openssl/asn1.h ../include/openssl/bio.h nseq.o: ../include/openssl/blowfish.h ../include/openssl/bn.h nseq.o: ../include/openssl/buffer.h ../include/openssl/cast.h -nseq.o: ../include/openssl/crypto.h ../include/openssl/des.h -nseq.o: ../include/openssl/dh.h ../include/openssl/dsa.h +nseq.o: ../include/openssl/conf.h ../include/openssl/crypto.h +nseq.o: ../include/openssl/des.h ../include/openssl/dh.h +nseq.o: ../include/openssl/dsa.h ../include/openssl/e_os.h nseq.o: ../include/openssl/e_os.h ../include/openssl/e_os2.h nseq.o: ../include/openssl/err.h ../include/openssl/evp.h nseq.o: ../include/openssl/idea.h ../include/openssl/lhash.h @@ -512,8 +527,9 @@ openssl.o: progs.h s_apps.h passwd.o: ../include/openssl/asn1.h ../include/openssl/bio.h passwd.o: ../include/openssl/blowfish.h ../include/openssl/bn.h passwd.o: ../include/openssl/buffer.h ../include/openssl/cast.h -passwd.o: ../include/openssl/crypto.h ../include/openssl/des.h -passwd.o: ../include/openssl/dh.h ../include/openssl/dsa.h +passwd.o: ../include/openssl/conf.h ../include/openssl/crypto.h +passwd.o: ../include/openssl/des.h ../include/openssl/dh.h +passwd.o: ../include/openssl/dsa.h ../include/openssl/e_os.h passwd.o: ../include/openssl/e_os.h ../include/openssl/e_os2.h passwd.o: ../include/openssl/err.h ../include/openssl/evp.h passwd.o: ../include/openssl/idea.h ../include/openssl/lhash.h @@ -531,8 +547,9 @@ passwd.o: ../include/openssl/x509_vfy.h apps.h pkcs12.o: ../include/openssl/asn1.h ../include/openssl/bio.h pkcs12.o: ../include/openssl/blowfish.h ../include/openssl/bn.h pkcs12.o: ../include/openssl/buffer.h ../include/openssl/cast.h -pkcs12.o: ../include/openssl/crypto.h ../include/openssl/des.h -pkcs12.o: ../include/openssl/dh.h ../include/openssl/dsa.h +pkcs12.o: ../include/openssl/conf.h ../include/openssl/crypto.h +pkcs12.o: ../include/openssl/des.h ../include/openssl/dh.h +pkcs12.o: ../include/openssl/dsa.h ../include/openssl/e_os.h pkcs12.o: ../include/openssl/e_os.h ../include/openssl/e_os2.h pkcs12.o: ../include/openssl/engine.h ../include/openssl/err.h pkcs12.o: ../include/openssl/evp.h ../include/openssl/idea.h @@ -552,8 +569,9 @@ pkcs12.o: ../include/openssl/x509_vfy.h apps.h pkcs7.o: ../include/openssl/asn1.h ../include/openssl/bio.h pkcs7.o: ../include/openssl/blowfish.h ../include/openssl/bn.h pkcs7.o: ../include/openssl/buffer.h ../include/openssl/cast.h -pkcs7.o: ../include/openssl/crypto.h ../include/openssl/des.h -pkcs7.o: ../include/openssl/dh.h ../include/openssl/dsa.h +pkcs7.o: ../include/openssl/conf.h ../include/openssl/crypto.h +pkcs7.o: ../include/openssl/des.h ../include/openssl/dh.h +pkcs7.o: ../include/openssl/dsa.h ../include/openssl/e_os.h pkcs7.o: ../include/openssl/e_os.h ../include/openssl/e_os2.h pkcs7.o: ../include/openssl/engine.h ../include/openssl/err.h pkcs7.o: ../include/openssl/evp.h ../include/openssl/idea.h @@ -572,8 +590,9 @@ pkcs7.o: ../include/openssl/x509.h ../include/openssl/x509_vfy.h apps.h pkcs8.o: ../include/openssl/asn1.h ../include/openssl/bio.h pkcs8.o: ../include/openssl/blowfish.h ../include/openssl/bn.h pkcs8.o: ../include/openssl/buffer.h ../include/openssl/cast.h -pkcs8.o: ../include/openssl/crypto.h ../include/openssl/des.h -pkcs8.o: ../include/openssl/dh.h ../include/openssl/dsa.h +pkcs8.o: ../include/openssl/conf.h ../include/openssl/crypto.h +pkcs8.o: ../include/openssl/des.h ../include/openssl/dh.h +pkcs8.o: ../include/openssl/dsa.h ../include/openssl/e_os.h pkcs8.o: ../include/openssl/e_os.h ../include/openssl/e_os2.h pkcs8.o: ../include/openssl/engine.h ../include/openssl/err.h pkcs8.o: ../include/openssl/evp.h ../include/openssl/idea.h @@ -593,8 +612,9 @@ pkcs8.o: ../include/openssl/x509_vfy.h apps.h rand.o: ../include/openssl/asn1.h ../include/openssl/bio.h rand.o: ../include/openssl/blowfish.h ../include/openssl/bn.h rand.o: ../include/openssl/buffer.h ../include/openssl/cast.h -rand.o: ../include/openssl/crypto.h ../include/openssl/des.h -rand.o: ../include/openssl/dh.h ../include/openssl/dsa.h +rand.o: ../include/openssl/conf.h ../include/openssl/crypto.h +rand.o: ../include/openssl/des.h ../include/openssl/dh.h +rand.o: ../include/openssl/dsa.h ../include/openssl/e_os.h rand.o: ../include/openssl/e_os.h ../include/openssl/e_os2.h rand.o: ../include/openssl/engine.h ../include/openssl/err.h rand.o: ../include/openssl/evp.h ../include/openssl/idea.h @@ -634,8 +654,9 @@ req.o: ../include/openssl/x509v3.h apps.h rsa.o: ../include/openssl/asn1.h ../include/openssl/bio.h rsa.o: ../include/openssl/blowfish.h ../include/openssl/bn.h rsa.o: ../include/openssl/buffer.h ../include/openssl/cast.h -rsa.o: ../include/openssl/crypto.h ../include/openssl/des.h -rsa.o: ../include/openssl/dh.h ../include/openssl/dsa.h +rsa.o: ../include/openssl/conf.h ../include/openssl/crypto.h +rsa.o: ../include/openssl/des.h ../include/openssl/dh.h +rsa.o: ../include/openssl/dsa.h ../include/openssl/e_os.h rsa.o: ../include/openssl/e_os.h ../include/openssl/e_os2.h rsa.o: ../include/openssl/engine.h ../include/openssl/err.h rsa.o: ../include/openssl/evp.h ../include/openssl/idea.h @@ -654,8 +675,9 @@ rsa.o: ../include/openssl/x509.h ../include/openssl/x509_vfy.h apps.h rsautl.o: ../include/openssl/asn1.h ../include/openssl/bio.h rsautl.o: ../include/openssl/blowfish.h ../include/openssl/bn.h rsautl.o: ../include/openssl/buffer.h ../include/openssl/cast.h -rsautl.o: ../include/openssl/crypto.h ../include/openssl/des.h -rsautl.o: ../include/openssl/dh.h ../include/openssl/dsa.h +rsautl.o: ../include/openssl/conf.h ../include/openssl/crypto.h +rsautl.o: ../include/openssl/des.h ../include/openssl/dh.h +rsautl.o: ../include/openssl/dsa.h ../include/openssl/e_os.h rsautl.o: ../include/openssl/e_os.h ../include/openssl/e_os2.h rsautl.o: ../include/openssl/engine.h ../include/openssl/err.h rsautl.o: ../include/openssl/evp.h ../include/openssl/idea.h @@ -674,9 +696,10 @@ rsautl.o: ../include/openssl/x509.h ../include/openssl/x509_vfy.h apps.h s_cb.o: ../include/openssl/asn1.h ../include/openssl/bio.h s_cb.o: ../include/openssl/blowfish.h ../include/openssl/bn.h s_cb.o: ../include/openssl/buffer.h ../include/openssl/cast.h -s_cb.o: ../include/openssl/comp.h ../include/openssl/crypto.h -s_cb.o: ../include/openssl/des.h ../include/openssl/dh.h -s_cb.o: ../include/openssl/dsa.h ../include/openssl/e_os.h +s_cb.o: ../include/openssl/comp.h ../include/openssl/conf.h +s_cb.o: ../include/openssl/crypto.h ../include/openssl/des.h +s_cb.o: ../include/openssl/dh.h ../include/openssl/dsa.h +s_cb.o: ../include/openssl/e_os.h ../include/openssl/e_os.h s_cb.o: ../include/openssl/e_os2.h ../include/openssl/err.h s_cb.o: ../include/openssl/evp.h ../include/openssl/idea.h s_cb.o: ../include/openssl/lhash.h ../include/openssl/md2.h @@ -696,9 +719,10 @@ s_cb.o: ../include/openssl/x509.h ../include/openssl/x509_vfy.h apps.h s_apps.h s_client.o: ../include/openssl/asn1.h ../include/openssl/bio.h s_client.o: ../include/openssl/blowfish.h ../include/openssl/bn.h s_client.o: ../include/openssl/buffer.h ../include/openssl/cast.h -s_client.o: ../include/openssl/comp.h ../include/openssl/crypto.h -s_client.o: ../include/openssl/des.h ../include/openssl/dh.h -s_client.o: ../include/openssl/dsa.h ../include/openssl/e_os.h +s_client.o: ../include/openssl/comp.h ../include/openssl/conf.h +s_client.o: ../include/openssl/crypto.h ../include/openssl/des.h +s_client.o: ../include/openssl/dh.h ../include/openssl/dsa.h +s_client.o: ../include/openssl/e_os.h ../include/openssl/e_os.h s_client.o: ../include/openssl/e_os2.h ../include/openssl/engine.h s_client.o: ../include/openssl/err.h ../include/openssl/evp.h s_client.o: ../include/openssl/idea.h ../include/openssl/lhash.h @@ -720,9 +744,10 @@ s_client.o: s_apps.h s_server.o: ../include/openssl/asn1.h ../include/openssl/bio.h s_server.o: ../include/openssl/blowfish.h ../include/openssl/bn.h s_server.o: ../include/openssl/buffer.h ../include/openssl/cast.h -s_server.o: ../include/openssl/comp.h ../include/openssl/crypto.h -s_server.o: ../include/openssl/des.h ../include/openssl/dh.h -s_server.o: ../include/openssl/dsa.h ../include/openssl/e_os.h +s_server.o: ../include/openssl/comp.h ../include/openssl/conf.h +s_server.o: ../include/openssl/crypto.h ../include/openssl/des.h +s_server.o: ../include/openssl/dh.h ../include/openssl/dsa.h +s_server.o: ../include/openssl/e_os.h ../include/openssl/e_os.h s_server.o: ../include/openssl/e_os2.h ../include/openssl/engine.h s_server.o: ../include/openssl/err.h ../include/openssl/evp.h s_server.o: ../include/openssl/idea.h ../include/openssl/lhash.h @@ -744,9 +769,10 @@ s_server.o: s_apps.h s_socket.o: ../include/openssl/asn1.h ../include/openssl/bio.h s_socket.o: ../include/openssl/blowfish.h ../include/openssl/bn.h s_socket.o: ../include/openssl/buffer.h ../include/openssl/cast.h -s_socket.o: ../include/openssl/comp.h ../include/openssl/crypto.h -s_socket.o: ../include/openssl/des.h ../include/openssl/dh.h -s_socket.o: ../include/openssl/dsa.h ../include/openssl/e_os.h +s_socket.o: ../include/openssl/comp.h ../include/openssl/conf.h +s_socket.o: ../include/openssl/crypto.h ../include/openssl/des.h +s_socket.o: ../include/openssl/dh.h ../include/openssl/dsa.h +s_socket.o: ../include/openssl/e_os.h ../include/openssl/e_os.h s_socket.o: ../include/openssl/e_os2.h ../include/openssl/evp.h s_socket.o: ../include/openssl/idea.h ../include/openssl/lhash.h s_socket.o: ../include/openssl/md2.h ../include/openssl/md4.h @@ -766,9 +792,10 @@ s_socket.o: ../include/openssl/x509_vfy.h apps.h s_apps.h s_time.o: ../include/openssl/asn1.h ../include/openssl/bio.h s_time.o: ../include/openssl/blowfish.h ../include/openssl/bn.h s_time.o: ../include/openssl/buffer.h ../include/openssl/cast.h -s_time.o: ../include/openssl/comp.h ../include/openssl/crypto.h -s_time.o: ../include/openssl/des.h ../include/openssl/dh.h -s_time.o: ../include/openssl/dsa.h ../include/openssl/e_os.h +s_time.o: ../include/openssl/comp.h ../include/openssl/conf.h +s_time.o: ../include/openssl/crypto.h ../include/openssl/des.h +s_time.o: ../include/openssl/dh.h ../include/openssl/dsa.h +s_time.o: ../include/openssl/e_os.h ../include/openssl/e_os.h s_time.o: ../include/openssl/e_os2.h ../include/openssl/err.h s_time.o: ../include/openssl/evp.h ../include/openssl/idea.h s_time.o: ../include/openssl/lhash.h ../include/openssl/md2.h @@ -789,9 +816,10 @@ s_time.o: s_apps.h sess_id.o: ../include/openssl/asn1.h ../include/openssl/bio.h sess_id.o: ../include/openssl/blowfish.h ../include/openssl/bn.h sess_id.o: ../include/openssl/buffer.h ../include/openssl/cast.h -sess_id.o: ../include/openssl/comp.h ../include/openssl/crypto.h -sess_id.o: ../include/openssl/des.h ../include/openssl/dh.h -sess_id.o: ../include/openssl/dsa.h ../include/openssl/e_os.h +sess_id.o: ../include/openssl/comp.h ../include/openssl/conf.h +sess_id.o: ../include/openssl/crypto.h ../include/openssl/des.h +sess_id.o: ../include/openssl/dh.h ../include/openssl/dsa.h +sess_id.o: ../include/openssl/e_os.h ../include/openssl/e_os.h sess_id.o: ../include/openssl/e_os2.h ../include/openssl/err.h sess_id.o: ../include/openssl/evp.h ../include/openssl/idea.h sess_id.o: ../include/openssl/lhash.h ../include/openssl/md2.h @@ -811,8 +839,9 @@ sess_id.o: ../include/openssl/x509.h ../include/openssl/x509_vfy.h apps.h smime.o: ../include/openssl/asn1.h ../include/openssl/bio.h smime.o: ../include/openssl/blowfish.h ../include/openssl/bn.h smime.o: ../include/openssl/buffer.h ../include/openssl/cast.h -smime.o: ../include/openssl/crypto.h ../include/openssl/des.h -smime.o: ../include/openssl/dh.h ../include/openssl/dsa.h +smime.o: ../include/openssl/conf.h ../include/openssl/crypto.h +smime.o: ../include/openssl/des.h ../include/openssl/dh.h +smime.o: ../include/openssl/dsa.h ../include/openssl/e_os.h smime.o: ../include/openssl/e_os.h ../include/openssl/e_os2.h smime.o: ../include/openssl/engine.h ../include/openssl/err.h smime.o: ../include/openssl/evp.h ../include/openssl/idea.h @@ -831,8 +860,9 @@ smime.o: ../include/openssl/x509.h ../include/openssl/x509_vfy.h apps.h speed.o: ../include/openssl/asn1.h ../include/openssl/bio.h speed.o: ../include/openssl/blowfish.h ../include/openssl/bn.h speed.o: ../include/openssl/buffer.h ../include/openssl/cast.h -speed.o: ../include/openssl/crypto.h ../include/openssl/des.h -speed.o: ../include/openssl/dh.h ../include/openssl/dsa.h +speed.o: ../include/openssl/conf.h ../include/openssl/crypto.h +speed.o: ../include/openssl/des.h ../include/openssl/dh.h +speed.o: ../include/openssl/dsa.h ../include/openssl/e_os.h speed.o: ../include/openssl/e_os.h ../include/openssl/e_os2.h speed.o: ../include/openssl/engine.h ../include/openssl/err.h speed.o: ../include/openssl/evp.h ../include/openssl/hmac.h @@ -894,8 +924,9 @@ verify.o: ../include/openssl/x509v3.h apps.h version.o: ../include/openssl/asn1.h ../include/openssl/bio.h version.o: ../include/openssl/blowfish.h ../include/openssl/bn.h version.o: ../include/openssl/buffer.h ../include/openssl/cast.h -version.o: ../include/openssl/crypto.h ../include/openssl/des.h -version.o: ../include/openssl/dh.h ../include/openssl/dsa.h +version.o: ../include/openssl/conf.h ../include/openssl/crypto.h +version.o: ../include/openssl/des.h ../include/openssl/dh.h +version.o: ../include/openssl/dsa.h ../include/openssl/e_os.h version.o: ../include/openssl/e_os.h ../include/openssl/e_os2.h version.o: ../include/openssl/evp.h ../include/openssl/idea.h version.o: ../include/openssl/lhash.h ../include/openssl/md2.h diff --git a/apps/apps.h b/apps/apps.h index 5582e38f65..74d479e91d 100644 --- a/apps/apps.h +++ b/apps/apps.h @@ -66,6 +66,7 @@ #include #include #include +#include int app_RAND_load_file(const char *file, BIO *bio_e, int dont_warn); int app_RAND_write_file(const char *file, BIO *bio_e); @@ -99,7 +100,6 @@ extern BIO *bio_err; #else #define MAIN(a,v) PROG(a,v) -#include extern LHASH *config; extern char *default_config_file; extern BIO *bio_err; diff --git a/apps/speed.c b/apps/speed.c index d8d1b6d46d..f4aa784670 100644 --- a/apps/speed.c +++ b/apps/speed.c @@ -320,7 +320,7 @@ int MAIN(int argc, char **argv) #define DSA_NUM 3 long count,rsa_count; int i,j,k; - unsigned rsa_num,rsa_num2; + unsigned rsa_num; #ifndef NO_MD2 unsigned char md2[MD2_DIGEST_LENGTH]; #endif diff --git a/config b/config index fbdad5ce76..115957f6cc 100755 --- a/config +++ b/config @@ -247,6 +247,10 @@ case "${SYSTEM}:${RELEASE}:${VERSION}:${MACHINE}" in echo "${MACHINE}-v11-${SYSTEM}"; exit 0; ;; + NEWS-OS:4.*) + echo "mips-sony-newsos4"; exit 0; + ;; + esac # @@ -470,6 +474,7 @@ case "$GUESSOS" in # these are all covered by the catchall below # *-aix) OUT="aix-$CC" ;; # *-dgux) OUT="dgux" ;; + mips-sony-newsos4) OUT="newsos4-gcc" ;; *) OUT=`echo $GUESSOS | awk -F- '{print $3}'`;; esac diff --git a/crypto/bn/bn_mont.c b/crypto/bn/bn_mont.c index d40a153f24..ca58ad33d2 100644 --- a/crypto/bn/bn_mont.c +++ b/crypto/bn/bn_mont.c @@ -190,6 +190,7 @@ int BN_from_montgomery(BIGNUM *ret, BIGNUM *a, BN_MONT_CTX *mont, #if 0 BN_rshift(ret,r,mont->ri); #else + ret->neg = r->neg; x=ri; rp=ret->d; ap= &(r->d[x]); diff --git a/crypto/crypto-lib.com b/crypto/crypto-lib.com index 9286cda3aa..8db8832365 100644 --- a/crypto/crypto-lib.com +++ b/crypto/crypto-lib.com @@ -204,7 +204,8 @@ $ LIB_RSA = "rsa_eay,rsa_gen,rsa_lib,rsa_sign,rsa_saos,rsa_err,"+ - "rsa_pk1,rsa_ssl,rsa_none,rsa_oaep,rsa_chk,rsa_null" $ LIB_DSA = "dsa_gen,dsa_key,dsa_lib,dsa_asn1,dsa_vrf,dsa_sign,dsa_err,dsa_ossl" $ LIB_DH = "dh_gen,dh_key,dh_lib,dh_check,dh_err" -$ LIB_DSO = "dso_err,dso_lib,dso_null,dso_openssl" ! + ",dso_vms" +$ LIB_DSO = "dso_dl,dso_dlfcn,dso_err,dso_lib,dso_null,"+ - + "dso_openssl,dso_win32,dso_vms" $ LIB_ENGINE = "engine_err,engine_lib,engine_list,engine_openssl,"+ - "hw_atalla,hw_cswift,hw_ncipher" $ LIB_BUFFER = "buffer,buf_err" @@ -1138,7 +1139,7 @@ $ ENDIF $! $! Set Up Initial CC Definitions, Possibly With User Ones $! -$ CCDEFS = "VMS=1,TCPIP_TYPE_''P5'" +$ CCDEFS = "VMS=1,TCPIP_TYPE_''P5',DSO_VMS" $ IF F$TRNLNM("OPENSSL_NO_ASM") THEN CCDEFS = CCDEFS + ",NO_ASM" $ IF F$TRNLNM("OPENSSL_NO_RSA") THEN CCDEFS = CCDEFS + ",NO_RSA" $ IF F$TRNLNM("OPENSSL_NO_DSA") THEN CCDEFS = CCDEFS + ",NO_DSA" diff --git a/crypto/dso/Makefile.ssl b/crypto/dso/Makefile.ssl index c827b0befd..effc46d2dc 100644 --- a/crypto/dso/Makefile.ssl +++ b/crypto/dso/Makefile.ssl @@ -23,9 +23,9 @@ APPS= LIB=$(TOP)/libcrypto.a LIBSRC= dso_dl.c dso_dlfcn.c dso_err.c dso_lib.c dso_null.c \ - dso_openssl.c dso_win32.c + dso_openssl.c dso_win32.c dso_vms.c LIBOBJ= dso_dl.o dso_dlfcn.o dso_err.o dso_lib.o dso_null.o \ - dso_openssl.o dso_win32.o + dso_openssl.o dso_win32.o dso_vms.o SRC= $(LIBSRC) @@ -123,6 +123,13 @@ dso_openssl.o: ../../include/openssl/opensslconf.h dso_openssl.o: ../../include/openssl/opensslv.h dso_openssl.o: ../../include/openssl/safestack.h ../../include/openssl/stack.h dso_openssl.o: ../../include/openssl/symhacks.h ../cryptlib.h +dso_vms.o: ../../include/openssl/bio.h ../../include/openssl/buffer.h +dso_vms.o: ../../include/openssl/crypto.h ../../include/openssl/dso.h +dso_vms.o: ../../include/openssl/e_os.h ../../include/openssl/e_os2.h +dso_vms.o: ../../include/openssl/err.h ../../include/openssl/lhash.h +dso_vms.o: ../../include/openssl/opensslconf.h ../../include/openssl/opensslv.h +dso_vms.o: ../../include/openssl/safestack.h ../../include/openssl/stack.h +dso_vms.o: ../../include/openssl/symhacks.h ../cryptlib.h dso_win32.o: ../../include/openssl/bio.h ../../include/openssl/buffer.h dso_win32.o: ../../include/openssl/crypto.h ../../include/openssl/dso.h dso_win32.o: ../../include/openssl/e_os.h ../../include/openssl/e_os2.h diff --git a/crypto/dso/dso.h b/crypto/dso/dso.h index af51d53dbd..bed7c464a6 100644 --- a/crypto/dso/dso.h +++ b/crypto/dso/dso.h @@ -80,6 +80,12 @@ extern "C" { */ #define DSO_FLAG_NAME_TRANSLATION 0x01 +/* The following flag controls the translation of symbol names to upper + * case. This is currently only being implemented for OpenVMS. + */ +#define DSO_FLAG_UPCASE_SYMBOL 0x02 + + typedef void (*DSO_FUNC_TYPE)(void); typedef struct dso_st DSO; @@ -185,6 +191,9 @@ DSO_METHOD *DSO_METHOD_dl(void); /* If WIN32 is defined, use DLLs. If not, return NULL. */ DSO_METHOD *DSO_METHOD_win32(void); +/* If VMS is defined, use shared images. If not, return NULL. */ +DSO_METHOD *DSO_METHOD_vms(void); + void ERR_load_DSO_strings(void); /* BEGIN ERROR CODES */ @@ -212,6 +221,10 @@ void ERR_load_DSO_strings(void); #define DSO_F_DSO_LOAD 114 #define DSO_F_DSO_NEW_METHOD 115 #define DSO_F_DSO_UP 116 +#define DSO_F_VMS_BIND_VAR 122 +#define DSO_F_VMS_CTRL 123 +#define DSO_F_VMS_LOAD 124 +#define DSO_F_VMS_UNLOAD 125 #define DSO_F_WIN32_BIND_FUNC 117 #define DSO_F_WIN32_BIND_VAR 118 #define DSO_F_WIN32_CTRL 119 @@ -220,6 +233,7 @@ void ERR_load_DSO_strings(void); /* Reason codes. */ #define DSO_R_CTRL_FAILED 100 +#define DSO_R_FILENAME_TOO_BIG 109 #define DSO_R_FINISH_FAILED 101 #define DSO_R_LOAD_FAILED 102 #define DSO_R_NULL_HANDLE 103 diff --git a/crypto/dso/dso_err.c b/crypto/dso/dso_err.c index 70d35cea26..a3d7321c9b 100644 --- a/crypto/dso/dso_err.c +++ b/crypto/dso/dso_err.c @@ -83,6 +83,10 @@ static ERR_STRING_DATA DSO_str_functs[]= {ERR_PACK(0,DSO_F_DSO_LOAD,0), "DSO_load"}, {ERR_PACK(0,DSO_F_DSO_NEW_METHOD,0), "DSO_new_method"}, {ERR_PACK(0,DSO_F_DSO_UP,0), "DSO_up"}, +{ERR_PACK(0,DSO_F_VMS_BIND_VAR,0), "VMS_BIND_VAR"}, +{ERR_PACK(0,DSO_F_VMS_CTRL,0), "VMS_CTRL"}, +{ERR_PACK(0,DSO_F_VMS_LOAD,0), "VMS_LOAD"}, +{ERR_PACK(0,DSO_F_VMS_UNLOAD,0), "VMS_UNLOAD"}, {ERR_PACK(0,DSO_F_WIN32_BIND_FUNC,0), "WIN32_BIND_FUNC"}, {ERR_PACK(0,DSO_F_WIN32_BIND_VAR,0), "WIN32_BIND_VAR"}, {ERR_PACK(0,DSO_F_WIN32_CTRL,0), "WIN32_CTRL"}, @@ -94,6 +98,7 @@ static ERR_STRING_DATA DSO_str_functs[]= static ERR_STRING_DATA DSO_str_reasons[]= { {DSO_R_CTRL_FAILED ,"control command failed"}, +{DSO_R_FILENAME_TOO_BIG ,"filename too big"}, {DSO_R_FINISH_FAILED ,"cleanup method function failed"}, {DSO_R_LOAD_FAILED ,"could not load the shared library"}, {DSO_R_NULL_HANDLE ,"a null shared library handle was used"}, diff --git a/crypto/dso/dso_openssl.c b/crypto/dso/dso_openssl.c index fb12572311..a4395ebffe 100644 --- a/crypto/dso/dso_openssl.c +++ b/crypto/dso/dso_openssl.c @@ -72,6 +72,8 @@ DSO_METHOD *DSO_METHOD_openssl(void) return(DSO_METHOD_dl()); #elif defined(DSO_WIN32) return(DSO_METHOD_win32()); +#elif defined(DSO_VMS) + return(DSO_METHOD_vms()); #else return(DSO_METHOD_null()); #endif diff --git a/crypto/rand/rand_win.c b/crypto/rand/rand_win.c index 82955d8d30..e9fc37c567 100644 --- a/crypto/rand/rand_win.c +++ b/crypto/rand/rand_win.c @@ -130,14 +130,27 @@ static void readtimer(void); static void readscreen(void); -/* It appears like PCURSORINFO is only defined when WINVER is 0x0500 and up, - which currently only happens on Win2000. Unfortunately, that is a typedef, - so it's a little bit difficult to detect properly. On the other hand, the - macro CURSOR_SHOWING is defined within the same conditional, so it can be - use to detect the absence of PCURSORINFO. */ +/* It appears like CURSORINFO, PCURSORINFO and LPCURSORINFO are only defined + when WINVER is 0x0500 and up, which currently only happens on Win2000. + Unfortunately, those are typedefs, so they're a little bit difficult to + detect properly. On the other hand, the macro CURSOR_SHOWING is defined + within the same conditional, so it can be use to detect the absence of said + typedefs. */ + #ifndef CURSOR_SHOWING -typedef void *PCURSORINFO; -#endif +/* + * Information about the global cursor. + */ +typedef struct tagCURSORINFO +{ + DWORD cbSize; + DWORD flags; + HCURSOR hCursor; + POINT ptScreenPos; +} CURSORINFO, *PCURSORINFO, *LPCURSORINFO; + +#define CURSOR_SHOWING 0x00000001 +#endif /* CURSOR_SHOWING */ typedef BOOL (WINAPI *CRYPTACQUIRECONTEXT)(HCRYPTPROV *, LPCTSTR, LPCTSTR, DWORD, DWORD); @@ -242,12 +255,17 @@ int RAND_poll(void) RAND_add(&h, sizeof(h), 0); } +#if 0 if (cursor) { /* cursor position */ - cursor((PCURSORINFO)buf); - RAND_add(buf, sizeof(buf), 0); + PCURSORINFO p = (PCURSORINFO) buf; + p->cbSize = sizeof(CURSORINFO); + if (cursor(p)) + RAND_add(p+sizeof(p->cbSize), + p->cbSize-sizeof(p->cbSize), 0); } +#endif if (queue) { diff --git a/doc/crypto/BIO_ctrl.pod b/doc/crypto/BIO_ctrl.pod index dfec019614..5ef27f487e 100644 --- a/doc/crypto/BIO_ctrl.pod +++ b/doc/crypto/BIO_ctrl.pod @@ -2,7 +2,10 @@ =head1 NAME - BIO_ctrl, BIO_callback_ctrl, BIO_ptr_ctrl, BIO_int_ctrl - BIO control operations +BIO_ctrl, BIO_callback_ctrl, BIO_ptr_ctrl, BIO_int_ctrl, BIO_reset, +BIO_flush, BIO_eof, BIO_set_close, BIO_get_close, BIO_pending, +BIO_wpending, BIO_ctrl_pending, BIO_ctrl_wpending, BIO_get_info_callback, +BIO_set_info_callback - BIO control operations =head1 SYNOPSIS diff --git a/doc/crypto/BIO_f_base64.pod b/doc/crypto/BIO_f_base64.pod index ec90fc2228..fdb603b38e 100644 --- a/doc/crypto/BIO_f_base64.pod +++ b/doc/crypto/BIO_f_base64.pod @@ -2,7 +2,7 @@ =head1 NAME - BIO_f_base64 - base64 BIO +BIO_f_base64 - base64 BIO filter =head1 SYNOPSIS diff --git a/doc/crypto/BIO_f_cipher.pod b/doc/crypto/BIO_f_cipher.pod index 7270c743c5..e024865cd4 100644 --- a/doc/crypto/BIO_f_cipher.pod +++ b/doc/crypto/BIO_f_cipher.pod @@ -2,7 +2,7 @@ =head1 NAME - BIO_f_cipher - cipher BIO +BIO_f_cipher, BIO_set_cipher, BIO_get_cipher_status, BIO_get_cipher_ctx - cipher BIO filter =head1 SYNOPSIS diff --git a/doc/crypto/BIO_f_md.pod b/doc/crypto/BIO_f_md.pod index a5bb692221..0845d2bc2b 100644 --- a/doc/crypto/BIO_f_md.pod +++ b/doc/crypto/BIO_f_md.pod @@ -2,7 +2,7 @@ =head1 NAME - BIO_f_md - message digest BIO +BIO_f_md, BIO_set_md, BIO_get_md, BIO_get_md_ctx - message digest BIO filter =head1 SYNOPSIS diff --git a/doc/crypto/BIO_f_null.pod b/doc/crypto/BIO_f_null.pod index 8156b51b8f..b057c18408 100644 --- a/doc/crypto/BIO_f_null.pod +++ b/doc/crypto/BIO_f_null.pod @@ -2,7 +2,7 @@ =head1 NAME - BIO_f_null - null filter +BIO_f_null - null filter =head1 SYNOPSIS diff --git a/doc/crypto/BIO_find_type.pod b/doc/crypto/BIO_find_type.pod index cc18c06228..bd3b256196 100644 --- a/doc/crypto/BIO_find_type.pod +++ b/doc/crypto/BIO_find_type.pod @@ -2,7 +2,7 @@ =head1 NAME - BIO_find_type, BIO_next - BIO chain traversal +BIO_find_type, BIO_next - BIO chain traversal =head1 SYNOPSIS diff --git a/doc/crypto/BIO_new.pod b/doc/crypto/BIO_new.pod index 3c8f947da3..53d56b2e6f 100644 --- a/doc/crypto/BIO_new.pod +++ b/doc/crypto/BIO_new.pod @@ -2,7 +2,7 @@ =head1 NAME - BIO_new, BIO_set, BIO_free, BIO_vfree, BIO_free_all - BIO allocation and freeing functions +BIO_new, BIO_set, BIO_free, BIO_vfree, BIO_free_all - BIO allocation and freeing functions =head1 SYNOPSIS diff --git a/doc/crypto/BIO_push.pod b/doc/crypto/BIO_push.pod index 5d0d39e4f0..8af1d3c097 100644 --- a/doc/crypto/BIO_push.pod +++ b/doc/crypto/BIO_push.pod @@ -2,7 +2,7 @@ =head1 NAME - BIO_push, BIO_pop - add and remove BIOs from a chain. +BIO_push, BIO_pop - add and remove BIOs from a chain. =head1 SYNOPSIS diff --git a/doc/crypto/BIO_read.pod b/doc/crypto/BIO_read.pod index e7eb5ea045..563806c206 100644 --- a/doc/crypto/BIO_read.pod +++ b/doc/crypto/BIO_read.pod @@ -2,16 +2,16 @@ =head1 NAME - BIO_read, BIO_write, BIO_gets, BIO_puts - BIO I/O functions +BIO_read, BIO_write, BIO_gets, BIO_puts - BIO I/O functions =head1 SYNOPSIS #include -int BIO_read(BIO *b, void *buf, int len); -int BIO_gets(BIO *b,char *buf, int size); -int BIO_write(BIO *b, const void *buf, int len); -int BIO_puts(BIO *b,const char *buf); + int BIO_read(BIO *b, void *buf, int len); + int BIO_gets(BIO *b,char *buf, int size); + int BIO_write(BIO *b, const void *buf, int len); + int BIO_puts(BIO *b,const char *buf); =head1 DESCRIPTION diff --git a/doc/crypto/BIO_s_fd.pod b/doc/crypto/BIO_s_fd.pod index 5c7c55fa89..da08ba1023 100644 --- a/doc/crypto/BIO_s_fd.pod +++ b/doc/crypto/BIO_s_fd.pod @@ -2,7 +2,7 @@ =head1 NAME - BIO_s_fd - file descriptor BIO +BIO_s_fd, BIO_set_fd, BIO_get_fd, BIO_new_fd - file descriptor BIO =head1 SYNOPSIS @@ -10,9 +10,6 @@ BIO_METHOD * BIO_s_fd(void); - #define BIO_seek(b,ofs) (int)BIO_ctrl(b,BIO_C_FILE_SEEK,ofs,NULL) - #define BIO_tell(b) (int)BIO_ctrl(b,BIO_C_FILE_TELL,0,NULL) - #define BIO_set_fd(b,fd,c) BIO_int_ctrl(b,BIO_C_SET_FD,c,fd) #define BIO_get_fd(b,c) BIO_ctrl(b,BIO_C_GET_FD,0,(char *)c) @@ -20,7 +17,7 @@ =head1 DESCRIPTION -BIO_f_fd() returns the file descriptor BIO method. This is a wrapper +BIO_s_fd() returns the file descriptor BIO method. This is a wrapper round the platforms file descriptor routines such as read() and write(). BIO_read() and BIO_write() read or write the underlying descriptor. @@ -32,11 +29,6 @@ file descriptor when the BIO is freed. BIO_reset() attempts to change the file pointer to the start of file using lseek(fd, 0, 0). -BIO_seek() sets the file pointer to position B from start of file -using lseek(fd, ofs, 0). - -BIO_tell() returns the current file position by calling lseek(fd, 0, 1). - BIO_set_fd() sets the file descriptor of BIO B to B and the close flag to B. @@ -85,4 +77,4 @@ This is a file descriptor BIO version of "Hello World": =head1 SEE ALSO -TBA +L, L, TBA diff --git a/doc/crypto/BIO_s_file.pod b/doc/crypto/BIO_s_file.pod index b46c88c41b..10fe4933c7 100644 --- a/doc/crypto/BIO_s_file.pod +++ b/doc/crypto/BIO_s_file.pod @@ -2,7 +2,9 @@ =head1 NAME - BIO_s_file - FILE bio. +BIO_s_file, BIO_new_file, BIO_new_fp, BIO_set_fp, BIO_get_fp, +BIO_read_filename, BIO_write_filename, BIO_append_filename, +BIO_rw_filename - FILE bio =head1 SYNOPSIS @@ -15,9 +17,6 @@ BIO_set_fp(BIO *b,FILE *fp, int flags); BIO_get_fp(BIO *b,FILE **fpp); - BIO_seek(BIO *b,int offset); - int BIO_tell(BIO *b); - int BIO_read_filename(BIO *b, char *name) int BIO_write_filename(BIO *b, char *name) int BIO_append_filename(BIO *b, char *name) @@ -57,11 +56,6 @@ meaning as in BIO_new_fp(), it is a macro. BIO_get_fp() retrieves the fp of a file BIO, it is a macro. -BIO_seek() is a macro that sets the position pointer to B bytes -from the start of file. - -BIO_tell() returns the value of the position pointer. - BIO_read_filename(), BIO_write_filename(), BIO_append_filename() and BIO_rw_filename() set the file BIO B to use file B for reading, writing, append or read write respectively. @@ -117,14 +111,9 @@ occurred. BIO_set_fp() and BIO_get_fp() return 1 for success or 0 for failure (although the current implementation never return 0). -BIO_seek() returns the same value as the underlying fseek() function: -0 for success or -1 for failure. - -BIO_tell() returns the current file position. - BIO_read_filename(), BIO_write_filename(), BIO_append_filename() and BIO_rw_filename() return 1 for success or 0 for failure. =head1 SEE ALSO -TBA +L, L, TBA diff --git a/doc/crypto/BIO_s_mem.pod b/doc/crypto/BIO_s_mem.pod index 9eb1fc056a..0c5f58ed1b 100644 --- a/doc/crypto/BIO_s_mem.pod +++ b/doc/crypto/BIO_s_mem.pod @@ -2,7 +2,8 @@ =head1 NAME - BIO_s_mem - memory BIO +BIO_s_mem, BIO_set_mem_eof_return, BIO_get_mem_data, BIO_set_mem_buf, +BIO_get_mem_ptr, BIO_new_mem_buf - memory BIO =head1 SYNOPSIS diff --git a/doc/crypto/BIO_s_null.pod b/doc/crypto/BIO_s_null.pod index c64c9838bc..e5514f7238 100644 --- a/doc/crypto/BIO_s_null.pod +++ b/doc/crypto/BIO_s_null.pod @@ -2,7 +2,7 @@ =head1 NAME - BIO_s_null - null data sink +BIO_s_null - null data sink =head1 SYNOPSIS diff --git a/doc/crypto/BIO_set_callback.pod b/doc/crypto/BIO_set_callback.pod index c6ae12b21d..9b6961ca8d 100644 --- a/doc/crypto/BIO_set_callback.pod +++ b/doc/crypto/BIO_set_callback.pod @@ -2,7 +2,8 @@ =head1 NAME - BIO_set_callback, BIO_get_callback - BIO callback +BIO_set_callback, BIO_get_callback, BIO_set_callback_arg, BIO_get_callback_arg, +BIO_debug_callback - BIO callback functions =head1 SYNOPSIS diff --git a/doc/crypto/BIO_should_retry.pod b/doc/crypto/BIO_should_retry.pod index 6d291b1888..539c391272 100644 --- a/doc/crypto/BIO_should_retry.pod +++ b/doc/crypto/BIO_should_retry.pod @@ -2,7 +2,9 @@ =head1 NAME - BIO_should_retry, BIO_should_read, BIO_should_write - BIO retry functions +BIO_should_retry, BIO_should_read, BIO_should_write, +BIO_should_io_special, BIO_retry_type, BIO_should_retry, +BIO_get_retry_BIO, BIO_get_retry_reason - BIO retry functions =head1 SYNOPSIS diff --git a/doc/crypto/BN_mod_mul_reciprocal.pod b/doc/crypto/BN_mod_mul_reciprocal.pod index 32432ce4e6..a28925f8a9 100644 --- a/doc/crypto/BN_mod_mul_reciprocal.pod +++ b/doc/crypto/BN_mod_mul_reciprocal.pod @@ -2,7 +2,7 @@ =head1 NAME -BN_mod_mul_reciprocal, BN_RECP_CTX_new, BN_RECP_CTX_init, +BN_mod_mul_reciprocal, BN_div_recp, BN_RECP_CTX_new, BN_RECP_CTX_init, BN_RECP_CTX_free, BN_RECP_CTX_set - modular multiplication using reciprocal diff --git a/doc/crypto/BN_zero.pod b/doc/crypto/BN_zero.pod index 165fd9a228..2f33876498 100644 --- a/doc/crypto/BN_zero.pod +++ b/doc/crypto/BN_zero.pod @@ -2,7 +2,8 @@ =head1 NAME -BN_zero, BN_one, BN_set_word, BN_get_word - BIGNUM assignment operations +BN_zero, BN_one, BN_value_one, BN_set_word, BN_get_word - BIGNUM assignment +operations =head1 SYNOPSIS diff --git a/doc/crypto/ERR_error_string.pod b/doc/crypto/ERR_error_string.pod index d09620e935..e01beb817a 100644 --- a/doc/crypto/ERR_error_string.pod +++ b/doc/crypto/ERR_error_string.pod @@ -2,7 +2,9 @@ =head1 NAME -ERR_error_string - obtain human-readable error message +ERR_error_string, ERR_error_string_n, ERR_lib_error_string, +ERR_func_error_string, ERR_reason_error_string - obtain human-readable +error message =head1 SYNOPSIS diff --git a/doc/crypto/ERR_get_error.pod b/doc/crypto/ERR_get_error.pod index 75ece00d97..04074ffa90 100644 --- a/doc/crypto/ERR_get_error.pod +++ b/doc/crypto/ERR_get_error.pod @@ -2,7 +2,8 @@ =head1 NAME -ERR_get_error, ERR_peek_error - obtain error code +ERR_get_error, ERR_peek_error, ERR_get_error_line, ERR_peek_error_line, +ERR_get_error_line_data, ERR_peek_error_line_data - obtain error code and data =head1 SYNOPSIS diff --git a/doc/crypto/EVP_DigestInit.pod b/doc/crypto/EVP_DigestInit.pod index 345b1ddfa7..f87377945b 100644 --- a/doc/crypto/EVP_DigestInit.pod +++ b/doc/crypto/EVP_DigestInit.pod @@ -2,7 +2,12 @@ =head1 NAME -EVP_DigestInit, EVP_DigestUpdate, EVP_DigestFinal - EVP digest routines +EVP_DigestInit, EVP_DigestUpdate, EVP_DigestFinal, EVP_MAX_MD_SIZE, +EVP_MD_CTX_copy, EVP_MD_type, EVP_MD_pkey_type, EVP_MD_size, EVP_MD_block_size, +EVP_MD_CTX_md, EVP_MD_CTX_size, EVP_MD_CTX_block_size, EVP_MD_CTX_type, +EVP_md_null, EVP_md2, EVP_md5, EVP_sha, EVP_sha1, EVP_dss, EVP_dss1, EVP_mdc2, +EVP_ripemd160, EVP_get_digestbyname, EVP_get_digestbynid, EVP_get_digestbyobj - +EVP digest routines =head1 SYNOPSIS diff --git a/doc/crypto/EVP_EncryptInit.pod b/doc/crypto/EVP_EncryptInit.pod index a5cda778ca..447e7f1a92 100644 --- a/doc/crypto/EVP_EncryptInit.pod +++ b/doc/crypto/EVP_EncryptInit.pod @@ -2,7 +2,17 @@ =head1 NAME -EVP_EncryptInit, EVP_EncryptUpdate, EVP_EncryptFinal - EVP cipher routines +EVP_EncryptInit, EVP_EncryptUpdate, EVP_EncryptFinal, EVP_DecryptInit, +EVP_DecryptUpdate, EVP_DecryptFinal, EVP_CipherInit, EVP_CipherUpdate, +EVP_CipherFinal, EVP_CIPHER_CTX_set_key_length, EVP_CIPHER_CTX_ctrl, +EVP_CIPHER_CTX_cleanup, EVP_get_cipherbyname, EVP_get_cipherbynid, +EVP_get_cipherbyobj, EVP_CIPHER_nid, EVP_CIPHER_block_size, +EVP_CIPHER_key_length, EVP_CIPHER_iv_length, EVP_CIPHER_flags, +EVP_CIPHER_mode, EVP_CIPHER_type, EVP_CIPHER_CTX_cipher, EVP_CIPHER_CTX_nid, +EVP_CIPHER_CTX_block_size, EVP_CIPHER_CTX_key_length, EVP_CIPHER_CTX_iv_length, +EVP_CIPHER_CTX_get_app_data, EVP_CIPHER_CTX_set_app_data, EVP_CIPHER_CTX_type, +EVP_CIPHER_CTX_flags, EVP_CIPHER_CTX_mode, EVP_CIPHER_param_to_asn1, +EVP_CIPHER_asn1_to_param - EVP cipher routines =head1 SYNOPSIS diff --git a/doc/crypto/OPENSSL_VERSION_NUMBER.pod b/doc/crypto/OPENSSL_VERSION_NUMBER.pod index b0b1058d19..e333b30723 100644 --- a/doc/crypto/OPENSSL_VERSION_NUMBER.pod +++ b/doc/crypto/OPENSSL_VERSION_NUMBER.pod @@ -2,7 +2,7 @@ =head1 NAME -OPENSSL_VERSION_NUMBER, SSLeay - get OpenSSL version number +OPENSSL_VERSION_NUMBER, SSLeay SSLeay_version - get OpenSSL version number =head1 SYNOPSIS @@ -11,11 +11,27 @@ OPENSSL_VERSION_NUMBER, SSLeay - get OpenSSL version number #include long SSLeay(void); + char *SSLeay_version(int t); =head1 DESCRIPTION OPENSSL_VERSION_NUMBER is a numeric release version identifier: + MMNNFFPPS: major minor fix patch status + +The status nibble has one of the values 0 for development, 1 to e for betas +1 to 14, and f for release. + +for example + + 0x000906000 == 0.9.6 dev + 0x000906023 == 0.9.6b beta 3 + 0x00090605f == 0.9.6e release + +Versions prior to 0.9.3 have identifiers E 0x0930. +Versions between 0.9.3 and 0.9.5 had a version identifier with this +interpretation: + MMNNFFRBB major minor fix final beta/patch for example @@ -23,13 +39,39 @@ for example 0x000904100 == 0.9.4 release 0x000905000 == 0.9.5 dev -Versions prior to 0.9.3 have identifiers E 0x0930. +Version 0.9.5a had an interrim interpretation that is like the current one, +except the patch level got the highest bit set, to keep continuity. The +number was therefore 0x0090581f. + + For backward compatibility, SSLEAY_VERSION_NUMBER is also defined. SSLeay() returns this number. The return value can be compared to the macro to make sure that the correct version of the library has been loaded, especially when using DLLs on Windows systems. +SSLeay_version() returns different strings depending on B: + +=over 4 + +=item SSLEAY_VERSION +The text variant of the version number and the release date. For example, +"OpenSSL 0.9.5a 1 Apr 2000". + +=item SSLEAY_CFLAGS +The flags given to the C compiler when compiling OpenSSL are returned in a +string. + +=item SSLEAY_PLATFORM +The platform name used when OpenSSL was configured is returned. + +=back + +If the data request isn't available, a text saying that the information is +not available is returned. + +For an unknown B, the text "not available" is returned. + =head1 RETURN VALUE The version number. diff --git a/doc/crypto/OpenSSL_add_all_algorithms.pod b/doc/crypto/OpenSSL_add_all_algorithms.pod index 1300fe190c..3f89068001 100644 --- a/doc/crypto/OpenSSL_add_all_algorithms.pod +++ b/doc/crypto/OpenSSL_add_all_algorithms.pod @@ -2,7 +2,8 @@ =head1 NAME -OpenSSL_add_all_algorithms() - add algorithms to internal table +OpenSSL_add_all_algorithms, OpenSSL_add_all_ciphers, OpenSSL_add_all_digests - +add algorithms to internal table =head1 SYNOPSIS diff --git a/doc/crypto/RSA_get_ex_new_index.pod b/doc/crypto/RSA_get_ex_new_index.pod index 920dc76325..46cc8f5359 100644 --- a/doc/crypto/RSA_get_ex_new_index.pod +++ b/doc/crypto/RSA_get_ex_new_index.pod @@ -17,14 +17,12 @@ RSA_get_ex_new_index, RSA_set_ex_data, RSA_get_ex_data - add application specifi void *RSA_get_ex_data(RSA *r, int idx); - int new_func(void *parent, void *ptr, CRYPTO_EX_DATA *ad, - int idx, long argl, void *argp); - - void free_func(void *parent, void *ptr, CRYPTO_EX_DATA *ad, - int idx, long argl, void *argp); - - int dup_func(CRYPTO_EX_DATA *to, CRYPTO_EX_DATA *from, void *from_d, - int idx, long argl, void *argp); + typedef int new_func(void *parent, void *ptr, CRYPTO_EX_DATA *ad, + int idx, long argl, void *argp); + typedef void free_func(void *parent, void *ptr, CRYPTO_EX_DATA *ad, + int idx, long argl, void *argp); + typedef int dup_func(CRYPTO_EX_DATA *to, CRYPTO_EX_DATA *from, void *from_d, + int idx, long argl, void *argp); =head1 DESCRIPTION diff --git a/doc/crypto/RSA_print.pod b/doc/crypto/RSA_print.pod index dd968a5274..67876facc5 100644 --- a/doc/crypto/RSA_print.pod +++ b/doc/crypto/RSA_print.pod @@ -2,8 +2,9 @@ =head1 NAME -RSA_print, RSA_print_fp, DHparams_print, DHparams_print_fp - print -cryptographic parameters +RSA_print, RSA_print_fp, DHparams_print, DHparams_print_fp, DSA_print, +DSA_print_fp, DHparams_print, DHparams_print_fp - print cryptographic +parameters =head1 SYNOPSIS diff --git a/doc/crypto/RSA_set_method.pod b/doc/crypto/RSA_set_method.pod index 9e52b7b4d7..b672712292 100644 --- a/doc/crypto/RSA_set_method.pod +++ b/doc/crypto/RSA_set_method.pod @@ -4,7 +4,7 @@ RSA_set_default_method, RSA_get_default_method, RSA_set_method, RSA_get_method, RSA_PKCS1_SSLeay, RSA_PKCS1_RSAref, -RSA_PKCS1_null_method, RSA_flags, RSA_new_method - select RSA method +RSA_null_method, RSA_flags, RSA_new_method - select RSA method =head1 SYNOPSIS diff --git a/doc/crypto/hmac.pod b/doc/crypto/hmac.pod index 45b6108c39..f86e7d7ddf 100644 --- a/doc/crypto/hmac.pod +++ b/doc/crypto/hmac.pod @@ -2,7 +2,8 @@ =head1 NAME -HMAC, HMAC_Init, HMAC_Update, HMAC_Final - HMAC message authentication code +HMAC, HMAC_Init, HMAC_Update, HMAC_Final, HMAC_cleanup - HMAC message +authentication code =head1 SYNOPSIS diff --git a/doc/crypto/threads.pod b/doc/crypto/threads.pod index 0df1074d31..bcaa94d1bb 100644 --- a/doc/crypto/threads.pod +++ b/doc/crypto/threads.pod @@ -2,7 +2,10 @@ =head1 NAME -CRYPTO_set_locking_callback, CRYPTO_set_id_callback - OpenSSL thread support +CRYPTO_set_locking_callback, CRYPTO_set_id_callback, CRYPTO_num_locks, +CRYPTO_set_dynlock_create_callback, CRYPTO_set_dynlock_lock_callback, +CRYPTO_set_dynlock_destroy_callback, CRYPTO_get_new_dynlockid, +CRYPTO_destroy_dynlockid, CRYPTO_lock - OpenSSL thread support =head1 SYNOPSIS @@ -33,6 +36,17 @@ CRYPTO_set_locking_callback, CRYPTO_set_id_callback - OpenSSL thread support void CRYPTO_lock(int mode, int n, const char *file, int line); + #define CRYPTO_w_lock(type) \ + CRYPTO_lock(CRYPTO_LOCK|CRYPTO_WRITE,type,__FILE__,__LINE__) + #define CRYPTO_w_unlock(type) \ + CRYPTO_lock(CRYPTO_UNLOCK|CRYPTO_WRITE,type,__FILE__,__LINE__) + #define CRYPTO_r_lock(type) \ + CRYPTO_lock(CRYPTO_LOCK|CRYPTO_READ,type,__FILE__,__LINE__) + #define CRYPTO_r_unlock(type) \ + CRYPTO_lock(CRYPTO_UNLOCK|CRYPTO_READ,type,__FILE__,__LINE__) + #define CRYPTO_add(addr,amount,type) \ + CRYPTO_add_lock(addr,amount,type,__FILE__,__LINE__) + =head1 DESCRIPTION OpenSSL can safely be used in multi-threaded applications provided @@ -57,6 +71,8 @@ Additionally, OpenSSL supports dynamic locks, and sometimes, some parts of OpenSSL need it for better performance. To enable this, the following is required: +=over 4 + =item * Three additional callback function, dyn_create_function, dyn_lock_function and dyn_destroy_function. @@ -64,6 +80,8 @@ and dyn_destroy_function. =item * A structure defined with the data that each lock needs to handle. +=back + struct CRYPTO_dynlock_value has to be defined to contain whatever structure is needed to handle locks. diff --git a/e_os.h b/e_os.h index 3af6efb0e0..77efc6e35b 100644 --- a/e_os.h +++ b/e_os.h @@ -283,12 +283,16 @@ extern "C" { # ifndef NO_SYS_TYPES_H # include # endif -# ifdef NeXT +# if defined(NeXT) || defined(NEWS4) # define pid_t int /* pid_t is missing on NEXTSTEP/OPENSTEP * (unless when compiling with -D_POSIX_SOURCE, * which doesn't work for us) */ # define ssize_t int /* ditto */ # endif +# ifdef NEWS4 /* setvbuf is missing on mips-sony-bsd */ +# define setvbuf(a, b, c, d) setbuffer((a), (b), (d)) + typedef unsigned long clock_t; +# endif # define OPENSSL_CONF "openssl.cnf" # define SSLEAY_CONF OPENSSL_CONF diff --git a/util/libeay.num b/util/libeay.num index 0465be4cff..8186525c47 100755 --- a/util/libeay.num +++ b/util/libeay.num @@ -1868,59 +1868,60 @@ des_rw_mode 2458 EXIST::VARIABLE:DES RSA_PKCS1_RSAref 2459 EXIST:RSAREF:FUNCTION:RSA X509_keyid_set1 2460 EXIST::FUNCTION: BIO_next 2461 EXIST::FUNCTION: -ERR_load_ENGINE_strings 2462 EXIST::FUNCTION: -ENGINE_set_DSA 2463 EXIST::FUNCTION: -ENGINE_get_finish_function 2464 EXIST::FUNCTION: -ENGINE_get_default_RSA 2465 EXIST::FUNCTION: -ENGINE_get_BN_mod_exp 2466 EXIST::FUNCTION: -DSA_get_default_openssl_method 2467 EXIST::FUNCTION:DSA -ENGINE_set_DH 2468 EXIST::FUNCTION: -ENGINE_set_default_BN_mod_exp_crt 2469 EXIST::FUNCTION: -ENGINE_init 2470 EXIST::FUNCTION: -DH_get_default_openssl_method 2471 EXIST::FUNCTION:DH -RSA_set_default_openssl_method 2472 EXIST::FUNCTION:RSA -ENGINE_finish 2473 EXIST::FUNCTION: -ENGINE_load_public_key 2474 EXIST::FUNCTION: -ENGINE_get_DH 2475 EXIST::FUNCTION: -ENGINE_ctrl 2476 EXIST::FUNCTION: -ENGINE_get_init_function 2477 EXIST::FUNCTION: -ENGINE_set_init_function 2478 EXIST::FUNCTION: -ENGINE_set_default_DSA 2479 EXIST::FUNCTION: -ENGINE_get_name 2480 EXIST::FUNCTION: -ENGINE_get_last 2481 EXIST::FUNCTION: -ENGINE_get_prev 2482 EXIST::FUNCTION: -ENGINE_get_default_DH 2483 EXIST::FUNCTION: -ENGINE_get_RSA 2484 EXIST::FUNCTION: -ENGINE_set_default 2485 EXIST::FUNCTION: -ENGINE_get_RAND 2486 EXIST::FUNCTION: -ENGINE_get_first 2487 EXIST::FUNCTION: -ENGINE_by_id 2488 EXIST::FUNCTION: -ENGINE_set_finish_function 2489 EXIST::FUNCTION: -ENGINE_get_default_BN_mod_exp_crt 2490 EXIST::FUNCTION: -RSA_get_default_openssl_method 2491 EXIST::FUNCTION:RSA -ENGINE_set_RSA 2492 EXIST::FUNCTION: -ENGINE_load_private_key 2493 EXIST::FUNCTION: -ENGINE_set_default_RAND 2494 EXIST::FUNCTION: -ENGINE_set_BN_mod_exp 2495 EXIST::FUNCTION: -ENGINE_remove 2496 EXIST::FUNCTION: -ENGINE_free 2497 EXIST::FUNCTION: -ENGINE_get_BN_mod_exp_crt 2498 EXIST::FUNCTION: -ENGINE_get_next 2499 EXIST::FUNCTION: -ENGINE_set_name 2500 EXIST::FUNCTION: -ENGINE_get_default_DSA 2501 EXIST::FUNCTION: -ENGINE_set_default_BN_mod_exp 2502 EXIST::FUNCTION: -ENGINE_set_default_RSA 2503 EXIST::FUNCTION: -ENGINE_get_default_RAND 2504 EXIST::FUNCTION: -ENGINE_get_default_BN_mod_exp 2505 EXIST::FUNCTION: -ENGINE_set_RAND 2506 EXIST::FUNCTION: -ENGINE_set_id 2507 EXIST::FUNCTION: -ENGINE_set_BN_mod_exp_crt 2508 EXIST::FUNCTION: -ENGINE_set_default_DH 2509 EXIST::FUNCTION: -ENGINE_new 2510 EXIST::FUNCTION: -ENGINE_get_id 2511 EXIST::FUNCTION: -DSA_set_default_openssl_method 2512 EXIST::FUNCTION:DSA -ENGINE_add 2513 EXIST::FUNCTION: -DH_set_default_openssl_method 2514 EXIST::FUNCTION:DH -ENGINE_get_DSA 2515 EXIST::FUNCTION: -ENGINE_get_ctrl_function 2516 EXIST::FUNCTION: -ENGINE_set_ctrl_function 2517 EXIST::FUNCTION: +DSO_METHOD_vms 2462 EXIST::FUNCTION: +ERR_load_ENGINE_strings 2463 EXIST::FUNCTION: +ENGINE_set_DSA 2464 EXIST::FUNCTION: +ENGINE_get_finish_function 2465 EXIST::FUNCTION: +ENGINE_get_default_RSA 2466 EXIST::FUNCTION: +ENGINE_get_BN_mod_exp 2467 EXIST::FUNCTION: +DSA_get_default_openssl_method 2468 EXIST::FUNCTION:DSA +ENGINE_set_DH 2469 EXIST::FUNCTION: +ENGINE_set_default_BN_mod_exp_crt 2470 EXIST::FUNCTION: +ENGINE_init 2471 EXIST::FUNCTION: +DH_get_default_openssl_method 2472 EXIST::FUNCTION:DH +RSA_set_default_openssl_method 2473 EXIST::FUNCTION:RSA +ENGINE_finish 2474 EXIST::FUNCTION: +ENGINE_load_public_key 2475 EXIST::FUNCTION: +ENGINE_get_DH 2476 EXIST::FUNCTION: +ENGINE_ctrl 2477 EXIST::FUNCTION: +ENGINE_get_init_function 2478 EXIST::FUNCTION: +ENGINE_set_init_function 2479 EXIST::FUNCTION: +ENGINE_set_default_DSA 2480 EXIST::FUNCTION: +ENGINE_get_name 2481 EXIST::FUNCTION: +ENGINE_get_last 2482 EXIST::FUNCTION: +ENGINE_get_prev 2483 EXIST::FUNCTION: +ENGINE_get_default_DH 2484 EXIST::FUNCTION: +ENGINE_get_RSA 2485 EXIST::FUNCTION: +ENGINE_set_default 2486 EXIST::FUNCTION: +ENGINE_get_RAND 2487 EXIST::FUNCTION: +ENGINE_get_first 2488 EXIST::FUNCTION: +ENGINE_by_id 2489 EXIST::FUNCTION: +ENGINE_set_finish_function 2490 EXIST::FUNCTION: +ENGINE_get_default_BN_mod_exp_crt 2491 EXIST::FUNCTION: +RSA_get_default_openssl_method 2492 EXIST::FUNCTION:RSA +ENGINE_set_RSA 2493 EXIST::FUNCTION: +ENGINE_load_private_key 2494 EXIST::FUNCTION: +ENGINE_set_default_RAND 2495 EXIST::FUNCTION: +ENGINE_set_BN_mod_exp 2496 EXIST::FUNCTION: +ENGINE_remove 2497 EXIST::FUNCTION: +ENGINE_free 2498 EXIST::FUNCTION: +ENGINE_get_BN_mod_exp_crt 2499 EXIST::FUNCTION: +ENGINE_get_next 2500 EXIST::FUNCTION: +ENGINE_set_name 2501 EXIST::FUNCTION: +ENGINE_get_default_DSA 2502 EXIST::FUNCTION: +ENGINE_set_default_BN_mod_exp 2503 EXIST::FUNCTION: +ENGINE_set_default_RSA 2504 EXIST::FUNCTION: +ENGINE_get_default_RAND 2505 EXIST::FUNCTION: +ENGINE_get_default_BN_mod_exp 2506 EXIST::FUNCTION: +ENGINE_set_RAND 2507 EXIST::FUNCTION: +ENGINE_set_id 2508 EXIST::FUNCTION: +ENGINE_set_BN_mod_exp_crt 2509 EXIST::FUNCTION: +ENGINE_set_default_DH 2510 EXIST::FUNCTION: +ENGINE_new 2511 EXIST::FUNCTION: +ENGINE_get_id 2512 EXIST::FUNCTION: +DSA_set_default_openssl_method 2513 EXIST::FUNCTION:DSA +ENGINE_add 2514 EXIST::FUNCTION: +DH_set_default_openssl_method 2515 EXIST::FUNCTION:DH +ENGINE_get_DSA 2516 EXIST::FUNCTION: +ENGINE_get_ctrl_function 2517 EXIST::FUNCTION: +ENGINE_set_ctrl_function 2518 EXIST::FUNCTION: