Merge main trunk to engine branch, all conflicts resolved.
authorRichard Levitte <levitte@openssl.org>
Thu, 7 Sep 2000 10:59:04 +0000 (10:59 +0000)
committerRichard Levitte <levitte@openssl.org>
Thu, 7 Sep 2000 10:59:04 +0000 (10:59 +0000)
139 files changed:
CHANGES
Configure
FAQ
INSTALL
Makefile.org
README
STATUS
TABLE
VMS/install.com
VMS/vms_idhacks.h [deleted file]
apps/CA.pl.in
apps/Makefile.ssl
apps/apps.c
apps/apps.h
apps/ca.c
apps/dgst.c
apps/dh1024.pem
apps/openssl.c
apps/pkcs12.c
apps/progs.h
apps/progs.pl
apps/smime.c
apps/speed.c
apps/verify.c
apps/x509.c
config
crypto/Makefile.ssl
crypto/asn1/Makefile.ssl
crypto/asn1/a_bitstr.c
crypto/asn1/a_enum.c
crypto/asn1/a_int.c
crypto/asn1/a_mbstr.c
crypto/asn1/a_object.c
crypto/asn1/a_strex.c
crypto/asn1/a_utctm.c
crypto/asn1/asn1.h
crypto/asn1/asn1_par.c
crypto/asn1/p7_lib.c
crypto/asn1/x_req.c
crypto/asn1/x_x509.c
crypto/bio/Makefile.ssl
crypto/bio/b_dump.c
crypto/bio/b_print.c
crypto/bio/bf_buff.c
crypto/bio/bio.h
crypto/bio/bio_err.c
crypto/bio/bio_lib.c
crypto/bio/bss_conn.c
crypto/bio/bss_log.c
crypto/bio/bss_mem.c
crypto/bn/Makefile.ssl
crypto/bn/bn.h
crypto/bn/bn_asm.c
crypto/bn/bn_div.c
crypto/bn/bn_lcl.h
crypto/bn/bn_lib.c
crypto/bn/bn_mont.c
crypto/bn/bn_word.c
crypto/bn/vms-helper.c
crypto/buffer/Makefile.ssl
crypto/comp/Makefile.ssl
crypto/conf/Makefile.ssl
crypto/conf/conf_api.c
crypto/crypto-lib.com
crypto/crypto.h
crypto/des/Makefile.ssl
crypto/des/qud_cksm.c
crypto/dh/Makefile.ssl
crypto/dsa/Makefile.ssl
crypto/dso/Makefile.ssl
crypto/engine/Makefile.ssl
crypto/err/Makefile.ssl
crypto/err/err.c
crypto/evp/Makefile.ssl
crypto/evp/c_alld.c
crypto/evp/encode.c
crypto/evp/evp.h
crypto/hmac/Makefile.ssl
crypto/install.com
crypto/lhash/Makefile.ssl
crypto/md2/Makefile.ssl
crypto/mdc2/Makefile.ssl
crypto/objects/Makefile.ssl
crypto/objects/obj_dat.c
crypto/objects/obj_dat.h
crypto/objects/obj_dat.pl
crypto/objects/obj_mac.h
crypto/objects/obj_mac.num
crypto/objects/objects.txt
crypto/pem/Makefile.ssl
crypto/pem/pem.h
crypto/pkcs12/Makefile.ssl
crypto/pkcs12/p12_crt.c
crypto/pkcs7/Makefile.ssl
crypto/pkcs7/pk7_mime.c
crypto/pkcs7/pk7_smime.c
crypto/pkcs7/pkcs7.h
crypto/rand/Makefile.ssl
crypto/rand/md_rand.c
crypto/rsa/Makefile.ssl
crypto/stack/Makefile.ssl
crypto/stack/safestack.h
crypto/txt_db/Makefile.ssl
crypto/x509/Makefile.ssl
crypto/x509/by_dir.c
crypto/x509/x509.h
crypto/x509/x509_lu.c
crypto/x509/x509_txt.c
crypto/x509/x509_vfy.c
crypto/x509/x509_vfy.h
crypto/x509/x_all.c
crypto/x509v3/Makefile.ssl
crypto/x509v3/v3_purp.c
crypto/x509v3/x509v3.h
doc/apps/CA.pl.pod
doc/apps/ca.pod
doc/apps/dgst.pod
doc/apps/openssl.pod
doc/apps/verify.pod
doc/apps/x509.pod
doc/crypto/crypto.pod
doc/crypto/md5.pod
doc/ssl/SSL_get_error.pod
e_os.h
makevms.com
rsaref/Makefile.ssl
ssl/Makefile.ssl
ssl/s3_clnt.c
ssl/s3_srvr.c
ssl/ssl.h
ssl/ssl_lib.c
test/Makefile.ssl
test/testp7.pem
util/libeay.num
util/mk1mf.pl
util/mkdef.pl
util/mkfiles.pl
util/sp-diff.pl
util/ssleay.num

diff --git a/CHANGES b/CHANGES
index 74f5bc7d008207428f867844100b64bd83834f32..5ada535aba15b1ef2ab1a7b81443a32f1919225d 100644 (file)
--- a/CHANGES
+++ b/CHANGES
@@ -4,6 +4,189 @@
 
  Changes between 0.9.5a and 0.9.6  [xx XXX 2000]
 
+  *) Major change in util/mkdef.pl to include extra information
+     about each symbol, as well as presentig variables as well
+     as functions.  This change means that there's n more need
+     to rebuild the .num files when some algorithms are excluded.
+     [Richard Levitte]
+
+  *) Allow the verify time to be set by an application,
+     rather than always using the current time.
+     [Steve Henson]
+  
+  *) Phase 2 verify code reorganisation. The certificate
+     verify code now looks up an issuer certificate by a
+     number of criteria: subject name, authority key id
+     and key usage. It also verifies self signed certificates
+     by the same criteria. The main comparison function is
+     X509_check_issued() which performs these checks.
+     Lot of changes were necessary in order to support this
+     without completely rewriting the lookup code.
+     Authority and subject key identifier are now cached.
+     The LHASH 'certs' is X509_STORE has now been replaced
+     by a STACK_OF(X509_OBJECT). This is mainly because an
+     LHASH can't store or retrieve multiple objects with
+     the same hash value.
+
+     As a result various functions (which were all internal
+     use only) have changed to handle the new X509_STORE
+     structure. This will break anything that messed round
+     with X509_STORE internally.
+     The functions X509_STORE_add_cert() now checks for an
+     exact match, rather than just subject name.
+     The X509_STORE API doesn't directly support the retrieval
+     of multiple certificates matching a given criteria, however
+     this can be worked round by performing a lookup first
+     (which will fill the cache with candidate certificates)
+     and then examining the cache for matches. This is probably
+     the best we can do without throwing out X509_LOOKUP
+     entirely (maybe later...).
+     The X509_VERIFY_CTX structure has been enhanced considerably.
+     All certificate lookup operations now go via a get_issuer()
+     callback. Although this currently uses an X509_STORE it
+     can be replaced by custom lookups. This is a simple way
+     to bypass the X509_STORE hackery necessary to make this
+     work and makes it possible to use more efficient techniques
+     in future. A very simple version which uses a simple
+     STACK for its trusted certificate store is also provided
+     using X509_STORE_CTX_trusted_stack().
+     The verify_cb() and verify() callbacks now have equivalents
+     in the X509_STORE_CTX structure.
+     X509_STORE_CTX also has a 'flags' field which can be used
+     to customise the verify behaviour.
+     [Steve Henson]
+  *) Add new PKCS#7 signing option PKCS7_NOSMIMECAP which 
+     excludes S/MIME capabilities.
+     [Steve Henson]
+
+  *) When a certificate request is read in keep a copy of the
+     original encoding of the signed data and use it when outputing
+     again. Signatures then use the original encoding rather than
+     a decoded, encoded version which may cause problems if the
+     request is improperly encoded.
+     [Steve Henson]
+
+  *) For consistency with other BIO_puts implementations, call
+     buffer_write(b, ...) directly in buffer_puts instead of calling
+     BIO_write(b, ...).
+
+     In BIO_puts, increment b->num_write as in BIO_write.
+     [Peter.Sylvester@EdelWeb.fr]
+
+  *) Fix BN_mul_word for the case where the word is 0. (We have to use
+     BN_zero, we may not return a BIGNUM with an array consisting of
+     words set to zero.)
+     [Bodo Moeller]
+
+  *) Avoid calling abort() from within the library when problems are
+     detected, except if preprocessor symbols have been defined
+     (such as REF_CHECK, BN_DEBUG etc.).
+     [Bodo Moeller]
+
+  *) New openssl application 'rsautl'. This utility can be
+     used for low level RSA operations. DER public key
+     BIO/fp routines also added.
+     [Steve Henson]
+
+  *) New Configure entry and patches for compiling on QNX 4.
+     [Andreas Schneider <andreas@ds3.etech.fh-hamburg.de>]
+
+  *) A demo state-machine implementation was sponsored by
+     Nuron (http://www.nuron.com/) and is now available in
+     demos/state_machine.
+     [Ben Laurie]
+
+  *) New options added to the 'dgst' utility for signature
+     generation and verification.
+     [Steve Henson]
+
+  *) Unrecognized PKCS#7 content types are now handled via a
+     catch all ASN1_TYPE structure. This allows unsupported
+     types to be stored as a "blob" and an application can
+     encode and decode it manually.
+     [Steve Henson]
+
+  *) Fix various signed/unsigned issues to make a_strex.c
+     compile under VC++.
+     [Oscar Jacobsson <oscar.jacobsson@celocom.com>]
+
+  *) ASN1 fixes. i2d_ASN1_OBJECT was not returning the correct
+     length if passed a buffer. ASN1_INTEGER_to_BN failed
+     if passed a NULL BN and its argument was negative.
+     [Steve Henson, pointed out by Sven Heiberg <sven@tartu.cyber.ee>]
+
+  *) Modification to PKCS#7 encoding routines to output definite
+     length encoding. Since currently the whole structures are in
+     memory there's not real point in using indefinite length 
+     constructed encoding. However if OpenSSL is compiled with
+     the flag PKCS7_INDEFINITE_ENCODING the old form is used.
+     [Steve Henson]
+
+  *) Added BIO_vprintf() and BIO_vsnprintf().
+     [Richard Levitte]
+
+  *) Added more prefixes to parse for in the the strings written
+     through a logging bio, to cover all the levels that are available
+     through syslog.  The prefixes are now:
+
+       PANIC, EMERG, EMR       =>      LOG_EMERG
+       ALERT, ALR              =>      LOG_ALERT
+       CRIT, CRI               =>      LOG_CRIT
+       ERROR, ERR              =>      LOG_ERR
+       WARNING, WARN, WAR      =>      LOG_WARNING
+       NOTICE, NOTE, NOT       =>      LOG_NOTICE
+       INFO, INF               =>      LOG_INFO
+       DEBUG, DBG              =>      LOG_DEBUG
+
+     and as before, if none of those prefixes are present at the
+     beginning of the string, LOG_ERR is chosen.
+
+     On Win32, the LOG_* levels are mapped according to this:
+
+       LOG_EMERG, LOG_ALERT, LOG_CRIT, LOG_ERR => EVENTLOG_ERROR_TYPE
+       LOG_WARNING                             => EVENTLOG_WARNING_TYPE
+       LOG_NOTICE, LOG_INFO, LOG_DEBUG         => EVENTLOG_INFORMATION_TYPE
+
+     [Richard Levitte]
+
+  *) Made it possible to reconfigure with just the configuration
+     argument "reconf" or "reconfigure".  The command line arguments
+     are stored in Makefile.ssl in the variable CONFIGURE_ARGS,
+     and are retrieved from there when reconfiguring.
+     [Richard Levitte]
+
+  *) MD4 implemented.
+     [Assar Westerlund <assar@sics.se>, Richard Levitte]
+
+  *) Add the arguments -CAfile and -CApath to the pkcs12 utility.
+     [Richard Levitte]
+
+  *) The obj_dat.pl script was messing up the sorting of object
+     names. The reason was that it compared the quoted version
+     of strings as a result "OCSP" > "OCSP Signing" because
+     " > SPACE. Changed script to store unquoted versions of
+     names and add quotes on output. It was also omitting some
+     names from the lookup table if they were given a default
+     value (that is if SN is missing it is given the same
+     value as LN and vice versa), these are now added on the
+     grounds that if an object has a name we should be able to
+     look it up. Finally added warning output when duplicate
+     short or long names are found.
+     [Steve Henson]
+
+  *) Changes needed for Tandem NSK.
+     [Scott Uroff scott@xypro.com]
+
   *) Fix SSL 2.0 rollback checking: Due to an off-by-one error in
      RSA_padding_check_SSLv23(), special padding was never detected
      and thus the SSL 3.0/TLS 1.0 countermeasure against protocol
index 32beadeac41a9c301b1b1b33f46ea929451a2f3b..86c15b38ac2fd17fa8f082a40876bc56d7d92029 100755 (executable)
--- a/Configure
+++ b/Configure
@@ -32,8 +32,7 @@ my $usage="Usage: Configure [no-<cipher> ...] [-Dxxx] [-lxxx] [-Lxxx] [-fxxx] [-
 # [no-]threads  [don't] try to create a library that is suitable for
 #               multithreaded applications (default is "threads" if we
 #               know how to do it)
-# [no-]shared  [don't] try to create shared libraries instead of static
-#              ones when possible.
+# [no-]shared  [don't] try to create shared libraries when supported.
 # 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.
@@ -101,6 +100,10 @@ my $x86_bsdi_asm="asm/bn86bsdi.o asm/co86bsdi.o:asm/dx86bsdi.o asm/yx86bsdi.o:as
 #config-string $cc : $cflags : $unistd : $thread_cflag : $lflags : $bn_ops : $bn_obj : $des_obj : $bf_obj : $md5_obj : $sha1_obj : $cast_obj : $rc4_obj : $rmd160_obj : $rc5_obj : $dso_scheme : $shared_target : $shared_cflag
 
 my %table=(
+# File 'TABLE' (created by 'make TABLE') contains the data from this list,
+# formatted for better readability.
+
+
 #"b",          "${tcc}:${tflags}::${tlib}:${bits1}:${tbn_mul}::",
 #"bl-4c-2c",   "${tcc}:${tflags}::${tlib}:${bits1}BN_LLONG RC4_CHAR MD2_CHAR:${tbn_mul}::",
 #"bl-4c-ri",   "${tcc}:${tflags}::${tlib}:${bits1}BN_LLONG RC4_CHAR RC4_INDEX:${tbn_mul}::",
@@ -108,15 +111,15 @@ my %table=(
 
 # Our development configs
 "purify",      "purify gcc:-g -DPURIFY -Wall::(unknown):-lsocket -lnsl::::",
-"debug",       "gcc:-DBN_DEBUG -DREF_CHECK -DBN_CTX_DEBUG -DCRYPTO_MDEBUG -ggdb -g2 -Wformat -Wshadow -Wmissing-prototypes -Wmissing-declarations -Werror::(unknown):-lefence::::",
-"debug-ben",   "gcc:-DBN_DEBUG -DREF_CHECK -DBN_CTX_DEBUG -DCRYPTO_MDEBUG -DPEDANTIC -DDEBUG_SAFESTACK -O2 -pedantic -Wall -Wshadow -Werror -pipe::(unknown):::::",
-"debug-ben-debug",     "gcc:-DBN_DEBUG -DREF_CHECK -DBN_CTX_DEBUG -DCRYPTO_MDEBUG -DPEDANTIC -DDEBUG_SAFESTACK -g3 -O2 -pedantic -Wall -Wshadow -Werror -pipe::(unknown):::::",
-"debug-ben-strict",    "gcc:-DBN_DEBUG -DREF_CHECK -DBN_CTX_DEBUG -DCRYPTO_MDEBUG -DCONST_STRICT -O2 -Wall -Wshadow -Werror -Wpointer-arith -Wcast-qual -Wwrite-strings -pipe::(unknown):::::",
+"debug",       "gcc:-DBN_DEBUG -DREF_CHECK -DCONF_DEBUG -DBN_CTX_DEBUG -DCRYPTO_MDEBUG -ggdb -g2 -Wformat -Wshadow -Wmissing-prototypes -Wmissing-declarations -Werror::(unknown):-lefence::::",
+"debug-ben",   "gcc:-DBN_DEBUG -DREF_CHECK -DCONF_DEBUG -DBN_CTX_DEBUG -DCRYPTO_MDEBUG -DPEDANTIC -DDEBUG_SAFESTACK -O2 -pedantic -Wall -Wshadow -Werror -pipe::(unknown):::::",
+"debug-ben-debug",     "gcc:-DBN_DEBUG -DREF_CHECK -DCONF_DEBUG -DBN_CTX_DEBUG -DCRYPTO_MDEBUG -DPEDANTIC -DDEBUG_SAFESTACK -g3 -O2 -pedantic -Wall -Wshadow -Werror -pipe::(unknown):::::",
+"debug-ben-strict",    "gcc:-DBN_DEBUG -DREF_CHECK -DCONF_DEBUG -DBN_CTX_DEBUG -DCRYPTO_MDEBUG -DCONST_STRICT -O2 -Wall -Wshadow -Werror -Wpointer-arith -Wcast-qual -Wwrite-strings -pipe::(unknown):::::",
 "debug-rse","cc:-DTERMIOS -DL_ENDIAN -pipe -O -g -ggdb3 -Wall::(unknown)::BN_LLONG ${x86_gcc_des} ${x86_gcc_opts}:${x86_elf_asm}",
-"debug-bodo",  "gcc:-DBIO_PAIR_DEBUG -DL_ENDIAN -DREF_CHECK -DBN_CTX_DEBUG -DCRYPTO_MDEBUG_ALL -g -m486 -pedantic -Wshadow -Wall::-D_REENTRANT::BN_LLONG ${x86_gcc_des} ${x86_gcc_opts}:${x86_elf_asm}",
-"debug-ulf",   "gcc:-DL_ENDIAN -DREF_CHECK -DBN_DEBUG -DBN_CTX_DEBUG -DCRYPTO_MDEBUG_ALL -g -O2 -m486 -Wall -Werror -Wshadow -pipe::-D_REENTRANT::${x86_gcc_des} ${x86_gcc_opts}:${x86_elf_asm}",
-"debug-steve", "gcc:-DL_ENDIAN -DREF_CHECK -DBN_CTX_DEBUG -DCRYPTO_MDEBUG_ALL -DPEDANTIC -g -O2 -m486 -pedantic -Wall -Werror -Wshadow -pipe::-D_REENTRANT::${x86_gcc_des} ${x86_gcc_opts}:${x86_elf_asm}",
-"debug-levitte-linux-elf","gcc:-DUSE_ALLOCATING_PRINT -DRL_DEBUG -DREF_CHECK -DBN_CTX_DEBUG -DCRYPTO_MDEBUG -DNO_ASM -DL_ENDIAN -DTERMIO -D_POSIX_SOURCE -ggdb -g3 -m486 -pedantic -ansi -Wall -Wshadow -Wid-clash-31 -pipe::-D_REENTRANT:-ldl:::::::::::dlfcn",
+"debug-bodo",  "gcc:-DL_ENDIAN -DBN_DEBUG -DREF_CHECK -DCONF_DEBUG -DBN_CTX_DEBUG -DCRYPTO_MDEBUG_ALL -DBIO_PAIR_DEBUG -g -m486 -pedantic -Wshadow -Wall::-D_REENTRANT::BN_LLONG ${x86_gcc_des} ${x86_gcc_opts}:${x86_elf_asm}",
+"debug-ulf",   "gcc:-DL_ENDIAN -DREF_CHECK -DCONF_DEBUG -DBN_DEBUG -DBN_CTX_DEBUG -DCRYPTO_MDEBUG_ALL -g -O2 -m486 -Wall -Werror -Wshadow -pipe::-D_REENTRANT::${x86_gcc_des} ${x86_gcc_opts}:${x86_elf_asm}",
+"debug-steve", "gcc:-DL_ENDIAN -DREF_CHECK -DCONF_DEBUG -DBN_CTX_DEBUG -DDEBUG_SAFESTACK -DCRYPTO_MDEBUG_ALL -DPEDANTIC -g -O2 -m486 -pedantic -Wall -Werror -Wshadow -pipe::-D_REENTRANT::${x86_gcc_des} ${x86_gcc_opts}:${x86_elf_asm}",
+"debug-levitte-linux-elf","gcc:-DUSE_ALLOCATING_PRINT -DRL_DEBUG -DREF_CHECK -DCONF_DEBUG -DBN_CTX_DEBUG -DCRYPTO_MDEBUG -DNO_ASM -DL_ENDIAN -DTERMIO -D_POSIX_SOURCE -ggdb -g3 -m486 -pedantic -ansi -Wall -Wshadow -Wid-clash-31 -pipe::-D_REENTRANT:-ldl:::::::::::dlfcn",
 "dist",                "cc:-O::(unknown):::::",
 
 # Basic configs that should work on any (32 and less bit) box
@@ -129,32 +132,32 @@ my %table=(
 # surrounds it with #APP #NO_APP comment pair which (at least Solaris
 # 7_x86) /usr/ccs/bin/as fails to assemble with "Illegal mnemonic"
 # error message.
-"solaris-x86-gcc","gcc:-O3 -fomit-frame-pointer -m486 -Wall -DL_ENDIAN -DNO_INLINE_ASM::-D_REENTRANT:-lsocket -lnsl -ldl:BN_LLONG ${x86_gcc_des} ${x86_gcc_opts}:${x86_sol_asm}:dlfcn",
+"solaris-x86-gcc","gcc:-O3 -fomit-frame-pointer -m486 -Wall -DL_ENDIAN -DNO_INLINE_ASM::-D_REENTRANT:-lsocket -lnsl -ldl:BN_LLONG ${x86_gcc_des} ${x86_gcc_opts}:${x86_sol_asm}:dlfcn:solaris-shared:-fPIC",
 
 #### SPARC Solaris with GNU C setups
-"solaris-sparcv7-gcc","gcc:-O3 -fomit-frame-pointer -Wall -DB_ENDIAN -DBN_DIV2W::-D_REENTRANT:-lsocket -lnsl -ldl:BN_LLONG RC4_CHAR RC4_CHUNK DES_UNROLL BF_PTR::::::::::dlfcn",
-"solaris-sparcv8-gcc","gcc:-mv8 -O3 -fomit-frame-pointer -Wall -DB_ENDIAN -DBN_DIV2W::-D_REENTRANT:-lsocket -lnsl -ldl:BN_LLONG RC4_CHAR RC4_CHUNK DES_UNROLL BF_PTR:asm/sparcv8.o:::::::::dlfcn",
-"solaris-sparcv9-gcc","gcc:-mcpu=ultrasparc -O3 -fomit-frame-pointer -Wall -DB_ENDIAN -DBN_DIV2W -DULTRASPARC::-D_REENTRANT:-lsocket -lnsl -ldl:BN_LLONG RC4_CHAR RC4_CHUNK DES_UNROLL BF_PTR:asm/sparcv8plus.o:::asm/md5-sparcv8plus.o::::::dlfcn",
+"solaris-sparcv7-gcc","gcc:-O3 -fomit-frame-pointer -Wall -DB_ENDIAN -DBN_DIV2W::-D_REENTRANT:-lsocket -lnsl -ldl:BN_LLONG RC4_CHAR RC4_CHUNK DES_UNROLL BF_PTR::::::::::dlfcn:solaris-shared:-fPIC",
+"solaris-sparcv8-gcc","gcc:-mv8 -O3 -fomit-frame-pointer -Wall -DB_ENDIAN -DBN_DIV2W::-D_REENTRANT:-lsocket -lnsl -ldl:BN_LLONG RC4_CHAR RC4_CHUNK DES_UNROLL BF_PTR:asm/sparcv8.o:::::::::dlfcn:solaris-shared:-fPIC",
+"solaris-sparcv9-gcc","gcc:-mcpu=ultrasparc -O3 -fomit-frame-pointer -Wall -DB_ENDIAN -DBN_DIV2W -DULTRASPARC::-D_REENTRANT:-lsocket -lnsl -ldl:BN_LLONG RC4_CHAR RC4_CHUNK DES_UNROLL BF_PTR:asm/sparcv8plus.o:::asm/md5-sparcv8plus.o::::::dlfcn:solaris-shared:-fPIC",
 # gcc pre-2.8 doesn't understand -mcpu=ultrasparc, so fall down to -mv8
 # but keep the assembler modules.
-"solaris-sparcv9-gcc27","gcc:-mv8 -O3 -fomit-frame-pointer -Wall -DB_ENDIAN -DBN_DIV2W -DULTRASPARC::-D_REENTRANT:-lsocket -lnsl -ldl:BN_LLONG RC4_CHAR RC4_CHUNK DES_UNROLL BF_PTR:asm/sparcv8plus-gcc27.o:::asm/md5-sparcv8plus-gcc27.o::::::dlfcn",
+"solaris-sparcv9-gcc27","gcc:-mv8 -O3 -fomit-frame-pointer -Wall -DB_ENDIAN -DBN_DIV2W -DULTRASPARC::-D_REENTRANT:-lsocket -lnsl -ldl:BN_LLONG RC4_CHAR RC4_CHUNK DES_UNROLL BF_PTR:asm/sparcv8plus-gcc27.o:::asm/md5-sparcv8plus-gcc27.o::::::dlfcn:solaris-shared:-fPIC",
 ####
-"debug-solaris-sparcv8-gcc","gcc:-DREF_CHECK -DBN_CTX_DEBUG -DCRYPTO_MDEBUG_ALL -O -g -mv8 -Wall -DB_ENDIAN::-D_REENTRANT:-lsocket -lnsl -ldl:BN_LLONG RC4_CHAR RC4_CHUNK DES_UNROLL BF_PTR:asm/sparcv8.o:::::::::dlfcn",
-"debug-solaris-sparcv9-gcc","gcc:-DREF_CHECK -DBN_CTX_DEBUG -DCRYPTO_MDEBUG_ALL -O -g -mcpu=ultrasparc -Wall -DB_ENDIAN::-D_REENTRANT:-lsocket -lnsl -ldl:BN_LLONG RC4_CHAR RC4_CHUNK DES_UNROLL BF_PTR:asm/sparcv8plus.o:::::::::dlfcn",
+"debug-solaris-sparcv8-gcc","gcc:-DBN_DEBUG -DREF_CHECK -DCONF_DEBUG -DBN_CTX_DEBUG -DCRYPTO_MDEBUG_ALL -O -g -mv8 -Wall -DB_ENDIAN::-D_REENTRANT:-lsocket -lnsl -ldl:BN_LLONG RC4_CHAR RC4_CHUNK DES_UNROLL BF_PTR:asm/sparcv8.o:::::::::dlfcn:solaris-shared:-fPIC",
+"debug-solaris-sparcv9-gcc","gcc:-DBN_DEBUG -DREF_CHECK -DCONF_DEBUG -DBN_CTX_DEBUG -DCRYPTO_MDEBUG_ALL -O -g -mcpu=ultrasparc -Wall -DB_ENDIAN::-D_REENTRANT:-lsocket -lnsl -ldl:BN_LLONG RC4_CHAR RC4_CHUNK DES_UNROLL BF_PTR:asm/sparcv8plus.o:::::::::dlfcn:solaris-shared:-fPIC",
 
 #### SPARC Solaris with Sun C setups
 # DO NOT use /xO[34] on sparc with SC3.0.  It is broken, and will not pass the tests
-"solaris-sparc-sc3","cc:-fast -O -Xa -DB_ENDIAN::-D_REENTRANT:-lsocket -lnsl -ldl:BN_LLONG RC4_CHAR RC4_CHUNK DES_PTR DES_UNROLL BF_PTR::::::::::dlfcn",
+"solaris-sparc-sc3","cc:-fast -O -Xa -DB_ENDIAN::-D_REENTRANT:-lsocket -lnsl -ldl:BN_LLONG RC4_CHAR RC4_CHUNK DES_PTR DES_UNROLL BF_PTR::::::::::dlfcn:solaris-shared:-KPIC",
 # SC4.0 doesn't pass 'make test', upgrade to SC5.0 or SC4.2.
 # SC4.2 is ok, better than gcc even on bn as long as you tell it -xarch=v8
 # SC5.0 note: Compiler common patch 107357-01 or later is required!
-"solaris-sparcv7-cc","cc:-xO5 -xstrconst -xdepend -Xa -DB_ENDIAN -DBN_DIV2W::-D_REENTRANT:-lsocket -lnsl -ldl:BN_LLONG RC4_CHAR RC4_CHUNK DES_PTR DES_RISC1 DES_UNROLL BF_PTR::::::::::dlfcn",
-"solaris-sparcv8-cc","cc:-xarch=v8 -xO5 -xstrconst -xdepend -Xa -DB_ENDIAN -DBN_DIV2W::-D_REENTRANT:-lsocket -lnsl -ldl:BN_LLONG RC4_CHAR RC4_CHUNK DES_PTR DES_RISC1 DES_UNROLL BF_PTR:asm/sparcv8.o:::::::::dlfcn",
-"solaris-sparcv9-cc","cc:-xtarget=ultra -xarch=v8plus -xO5 -xstrconst -xdepend -Xa -DB_ENDIAN -DBN_DIV2W -DULTRASPARC::-D_REENTRANT:-lsocket -lnsl -ldl:BN_LLONG RC4_CHAR RC4_CHUNK_LL DES_PTR DES_RISC1 DES_UNROLL BF_PTR:asm/sparcv8plus.o:::asm/md5-sparcv8plus.o::::::dlfcn",
-"solaris64-sparcv9-cc","cc:-xtarget=ultra -xarch=v9 -xO5 -xstrconst -xdepend -Xa -DB_ENDIAN -DULTRASPARC::-D_REENTRANT:-lsocket -lnsl -ldl:SIXTY_FOUR_BIT_LONG RC4_CHAR RC4_CHUNK DES_INT DES_PTR DES_RISC1 DES_UNROLL BF_PTR::::asm/md5-sparcv9.o::::::dlfcn",
+"solaris-sparcv7-cc","cc:-xO5 -xstrconst -xdepend -Xa -DB_ENDIAN -DBN_DIV2W::-D_REENTRANT:-lsocket -lnsl -ldl:BN_LLONG RC4_CHAR RC4_CHUNK DES_PTR DES_RISC1 DES_UNROLL BF_PTR::::::::::dlfcn:solaris-shared:-KPIC",
+"solaris-sparcv8-cc","cc:-xarch=v8 -xO5 -xstrconst -xdepend -Xa -DB_ENDIAN -DBN_DIV2W::-D_REENTRANT:-lsocket -lnsl -ldl:BN_LLONG RC4_CHAR RC4_CHUNK DES_PTR DES_RISC1 DES_UNROLL BF_PTR:asm/sparcv8.o:::::::::dlfcn:solaris-shared:-KPIC",
+"solaris-sparcv9-cc","cc:-xtarget=ultra -xarch=v8plus -xO5 -xstrconst -xdepend -Xa -DB_ENDIAN -DBN_DIV2W -DULTRASPARC::-D_REENTRANT:-lsocket -lnsl -ldl:BN_LLONG RC4_CHAR RC4_CHUNK_LL DES_PTR DES_RISC1 DES_UNROLL BF_PTR:asm/sparcv8plus.o:::asm/md5-sparcv8plus.o::::::dlfcn:solaris-shared:-KPIC",
+"solaris64-sparcv9-cc","cc:-xtarget=ultra -xarch=v9 -xO5 -xstrconst -xdepend -Xa -DB_ENDIAN -DULTRASPARC::-D_REENTRANT:-lsocket -lnsl -ldl:SIXTY_FOUR_BIT_LONG RC4_CHAR RC4_CHUNK DES_INT DES_PTR DES_RISC1 DES_UNROLL BF_PTR::::asm/md5-sparcv9.o::::::dlfcn:solaris-shared:-KPIC",
 ####
-"debug-solaris-sparcv8-cc","cc:-DREF_CHECK -DBN_CTX_DEBUG -DCRYPTO_MDEBUG_ALL -xarch=v8 -g -O -xstrconst -Xa -DB_ENDIAN -DBN_DIV2W::-D_REENTRANT:-lsocket -lnsl -ldl:BN_LLONG RC4_CHAR RC4_CHUNK DES_PTR DES_RISC1 DES_UNROLL BF_PTR:asm/sparcv8.o:::::::::dlfcn",
-"debug-solaris-sparcv9-cc","cc:-DREF_CHECK -DBN_CTX_DEBUG -DCRYPTO_MDEBUG_ALL -xtarget=ultra -xarch=v8plus -g -O -xstrconst -Xa -DB_ENDIAN -DBN_DIV2W -DULTRASPARC::-D_REENTRANT:-lsocket -lnsl -ldl:BN_LLONG RC4_CHAR RC4_CHUNK_LL DES_PTR DES_RISC1 DES_UNROLL BF_PTR:asm/sparcv8plus.o:::asm/md5-sparcv8plus.o::::::dlfcn",
+"debug-solaris-sparcv8-cc","cc:-DBN_DEBUG -DREF_CHECK -DCONF_DEBUG -DBN_CTX_DEBUG -DCRYPTO_MDEBUG_ALL -xarch=v8 -g -O -xstrconst -Xa -DB_ENDIAN -DBN_DIV2W::-D_REENTRANT:-lsocket -lnsl -ldl:BN_LLONG RC4_CHAR RC4_CHUNK DES_PTR DES_RISC1 DES_UNROLL BF_PTR:asm/sparcv8.o:::::::::dlfcn:solaris-shared:-KPIC",
+"debug-solaris-sparcv9-cc","cc:-DBN_DEBUG -DREF_CHECK -DCONF_DEBUG -DBN_CTX_DEBUG -DCRYPTO_MDEBUG_ALL -xtarget=ultra -xarch=v8plus -g -O -xstrconst -Xa -DB_ENDIAN -DBN_DIV2W -DULTRASPARC::-D_REENTRANT:-lsocket -lnsl -ldl:BN_LLONG RC4_CHAR RC4_CHUNK_LL DES_PTR DES_RISC1 DES_UNROLL BF_PTR:asm/sparcv8plus.o:::asm/md5-sparcv8plus.o::::::dlfcn:solaris-shared:-KPIC",
 
 #### SPARC Linux setups
 "linux-sparcv7","gcc:-DB_ENDIAN -DTERMIO -O3 -fomit-frame-pointer -Wall::-D_REENTRANT::BN_LLONG RC4_CHAR RC4_CHUNK DES_UNROLL BF_PTR::",
@@ -281,8 +284,8 @@ my %table=(
 # The intel boxes :-), It would be worth seeing if bsdi-gcc can use the
 # bn86-elf.o file file since it is hand tweaked assembler.
 "linux-elf",   "gcc:-DL_ENDIAN -DTERMIO -O3 -fomit-frame-pointer -m486 -Wall::-D_REENTRANT:-ldl:BN_LLONG ${x86_gcc_des} ${x86_gcc_opts}:${x86_elf_asm}:dlfcn:linux-shared:-fPIC",
-"debug-linux-elf","gcc:-DREF_CHECK -DBN_CTX_DEBUG -DCRYPTO_MDEBUG -DL_ENDIAN -DTERMIO -g -m486 -Wall::-D_REENTRANT:-lefence:BN_LLONG ${x86_gcc_des} ${x86_gcc_opts}:${x86_elf_asm}:dlfcn",
-"debug-linux-elf-noefence","gcc:-DREF_CHECK -DBN_CTX_DEBUG -DCRYPTO_MDEBUG -DL_ENDIAN -DTERMIO -g -m486 -Wall::-D_REENTRANT::BN_LLONG ${x86_gcc_des} ${x86_gcc_opts}:${x86_elf_asm}:dlfcn",
+"debug-linux-elf","gcc:-DBN_DEBUG -DREF_CHECK -DCONF_DEBUG -DBN_CTX_DEBUG -DCRYPTO_MDEBUG -DL_ENDIAN -DTERMIO -g -m486 -Wall::-D_REENTRANT:-lefence:BN_LLONG ${x86_gcc_des} ${x86_gcc_opts}:${x86_elf_asm}:dlfcn",
+"debug-linux-elf-noefence","gcc:-DBN_DEBUG -DREF_CHECK -DCONF_DEBUG -DBN_CTX_DEBUG -DCRYPTO_MDEBUG -DL_ENDIAN -DTERMIO -g -m486 -Wall::-D_REENTRANT::BN_LLONG ${x86_gcc_des} ${x86_gcc_opts}:${x86_elf_asm}:dlfcn",
 "linux-aout",  "gcc:-DL_ENDIAN -DTERMIO -O3 -fomit-frame-pointer -m486 -Wall::(unknown)::BN_LLONG ${x86_gcc_des} ${x86_gcc_opts}:${x86_out_asm}",
 "linux-mips",   "gcc:-DL_ENDIAN -DTERMIO -O3 -fomit-frame-pointer -Wall::(unknown)::BN_LLONG:::",
 "linux-ppc",    "gcc:-DB_ENDIAN -DTERMIO -O3 -fomit-frame-pointer -Wall::-D_REENTRANT::BN_LLONG::",
@@ -300,6 +303,9 @@ my %table=(
 # NCR MP-RAS UNIX ver 02.03.01
 "ncr-scde","cc:-O6 -Xa -Hoff=BEHAVED -686 -Hwide -Hiw::(unknown):-lsocket -lnsl:${x86_gcc_des} ${x86_gcc_opts}:::",
 
+# QNX 4
+"qnx4",        "cc:-DL_ENDIAN -DTERMIO::(unknown)::${x86_gcc_des} ${x86_gcc_opts}:",
+
 # Linux on ARM
 "linux-elf-arm","gcc:-DL_ENDIAN -DTERMIO -O3 -fomit-frame-pointer -Wall::-D_REENTRANT::BN_LLONG::::::::::dlfcn:linux-shared:-fPIC",
 
@@ -311,7 +317,7 @@ my %table=(
 "unixware-7","cc:-O -DFILIO_H -Kalloca::-Kthread:-lsocket -lnsl:MD2_CHAR RC4_INDEX ${x86_gcc_des}::",
 
 # IBM's AIX.
-"aix-cc",   "cc:-O -DAIX -DB_ENDIAN::(unknown)::BN_LLONG RC4_CHAR:::",
+"aix-cc",   "cc:-O -DAIX -DB_ENDIAN -qmaxmem=16384::(unknown)::BN_LLONG RC4_CHAR:::",
 "aix-gcc",  "gcc:-O3 -DAIX -DB_ENDIAN::(unknown)::BN_LLONG RC4_CHAR:::",
 
 #
@@ -435,116 +441,161 @@ $perl=$ENV{'PERL'} or $perl=&which("perl5") or $perl=&which("perl")
 
 &usage if ($#ARGV < 0);
 
-my $flags="";
-my $depflags="";
-my $openssl_algorithm_defines="";
-my $openssl_thread_defines="";
-my $openssl_other_defines="";
-my $libs="";
-my $target="";
-my $options="";
-my $symlink=1;
-foreach (@ARGV)
+my $flags;
+my $depflags;
+my $openssl_algorithm_defines;
+my $openssl_thread_defines;
+my $openssl_other_defines;
+my $libs;
+my $target;
+my $options;
+my $symlink;
+
+my @argvcopy=@ARGV;
+my $argvstring="";
+my $argv_unprocessed=1;
+
+while($argv_unprocessed)
        {
-       s /^-no-/no-/; # some people just can't read the instructions
-       if (/^no-asm$/)
-               {
-               $no_asm=1;
-               $flags .= "-DNO_ASM ";
-               $openssl_other_defines .= "#define NO_ASM\n";
-               }
-       elsif (/^no-dso$/)
-               { $no_dso=1; }
-       elsif (/^no-threads$/)
-               { $no_threads=1; }
-       elsif (/^threads$/)
-               { $threads=1; }
-       elsif (/^no-shared$/)
-               { $no_shared=1; }
-       elsif (/^shared$/)
-               { $no_shared=0; }
-       elsif (/^no-symlinks$/)
-               { $symlink=0; }
-       elsif (/^no-(.+)$/)
+       $flags="";
+       $depflags="";
+       $openssl_algorithm_defines="";
+       $openssl_thread_defines="";
+       $openssl_other_defines="";
+       $libs="";
+       $target="";
+       $options="";
+       $symlink=1;
+
+       $argv_unprocessed=0;
+       $argvstring=join(' ',@argvcopy);
+
+PROCESS_ARGS:
+       foreach (@argvcopy)
                {
-               my $algo=$1;
-               push @skip,$algo;
-               $algo =~ tr/[a-z]/[A-Z]/;
-               $flags .= "-DNO_$algo ";
-               $depflags .= "-DNO_$algo ";
-               $openssl_algorithm_defines .= "#define NO_$algo\n";
-               if ($algo eq "DES")
+               s /^-no-/no-/; # some people just can't read the instructions
+               if (/^no-asm$/)
+                       {
+                       $no_asm=1;
+                       $flags .= "-DNO_ASM ";
+                       $openssl_other_defines .= "#define NO_ASM\n";
+                       }
+               elsif (/^no-hw-(.+)$/)
                        {
-                       push @skip, "mdc2";
-                       $options .= " no-mdc2";
-                       $flags .= "-DNO_MDC2 ";
-                       $depflags .= "-DNO_MDC2 ";
-                       $openssl_algorithm_defines .= "#define NO_MDC2\n";
+                       my $hw=$1;
+                       $hw =~ tr/[a-z]/[A-Z]/;
+                       $flags .= "-DNO_HW_$hw ";
+                       $openssl_other_defines .= "#define NO_HW_$hw\n";
                        }
-               }
-       elsif (/^no-hw-(.+)$/)
-               {
-               my $hw=$1;
-               $hw =~ tr/[a-z]/[A-Z]/;
-               $flags .= "-DNO_HW_$hw ";
-               $openssl_other_defines .= "#define NO_HW_$hw\n";
-               }
-       elsif (/^no-hw$/)
-               {
-               $flags .= "-DNO_HW ";
-               $openssl_other_defines .= "#define NO_HW\n";
-               }
-       elsif (/^386$/)
-               { $processor=386; }
-       elsif (/^rsaref$/)
-               {
-               $libs.= "-lRSAglue -lrsaref ";
-               $flags.= "-DRSAref ";
-               $openssl_other_defines .= "#define RSAref\n";
-               }
-       elsif (/^[-+]/)
-               {
-               if (/^-[lL](.*)$/)
+               elsif (/^no-hw$/)
+                       {
+                       $flags .= "-DNO_HW ";
+                       $openssl_other_defines .= "#define NO_HW\n";
+                       }
+               elsif (/^no-dso$/)
+                       { $no_dso=1; }
+               elsif (/^no-threads$/)
+                       { $no_threads=1; }
+               elsif (/^threads$/)
+                       { $threads=1; }
+               elsif (/^no-shared$/)
+                       { $no_shared=1; }
+               elsif (/^shared$/)
+                       { $no_shared=0; }
+               elsif (/^no-symlinks$/)
+                       { $symlink=0; }
+               elsif (/^no-(.+)$/)
                        {
-                       $libs.=$_." ";
+                       my $algo=$1;
+                       push @skip,$algo;
+                       $algo =~ tr/[a-z]/[A-Z]/;
+                       $flags .= "-DNO_$algo ";
+                       $depflags .= "-DNO_$algo ";
+                       $openssl_algorithm_defines .= "#define NO_$algo\n";
+                       if ($algo eq "DES")
+                               {
+                               push @skip, "mdc2";
+                               $options .= " no-mdc2";
+                               $flags .= "-DNO_MDC2 ";
+                               $depflags .= "-DNO_MDC2 ";
+                               $openssl_algorithm_defines .= "#define NO_MDC2\n";
+                               }
                        }
-               elsif (/^-[^-]/ or /^\+/)
+               elsif (/^reconfigure/ || /^reconf/)
                        {
-                       $flags.=$_." ";
+                       if (open(IN,"<$Makefile"))
+                               {
+                               while (<IN>)
+                                       {
+                                       chop;
+                                       if (/^CONFIGURE_ARGS=(.*)/)
+                                               {
+                                               $argvstring=$1;
+                                               @argvcopy=split(' ',$argvstring);
+                                               die "Incorrect data to reconfigure, please do a normal configuration\n"
+                                                       if (grep(/^reconf/,@argvcopy));
+                                               print "Reconfiguring with: $argvstring\n";
+                                               $argv_unprocessed=1;
+                                               close(IN);
+                                               last PROCESS_ARGS;
+                                               }
+                                       }
+                               close(IN);
+                               }
+                       die "Insufficient data to reconfigure, please do a normal configuration\n";
                        }
-               elsif (/^--prefix=(.*)$/)
+               elsif (/^386$/)
+                       { $processor=386; }
+               elsif (/^rsaref$/)
                        {
-                       $prefix=$1;
+                       $libs.= "-lRSAglue -lrsaref ";
+                       $flags.= "-DRSAref ";
+                       $openssl_other_defines .= "#define RSAref\n";
                        }
-               elsif (/^--openssldir=(.*)$/)
+               elsif (/^[-+]/)
                        {
-                       $openssldir=$1;
+                       if (/^-[lL](.*)$/)
+                               {
+                               $libs.=$_." ";
+                               }
+                       elsif (/^-[^-]/ or /^\+/)
+                               {
+                               $flags.=$_." ";
+                               }
+                       elsif (/^--prefix=(.*)$/)
+                               {
+                               $prefix=$1;
+                               }
+                       elsif (/^--openssldir=(.*)$/)
+                               {
+                               $openssldir=$1;
+                               }
+                       elsif (/^--install.prefix=(.*)$/)
+                               {
+                               $install_prefix=$1;
+                               }
+                       else
+                               {
+                               print STDERR $usage;
+                               exit(1);
+                               }
                        }
-               elsif (/^--install.prefix=(.*)$/)
+               elsif ($_ =~ /^([^:]+):(.+)$/)
                        {
-                       $install_prefix=$1;
+                       eval "\$table{\$1} = \"$2\""; # allow $xxx constructs in the string
+                       $target=$1;
                        }
                else
                        {
-                       print STDERR $usage;
-                       exit(1);
+                       die "target already defined - $target\n" if ($target ne "");
+                       $target=$_;
+                       }
+               unless ($_ eq $target) {
+                       if ($options eq "") {
+                               $options = $_;
+                       } else {
+                               $options .= " ".$_;
                        }
-               }
-       elsif ($_ =~ /^([^:]+):(.+)$/)
-               {
-               eval "\$table{\$1} = \"$2\""; # allow $xxx constructs in the string
-               $target=$1;
-               }
-       else
-               {
-               die "target already defined - $target\n" if ($target ne "");
-               $target=$_;
-               }
-       unless ($_ eq $target) {
-               if ($options eq "") {
-                       $options = $_;
-               } else {
-                       $options .= " ".$_;
                }
        }
 }
@@ -564,6 +615,8 @@ if ($target eq "LIST") {
        exit 0;
 }
 
+print "Configuring for $target\n";
+
 &usage if (!defined($table{$target}));
 
 my $IsWindows=scalar grep /^$target$/,@WinTargets;
@@ -582,7 +635,7 @@ print "IsWindows=$IsWindows\n";
 
 (my $cc,my $cflags,my $unistd,my $thread_cflag,my $lflags,my $bn_ops,my $bn_obj,my $des_obj,my $bf_obj,
  $md5_obj,$sha1_obj,my $cast_obj,my $rc4_obj,$rmd160_obj,my $rc5_obj,my $dso_scheme,my $shared_target,my $shared_cflag)=
-       split(/\s*:\s*/,$table{$target} . ":" x 21 , -1);
+       split(/\s*:\s*/,$table{$target} . ":" x 22 , -1);
 $cflags="$flags$cflags" if ($flags ne "");
 
 # The DSO code currently always implements all functions so that no
@@ -754,6 +807,7 @@ while (<IN>)
        s/^INSTALL_PREFIX=.*$/INSTALL_PREFIX=$install_prefix/;
        s/^PLATFORM=.*$/PLATFORM=$target/;
        s/^OPTIONS=.*$/OPTIONS=$options/;
+       s/^CONFIGURE_ARGS=.*$/CONFIGURE_ARGS=$argvstring/;
        s/^CC=.*$/CC= $cc/;
        s/^CFLAG=.*$/CFLAG= $cflags/;
        s/^DEPFLAG=.*$/DEPFLAG= $depflags/;
@@ -1059,9 +1113,9 @@ sub print_table_entry
 
        (my $cc,my $cflags,my $unistd,my $thread_cflag,my $lflags,my $bn_ops,
        my $bn_obj,my $des_obj,my $bf_obj,
-       $md5_obj,$sha1_obj,my $cast_obj,my $rc4_obj,$rmd160_obj,my $rc5_obj,
-       $dso_scheme)=
-       split(/\s*:\s*/,$table{$target} . ":" x 20 , -1);
+       my $md5_obj,my $sha1_obj,my $cast_obj,my $rc4_obj,my $rmd160_obj,
+       my $rc5_obj,my $dso_scheme,my $shared_target,my $shared_cflag)=
+       split(/\s*:\s*/,$table{$target} . ":" x 22 , -1);
                        
        print <<EOF
 
diff --git a/FAQ b/FAQ
index f64e4ffdddc89a153438d5a6fd74cad1af7ec043..6e34953c11ee19ca3d73f5ba6acf1a65e27cf85b 100644 (file)
--- a/FAQ
+++ b/FAQ
@@ -86,12 +86,6 @@ offer legal advice.
 You can configure OpenSSL so as not to use RC5 and IDEA by using
  ./config no-rc5 no-idea
 
-Until the RSA patent expires, U.S. users may want to use
- ./config no-rc5 no-idea no-rsa
-
-Please note that you will *not* be able to communicate with most of
-the popular web browsers without RSA support.
-
 
 * Is OpenSSL thread-safe?
 
diff --git a/INSTALL b/INSTALL
index 7cbde1663bd0a863b9f48eba1dafb8361c612755..3fcddbbf0351c8045f0a9eec3d3d87f234224fd8 100644 (file)
--- a/INSTALL
+++ b/INSTALL
                 This will usually require additional system-dependent options!
                 See "Note on multi-threading" below.
 
+  no-shared     Don't try to create shared libraries.
+
+  shared        In addition to the usual static libraries, create shared
+                libraries on platforms where it's supported.  See "Note on
+                shared libraries" below.
+
   no-asm        Do not use assembler code.
 
   386           Use the 80386 instruction set only (the default x86 code is
  you can still use "no-threads" to suppress an annoying warning message
  from the Configure script.)
 
+
+ Note on shared libraries
+ ------------------------
+
+ For some systems, the OpenSSL Configure script knows what is needed to
+ build shared libraries for libcrypto and libssl.  On these systems,
+ the shared libraries are currently not created by default, but giving
+ the option "shared" will get them created.  This method supports Makefile
+ targets for shared library creation, like linux-shared.  Those targets
+ can currently be used on their own just as well, but this is expected
+ to change in future versions of OpenSSL.
index 09828b0de9b555ab8a7a81d364d1bfa8a6faec5d..a2077b0b5322bb71662875c7511b2b5bf5102afe 100644 (file)
@@ -11,6 +11,7 @@ SHLIB_MAJOR=
 SHLIB_MINOR=
 PLATFORM=dist
 OPTIONS=
+CONFIGURE_ARGS=
 SHLIB_TARGET=
 
 # INSTALL_PREFIX is for package builders so that they can configure
@@ -160,7 +161,7 @@ SHLIBDIRS= crypto ssl
 
 # dirs in crypto to build
 SDIRS=  \
-       md2 md5 sha mdc2 hmac ripemd \
+       md2 md4 md5 sha mdc2 hmac ripemd \
        des rc2 rc4 rc5 idea bf cast \
        bn rsa dsa dh dso engine \
        buffer bio stack lhash rand err objects \
@@ -241,7 +242,7 @@ libcrypto.so: libcrypto.a
        fi
 libssl.so: libcrypto.so libssl.a
        @if [ "$(SHLIB_TARGET)" != "" ]; then \
-               $(MAKE) SHLIBDIRS=ssl $(SHLIB_TARGET); \
+               $(MAKE) SHLIBDIRS=ssl SHLIBDEPS='-L. -lcrypto' $(SHLIB_TARGET); \
        else \
                echo "There's no support for shared libraries on this platform" >&2; \
        fi
@@ -254,47 +255,44 @@ clean-shared:
        done
 
 linux-shared:
-       libs=; for i in ${SHLIBDIRS}; do \
+       libs='${SHLIBDEPS}'; for i in ${SHLIBDIRS}; do \
        rm -f lib$$i.so \
                lib$$i.so.${SHLIB_MAJOR} \
                lib$$i.so.${SHLIB_MAJOR}.${SHLIB_MINOR}; \
        ( set -x; ${CC}  -shared -o lib$$i.so.${SHLIB_MAJOR}.${SHLIB_MINOR} \
                -Wl,-S,-soname=lib$$i.so.${SHLIB_MAJOR} \
                -Wl,--whole-archive lib$$i.a \
-               -Wl,--no-whole-archive -lc $$libs ) || exit 1; \
+               -Wl,--no-whole-archive $$libs ${EX_LIBS} -lc ) || exit 1; \
        libs="$$libs -L. -l$$i"; \
        ( set -x; \
                ln -s lib$$i.so.${SHLIB_MAJOR}.${SHLIB_MINOR} \
                        lib$$i.so.${SHLIB_MAJOR}; \
                ln -s lib$$i.so.${SHLIB_MAJOR} lib$$i.so ); \
-       done;
+       done
 
 # This assumes that GNU utilities are *not* used
 true64-shared:
-       libs=; for i in ${SHLIBDIRS}; do \
+       libs='${SHLIBDEPS}'; for i in ${SHLIBDIRS}; do \
        ( set -x; ${CC}  -shared -no_archive -o lib$$i.so \
                -set_version "${SHLIB_VERSION_HISTORY}${SHLIB_VERSION_NUMBER}" \
-               -all lib$$i.a -none -lc $$libs ) || exit 1; \
+               -all lib$$i.a -none $$libs ${EX_LIBS} -lc ) || exit 1; \
        libs="$$libs -L. -l$$i"; \
-       done;
+       done
 
 # This assumes that GNU utilities are *not* used
 solaris-shared:
-       libs=; for i in ${SHLIBDIRS}; do \
+       libs='${SHLIBDEPS}'; for i in ${SHLIBDIRS}; do \
        rm -f lib$$i.so \
                lib$$i.so.${SHLIB_MAJOR} \
                lib$$i.so.${SHLIB_MAJOR}.${SHLIB_MINOR}; \
        ( set -x; ${CC}  -G -o lib$$i.so.${SHLIB_MAJOR}.${SHLIB_MINOR} \
                -h lib$$i.so.${SHLIB_MAJOR} \
-               -z allextract lib$$i.a $$libs ) || exit 1; \
+               -z allextract lib$$i.a $$libs ${EX_LIBS} -lc ) || exit 1; \
        libs="$$libs -L. -l$$i"; \
        ln -s lib$$i.so.${SHLIB_MAJOR}.${SHLIB_MINOR} \
                lib$$i.so.${SHLIB_MAJOR}; \
        ln -s lib$$i.so.${SHLIB_MAJOR} lib$$i.so; \
-       done; \
-       @set -x; \
-       for i in ${SHLIBDIRS}; do \
-       done;
+       done
 
 Makefile.ssl: Makefile.org
        @echo "Makefile.ssl is older than Makefile.org."
diff --git a/README b/README
index 320ac1b9b1d1e43b6e4882f510fc7be867a7411e..c5a98a45374cc1cf5cb23d7647db1408942042af 100644 (file)
--- a/README
+++ b/README
  country.  The file contains some of the patents that we know about or are
  rumoured to exist. This is not a definitive list.
 
- RSA Data Security holds software patents on the RSA and RC5 algorithms.  If
- their ciphers are used used inside the USA (and Japan?), you must contact RSA
- Data Security for licensing conditions. Their web page is
- http://www.rsa.com/.
+ RSA Security holds software patents on the RC5 algorithm.  If you
+ intend to use this cipher, you must contact RSA Security for
+ licensing conditions. Their web page is http://www.rsasecurity.com/.
 
- RC4 is a trademark of RSA Data Security, so use of this label should perhaps
- only be used with RSA Data Security's permission. 
+ RC4 is a trademark of RSA Security, so use of this label should perhaps
+ only be used with RSA Security's permission. 
 
  The IDEA algorithm is patented by Ascom in Austria, France, Germany, Italy,
  Japan, Netherlands, Spain, Sweden, Switzerland, UK and the USA.  They should
  a Win32 platform, read the INSTALL.W32 file.  For OpenVMS systems, read
  INSTALL.VMS.
 
- For people in the USA, it is possible to compile OpenSSL to use RSA Inc.'s
- public key library, RSAREF, by configuring OpenSSL with the option "rsaref".
-
  Read the documentation in the doc/ directory.  It is quite rough, but it
  lists the functions, you will probably have to look at the code to work out
  how to used them. Look at the example programs.
  # [your changes]
  # ./Configure dist; make clean
  # cd ..
- # diff -urN openssl-orig openssl-work > mydiffs.patch
+ # diff -ur openssl-orig openssl-work > mydiffs.patch
diff --git a/STATUS b/STATUS
index 5b02caf0a57cc6fdb0c852332f7076c15d86649b..b51aeb3eeac0c8892f51eb40b53a8ae3ba8d891d 100644 (file)
--- a/STATUS
+++ b/STATUS
@@ -1,6 +1,6 @@
 
   OpenSSL STATUS                           Last modified at
-  ______________                           $Date: 2000/07/12 16:34:33 $
+  ______________                           $Date: 2000/09/07 10:59:01 $
 
   DEVELOPMENT STATE
 
@@ -34,6 +34,7 @@
        UTIL (a new set of library functions to support some higher level
              functionality that is currently missing).
        Dynamic thread-lock support.
+       Shared library support for VMS.
 
   NEEDS PATCH
 
diff --git a/TABLE b/TABLE
index 0026a900a1655d401872a7532d9be1405d054d48..1086a74706a4bd59eb69e0d353dbda037331c7fc 100644 (file)
--- a/TABLE
+++ b/TABLE
@@ -482,7 +482,7 @@ $shared_cflag =
 
 *** aix-cc
 $cc           = cc
-$cflags       = -O -DAIX -DB_ENDIAN
+$cflags       = -O -DAIX -DB_ENDIAN -qmaxmem=16384
 $unistd       = 
 $thread_cflag = (unknown)
 $lflags       = 
@@ -537,7 +537,7 @@ $rc4_obj      =
 $rmd160_obj   = 
 $rc5_obj      = 
 $dso_scheme   = dlfcn
-$shared_target= 
+$shared_target= true64-shared
 $shared_cflag = 
 
 *** alpha-gcc
@@ -557,7 +557,7 @@ $rc4_obj      =
 $rmd160_obj   = 
 $rc5_obj      = 
 $dso_scheme   = dlfcn
-$shared_target= 
+$shared_target= true64-shared
 $shared_cflag = 
 
 *** alpha164-cc
@@ -577,7 +577,7 @@ $rc4_obj      =
 $rmd160_obj   = 
 $rc5_obj      = 
 $dso_scheme   = dlfcn
-$shared_target= 
+$shared_target= true64-shared
 $shared_cflag = 
 
 *** bsdi-elf-gcc
@@ -682,7 +682,7 @@ $shared_cflag =
 
 *** debug
 $cc           = gcc
-$cflags       = -DBN_DEBUG -DREF_CHECK -DBN_CTX_DEBUG -DCRYPTO_MDEBUG -ggdb -g2 -Wformat -Wshadow -Wmissing-prototypes -Wmissing-declarations -Werror
+$cflags       = -DBN_DEBUG -DREF_CHECK -DCONF_DEBUG -DBN_CTX_DEBUG -DCRYPTO_MDEBUG -ggdb -g2 -Wformat -Wshadow -Wmissing-prototypes -Wmissing-declarations -Werror
 $unistd       = 
 $thread_cflag = (unknown)
 $lflags       = -lefence
@@ -702,7 +702,7 @@ $shared_cflag =
 
 *** debug-ben
 $cc           = gcc
-$cflags       = -DBN_DEBUG -DREF_CHECK -DBN_CTX_DEBUG -DCRYPTO_MDEBUG -DPEDANTIC -DDEBUG_SAFESTACK -O2 -pedantic -Wall -Wshadow -Werror -pipe
+$cflags       = -DBN_DEBUG -DREF_CHECK -DCONF_DEBUG -DBN_CTX_DEBUG -DCRYPTO_MDEBUG -DPEDANTIC -DDEBUG_SAFESTACK -O2 -pedantic -Wall -Wshadow -Werror -pipe
 $unistd       = 
 $thread_cflag = (unknown)
 $lflags       = 
@@ -722,7 +722,7 @@ $shared_cflag =
 
 *** debug-ben-debug
 $cc           = gcc
-$cflags       = -DBN_DEBUG -DREF_CHECK -DBN_CTX_DEBUG -DCRYPTO_MDEBUG -DPEDANTIC -DDEBUG_SAFESTACK -g3 -O2 -pedantic -Wall -Wshadow -Werror -pipe
+$cflags       = -DBN_DEBUG -DREF_CHECK -DCONF_DEBUG -DBN_CTX_DEBUG -DCRYPTO_MDEBUG -DPEDANTIC -DDEBUG_SAFESTACK -g3 -O2 -pedantic -Wall -Wshadow -Werror -pipe
 $unistd       = 
 $thread_cflag = (unknown)
 $lflags       = 
@@ -742,7 +742,7 @@ $shared_cflag =
 
 *** debug-ben-strict
 $cc           = gcc
-$cflags       = -DBN_DEBUG -DREF_CHECK -DBN_CTX_DEBUG -DCRYPTO_MDEBUG -DCONST_STRICT -O2 -Wall -Wshadow -Werror -Wpointer-arith -Wcast-qual -Wwrite-strings -pipe
+$cflags       = -DBN_DEBUG -DREF_CHECK -DCONF_DEBUG -DBN_CTX_DEBUG -DCRYPTO_MDEBUG -DCONST_STRICT -O2 -Wall -Wshadow -Werror -Wpointer-arith -Wcast-qual -Wwrite-strings -pipe
 $unistd       = 
 $thread_cflag = (unknown)
 $lflags       = 
@@ -762,7 +762,7 @@ $shared_cflag =
 
 *** debug-bodo
 $cc           = gcc
-$cflags       = -DBIO_PAIR_DEBUG -DL_ENDIAN -DREF_CHECK -DBN_CTX_DEBUG -DCRYPTO_MDEBUG_ALL -g -m486 -pedantic -Wshadow -Wall
+$cflags       = -DL_ENDIAN -DBN_DEBUG -DREF_CHECK -DCONF_DEBUG -DBN_CTX_DEBUG -DCRYPTO_MDEBUG_ALL -DBIO_PAIR_DEBUG -g -m486 -pedantic -Wshadow -Wall
 $unistd       = 
 $thread_cflag = -D_REENTRANT
 $lflags       = 
@@ -782,7 +782,7 @@ $shared_cflag =
 
 *** debug-levitte-linux-elf
 $cc           = gcc
-$cflags       = -DUSE_ALLOCATING_PRINT -DRL_DEBUG -DREF_CHECK -DBN_CTX_DEBUG -DCRYPTO_MDEBUG -DNO_ASM -DL_ENDIAN -DTERMIO -D_POSIX_SOURCE -ggdb -g3 -m486 -pedantic -ansi -Wall -Wshadow -Wid-clash-31 -pipe
+$cflags       = -DUSE_ALLOCATING_PRINT -DRL_DEBUG -DREF_CHECK -DCONF_DEBUG -DBN_CTX_DEBUG -DCRYPTO_MDEBUG -DNO_ASM -DL_ENDIAN -DTERMIO -D_POSIX_SOURCE -ggdb -g3 -m486 -pedantic -ansi -Wall -Wshadow -Wid-clash-31 -pipe
 $unistd       = 
 $thread_cflag = -D_REENTRANT
 $lflags       = -ldl
@@ -802,7 +802,7 @@ $shared_cflag =
 
 *** debug-linux-elf
 $cc           = gcc
-$cflags       = -DREF_CHECK -DBN_CTX_DEBUG -DCRYPTO_MDEBUG -DL_ENDIAN -DTERMIO -g -m486 -Wall
+$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
@@ -822,7 +822,7 @@ $shared_cflag =
 
 *** debug-linux-elf-noefence
 $cc           = gcc
-$cflags       = -DREF_CHECK -DBN_CTX_DEBUG -DCRYPTO_MDEBUG -DL_ENDIAN -DTERMIO -g -m486 -Wall
+$cflags       = -DBN_DEBUG -DREF_CHECK -DCONF_DEBUG -DBN_CTX_DEBUG -DCRYPTO_MDEBUG -DL_ENDIAN -DTERMIO -g -m486 -Wall
 $unistd       = 
 $thread_cflag = -D_REENTRANT
 $lflags       = 
@@ -862,7 +862,7 @@ $shared_cflag =
 
 *** debug-solaris-sparcv8-cc
 $cc           = cc
-$cflags       = -DREF_CHECK -DBN_CTX_DEBUG -DCRYPTO_MDEBUG_ALL -xarch=v8 -g -O -xstrconst -Xa -DB_ENDIAN -DBN_DIV2W
+$cflags       = -DBN_DEBUG -DREF_CHECK -DCONF_DEBUG -DBN_CTX_DEBUG -DCRYPTO_MDEBUG_ALL -xarch=v8 -g -O -xstrconst -Xa -DB_ENDIAN -DBN_DIV2W
 $unistd       = 
 $thread_cflag = -D_REENTRANT
 $lflags       = -lsocket -lnsl -ldl
@@ -877,12 +877,12 @@ $rc4_obj      =
 $rmd160_obj   = 
 $rc5_obj      = 
 $dso_scheme   = dlfcn
-$shared_target= 
-$shared_cflag = 
+$shared_target= solaris-shared
+$shared_cflag = -KPIC
 
 *** debug-solaris-sparcv8-gcc
 $cc           = gcc
-$cflags       = -DREF_CHECK -DBN_CTX_DEBUG -DCRYPTO_MDEBUG_ALL -O -g -mv8 -Wall -DB_ENDIAN
+$cflags       = -DBN_DEBUG -DREF_CHECK -DCONF_DEBUG -DBN_CTX_DEBUG -DCRYPTO_MDEBUG_ALL -O -g -mv8 -Wall -DB_ENDIAN
 $unistd       = 
 $thread_cflag = -D_REENTRANT
 $lflags       = -lsocket -lnsl -ldl
@@ -897,12 +897,12 @@ $rc4_obj      =
 $rmd160_obj   = 
 $rc5_obj      = 
 $dso_scheme   = dlfcn
-$shared_target= 
-$shared_cflag = 
+$shared_target= solaris-shared
+$shared_cflag = -fPIC
 
 *** debug-solaris-sparcv9-cc
 $cc           = cc
-$cflags       = -DREF_CHECK -DBN_CTX_DEBUG -DCRYPTO_MDEBUG_ALL -xtarget=ultra -xarch=v8plus -g -O -xstrconst -Xa -DB_ENDIAN -DBN_DIV2W -DULTRASPARC
+$cflags       = -DBN_DEBUG -DREF_CHECK -DCONF_DEBUG -DBN_CTX_DEBUG -DCRYPTO_MDEBUG_ALL -xtarget=ultra -xarch=v8plus -g -O -xstrconst -Xa -DB_ENDIAN -DBN_DIV2W -DULTRASPARC
 $unistd       = 
 $thread_cflag = -D_REENTRANT
 $lflags       = -lsocket -lnsl -ldl
@@ -917,12 +917,12 @@ $rc4_obj      =
 $rmd160_obj   = 
 $rc5_obj      = 
 $dso_scheme   = dlfcn
-$shared_target= 
-$shared_cflag = 
+$shared_target= solaris-shared
+$shared_cflag = -KPIC
 
 *** debug-solaris-sparcv9-gcc
 $cc           = gcc
-$cflags       = -DREF_CHECK -DBN_CTX_DEBUG -DCRYPTO_MDEBUG_ALL -O -g -mcpu=ultrasparc -Wall -DB_ENDIAN
+$cflags       = -DBN_DEBUG -DREF_CHECK -DCONF_DEBUG -DBN_CTX_DEBUG -DCRYPTO_MDEBUG_ALL -O -g -mcpu=ultrasparc -Wall -DB_ENDIAN
 $unistd       = 
 $thread_cflag = -D_REENTRANT
 $lflags       = -lsocket -lnsl -ldl
@@ -937,12 +937,12 @@ $rc4_obj      =
 $rmd160_obj   = 
 $rc5_obj      = 
 $dso_scheme   = dlfcn
-$shared_target= 
-$shared_cflag = 
+$shared_target= solaris-shared
+$shared_cflag = -fPIC
 
 *** debug-steve
 $cc           = gcc
-$cflags       = -DL_ENDIAN -DREF_CHECK -DBN_CTX_DEBUG -DCRYPTO_MDEBUG_ALL -DPEDANTIC -g -O2 -m486 -pedantic -Wall -Werror -Wshadow -pipe
+$cflags       = -DL_ENDIAN -DREF_CHECK -DCONF_DEBUG -DBN_CTX_DEBUG -DDEBUG_SAFESTACK -DCRYPTO_MDEBUG_ALL -DPEDANTIC -g -O2 -m486 -pedantic -Wall -Werror -Wshadow -pipe
 $unistd       = 
 $thread_cflag = -D_REENTRANT
 $lflags       = 
@@ -962,7 +962,7 @@ $shared_cflag =
 
 *** debug-ulf
 $cc           = gcc
-$cflags       = -DL_ENDIAN -DREF_CHECK -DBN_DEBUG -DBN_CTX_DEBUG -DCRYPTO_MDEBUG_ALL -g -O2 -m486 -Wall -Werror -Wshadow -pipe
+$cflags       = -DL_ENDIAN -DREF_CHECK -DCONF_DEBUG -DBN_DEBUG -DBN_CTX_DEBUG -DCRYPTO_MDEBUG_ALL -g -O2 -m486 -Wall -Werror -Wshadow -pipe
 $unistd       = 
 $thread_cflag = -D_REENTRANT
 $lflags       = 
@@ -1557,8 +1557,8 @@ $rc4_obj      = asm/rx86-elf.o
 $rmd160_obj   = asm/rm86-elf.o
 $rc5_obj      = asm/r586-elf.o
 $dso_scheme   = dlfcn
-$shared_target= 
-$shared_cflag = 
+$shared_target= linux-shared
+$shared_cflag = -fPIC
 
 *** linux-elf-arm
 $cc           = gcc
@@ -1577,8 +1577,8 @@ $rc4_obj      =
 $rmd160_obj   = 
 $rc5_obj      = 
 $dso_scheme   = dlfcn
-$shared_target= 
-$shared_cflag = 
+$shared_target= linux-shared
+$shared_cflag = -fPIC
 
 *** linux-ia64
 $cc           = gcc
@@ -1800,6 +1800,26 @@ $dso_scheme   =
 $shared_target= 
 $shared_cflag = 
 
+*** qnx4
+$cc           = cc
+$cflags       = -DL_ENDIAN -DTERMIO
+$unistd       = 
+$thread_cflag = (unknown)
+$lflags       = 
+$bn_ops       = DES_PTR DES_RISC1 DES_UNROLL RC4_INDEX MD2_INT
+$bn_obj       = 
+$des_obj      = 
+$bf_obj       = 
+$md5_obj      = 
+$sha1_obj     = 
+$cast_obj     = 
+$rc4_obj      = 
+$rmd160_obj   = 
+$rc5_obj      = 
+$dso_scheme   = 
+$shared_target= 
+$shared_cflag = 
+
 *** rhapsody-ppc-cc
 $cc           = cc
 $cflags       = -O3 -DB_ENDIAN
@@ -1877,8 +1897,8 @@ $rc4_obj      =
 $rmd160_obj   = 
 $rc5_obj      = 
 $dso_scheme   = dlfcn
-$shared_target= 
-$shared_cflag = 
+$shared_target= solaris-shared
+$shared_cflag = -KPIC
 
 *** solaris-sparcv7-cc
 $cc           = cc
@@ -1897,8 +1917,8 @@ $rc4_obj      =
 $rmd160_obj   = 
 $rc5_obj      = 
 $dso_scheme   = dlfcn
-$shared_target= 
-$shared_cflag = 
+$shared_target= solaris-shared
+$shared_cflag = -KPIC
 
 *** solaris-sparcv7-gcc
 $cc           = gcc
@@ -1917,8 +1937,8 @@ $rc4_obj      =
 $rmd160_obj   = 
 $rc5_obj      = 
 $dso_scheme   = dlfcn
-$shared_target= 
-$shared_cflag = 
+$shared_target= solaris-shared
+$shared_cflag = -fPIC
 
 *** solaris-sparcv8-cc
 $cc           = cc
@@ -1937,8 +1957,8 @@ $rc4_obj      =
 $rmd160_obj   = 
 $rc5_obj      = 
 $dso_scheme   = dlfcn
-$shared_target= 
-$shared_cflag = 
+$shared_target= solaris-shared
+$shared_cflag = -KPIC
 
 *** solaris-sparcv8-gcc
 $cc           = gcc
@@ -1957,8 +1977,8 @@ $rc4_obj      =
 $rmd160_obj   = 
 $rc5_obj      = 
 $dso_scheme   = dlfcn
-$shared_target= 
-$shared_cflag = 
+$shared_target= solaris-shared
+$shared_cflag = -fPIC
 
 *** solaris-sparcv9-cc
 $cc           = cc
@@ -1977,8 +1997,8 @@ $rc4_obj      =
 $rmd160_obj   = 
 $rc5_obj      = 
 $dso_scheme   = dlfcn
-$shared_target= 
-$shared_cflag = 
+$shared_target= solaris-shared
+$shared_cflag = -KPIC
 
 *** solaris-sparcv9-gcc
 $cc           = gcc
@@ -1997,8 +2017,8 @@ $rc4_obj      =
 $rmd160_obj   = 
 $rc5_obj      = 
 $dso_scheme   = dlfcn
-$shared_target= 
-$shared_cflag = 
+$shared_target= solaris-shared
+$shared_cflag = -fPIC
 
 *** solaris-sparcv9-gcc27
 $cc           = gcc
@@ -2017,8 +2037,8 @@ $rc4_obj      =
 $rmd160_obj   = 
 $rc5_obj      = 
 $dso_scheme   = dlfcn
-$shared_target= 
-$shared_cflag = 
+$shared_target= solaris-shared
+$shared_cflag = -fPIC
 
 *** solaris-x86-gcc
 $cc           = gcc
@@ -2037,8 +2057,8 @@ $rc4_obj      = asm/rx86-sol.o
 $rmd160_obj   = asm/rm86-sol.o
 $rc5_obj      = asm/r586-sol.o
 $dso_scheme   = dlfcn
-$shared_target= 
-$shared_cflag = 
+$shared_target= solaris-shared
+$shared_cflag = -fPIC
 
 *** solaris64-sparcv9-cc
 $cc           = cc
@@ -2057,8 +2077,8 @@ $rc4_obj      =
 $rmd160_obj   = 
 $rc5_obj      = 
 $dso_scheme   = dlfcn
-$shared_target= 
-$shared_cflag = 
+$shared_target= solaris-shared
+$shared_cflag = -KPIC
 
 *** sunos-gcc
 $cc           = gcc
index 1664d769e23cc9ec69f12f00da9ce83aab453359..f62635f24dc04852a4e2f6eddd634b6d75266141 100644 (file)
@@ -34,10 +34,8 @@ $    IF F$PARSE("WRK_SSLINCLUDE:") .EQS. "" THEN -
 $      IF F$PARSE("WRK_SSLROOT:[VMS]") .EQS. "" THEN -
           CREATE/DIR/LOG WRK_SSLROOT:[VMS]
 $
-$      EXHEADER := vms_idhacks.h
-$
-$      COPY 'EXHEADER' WRK_SSLINCLUDE: /LOG
-$      SET FILE/PROT=WORLD:RE WRK_SSLINCLUDE:'EXHEADER'
+$      IF F$SEARCH("WRK_SSLINCLUDE:vms_idhacks.h") .NES. "" THEN -
+          DELETE WRK_SSLINCLUDE:vms_idhacks.h;*
 $
 $      OPEN/WRITE SF WRK_SSLROOT:[VMS]OPENSSL_STARTUP.COM
 $      WRITE SYS$OUTPUT "%OPEN-I-CREATED,  ",F$SEARCH("WRK_SSLROOT:[VMS]OPENSSL_STARTUP.COM")," created."
diff --git a/VMS/vms_idhacks.h b/VMS/vms_idhacks.h
deleted file mode 100644 (file)
index 9b31453..0000000
+++ /dev/null
@@ -1,94 +0,0 @@
-/* ====================================================================
- * Copyright (c) 1999 The OpenSSL Project.  All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- *
- * 1. Redistributions of source code must retain the above copyright
- *    notice, this list of conditions and the following disclaimer. 
- *
- * 2. Redistributions in binary form must reproduce the above copyright
- *    notice, this list of conditions and the following disclaimer in
- *    the documentation and/or other materials provided with the
- *    distribution.
- *
- * 3. All advertising materials mentioning features or use of this
- *    software must display the following acknowledgment:
- *    "This product includes software developed by the OpenSSL Project
- *    for use in the OpenSSL Toolkit. (http://www.openssl.org/)"
- *
- * 4. The names "OpenSSL Toolkit" and "OpenSSL Project" must not be used to
- *    endorse or promote products derived from this software without
- *    prior written permission. For written permission, please contact
- *    openssl-core@openssl.org.
- *
- * 5. Products derived from this software may not be called "OpenSSL"
- *    nor may "OpenSSL" appear in their names without prior written
- *    permission of the OpenSSL Project.
- *
- * 6. Redistributions of any form whatsoever must retain the following
- *    acknowledgment:
- *    "This product includes software developed by the OpenSSL Project
- *    for use in the OpenSSL Toolkit (http://www.openssl.org/)"
- *
- * THIS SOFTWARE IS PROVIDED BY THE OpenSSL PROJECT ``AS IS'' AND ANY
- * EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
- * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
- * PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE OpenSSL PROJECT OR
- * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
- * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
- * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
- * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,
- * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
- * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED
- * OF THE POSSIBILITY OF SUCH DAMAGE.
- * ====================================================================
- *
- * This product includes cryptographic software written by Eric Young
- * (eay@cryptsoft.com).  This product includes software written by Tim
- * Hudson (tjh@cryptsoft.com).
- *
- */
-
-#ifndef HEADER_VMS_IDHACKS_H
-#define HEADER_VMS_IDHACKS_H
-
-#ifdef VMS
-
-/* Hack a long name in crypto/asn1/a_mbstr.c */
-#define ASN1_STRING_set_default_mask_asc ASN1_STRING_set_def_mask_asc
-
-/* Hack the names created with DECLARE_ASN1_SET_OF(PKCS7_SIGNER_INFO) */
-#define i2d_ASN1_SET_OF_PKCS7_SIGNER_INFO      i2d_ASN1_SET_OF_PKCS7_SIGINF
-#define d2i_ASN1_SET_OF_PKCS7_SIGNER_INFO      d2i_ASN1_SET_OF_PKCS7_SIGINF
-
-/* Hack the names created with DECLARE_ASN1_SET_OF(PKCS7_RECIP_INFO) */
-#define i2d_ASN1_SET_OF_PKCS7_RECIP_INFO       i2d_ASN1_SET_OF_PKCS7_RECGINF
-#define d2i_ASN1_SET_OF_PKCS7_RECIP_INFO       d2i_ASN1_SET_OF_PKCS7_RECGINF
-
-/* Hack the names created with DECLARE_ASN1_SET_OF(ACCESS_DESCRIPTION) */
-#define i2d_ASN1_SET_OF_ACCESS_DESCRIPTION     i2d_ASN1_SET_OF_ACC_DESC
-#define d2i_ASN1_SET_OF_ACCESS_DESCRIPTION     d2i_ASN1_SET_OF_ACC_DESC
-
-/* Hack the names created with DECLARE_PEM_rw(NETSCAPE_CERT_SEQUENCE) */
-#define PEM_read_NETSCAPE_CERT_SEQUENCE                PEM_read_NS_CERT_SEQUENCE
-#define PEM_write_NETSCAPE_CERT_SEQUENCE       PEM_write_NS_CERT_SEQUENCE
-#define PEM_read_bio_NETSCAPE_CERT_SEQUENCE    PEM_read_bio_NS_CERT_SEQUENCE
-#define PEM_write_bio_NETSCAPE_CERT_SEQUENCE   PEM_write_bio_NS_CERT_SEQUENCE
-#define PEM_write_cb_bio_NETSCAPE_CERT_SEQUENCE        PEM_write_cb_bio_NS_CERT_SEQUENCE
-
-/* Hack the names created with DECLARE_PEM_rw(PKCS8_PRIV_KEY_INFO) */
-#define PEM_read_PKCS8_PRIV_KEY_INFO           PEM_read_P8_PRIV_KEY_INFO
-#define PEM_write_PKCS8_PRIV_KEY_INFO          PEM_write_P8_PRIV_KEY_INFO
-#define PEM_read_bio_PKCS8_PRIV_KEY_INFO       PEM_read_bio_P8_PRIV_KEY_INFO
-#define PEM_write_bio_PKCS8_PRIV_KEY_INFO      PEM_write_bio_P8_PRIV_KEY_INFO
-#define PEM_write_cb_bio_PKCS8_PRIV_KEY_INFO   PEM_wrt_cb_bio_P8_PRIV_KEY_INFO
-
-/* Hack other PEM names */
-#define PEM_write_bio_PKCS8PrivateKey_nid      PEM_write_bio_PKCS8PrivKey_nid
-
-#endif /* defined VMS */
-
-#endif /* ! defined HEADER_VMS_IDHACKS_H */
index 4eef57e6e3919aac3a1b13976d1d9d261d5f9cc9..7781067d6a000c20f993a58c99d6fc469b17741a 100644 (file)
@@ -116,6 +116,11 @@ foreach (@ARGV) {
                                                        "-infiles newreq.pem");
            $RET=$?;
            print "Signed certificate is in newcert.pem\n";
+       } elsif (/^(-signCA)$/) {
+           system ("$CA -policy policy_anything -out newcert.pem " .
+                                       "-extensions v3_ca -infiles newreq.pem");
+           $RET=$?;
+           print "Signed CA certificate is in newcert.pem\n";
        } elsif (/^-signcert$/) {
            system ("$X509 -x509toreq -in newreq.pem -signkey newreq.pem " .
                                                                "-out tmp.pem");
index b8dd5580168fec6a5ed112a456a916d9aadca9b1..89fd831a5101695e98a9debd27064e45356b5034 100644 (file)
@@ -35,7 +35,7 @@ SCRIPTS=CA.sh CA.pl der_chop
 EXE= $(PROGRAM)
 
 E_EXE= verify asn1pars req dgst dh dhparam enc passwd gendh errstr \
-       ca crl rsa dsa dsaparam \
+       ca crl rsa rsautl dsa dsaparam \
        x509 genrsa gendsa s_server s_client speed \
        s_time version pkcs7 crl2pkcs7 sess_id ciphers nseq pkcs12 \
        pkcs8 spkac smime rand
@@ -51,14 +51,14 @@ RAND_SRC=app_rand.c
 
 E_OBJ= verify.o asn1pars.o req.o dgst.o dh.o dhparam.o enc.o passwd.o gendh.o errstr.o \
        ca.o pkcs7.o crl2p7.o crl.o \
-       rsa.o dsa.o dsaparam.o \
+       rsa.o rsautl.o dsa.o dsaparam.o \
        x509.o genrsa.o gendsa.o s_server.o s_client.o speed.o \
        s_time.o $(A_OBJ) $(S_OBJ) $(RAND_OBJ) version.o sess_id.o \
        ciphers.o nseq.o pkcs12.o pkcs8.o spkac.o smime.o rand.o
 
 E_SRC= verify.c asn1pars.c req.c dgst.c dh.c enc.c passwd.c gendh.c errstr.c ca.c \
        pkcs7.c crl2p7.c crl.c \
-       rsa.c dsa.c dsaparam.c \
+       rsa.c rsautl.c dsa.c dsaparam.c \
        x509.c genrsa.c gendsa.c s_server.c s_client.c speed.c \
        s_time.c $(A_SRC) $(S_SRC) $(RAND_SRC) version.c sess_id.c \
        ciphers.c nseq.c pkcs12.c pkcs8.c spkac.c smime.c rand.c
@@ -151,14 +151,15 @@ app_rand.o: ../include/openssl/dh.h ../include/openssl/dsa.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
-app_rand.o: ../include/openssl/md5.h ../include/openssl/mdc2.h
-app_rand.o: ../include/openssl/obj_mac.h ../include/openssl/objects.h
-app_rand.o: ../include/openssl/opensslconf.h ../include/openssl/opensslv.h
-app_rand.o: ../include/openssl/pkcs7.h ../include/openssl/rand.h
-app_rand.o: ../include/openssl/rc2.h ../include/openssl/rc4.h
-app_rand.o: ../include/openssl/rc5.h ../include/openssl/ripemd.h
-app_rand.o: ../include/openssl/rsa.h ../include/openssl/safestack.h
-app_rand.o: ../include/openssl/sha.h ../include/openssl/stack.h
+app_rand.o: ../include/openssl/md4.h ../include/openssl/md5.h
+app_rand.o: ../include/openssl/mdc2.h ../include/openssl/obj_mac.h
+app_rand.o: ../include/openssl/objects.h ../include/openssl/opensslconf.h
+app_rand.o: ../include/openssl/opensslv.h ../include/openssl/pkcs7.h
+app_rand.o: ../include/openssl/rand.h ../include/openssl/rc2.h
+app_rand.o: ../include/openssl/rc4.h ../include/openssl/rc5.h
+app_rand.o: ../include/openssl/ripemd.h ../include/openssl/rsa.h
+app_rand.o: ../include/openssl/safestack.h ../include/openssl/sha.h
+app_rand.o: ../include/openssl/stack.h ../include/openssl/symhacks.h
 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
@@ -168,16 +169,17 @@ apps.o: ../include/openssl/dh.h ../include/openssl/dsa.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
-apps.o: ../include/openssl/md2.h ../include/openssl/md5.h
-apps.o: ../include/openssl/mdc2.h ../include/openssl/obj_mac.h
-apps.o: ../include/openssl/objects.h ../include/openssl/opensslconf.h
-apps.o: ../include/openssl/opensslv.h ../include/openssl/pem.h
-apps.o: ../include/openssl/pem2.h ../include/openssl/pkcs12.h
-apps.o: ../include/openssl/pkcs7.h ../include/openssl/rc2.h
-apps.o: ../include/openssl/rc4.h ../include/openssl/rc5.h
-apps.o: ../include/openssl/ripemd.h ../include/openssl/rsa.h
-apps.o: ../include/openssl/safestack.h ../include/openssl/sha.h
-apps.o: ../include/openssl/stack.h ../include/openssl/x509.h
+apps.o: ../include/openssl/md2.h ../include/openssl/md4.h
+apps.o: ../include/openssl/md5.h ../include/openssl/mdc2.h
+apps.o: ../include/openssl/obj_mac.h ../include/openssl/objects.h
+apps.o: ../include/openssl/opensslconf.h ../include/openssl/opensslv.h
+apps.o: ../include/openssl/pem.h ../include/openssl/pem2.h
+apps.o: ../include/openssl/pkcs12.h ../include/openssl/pkcs7.h
+apps.o: ../include/openssl/rc2.h ../include/openssl/rc4.h
+apps.o: ../include/openssl/rc5.h ../include/openssl/ripemd.h
+apps.o: ../include/openssl/rsa.h ../include/openssl/safestack.h
+apps.o: ../include/openssl/sha.h ../include/openssl/stack.h
+apps.o: ../include/openssl/symhacks.h ../include/openssl/x509.h
 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
@@ -187,15 +189,16 @@ asn1pars.o: ../include/openssl/dh.h ../include/openssl/dsa.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
-asn1pars.o: ../include/openssl/md2.h ../include/openssl/md5.h
-asn1pars.o: ../include/openssl/mdc2.h ../include/openssl/obj_mac.h
-asn1pars.o: ../include/openssl/objects.h ../include/openssl/opensslconf.h
-asn1pars.o: ../include/openssl/opensslv.h ../include/openssl/pem.h
-asn1pars.o: ../include/openssl/pem2.h ../include/openssl/pkcs7.h
-asn1pars.o: ../include/openssl/rc2.h ../include/openssl/rc4.h
-asn1pars.o: ../include/openssl/rc5.h ../include/openssl/ripemd.h
-asn1pars.o: ../include/openssl/rsa.h ../include/openssl/safestack.h
-asn1pars.o: ../include/openssl/sha.h ../include/openssl/stack.h
+asn1pars.o: ../include/openssl/md2.h ../include/openssl/md4.h
+asn1pars.o: ../include/openssl/md5.h ../include/openssl/mdc2.h
+asn1pars.o: ../include/openssl/obj_mac.h ../include/openssl/objects.h
+asn1pars.o: ../include/openssl/opensslconf.h ../include/openssl/opensslv.h
+asn1pars.o: ../include/openssl/pem.h ../include/openssl/pem2.h
+asn1pars.o: ../include/openssl/pkcs7.h ../include/openssl/rc2.h
+asn1pars.o: ../include/openssl/rc4.h ../include/openssl/rc5.h
+asn1pars.o: ../include/openssl/ripemd.h ../include/openssl/rsa.h
+asn1pars.o: ../include/openssl/safestack.h ../include/openssl/sha.h
+asn1pars.o: ../include/openssl/stack.h ../include/openssl/symhacks.h
 asn1pars.o: ../include/openssl/x509.h ../include/openssl/x509_vfy.h apps.h
 ca.o: ../include/openssl/asn1.h ../include/openssl/bio.h
 ca.o: ../include/openssl/blowfish.h ../include/openssl/bn.h
@@ -206,15 +209,16 @@ ca.o: ../include/openssl/e_os.h ../include/openssl/e_os.h
 ca.o: ../include/openssl/e_os2.h ../include/openssl/err.h
 ca.o: ../include/openssl/evp.h ../include/openssl/idea.h
 ca.o: ../include/openssl/lhash.h ../include/openssl/md2.h
-ca.o: ../include/openssl/md5.h ../include/openssl/mdc2.h
-ca.o: ../include/openssl/obj_mac.h ../include/openssl/objects.h
-ca.o: ../include/openssl/opensslconf.h ../include/openssl/opensslv.h
-ca.o: ../include/openssl/pem.h ../include/openssl/pem2.h
-ca.o: ../include/openssl/pkcs7.h ../include/openssl/rc2.h
-ca.o: ../include/openssl/rc4.h ../include/openssl/rc5.h
-ca.o: ../include/openssl/ripemd.h ../include/openssl/rsa.h
-ca.o: ../include/openssl/safestack.h ../include/openssl/sha.h
-ca.o: ../include/openssl/stack.h ../include/openssl/txt_db.h
+ca.o: ../include/openssl/md4.h ../include/openssl/md5.h
+ca.o: ../include/openssl/mdc2.h ../include/openssl/obj_mac.h
+ca.o: ../include/openssl/objects.h ../include/openssl/opensslconf.h
+ca.o: ../include/openssl/opensslv.h ../include/openssl/pem.h
+ca.o: ../include/openssl/pem2.h ../include/openssl/pkcs7.h
+ca.o: ../include/openssl/rc2.h ../include/openssl/rc4.h
+ca.o: ../include/openssl/rc5.h ../include/openssl/ripemd.h
+ca.o: ../include/openssl/rsa.h ../include/openssl/safestack.h
+ca.o: ../include/openssl/sha.h ../include/openssl/stack.h
+ca.o: ../include/openssl/symhacks.h ../include/openssl/txt_db.h
 ca.o: ../include/openssl/x509.h ../include/openssl/x509_vfy.h
 ca.o: ../include/openssl/x509v3.h apps.h
 ciphers.o: ../include/openssl/asn1.h ../include/openssl/bio.h
@@ -226,17 +230,18 @@ ciphers.o: ../include/openssl/dsa.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
-ciphers.o: ../include/openssl/md5.h ../include/openssl/mdc2.h
-ciphers.o: ../include/openssl/obj_mac.h ../include/openssl/objects.h
-ciphers.o: ../include/openssl/opensslconf.h ../include/openssl/opensslv.h
-ciphers.o: ../include/openssl/pem.h ../include/openssl/pem2.h
-ciphers.o: ../include/openssl/pkcs7.h ../include/openssl/rc2.h
-ciphers.o: ../include/openssl/rc4.h ../include/openssl/rc5.h
-ciphers.o: ../include/openssl/ripemd.h ../include/openssl/rsa.h
-ciphers.o: ../include/openssl/safestack.h ../include/openssl/sha.h
-ciphers.o: ../include/openssl/ssl.h ../include/openssl/ssl2.h
-ciphers.o: ../include/openssl/ssl23.h ../include/openssl/ssl3.h
-ciphers.o: ../include/openssl/stack.h ../include/openssl/tls1.h
+ciphers.o: ../include/openssl/md4.h ../include/openssl/md5.h
+ciphers.o: ../include/openssl/mdc2.h ../include/openssl/obj_mac.h
+ciphers.o: ../include/openssl/objects.h ../include/openssl/opensslconf.h
+ciphers.o: ../include/openssl/opensslv.h ../include/openssl/pem.h
+ciphers.o: ../include/openssl/pem2.h ../include/openssl/pkcs7.h
+ciphers.o: ../include/openssl/rc2.h ../include/openssl/rc4.h
+ciphers.o: ../include/openssl/rc5.h ../include/openssl/ripemd.h
+ciphers.o: ../include/openssl/rsa.h ../include/openssl/safestack.h
+ciphers.o: ../include/openssl/sha.h ../include/openssl/ssl.h
+ciphers.o: ../include/openssl/ssl2.h ../include/openssl/ssl23.h
+ciphers.o: ../include/openssl/ssl3.h ../include/openssl/stack.h
+ciphers.o: ../include/openssl/symhacks.h ../include/openssl/tls1.h
 ciphers.o: ../include/openssl/x509.h ../include/openssl/x509_vfy.h apps.h
 crl.o: ../include/openssl/asn1.h ../include/openssl/bio.h
 crl.o: ../include/openssl/blowfish.h ../include/openssl/bn.h
@@ -247,15 +252,16 @@ crl.o: ../include/openssl/dsa.h ../include/openssl/e_os.h
 crl.o: ../include/openssl/e_os.h ../include/openssl/e_os2.h
 crl.o: ../include/openssl/err.h ../include/openssl/evp.h
 crl.o: ../include/openssl/idea.h ../include/openssl/lhash.h
-crl.o: ../include/openssl/md2.h ../include/openssl/md5.h
-crl.o: ../include/openssl/mdc2.h ../include/openssl/obj_mac.h
-crl.o: ../include/openssl/objects.h ../include/openssl/opensslconf.h
-crl.o: ../include/openssl/opensslv.h ../include/openssl/pem.h
-crl.o: ../include/openssl/pem2.h ../include/openssl/pkcs7.h
-crl.o: ../include/openssl/rc2.h ../include/openssl/rc4.h
-crl.o: ../include/openssl/rc5.h ../include/openssl/ripemd.h
-crl.o: ../include/openssl/rsa.h ../include/openssl/safestack.h
-crl.o: ../include/openssl/sha.h ../include/openssl/stack.h
+crl.o: ../include/openssl/md2.h ../include/openssl/md4.h
+crl.o: ../include/openssl/md5.h ../include/openssl/mdc2.h
+crl.o: ../include/openssl/obj_mac.h ../include/openssl/objects.h
+crl.o: ../include/openssl/opensslconf.h ../include/openssl/opensslv.h
+crl.o: ../include/openssl/pem.h ../include/openssl/pem2.h
+crl.o: ../include/openssl/pkcs7.h ../include/openssl/rc2.h
+crl.o: ../include/openssl/rc4.h ../include/openssl/rc5.h
+crl.o: ../include/openssl/ripemd.h ../include/openssl/rsa.h
+crl.o: ../include/openssl/safestack.h ../include/openssl/sha.h
+crl.o: ../include/openssl/stack.h ../include/openssl/symhacks.h
 crl.o: ../include/openssl/x509.h ../include/openssl/x509_vfy.h
 crl.o: ../include/openssl/x509v3.h apps.h
 crl2p7.o: ../include/openssl/asn1.h ../include/openssl/bio.h
@@ -266,15 +272,16 @@ crl2p7.o: ../include/openssl/dh.h ../include/openssl/dsa.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
-crl2p7.o: ../include/openssl/md2.h ../include/openssl/md5.h
-crl2p7.o: ../include/openssl/mdc2.h ../include/openssl/obj_mac.h
-crl2p7.o: ../include/openssl/objects.h ../include/openssl/opensslconf.h
-crl2p7.o: ../include/openssl/opensslv.h ../include/openssl/pem.h
-crl2p7.o: ../include/openssl/pem2.h ../include/openssl/pkcs7.h
-crl2p7.o: ../include/openssl/rc2.h ../include/openssl/rc4.h
-crl2p7.o: ../include/openssl/rc5.h ../include/openssl/ripemd.h
-crl2p7.o: ../include/openssl/rsa.h ../include/openssl/safestack.h
-crl2p7.o: ../include/openssl/sha.h ../include/openssl/stack.h
+crl2p7.o: ../include/openssl/md2.h ../include/openssl/md4.h
+crl2p7.o: ../include/openssl/md5.h ../include/openssl/mdc2.h
+crl2p7.o: ../include/openssl/obj_mac.h ../include/openssl/objects.h
+crl2p7.o: ../include/openssl/opensslconf.h ../include/openssl/opensslv.h
+crl2p7.o: ../include/openssl/pem.h ../include/openssl/pem2.h
+crl2p7.o: ../include/openssl/pkcs7.h ../include/openssl/rc2.h
+crl2p7.o: ../include/openssl/rc4.h ../include/openssl/rc5.h
+crl2p7.o: ../include/openssl/ripemd.h ../include/openssl/rsa.h
+crl2p7.o: ../include/openssl/safestack.h ../include/openssl/sha.h
+crl2p7.o: ../include/openssl/stack.h ../include/openssl/symhacks.h
 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
@@ -284,15 +291,16 @@ dgst.o: ../include/openssl/dh.h ../include/openssl/dsa.h
 dgst.o: ../include/openssl/e_os.h ../include/openssl/e_os2.h
 dgst.o: ../include/openssl/err.h ../include/openssl/evp.h
 dgst.o: ../include/openssl/idea.h ../include/openssl/lhash.h
-dgst.o: ../include/openssl/md2.h ../include/openssl/md5.h
-dgst.o: ../include/openssl/mdc2.h ../include/openssl/obj_mac.h
-dgst.o: ../include/openssl/objects.h ../include/openssl/opensslconf.h
-dgst.o: ../include/openssl/opensslv.h ../include/openssl/pem.h
-dgst.o: ../include/openssl/pem2.h ../include/openssl/pkcs7.h
-dgst.o: ../include/openssl/rc2.h ../include/openssl/rc4.h
-dgst.o: ../include/openssl/rc5.h ../include/openssl/ripemd.h
-dgst.o: ../include/openssl/rsa.h ../include/openssl/safestack.h
-dgst.o: ../include/openssl/sha.h ../include/openssl/stack.h
+dgst.o: ../include/openssl/md2.h ../include/openssl/md4.h
+dgst.o: ../include/openssl/md5.h ../include/openssl/mdc2.h
+dgst.o: ../include/openssl/obj_mac.h ../include/openssl/objects.h
+dgst.o: ../include/openssl/opensslconf.h ../include/openssl/opensslv.h
+dgst.o: ../include/openssl/pem.h ../include/openssl/pem2.h
+dgst.o: ../include/openssl/pkcs7.h ../include/openssl/rc2.h
+dgst.o: ../include/openssl/rc4.h ../include/openssl/rc5.h
+dgst.o: ../include/openssl/ripemd.h ../include/openssl/rsa.h
+dgst.o: ../include/openssl/safestack.h ../include/openssl/sha.h
+dgst.o: ../include/openssl/stack.h ../include/openssl/symhacks.h
 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
@@ -302,15 +310,16 @@ 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/err.h ../include/openssl/evp.h
 dh.o: ../include/openssl/idea.h ../include/openssl/lhash.h
-dh.o: ../include/openssl/md2.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/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/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/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
 dsa.o: ../include/openssl/asn1.h ../include/openssl/bio.h
 dsa.o: ../include/openssl/blowfish.h ../include/openssl/bn.h
@@ -320,15 +329,16 @@ dsa.o: ../include/openssl/dh.h ../include/openssl/dsa.h
 dsa.o: ../include/openssl/e_os.h ../include/openssl/e_os2.h
 dsa.o: ../include/openssl/err.h ../include/openssl/evp.h
 dsa.o: ../include/openssl/idea.h ../include/openssl/lhash.h
-dsa.o: ../include/openssl/md2.h ../include/openssl/md5.h
-dsa.o: ../include/openssl/mdc2.h ../include/openssl/obj_mac.h
-dsa.o: ../include/openssl/objects.h ../include/openssl/opensslconf.h
-dsa.o: ../include/openssl/opensslv.h ../include/openssl/pem.h
-dsa.o: ../include/openssl/pem2.h ../include/openssl/pkcs7.h
-dsa.o: ../include/openssl/rc2.h ../include/openssl/rc4.h
-dsa.o: ../include/openssl/rc5.h ../include/openssl/ripemd.h
-dsa.o: ../include/openssl/rsa.h ../include/openssl/safestack.h
-dsa.o: ../include/openssl/sha.h ../include/openssl/stack.h
+dsa.o: ../include/openssl/md2.h ../include/openssl/md4.h
+dsa.o: ../include/openssl/md5.h ../include/openssl/mdc2.h
+dsa.o: ../include/openssl/obj_mac.h ../include/openssl/objects.h
+dsa.o: ../include/openssl/opensslconf.h ../include/openssl/opensslv.h
+dsa.o: ../include/openssl/pem.h ../include/openssl/pem2.h
+dsa.o: ../include/openssl/pkcs7.h ../include/openssl/rc2.h
+dsa.o: ../include/openssl/rc4.h ../include/openssl/rc5.h
+dsa.o: ../include/openssl/ripemd.h ../include/openssl/rsa.h
+dsa.o: ../include/openssl/safestack.h ../include/openssl/sha.h
+dsa.o: ../include/openssl/stack.h ../include/openssl/symhacks.h
 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
@@ -338,15 +348,16 @@ dsaparam.o: ../include/openssl/dh.h ../include/openssl/dsa.h
 dsaparam.o: ../include/openssl/e_os.h ../include/openssl/e_os2.h
 dsaparam.o: ../include/openssl/err.h ../include/openssl/evp.h
 dsaparam.o: ../include/openssl/idea.h ../include/openssl/lhash.h
-dsaparam.o: ../include/openssl/md2.h ../include/openssl/md5.h
-dsaparam.o: ../include/openssl/mdc2.h ../include/openssl/obj_mac.h
-dsaparam.o: ../include/openssl/objects.h ../include/openssl/opensslconf.h
-dsaparam.o: ../include/openssl/opensslv.h ../include/openssl/pem.h
-dsaparam.o: ../include/openssl/pem2.h ../include/openssl/pkcs7.h
-dsaparam.o: ../include/openssl/rc2.h ../include/openssl/rc4.h
-dsaparam.o: ../include/openssl/rc5.h ../include/openssl/ripemd.h
-dsaparam.o: ../include/openssl/rsa.h ../include/openssl/safestack.h
-dsaparam.o: ../include/openssl/sha.h ../include/openssl/stack.h
+dsaparam.o: ../include/openssl/md2.h ../include/openssl/md4.h
+dsaparam.o: ../include/openssl/md5.h ../include/openssl/mdc2.h
+dsaparam.o: ../include/openssl/obj_mac.h ../include/openssl/objects.h
+dsaparam.o: ../include/openssl/opensslconf.h ../include/openssl/opensslv.h
+dsaparam.o: ../include/openssl/pem.h ../include/openssl/pem2.h
+dsaparam.o: ../include/openssl/pkcs7.h ../include/openssl/rc2.h
+dsaparam.o: ../include/openssl/rc4.h ../include/openssl/rc5.h
+dsaparam.o: ../include/openssl/ripemd.h ../include/openssl/rsa.h
+dsaparam.o: ../include/openssl/safestack.h ../include/openssl/sha.h
+dsaparam.o: ../include/openssl/stack.h ../include/openssl/symhacks.h
 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
@@ -356,16 +367,17 @@ enc.o: ../include/openssl/dh.h ../include/openssl/dsa.h
 enc.o: ../include/openssl/e_os.h ../include/openssl/e_os2.h
 enc.o: ../include/openssl/err.h ../include/openssl/evp.h
 enc.o: ../include/openssl/idea.h ../include/openssl/lhash.h
-enc.o: ../include/openssl/md2.h ../include/openssl/md5.h
-enc.o: ../include/openssl/mdc2.h ../include/openssl/obj_mac.h
-enc.o: ../include/openssl/objects.h ../include/openssl/opensslconf.h
-enc.o: ../include/openssl/opensslv.h ../include/openssl/pem.h
-enc.o: ../include/openssl/pem2.h ../include/openssl/pkcs7.h
-enc.o: ../include/openssl/rand.h ../include/openssl/rc2.h
-enc.o: ../include/openssl/rc4.h ../include/openssl/rc5.h
-enc.o: ../include/openssl/ripemd.h ../include/openssl/rsa.h
-enc.o: ../include/openssl/safestack.h ../include/openssl/sha.h
-enc.o: ../include/openssl/stack.h ../include/openssl/x509.h
+enc.o: ../include/openssl/md2.h ../include/openssl/md4.h
+enc.o: ../include/openssl/md5.h ../include/openssl/mdc2.h
+enc.o: ../include/openssl/obj_mac.h ../include/openssl/objects.h
+enc.o: ../include/openssl/opensslconf.h ../include/openssl/opensslv.h
+enc.o: ../include/openssl/pem.h ../include/openssl/pem2.h
+enc.o: ../include/openssl/pkcs7.h ../include/openssl/rand.h
+enc.o: ../include/openssl/rc2.h ../include/openssl/rc4.h
+enc.o: ../include/openssl/rc5.h ../include/openssl/ripemd.h
+enc.o: ../include/openssl/rsa.h ../include/openssl/safestack.h
+enc.o: ../include/openssl/sha.h ../include/openssl/stack.h
+enc.o: ../include/openssl/symhacks.h ../include/openssl/x509.h
 enc.o: ../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
@@ -376,17 +388,18 @@ errstr.o: ../include/openssl/dsa.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
-errstr.o: ../include/openssl/md5.h ../include/openssl/mdc2.h
-errstr.o: ../include/openssl/obj_mac.h ../include/openssl/objects.h
-errstr.o: ../include/openssl/opensslconf.h ../include/openssl/opensslv.h
-errstr.o: ../include/openssl/pem.h ../include/openssl/pem2.h
-errstr.o: ../include/openssl/pkcs7.h ../include/openssl/rc2.h
-errstr.o: ../include/openssl/rc4.h ../include/openssl/rc5.h
-errstr.o: ../include/openssl/ripemd.h ../include/openssl/rsa.h
-errstr.o: ../include/openssl/safestack.h ../include/openssl/sha.h
-errstr.o: ../include/openssl/ssl.h ../include/openssl/ssl2.h
-errstr.o: ../include/openssl/ssl23.h ../include/openssl/ssl3.h
-errstr.o: ../include/openssl/stack.h ../include/openssl/tls1.h
+errstr.o: ../include/openssl/md4.h ../include/openssl/md5.h
+errstr.o: ../include/openssl/mdc2.h ../include/openssl/obj_mac.h
+errstr.o: ../include/openssl/objects.h ../include/openssl/opensslconf.h
+errstr.o: ../include/openssl/opensslv.h ../include/openssl/pem.h
+errstr.o: ../include/openssl/pem2.h ../include/openssl/pkcs7.h
+errstr.o: ../include/openssl/rc2.h ../include/openssl/rc4.h
+errstr.o: ../include/openssl/rc5.h ../include/openssl/ripemd.h
+errstr.o: ../include/openssl/rsa.h ../include/openssl/safestack.h
+errstr.o: ../include/openssl/sha.h ../include/openssl/ssl.h
+errstr.o: ../include/openssl/ssl2.h ../include/openssl/ssl23.h
+errstr.o: ../include/openssl/ssl3.h ../include/openssl/stack.h
+errstr.o: ../include/openssl/symhacks.h ../include/openssl/tls1.h
 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
@@ -396,16 +409,17 @@ gendh.o: ../include/openssl/dh.h ../include/openssl/dsa.h
 gendh.o: ../include/openssl/e_os.h ../include/openssl/e_os2.h
 gendh.o: ../include/openssl/err.h ../include/openssl/evp.h
 gendh.o: ../include/openssl/idea.h ../include/openssl/lhash.h
-gendh.o: ../include/openssl/md2.h ../include/openssl/md5.h
-gendh.o: ../include/openssl/mdc2.h ../include/openssl/obj_mac.h
-gendh.o: ../include/openssl/objects.h ../include/openssl/opensslconf.h
-gendh.o: ../include/openssl/opensslv.h ../include/openssl/pem.h
-gendh.o: ../include/openssl/pem2.h ../include/openssl/pkcs7.h
-gendh.o: ../include/openssl/rand.h ../include/openssl/rc2.h
-gendh.o: ../include/openssl/rc4.h ../include/openssl/rc5.h
-gendh.o: ../include/openssl/ripemd.h ../include/openssl/rsa.h
-gendh.o: ../include/openssl/safestack.h ../include/openssl/sha.h
-gendh.o: ../include/openssl/stack.h ../include/openssl/x509.h
+gendh.o: ../include/openssl/md2.h ../include/openssl/md4.h
+gendh.o: ../include/openssl/md5.h ../include/openssl/mdc2.h
+gendh.o: ../include/openssl/obj_mac.h ../include/openssl/objects.h
+gendh.o: ../include/openssl/opensslconf.h ../include/openssl/opensslv.h
+gendh.o: ../include/openssl/pem.h ../include/openssl/pem2.h
+gendh.o: ../include/openssl/pkcs7.h ../include/openssl/rand.h
+gendh.o: ../include/openssl/rc2.h ../include/openssl/rc4.h
+gendh.o: ../include/openssl/rc5.h ../include/openssl/ripemd.h
+gendh.o: ../include/openssl/rsa.h ../include/openssl/safestack.h
+gendh.o: ../include/openssl/sha.h ../include/openssl/stack.h
+gendh.o: ../include/openssl/symhacks.h ../include/openssl/x509.h
 gendh.o: ../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
@@ -415,15 +429,16 @@ gendsa.o: ../include/openssl/dh.h ../include/openssl/dsa.h
 gendsa.o: ../include/openssl/e_os.h ../include/openssl/e_os2.h
 gendsa.o: ../include/openssl/err.h ../include/openssl/evp.h
 gendsa.o: ../include/openssl/idea.h ../include/openssl/lhash.h
-gendsa.o: ../include/openssl/md2.h ../include/openssl/md5.h
-gendsa.o: ../include/openssl/mdc2.h ../include/openssl/obj_mac.h
-gendsa.o: ../include/openssl/objects.h ../include/openssl/opensslconf.h
-gendsa.o: ../include/openssl/opensslv.h ../include/openssl/pem.h
-gendsa.o: ../include/openssl/pem2.h ../include/openssl/pkcs7.h
-gendsa.o: ../include/openssl/rc2.h ../include/openssl/rc4.h
-gendsa.o: ../include/openssl/rc5.h ../include/openssl/ripemd.h
-gendsa.o: ../include/openssl/rsa.h ../include/openssl/safestack.h
-gendsa.o: ../include/openssl/sha.h ../include/openssl/stack.h
+gendsa.o: ../include/openssl/md2.h ../include/openssl/md4.h
+gendsa.o: ../include/openssl/md5.h ../include/openssl/mdc2.h
+gendsa.o: ../include/openssl/obj_mac.h ../include/openssl/objects.h
+gendsa.o: ../include/openssl/opensslconf.h ../include/openssl/opensslv.h
+gendsa.o: ../include/openssl/pem.h ../include/openssl/pem2.h
+gendsa.o: ../include/openssl/pkcs7.h ../include/openssl/rc2.h
+gendsa.o: ../include/openssl/rc4.h ../include/openssl/rc5.h
+gendsa.o: ../include/openssl/ripemd.h ../include/openssl/rsa.h
+gendsa.o: ../include/openssl/safestack.h ../include/openssl/sha.h
+gendsa.o: ../include/openssl/stack.h ../include/openssl/symhacks.h
 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
@@ -434,15 +449,16 @@ 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
 genrsa.o: ../include/openssl/lhash.h ../include/openssl/md2.h
-genrsa.o: ../include/openssl/md5.h ../include/openssl/mdc2.h
-genrsa.o: ../include/openssl/obj_mac.h ../include/openssl/objects.h
-genrsa.o: ../include/openssl/opensslconf.h ../include/openssl/opensslv.h
-genrsa.o: ../include/openssl/pem.h ../include/openssl/pem2.h
-genrsa.o: ../include/openssl/pkcs7.h ../include/openssl/rand.h
-genrsa.o: ../include/openssl/rc2.h ../include/openssl/rc4.h
-genrsa.o: ../include/openssl/rc5.h ../include/openssl/ripemd.h
-genrsa.o: ../include/openssl/rsa.h ../include/openssl/safestack.h
-genrsa.o: ../include/openssl/sha.h ../include/openssl/stack.h
+genrsa.o: ../include/openssl/md4.h ../include/openssl/md5.h
+genrsa.o: ../include/openssl/mdc2.h ../include/openssl/obj_mac.h
+genrsa.o: ../include/openssl/objects.h ../include/openssl/opensslconf.h
+genrsa.o: ../include/openssl/opensslv.h ../include/openssl/pem.h
+genrsa.o: ../include/openssl/pem2.h ../include/openssl/pkcs7.h
+genrsa.o: ../include/openssl/rand.h ../include/openssl/rc2.h
+genrsa.o: ../include/openssl/rc4.h ../include/openssl/rc5.h
+genrsa.o: ../include/openssl/ripemd.h ../include/openssl/rsa.h
+genrsa.o: ../include/openssl/safestack.h ../include/openssl/sha.h
+genrsa.o: ../include/openssl/stack.h ../include/openssl/symhacks.h
 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
@@ -452,15 +468,16 @@ nseq.o: ../include/openssl/dh.h ../include/openssl/dsa.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
-nseq.o: ../include/openssl/md2.h ../include/openssl/md5.h
-nseq.o: ../include/openssl/mdc2.h ../include/openssl/obj_mac.h
-nseq.o: ../include/openssl/objects.h ../include/openssl/opensslconf.h
-nseq.o: ../include/openssl/opensslv.h ../include/openssl/pem.h
-nseq.o: ../include/openssl/pem2.h ../include/openssl/pkcs7.h
-nseq.o: ../include/openssl/rc2.h ../include/openssl/rc4.h
-nseq.o: ../include/openssl/rc5.h ../include/openssl/ripemd.h
-nseq.o: ../include/openssl/rsa.h ../include/openssl/safestack.h
-nseq.o: ../include/openssl/sha.h ../include/openssl/stack.h
+nseq.o: ../include/openssl/md2.h ../include/openssl/md4.h
+nseq.o: ../include/openssl/md5.h ../include/openssl/mdc2.h
+nseq.o: ../include/openssl/obj_mac.h ../include/openssl/objects.h
+nseq.o: ../include/openssl/opensslconf.h ../include/openssl/opensslv.h
+nseq.o: ../include/openssl/pem.h ../include/openssl/pem2.h
+nseq.o: ../include/openssl/pkcs7.h ../include/openssl/rc2.h
+nseq.o: ../include/openssl/rc4.h ../include/openssl/rc5.h
+nseq.o: ../include/openssl/ripemd.h ../include/openssl/rsa.h
+nseq.o: ../include/openssl/safestack.h ../include/openssl/sha.h
+nseq.o: ../include/openssl/stack.h ../include/openssl/symhacks.h
 nseq.o: ../include/openssl/x509.h ../include/openssl/x509_vfy.h apps.h
 openssl.o: ../include/openssl/asn1.h ../include/openssl/bio.h
 openssl.o: ../include/openssl/blowfish.h ../include/openssl/bn.h
@@ -472,17 +489,18 @@ openssl.o: ../include/openssl/e_os.h ../include/openssl/e_os.h
 openssl.o: ../include/openssl/e_os2.h ../include/openssl/err.h
 openssl.o: ../include/openssl/evp.h ../include/openssl/idea.h
 openssl.o: ../include/openssl/lhash.h ../include/openssl/md2.h
-openssl.o: ../include/openssl/md5.h ../include/openssl/mdc2.h
-openssl.o: ../include/openssl/obj_mac.h ../include/openssl/objects.h
-openssl.o: ../include/openssl/opensslconf.h ../include/openssl/opensslv.h
-openssl.o: ../include/openssl/pem.h ../include/openssl/pem2.h
-openssl.o: ../include/openssl/pkcs7.h ../include/openssl/rc2.h
-openssl.o: ../include/openssl/rc4.h ../include/openssl/rc5.h
-openssl.o: ../include/openssl/ripemd.h ../include/openssl/rsa.h
-openssl.o: ../include/openssl/safestack.h ../include/openssl/sha.h
-openssl.o: ../include/openssl/ssl.h ../include/openssl/ssl2.h
-openssl.o: ../include/openssl/ssl23.h ../include/openssl/ssl3.h
-openssl.o: ../include/openssl/stack.h ../include/openssl/tls1.h
+openssl.o: ../include/openssl/md4.h ../include/openssl/md5.h
+openssl.o: ../include/openssl/mdc2.h ../include/openssl/obj_mac.h
+openssl.o: ../include/openssl/objects.h ../include/openssl/opensslconf.h
+openssl.o: ../include/openssl/opensslv.h ../include/openssl/pem.h
+openssl.o: ../include/openssl/pem2.h ../include/openssl/pkcs7.h
+openssl.o: ../include/openssl/rc2.h ../include/openssl/rc4.h
+openssl.o: ../include/openssl/rc5.h ../include/openssl/ripemd.h
+openssl.o: ../include/openssl/rsa.h ../include/openssl/safestack.h
+openssl.o: ../include/openssl/sha.h ../include/openssl/ssl.h
+openssl.o: ../include/openssl/ssl2.h ../include/openssl/ssl23.h
+openssl.o: ../include/openssl/ssl3.h ../include/openssl/stack.h
+openssl.o: ../include/openssl/symhacks.h ../include/openssl/tls1.h
 openssl.o: ../include/openssl/x509.h ../include/openssl/x509_vfy.h apps.h
 openssl.o: progs.h s_apps.h
 passwd.o: ../include/openssl/asn1.h ../include/openssl/bio.h
@@ -493,15 +511,16 @@ passwd.o: ../include/openssl/dh.h ../include/openssl/dsa.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
-passwd.o: ../include/openssl/md2.h ../include/openssl/md5.h
-passwd.o: ../include/openssl/mdc2.h ../include/openssl/obj_mac.h
-passwd.o: ../include/openssl/objects.h ../include/openssl/opensslconf.h
-passwd.o: ../include/openssl/opensslv.h ../include/openssl/pkcs7.h
-passwd.o: ../include/openssl/rand.h ../include/openssl/rc2.h
-passwd.o: ../include/openssl/rc4.h ../include/openssl/rc5.h
-passwd.o: ../include/openssl/ripemd.h ../include/openssl/rsa.h
-passwd.o: ../include/openssl/safestack.h ../include/openssl/sha.h
-passwd.o: ../include/openssl/stack.h ../include/openssl/x509.h
+passwd.o: ../include/openssl/md2.h ../include/openssl/md4.h
+passwd.o: ../include/openssl/md5.h ../include/openssl/mdc2.h
+passwd.o: ../include/openssl/obj_mac.h ../include/openssl/objects.h
+passwd.o: ../include/openssl/opensslconf.h ../include/openssl/opensslv.h
+passwd.o: ../include/openssl/pkcs7.h ../include/openssl/rand.h
+passwd.o: ../include/openssl/rc2.h ../include/openssl/rc4.h
+passwd.o: ../include/openssl/rc5.h ../include/openssl/ripemd.h
+passwd.o: ../include/openssl/rsa.h ../include/openssl/safestack.h
+passwd.o: ../include/openssl/sha.h ../include/openssl/stack.h
+passwd.o: ../include/openssl/symhacks.h ../include/openssl/x509.h
 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
@@ -511,16 +530,17 @@ pkcs12.o: ../include/openssl/dh.h ../include/openssl/dsa.h
 pkcs12.o: ../include/openssl/e_os.h ../include/openssl/e_os2.h
 pkcs12.o: ../include/openssl/err.h ../include/openssl/evp.h
 pkcs12.o: ../include/openssl/idea.h ../include/openssl/lhash.h
-pkcs12.o: ../include/openssl/md2.h ../include/openssl/md5.h
-pkcs12.o: ../include/openssl/mdc2.h ../include/openssl/obj_mac.h
-pkcs12.o: ../include/openssl/objects.h ../include/openssl/opensslconf.h
-pkcs12.o: ../include/openssl/opensslv.h ../include/openssl/pem.h
-pkcs12.o: ../include/openssl/pem2.h ../include/openssl/pkcs12.h
-pkcs12.o: ../include/openssl/pkcs7.h ../include/openssl/rc2.h
-pkcs12.o: ../include/openssl/rc4.h ../include/openssl/rc5.h
-pkcs12.o: ../include/openssl/ripemd.h ../include/openssl/rsa.h
-pkcs12.o: ../include/openssl/safestack.h ../include/openssl/sha.h
-pkcs12.o: ../include/openssl/stack.h ../include/openssl/x509.h
+pkcs12.o: ../include/openssl/md2.h ../include/openssl/md4.h
+pkcs12.o: ../include/openssl/md5.h ../include/openssl/mdc2.h
+pkcs12.o: ../include/openssl/obj_mac.h ../include/openssl/objects.h
+pkcs12.o: ../include/openssl/opensslconf.h ../include/openssl/opensslv.h
+pkcs12.o: ../include/openssl/pem.h ../include/openssl/pem2.h
+pkcs12.o: ../include/openssl/pkcs12.h ../include/openssl/pkcs7.h
+pkcs12.o: ../include/openssl/rc2.h ../include/openssl/rc4.h
+pkcs12.o: ../include/openssl/rc5.h ../include/openssl/ripemd.h
+pkcs12.o: ../include/openssl/rsa.h ../include/openssl/safestack.h
+pkcs12.o: ../include/openssl/sha.h ../include/openssl/stack.h
+pkcs12.o: ../include/openssl/symhacks.h ../include/openssl/x509.h
 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
@@ -530,15 +550,16 @@ pkcs7.o: ../include/openssl/dh.h ../include/openssl/dsa.h
 pkcs7.o: ../include/openssl/e_os.h ../include/openssl/e_os2.h
 pkcs7.o: ../include/openssl/err.h ../include/openssl/evp.h
 pkcs7.o: ../include/openssl/idea.h ../include/openssl/lhash.h
-pkcs7.o: ../include/openssl/md2.h ../include/openssl/md5.h
-pkcs7.o: ../include/openssl/mdc2.h ../include/openssl/obj_mac.h
-pkcs7.o: ../include/openssl/objects.h ../include/openssl/opensslconf.h
-pkcs7.o: ../include/openssl/opensslv.h ../include/openssl/pem.h
-pkcs7.o: ../include/openssl/pem2.h ../include/openssl/pkcs7.h
-pkcs7.o: ../include/openssl/rc2.h ../include/openssl/rc4.h
-pkcs7.o: ../include/openssl/rc5.h ../include/openssl/ripemd.h
-pkcs7.o: ../include/openssl/rsa.h ../include/openssl/safestack.h
-pkcs7.o: ../include/openssl/sha.h ../include/openssl/stack.h
+pkcs7.o: ../include/openssl/md2.h ../include/openssl/md4.h
+pkcs7.o: ../include/openssl/md5.h ../include/openssl/mdc2.h
+pkcs7.o: ../include/openssl/obj_mac.h ../include/openssl/objects.h
+pkcs7.o: ../include/openssl/opensslconf.h ../include/openssl/opensslv.h
+pkcs7.o: ../include/openssl/pem.h ../include/openssl/pem2.h
+pkcs7.o: ../include/openssl/pkcs7.h ../include/openssl/rc2.h
+pkcs7.o: ../include/openssl/rc4.h ../include/openssl/rc5.h
+pkcs7.o: ../include/openssl/ripemd.h ../include/openssl/rsa.h
+pkcs7.o: ../include/openssl/safestack.h ../include/openssl/sha.h
+pkcs7.o: ../include/openssl/stack.h ../include/openssl/symhacks.h
 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
@@ -548,16 +569,17 @@ pkcs8.o: ../include/openssl/dh.h ../include/openssl/dsa.h
 pkcs8.o: ../include/openssl/e_os.h ../include/openssl/e_os2.h
 pkcs8.o: ../include/openssl/err.h ../include/openssl/evp.h
 pkcs8.o: ../include/openssl/idea.h ../include/openssl/lhash.h
-pkcs8.o: ../include/openssl/md2.h ../include/openssl/md5.h
-pkcs8.o: ../include/openssl/mdc2.h ../include/openssl/obj_mac.h
-pkcs8.o: ../include/openssl/objects.h ../include/openssl/opensslconf.h
-pkcs8.o: ../include/openssl/opensslv.h ../include/openssl/pem.h
-pkcs8.o: ../include/openssl/pem2.h ../include/openssl/pkcs12.h
-pkcs8.o: ../include/openssl/pkcs7.h ../include/openssl/rc2.h
-pkcs8.o: ../include/openssl/rc4.h ../include/openssl/rc5.h
-pkcs8.o: ../include/openssl/ripemd.h ../include/openssl/rsa.h
-pkcs8.o: ../include/openssl/safestack.h ../include/openssl/sha.h
-pkcs8.o: ../include/openssl/stack.h ../include/openssl/x509.h
+pkcs8.o: ../include/openssl/md2.h ../include/openssl/md4.h
+pkcs8.o: ../include/openssl/md5.h ../include/openssl/mdc2.h
+pkcs8.o: ../include/openssl/obj_mac.h ../include/openssl/objects.h
+pkcs8.o: ../include/openssl/opensslconf.h ../include/openssl/opensslv.h
+pkcs8.o: ../include/openssl/pem.h ../include/openssl/pem2.h
+pkcs8.o: ../include/openssl/pkcs12.h ../include/openssl/pkcs7.h
+pkcs8.o: ../include/openssl/rc2.h ../include/openssl/rc4.h
+pkcs8.o: ../include/openssl/rc5.h ../include/openssl/ripemd.h
+pkcs8.o: ../include/openssl/rsa.h ../include/openssl/safestack.h
+pkcs8.o: ../include/openssl/sha.h ../include/openssl/stack.h
+pkcs8.o: ../include/openssl/symhacks.h ../include/openssl/x509.h
 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
@@ -567,15 +589,16 @@ rand.o: ../include/openssl/dh.h ../include/openssl/dsa.h
 rand.o: ../include/openssl/e_os.h ../include/openssl/e_os2.h
 rand.o: ../include/openssl/err.h ../include/openssl/evp.h
 rand.o: ../include/openssl/idea.h ../include/openssl/lhash.h
-rand.o: ../include/openssl/md2.h ../include/openssl/md5.h
-rand.o: ../include/openssl/mdc2.h ../include/openssl/obj_mac.h
-rand.o: ../include/openssl/objects.h ../include/openssl/opensslconf.h
-rand.o: ../include/openssl/opensslv.h ../include/openssl/pkcs7.h
-rand.o: ../include/openssl/rand.h ../include/openssl/rc2.h
-rand.o: ../include/openssl/rc4.h ../include/openssl/rc5.h
-rand.o: ../include/openssl/ripemd.h ../include/openssl/rsa.h
-rand.o: ../include/openssl/safestack.h ../include/openssl/sha.h
-rand.o: ../include/openssl/stack.h ../include/openssl/x509.h
+rand.o: ../include/openssl/md2.h ../include/openssl/md4.h
+rand.o: ../include/openssl/md5.h ../include/openssl/mdc2.h
+rand.o: ../include/openssl/obj_mac.h ../include/openssl/objects.h
+rand.o: ../include/openssl/opensslconf.h ../include/openssl/opensslv.h
+rand.o: ../include/openssl/pkcs7.h ../include/openssl/rand.h
+rand.o: ../include/openssl/rc2.h ../include/openssl/rc4.h
+rand.o: ../include/openssl/rc5.h ../include/openssl/ripemd.h
+rand.o: ../include/openssl/rsa.h ../include/openssl/safestack.h
+rand.o: ../include/openssl/sha.h ../include/openssl/stack.h
+rand.o: ../include/openssl/symhacks.h ../include/openssl/x509.h
 rand.o: ../include/openssl/x509_vfy.h apps.h
 req.o: ../include/openssl/asn1.h ../include/openssl/bio.h
 req.o: ../include/openssl/blowfish.h ../include/openssl/bn.h
@@ -587,15 +610,16 @@ req.o: ../include/openssl/e_os.h ../include/openssl/e_os2.h
 req.o: ../include/openssl/engine.h ../include/openssl/err.h
 req.o: ../include/openssl/evp.h ../include/openssl/idea.h
 req.o: ../include/openssl/lhash.h ../include/openssl/md2.h
-req.o: ../include/openssl/md5.h ../include/openssl/mdc2.h
-req.o: ../include/openssl/obj_mac.h ../include/openssl/objects.h
-req.o: ../include/openssl/opensslconf.h ../include/openssl/opensslv.h
-req.o: ../include/openssl/pem.h ../include/openssl/pem2.h
-req.o: ../include/openssl/pkcs7.h ../include/openssl/rand.h
-req.o: ../include/openssl/rc2.h ../include/openssl/rc4.h
-req.o: ../include/openssl/rc5.h ../include/openssl/ripemd.h
-req.o: ../include/openssl/rsa.h ../include/openssl/safestack.h
-req.o: ../include/openssl/sha.h ../include/openssl/stack.h
+req.o: ../include/openssl/md4.h ../include/openssl/md5.h
+req.o: ../include/openssl/mdc2.h ../include/openssl/obj_mac.h
+req.o: ../include/openssl/objects.h ../include/openssl/opensslconf.h
+req.o: ../include/openssl/opensslv.h ../include/openssl/pem.h
+req.o: ../include/openssl/pem2.h ../include/openssl/pkcs7.h
+req.o: ../include/openssl/rand.h ../include/openssl/rc2.h
+req.o: ../include/openssl/rc4.h ../include/openssl/rc5.h
+req.o: ../include/openssl/ripemd.h ../include/openssl/rsa.h
+req.o: ../include/openssl/safestack.h ../include/openssl/sha.h
+req.o: ../include/openssl/stack.h ../include/openssl/symhacks.h
 req.o: ../include/openssl/x509.h ../include/openssl/x509_vfy.h
 req.o: ../include/openssl/x509v3.h apps.h
 rsa.o: ../include/openssl/asn1.h ../include/openssl/bio.h
@@ -606,16 +630,36 @@ rsa.o: ../include/openssl/dh.h ../include/openssl/dsa.h
 rsa.o: ../include/openssl/e_os.h ../include/openssl/e_os2.h
 rsa.o: ../include/openssl/err.h ../include/openssl/evp.h
 rsa.o: ../include/openssl/idea.h ../include/openssl/lhash.h
-rsa.o: ../include/openssl/md2.h ../include/openssl/md5.h
-rsa.o: ../include/openssl/mdc2.h ../include/openssl/obj_mac.h
-rsa.o: ../include/openssl/objects.h ../include/openssl/opensslconf.h
-rsa.o: ../include/openssl/opensslv.h ../include/openssl/pem.h
-rsa.o: ../include/openssl/pem2.h ../include/openssl/pkcs7.h
-rsa.o: ../include/openssl/rc2.h ../include/openssl/rc4.h
-rsa.o: ../include/openssl/rc5.h ../include/openssl/ripemd.h
-rsa.o: ../include/openssl/rsa.h ../include/openssl/safestack.h
-rsa.o: ../include/openssl/sha.h ../include/openssl/stack.h
+rsa.o: ../include/openssl/md2.h ../include/openssl/md4.h
+rsa.o: ../include/openssl/md5.h ../include/openssl/mdc2.h
+rsa.o: ../include/openssl/obj_mac.h ../include/openssl/objects.h
+rsa.o: ../include/openssl/opensslconf.h ../include/openssl/opensslv.h
+rsa.o: ../include/openssl/pem.h ../include/openssl/pem2.h
+rsa.o: ../include/openssl/pkcs7.h ../include/openssl/rc2.h
+rsa.o: ../include/openssl/rc4.h ../include/openssl/rc5.h
+rsa.o: ../include/openssl/ripemd.h ../include/openssl/rsa.h
+rsa.o: ../include/openssl/safestack.h ../include/openssl/sha.h
+rsa.o: ../include/openssl/stack.h ../include/openssl/symhacks.h
 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/e_os.h ../include/openssl/e_os2.h
+rsautl.o: ../include/openssl/err.h ../include/openssl/evp.h
+rsautl.o: ../include/openssl/idea.h ../include/openssl/lhash.h
+rsautl.o: ../include/openssl/md2.h ../include/openssl/md4.h
+rsautl.o: ../include/openssl/md5.h ../include/openssl/mdc2.h
+rsautl.o: ../include/openssl/obj_mac.h ../include/openssl/objects.h
+rsautl.o: ../include/openssl/opensslconf.h ../include/openssl/opensslv.h
+rsautl.o: ../include/openssl/pem.h ../include/openssl/pem2.h
+rsautl.o: ../include/openssl/pkcs7.h ../include/openssl/rc2.h
+rsautl.o: ../include/openssl/rc4.h ../include/openssl/rc5.h
+rsautl.o: ../include/openssl/ripemd.h ../include/openssl/rsa.h
+rsautl.o: ../include/openssl/safestack.h ../include/openssl/sha.h
+rsautl.o: ../include/openssl/stack.h ../include/openssl/symhacks.h
+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
@@ -625,17 +669,18 @@ s_cb.o: ../include/openssl/dsa.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
-s_cb.o: ../include/openssl/md5.h ../include/openssl/mdc2.h
-s_cb.o: ../include/openssl/obj_mac.h ../include/openssl/objects.h
-s_cb.o: ../include/openssl/opensslconf.h ../include/openssl/opensslv.h
-s_cb.o: ../include/openssl/pem.h ../include/openssl/pem2.h
-s_cb.o: ../include/openssl/pkcs7.h ../include/openssl/rc2.h
-s_cb.o: ../include/openssl/rc4.h ../include/openssl/rc5.h
-s_cb.o: ../include/openssl/ripemd.h ../include/openssl/rsa.h
-s_cb.o: ../include/openssl/safestack.h ../include/openssl/sha.h
-s_cb.o: ../include/openssl/ssl.h ../include/openssl/ssl2.h
-s_cb.o: ../include/openssl/ssl23.h ../include/openssl/ssl3.h
-s_cb.o: ../include/openssl/stack.h ../include/openssl/tls1.h
+s_cb.o: ../include/openssl/md4.h ../include/openssl/md5.h
+s_cb.o: ../include/openssl/mdc2.h ../include/openssl/obj_mac.h
+s_cb.o: ../include/openssl/objects.h ../include/openssl/opensslconf.h
+s_cb.o: ../include/openssl/opensslv.h ../include/openssl/pem.h
+s_cb.o: ../include/openssl/pem2.h ../include/openssl/pkcs7.h
+s_cb.o: ../include/openssl/rc2.h ../include/openssl/rc4.h
+s_cb.o: ../include/openssl/rc5.h ../include/openssl/ripemd.h
+s_cb.o: ../include/openssl/rsa.h ../include/openssl/safestack.h
+s_cb.o: ../include/openssl/sha.h ../include/openssl/ssl.h
+s_cb.o: ../include/openssl/ssl2.h ../include/openssl/ssl23.h
+s_cb.o: ../include/openssl/ssl3.h ../include/openssl/stack.h
+s_cb.o: ../include/openssl/symhacks.h ../include/openssl/tls1.h
 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
@@ -646,18 +691,19 @@ s_client.o: ../include/openssl/dsa.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
-s_client.o: ../include/openssl/md2.h ../include/openssl/md5.h
-s_client.o: ../include/openssl/mdc2.h ../include/openssl/obj_mac.h
-s_client.o: ../include/openssl/objects.h ../include/openssl/opensslconf.h
-s_client.o: ../include/openssl/opensslv.h ../include/openssl/pem.h
-s_client.o: ../include/openssl/pem2.h ../include/openssl/pkcs7.h
-s_client.o: ../include/openssl/rand.h ../include/openssl/rc2.h
-s_client.o: ../include/openssl/rc4.h ../include/openssl/rc5.h
-s_client.o: ../include/openssl/ripemd.h ../include/openssl/rsa.h
-s_client.o: ../include/openssl/safestack.h ../include/openssl/sha.h
-s_client.o: ../include/openssl/ssl.h ../include/openssl/ssl2.h
-s_client.o: ../include/openssl/ssl23.h ../include/openssl/ssl3.h
-s_client.o: ../include/openssl/stack.h ../include/openssl/tls1.h
+s_client.o: ../include/openssl/md2.h ../include/openssl/md4.h
+s_client.o: ../include/openssl/md5.h ../include/openssl/mdc2.h
+s_client.o: ../include/openssl/obj_mac.h ../include/openssl/objects.h
+s_client.o: ../include/openssl/opensslconf.h ../include/openssl/opensslv.h
+s_client.o: ../include/openssl/pem.h ../include/openssl/pem2.h
+s_client.o: ../include/openssl/pkcs7.h ../include/openssl/rand.h
+s_client.o: ../include/openssl/rc2.h ../include/openssl/rc4.h
+s_client.o: ../include/openssl/rc5.h ../include/openssl/ripemd.h
+s_client.o: ../include/openssl/rsa.h ../include/openssl/safestack.h
+s_client.o: ../include/openssl/sha.h ../include/openssl/ssl.h
+s_client.o: ../include/openssl/ssl2.h ../include/openssl/ssl23.h
+s_client.o: ../include/openssl/ssl3.h ../include/openssl/stack.h
+s_client.o: ../include/openssl/symhacks.h ../include/openssl/tls1.h
 s_client.o: ../include/openssl/x509.h ../include/openssl/x509_vfy.h apps.h
 s_client.o: s_apps.h
 s_server.o: ../include/openssl/asn1.h ../include/openssl/bio.h
@@ -669,18 +715,19 @@ s_server.o: ../include/openssl/dsa.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
-s_server.o: ../include/openssl/md2.h ../include/openssl/md5.h
-s_server.o: ../include/openssl/mdc2.h ../include/openssl/obj_mac.h
-s_server.o: ../include/openssl/objects.h ../include/openssl/opensslconf.h
-s_server.o: ../include/openssl/opensslv.h ../include/openssl/pem.h
-s_server.o: ../include/openssl/pem2.h ../include/openssl/pkcs7.h
-s_server.o: ../include/openssl/rand.h ../include/openssl/rc2.h
-s_server.o: ../include/openssl/rc4.h ../include/openssl/rc5.h
-s_server.o: ../include/openssl/ripemd.h ../include/openssl/rsa.h
-s_server.o: ../include/openssl/safestack.h ../include/openssl/sha.h
-s_server.o: ../include/openssl/ssl.h ../include/openssl/ssl2.h
-s_server.o: ../include/openssl/ssl23.h ../include/openssl/ssl3.h
-s_server.o: ../include/openssl/stack.h ../include/openssl/tls1.h
+s_server.o: ../include/openssl/md2.h ../include/openssl/md4.h
+s_server.o: ../include/openssl/md5.h ../include/openssl/mdc2.h
+s_server.o: ../include/openssl/obj_mac.h ../include/openssl/objects.h
+s_server.o: ../include/openssl/opensslconf.h ../include/openssl/opensslv.h
+s_server.o: ../include/openssl/pem.h ../include/openssl/pem2.h
+s_server.o: ../include/openssl/pkcs7.h ../include/openssl/rand.h
+s_server.o: ../include/openssl/rc2.h ../include/openssl/rc4.h
+s_server.o: ../include/openssl/rc5.h ../include/openssl/ripemd.h
+s_server.o: ../include/openssl/rsa.h ../include/openssl/safestack.h
+s_server.o: ../include/openssl/sha.h ../include/openssl/ssl.h
+s_server.o: ../include/openssl/ssl2.h ../include/openssl/ssl23.h
+s_server.o: ../include/openssl/ssl3.h ../include/openssl/stack.h
+s_server.o: ../include/openssl/symhacks.h ../include/openssl/tls1.h
 s_server.o: ../include/openssl/x509.h ../include/openssl/x509_vfy.h apps.h
 s_server.o: s_apps.h
 s_socket.o: ../include/openssl/asn1.h ../include/openssl/bio.h
@@ -691,17 +738,18 @@ 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/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/md5.h
-s_socket.o: ../include/openssl/mdc2.h ../include/openssl/obj_mac.h
-s_socket.o: ../include/openssl/objects.h ../include/openssl/opensslconf.h
-s_socket.o: ../include/openssl/opensslv.h ../include/openssl/pem.h
-s_socket.o: ../include/openssl/pem2.h ../include/openssl/pkcs7.h
-s_socket.o: ../include/openssl/rc2.h ../include/openssl/rc4.h
-s_socket.o: ../include/openssl/rc5.h ../include/openssl/ripemd.h
-s_socket.o: ../include/openssl/rsa.h ../include/openssl/safestack.h
-s_socket.o: ../include/openssl/sha.h ../include/openssl/ssl.h
-s_socket.o: ../include/openssl/ssl2.h ../include/openssl/ssl23.h
-s_socket.o: ../include/openssl/ssl3.h ../include/openssl/stack.h
+s_socket.o: ../include/openssl/md2.h ../include/openssl/md4.h
+s_socket.o: ../include/openssl/md5.h ../include/openssl/mdc2.h
+s_socket.o: ../include/openssl/obj_mac.h ../include/openssl/objects.h
+s_socket.o: ../include/openssl/opensslconf.h ../include/openssl/opensslv.h
+s_socket.o: ../include/openssl/pem.h ../include/openssl/pem2.h
+s_socket.o: ../include/openssl/pkcs7.h ../include/openssl/rc2.h
+s_socket.o: ../include/openssl/rc4.h ../include/openssl/rc5.h
+s_socket.o: ../include/openssl/ripemd.h ../include/openssl/rsa.h
+s_socket.o: ../include/openssl/safestack.h ../include/openssl/sha.h
+s_socket.o: ../include/openssl/ssl.h ../include/openssl/ssl2.h
+s_socket.o: ../include/openssl/ssl23.h ../include/openssl/ssl3.h
+s_socket.o: ../include/openssl/stack.h ../include/openssl/symhacks.h
 s_socket.o: ../include/openssl/tls1.h ../include/openssl/x509.h
 s_socket.o: ../include/openssl/x509_vfy.h apps.h s_apps.h
 s_time.o: ../include/openssl/asn1.h ../include/openssl/bio.h
@@ -713,17 +761,18 @@ s_time.o: ../include/openssl/dsa.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
-s_time.o: ../include/openssl/md5.h ../include/openssl/mdc2.h
-s_time.o: ../include/openssl/obj_mac.h ../include/openssl/objects.h
-s_time.o: ../include/openssl/opensslconf.h ../include/openssl/opensslv.h
-s_time.o: ../include/openssl/pem.h ../include/openssl/pem2.h
-s_time.o: ../include/openssl/pkcs7.h ../include/openssl/rc2.h
-s_time.o: ../include/openssl/rc4.h ../include/openssl/rc5.h
-s_time.o: ../include/openssl/ripemd.h ../include/openssl/rsa.h
-s_time.o: ../include/openssl/safestack.h ../include/openssl/sha.h
-s_time.o: ../include/openssl/ssl.h ../include/openssl/ssl2.h
-s_time.o: ../include/openssl/ssl23.h ../include/openssl/ssl3.h
-s_time.o: ../include/openssl/stack.h ../include/openssl/tls1.h
+s_time.o: ../include/openssl/md4.h ../include/openssl/md5.h
+s_time.o: ../include/openssl/mdc2.h ../include/openssl/obj_mac.h
+s_time.o: ../include/openssl/objects.h ../include/openssl/opensslconf.h
+s_time.o: ../include/openssl/opensslv.h ../include/openssl/pem.h
+s_time.o: ../include/openssl/pem2.h ../include/openssl/pkcs7.h
+s_time.o: ../include/openssl/rc2.h ../include/openssl/rc4.h
+s_time.o: ../include/openssl/rc5.h ../include/openssl/ripemd.h
+s_time.o: ../include/openssl/rsa.h ../include/openssl/safestack.h
+s_time.o: ../include/openssl/sha.h ../include/openssl/ssl.h
+s_time.o: ../include/openssl/ssl2.h ../include/openssl/ssl23.h
+s_time.o: ../include/openssl/ssl3.h ../include/openssl/stack.h
+s_time.o: ../include/openssl/symhacks.h ../include/openssl/tls1.h
 s_time.o: ../include/openssl/x509.h ../include/openssl/x509_vfy.h apps.h
 s_time.o: s_apps.h
 sess_id.o: ../include/openssl/asn1.h ../include/openssl/bio.h
@@ -735,17 +784,18 @@ sess_id.o: ../include/openssl/dsa.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
-sess_id.o: ../include/openssl/md5.h ../include/openssl/mdc2.h
-sess_id.o: ../include/openssl/obj_mac.h ../include/openssl/objects.h
-sess_id.o: ../include/openssl/opensslconf.h ../include/openssl/opensslv.h
-sess_id.o: ../include/openssl/pem.h ../include/openssl/pem2.h
-sess_id.o: ../include/openssl/pkcs7.h ../include/openssl/rc2.h
-sess_id.o: ../include/openssl/rc4.h ../include/openssl/rc5.h
-sess_id.o: ../include/openssl/ripemd.h ../include/openssl/rsa.h
-sess_id.o: ../include/openssl/safestack.h ../include/openssl/sha.h
-sess_id.o: ../include/openssl/ssl.h ../include/openssl/ssl2.h
-sess_id.o: ../include/openssl/ssl23.h ../include/openssl/ssl3.h
-sess_id.o: ../include/openssl/stack.h ../include/openssl/tls1.h
+sess_id.o: ../include/openssl/md4.h ../include/openssl/md5.h
+sess_id.o: ../include/openssl/mdc2.h ../include/openssl/obj_mac.h
+sess_id.o: ../include/openssl/objects.h ../include/openssl/opensslconf.h
+sess_id.o: ../include/openssl/opensslv.h ../include/openssl/pem.h
+sess_id.o: ../include/openssl/pem2.h ../include/openssl/pkcs7.h
+sess_id.o: ../include/openssl/rc2.h ../include/openssl/rc4.h
+sess_id.o: ../include/openssl/rc5.h ../include/openssl/ripemd.h
+sess_id.o: ../include/openssl/rsa.h ../include/openssl/safestack.h
+sess_id.o: ../include/openssl/sha.h ../include/openssl/ssl.h
+sess_id.o: ../include/openssl/ssl2.h ../include/openssl/ssl23.h
+sess_id.o: ../include/openssl/ssl3.h ../include/openssl/stack.h
+sess_id.o: ../include/openssl/symhacks.h ../include/openssl/tls1.h
 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
@@ -755,15 +805,16 @@ smime.o: ../include/openssl/dh.h ../include/openssl/dsa.h
 smime.o: ../include/openssl/e_os.h ../include/openssl/e_os2.h
 smime.o: ../include/openssl/err.h ../include/openssl/evp.h
 smime.o: ../include/openssl/idea.h ../include/openssl/lhash.h
-smime.o: ../include/openssl/md2.h ../include/openssl/md5.h
-smime.o: ../include/openssl/mdc2.h ../include/openssl/obj_mac.h
-smime.o: ../include/openssl/objects.h ../include/openssl/opensslconf.h
-smime.o: ../include/openssl/opensslv.h ../include/openssl/pem.h
-smime.o: ../include/openssl/pem2.h ../include/openssl/pkcs7.h
-smime.o: ../include/openssl/rc2.h ../include/openssl/rc4.h
-smime.o: ../include/openssl/rc5.h ../include/openssl/ripemd.h
-smime.o: ../include/openssl/rsa.h ../include/openssl/safestack.h
-smime.o: ../include/openssl/sha.h ../include/openssl/stack.h
+smime.o: ../include/openssl/md2.h ../include/openssl/md4.h
+smime.o: ../include/openssl/md5.h ../include/openssl/mdc2.h
+smime.o: ../include/openssl/obj_mac.h ../include/openssl/objects.h
+smime.o: ../include/openssl/opensslconf.h ../include/openssl/opensslv.h
+smime.o: ../include/openssl/pem.h ../include/openssl/pem2.h
+smime.o: ../include/openssl/pkcs7.h ../include/openssl/rc2.h
+smime.o: ../include/openssl/rc4.h ../include/openssl/rc5.h
+smime.o: ../include/openssl/ripemd.h ../include/openssl/rsa.h
+smime.o: ../include/openssl/safestack.h ../include/openssl/sha.h
+smime.o: ../include/openssl/stack.h ../include/openssl/symhacks.h
 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
@@ -774,15 +825,16 @@ 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
 speed.o: ../include/openssl/idea.h ../include/openssl/lhash.h
-speed.o: ../include/openssl/md2.h ../include/openssl/md5.h
-speed.o: ../include/openssl/mdc2.h ../include/openssl/obj_mac.h
-speed.o: ../include/openssl/objects.h ../include/openssl/opensslconf.h
-speed.o: ../include/openssl/opensslv.h ../include/openssl/pkcs7.h
-speed.o: ../include/openssl/rand.h ../include/openssl/rc2.h
-speed.o: ../include/openssl/rc4.h ../include/openssl/rc5.h
-speed.o: ../include/openssl/ripemd.h ../include/openssl/rsa.h
-speed.o: ../include/openssl/safestack.h ../include/openssl/sha.h
-speed.o: ../include/openssl/stack.h ../include/openssl/x509.h
+speed.o: ../include/openssl/md2.h ../include/openssl/md4.h
+speed.o: ../include/openssl/md5.h ../include/openssl/mdc2.h
+speed.o: ../include/openssl/obj_mac.h ../include/openssl/objects.h
+speed.o: ../include/openssl/opensslconf.h ../include/openssl/opensslv.h
+speed.o: ../include/openssl/pkcs7.h ../include/openssl/rand.h
+speed.o: ../include/openssl/rc2.h ../include/openssl/rc4.h
+speed.o: ../include/openssl/rc5.h ../include/openssl/ripemd.h
+speed.o: ../include/openssl/rsa.h ../include/openssl/safestack.h
+speed.o: ../include/openssl/sha.h ../include/openssl/stack.h
+speed.o: ../include/openssl/symhacks.h ../include/openssl/x509.h
 speed.o: ../include/openssl/x509_vfy.h ./testdsa.h ./testrsa.h apps.h
 spkac.o: ../include/openssl/asn1.h ../include/openssl/bio.h
 spkac.o: ../include/openssl/blowfish.h ../include/openssl/bn.h
@@ -793,15 +845,16 @@ spkac.o: ../include/openssl/dsa.h ../include/openssl/e_os.h
 spkac.o: ../include/openssl/e_os.h ../include/openssl/e_os2.h
 spkac.o: ../include/openssl/err.h ../include/openssl/evp.h
 spkac.o: ../include/openssl/idea.h ../include/openssl/lhash.h
-spkac.o: ../include/openssl/md2.h ../include/openssl/md5.h
-spkac.o: ../include/openssl/mdc2.h ../include/openssl/obj_mac.h
-spkac.o: ../include/openssl/objects.h ../include/openssl/opensslconf.h
-spkac.o: ../include/openssl/opensslv.h ../include/openssl/pem.h
-spkac.o: ../include/openssl/pem2.h ../include/openssl/pkcs7.h
-spkac.o: ../include/openssl/rc2.h ../include/openssl/rc4.h
-spkac.o: ../include/openssl/rc5.h ../include/openssl/ripemd.h
-spkac.o: ../include/openssl/rsa.h ../include/openssl/safestack.h
-spkac.o: ../include/openssl/sha.h ../include/openssl/stack.h
+spkac.o: ../include/openssl/md2.h ../include/openssl/md4.h
+spkac.o: ../include/openssl/md5.h ../include/openssl/mdc2.h
+spkac.o: ../include/openssl/obj_mac.h ../include/openssl/objects.h
+spkac.o: ../include/openssl/opensslconf.h ../include/openssl/opensslv.h
+spkac.o: ../include/openssl/pem.h ../include/openssl/pem2.h
+spkac.o: ../include/openssl/pkcs7.h ../include/openssl/rc2.h
+spkac.o: ../include/openssl/rc4.h ../include/openssl/rc5.h
+spkac.o: ../include/openssl/ripemd.h ../include/openssl/rsa.h
+spkac.o: ../include/openssl/safestack.h ../include/openssl/sha.h
+spkac.o: ../include/openssl/stack.h ../include/openssl/symhacks.h
 spkac.o: ../include/openssl/x509.h ../include/openssl/x509_vfy.h apps.h
 verify.o: ../include/openssl/asn1.h ../include/openssl/bio.h
 verify.o: ../include/openssl/blowfish.h ../include/openssl/bn.h
@@ -812,15 +865,16 @@ verify.o: ../include/openssl/dsa.h ../include/openssl/e_os.h
 verify.o: ../include/openssl/e_os.h ../include/openssl/e_os2.h
 verify.o: ../include/openssl/err.h ../include/openssl/evp.h
 verify.o: ../include/openssl/idea.h ../include/openssl/lhash.h
-verify.o: ../include/openssl/md2.h ../include/openssl/md5.h
-verify.o: ../include/openssl/mdc2.h ../include/openssl/obj_mac.h
-verify.o: ../include/openssl/objects.h ../include/openssl/opensslconf.h
-verify.o: ../include/openssl/opensslv.h ../include/openssl/pem.h
-verify.o: ../include/openssl/pem2.h ../include/openssl/pkcs7.h
-verify.o: ../include/openssl/rc2.h ../include/openssl/rc4.h
-verify.o: ../include/openssl/rc5.h ../include/openssl/ripemd.h
-verify.o: ../include/openssl/rsa.h ../include/openssl/safestack.h
-verify.o: ../include/openssl/sha.h ../include/openssl/stack.h
+verify.o: ../include/openssl/md2.h ../include/openssl/md4.h
+verify.o: ../include/openssl/md5.h ../include/openssl/mdc2.h
+verify.o: ../include/openssl/obj_mac.h ../include/openssl/objects.h
+verify.o: ../include/openssl/opensslconf.h ../include/openssl/opensslv.h
+verify.o: ../include/openssl/pem.h ../include/openssl/pem2.h
+verify.o: ../include/openssl/pkcs7.h ../include/openssl/rc2.h
+verify.o: ../include/openssl/rc4.h ../include/openssl/rc5.h
+verify.o: ../include/openssl/ripemd.h ../include/openssl/rsa.h
+verify.o: ../include/openssl/safestack.h ../include/openssl/sha.h
+verify.o: ../include/openssl/stack.h ../include/openssl/symhacks.h
 verify.o: ../include/openssl/x509.h ../include/openssl/x509_vfy.h
 verify.o: ../include/openssl/x509v3.h apps.h
 version.o: ../include/openssl/asn1.h ../include/openssl/bio.h
@@ -831,14 +885,15 @@ version.o: ../include/openssl/dh.h ../include/openssl/dsa.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
-version.o: ../include/openssl/md5.h ../include/openssl/mdc2.h
-version.o: ../include/openssl/obj_mac.h ../include/openssl/objects.h
-version.o: ../include/openssl/opensslconf.h ../include/openssl/opensslv.h
-version.o: ../include/openssl/pkcs7.h ../include/openssl/rc2.h
-version.o: ../include/openssl/rc4.h ../include/openssl/rc5.h
-version.o: ../include/openssl/ripemd.h ../include/openssl/rsa.h
-version.o: ../include/openssl/safestack.h ../include/openssl/sha.h
-version.o: ../include/openssl/stack.h ../include/openssl/x509.h
+version.o: ../include/openssl/md4.h ../include/openssl/md5.h
+version.o: ../include/openssl/mdc2.h ../include/openssl/obj_mac.h
+version.o: ../include/openssl/objects.h ../include/openssl/opensslconf.h
+version.o: ../include/openssl/opensslv.h ../include/openssl/pkcs7.h
+version.o: ../include/openssl/rc2.h ../include/openssl/rc4.h
+version.o: ../include/openssl/rc5.h ../include/openssl/ripemd.h
+version.o: ../include/openssl/rsa.h ../include/openssl/safestack.h
+version.o: ../include/openssl/sha.h ../include/openssl/stack.h
+version.o: ../include/openssl/symhacks.h ../include/openssl/x509.h
 version.o: ../include/openssl/x509_vfy.h apps.h
 x509.o: ../include/openssl/asn1.h ../include/openssl/bio.h
 x509.o: ../include/openssl/blowfish.h ../include/openssl/bn.h
@@ -849,14 +904,15 @@ x509.o: ../include/openssl/dsa.h ../include/openssl/e_os.h
 x509.o: ../include/openssl/e_os.h ../include/openssl/e_os2.h
 x509.o: ../include/openssl/err.h ../include/openssl/evp.h
 x509.o: ../include/openssl/idea.h ../include/openssl/lhash.h
-x509.o: ../include/openssl/md2.h ../include/openssl/md5.h
-x509.o: ../include/openssl/mdc2.h ../include/openssl/obj_mac.h
-x509.o: ../include/openssl/objects.h ../include/openssl/opensslconf.h
-x509.o: ../include/openssl/opensslv.h ../include/openssl/pem.h
-x509.o: ../include/openssl/pem2.h ../include/openssl/pkcs7.h
-x509.o: ../include/openssl/rc2.h ../include/openssl/rc4.h
-x509.o: ../include/openssl/rc5.h ../include/openssl/ripemd.h
-x509.o: ../include/openssl/rsa.h ../include/openssl/safestack.h
-x509.o: ../include/openssl/sha.h ../include/openssl/stack.h
+x509.o: ../include/openssl/md2.h ../include/openssl/md4.h
+x509.o: ../include/openssl/md5.h ../include/openssl/mdc2.h
+x509.o: ../include/openssl/obj_mac.h ../include/openssl/objects.h
+x509.o: ../include/openssl/opensslconf.h ../include/openssl/opensslv.h
+x509.o: ../include/openssl/pem.h ../include/openssl/pem2.h
+x509.o: ../include/openssl/pkcs7.h ../include/openssl/rc2.h
+x509.o: ../include/openssl/rc4.h ../include/openssl/rc5.h
+x509.o: ../include/openssl/ripemd.h ../include/openssl/rsa.h
+x509.o: ../include/openssl/safestack.h ../include/openssl/sha.h
+x509.o: ../include/openssl/stack.h ../include/openssl/symhacks.h
 x509.o: ../include/openssl/x509.h ../include/openssl/x509_vfy.h
 x509.o: ../include/openssl/x509v3.h apps.h
index fafbfc536cf128f6ee61affb75fd5ddbb2e0fd22..50ea09bacaa9f44a9dfe6ea6083de3c848f73f06 100644 (file)
@@ -594,6 +594,47 @@ EVP_PKEY *load_key(BIO *err, char *file, int format, char *pass)
        return(pkey);
        }
 
+EVP_PKEY *load_pubkey(BIO *err, char *file, int format)
+       {
+       BIO *key=NULL;
+       EVP_PKEY *pkey=NULL;
+
+       if (file == NULL)
+               {
+               BIO_printf(err,"no keyfile specified\n");
+               goto end;
+               }
+       key=BIO_new(BIO_s_file());
+       if (key == NULL)
+               {
+               ERR_print_errors(err);
+               goto end;
+               }
+       if (BIO_read_filename(key,file) <= 0)
+               {
+               perror(file);
+               goto end;
+               }
+       if (format == FORMAT_ASN1)
+               {
+               pkey=d2i_PUBKEY_bio(key, NULL);
+               }
+       else if (format == FORMAT_PEM)
+               {
+               pkey=PEM_read_bio_PUBKEY(key,NULL,NULL,NULL);
+               }
+       else
+               {
+               BIO_printf(err,"bad input format specified for key\n");
+               goto end;
+               }
+ end:
+       if (key != NULL) BIO_free(key);
+       if (pkey == NULL)
+               BIO_printf(err,"unable to load Public Key\n");
+       return(pkey);
+       }
+
 STACK_OF(X509) *load_certs(BIO *err, char *file, int format)
        {
        BIO *certs;
index 54fa01ced4b8b5bed0b50c065f06fb15e290105d..5582e38f658d0eb8ceb9c77a0bc90b551c43843f 100644 (file)
@@ -152,6 +152,7 @@ int app_passwd(BIO *err, char *arg1, char *arg2, char **pass1, char **pass2);
 int add_oid_section(BIO *err, LHASH *conf);
 X509 *load_cert(BIO *err, char *file, int format);
 EVP_PKEY *load_key(BIO *err, char *file, int format, char *pass);
+EVP_PKEY *load_pubkey(BIO *err, char *file, int format);
 STACK_OF(X509) *load_certs(BIO *err, char *file, int format);
 
 #define FORMAT_UNDEF    0
index d28cde99d8c8ecb34397d948842d6da91b852c36..09314019929500072a0f3449a5c97f5d829e9ca1 100644 (file)
--- a/apps/ca.c
+++ b/apps/ca.c
@@ -216,7 +216,7 @@ int MAIN(int, char **);
 
 int MAIN(int argc, char **argv)
        {
-       char *key=NULL;
+       char *key=NULL,*passargin=NULL;
        int total=0;
        int total_done=0;
        int badops=0;
@@ -333,6 +333,11 @@ EF_ALIGNMENT=0;
                        if (--argc < 1) goto bad;
                        keyfile= *(++argv);
                        }
+               else if (strcmp(*argv,"-passin") == 0)
+                       {
+                       if (--argc < 1) goto bad;
+                       passargin= *(++argv);
+                       }
                else if (strcmp(*argv,"-key") == 0)
                        {
                        if (--argc < 1) goto bad;
@@ -526,6 +531,11 @@ bad:
                lookup_fail(section,ENV_PRIVATE_KEY);
                goto err;
                }
+       if(!key && !app_passwd(bio_err, passargin, NULL, &key, NULL))
+               {
+               BIO_printf(bio_err,"Error getting password\n");
+               goto err;
+               }
        if (BIO_read_filename(in,keyfile) <= 0)
                {
                perror(keyfile);
index 3db28d25ca09592cc97063bc0e08207066d38275..a151fb84576accc1a81cd34bc4d9c47f3b83b459 100644 (file)
@@ -73,7 +73,8 @@
 #undef PROG
 #define PROG   dgst_main
 
-void do_fp(unsigned char *buf,BIO *f,int sep);
+void do_fp(BIO *out, unsigned char *buf, BIO *bp, int sep, char binout,
+               EVP_PKEY *key, unsigned char *sigin, unsigned int siglen);
 
 int MAIN(int, char **);
 
@@ -84,11 +85,18 @@ int MAIN(int argc, char **argv)
        const EVP_MD *md=NULL,*m;
        BIO *in=NULL,*inp;
        BIO *bmd=NULL;
+       BIO *out = NULL;
        const char *name;
 #define PROG_NAME_SIZE  16
        char pname[PROG_NAME_SIZE];
        int separator=0;
        int debug=0;
+       const char *outfile = NULL, *keyfile = NULL;
+       const char *sigfile = NULL, *randfile = NULL;
+       char out_bin = -1, want_pub = 0, do_verify = 0;
+       EVP_PKEY *sigkey = NULL;
+       unsigned char *sigbuf = NULL;
+       unsigned int siglen = 0;
 
        apps_startup();
 
@@ -113,6 +121,43 @@ int MAIN(int argc, char **argv)
                if ((*argv)[0] != '-') break;
                if (strcmp(*argv,"-c") == 0)
                        separator=1;
+               else if (strcmp(*argv,"-rand") == 0)
+                       {
+                       if (--argc < 1) break;
+                       randfile=*(++argv);
+                       }
+               else if (strcmp(*argv,"-out") == 0)
+                       {
+                       if (--argc < 1) break;
+                       outfile=*(++argv);
+                       }
+               else if (strcmp(*argv,"-sign") == 0)
+                       {
+                       if (--argc < 1) break;
+                       keyfile=*(++argv);
+                       }
+               else if (strcmp(*argv,"-verify") == 0)
+                       {
+                       if (--argc < 1) break;
+                       keyfile=*(++argv);
+                       want_pub = 1;
+                       do_verify = 1;
+                       }
+               else if (strcmp(*argv,"-prverify") == 0)
+                       {
+                       if (--argc < 1) break;
+                       keyfile=*(++argv);
+                       do_verify = 1;
+                       }
+               else if (strcmp(*argv,"-signature") == 0)
+                       {
+                       if (--argc < 1) break;
+                       sigfile=*(++argv);
+                       }
+               else if (strcmp(*argv,"-hex") == 0)
+                       out_bin = 0;
+               else if (strcmp(*argv,"-binary") == 0)
+                       out_bin = 1;
                else if (strcmp(*argv,"-d") == 0)
                        debug=1;
                else if ((m=EVP_get_digestbyname(&((*argv)[1]))) != NULL)
@@ -126,14 +171,30 @@ int MAIN(int argc, char **argv)
        if (md == NULL)
                md=EVP_md5();
 
+       if(do_verify && !sigfile) {
+               BIO_printf(bio_err, "No signature to verify: use the -signature option\n");
+               err = 1; 
+               goto end;
+       }
+
        if ((argc > 0) && (argv[0][0] == '-')) /* bad option */
                {
                BIO_printf(bio_err,"unknown option '%s'\n",*argv);
                BIO_printf(bio_err,"options are\n");
-               BIO_printf(bio_err,"-c   to output the digest with separating colons\n");
-               BIO_printf(bio_err,"-d   to output debug info\n");
+               BIO_printf(bio_err,"-c              to output the digest with separating colons\n");
+               BIO_printf(bio_err,"-d              to output debug info\n");
+               BIO_printf(bio_err,"-hex            output as hex dump\n");
+               BIO_printf(bio_err,"-binary         output in binary form\n");
+               BIO_printf(bio_err,"-sign   file    sign digest using private key in file\n");
+               BIO_printf(bio_err,"-verify file    verify a signature using public key in file\n");
+               BIO_printf(bio_err,"-prverify file  verify a signature using private key in file\n");
+               BIO_printf(bio_err,"-signature file signature to verify\n");
+               BIO_printf(bio_err,"-binary         output in binary form\n");
+
                BIO_printf(bio_err,"-%3s to use the %s message digest algorithm (default)\n",
                        LN_md5,LN_md5);
+               BIO_printf(bio_err,"-%3s to use the %s message digest algorithm\n",
+                       LN_md4,LN_md4);
                BIO_printf(bio_err,"-%3s to use the %s message digest algorithm\n",
                        LN_md2,LN_md2);
                BIO_printf(bio_err,"-%3s to use the %s message digest algorithm\n",
@@ -147,7 +208,7 @@ int MAIN(int argc, char **argv)
                err=1;
                goto end;
                }
-       
+
        in=BIO_new(BIO_s_file());
        bmd=BIO_new(BIO_f_md());
        if (debug)
@@ -163,6 +224,72 @@ int MAIN(int argc, char **argv)
                goto end;
                }
 
+       if(out_bin == -1) {
+               if(keyfile) out_bin = 1;
+               else out_bin = 0;
+       }
+
+       if(randfile)
+               app_RAND_load_file(randfile, bio_err, 0);
+
+       if(outfile) {
+               if(out_bin)
+                       out = BIO_new_file(outfile, "wb");
+               else    out = BIO_new_file(outfile, "w");
+       } else out = BIO_new_fp(stdout, BIO_NOCLOSE);
+
+       if(!out) {
+               BIO_printf(bio_err, "Error opening output file %s\n", 
+                                       outfile ? outfile : "(stdout)");
+               ERR_print_errors(bio_err);
+               goto end;
+       }
+
+       if(keyfile) {
+               BIO *keybio;
+               keybio = BIO_new_file(keyfile, "r");
+               if(!keybio) {
+                       BIO_printf(bio_err, "Error opening key file %s\n",
+                                                               keyfile);
+                       ERR_print_errors(bio_err);
+                       goto end;
+               }
+               
+               if(want_pub) 
+                       sigkey = PEM_read_bio_PUBKEY(keybio, NULL, NULL, NULL);
+               else sigkey = PEM_read_bio_PrivateKey(keybio, NULL, NULL, NULL);
+               BIO_free(keybio);
+               if(!sigkey) {
+                       BIO_printf(bio_err, "Error reading key file %s\n",
+                                                               keyfile);
+                       ERR_print_errors(bio_err);
+                       goto end;
+               }
+       }
+
+       if(sigfile && sigkey) {
+               BIO *sigbio;
+               sigbio = BIO_new_file(sigfile, "rb");
+               siglen = EVP_PKEY_size(sigkey);
+               sigbuf = OPENSSL_malloc(siglen);
+               if(!sigbio) {
+                       BIO_printf(bio_err, "Error opening signature file %s\n",
+                                                               sigfile);
+                       ERR_print_errors(bio_err);
+                       goto end;
+               }
+               siglen = BIO_read(sigbio, sigbuf, siglen);
+               BIO_free(sigbio);
+               if(siglen <= 0) {
+                       BIO_printf(bio_err, "Error reading signature file %s\n",
+                                                               sigfile);
+                       ERR_print_errors(bio_err);
+                       goto end;
+               }
+       }
+               
+
+
        /* we use md as a filter, reading from 'in' */
        BIO_set_md(bmd,md);
        inp=BIO_push(bmd,in);
@@ -170,7 +297,7 @@ int MAIN(int argc, char **argv)
        if (argc == 0)
                {
                BIO_set_fp(in,stdin,BIO_NOCLOSE);
-               do_fp(buf,inp,separator);
+               do_fp(out, buf,inp,separator, out_bin, sigkey, sigbuf, siglen);
                }
        else
                {
@@ -183,8 +310,9 @@ int MAIN(int argc, char **argv)
                                err++;
                                continue;
                                }
-                       printf("%s(%s)= ",name,argv[i]);
-                       do_fp(buf,inp,separator);
+                       if(!out_bin) BIO_printf(out, "%s(%s)= ",name,argv[i]);
+                       do_fp(out, buf,inp,separator, out_bin, sigkey, 
+                                                               sigbuf, siglen);
                        (void)BIO_reset(bmd);
                        }
                }
@@ -195,11 +323,15 @@ end:
                OPENSSL_free(buf);
                }
        if (in != NULL) BIO_free(in);
+       BIO_free(out);
+       EVP_PKEY_free(sigkey);
+       if(sigbuf) OPENSSL_free(sigbuf);
        if (bmd != NULL) BIO_free(bmd);
        EXIT(err);
        }
 
-void do_fp(unsigned char *buf, BIO *bp, int sep)
+void do_fp(BIO *out, unsigned char *buf, BIO *bp, int sep, char binout,
+                       EVP_PKEY *key, unsigned char *sigin, unsigned int siglen)
        {
        int len;
        int i;
@@ -209,14 +341,44 @@ void do_fp(unsigned char *buf, BIO *bp, int sep)
                i=BIO_read(bp,(char *)buf,BUFSIZE);
                if (i <= 0) break;
                }
-       len=BIO_gets(bp,(char *)buf,BUFSIZE);
+       if(sigin)
+               {
+               EVP_MD_CTX *ctx;
+               BIO_get_md_ctx(bp, &ctx);
+               i = EVP_VerifyFinal(ctx, sigin, siglen, key); 
+               if(i > 0) BIO_printf(out, "Verified OK\n");
+               else if(i == 0) BIO_printf(out, "Verification Failure\n");
+               else
+                       {
+                       BIO_printf(bio_err, "Error Verifying Data\n");
+                       ERR_print_errors(bio_err);
+                       }
+               return;
+               }
+       if(key)
+               {
+               EVP_MD_CTX *ctx;
+               BIO_get_md_ctx(bp, &ctx);
+               if(!EVP_SignFinal(ctx, buf, (unsigned int *)&len, key)) 
+                       {
+                       BIO_printf(bio_err, "Error Signing Data\n");
+                       ERR_print_errors(bio_err);
+                       return;
+                       }
+               }
+       else
+               len=BIO_gets(bp,(char *)buf,BUFSIZE);
 
-       for (i=0; i<len; i++)
+       if(binout) BIO_write(out, buf, len);
+       else 
                {
-               if (sep && (i != 0))
-                       putc(':',stdout);
-               printf("%02x",buf[i]);
+               for (i=0; i<len; i++)
+                       {
+                       if (sep && (i != 0))
+                               BIO_printf(out, ":");
+                       BIO_printf(out, "%02x",buf[i]);
+                       }
+               BIO_printf(out, "\n");
                }
-       printf("\n");
        }
 
index 81d43f6a3eae3e68d664df67149392e9012eae20..6eaeca9b8eb12c000df6779883e2cf219d8b35aa 100644 (file)
@@ -1,5 +1,10 @@
 -----BEGIN DH PARAMETERS-----
-MIGHAoGBAJf2QmHKtQXdKCjhPx1ottPb0PMTBH9A6FbaWMsTuKG/K3g6TG1Z1fkq
-/Gz/PWk/eLI9TzFgqVAuPvr3q14a1aZeVUMTgo2oO5/y2UHe6VaJ+trqCTat3xlx
-/mNbIK9HA2RgPC3gWfVLZQrY+gz3ASHHR5nXWHEyvpuZm7m3h+irAgEC
+MIGHAoGBAPSI/VhOSdvNILSd5JEHNmszbDgNRR0PfIizHHxbLY7288kjwEPwpVsY
+jY67VYy4XTjTNP18F1dDox0YbN4zISy1Kv884bEpQBgRjXyEpwpy1obEAxnIByl6
+ypUM2Zafq9AKUJsCRtMIPWakXUGfnHy9iUsiGSa6q6Jew1XpL3jHAgEC
 -----END DH PARAMETERS-----
+
+These are the 1024 bit DH parameters from "Assigned Number for SKIP Protocols"
+(http://www.skip-vpn.org/spec/numbers.html).
+See there for how they were generated.
+Note that g is not a generator, but this is not a problem since p is a safe prime.
index 5f0ffa9fd49704bccb5cb30ad4eb8114c0064a0d..c3680c5e711661b15c4edbacda642cf7c04adc13 100644 (file)
@@ -101,6 +101,8 @@ int main(int Argc, char *Argv[])
        arg.data=NULL;
        arg.count=0;
 
+       if (getenv("OPENSSL_DEBUG_MEMORY") != NULL)
+               CRYPTO_malloc_debug_init();
        CRYPTO_mem_ctrl(CRYPTO_MEM_CHECK_ON);
 
        apps_startup();
index 3f958943b4a37379c8c8337d605f96fd5e1ddef0..0f3ac4977a235806c3a7f817ad5705905f03b480 100644 (file)
@@ -78,7 +78,7 @@ EVP_CIPHER *enc;
 #define CLCERTS                0x8
 #define CACERTS                0x10
 
-int get_cert_chain(X509 *cert, STACK_OF(X509) **chain);
+int get_cert_chain (X509 *cert, X509_STORE *store, STACK_OF(X509) **chain);
 int dump_certs_keys_p12(BIO *out, PKCS12 *p12, char *pass, int passlen, int options, char *pempass);
 int dump_certs_pkeys_bags(BIO *out, STACK_OF(PKCS12_SAFEBAG) *bags, char *pass,
                          int passlen, int options, char *pempass);
@@ -117,6 +117,7 @@ int MAIN(int argc, char **argv)
     char *passargin = NULL, *passargout = NULL, *passarg = NULL;
     char *passin = NULL, *passout = NULL;
     char *inrand = NULL;
+    char *CApath = NULL, *CAfile = NULL;
 
     apps_startup();
 
@@ -225,6 +226,16 @@ int MAIN(int argc, char **argv)
                        passarg = *args;
                        noprompt = 1;
                    } else badarg = 1;
+               } else if (!strcmp(*args,"-CApath")) {
+                   if (args[1]) {
+                       args++; 
+                       CApath = *args;
+                   } else badarg = 1;
+               } else if (!strcmp(*args,"-CAfile")) {
+                   if (args[1]) {
+                       args++; 
+                       CAfile = *args;
+                   } else badarg = 1;
                } else badarg = 1;
 
        } else badarg = 1;
@@ -238,6 +249,8 @@ int MAIN(int argc, char **argv)
        BIO_printf (bio_err, "-chain        add certificate chain\n");
        BIO_printf (bio_err, "-inkey file   private key if not infile\n");
        BIO_printf (bio_err, "-certfile f   add all certs in f\n");
+       BIO_printf (bio_err, "-CApath arg   - PEM format directory of CA's\n");
+       BIO_printf (bio_err, "-CAfile arg   - PEM format file of CA's\n");
        BIO_printf (bio_err, "-name \"name\"  use name as friendly name\n");
        BIO_printf (bio_err, "-caname \"nm\"  use nm as CA friendly name (can be used more than once).\n");
        BIO_printf (bio_err, "-in  infile   input filename\n");
@@ -360,21 +373,22 @@ int MAIN(int argc, char **argv)
     }
 
     if (export_cert) {
-       EVP_PKEY *key;
-       STACK_OF(PKCS12_SAFEBAG) *bags;
-       STACK_OF(PKCS7) *safes;
-       PKCS12_SAFEBAG *bag;
-       PKCS8_PRIV_KEY_INFO *p8;
-       PKCS7 *authsafe;
+       EVP_PKEY *key = NULL;
+       STACK_OF(PKCS12_SAFEBAG) *bags = NULL;
+       STACK_OF(PKCS7) *safes = NULL;
+       PKCS12_SAFEBAG *bag = NULL;
+       PKCS8_PRIV_KEY_INFO *p8 = NULL;
+       PKCS7 *authsafe = NULL;
        X509 *ucert = NULL;
        STACK_OF(X509) *certs=NULL;
-       char *catmp;
+       char *catmp = NULL;
        int i;
        unsigned char keyid[EVP_MAX_MD_SIZE];
        unsigned int keyidlen = 0;
 
 #ifdef CRYPTO_MDEBUG
        CRYPTO_push_info("process -export_cert");
+       CRYPTO_push_info("reading private key");
 #endif
        key = PEM_read_bio_PrivateKey(inkey ? inkey : in, NULL, NULL, passin);
        if (!inkey) (void) BIO_reset(in);
@@ -382,18 +396,28 @@ int MAIN(int argc, char **argv)
        if (!key) {
                BIO_printf (bio_err, "Error loading private key\n");
                ERR_print_errors(bio_err);
-               goto end;
+               goto export_end;
        }
 
+#ifdef CRYPTO_MDEBUG
+       CRYPTO_pop_info();
+       CRYPTO_push_info("reading certs from input");
+#endif
+
        certs = sk_X509_new(NULL);
 
        /* Load in all certs in input file */
        if(!cert_load(in, certs)) {
                BIO_printf(bio_err, "Error loading certificates from input\n");
                ERR_print_errors(bio_err);
-               goto end;
+               goto export_end;
        }
 
+#ifdef CRYPTO_MDEBUG
+       CRYPTO_pop_info();
+       CRYPTO_push_info("reading certs from input 2");
+#endif
+
        for(i = 0; i < sk_X509_num(certs); i++) {
                ucert = sk_X509_value(certs, i);
                if(X509_check_private_key(ucert, key)) {
@@ -401,12 +425,17 @@ int MAIN(int argc, char **argv)
                        break;
                }
        }
-
        if(!keyidlen) {
+               ucert = NULL;
                BIO_printf(bio_err, "No certificate matches private key\n");
-               goto end;
+               goto export_end;
        }
        
+#ifdef CRYPTO_MDEBUG
+       CRYPTO_pop_info();
+       CRYPTO_push_info("reading certs from certfile");
+#endif
+
        bags = sk_PKCS12_SAFEBAG_new (NULL);
 
        /* Add any more certificates asked for */
@@ -414,28 +443,50 @@ int MAIN(int argc, char **argv)
                if(!cert_load(certsin, certs)) {
                        BIO_printf(bio_err, "Error loading certificates from certfile\n");
                        ERR_print_errors(bio_err);
-                       goto end;
+                       goto export_end;
                }
                BIO_free(certsin);
        }
 
+#ifdef CRYPTO_MDEBUG
+       CRYPTO_pop_info();
+       CRYPTO_push_info("building chain");
+#endif
+
        /* If chaining get chain from user cert */
        if (chain) {
                int vret;
                STACK_OF(X509) *chain2;
-               vret = get_cert_chain (ucert, &chain2);
+               X509_STORE *store = X509_STORE_new();
+               if (!store)
+                       {
+                       BIO_printf (bio_err, "Memory allocation error\n");
+                       goto export_end;
+                       }
+               if (!X509_STORE_load_locations(store, CAfile, CApath))
+                       X509_STORE_set_default_paths (store);
+
+               vret = get_cert_chain (ucert, store, &chain2);
+               X509_STORE_free(store);
+
+               if (!vret) {
+                   /* Exclude verified certificate */
+                   for (i = 1; i < sk_X509_num (chain2) ; i++) 
+                       sk_X509_push(certs, sk_X509_value (chain2, i));
+               }
+               sk_X509_free(chain2);
                if (vret) {
                        BIO_printf (bio_err, "Error %s getting chain.\n",
                                        X509_verify_cert_error_string(vret));
-                       goto end;
-               }
-               /* Exclude verified certificate */
-               for (i = 1; i < sk_X509_num (chain2) ; i++) 
-                                sk_X509_push(certs, sk_X509_value (chain2, i));
-               sk_X509_free(chain2);
-                       
+                       goto export_end;
+               }                       
        }
 
+#ifdef CRYPTO_MDEBUG
+       CRYPTO_pop_info();
+       CRYPTO_push_info("building bags");
+#endif
+
        /* We now have loads of certificates: include them all */
        for(i = 0; i < sk_X509_num(certs); i++) {
                X509 *cert = NULL;
@@ -450,56 +501,98 @@ int MAIN(int argc, char **argv)
                sk_PKCS12_SAFEBAG_push(bags, bag);
        }
        sk_X509_pop_free(certs, X509_free);
-       if (canames) sk_free(canames);
+       certs = NULL;
+       /* ucert is part of certs so it is already freed */
+       ucert = NULL;
+
+#ifdef CRYPTO_MDEBUG
+       CRYPTO_pop_info();
+       CRYPTO_push_info("encrypting bags");
+#endif
 
        if(!noprompt &&
                EVP_read_pw_string(pass, 50, "Enter Export Password:", 1)) {
            BIO_printf (bio_err, "Can't read Password\n");
-           goto end;
+           goto export_end;
         }
        if (!twopass) strcpy(macpass, pass);
        /* Turn certbags into encrypted authsafe */
        authsafe = PKCS12_pack_p7encdata(cert_pbe, cpass, -1, NULL, 0,
                                                                 iter, bags);
        sk_PKCS12_SAFEBAG_pop_free(bags, PKCS12_SAFEBAG_free);
+       bags = NULL;
 
        if (!authsafe) {
                ERR_print_errors (bio_err);
-               goto end;
+               goto export_end;
        }
 
        safes = sk_PKCS7_new (NULL);
        sk_PKCS7_push (safes, authsafe);
 
+#ifdef CRYPTO_MDEBUG
+       CRYPTO_pop_info();
+       CRYPTO_push_info("building shrouded key bag");
+#endif
+
        /* Make a shrouded key bag */
        p8 = EVP_PKEY2PKCS8 (key);
-       EVP_PKEY_free(key);
        if(keytype) PKCS8_add_keyusage(p8, keytype);
        bag = PKCS12_MAKE_SHKEYBAG(key_pbe, cpass, -1, NULL, 0, iter, p8);
        PKCS8_PRIV_KEY_INFO_free(p8);
+       p8 = NULL;
         if (name) PKCS12_add_friendlyname (bag, name, -1);
        PKCS12_add_localkeyid (bag, keyid, keyidlen);
        bags = sk_PKCS12_SAFEBAG_new(NULL);
        sk_PKCS12_SAFEBAG_push (bags, bag);
+
+#ifdef CRYPTO_MDEBUG
+       CRYPTO_pop_info();
+       CRYPTO_push_info("encrypting shrouded key bag");
+#endif
+
        /* Turn it into unencrypted safe bag */
        authsafe = PKCS12_pack_p7data (bags);
        sk_PKCS12_SAFEBAG_pop_free(bags, PKCS12_SAFEBAG_free);
+       bags = NULL;
        sk_PKCS7_push (safes, authsafe);
 
+#ifdef CRYPTO_MDEBUG
+       CRYPTO_pop_info();
+       CRYPTO_push_info("building pkcs12");
+#endif
+
        p12 = PKCS12_init (NID_pkcs7_data);
 
        M_PKCS12_pack_authsafes (p12, safes);
 
        sk_PKCS7_pop_free(safes, PKCS7_free);
+       safes = NULL;
 
        PKCS12_set_mac (p12, mpass, -1, NULL, 0, maciter, NULL);
 
-       i2d_PKCS12_bio (out, p12);
+#ifdef CRYPTO_MDEBUG
+       CRYPTO_pop_info();
+       CRYPTO_push_info("writing pkcs12");
+#endif
 
-       PKCS12_free(p12);
+       i2d_PKCS12_bio (out, p12);
 
        ret = 0;
 
+    export_end:
+#ifdef CRYPTO_MDEBUG
+       CRYPTO_pop_info();
+       CRYPTO_pop_info();
+       CRYPTO_push_info("process -export_cert: freeing");
+#endif
+
+       if (key) EVP_PKEY_free(key);
+       if (certs) sk_X509_pop_free(certs, X509_free);
+       if (safes) sk_PKCS7_pop_free(safes, PKCS7_free);
+       if (bags) sk_PKCS12_SAFEBAG_pop_free(bags, PKCS12_SAFEBAG_free);
+       if (ucert) X509_free(ucert);
+
 #ifdef CRYPTO_MDEBUG
        CRYPTO_pop_info();
 #endif
@@ -557,14 +650,15 @@ int MAIN(int argc, char **argv)
     CRYPTO_pop_info();
 #endif
     ret = 0;
   end:
-    PKCS12_free(p12);
+ end:
+    if (p12) PKCS12_free(p12);
     if(export_cert || inrand) app_RAND_write_file(NULL, bio_err);
 #ifdef CRYPTO_MDEBUG
     CRYPTO_remove_all_info();
 #endif
     BIO_free(in);
     BIO_free(out);
+    if (canames) sk_free(canames);
     if(passin) OPENSSL_free(passin);
     if(passout) OPENSSL_free(passout);
     EXIT(ret);
@@ -690,15 +784,12 @@ int dump_certs_pkeys_bag (BIO *out, PKCS12_SAFEBAG *bag, char *pass,
 
 /* Hope this is OK .... */
 
-int get_cert_chain (X509 *cert, STACK_OF(X509) **chain)
+int get_cert_chain (X509 *cert, X509_STORE *store, STACK_OF(X509) **chain)
 {
-       X509_STORE *store;
        X509_STORE_CTX store_ctx;
        STACK_OF(X509) *chn;
        int i;
 
-       store = X509_STORE_new ();
-       X509_STORE_set_default_paths (store);
        X509_STORE_CTX_init(&store_ctx, store, cert, NULL);
        if (X509_verify_cert(&store_ctx) <= 0) {
                i = X509_STORE_CTX_get_error (&store_ctx);
@@ -709,7 +800,6 @@ int get_cert_chain (X509 *cert, STACK_OF(X509) **chain)
        *chain = chn;
 err:
        X509_STORE_CTX_cleanup(&store_ctx);
-       X509_STORE_free(store);
        
        return i;
 }      
@@ -733,10 +823,22 @@ int cert_load(BIO *in, STACK_OF(X509) *sk)
        int ret;
        X509 *cert;
        ret = 0;
+#ifdef CRYPTO_MDEBUG
+       CRYPTO_push_info("cert_load(): reading one cert");
+#endif
        while((cert = PEM_read_bio_X509(in, NULL, NULL, NULL))) {
+#ifdef CRYPTO_MDEBUG
+               CRYPTO_pop_info();
+#endif
                ret = 1;
                sk_X509_push(sk, cert);
+#ifdef CRYPTO_MDEBUG
+               CRYPTO_push_info("cert_load(): reading one cert");
+#endif
        }
+#ifdef CRYPTO_MDEBUG
+       CRYPTO_pop_info();
+#endif
        if(ret) ERR_clear_error();
        return ret;
 }
index 7d2238493a4e2d68df3b160e0beaed1c62bea1ea..fbc65de632cceadc3a162c35f2552e4adcef978d 100644 (file)
@@ -14,6 +14,7 @@ extern int errstr_main(int argc,char *argv[]);
 extern int ca_main(int argc,char *argv[]);
 extern int crl_main(int argc,char *argv[]);
 extern int rsa_main(int argc,char *argv[]);
+extern int rsautl_main(int argc,char *argv[]);
 extern int dsa_main(int argc,char *argv[]);
 extern int dsaparam_main(int argc,char *argv[]);
 extern int x509_main(int argc,char *argv[]);
@@ -67,6 +68,9 @@ FUNCTION functions[] = {
 #ifndef NO_RSA
        {FUNC_TYPE_GENERAL,"rsa",rsa_main},
 #endif
+#ifndef NO_RSA
+       {FUNC_TYPE_GENERAL,"rsautl",rsautl_main},
+#endif
 #ifndef NO_DSA
        {FUNC_TYPE_GENERAL,"dsa",dsa_main},
 #endif
@@ -106,6 +110,7 @@ FUNCTION functions[] = {
        {FUNC_TYPE_GENERAL,"smime",smime_main},
        {FUNC_TYPE_GENERAL,"rand",rand_main},
        {FUNC_TYPE_MD,"md2",dgst_main},
+       {FUNC_TYPE_MD,"md4",dgst_main},
        {FUNC_TYPE_MD,"md5",dgst_main},
        {FUNC_TYPE_MD,"sha",dgst_main},
        {FUNC_TYPE_MD,"sha1",dgst_main},
index 9842d2ace725b64229ffd55fc8674f2ef6d2eaba..214025cd2d6916d34984873699b8681ffca7d12c 100644 (file)
@@ -29,7 +29,7 @@ foreach (@ARGV)
        $str="\t{FUNC_TYPE_GENERAL,\"$_\",${_}_main},\n";
        if (($_ =~ /^s_/) || ($_ =~ /^ciphers$/))
                { print "#if !defined(NO_SOCK) && !(defined(NO_SSL2) && defined(NO_SSL3))\n${str}#endif\n"; } 
-       elsif ( ($_ =~ /^rsa$/) || ($_ =~ /^genrsa$/) ) 
+       elsif ( ($_ =~ /^rsa$/) || ($_ =~ /^genrsa$/) || ($_ =~ /^rsautl$/)
                { print "#ifndef NO_RSA\n${str}#endif\n";  }
        elsif ( ($_ =~ /^dsa$/) || ($_ =~ /^gendsa$/) || ($_ =~ /^dsaparam$/))
                { print "#ifndef NO_DSA\n${str}#endif\n"; }
@@ -41,7 +41,7 @@ foreach (@ARGV)
                { print $str; }
        }
 
-foreach ("md2","md5","sha","sha1","mdc2","rmd160")
+foreach ("md2","md4","md5","sha","sha1","mdc2","rmd160")
        {
        push(@files,$_);
        printf "\t{FUNC_TYPE_MD,\"%s\",dgst_main},\n",$_;
index e380443d6c4f3369d738e32411c9995f5764f78b..25997feb6d7c213af79bf065cb5f23a9ed6c0b25 100644 (file)
@@ -141,6 +141,8 @@ int MAIN(int argc, char **argv)
                                flags |= PKCS7_NOATTR;
                else if (!strcmp (*args, "-nodetach")) 
                                flags &= ~PKCS7_DETACHED;
+               else if (!strcmp (*args, "-nosmimecap"))
+                               flags |= PKCS7_NOSMIMECAP;
                else if (!strcmp (*args, "-binary"))
                                flags |= PKCS7_BINARY;
                else if (!strcmp (*args, "-nosigs"))
index a472d446c8f52d6b1bea7ebfdcc11e30ac25f493..e52767153b7034a36ee1178bb6ac7f72fbf726e3 100644 (file)
@@ -88,6 +88,9 @@
 #elif !defined(MSDOS) && (!defined(VMS) || defined(__DECC))
 # define TIMES
 #endif
+#if !defined(_UNICOS)
+# define TIMEB
+#endif
 
 #ifndef _IRIX
 # include <time.h>
 #undef TIMES
 #endif
 
+#ifdef TIMEB
 #include <sys/timeb.h>
+#endif
+
+#if !defined(TIMES) && !defined(TIMEB)
+#error "It seems neither struct tms nor struct timeb is supported in this platform!"
+#endif
 
 #if defined(sun) || defined(__ultrix)
 #define _POSIX_SOURCE
 #ifndef NO_MDC2
 #include <openssl/mdc2.h>
 #endif
+#ifndef NO_MD4
+#include <openssl/md4.h>
+#endif
 #ifndef NO_MD5
 #include <openssl/md5.h>
 #endif
@@ -269,8 +281,11 @@ static double Time_F(int s, int usertime)
                        return((ret < 1e-3)?1e-3:ret);
                        }
                }
-       else
 # endif /* times() */
+# if defined(TIMES) && defined(TIMEB)
+       else
+# endif
+# ifdef TIMEB
                {
                static struct timeb tstart,tend;
                long i;
@@ -288,6 +303,7 @@ static double Time_F(int s, int usertime)
                        return((ret < 0.001)?0.001:ret);
                        }
                }
+# endif
 #endif
        }
 
@@ -298,7 +314,7 @@ int MAIN(int argc, char **argv)
        ENGINE *e;
        unsigned char *buf=NULL,*buf2=NULL;
        int mret=1;
-#define ALGOR_NUM      14
+#define ALGOR_NUM      15
 #define SIZE_NUM       5
 #define RSA_NUM                4
 #define DSA_NUM                3
@@ -311,6 +327,9 @@ int MAIN(int argc, char **argv)
 #ifndef NO_MDC2
        unsigned char mdc2[MDC2_DIGEST_LENGTH];
 #endif
+#ifndef NO_MD4
+       unsigned char md4[MD4_DIGEST_LENGTH];
+#endif
 #ifndef NO_MD5
        unsigned char md5[MD5_DIGEST_LENGTH];
        unsigned char hmac[MD5_DIGEST_LENGTH];
@@ -352,23 +371,24 @@ int MAIN(int argc, char **argv)
 #endif
 #define        D_MD2           0
 #define        D_MDC2          1
-#define        D_MD5           2
-#define        D_HMAC          3
-#define        D_SHA1          4
-#define D_RMD160       5
-#define        D_RC4           6
-#define        D_CBC_DES       7
-#define        D_EDE3_DES      8
-#define        D_CBC_IDEA      9
-#define        D_CBC_RC2       10
-#define        D_CBC_RC5       11
-#define        D_CBC_BF        12
-#define        D_CBC_CAST      13
+#define        D_MD4           2
+#define        D_MD5           3
+#define        D_HMAC          4
+#define        D_SHA1          5
+#define D_RMD160       6
+#define        D_RC4           7
+#define        D_CBC_DES       8
+#define        D_EDE3_DES      9
+#define        D_CBC_IDEA      10
+#define        D_CBC_RC2       11
+#define        D_CBC_RC5       12
+#define        D_CBC_BF        13
+#define        D_CBC_CAST      14
        double d,results[ALGOR_NUM][SIZE_NUM];
        static int lengths[SIZE_NUM]={8,64,256,1024,8*1024};
        long c[ALGOR_NUM][SIZE_NUM];
        static char *names[ALGOR_NUM]={
-               "md2","mdc2","md5","hmac(md5)","sha1","rmd160","rc4",
+               "md2","mdc2","md4","md5","hmac(md5)","sha1","rmd160","rc4",
                "des cbc","des ede3","idea cbc",
                "rc2 cbc","rc5-32/12 cbc","blowfish cbc","cast cbc"};
 #define        R_DSA_512       0
@@ -491,6 +511,10 @@ int MAIN(int argc, char **argv)
                        if (strcmp(*argv,"mdc2") == 0) doit[D_MDC2]=1;
                else
 #endif
+#ifndef NO_MD4
+                       if (strcmp(*argv,"md4") == 0) doit[D_MD4]=1;
+               else
+#endif
 #ifndef NO_MD5
                        if (strcmp(*argv,"md5") == 0) doit[D_MD5]=1;
                else
@@ -602,8 +626,34 @@ int MAIN(int argc, char **argv)
                else
 #endif
                        {
-                       BIO_printf(bio_err,"bad option or value, pick one of\n");
-                       BIO_printf(bio_err,"md2      mdc2       md5      hmac      sha1    rmd160\n");
+                       BIO_printf(bio_err,"Error: bad option or value\n");
+                       BIO_printf(bio_err,"\n");
+                       BIO_printf(bio_err,"Available values:\n");
+#ifndef NO_MD2
+                       BIO_printf(bio_err,"md2      ");
+#endif
+#ifndef NO_MDC2
+                       BIO_printf(bio_err,"mdc2     ");
+#endif
+#ifndef NO_MD4
+                       BIO_printf(bio_err,"md4      ");
+#endif
+#ifndef NO_MD5
+                       BIO_printf(bio_err,"md5      ");
+#ifndef NO_HMAC
+                       BIO_printf(bio_err,"hmac     ");
+#endif
+#endif
+#ifndef NO_SHA1
+                       BIO_printf(bio_err,"sha1     ");
+#endif
+#ifndef NO_RIPEMD160
+                       BIO_printf(bio_err,"rmd160");
+#endif
+#if !defined(NO_MD2) || !defined(NO_MDC2) || !defined(NO_MD4) || !defined(NO_MD5) || !defined(NO_SHA1) || !defined(NO_RIPEMD160)
+                       BIO_printf(bio_err,"\n");
+#endif
+
 #ifndef NO_IDEA
                        BIO_printf(bio_err,"idea-cbc ");
 #endif
@@ -616,24 +666,48 @@ int MAIN(int argc, char **argv)
 #ifndef NO_BF
                        BIO_printf(bio_err,"bf-cbc");
 #endif
-#if !defined(NO_IDEA) && !defined(NO_RC2) && !defined(NO_BF) && !defined(NO_RC5)
+#if !defined(NO_IDEA) || !defined(NO_RC2) || !defined(NO_BF) || !defined(NO_RC5)
                        BIO_printf(bio_err,"\n");
 #endif
+
                        BIO_printf(bio_err,"des-cbc  des-ede3 ");
 #ifndef NO_RC4
                        BIO_printf(bio_err,"rc4");
 #endif
+                       BIO_printf(bio_err,"\n");
+
 #ifndef NO_RSA
-                       BIO_printf(bio_err,"\nrsa512   rsa1024  rsa2048  rsa4096\n");
+                       BIO_printf(bio_err,"rsa512   rsa1024  rsa2048  rsa4096\n");
 #endif
+
 #ifndef NO_DSA
-                       BIO_printf(bio_err,"\ndsa512   dsa1024  dsa2048\n");
+                       BIO_printf(bio_err,"dsa512   dsa1024  dsa2048\n");
+#endif
+
+#ifndef NO_IDEA
+                       BIO_printf(bio_err,"idea     ");
+#endif
+#ifndef NO_RC2
+                       BIO_printf(bio_err,"rc2      ");
 #endif
-                       BIO_printf(bio_err,"idea     rc2      des      rsa    blowfish\n");
+#ifndef NO_DES
+                       BIO_printf(bio_err,"des      ");
+#endif
+#ifndef NO_RSA
+                       BIO_printf(bio_err,"rsa      ");
+#endif
+#ifndef NO_BF
+                       BIO_printf(bio_err,"blowfish");
+#endif
+#if !defined(NO_IDEA) || !defined(NO_RC2) || !defined(NO_DES) || !defined(NO_RSA) || !defined(NO_BF)
                        BIO_printf(bio_err,"\n");
-                       BIO_printf(bio_err,"Available options:\n");
+#endif
+
                        BIO_printf(bio_err,"\n");
+                       BIO_printf(bio_err,"Available options:\n");
+#ifdef TIMES
                        BIO_printf(bio_err,"-elapsed        measure time in real time instead of CPU user time.\n");
+#endif
                        BIO_printf(bio_err,"-engine e       use engine e, possibly a hardware device.\n");
                        goto end;
                        }
@@ -732,6 +806,7 @@ int MAIN(int argc, char **argv)
                } while (d <3);
        c[D_MD2][0]=count/10;
        c[D_MDC2][0]=count/10;
+       c[D_MD4][0]=count;
        c[D_MD5][0]=count;
        c[D_HMAC][0]=count;
        c[D_SHA1][0]=count;
@@ -749,6 +824,7 @@ int MAIN(int argc, char **argv)
                {
                c[D_MD2][i]=c[D_MD2][0]*4*lengths[0]/lengths[i];
                c[D_MDC2][i]=c[D_MDC2][0]*4*lengths[0]/lengths[i];
+               c[D_MD4][i]=c[D_MD4][0]*4*lengths[0]/lengths[i];
                c[D_MD5][i]=c[D_MD5][0]*4*lengths[0]/lengths[i];
                c[D_HMAC][i]=c[D_HMAC][0]*4*lengths[0]/lengths[i];
                c[D_SHA1][i]=c[D_SHA1][0]*4*lengths[0]/lengths[i];
@@ -852,6 +928,23 @@ int MAIN(int argc, char **argv)
                }
 #endif
 
+#ifndef NO_MD4
+       if (doit[D_MD4])
+               {
+               for (j=0; j<SIZE_NUM; j++)
+                       {
+                       print_message(names[D_MD4],c[D_MD4][j],lengths[j]);
+                       Time_F(START,usertime);
+                       for (count=0,run=1; COND(c[D_MD4][j]); count++)
+                               MD4(&(buf[0]),(unsigned long)lengths[j],&(md4[0]));
+                       d=Time_F(STOP,usertime);
+                       BIO_printf(bio_err,"%ld %s's in %.2fs\n",
+                               count,names[D_MD4],d);
+                       results[D_MD4][j]=((double)count)/d*lengths[j];
+                       }
+               }
+#endif
+
 #ifndef NO_MD5
        if (doit[D_MD5])
                {
index 8d211e01524049c1c2bc4ca5410b1bd7ca0fbdac..f50eaaecb3ea0db753b8d1a5498cd53d38533a0d 100644 (file)
@@ -70,7 +70,7 @@
 #define PROG   verify_main
 
 static int MS_CALLBACK cb(int ok, X509_STORE_CTX *ctx);
-static int check(X509_STORE *ctx,char *file, STACK_OF(X509)*other, int purpose);
+static int check(X509_STORE *ctx, char *file, STACK_OF(X509) *uchain, STACK_OF(X509) *tchain, int purpose);
 static STACK_OF(X509) *load_untrusted(char *file);
 static int v_verbose=0;
 
@@ -81,8 +81,8 @@ int MAIN(int argc, char **argv)
        int i,ret=1;
        int purpose = -1;
        char *CApath=NULL,*CAfile=NULL;
-       char *untfile = NULL;
-       STACK_OF(X509) *untrusted = NULL;
+       char *untfile = NULL, *trustfile = NULL;
+       STACK_OF(X509) *untrusted = NULL, *trusted = NULL;
        X509_STORE *cert_ctx=NULL;
        X509_LOOKUP *lookup=NULL;
 
@@ -132,6 +132,11 @@ int MAIN(int argc, char **argv)
                                if (argc-- < 1) goto end;
                                untfile= *(++argv);
                                }
+                       else if (strcmp(*argv,"-trusted") == 0)
+                               {
+                               if (argc-- < 1) goto end;
+                               trustfile= *(++argv);
+                               }
                        else if (strcmp(*argv,"-help") == 0)
                                goto end;
                        else if (strcmp(*argv,"-verbose") == 0)
@@ -179,10 +184,18 @@ int MAIN(int argc, char **argv)
                }
        }
 
-       if (argc < 1) check(cert_ctx, NULL, untrusted, purpose);
+       if(trustfile) {
+               if(!(trusted = load_untrusted(trustfile))) {
+                       BIO_printf(bio_err, "Error loading untrusted file %s\n", trustfile);
+                       ERR_print_errors(bio_err);
+                       goto end;
+               }
+       }
+
+       if (argc < 1) check(cert_ctx, NULL, untrusted, trusted, purpose);
        else
                for (i=0; i<argc; i++)
-                       check(cert_ctx,argv[i], untrusted, purpose);
+                       check(cert_ctx,argv[i], untrusted, trusted, purpose);
        ret=0;
 end:
        if (ret == 1) {
@@ -197,10 +210,11 @@ end:
        }
        if (cert_ctx != NULL) X509_STORE_free(cert_ctx);
        sk_X509_pop_free(untrusted, X509_free);
+       sk_X509_pop_free(trusted, X509_free);
        EXIT(ret);
        }
 
-static int check(X509_STORE *ctx, char *file, STACK_OF(X509) *uchain, int purpose)
+static int check(X509_STORE *ctx, char *file, STACK_OF(X509) *uchain, STACK_OF(X509) *tchain, int purpose)
        {
        X509 *x=NULL;
        BIO *in=NULL;
@@ -242,6 +256,7 @@ static int check(X509_STORE *ctx, char *file, STACK_OF(X509) *uchain, int purpos
                goto end;
                }
        X509_STORE_CTX_init(csc,ctx,x,uchain);
+       if(tchain) X509_STORE_CTX_trusted_stack(csc, tchain);
        if(purpose >= 0) X509_STORE_CTX_set_purpose(csc, purpose);
        i=X509_verify_cert(csc);
        X509_STORE_CTX_free(csc);
index a071b20f409819aa82bcae058e0b3b5198104b28..b86352e2fbd8eaa923f35bbd1c7cfb7ddabbafb2 100644 (file)
@@ -291,24 +291,26 @@ int MAIN(int argc, char **argv)
                else if (strcmp(*argv,"-addtrust") == 0)
                        {
                        if (--argc < 1) goto bad;
-                       if(!(objtmp = OBJ_txt2obj(*(++argv), 0))) {
+                       if (!(objtmp = OBJ_txt2obj(*(++argv), 0)))
+                               {
                                BIO_printf(bio_err,
                                        "Invalid trust object value %s\n", *argv);
                                goto bad;
-                       }
-                       if(!trust) trust = sk_ASN1_OBJECT_new_null();
+                               }
+                       if (!trust) trust = sk_ASN1_OBJECT_new_null();
                        sk_ASN1_OBJECT_push(trust, objtmp);
                        trustout = 1;
                        }
                else if (strcmp(*argv,"-addreject") == 0)
                        {
                        if (--argc < 1) goto bad;
-                       if(!(objtmp = OBJ_txt2obj(*(++argv), 0))) {
+                       if (!(objtmp = OBJ_txt2obj(*(++argv), 0)))
+                               {
                                BIO_printf(bio_err,
                                        "Invalid reject object value %s\n", *argv);
                                goto bad;
-                       }
-                       if(!reject) reject = sk_ASN1_OBJECT_new_null();
+                               }
+                       if (!reject) reject = sk_ASN1_OBJECT_new_null();
                        sk_ASN1_OBJECT_push(reject, objtmp);
                        trustout = 1;
                        }
@@ -321,7 +323,7 @@ int MAIN(int argc, char **argv)
                else if (strcmp(*argv,"-nameopt") == 0)
                        {
                        if (--argc < 1) goto bad;
-                       if(!set_name_ex(&nmflag, *(++argv))) goto bad;
+                       if (!set_name_ex(&nmflag, *(++argv))) goto bad;
                        }
                else if (strcmp(*argv,"-setalias") == 0)
                        {
@@ -417,10 +419,11 @@ bad:
 
        ERR_load_crypto_strings();
 
-       if(!app_passwd(bio_err, passargin, NULL, &passin, NULL)) {
+       if (!app_passwd(bio_err, passargin, NULL, &passin, NULL))
+               {
                BIO_printf(bio_err, "Error getting password\n");
                goto end;
-       }
+               }
 
        if (!X509_STORE_set_default_paths(ctx))
                {
@@ -436,10 +439,12 @@ bad:
                goto end;
                }
 
-       if (extfile) {
+       if (extfile)
+               {
                long errorline;
                X509V3_CTX ctx2;
-               if (!(extconf=CONF_load(NULL,extfile,&errorline))) {
+               if (!(extconf=CONF_load(NULL,extfile,&errorline)))
+                       {
                        if (errorline <= 0)
                                BIO_printf(bio_err,
                                        "error loading the config file '%s'\n",
@@ -449,19 +454,20 @@ bad:
                                       "error on line %ld of config file '%s'\n"
                                                        ,errorline,extfile);
                        goto end;
-               }
-               if(!extsect && !(extsect = CONF_get_string(extconf, "default",
+                       }
+               if (!extsect && !(extsect = CONF_get_string(extconf, "default",
                                         "extensions"))) extsect = "default";
                X509V3_set_ctx_test(&ctx2);
                X509V3_set_conf_lhash(&ctx2, extconf);
-               if(!X509V3_EXT_add_conf(extconf, &ctx2, extsect, NULL)) {
+               if (!X509V3_EXT_add_conf(extconf, &ctx2, extsect, NULL))
+                       {
                        BIO_printf(bio_err,
                                "Error Loading extension section %s\n",
                                                                 extsect);
                        ERR_print_errors(bio_err);
                        goto end;
-                }
-       } 
+                       }
+               }
 
 
        if (reqfile)
@@ -581,24 +587,28 @@ bad:
                        }
                }
 
-       if(alias) X509_alias_set1(x, (unsigned char *)alias, -1);
+       if (alias) X509_alias_set1(x, (unsigned char *)alias, -1);
 
-       if(clrtrust) X509_trust_clear(x);
-       if(clrreject) X509_reject_clear(x);
+       if (clrtrust) X509_trust_clear(x);
+       if (clrreject) X509_reject_clear(x);
 
-       if(trust) {
-               for(i = 0; i < sk_ASN1_OBJECT_num(trust); i++) {
+       if (trust)
+               {
+               for (i = 0; i < sk_ASN1_OBJECT_num(trust); i++)
+                       {
                        objtmp = sk_ASN1_OBJECT_value(trust, i);
                        X509_add1_trust_object(x, objtmp);
+                       }
                }
-       }
 
-       if(reject) {
-               for(i = 0; i < sk_ASN1_OBJECT_num(reject); i++) {
+       if (reject)
+               {
+               for (i = 0; i < sk_ASN1_OBJECT_num(reject); i++)
+                       {
                        objtmp = sk_ASN1_OBJECT_value(reject, i);
                        X509_add1_reject_object(x, objtmp);
+                       }
                }
-       }
 
        if (num)
                {
@@ -611,7 +621,7 @@ bad:
                                }
                        else if (subject == i) 
                                {
-                               print_name(STDout, "issuer= ",
+                               print_name(STDout, "subject= ",
                                        X509_get_subject_name(x), nmflag);
                                }
                        else if (serial == i)
@@ -625,7 +635,7 @@ bad:
                                int j;
                                STACK *emlst;
                                emlst = X509_get1_email(x);
-                               for(j = 0; j < sk_num(emlst); j++)
+                               for (j = 0; j < sk_num(emlst); j++)
                                        BIO_printf(STDout, "%s\n", sk_value(emlst, j));
                                X509_email_free(emlst);
                                }
@@ -633,7 +643,7 @@ bad:
                                {
                                unsigned char *alstr;
                                alstr = X509_alias_get0(x, NULL);
-                               if(alstr) BIO_printf(STDout,"%s\n", alstr);
+                               if (alstr) BIO_printf(STDout,"%s\n", alstr);
                                else BIO_puts(STDout,"<No Alias>\n");
                                }
                        else if (hash == i)
@@ -645,7 +655,7 @@ bad:
                                X509_PURPOSE *ptmp;
                                int j;
                                BIO_printf(STDout, "Certificate purposes:\n");
-                               for(j = 0; j < X509_PURPOSE_get_count(); j++)
+                               for (j = 0; j < X509_PURPOSE_get_count(); j++)
                                        {
                                        ptmp = X509_PURPOSE_get0(j);
                                        purpose_print(STDout, x, ptmp);
@@ -863,12 +873,11 @@ bad:
                        }
                }
 
-       if(checkend)
+       if (checkend)
                {
-               time_t t=ASN1_UTCTIME_get(X509_get_notAfter(x));
                time_t tnow=time(NULL);
 
-               if(tnow+checkoffset > t)
+               if (ASN1_UTCTIME_cmp_time_t(X509_get_notAfter(x), tnow+checkoffset) == -1)
                        {
                        BIO_printf(out,"Certificate will expire\n");
                        ret=1;
@@ -889,10 +898,12 @@ bad:
 
        if      (outformat == FORMAT_ASN1)
                i=i2d_X509_bio(out,x);
-       else if (outformat == FORMAT_PEM) {
-               if(trustout) i=PEM_write_bio_X509_AUX(out,x);
+       else if (outformat == FORMAT_PEM)
+               {
+               if (trustout) i=PEM_write_bio_X509_AUX(out,x);
                else i=PEM_write_bio_X509(out,x);
-       } else if (outformat == FORMAT_NETSCAPE)
+               }
+       else if (outformat == FORMAT_NETSCAPE)
                {
                ASN1_HEADER ah;
                ASN1_OCTET_STRING os;
@@ -910,7 +921,8 @@ bad:
                BIO_printf(bio_err,"bad output format specified for outfile\n");
                goto end;
                }
-       if (!i) {
+       if (!i)
+               {
                BIO_printf(bio_err,"unable to write certificate\n");
                ERR_print_errors(bio_err);
                goto end;
@@ -932,7 +944,7 @@ end:
        X509_REQ_free(rq);
        sk_ASN1_OBJECT_pop_free(trust, ASN1_OBJECT_free);
        sk_ASN1_OBJECT_pop_free(reject, ASN1_OBJECT_free);
-       if(passin) OPENSSL_free(passin);
+       if (passin) OPENSSL_free(passin);
        EXIT(ret);
        }
 
@@ -1059,17 +1071,19 @@ static int x509_certify(X509_STORE *ctx, char *CAfile, const EVP_MD *digest,
        if (X509_gmtime_adj(X509_get_notAfter(x),(long)60*60*24*days) == NULL)
                goto end;
 
-       if(clrext) {
-               while(X509_get_ext_count(x) > 0) X509_delete_ext(x, 0);
-       }
+       if (clrext)
+               {
+               while (X509_get_ext_count(x) > 0) X509_delete_ext(x, 0);
+               }
 
-       if(conf) {
+       if (conf)
+               {
                X509V3_CTX ctx2;
                X509_set_version(x,2); /* version 3 certificate */
                 X509V3_set_ctx(&ctx2, xca, x, NULL, NULL, 0);
                 X509V3_set_conf_lhash(&ctx2, conf);
-                if(!X509V3_EXT_add_conf(conf, &ctx2, section, x)) goto end;
-       }
+                if (!X509V3_EXT_add_conf(conf, &ctx2, section, x)) goto end;
+               }
 
        if (!X509_sign(x,pkey,digest)) goto end;
        ret=1;
@@ -1081,7 +1095,7 @@ end:
        if (bs != NULL) ASN1_INTEGER_free(bs);
        if (io != NULL) BIO_free(io);
        if (serial != NULL) BN_free(serial);
-       return(ret);
+       return ret;
        }
 
 static int MS_CALLBACK callb(int ok, X509_STORE_CTX *ctx)
@@ -1094,7 +1108,7 @@ static int MS_CALLBACK callb(int ok, X509_STORE_CTX *ctx)
         * final ok == 1 calls to this function */
        err=X509_STORE_CTX_get_error(ctx);
        if (err == X509_V_ERR_DEPTH_ZERO_SELF_SIGNED_CERT)
-               return(1);
+               return 1;
 
        /* BAD we should have gotten an error.  Normally if everything
         * worked X509_STORE_CTX_get_error(ctx) will still be set to
@@ -1102,7 +1116,7 @@ static int MS_CALLBACK callb(int ok, X509_STORE_CTX *ctx)
        if (ok)
                {
                BIO_printf(bio_err,"error with certificate to be certified - should be self signed\n");
-               return(0);
+               return 0;
                }
        else
                {
@@ -1111,7 +1125,7 @@ static int MS_CALLBACK callb(int ok, X509_STORE_CTX *ctx)
                BIO_printf(bio_err,"error with certificate - error %d at depth %d\n%s\n",
                        err,X509_STORE_CTX_get_error_depth(ctx),
                        X509_verify_cert_error_string(err));
-               return(1);
+               return 1;
                }
        }
 
@@ -1138,21 +1152,23 @@ static int sign(X509 *x, EVP_PKEY *pkey, int days, int clrext, const EVP_MD *dig
                goto err;
 
        if (!X509_set_pubkey(x,pkey)) goto err;
-       if(clrext) {
-               while(X509_get_ext_count(x) > 0) X509_delete_ext(x, 0);
-       }
-       if(conf) {
+       if (clrext)
+               {
+               while (X509_get_ext_count(x) > 0) X509_delete_ext(x, 0);
+               }
+       if (conf)
+               {
                X509V3_CTX ctx;
                X509_set_version(x,2); /* version 3 certificate */
                 X509V3_set_ctx(&ctx, x, x, NULL, NULL, 0);
                 X509V3_set_conf_lhash(&ctx, conf);
-                if(!X509V3_EXT_add_conf(conf, &ctx, section, x)) goto err;
-       }
+                if (!X509V3_EXT_add_conf(conf, &ctx, section, x)) goto err;
+               }
        if (!X509_sign(x,pkey,digest)) goto err;
-       return(1);
+       return 1;
 err:
        ERR_print_errors(bio_err);
-       return(0);
+       return 0;
        }
 
 static int purpose_print(BIO *bio, X509 *cert, X509_PURPOSE *pt)
@@ -1161,13 +1177,14 @@ static int purpose_print(BIO *bio, X509 *cert, X509_PURPOSE *pt)
        char *pname;
        id = X509_PURPOSE_get_id(pt);
        pname = X509_PURPOSE_get0_name(pt);
-       for(i = 0; i < 2; i++) {
+       for (i = 0; i < 2; i++)
+               {
                idret = X509_check_purpose(cert, id, i);
                BIO_printf(bio, "%s%s : ", pname, i ? " CA" : ""); 
-               if(idret == 1) BIO_printf(bio, "Yes\n");
+               if (idret == 1) BIO_printf(bio, "Yes\n");
                else if (idret == 0) BIO_printf(bio, "No\n");
                else BIO_printf(bio, "Yes (WARNING code=%d)\n", idret);
-       }
+               }
        return 1;
 }
 
diff --git a/config b/config
index d2f2e44461d805061677922ce2f689aa3d3143f7..fbdad5ce762ed403d33b35fa2319b1717402b196 100755 (executable)
--- a/config
+++ b/config
@@ -181,11 +181,11 @@ case "${SYSTEM}:${RELEASE}:${VERSION}:${MACHINE}" in
 
     QNX:*)
        case "$VERSION" in
-           423)
-               echo "${MACHINE}-qssl-qnx32"
+           4*)
+               echo "${MACHINE}-whatever-qnx4"
                ;;
            *)
-               echo "${MACHINE}-qssl-qnx"
+               echo "${MACHINE}-whatever-qnx"
                ;;
        esac
        exit 0
@@ -200,7 +200,7 @@ case "${SYSTEM}:${RELEASE}:${VERSION}:${MACHINE}" in
        ;;
 
     SunOS:5.*)
-       echo "${MACHINE}-sun-solaris2"; exit 0
+       echo "${MACHINE}-whatever-solaris2"; exit 0
        ;;
 
     SunOS:*)
@@ -292,8 +292,6 @@ TEST="false"
 for i
 do
 case "$i" in 
-# shared library support (behnke@trustcenter.de)
--shared) SHARED=true;;
 -d*) PREFIX="debug-";;
 -t*) TEST="true";;
 -h*) TEST="true"; cat <<EOF
@@ -431,7 +429,7 @@ case "$GUESSOS" in
   arm*-*-linux2) OUT="linux-elf-arm" ;;
   *-*-linux2) OUT="linux-elf" ;;
   *-*-linux1) OUT="linux-aout" ;;
-  sun4u*-sun-solaris2)
+  sun4u*-*-solaris2)
        ISA64=`(isalist) 2>/dev/null | grep sparcv9`
        if [ "$ISA64" != "" -a "$CC" = "cc" -a $CCVER -ge 50 ]; then
                echo "WARNING! If you wish to build 64-bit library, then you have to"
@@ -440,10 +438,10 @@ case "$GUESSOS" in
                read waste < /dev/tty
        fi
        OUT="solaris-sparcv9-$CC" ;;
-  sun4m-sun-solaris2)  OUT="solaris-sparcv8-$CC" ;;
-  sun4d-sun-solaris2)  OUT="solaris-sparcv8-$CC" ;;
-  sun4*-sun-solaris2)  OUT="solaris-sparcv7-$CC" ;;
-  *86*-sun-solaris2) OUT="solaris-x86-$CC" ;;
+  sun4m-*-solaris2)    OUT="solaris-sparcv8-$CC" ;;
+  sun4d-*-solaris2)    OUT="solaris-sparcv8-$CC" ;;
+  sun4*-*-solaris2)    OUT="solaris-sparcv7-$CC" ;;
+  *86*-*-solaris2) OUT="solaris-x86-$CC" ;;
   *-*-sunos4) OUT="sunos-$CC" ;;
   alpha*-*-freebsd*) OUT="FreeBSD-alpha" ;;
   *-freebsd[3-9]*) OUT="FreeBSD-elf" ;;
@@ -511,17 +509,6 @@ then
   sleep 5
   OUT=linux-sparcv8
 fi
-# To start with $OUT is never i86pc-sun-solaris2. Secondly why
-# ban *all* assembler implementation if it can't stand only one,
-# SHA-0 implementation.
-#if [ "$OUT" = "i86pc-sun-solaris2" ]
-#then
-#  ASM=`as -V /dev/null 2>&1`
-#  case "$ASM" in
-#    GNU*) ;;
-#    *) options="$options no-asm" ; echo "WARNING: You need the GNU assembler to use OpenSSL assembler code." ; echo "Sun as is not supported on Solaris x86." ;;
-#  esac
-#fi
 
 case "$GUESSOS" in
   i386-*) options="$options 386" ;;
@@ -577,7 +564,7 @@ OUT="$PREFIX$OUT"
 
 $PERL ./Configure LIST | grep "$OUT" > /dev/null
 if [ $? = "0" ]; then
-  echo Configuring for $OUT
+  #echo Configuring for $OUT
 
   if [ "$TEST" = "true" ]; then
     echo $PERL ./Configure $OUT $options
index 1693004cc95628ed877cbb8bb481b463bac611ad..37c5d9f916950ffca722d60c8231b69a42a6b003 100644 (file)
@@ -39,7 +39,7 @@ LIBOBJ= cryptlib.o mem.o mem_dbg.o cversion.o ex_data.o tmdiff.o cpt_err.o ebcdi
 
 SRC= $(LIBSRC)
 
-EXHEADER= crypto.h tmdiff.h opensslv.h opensslconf.h ebcdic.h
+EXHEADER= crypto.h tmdiff.h opensslv.h opensslconf.h ebcdic.h symhacks.h
 HEADER=        cryptlib.h buildinf.h md32_common.h $(EXHEADER)
 
 ALL=    $(GENERAL) $(SRC) $(HEADER)
@@ -158,40 +158,42 @@ dclean:
 cpt_err.o: ../include/openssl/bio.h ../include/openssl/crypto.h
 cpt_err.o: ../include/openssl/err.h ../include/openssl/lhash.h
 cpt_err.o: ../include/openssl/opensslv.h ../include/openssl/safestack.h
-cpt_err.o: ../include/openssl/stack.h
+cpt_err.o: ../include/openssl/stack.h ../include/openssl/symhacks.h
 cryptlib.o: ../include/openssl/bio.h ../include/openssl/buffer.h
 cryptlib.o: ../include/openssl/crypto.h ../include/openssl/e_os.h
 cryptlib.o: ../include/openssl/e_os2.h ../include/openssl/err.h
 cryptlib.o: ../include/openssl/lhash.h ../include/openssl/opensslconf.h
 cryptlib.o: ../include/openssl/opensslv.h ../include/openssl/safestack.h
-cryptlib.o: ../include/openssl/stack.h cryptlib.h
+cryptlib.o: ../include/openssl/stack.h ../include/openssl/symhacks.h cryptlib.h
 cversion.o: ../include/openssl/bio.h ../include/openssl/buffer.h
 cversion.o: ../include/openssl/crypto.h ../include/openssl/e_os.h
 cversion.o: ../include/openssl/e_os2.h ../include/openssl/err.h
 cversion.o: ../include/openssl/lhash.h ../include/openssl/opensslconf.h
 cversion.o: ../include/openssl/opensslv.h ../include/openssl/safestack.h
-cversion.o: ../include/openssl/stack.h buildinf.h cryptlib.h
+cversion.o: ../include/openssl/stack.h ../include/openssl/symhacks.h buildinf.h
+cversion.o: cryptlib.h
 ex_data.o: ../include/openssl/bio.h ../include/openssl/buffer.h
 ex_data.o: ../include/openssl/crypto.h ../include/openssl/e_os.h
 ex_data.o: ../include/openssl/e_os2.h ../include/openssl/err.h
 ex_data.o: ../include/openssl/lhash.h ../include/openssl/opensslconf.h
 ex_data.o: ../include/openssl/opensslv.h ../include/openssl/safestack.h
-ex_data.o: ../include/openssl/stack.h cryptlib.h
+ex_data.o: ../include/openssl/stack.h ../include/openssl/symhacks.h cryptlib.h
 mem.o: ../include/openssl/bio.h ../include/openssl/buffer.h
 mem.o: ../include/openssl/crypto.h ../include/openssl/e_os.h
 mem.o: ../include/openssl/e_os2.h ../include/openssl/err.h
 mem.o: ../include/openssl/lhash.h ../include/openssl/opensslconf.h
 mem.o: ../include/openssl/opensslv.h ../include/openssl/safestack.h
-mem.o: ../include/openssl/stack.h cryptlib.h
+mem.o: ../include/openssl/stack.h ../include/openssl/symhacks.h cryptlib.h
 mem_dbg.o: ../include/openssl/bio.h ../include/openssl/buffer.h
 mem_dbg.o: ../include/openssl/crypto.h ../include/openssl/e_os.h
 mem_dbg.o: ../include/openssl/e_os2.h ../include/openssl/err.h
 mem_dbg.o: ../include/openssl/lhash.h ../include/openssl/opensslconf.h
 mem_dbg.o: ../include/openssl/opensslv.h ../include/openssl/safestack.h
-mem_dbg.o: ../include/openssl/stack.h cryptlib.h
+mem_dbg.o: ../include/openssl/stack.h ../include/openssl/symhacks.h cryptlib.h
 tmdiff.o: ../include/openssl/bio.h ../include/openssl/buffer.h
 tmdiff.o: ../include/openssl/crypto.h ../include/openssl/e_os.h
 tmdiff.o: ../include/openssl/e_os2.h ../include/openssl/err.h
 tmdiff.o: ../include/openssl/lhash.h ../include/openssl/opensslconf.h
 tmdiff.o: ../include/openssl/opensslv.h ../include/openssl/safestack.h
-tmdiff.o: ../include/openssl/stack.h ../include/openssl/tmdiff.h cryptlib.h
+tmdiff.o: ../include/openssl/stack.h ../include/openssl/symhacks.h
+tmdiff.o: ../include/openssl/tmdiff.h cryptlib.h
index aa788ef74add60e82e0e06b42e69045cef4849c9..eae97f321d92e8cafed28acc57d182433351f0d8 100644 (file)
@@ -121,21 +121,24 @@ a_bitstr.o: ../../include/openssl/crypto.h ../../include/openssl/e_os.h
 a_bitstr.o: ../../include/openssl/e_os2.h ../../include/openssl/err.h
 a_bitstr.o: ../../include/openssl/lhash.h ../../include/openssl/opensslconf.h
 a_bitstr.o: ../../include/openssl/opensslv.h ../../include/openssl/safestack.h
-a_bitstr.o: ../../include/openssl/stack.h ../cryptlib.h
+a_bitstr.o: ../../include/openssl/stack.h ../../include/openssl/symhacks.h
+a_bitstr.o: ../cryptlib.h
 a_bmp.o: ../../include/openssl/asn1.h ../../include/openssl/bio.h
 a_bmp.o: ../../include/openssl/bn.h ../../include/openssl/buffer.h
 a_bmp.o: ../../include/openssl/crypto.h ../../include/openssl/e_os.h
 a_bmp.o: ../../include/openssl/e_os2.h ../../include/openssl/err.h
 a_bmp.o: ../../include/openssl/lhash.h ../../include/openssl/opensslconf.h
 a_bmp.o: ../../include/openssl/opensslv.h ../../include/openssl/safestack.h
-a_bmp.o: ../../include/openssl/stack.h ../cryptlib.h
+a_bmp.o: ../../include/openssl/stack.h ../../include/openssl/symhacks.h
+a_bmp.o: ../cryptlib.h
 a_bool.o: ../../include/openssl/asn1.h ../../include/openssl/bio.h
 a_bool.o: ../../include/openssl/bn.h ../../include/openssl/buffer.h
 a_bool.o: ../../include/openssl/crypto.h ../../include/openssl/e_os.h
 a_bool.o: ../../include/openssl/e_os2.h ../../include/openssl/err.h
 a_bool.o: ../../include/openssl/lhash.h ../../include/openssl/opensslconf.h
 a_bool.o: ../../include/openssl/opensslv.h ../../include/openssl/safestack.h
-a_bool.o: ../../include/openssl/stack.h ../cryptlib.h
+a_bool.o: ../../include/openssl/stack.h ../../include/openssl/symhacks.h
+a_bool.o: ../cryptlib.h
 a_bytes.o: ../../include/openssl/asn1.h ../../include/openssl/asn1_mac.h
 a_bytes.o: ../../include/openssl/bio.h ../../include/openssl/bn.h
 a_bytes.o: ../../include/openssl/buffer.h ../../include/openssl/crypto.h
@@ -143,7 +146,7 @@ a_bytes.o: ../../include/openssl/e_os.h ../../include/openssl/e_os2.h
 a_bytes.o: ../../include/openssl/err.h ../../include/openssl/lhash.h
 a_bytes.o: ../../include/openssl/opensslconf.h ../../include/openssl/opensslv.h
 a_bytes.o: ../../include/openssl/safestack.h ../../include/openssl/stack.h
-a_bytes.o: ../cryptlib.h
+a_bytes.o: ../../include/openssl/symhacks.h ../cryptlib.h
 a_d2i_fp.o: ../../include/openssl/asn1.h ../../include/openssl/asn1_mac.h
 a_d2i_fp.o: ../../include/openssl/bio.h ../../include/openssl/bn.h
 a_d2i_fp.o: ../../include/openssl/buffer.h ../../include/openssl/crypto.h
@@ -151,7 +154,8 @@ a_d2i_fp.o: ../../include/openssl/e_os.h ../../include/openssl/e_os2.h
 a_d2i_fp.o: ../../include/openssl/err.h ../../include/openssl/lhash.h
 a_d2i_fp.o: ../../include/openssl/opensslconf.h
 a_d2i_fp.o: ../../include/openssl/opensslv.h ../../include/openssl/safestack.h
-a_d2i_fp.o: ../../include/openssl/stack.h ../cryptlib.h
+a_d2i_fp.o: ../../include/openssl/stack.h ../../include/openssl/symhacks.h
+a_d2i_fp.o: ../cryptlib.h
 a_digest.o: ../../include/openssl/asn1.h ../../include/openssl/bio.h
 a_digest.o: ../../include/openssl/blowfish.h ../../include/openssl/bn.h
 a_digest.o: ../../include/openssl/buffer.h ../../include/openssl/cast.h
@@ -160,16 +164,17 @@ a_digest.o: ../../include/openssl/dh.h ../../include/openssl/dsa.h
 a_digest.o: ../../include/openssl/e_os.h ../../include/openssl/e_os2.h
 a_digest.o: ../../include/openssl/err.h ../../include/openssl/evp.h
 a_digest.o: ../../include/openssl/idea.h ../../include/openssl/lhash.h
-a_digest.o: ../../include/openssl/md2.h ../../include/openssl/md5.h
-a_digest.o: ../../include/openssl/mdc2.h ../../include/openssl/obj_mac.h
-a_digest.o: ../../include/openssl/objects.h ../../include/openssl/opensslconf.h
+a_digest.o: ../../include/openssl/md2.h ../../include/openssl/md4.h
+a_digest.o: ../../include/openssl/md5.h ../../include/openssl/mdc2.h
+a_digest.o: ../../include/openssl/obj_mac.h ../../include/openssl/objects.h
+a_digest.o: ../../include/openssl/opensslconf.h
 a_digest.o: ../../include/openssl/opensslv.h ../../include/openssl/pkcs7.h
 a_digest.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h
 a_digest.o: ../../include/openssl/rc5.h ../../include/openssl/ripemd.h
 a_digest.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
 a_digest.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
-a_digest.o: ../../include/openssl/x509.h ../../include/openssl/x509_vfy.h
-a_digest.o: ../cryptlib.h
+a_digest.o: ../../include/openssl/symhacks.h ../../include/openssl/x509.h
+a_digest.o: ../../include/openssl/x509_vfy.h ../cryptlib.h
 a_dup.o: ../../include/openssl/asn1.h ../../include/openssl/asn1_mac.h
 a_dup.o: ../../include/openssl/bio.h ../../include/openssl/bn.h
 a_dup.o: ../../include/openssl/buffer.h ../../include/openssl/crypto.h
@@ -177,21 +182,23 @@ a_dup.o: ../../include/openssl/e_os.h ../../include/openssl/e_os2.h
 a_dup.o: ../../include/openssl/err.h ../../include/openssl/lhash.h
 a_dup.o: ../../include/openssl/opensslconf.h ../../include/openssl/opensslv.h
 a_dup.o: ../../include/openssl/safestack.h ../../include/openssl/stack.h
-a_dup.o: ../cryptlib.h
+a_dup.o: ../../include/openssl/symhacks.h ../cryptlib.h
 a_enum.o: ../../include/openssl/asn1.h ../../include/openssl/bio.h
 a_enum.o: ../../include/openssl/bn.h ../../include/openssl/buffer.h
 a_enum.o: ../../include/openssl/crypto.h ../../include/openssl/e_os.h
 a_enum.o: ../../include/openssl/e_os2.h ../../include/openssl/err.h
 a_enum.o: ../../include/openssl/lhash.h ../../include/openssl/opensslconf.h
 a_enum.o: ../../include/openssl/opensslv.h ../../include/openssl/safestack.h
-a_enum.o: ../../include/openssl/stack.h ../cryptlib.h
+a_enum.o: ../../include/openssl/stack.h ../../include/openssl/symhacks.h
+a_enum.o: ../cryptlib.h
 a_gentm.o: ../../include/openssl/asn1.h ../../include/openssl/bio.h
 a_gentm.o: ../../include/openssl/bn.h ../../include/openssl/buffer.h
 a_gentm.o: ../../include/openssl/crypto.h ../../include/openssl/e_os.h
 a_gentm.o: ../../include/openssl/e_os2.h ../../include/openssl/err.h
 a_gentm.o: ../../include/openssl/lhash.h ../../include/openssl/opensslconf.h
 a_gentm.o: ../../include/openssl/opensslv.h ../../include/openssl/safestack.h
-a_gentm.o: ../../include/openssl/stack.h ../cryptlib.h
+a_gentm.o: ../../include/openssl/stack.h ../../include/openssl/symhacks.h
+a_gentm.o: ../cryptlib.h
 a_hdr.o: ../../include/openssl/asn1.h ../../include/openssl/asn1_mac.h
 a_hdr.o: ../../include/openssl/bio.h ../../include/openssl/bn.h
 a_hdr.o: ../../include/openssl/buffer.h ../../include/openssl/crypto.h
@@ -199,7 +206,7 @@ a_hdr.o: ../../include/openssl/e_os.h ../../include/openssl/e_os2.h
 a_hdr.o: ../../include/openssl/err.h ../../include/openssl/lhash.h
 a_hdr.o: ../../include/openssl/opensslconf.h ../../include/openssl/opensslv.h
 a_hdr.o: ../../include/openssl/safestack.h ../../include/openssl/stack.h
-a_hdr.o: ../cryptlib.h
+a_hdr.o: ../../include/openssl/symhacks.h ../cryptlib.h
 a_i2d_fp.o: ../../include/openssl/asn1.h ../../include/openssl/asn1_mac.h
 a_i2d_fp.o: ../../include/openssl/bio.h ../../include/openssl/bn.h
 a_i2d_fp.o: ../../include/openssl/buffer.h ../../include/openssl/crypto.h
@@ -207,35 +214,40 @@ a_i2d_fp.o: ../../include/openssl/e_os.h ../../include/openssl/e_os2.h
 a_i2d_fp.o: ../../include/openssl/err.h ../../include/openssl/lhash.h
 a_i2d_fp.o: ../../include/openssl/opensslconf.h
 a_i2d_fp.o: ../../include/openssl/opensslv.h ../../include/openssl/safestack.h
-a_i2d_fp.o: ../../include/openssl/stack.h ../cryptlib.h
+a_i2d_fp.o: ../../include/openssl/stack.h ../../include/openssl/symhacks.h
+a_i2d_fp.o: ../cryptlib.h
 a_int.o: ../../include/openssl/asn1.h ../../include/openssl/bio.h
 a_int.o: ../../include/openssl/bn.h ../../include/openssl/buffer.h
 a_int.o: ../../include/openssl/crypto.h ../../include/openssl/e_os.h
 a_int.o: ../../include/openssl/e_os2.h ../../include/openssl/err.h
 a_int.o: ../../include/openssl/lhash.h ../../include/openssl/opensslconf.h
 a_int.o: ../../include/openssl/opensslv.h ../../include/openssl/safestack.h
-a_int.o: ../../include/openssl/stack.h ../cryptlib.h
+a_int.o: ../../include/openssl/stack.h ../../include/openssl/symhacks.h
+a_int.o: ../cryptlib.h
 a_mbstr.o: ../../include/openssl/asn1.h ../../include/openssl/bio.h
 a_mbstr.o: ../../include/openssl/bn.h ../../include/openssl/buffer.h
 a_mbstr.o: ../../include/openssl/crypto.h ../../include/openssl/e_os.h
 a_mbstr.o: ../../include/openssl/e_os2.h ../../include/openssl/err.h
 a_mbstr.o: ../../include/openssl/lhash.h ../../include/openssl/opensslconf.h
 a_mbstr.o: ../../include/openssl/opensslv.h ../../include/openssl/safestack.h
-a_mbstr.o: ../../include/openssl/stack.h ../cryptlib.h
+a_mbstr.o: ../../include/openssl/stack.h ../../include/openssl/symhacks.h
+a_mbstr.o: ../cryptlib.h
 a_meth.o: ../../include/openssl/asn1.h ../../include/openssl/bio.h
 a_meth.o: ../../include/openssl/bn.h ../../include/openssl/buffer.h
 a_meth.o: ../../include/openssl/crypto.h ../../include/openssl/e_os.h
 a_meth.o: ../../include/openssl/e_os2.h ../../include/openssl/err.h
 a_meth.o: ../../include/openssl/lhash.h ../../include/openssl/opensslconf.h
 a_meth.o: ../../include/openssl/opensslv.h ../../include/openssl/safestack.h
-a_meth.o: ../../include/openssl/stack.h ../cryptlib.h
+a_meth.o: ../../include/openssl/stack.h ../../include/openssl/symhacks.h
+a_meth.o: ../cryptlib.h
 a_null.o: ../../include/openssl/asn1.h ../../include/openssl/bio.h
 a_null.o: ../../include/openssl/bn.h ../../include/openssl/buffer.h
 a_null.o: ../../include/openssl/crypto.h ../../include/openssl/e_os.h
 a_null.o: ../../include/openssl/e_os2.h ../../include/openssl/err.h
 a_null.o: ../../include/openssl/lhash.h ../../include/openssl/opensslconf.h
 a_null.o: ../../include/openssl/opensslv.h ../../include/openssl/safestack.h
-a_null.o: ../../include/openssl/stack.h ../cryptlib.h
+a_null.o: ../../include/openssl/stack.h ../../include/openssl/symhacks.h
+a_null.o: ../cryptlib.h
 a_object.o: ../../include/openssl/asn1.h ../../include/openssl/bio.h
 a_object.o: ../../include/openssl/bn.h ../../include/openssl/buffer.h
 a_object.o: ../../include/openssl/crypto.h ../../include/openssl/e_os.h
@@ -243,21 +255,24 @@ a_object.o: ../../include/openssl/e_os2.h ../../include/openssl/err.h
 a_object.o: ../../include/openssl/lhash.h ../../include/openssl/obj_mac.h
 a_object.o: ../../include/openssl/objects.h ../../include/openssl/opensslconf.h
 a_object.o: ../../include/openssl/opensslv.h ../../include/openssl/safestack.h
-a_object.o: ../../include/openssl/stack.h ../cryptlib.h
+a_object.o: ../../include/openssl/stack.h ../../include/openssl/symhacks.h
+a_object.o: ../cryptlib.h
 a_octet.o: ../../include/openssl/asn1.h ../../include/openssl/bio.h
 a_octet.o: ../../include/openssl/bn.h ../../include/openssl/buffer.h
 a_octet.o: ../../include/openssl/crypto.h ../../include/openssl/e_os.h
 a_octet.o: ../../include/openssl/e_os2.h ../../include/openssl/err.h
 a_octet.o: ../../include/openssl/lhash.h ../../include/openssl/opensslconf.h
 a_octet.o: ../../include/openssl/opensslv.h ../../include/openssl/safestack.h
-a_octet.o: ../../include/openssl/stack.h ../cryptlib.h
+a_octet.o: ../../include/openssl/stack.h ../../include/openssl/symhacks.h
+a_octet.o: ../cryptlib.h
 a_print.o: ../../include/openssl/asn1.h ../../include/openssl/bio.h
 a_print.o: ../../include/openssl/bn.h ../../include/openssl/buffer.h
 a_print.o: ../../include/openssl/crypto.h ../../include/openssl/e_os.h
 a_print.o: ../../include/openssl/e_os2.h ../../include/openssl/err.h
 a_print.o: ../../include/openssl/lhash.h ../../include/openssl/opensslconf.h
 a_print.o: ../../include/openssl/opensslv.h ../../include/openssl/safestack.h
-a_print.o: ../../include/openssl/stack.h ../cryptlib.h
+a_print.o: ../../include/openssl/stack.h ../../include/openssl/symhacks.h
+a_print.o: ../cryptlib.h
 a_set.o: ../../include/openssl/asn1.h ../../include/openssl/asn1_mac.h
 a_set.o: ../../include/openssl/bio.h ../../include/openssl/bn.h
 a_set.o: ../../include/openssl/buffer.h ../../include/openssl/crypto.h
@@ -265,7 +280,7 @@ a_set.o: ../../include/openssl/e_os.h ../../include/openssl/e_os2.h
 a_set.o: ../../include/openssl/err.h ../../include/openssl/lhash.h
 a_set.o: ../../include/openssl/opensslconf.h ../../include/openssl/opensslv.h
 a_set.o: ../../include/openssl/safestack.h ../../include/openssl/stack.h
-a_set.o: ../cryptlib.h
+a_set.o: ../../include/openssl/symhacks.h ../cryptlib.h
 a_sign.o: ../../include/openssl/asn1.h ../../include/openssl/bio.h
 a_sign.o: ../../include/openssl/blowfish.h ../../include/openssl/bn.h
 a_sign.o: ../../include/openssl/buffer.h ../../include/openssl/cast.h
@@ -274,14 +289,15 @@ a_sign.o: ../../include/openssl/dh.h ../../include/openssl/dsa.h
 a_sign.o: ../../include/openssl/e_os.h ../../include/openssl/e_os2.h
 a_sign.o: ../../include/openssl/err.h ../../include/openssl/evp.h
 a_sign.o: ../../include/openssl/idea.h ../../include/openssl/lhash.h
-a_sign.o: ../../include/openssl/md2.h ../../include/openssl/md5.h
-a_sign.o: ../../include/openssl/mdc2.h ../../include/openssl/obj_mac.h
-a_sign.o: ../../include/openssl/objects.h ../../include/openssl/opensslconf.h
-a_sign.o: ../../include/openssl/opensslv.h ../../include/openssl/pkcs7.h
-a_sign.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h
-a_sign.o: ../../include/openssl/rc5.h ../../include/openssl/ripemd.h
-a_sign.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
-a_sign.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
+a_sign.o: ../../include/openssl/md2.h ../../include/openssl/md4.h
+a_sign.o: ../../include/openssl/md5.h ../../include/openssl/mdc2.h
+a_sign.o: ../../include/openssl/obj_mac.h ../../include/openssl/objects.h
+a_sign.o: ../../include/openssl/opensslconf.h ../../include/openssl/opensslv.h
+a_sign.o: ../../include/openssl/pkcs7.h ../../include/openssl/rc2.h
+a_sign.o: ../../include/openssl/rc4.h ../../include/openssl/rc5.h
+a_sign.o: ../../include/openssl/ripemd.h ../../include/openssl/rsa.h
+a_sign.o: ../../include/openssl/safestack.h ../../include/openssl/sha.h
+a_sign.o: ../../include/openssl/stack.h ../../include/openssl/symhacks.h
 a_sign.o: ../../include/openssl/x509.h ../../include/openssl/x509_vfy.h
 a_sign.o: ../cryptlib.h
 a_strex.o: ../../include/openssl/asn1.h ../../include/openssl/bio.h
@@ -291,14 +307,15 @@ a_strex.o: ../../include/openssl/crypto.h ../../include/openssl/des.h
 a_strex.o: ../../include/openssl/dh.h ../../include/openssl/dsa.h
 a_strex.o: ../../include/openssl/e_os2.h ../../include/openssl/evp.h
 a_strex.o: ../../include/openssl/idea.h ../../include/openssl/lhash.h
-a_strex.o: ../../include/openssl/md2.h ../../include/openssl/md5.h
-a_strex.o: ../../include/openssl/mdc2.h ../../include/openssl/obj_mac.h
-a_strex.o: ../../include/openssl/objects.h ../../include/openssl/opensslconf.h
-a_strex.o: ../../include/openssl/opensslv.h ../../include/openssl/pkcs7.h
-a_strex.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h
-a_strex.o: ../../include/openssl/rc5.h ../../include/openssl/ripemd.h
-a_strex.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
-a_strex.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
+a_strex.o: ../../include/openssl/md2.h ../../include/openssl/md4.h
+a_strex.o: ../../include/openssl/md5.h ../../include/openssl/mdc2.h
+a_strex.o: ../../include/openssl/obj_mac.h ../../include/openssl/objects.h
+a_strex.o: ../../include/openssl/opensslconf.h ../../include/openssl/opensslv.h
+a_strex.o: ../../include/openssl/pkcs7.h ../../include/openssl/rc2.h
+a_strex.o: ../../include/openssl/rc4.h ../../include/openssl/rc5.h
+a_strex.o: ../../include/openssl/ripemd.h ../../include/openssl/rsa.h
+a_strex.o: ../../include/openssl/safestack.h ../../include/openssl/sha.h
+a_strex.o: ../../include/openssl/stack.h ../../include/openssl/symhacks.h
 a_strex.o: ../../include/openssl/x509.h ../../include/openssl/x509_vfy.h
 a_strex.o: charmap.h
 a_strnid.o: ../../include/openssl/asn1.h ../../include/openssl/bio.h
@@ -308,14 +325,16 @@ a_strnid.o: ../../include/openssl/e_os2.h ../../include/openssl/err.h
 a_strnid.o: ../../include/openssl/lhash.h ../../include/openssl/obj_mac.h
 a_strnid.o: ../../include/openssl/objects.h ../../include/openssl/opensslconf.h
 a_strnid.o: ../../include/openssl/opensslv.h ../../include/openssl/safestack.h
-a_strnid.o: ../../include/openssl/stack.h ../cryptlib.h
+a_strnid.o: ../../include/openssl/stack.h ../../include/openssl/symhacks.h
+a_strnid.o: ../cryptlib.h
 a_time.o: ../../include/openssl/asn1.h ../../include/openssl/bio.h
 a_time.o: ../../include/openssl/bn.h ../../include/openssl/buffer.h
 a_time.o: ../../include/openssl/crypto.h ../../include/openssl/e_os.h
 a_time.o: ../../include/openssl/e_os2.h ../../include/openssl/err.h
 a_time.o: ../../include/openssl/lhash.h ../../include/openssl/opensslconf.h
 a_time.o: ../../include/openssl/opensslv.h ../../include/openssl/safestack.h
-a_time.o: ../../include/openssl/stack.h ../cryptlib.h
+a_time.o: ../../include/openssl/stack.h ../../include/openssl/symhacks.h
+a_time.o: ../cryptlib.h
 a_type.o: ../../include/openssl/asn1.h ../../include/openssl/asn1_mac.h
 a_type.o: ../../include/openssl/bio.h ../../include/openssl/bn.h
 a_type.o: ../../include/openssl/buffer.h ../../include/openssl/crypto.h
@@ -323,21 +342,23 @@ a_type.o: ../../include/openssl/e_os.h ../../include/openssl/e_os2.h
 a_type.o: ../../include/openssl/err.h ../../include/openssl/lhash.h
 a_type.o: ../../include/openssl/opensslconf.h ../../include/openssl/opensslv.h
 a_type.o: ../../include/openssl/safestack.h ../../include/openssl/stack.h
-a_type.o: ../cryptlib.h
+a_type.o: ../../include/openssl/symhacks.h ../cryptlib.h
 a_utctm.o: ../../include/openssl/asn1.h ../../include/openssl/bio.h
 a_utctm.o: ../../include/openssl/bn.h ../../include/openssl/buffer.h
 a_utctm.o: ../../include/openssl/crypto.h ../../include/openssl/e_os.h
 a_utctm.o: ../../include/openssl/e_os2.h ../../include/openssl/err.h
 a_utctm.o: ../../include/openssl/lhash.h ../../include/openssl/opensslconf.h
 a_utctm.o: ../../include/openssl/opensslv.h ../../include/openssl/safestack.h
-a_utctm.o: ../../include/openssl/stack.h ../cryptlib.h
+a_utctm.o: ../../include/openssl/stack.h ../../include/openssl/symhacks.h
+a_utctm.o: ../cryptlib.h
 a_utf8.o: ../../include/openssl/asn1.h ../../include/openssl/bio.h
 a_utf8.o: ../../include/openssl/bn.h ../../include/openssl/buffer.h
 a_utf8.o: ../../include/openssl/crypto.h ../../include/openssl/e_os.h
 a_utf8.o: ../../include/openssl/e_os2.h ../../include/openssl/err.h
 a_utf8.o: ../../include/openssl/lhash.h ../../include/openssl/opensslconf.h
 a_utf8.o: ../../include/openssl/opensslv.h ../../include/openssl/safestack.h
-a_utf8.o: ../../include/openssl/stack.h ../cryptlib.h
+a_utf8.o: ../../include/openssl/stack.h ../../include/openssl/symhacks.h
+a_utf8.o: ../cryptlib.h
 a_verify.o: ../../include/openssl/asn1.h ../../include/openssl/bio.h
 a_verify.o: ../../include/openssl/blowfish.h ../../include/openssl/bn.h
 a_verify.o: ../../include/openssl/buffer.h ../../include/openssl/cast.h
@@ -346,29 +367,31 @@ a_verify.o: ../../include/openssl/dh.h ../../include/openssl/dsa.h
 a_verify.o: ../../include/openssl/e_os.h ../../include/openssl/e_os2.h
 a_verify.o: ../../include/openssl/err.h ../../include/openssl/evp.h
 a_verify.o: ../../include/openssl/idea.h ../../include/openssl/lhash.h
-a_verify.o: ../../include/openssl/md2.h ../../include/openssl/md5.h
-a_verify.o: ../../include/openssl/mdc2.h ../../include/openssl/obj_mac.h
-a_verify.o: ../../include/openssl/objects.h ../../include/openssl/opensslconf.h
+a_verify.o: ../../include/openssl/md2.h ../../include/openssl/md4.h
+a_verify.o: ../../include/openssl/md5.h ../../include/openssl/mdc2.h
+a_verify.o: ../../include/openssl/obj_mac.h ../../include/openssl/objects.h
+a_verify.o: ../../include/openssl/opensslconf.h
 a_verify.o: ../../include/openssl/opensslv.h ../../include/openssl/pkcs7.h
 a_verify.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h
 a_verify.o: ../../include/openssl/rc5.h ../../include/openssl/ripemd.h
 a_verify.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
 a_verify.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
-a_verify.o: ../../include/openssl/x509.h ../../include/openssl/x509_vfy.h
-a_verify.o: ../cryptlib.h
+a_verify.o: ../../include/openssl/symhacks.h ../../include/openssl/x509.h
+a_verify.o: ../../include/openssl/x509_vfy.h ../cryptlib.h
 a_vis.o: ../../include/openssl/asn1.h ../../include/openssl/bio.h
 a_vis.o: ../../include/openssl/bn.h ../../include/openssl/buffer.h
 a_vis.o: ../../include/openssl/crypto.h ../../include/openssl/e_os.h
 a_vis.o: ../../include/openssl/e_os2.h ../../include/openssl/err.h
 a_vis.o: ../../include/openssl/lhash.h ../../include/openssl/opensslconf.h
 a_vis.o: ../../include/openssl/opensslv.h ../../include/openssl/safestack.h
-a_vis.o: ../../include/openssl/stack.h ../cryptlib.h
+a_vis.o: ../../include/openssl/stack.h ../../include/openssl/symhacks.h
+a_vis.o: ../cryptlib.h
 asn1_err.o: ../../include/openssl/asn1.h ../../include/openssl/bio.h
 asn1_err.o: ../../include/openssl/bn.h ../../include/openssl/crypto.h
 asn1_err.o: ../../include/openssl/err.h ../../include/openssl/lhash.h
 asn1_err.o: ../../include/openssl/opensslconf.h
 asn1_err.o: ../../include/openssl/opensslv.h ../../include/openssl/safestack.h
-asn1_err.o: ../../include/openssl/stack.h
+asn1_err.o: ../../include/openssl/stack.h ../../include/openssl/symhacks.h
 asn1_lib.o: ../../include/openssl/asn1.h ../../include/openssl/asn1_mac.h
 asn1_lib.o: ../../include/openssl/bio.h ../../include/openssl/bn.h
 asn1_lib.o: ../../include/openssl/buffer.h ../../include/openssl/crypto.h
@@ -376,7 +399,8 @@ asn1_lib.o: ../../include/openssl/e_os.h ../../include/openssl/e_os2.h
 asn1_lib.o: ../../include/openssl/err.h ../../include/openssl/lhash.h
 asn1_lib.o: ../../include/openssl/opensslconf.h
 asn1_lib.o: ../../include/openssl/opensslv.h ../../include/openssl/safestack.h
-asn1_lib.o: ../../include/openssl/stack.h ../cryptlib.h
+asn1_lib.o: ../../include/openssl/stack.h ../../include/openssl/symhacks.h
+asn1_lib.o: ../cryptlib.h
 asn1_par.o: ../../include/openssl/asn1.h ../../include/openssl/bio.h
 asn1_par.o: ../../include/openssl/bn.h ../../include/openssl/buffer.h
 asn1_par.o: ../../include/openssl/crypto.h ../../include/openssl/e_os.h
@@ -384,14 +408,16 @@ asn1_par.o: ../../include/openssl/e_os2.h ../../include/openssl/err.h
 asn1_par.o: ../../include/openssl/lhash.h ../../include/openssl/obj_mac.h
 asn1_par.o: ../../include/openssl/objects.h ../../include/openssl/opensslconf.h
 asn1_par.o: ../../include/openssl/opensslv.h ../../include/openssl/safestack.h
-asn1_par.o: ../../include/openssl/stack.h ../cryptlib.h
+asn1_par.o: ../../include/openssl/stack.h ../../include/openssl/symhacks.h
+asn1_par.o: ../cryptlib.h
 asn_pack.o: ../../include/openssl/asn1.h ../../include/openssl/bio.h
 asn_pack.o: ../../include/openssl/bn.h ../../include/openssl/buffer.h
 asn_pack.o: ../../include/openssl/crypto.h ../../include/openssl/e_os.h
 asn_pack.o: ../../include/openssl/e_os2.h ../../include/openssl/err.h
 asn_pack.o: ../../include/openssl/lhash.h ../../include/openssl/opensslconf.h
 asn_pack.o: ../../include/openssl/opensslv.h ../../include/openssl/safestack.h
-asn_pack.o: ../../include/openssl/stack.h ../cryptlib.h
+asn_pack.o: ../../include/openssl/stack.h ../../include/openssl/symhacks.h
+asn_pack.o: ../cryptlib.h
 d2i_dhp.o: ../../include/openssl/asn1.h ../../include/openssl/asn1_mac.h
 d2i_dhp.o: ../../include/openssl/bio.h ../../include/openssl/bn.h
 d2i_dhp.o: ../../include/openssl/buffer.h ../../include/openssl/crypto.h
@@ -400,7 +426,8 @@ d2i_dhp.o: ../../include/openssl/e_os2.h ../../include/openssl/err.h
 d2i_dhp.o: ../../include/openssl/lhash.h ../../include/openssl/obj_mac.h
 d2i_dhp.o: ../../include/openssl/objects.h ../../include/openssl/opensslconf.h
 d2i_dhp.o: ../../include/openssl/opensslv.h ../../include/openssl/safestack.h
-d2i_dhp.o: ../../include/openssl/stack.h ../cryptlib.h
+d2i_dhp.o: ../../include/openssl/stack.h ../../include/openssl/symhacks.h
+d2i_dhp.o: ../cryptlib.h
 d2i_dsap.o: ../../include/openssl/asn1.h ../../include/openssl/asn1_mac.h
 d2i_dsap.o: ../../include/openssl/bio.h ../../include/openssl/bn.h
 d2i_dsap.o: ../../include/openssl/buffer.h ../../include/openssl/crypto.h
@@ -410,7 +437,8 @@ d2i_dsap.o: ../../include/openssl/err.h ../../include/openssl/lhash.h
 d2i_dsap.o: ../../include/openssl/obj_mac.h ../../include/openssl/objects.h
 d2i_dsap.o: ../../include/openssl/opensslconf.h
 d2i_dsap.o: ../../include/openssl/opensslv.h ../../include/openssl/safestack.h
-d2i_dsap.o: ../../include/openssl/stack.h ../cryptlib.h
+d2i_dsap.o: ../../include/openssl/stack.h ../../include/openssl/symhacks.h
+d2i_dsap.o: ../cryptlib.h
 d2i_pr.o: ../../include/openssl/asn1.h ../../include/openssl/bio.h
 d2i_pr.o: ../../include/openssl/blowfish.h ../../include/openssl/bn.h
 d2i_pr.o: ../../include/openssl/buffer.h ../../include/openssl/cast.h
@@ -419,14 +447,15 @@ d2i_pr.o: ../../include/openssl/dh.h ../../include/openssl/dsa.h
 d2i_pr.o: ../../include/openssl/e_os.h ../../include/openssl/e_os2.h
 d2i_pr.o: ../../include/openssl/err.h ../../include/openssl/evp.h
 d2i_pr.o: ../../include/openssl/idea.h ../../include/openssl/lhash.h
-d2i_pr.o: ../../include/openssl/md2.h ../../include/openssl/md5.h
-d2i_pr.o: ../../include/openssl/mdc2.h ../../include/openssl/obj_mac.h
-d2i_pr.o: ../../include/openssl/objects.h ../../include/openssl/opensslconf.h
-d2i_pr.o: ../../include/openssl/opensslv.h ../../include/openssl/rc2.h
-d2i_pr.o: ../../include/openssl/rc4.h ../../include/openssl/rc5.h
-d2i_pr.o: ../../include/openssl/ripemd.h ../../include/openssl/rsa.h
-d2i_pr.o: ../../include/openssl/safestack.h ../../include/openssl/sha.h
-d2i_pr.o: ../../include/openssl/stack.h ../cryptlib.h
+d2i_pr.o: ../../include/openssl/md2.h ../../include/openssl/md4.h
+d2i_pr.o: ../../include/openssl/md5.h ../../include/openssl/mdc2.h
+d2i_pr.o: ../../include/openssl/obj_mac.h ../../include/openssl/objects.h
+d2i_pr.o: ../../include/openssl/opensslconf.h ../../include/openssl/opensslv.h
+d2i_pr.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h
+d2i_pr.o: ../../include/openssl/rc5.h ../../include/openssl/ripemd.h
+d2i_pr.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
+d2i_pr.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
+d2i_pr.o: ../../include/openssl/symhacks.h ../cryptlib.h
 d2i_pu.o: ../../include/openssl/asn1.h ../../include/openssl/bio.h
 d2i_pu.o: ../../include/openssl/blowfish.h ../../include/openssl/bn.h
 d2i_pu.o: ../../include/openssl/buffer.h ../../include/openssl/cast.h
@@ -435,14 +464,15 @@ d2i_pu.o: ../../include/openssl/dh.h ../../include/openssl/dsa.h
 d2i_pu.o: ../../include/openssl/e_os.h ../../include/openssl/e_os2.h
 d2i_pu.o: ../../include/openssl/err.h ../../include/openssl/evp.h
 d2i_pu.o: ../../include/openssl/idea.h ../../include/openssl/lhash.h
-d2i_pu.o: ../../include/openssl/md2.h ../../include/openssl/md5.h
-d2i_pu.o: ../../include/openssl/mdc2.h ../../include/openssl/obj_mac.h
-d2i_pu.o: ../../include/openssl/objects.h ../../include/openssl/opensslconf.h
-d2i_pu.o: ../../include/openssl/opensslv.h ../../include/openssl/rc2.h
-d2i_pu.o: ../../include/openssl/rc4.h ../../include/openssl/rc5.h
-d2i_pu.o: ../../include/openssl/ripemd.h ../../include/openssl/rsa.h
-d2i_pu.o: ../../include/openssl/safestack.h ../../include/openssl/sha.h
-d2i_pu.o: ../../include/openssl/stack.h ../cryptlib.h
+d2i_pu.o: ../../include/openssl/md2.h ../../include/openssl/md4.h
+d2i_pu.o: ../../include/openssl/md5.h ../../include/openssl/mdc2.h
+d2i_pu.o: ../../include/openssl/obj_mac.h ../../include/openssl/objects.h
+d2i_pu.o: ../../include/openssl/opensslconf.h ../../include/openssl/opensslv.h
+d2i_pu.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h
+d2i_pu.o: ../../include/openssl/rc5.h ../../include/openssl/ripemd.h
+d2i_pu.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
+d2i_pu.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
+d2i_pu.o: ../../include/openssl/symhacks.h ../cryptlib.h
 d2i_r_pr.o: ../../include/openssl/asn1.h ../../include/openssl/asn1_mac.h
 d2i_r_pr.o: ../../include/openssl/bio.h ../../include/openssl/bn.h
 d2i_r_pr.o: ../../include/openssl/buffer.h ../../include/openssl/crypto.h
@@ -452,7 +482,7 @@ d2i_r_pr.o: ../../include/openssl/obj_mac.h ../../include/openssl/objects.h
 d2i_r_pr.o: ../../include/openssl/opensslconf.h
 d2i_r_pr.o: ../../include/openssl/opensslv.h ../../include/openssl/rsa.h
 d2i_r_pr.o: ../../include/openssl/safestack.h ../../include/openssl/stack.h
-d2i_r_pr.o: ../cryptlib.h
+d2i_r_pr.o: ../../include/openssl/symhacks.h ../cryptlib.h
 d2i_r_pu.o: ../../include/openssl/asn1.h ../../include/openssl/asn1_mac.h
 d2i_r_pu.o: ../../include/openssl/bio.h ../../include/openssl/bn.h
 d2i_r_pu.o: ../../include/openssl/buffer.h ../../include/openssl/crypto.h
@@ -462,7 +492,7 @@ d2i_r_pu.o: ../../include/openssl/obj_mac.h ../../include/openssl/objects.h
 d2i_r_pu.o: ../../include/openssl/opensslconf.h
 d2i_r_pu.o: ../../include/openssl/opensslv.h ../../include/openssl/rsa.h
 d2i_r_pu.o: ../../include/openssl/safestack.h ../../include/openssl/stack.h
-d2i_r_pu.o: ../cryptlib.h
+d2i_r_pu.o: ../../include/openssl/symhacks.h ../cryptlib.h
 d2i_s_pr.o: ../../include/openssl/asn1.h ../../include/openssl/asn1_mac.h
 d2i_s_pr.o: ../../include/openssl/bio.h ../../include/openssl/bn.h
 d2i_s_pr.o: ../../include/openssl/buffer.h ../../include/openssl/crypto.h
@@ -472,7 +502,8 @@ d2i_s_pr.o: ../../include/openssl/err.h ../../include/openssl/lhash.h
 d2i_s_pr.o: ../../include/openssl/obj_mac.h ../../include/openssl/objects.h
 d2i_s_pr.o: ../../include/openssl/opensslconf.h
 d2i_s_pr.o: ../../include/openssl/opensslv.h ../../include/openssl/safestack.h
-d2i_s_pr.o: ../../include/openssl/stack.h ../cryptlib.h
+d2i_s_pr.o: ../../include/openssl/stack.h ../../include/openssl/symhacks.h
+d2i_s_pr.o: ../cryptlib.h
 d2i_s_pu.o: ../../include/openssl/asn1.h ../../include/openssl/asn1_mac.h
 d2i_s_pu.o: ../../include/openssl/bio.h ../../include/openssl/bn.h
 d2i_s_pu.o: ../../include/openssl/buffer.h ../../include/openssl/crypto.h
@@ -482,7 +513,8 @@ d2i_s_pu.o: ../../include/openssl/err.h ../../include/openssl/lhash.h
 d2i_s_pu.o: ../../include/openssl/obj_mac.h ../../include/openssl/objects.h
 d2i_s_pu.o: ../../include/openssl/opensslconf.h
 d2i_s_pu.o: ../../include/openssl/opensslv.h ../../include/openssl/safestack.h
-d2i_s_pu.o: ../../include/openssl/stack.h ../cryptlib.h
+d2i_s_pu.o: ../../include/openssl/stack.h ../../include/openssl/symhacks.h
+d2i_s_pu.o: ../cryptlib.h
 evp_asn1.o: ../../include/openssl/asn1.h ../../include/openssl/asn1_mac.h
 evp_asn1.o: ../../include/openssl/bio.h ../../include/openssl/bn.h
 evp_asn1.o: ../../include/openssl/buffer.h ../../include/openssl/crypto.h
@@ -490,28 +522,32 @@ evp_asn1.o: ../../include/openssl/e_os.h ../../include/openssl/e_os2.h
 evp_asn1.o: ../../include/openssl/err.h ../../include/openssl/lhash.h
 evp_asn1.o: ../../include/openssl/opensslconf.h
 evp_asn1.o: ../../include/openssl/opensslv.h ../../include/openssl/safestack.h
-evp_asn1.o: ../../include/openssl/stack.h ../cryptlib.h
+evp_asn1.o: ../../include/openssl/stack.h ../../include/openssl/symhacks.h
+evp_asn1.o: ../cryptlib.h
 f_enum.o: ../../include/openssl/asn1.h ../../include/openssl/bio.h
 f_enum.o: ../../include/openssl/bn.h ../../include/openssl/buffer.h
 f_enum.o: ../../include/openssl/crypto.h ../../include/openssl/e_os.h
 f_enum.o: ../../include/openssl/e_os2.h ../../include/openssl/err.h
 f_enum.o: ../../include/openssl/lhash.h ../../include/openssl/opensslconf.h
 f_enum.o: ../../include/openssl/opensslv.h ../../include/openssl/safestack.h
-f_enum.o: ../../include/openssl/stack.h ../cryptlib.h
+f_enum.o: ../../include/openssl/stack.h ../../include/openssl/symhacks.h
+f_enum.o: ../cryptlib.h
 f_int.o: ../../include/openssl/asn1.h ../../include/openssl/bio.h
 f_int.o: ../../include/openssl/bn.h ../../include/openssl/buffer.h
 f_int.o: ../../include/openssl/crypto.h ../../include/openssl/e_os.h
 f_int.o: ../../include/openssl/e_os2.h ../../include/openssl/err.h
 f_int.o: ../../include/openssl/lhash.h ../../include/openssl/opensslconf.h
 f_int.o: ../../include/openssl/opensslv.h ../../include/openssl/safestack.h
-f_int.o: ../../include/openssl/stack.h ../cryptlib.h
+f_int.o: ../../include/openssl/stack.h ../../include/openssl/symhacks.h
+f_int.o: ../cryptlib.h
 f_string.o: ../../include/openssl/asn1.h ../../include/openssl/bio.h
 f_string.o: ../../include/openssl/bn.h ../../include/openssl/buffer.h
 f_string.o: ../../include/openssl/crypto.h ../../include/openssl/e_os.h
 f_string.o: ../../include/openssl/e_os2.h ../../include/openssl/err.h
 f_string.o: ../../include/openssl/lhash.h ../../include/openssl/opensslconf.h
 f_string.o: ../../include/openssl/opensslv.h ../../include/openssl/safestack.h
-f_string.o: ../../include/openssl/stack.h ../cryptlib.h
+f_string.o: ../../include/openssl/stack.h ../../include/openssl/symhacks.h
+f_string.o: ../cryptlib.h
 i2d_dhp.o: ../../include/openssl/asn1.h ../../include/openssl/asn1_mac.h
 i2d_dhp.o: ../../include/openssl/bio.h ../../include/openssl/bn.h
 i2d_dhp.o: ../../include/openssl/buffer.h ../../include/openssl/crypto.h
@@ -519,7 +555,8 @@ i2d_dhp.o: ../../include/openssl/dh.h ../../include/openssl/e_os.h
 i2d_dhp.o: ../../include/openssl/e_os2.h ../../include/openssl/err.h
 i2d_dhp.o: ../../include/openssl/lhash.h ../../include/openssl/opensslconf.h
 i2d_dhp.o: ../../include/openssl/opensslv.h ../../include/openssl/safestack.h
-i2d_dhp.o: ../../include/openssl/stack.h ../cryptlib.h
+i2d_dhp.o: ../../include/openssl/stack.h ../../include/openssl/symhacks.h
+i2d_dhp.o: ../cryptlib.h
 i2d_dsap.o: ../../include/openssl/asn1.h ../../include/openssl/asn1_mac.h
 i2d_dsap.o: ../../include/openssl/bio.h ../../include/openssl/bn.h
 i2d_dsap.o: ../../include/openssl/buffer.h ../../include/openssl/crypto.h
@@ -528,7 +565,8 @@ i2d_dsap.o: ../../include/openssl/e_os.h ../../include/openssl/e_os2.h
 i2d_dsap.o: ../../include/openssl/err.h ../../include/openssl/lhash.h
 i2d_dsap.o: ../../include/openssl/opensslconf.h
 i2d_dsap.o: ../../include/openssl/opensslv.h ../../include/openssl/safestack.h
-i2d_dsap.o: ../../include/openssl/stack.h ../cryptlib.h
+i2d_dsap.o: ../../include/openssl/stack.h ../../include/openssl/symhacks.h
+i2d_dsap.o: ../cryptlib.h
 i2d_pr.o: ../../include/openssl/asn1.h ../../include/openssl/bio.h
 i2d_pr.o: ../../include/openssl/blowfish.h ../../include/openssl/bn.h
 i2d_pr.o: ../../include/openssl/buffer.h ../../include/openssl/cast.h
@@ -537,14 +575,15 @@ i2d_pr.o: ../../include/openssl/dh.h ../../include/openssl/dsa.h
 i2d_pr.o: ../../include/openssl/e_os.h ../../include/openssl/e_os2.h
 i2d_pr.o: ../../include/openssl/err.h ../../include/openssl/evp.h
 i2d_pr.o: ../../include/openssl/idea.h ../../include/openssl/lhash.h
-i2d_pr.o: ../../include/openssl/md2.h ../../include/openssl/md5.h
-i2d_pr.o: ../../include/openssl/mdc2.h ../../include/openssl/obj_mac.h
-i2d_pr.o: ../../include/openssl/objects.h ../../include/openssl/opensslconf.h
-i2d_pr.o: ../../include/openssl/opensslv.h ../../include/openssl/rc2.h
-i2d_pr.o: ../../include/openssl/rc4.h ../../include/openssl/rc5.h
-i2d_pr.o: ../../include/openssl/ripemd.h ../../include/openssl/rsa.h
-i2d_pr.o: ../../include/openssl/safestack.h ../../include/openssl/sha.h
-i2d_pr.o: ../../include/openssl/stack.h ../cryptlib.h
+i2d_pr.o: ../../include/openssl/md2.h ../../include/openssl/md4.h
+i2d_pr.o: ../../include/openssl/md5.h ../../include/openssl/mdc2.h
+i2d_pr.o: ../../include/openssl/obj_mac.h ../../include/openssl/objects.h
+i2d_pr.o: ../../include/openssl/opensslconf.h ../../include/openssl/opensslv.h
+i2d_pr.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h
+i2d_pr.o: ../../include/openssl/rc5.h ../../include/openssl/ripemd.h
+i2d_pr.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
+i2d_pr.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
+i2d_pr.o: ../../include/openssl/symhacks.h ../cryptlib.h
 i2d_pu.o: ../../include/openssl/asn1.h ../../include/openssl/bio.h
 i2d_pu.o: ../../include/openssl/blowfish.h ../../include/openssl/bn.h
 i2d_pu.o: ../../include/openssl/buffer.h ../../include/openssl/cast.h
@@ -553,14 +592,15 @@ i2d_pu.o: ../../include/openssl/dh.h ../../include/openssl/dsa.h
 i2d_pu.o: ../../include/openssl/e_os.h ../../include/openssl/e_os2.h
 i2d_pu.o: ../../include/openssl/err.h ../../include/openssl/evp.h
 i2d_pu.o: ../../include/openssl/idea.h ../../include/openssl/lhash.h
-i2d_pu.o: ../../include/openssl/md2.h ../../include/openssl/md5.h
-i2d_pu.o: ../../include/openssl/mdc2.h ../../include/openssl/obj_mac.h
-i2d_pu.o: ../../include/openssl/objects.h ../../include/openssl/opensslconf.h
-i2d_pu.o: ../../include/openssl/opensslv.h ../../include/openssl/rc2.h
-i2d_pu.o: ../../include/openssl/rc4.h ../../include/openssl/rc5.h
-i2d_pu.o: ../../include/openssl/ripemd.h ../../include/openssl/rsa.h
-i2d_pu.o: ../../include/openssl/safestack.h ../../include/openssl/sha.h
-i2d_pu.o: ../../include/openssl/stack.h ../cryptlib.h
+i2d_pu.o: ../../include/openssl/md2.h ../../include/openssl/md4.h
+i2d_pu.o: ../../include/openssl/md5.h ../../include/openssl/mdc2.h
+i2d_pu.o: ../../include/openssl/obj_mac.h ../../include/openssl/objects.h
+i2d_pu.o: ../../include/openssl/opensslconf.h ../../include/openssl/opensslv.h
+i2d_pu.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h
+i2d_pu.o: ../../include/openssl/rc5.h ../../include/openssl/ripemd.h
+i2d_pu.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
+i2d_pu.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
+i2d_pu.o: ../../include/openssl/symhacks.h ../cryptlib.h
 i2d_r_pr.o: ../../include/openssl/asn1.h ../../include/openssl/asn1_mac.h
 i2d_r_pr.o: ../../include/openssl/bio.h ../../include/openssl/bn.h
 i2d_r_pr.o: ../../include/openssl/buffer.h ../../include/openssl/crypto.h
@@ -570,7 +610,7 @@ i2d_r_pr.o: ../../include/openssl/obj_mac.h ../../include/openssl/objects.h
 i2d_r_pr.o: ../../include/openssl/opensslconf.h
 i2d_r_pr.o: ../../include/openssl/opensslv.h ../../include/openssl/rsa.h
 i2d_r_pr.o: ../../include/openssl/safestack.h ../../include/openssl/stack.h
-i2d_r_pr.o: ../cryptlib.h
+i2d_r_pr.o: ../../include/openssl/symhacks.h ../cryptlib.h
 i2d_r_pu.o: ../../include/openssl/asn1.h ../../include/openssl/asn1_mac.h
 i2d_r_pu.o: ../../include/openssl/bio.h ../../include/openssl/bn.h
 i2d_r_pu.o: ../../include/openssl/buffer.h ../../include/openssl/crypto.h
@@ -580,7 +620,7 @@ i2d_r_pu.o: ../../include/openssl/obj_mac.h ../../include/openssl/objects.h
 i2d_r_pu.o: ../../include/openssl/opensslconf.h
 i2d_r_pu.o: ../../include/openssl/opensslv.h ../../include/openssl/rsa.h
 i2d_r_pu.o: ../../include/openssl/safestack.h ../../include/openssl/stack.h
-i2d_r_pu.o: ../cryptlib.h
+i2d_r_pu.o: ../../include/openssl/symhacks.h ../cryptlib.h
 i2d_s_pr.o: ../../include/openssl/asn1.h ../../include/openssl/asn1_mac.h
 i2d_s_pr.o: ../../include/openssl/bio.h ../../include/openssl/bn.h
 i2d_s_pr.o: ../../include/openssl/buffer.h ../../include/openssl/crypto.h
@@ -590,7 +630,8 @@ i2d_s_pr.o: ../../include/openssl/err.h ../../include/openssl/lhash.h
 i2d_s_pr.o: ../../include/openssl/obj_mac.h ../../include/openssl/objects.h
 i2d_s_pr.o: ../../include/openssl/opensslconf.h
 i2d_s_pr.o: ../../include/openssl/opensslv.h ../../include/openssl/safestack.h
-i2d_s_pr.o: ../../include/openssl/stack.h ../cryptlib.h
+i2d_s_pr.o: ../../include/openssl/stack.h ../../include/openssl/symhacks.h
+i2d_s_pr.o: ../cryptlib.h
 i2d_s_pu.o: ../../include/openssl/asn1.h ../../include/openssl/asn1_mac.h
 i2d_s_pu.o: ../../include/openssl/bio.h ../../include/openssl/bn.h
 i2d_s_pu.o: ../../include/openssl/buffer.h ../../include/openssl/crypto.h
@@ -600,7 +641,8 @@ i2d_s_pu.o: ../../include/openssl/err.h ../../include/openssl/lhash.h
 i2d_s_pu.o: ../../include/openssl/obj_mac.h ../../include/openssl/objects.h
 i2d_s_pu.o: ../../include/openssl/opensslconf.h
 i2d_s_pu.o: ../../include/openssl/opensslv.h ../../include/openssl/safestack.h
-i2d_s_pu.o: ../../include/openssl/stack.h ../cryptlib.h
+i2d_s_pu.o: ../../include/openssl/stack.h ../../include/openssl/symhacks.h
+i2d_s_pu.o: ../cryptlib.h
 n_pkey.o: ../../include/openssl/asn1.h ../../include/openssl/asn1_mac.h
 n_pkey.o: ../../include/openssl/bio.h ../../include/openssl/blowfish.h
 n_pkey.o: ../../include/openssl/bn.h ../../include/openssl/buffer.h
@@ -610,14 +652,15 @@ n_pkey.o: ../../include/openssl/dsa.h ../../include/openssl/e_os.h
 n_pkey.o: ../../include/openssl/e_os2.h ../../include/openssl/err.h
 n_pkey.o: ../../include/openssl/evp.h ../../include/openssl/idea.h
 n_pkey.o: ../../include/openssl/lhash.h ../../include/openssl/md2.h
-n_pkey.o: ../../include/openssl/md5.h ../../include/openssl/mdc2.h
-n_pkey.o: ../../include/openssl/obj_mac.h ../../include/openssl/objects.h
-n_pkey.o: ../../include/openssl/opensslconf.h ../../include/openssl/opensslv.h
-n_pkey.o: ../../include/openssl/pkcs7.h ../../include/openssl/rc2.h
-n_pkey.o: ../../include/openssl/rc4.h ../../include/openssl/rc5.h
-n_pkey.o: ../../include/openssl/ripemd.h ../../include/openssl/rsa.h
-n_pkey.o: ../../include/openssl/safestack.h ../../include/openssl/sha.h
-n_pkey.o: ../../include/openssl/stack.h ../../include/openssl/x509.h
+n_pkey.o: ../../include/openssl/md4.h ../../include/openssl/md5.h
+n_pkey.o: ../../include/openssl/mdc2.h ../../include/openssl/obj_mac.h
+n_pkey.o: ../../include/openssl/objects.h ../../include/openssl/opensslconf.h
+n_pkey.o: ../../include/openssl/opensslv.h ../../include/openssl/pkcs7.h
+n_pkey.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h
+n_pkey.o: ../../include/openssl/rc5.h ../../include/openssl/ripemd.h
+n_pkey.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
+n_pkey.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
+n_pkey.o: ../../include/openssl/symhacks.h ../../include/openssl/x509.h
 n_pkey.o: ../../include/openssl/x509_vfy.h ../cryptlib.h
 nsseq.o: ../../include/openssl/asn1.h ../../include/openssl/asn1_mac.h
 nsseq.o: ../../include/openssl/bio.h ../../include/openssl/blowfish.h
@@ -627,14 +670,15 @@ nsseq.o: ../../include/openssl/des.h ../../include/openssl/dh.h
 nsseq.o: ../../include/openssl/dsa.h ../../include/openssl/e_os2.h
 nsseq.o: ../../include/openssl/err.h ../../include/openssl/evp.h
 nsseq.o: ../../include/openssl/idea.h ../../include/openssl/lhash.h
-nsseq.o: ../../include/openssl/md2.h ../../include/openssl/md5.h
-nsseq.o: ../../include/openssl/mdc2.h ../../include/openssl/obj_mac.h
-nsseq.o: ../../include/openssl/objects.h ../../include/openssl/opensslconf.h
-nsseq.o: ../../include/openssl/opensslv.h ../../include/openssl/pkcs7.h
-nsseq.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h
-nsseq.o: ../../include/openssl/rc5.h ../../include/openssl/ripemd.h
-nsseq.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
-nsseq.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
+nsseq.o: ../../include/openssl/md2.h ../../include/openssl/md4.h
+nsseq.o: ../../include/openssl/md5.h ../../include/openssl/mdc2.h
+nsseq.o: ../../include/openssl/obj_mac.h ../../include/openssl/objects.h
+nsseq.o: ../../include/openssl/opensslconf.h ../../include/openssl/opensslv.h
+nsseq.o: ../../include/openssl/pkcs7.h ../../include/openssl/rc2.h
+nsseq.o: ../../include/openssl/rc4.h ../../include/openssl/rc5.h
+nsseq.o: ../../include/openssl/ripemd.h ../../include/openssl/rsa.h
+nsseq.o: ../../include/openssl/safestack.h ../../include/openssl/sha.h
+nsseq.o: ../../include/openssl/stack.h ../../include/openssl/symhacks.h
 nsseq.o: ../../include/openssl/x509.h ../../include/openssl/x509_vfy.h
 p5_pbe.o: ../../include/openssl/asn1.h ../../include/openssl/asn1_mac.h
 p5_pbe.o: ../../include/openssl/bio.h ../../include/openssl/blowfish.h
@@ -645,14 +689,15 @@ p5_pbe.o: ../../include/openssl/dsa.h ../../include/openssl/e_os.h
 p5_pbe.o: ../../include/openssl/e_os2.h ../../include/openssl/err.h
 p5_pbe.o: ../../include/openssl/evp.h ../../include/openssl/idea.h
 p5_pbe.o: ../../include/openssl/lhash.h ../../include/openssl/md2.h
-p5_pbe.o: ../../include/openssl/md5.h ../../include/openssl/mdc2.h
-p5_pbe.o: ../../include/openssl/obj_mac.h ../../include/openssl/objects.h
-p5_pbe.o: ../../include/openssl/opensslconf.h ../../include/openssl/opensslv.h
-p5_pbe.o: ../../include/openssl/pkcs7.h ../../include/openssl/rand.h
-p5_pbe.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h
-p5_pbe.o: ../../include/openssl/rc5.h ../../include/openssl/ripemd.h
-p5_pbe.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
-p5_pbe.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
+p5_pbe.o: ../../include/openssl/md4.h ../../include/openssl/md5.h
+p5_pbe.o: ../../include/openssl/mdc2.h ../../include/openssl/obj_mac.h
+p5_pbe.o: ../../include/openssl/objects.h ../../include/openssl/opensslconf.h
+p5_pbe.o: ../../include/openssl/opensslv.h ../../include/openssl/pkcs7.h
+p5_pbe.o: ../../include/openssl/rand.h ../../include/openssl/rc2.h
+p5_pbe.o: ../../include/openssl/rc4.h ../../include/openssl/rc5.h
+p5_pbe.o: ../../include/openssl/ripemd.h ../../include/openssl/rsa.h
+p5_pbe.o: ../../include/openssl/safestack.h ../../include/openssl/sha.h
+p5_pbe.o: ../../include/openssl/stack.h ../../include/openssl/symhacks.h
 p5_pbe.o: ../../include/openssl/x509.h ../../include/openssl/x509_vfy.h
 p5_pbe.o: ../cryptlib.h
 p5_pbev2.o: ../../include/openssl/asn1.h ../../include/openssl/asn1_mac.h
@@ -664,16 +709,17 @@ p5_pbev2.o: ../../include/openssl/dsa.h ../../include/openssl/e_os.h
 p5_pbev2.o: ../../include/openssl/e_os2.h ../../include/openssl/err.h
 p5_pbev2.o: ../../include/openssl/evp.h ../../include/openssl/idea.h
 p5_pbev2.o: ../../include/openssl/lhash.h ../../include/openssl/md2.h
-p5_pbev2.o: ../../include/openssl/md5.h ../../include/openssl/mdc2.h
-p5_pbev2.o: ../../include/openssl/obj_mac.h ../../include/openssl/objects.h
-p5_pbev2.o: ../../include/openssl/opensslconf.h
+p5_pbev2.o: ../../include/openssl/md4.h ../../include/openssl/md5.h
+p5_pbev2.o: ../../include/openssl/mdc2.h ../../include/openssl/obj_mac.h
+p5_pbev2.o: ../../include/openssl/objects.h ../../include/openssl/opensslconf.h
 p5_pbev2.o: ../../include/openssl/opensslv.h ../../include/openssl/pkcs7.h
 p5_pbev2.o: ../../include/openssl/rand.h ../../include/openssl/rc2.h
 p5_pbev2.o: ../../include/openssl/rc4.h ../../include/openssl/rc5.h
 p5_pbev2.o: ../../include/openssl/ripemd.h ../../include/openssl/rsa.h
 p5_pbev2.o: ../../include/openssl/safestack.h ../../include/openssl/sha.h
-p5_pbev2.o: ../../include/openssl/stack.h ../../include/openssl/x509.h
-p5_pbev2.o: ../../include/openssl/x509_vfy.h ../cryptlib.h
+p5_pbev2.o: ../../include/openssl/stack.h ../../include/openssl/symhacks.h
+p5_pbev2.o: ../../include/openssl/x509.h ../../include/openssl/x509_vfy.h
+p5_pbev2.o: ../cryptlib.h
 p7_dgst.o: ../../include/openssl/asn1.h ../../include/openssl/asn1_mac.h
 p7_dgst.o: ../../include/openssl/bio.h ../../include/openssl/blowfish.h
 p7_dgst.o: ../../include/openssl/bn.h ../../include/openssl/buffer.h
@@ -683,14 +729,15 @@ p7_dgst.o: ../../include/openssl/dsa.h ../../include/openssl/e_os.h
 p7_dgst.o: ../../include/openssl/e_os2.h ../../include/openssl/err.h
 p7_dgst.o: ../../include/openssl/evp.h ../../include/openssl/idea.h
 p7_dgst.o: ../../include/openssl/lhash.h ../../include/openssl/md2.h
-p7_dgst.o: ../../include/openssl/md5.h ../../include/openssl/mdc2.h
-p7_dgst.o: ../../include/openssl/obj_mac.h ../../include/openssl/objects.h
-p7_dgst.o: ../../include/openssl/opensslconf.h ../../include/openssl/opensslv.h
-p7_dgst.o: ../../include/openssl/pkcs7.h ../../include/openssl/rc2.h
-p7_dgst.o: ../../include/openssl/rc4.h ../../include/openssl/rc5.h
-p7_dgst.o: ../../include/openssl/ripemd.h ../../include/openssl/rsa.h
-p7_dgst.o: ../../include/openssl/safestack.h ../../include/openssl/sha.h
-p7_dgst.o: ../../include/openssl/stack.h ../../include/openssl/x509.h
+p7_dgst.o: ../../include/openssl/md4.h ../../include/openssl/md5.h
+p7_dgst.o: ../../include/openssl/mdc2.h ../../include/openssl/obj_mac.h
+p7_dgst.o: ../../include/openssl/objects.h ../../include/openssl/opensslconf.h
+p7_dgst.o: ../../include/openssl/opensslv.h ../../include/openssl/pkcs7.h
+p7_dgst.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h
+p7_dgst.o: ../../include/openssl/rc5.h ../../include/openssl/ripemd.h
+p7_dgst.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
+p7_dgst.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
+p7_dgst.o: ../../include/openssl/symhacks.h ../../include/openssl/x509.h
 p7_dgst.o: ../../include/openssl/x509_vfy.h ../cryptlib.h
 p7_enc.o: ../../include/openssl/asn1.h ../../include/openssl/asn1_mac.h
 p7_enc.o: ../../include/openssl/bio.h ../../include/openssl/blowfish.h
@@ -701,14 +748,15 @@ p7_enc.o: ../../include/openssl/dsa.h ../../include/openssl/e_os.h
 p7_enc.o: ../../include/openssl/e_os2.h ../../include/openssl/err.h
 p7_enc.o: ../../include/openssl/evp.h ../../include/openssl/idea.h
 p7_enc.o: ../../include/openssl/lhash.h ../../include/openssl/md2.h
-p7_enc.o: ../../include/openssl/md5.h ../../include/openssl/mdc2.h
-p7_enc.o: ../../include/openssl/obj_mac.h ../../include/openssl/objects.h
-p7_enc.o: ../../include/openssl/opensslconf.h ../../include/openssl/opensslv.h
-p7_enc.o: ../../include/openssl/pkcs7.h ../../include/openssl/rc2.h
-p7_enc.o: ../../include/openssl/rc4.h ../../include/openssl/rc5.h
-p7_enc.o: ../../include/openssl/ripemd.h ../../include/openssl/rsa.h
-p7_enc.o: ../../include/openssl/safestack.h ../../include/openssl/sha.h
-p7_enc.o: ../../include/openssl/stack.h ../../include/openssl/x509.h
+p7_enc.o: ../../include/openssl/md4.h ../../include/openssl/md5.h
+p7_enc.o: ../../include/openssl/mdc2.h ../../include/openssl/obj_mac.h
+p7_enc.o: ../../include/openssl/objects.h ../../include/openssl/opensslconf.h
+p7_enc.o: ../../include/openssl/opensslv.h ../../include/openssl/pkcs7.h
+p7_enc.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h
+p7_enc.o: ../../include/openssl/rc5.h ../../include/openssl/ripemd.h
+p7_enc.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
+p7_enc.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
+p7_enc.o: ../../include/openssl/symhacks.h ../../include/openssl/x509.h
 p7_enc.o: ../../include/openssl/x509_vfy.h ../cryptlib.h
 p7_enc_c.o: ../../include/openssl/asn1.h ../../include/openssl/asn1_mac.h
 p7_enc_c.o: ../../include/openssl/bio.h ../../include/openssl/blowfish.h
@@ -719,16 +767,16 @@ p7_enc_c.o: ../../include/openssl/dsa.h ../../include/openssl/e_os.h
 p7_enc_c.o: ../../include/openssl/e_os2.h ../../include/openssl/err.h
 p7_enc_c.o: ../../include/openssl/evp.h ../../include/openssl/idea.h
 p7_enc_c.o: ../../include/openssl/lhash.h ../../include/openssl/md2.h
-p7_enc_c.o: ../../include/openssl/md5.h ../../include/openssl/mdc2.h
-p7_enc_c.o: ../../include/openssl/obj_mac.h ../../include/openssl/objects.h
-p7_enc_c.o: ../../include/openssl/opensslconf.h
+p7_enc_c.o: ../../include/openssl/md4.h ../../include/openssl/md5.h
+p7_enc_c.o: ../../include/openssl/mdc2.h ../../include/openssl/obj_mac.h
+p7_enc_c.o: ../../include/openssl/objects.h ../../include/openssl/opensslconf.h
 p7_enc_c.o: ../../include/openssl/opensslv.h ../../include/openssl/pkcs7.h
 p7_enc_c.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h
 p7_enc_c.o: ../../include/openssl/rc5.h ../../include/openssl/ripemd.h
 p7_enc_c.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
 p7_enc_c.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
-p7_enc_c.o: ../../include/openssl/x509.h ../../include/openssl/x509_vfy.h
-p7_enc_c.o: ../cryptlib.h
+p7_enc_c.o: ../../include/openssl/symhacks.h ../../include/openssl/x509.h
+p7_enc_c.o: ../../include/openssl/x509_vfy.h ../cryptlib.h
 p7_evp.o: ../../include/openssl/asn1.h ../../include/openssl/asn1_mac.h
 p7_evp.o: ../../include/openssl/bio.h ../../include/openssl/blowfish.h
 p7_evp.o: ../../include/openssl/bn.h ../../include/openssl/buffer.h
@@ -738,14 +786,15 @@ p7_evp.o: ../../include/openssl/dsa.h ../../include/openssl/e_os.h
 p7_evp.o: ../../include/openssl/e_os2.h ../../include/openssl/err.h
 p7_evp.o: ../../include/openssl/evp.h ../../include/openssl/idea.h
 p7_evp.o: ../../include/openssl/lhash.h ../../include/openssl/md2.h
-p7_evp.o: ../../include/openssl/md5.h ../../include/openssl/mdc2.h
-p7_evp.o: ../../include/openssl/obj_mac.h ../../include/openssl/objects.h
-p7_evp.o: ../../include/openssl/opensslconf.h ../../include/openssl/opensslv.h
-p7_evp.o: ../../include/openssl/pkcs7.h ../../include/openssl/rc2.h
-p7_evp.o: ../../include/openssl/rc4.h ../../include/openssl/rc5.h
-p7_evp.o: ../../include/openssl/ripemd.h ../../include/openssl/rsa.h
-p7_evp.o: ../../include/openssl/safestack.h ../../include/openssl/sha.h
-p7_evp.o: ../../include/openssl/stack.h ../../include/openssl/x509.h
+p7_evp.o: ../../include/openssl/md4.h ../../include/openssl/md5.h
+p7_evp.o: ../../include/openssl/mdc2.h ../../include/openssl/obj_mac.h
+p7_evp.o: ../../include/openssl/objects.h ../../include/openssl/opensslconf.h
+p7_evp.o: ../../include/openssl/opensslv.h ../../include/openssl/pkcs7.h
+p7_evp.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h
+p7_evp.o: ../../include/openssl/rc5.h ../../include/openssl/ripemd.h
+p7_evp.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
+p7_evp.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
+p7_evp.o: ../../include/openssl/symhacks.h ../../include/openssl/x509.h
 p7_evp.o: ../../include/openssl/x509_vfy.h ../cryptlib.h
 p7_i_s.o: ../../include/openssl/asn1.h ../../include/openssl/asn1_mac.h
 p7_i_s.o: ../../include/openssl/bio.h ../../include/openssl/blowfish.h
@@ -756,14 +805,15 @@ p7_i_s.o: ../../include/openssl/dsa.h ../../include/openssl/e_os.h
 p7_i_s.o: ../../include/openssl/e_os2.h ../../include/openssl/err.h
 p7_i_s.o: ../../include/openssl/evp.h ../../include/openssl/idea.h
 p7_i_s.o: ../../include/openssl/lhash.h ../../include/openssl/md2.h
-p7_i_s.o: ../../include/openssl/md5.h ../../include/openssl/mdc2.h
-p7_i_s.o: ../../include/openssl/obj_mac.h ../../include/openssl/objects.h
-p7_i_s.o: ../../include/openssl/opensslconf.h ../../include/openssl/opensslv.h
-p7_i_s.o: ../../include/openssl/pkcs7.h ../../include/openssl/rc2.h
-p7_i_s.o: ../../include/openssl/rc4.h ../../include/openssl/rc5.h
-p7_i_s.o: ../../include/openssl/ripemd.h ../../include/openssl/rsa.h
-p7_i_s.o: ../../include/openssl/safestack.h ../../include/openssl/sha.h
-p7_i_s.o: ../../include/openssl/stack.h ../../include/openssl/x509.h
+p7_i_s.o: ../../include/openssl/md4.h ../../include/openssl/md5.h
+p7_i_s.o: ../../include/openssl/mdc2.h ../../include/openssl/obj_mac.h
+p7_i_s.o: ../../include/openssl/objects.h ../../include/openssl/opensslconf.h
+p7_i_s.o: ../../include/openssl/opensslv.h ../../include/openssl/pkcs7.h
+p7_i_s.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h
+p7_i_s.o: ../../include/openssl/rc5.h ../../include/openssl/ripemd.h
+p7_i_s.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
+p7_i_s.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
+p7_i_s.o: ../../include/openssl/symhacks.h ../../include/openssl/x509.h
 p7_i_s.o: ../../include/openssl/x509_vfy.h ../cryptlib.h
 p7_lib.o: ../../include/openssl/asn1.h ../../include/openssl/asn1_mac.h
 p7_lib.o: ../../include/openssl/bio.h ../../include/openssl/blowfish.h
@@ -774,14 +824,15 @@ p7_lib.o: ../../include/openssl/dsa.h ../../include/openssl/e_os.h
 p7_lib.o: ../../include/openssl/e_os2.h ../../include/openssl/err.h
 p7_lib.o: ../../include/openssl/evp.h ../../include/openssl/idea.h
 p7_lib.o: ../../include/openssl/lhash.h ../../include/openssl/md2.h
-p7_lib.o: ../../include/openssl/md5.h ../../include/openssl/mdc2.h
-p7_lib.o: ../../include/openssl/obj_mac.h ../../include/openssl/objects.h
-p7_lib.o: ../../include/openssl/opensslconf.h ../../include/openssl/opensslv.h
-p7_lib.o: ../../include/openssl/pkcs7.h ../../include/openssl/rc2.h
-p7_lib.o: ../../include/openssl/rc4.h ../../include/openssl/rc5.h
-p7_lib.o: ../../include/openssl/ripemd.h ../../include/openssl/rsa.h
-p7_lib.o: ../../include/openssl/safestack.h ../../include/openssl/sha.h
-p7_lib.o: ../../include/openssl/stack.h ../../include/openssl/x509.h
+p7_lib.o: ../../include/openssl/md4.h ../../include/openssl/md5.h
+p7_lib.o: ../../include/openssl/mdc2.h ../../include/openssl/obj_mac.h
+p7_lib.o: ../../include/openssl/objects.h ../../include/openssl/opensslconf.h
+p7_lib.o: ../../include/openssl/opensslv.h ../../include/openssl/pkcs7.h
+p7_lib.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h
+p7_lib.o: ../../include/openssl/rc5.h ../../include/openssl/ripemd.h
+p7_lib.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
+p7_lib.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
+p7_lib.o: ../../include/openssl/symhacks.h ../../include/openssl/x509.h
 p7_lib.o: ../../include/openssl/x509_vfy.h ../cryptlib.h
 p7_recip.o: ../../include/openssl/asn1.h ../../include/openssl/asn1_mac.h
 p7_recip.o: ../../include/openssl/bio.h ../../include/openssl/blowfish.h
@@ -792,16 +843,16 @@ p7_recip.o: ../../include/openssl/dsa.h ../../include/openssl/e_os.h
 p7_recip.o: ../../include/openssl/e_os2.h ../../include/openssl/err.h
 p7_recip.o: ../../include/openssl/evp.h ../../include/openssl/idea.h
 p7_recip.o: ../../include/openssl/lhash.h ../../include/openssl/md2.h
-p7_recip.o: ../../include/openssl/md5.h ../../include/openssl/mdc2.h
-p7_recip.o: ../../include/openssl/obj_mac.h ../../include/openssl/objects.h
-p7_recip.o: ../../include/openssl/opensslconf.h
+p7_recip.o: ../../include/openssl/md4.h ../../include/openssl/md5.h
+p7_recip.o: ../../include/openssl/mdc2.h ../../include/openssl/obj_mac.h
+p7_recip.o: ../../include/openssl/objects.h ../../include/openssl/opensslconf.h
 p7_recip.o: ../../include/openssl/opensslv.h ../../include/openssl/pkcs7.h
 p7_recip.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h
 p7_recip.o: ../../include/openssl/rc5.h ../../include/openssl/ripemd.h
 p7_recip.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
 p7_recip.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
-p7_recip.o: ../../include/openssl/x509.h ../../include/openssl/x509_vfy.h
-p7_recip.o: ../cryptlib.h
+p7_recip.o: ../../include/openssl/symhacks.h ../../include/openssl/x509.h
+p7_recip.o: ../../include/openssl/x509_vfy.h ../cryptlib.h
 p7_s_e.o: ../../include/openssl/asn1.h ../../include/openssl/asn1_mac.h
 p7_s_e.o: ../../include/openssl/bio.h ../../include/openssl/blowfish.h
 p7_s_e.o: ../../include/openssl/bn.h ../../include/openssl/buffer.h
@@ -811,14 +862,15 @@ p7_s_e.o: ../../include/openssl/dsa.h ../../include/openssl/e_os.h
 p7_s_e.o: ../../include/openssl/e_os2.h ../../include/openssl/err.h
 p7_s_e.o: ../../include/openssl/evp.h ../../include/openssl/idea.h
 p7_s_e.o: ../../include/openssl/lhash.h ../../include/openssl/md2.h
-p7_s_e.o: ../../include/openssl/md5.h ../../include/openssl/mdc2.h
-p7_s_e.o: ../../include/openssl/obj_mac.h ../../include/openssl/objects.h
-p7_s_e.o: ../../include/openssl/opensslconf.h ../../include/openssl/opensslv.h
-p7_s_e.o: ../../include/openssl/pkcs7.h ../../include/openssl/rc2.h
-p7_s_e.o: ../../include/openssl/rc4.h ../../include/openssl/rc5.h
-p7_s_e.o: ../../include/openssl/ripemd.h ../../include/openssl/rsa.h
-p7_s_e.o: ../../include/openssl/safestack.h ../../include/openssl/sha.h
-p7_s_e.o: ../../include/openssl/stack.h ../../include/openssl/x509.h
+p7_s_e.o: ../../include/openssl/md4.h ../../include/openssl/md5.h
+p7_s_e.o: ../../include/openssl/mdc2.h ../../include/openssl/obj_mac.h
+p7_s_e.o: ../../include/openssl/objects.h ../../include/openssl/opensslconf.h
+p7_s_e.o: ../../include/openssl/opensslv.h ../../include/openssl/pkcs7.h
+p7_s_e.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h
+p7_s_e.o: ../../include/openssl/rc5.h ../../include/openssl/ripemd.h
+p7_s_e.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
+p7_s_e.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
+p7_s_e.o: ../../include/openssl/symhacks.h ../../include/openssl/x509.h
 p7_s_e.o: ../../include/openssl/x509_vfy.h ../cryptlib.h
 p7_signd.o: ../../include/openssl/asn1.h ../../include/openssl/asn1_mac.h
 p7_signd.o: ../../include/openssl/bio.h ../../include/openssl/blowfish.h
@@ -829,16 +881,16 @@ p7_signd.o: ../../include/openssl/dsa.h ../../include/openssl/e_os.h
 p7_signd.o: ../../include/openssl/e_os2.h ../../include/openssl/err.h
 p7_signd.o: ../../include/openssl/evp.h ../../include/openssl/idea.h
 p7_signd.o: ../../include/openssl/lhash.h ../../include/openssl/md2.h
-p7_signd.o: ../../include/openssl/md5.h ../../include/openssl/mdc2.h
-p7_signd.o: ../../include/openssl/obj_mac.h ../../include/openssl/objects.h
-p7_signd.o: ../../include/openssl/opensslconf.h
+p7_signd.o: ../../include/openssl/md4.h ../../include/openssl/md5.h
+p7_signd.o: ../../include/openssl/mdc2.h ../../include/openssl/obj_mac.h
+p7_signd.o: ../../include/openssl/objects.h ../../include/openssl/opensslconf.h
 p7_signd.o: ../../include/openssl/opensslv.h ../../include/openssl/pkcs7.h
 p7_signd.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h
 p7_signd.o: ../../include/openssl/rc5.h ../../include/openssl/ripemd.h
 p7_signd.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
 p7_signd.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
-p7_signd.o: ../../include/openssl/x509.h ../../include/openssl/x509_vfy.h
-p7_signd.o: ../cryptlib.h
+p7_signd.o: ../../include/openssl/symhacks.h ../../include/openssl/x509.h
+p7_signd.o: ../../include/openssl/x509_vfy.h ../cryptlib.h
 p7_signi.o: ../../include/openssl/asn1.h ../../include/openssl/asn1_mac.h
 p7_signi.o: ../../include/openssl/bio.h ../../include/openssl/blowfish.h
 p7_signi.o: ../../include/openssl/bn.h ../../include/openssl/buffer.h
@@ -848,16 +900,16 @@ p7_signi.o: ../../include/openssl/dsa.h ../../include/openssl/e_os.h
 p7_signi.o: ../../include/openssl/e_os2.h ../../include/openssl/err.h
 p7_signi.o: ../../include/openssl/evp.h ../../include/openssl/idea.h
 p7_signi.o: ../../include/openssl/lhash.h ../../include/openssl/md2.h
-p7_signi.o: ../../include/openssl/md5.h ../../include/openssl/mdc2.h
-p7_signi.o: ../../include/openssl/obj_mac.h ../../include/openssl/objects.h
-p7_signi.o: ../../include/openssl/opensslconf.h
+p7_signi.o: ../../include/openssl/md4.h ../../include/openssl/md5.h
+p7_signi.o: ../../include/openssl/mdc2.h ../../include/openssl/obj_mac.h
+p7_signi.o: ../../include/openssl/objects.h ../../include/openssl/opensslconf.h
 p7_signi.o: ../../include/openssl/opensslv.h ../../include/openssl/pkcs7.h
 p7_signi.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h
 p7_signi.o: ../../include/openssl/rc5.h ../../include/openssl/ripemd.h
 p7_signi.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
 p7_signi.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
-p7_signi.o: ../../include/openssl/x509.h ../../include/openssl/x509_vfy.h
-p7_signi.o: ../cryptlib.h
+p7_signi.o: ../../include/openssl/symhacks.h ../../include/openssl/x509.h
+p7_signi.o: ../../include/openssl/x509_vfy.h ../cryptlib.h
 p8_pkey.o: ../../include/openssl/asn1.h ../../include/openssl/asn1_mac.h
 p8_pkey.o: ../../include/openssl/bio.h ../../include/openssl/blowfish.h
 p8_pkey.o: ../../include/openssl/bn.h ../../include/openssl/buffer.h
@@ -867,14 +919,15 @@ p8_pkey.o: ../../include/openssl/dsa.h ../../include/openssl/e_os.h
 p8_pkey.o: ../../include/openssl/e_os2.h ../../include/openssl/err.h
 p8_pkey.o: ../../include/openssl/evp.h ../../include/openssl/idea.h
 p8_pkey.o: ../../include/openssl/lhash.h ../../include/openssl/md2.h
-p8_pkey.o: ../../include/openssl/md5.h ../../include/openssl/mdc2.h
-p8_pkey.o: ../../include/openssl/obj_mac.h ../../include/openssl/objects.h
-p8_pkey.o: ../../include/openssl/opensslconf.h ../../include/openssl/opensslv.h
-p8_pkey.o: ../../include/openssl/pkcs7.h ../../include/openssl/rc2.h
-p8_pkey.o: ../../include/openssl/rc4.h ../../include/openssl/rc5.h
-p8_pkey.o: ../../include/openssl/ripemd.h ../../include/openssl/rsa.h
-p8_pkey.o: ../../include/openssl/safestack.h ../../include/openssl/sha.h
-p8_pkey.o: ../../include/openssl/stack.h ../../include/openssl/x509.h
+p8_pkey.o: ../../include/openssl/md4.h ../../include/openssl/md5.h
+p8_pkey.o: ../../include/openssl/mdc2.h ../../include/openssl/obj_mac.h
+p8_pkey.o: ../../include/openssl/objects.h ../../include/openssl/opensslconf.h
+p8_pkey.o: ../../include/openssl/opensslv.h ../../include/openssl/pkcs7.h
+p8_pkey.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h
+p8_pkey.o: ../../include/openssl/rc5.h ../../include/openssl/ripemd.h
+p8_pkey.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
+p8_pkey.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
+p8_pkey.o: ../../include/openssl/symhacks.h ../../include/openssl/x509.h
 p8_pkey.o: ../../include/openssl/x509_vfy.h ../cryptlib.h
 t_bitst.o: ../../include/openssl/asn1.h ../../include/openssl/bio.h
 t_bitst.o: ../../include/openssl/blowfish.h ../../include/openssl/bn.h
@@ -885,14 +938,15 @@ t_bitst.o: ../../include/openssl/dsa.h ../../include/openssl/e_os.h
 t_bitst.o: ../../include/openssl/e_os.h ../../include/openssl/e_os2.h
 t_bitst.o: ../../include/openssl/err.h ../../include/openssl/evp.h
 t_bitst.o: ../../include/openssl/idea.h ../../include/openssl/lhash.h
-t_bitst.o: ../../include/openssl/md2.h ../../include/openssl/md5.h
-t_bitst.o: ../../include/openssl/mdc2.h ../../include/openssl/obj_mac.h
-t_bitst.o: ../../include/openssl/objects.h ../../include/openssl/opensslconf.h
-t_bitst.o: ../../include/openssl/opensslv.h ../../include/openssl/pkcs7.h
-t_bitst.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h
-t_bitst.o: ../../include/openssl/rc5.h ../../include/openssl/ripemd.h
-t_bitst.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
-t_bitst.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
+t_bitst.o: ../../include/openssl/md2.h ../../include/openssl/md4.h
+t_bitst.o: ../../include/openssl/md5.h ../../include/openssl/mdc2.h
+t_bitst.o: ../../include/openssl/obj_mac.h ../../include/openssl/objects.h
+t_bitst.o: ../../include/openssl/opensslconf.h ../../include/openssl/opensslv.h
+t_bitst.o: ../../include/openssl/pkcs7.h ../../include/openssl/rc2.h
+t_bitst.o: ../../include/openssl/rc4.h ../../include/openssl/rc5.h
+t_bitst.o: ../../include/openssl/ripemd.h ../../include/openssl/rsa.h
+t_bitst.o: ../../include/openssl/safestack.h ../../include/openssl/sha.h
+t_bitst.o: ../../include/openssl/stack.h ../../include/openssl/symhacks.h
 t_bitst.o: ../../include/openssl/x509.h ../../include/openssl/x509_vfy.h
 t_bitst.o: ../../include/openssl/x509v3.h ../cryptlib.h
 t_crl.o: ../../include/openssl/asn1.h ../../include/openssl/bio.h
@@ -904,14 +958,15 @@ t_crl.o: ../../include/openssl/dsa.h ../../include/openssl/e_os.h
 t_crl.o: ../../include/openssl/e_os.h ../../include/openssl/e_os2.h
 t_crl.o: ../../include/openssl/err.h ../../include/openssl/evp.h
 t_crl.o: ../../include/openssl/idea.h ../../include/openssl/lhash.h
-t_crl.o: ../../include/openssl/md2.h ../../include/openssl/md5.h
-t_crl.o: ../../include/openssl/mdc2.h ../../include/openssl/obj_mac.h
-t_crl.o: ../../include/openssl/objects.h ../../include/openssl/opensslconf.h
-t_crl.o: ../../include/openssl/opensslv.h ../../include/openssl/pkcs7.h
-t_crl.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h
-t_crl.o: ../../include/openssl/rc5.h ../../include/openssl/ripemd.h
-t_crl.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
-t_crl.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
+t_crl.o: ../../include/openssl/md2.h ../../include/openssl/md4.h
+t_crl.o: ../../include/openssl/md5.h ../../include/openssl/mdc2.h
+t_crl.o: ../../include/openssl/obj_mac.h ../../include/openssl/objects.h
+t_crl.o: ../../include/openssl/opensslconf.h ../../include/openssl/opensslv.h
+t_crl.o: ../../include/openssl/pkcs7.h ../../include/openssl/rc2.h
+t_crl.o: ../../include/openssl/rc4.h ../../include/openssl/rc5.h
+t_crl.o: ../../include/openssl/ripemd.h ../../include/openssl/rsa.h
+t_crl.o: ../../include/openssl/safestack.h ../../include/openssl/sha.h
+t_crl.o: ../../include/openssl/stack.h ../../include/openssl/symhacks.h
 t_crl.o: ../../include/openssl/x509.h ../../include/openssl/x509_vfy.h
 t_crl.o: ../../include/openssl/x509v3.h ../cryptlib.h
 t_pkey.o: ../../include/openssl/bio.h ../../include/openssl/bn.h
@@ -921,7 +976,8 @@ t_pkey.o: ../../include/openssl/e_os.h ../../include/openssl/e_os2.h
 t_pkey.o: ../../include/openssl/err.h ../../include/openssl/lhash.h
 t_pkey.o: ../../include/openssl/opensslconf.h ../../include/openssl/opensslv.h
 t_pkey.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
-t_pkey.o: ../../include/openssl/stack.h ../cryptlib.h
+t_pkey.o: ../../include/openssl/stack.h ../../include/openssl/symhacks.h
+t_pkey.o: ../cryptlib.h
 t_req.o: ../../include/openssl/asn1.h ../../include/openssl/bio.h
 t_req.o: ../../include/openssl/blowfish.h ../../include/openssl/bn.h
 t_req.o: ../../include/openssl/buffer.h ../../include/openssl/cast.h
@@ -931,14 +987,15 @@ t_req.o: ../../include/openssl/dsa.h ../../include/openssl/e_os.h
 t_req.o: ../../include/openssl/e_os.h ../../include/openssl/e_os2.h
 t_req.o: ../../include/openssl/err.h ../../include/openssl/evp.h
 t_req.o: ../../include/openssl/idea.h ../../include/openssl/lhash.h
-t_req.o: ../../include/openssl/md2.h ../../include/openssl/md5.h
-t_req.o: ../../include/openssl/mdc2.h ../../include/openssl/obj_mac.h
-t_req.o: ../../include/openssl/objects.h ../../include/openssl/opensslconf.h
-t_req.o: ../../include/openssl/opensslv.h ../../include/openssl/pkcs7.h
-t_req.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h
-t_req.o: ../../include/openssl/rc5.h ../../include/openssl/ripemd.h
-t_req.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
-t_req.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
+t_req.o: ../../include/openssl/md2.h ../../include/openssl/md4.h
+t_req.o: ../../include/openssl/md5.h ../../include/openssl/mdc2.h
+t_req.o: ../../include/openssl/obj_mac.h ../../include/openssl/objects.h
+t_req.o: ../../include/openssl/opensslconf.h ../../include/openssl/opensslv.h
+t_req.o: ../../include/openssl/pkcs7.h ../../include/openssl/rc2.h
+t_req.o: ../../include/openssl/rc4.h ../../include/openssl/rc5.h
+t_req.o: ../../include/openssl/ripemd.h ../../include/openssl/rsa.h
+t_req.o: ../../include/openssl/safestack.h ../../include/openssl/sha.h
+t_req.o: ../../include/openssl/stack.h ../../include/openssl/symhacks.h
 t_req.o: ../../include/openssl/x509.h ../../include/openssl/x509_vfy.h
 t_req.o: ../../include/openssl/x509v3.h ../cryptlib.h
 t_spki.o: ../../include/openssl/asn1.h ../../include/openssl/asn1_mac.h
@@ -950,14 +1007,15 @@ t_spki.o: ../../include/openssl/dsa.h ../../include/openssl/e_os.h
 t_spki.o: ../../include/openssl/e_os2.h ../../include/openssl/err.h
 t_spki.o: ../../include/openssl/evp.h ../../include/openssl/idea.h
 t_spki.o: ../../include/openssl/lhash.h ../../include/openssl/md2.h
-t_spki.o: ../../include/openssl/md5.h ../../include/openssl/mdc2.h
-t_spki.o: ../../include/openssl/obj_mac.h ../../include/openssl/objects.h
-t_spki.o: ../../include/openssl/opensslconf.h ../../include/openssl/opensslv.h
-t_spki.o: ../../include/openssl/pkcs7.h ../../include/openssl/rc2.h
-t_spki.o: ../../include/openssl/rc4.h ../../include/openssl/rc5.h
-t_spki.o: ../../include/openssl/ripemd.h ../../include/openssl/rsa.h
-t_spki.o: ../../include/openssl/safestack.h ../../include/openssl/sha.h
-t_spki.o: ../../include/openssl/stack.h ../../include/openssl/x509.h
+t_spki.o: ../../include/openssl/md4.h ../../include/openssl/md5.h
+t_spki.o: ../../include/openssl/mdc2.h ../../include/openssl/obj_mac.h
+t_spki.o: ../../include/openssl/objects.h ../../include/openssl/opensslconf.h
+t_spki.o: ../../include/openssl/opensslv.h ../../include/openssl/pkcs7.h
+t_spki.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h
+t_spki.o: ../../include/openssl/rc5.h ../../include/openssl/ripemd.h
+t_spki.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
+t_spki.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
+t_spki.o: ../../include/openssl/symhacks.h ../../include/openssl/x509.h
 t_spki.o: ../../include/openssl/x509_vfy.h ../cryptlib.h
 t_x509.o: ../../include/openssl/asn1.h ../../include/openssl/bio.h
 t_x509.o: ../../include/openssl/blowfish.h ../../include/openssl/bn.h
@@ -968,14 +1026,15 @@ t_x509.o: ../../include/openssl/dsa.h ../../include/openssl/e_os.h
 t_x509.o: ../../include/openssl/e_os.h ../../include/openssl/e_os2.h
 t_x509.o: ../../include/openssl/err.h ../../include/openssl/evp.h
 t_x509.o: ../../include/openssl/idea.h ../../include/openssl/lhash.h
-t_x509.o: ../../include/openssl/md2.h ../../include/openssl/md5.h
-t_x509.o: ../../include/openssl/mdc2.h ../../include/openssl/obj_mac.h
-t_x509.o: ../../include/openssl/objects.h ../../include/openssl/opensslconf.h
-t_x509.o: ../../include/openssl/opensslv.h ../../include/openssl/pkcs7.h
-t_x509.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h
-t_x509.o: ../../include/openssl/rc5.h ../../include/openssl/ripemd.h
-t_x509.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
-t_x509.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
+t_x509.o: ../../include/openssl/md2.h ../../include/openssl/md4.h
+t_x509.o: ../../include/openssl/md5.h ../../include/openssl/mdc2.h
+t_x509.o: ../../include/openssl/obj_mac.h ../../include/openssl/objects.h
+t_x509.o: ../../include/openssl/opensslconf.h ../../include/openssl/opensslv.h
+t_x509.o: ../../include/openssl/pkcs7.h ../../include/openssl/rc2.h
+t_x509.o: ../../include/openssl/rc4.h ../../include/openssl/rc5.h
+t_x509.o: ../../include/openssl/ripemd.h ../../include/openssl/rsa.h
+t_x509.o: ../../include/openssl/safestack.h ../../include/openssl/sha.h
+t_x509.o: ../../include/openssl/stack.h ../../include/openssl/symhacks.h
 t_x509.o: ../../include/openssl/x509.h ../../include/openssl/x509_vfy.h
 t_x509.o: ../../include/openssl/x509v3.h ../cryptlib.h
 t_x509a.o: ../../include/openssl/asn1.h ../../include/openssl/asn1_mac.h
@@ -987,14 +1046,15 @@ t_x509a.o: ../../include/openssl/dsa.h ../../include/openssl/e_os.h
 t_x509a.o: ../../include/openssl/e_os2.h ../../include/openssl/err.h
 t_x509a.o: ../../include/openssl/evp.h ../../include/openssl/idea.h
 t_x509a.o: ../../include/openssl/lhash.h ../../include/openssl/md2.h
-t_x509a.o: ../../include/openssl/md5.h ../../include/openssl/mdc2.h
-t_x509a.o: ../../include/openssl/obj_mac.h ../../include/openssl/objects.h
-t_x509a.o: ../../include/openssl/opensslconf.h ../../include/openssl/opensslv.h
-t_x509a.o: ../../include/openssl/pkcs7.h ../../include/openssl/rc2.h
-t_x509a.o: ../../include/openssl/rc4.h ../../include/openssl/rc5.h
-t_x509a.o: ../../include/openssl/ripemd.h ../../include/openssl/rsa.h
-t_x509a.o: ../../include/openssl/safestack.h ../../include/openssl/sha.h
-t_x509a.o: ../../include/openssl/stack.h ../../include/openssl/x509.h
+t_x509a.o: ../../include/openssl/md4.h ../../include/openssl/md5.h
+t_x509a.o: ../../include/openssl/mdc2.h ../../include/openssl/obj_mac.h
+t_x509a.o: ../../include/openssl/objects.h ../../include/openssl/opensslconf.h
+t_x509a.o: ../../include/openssl/opensslv.h ../../include/openssl/pkcs7.h
+t_x509a.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h
+t_x509a.o: ../../include/openssl/rc5.h ../../include/openssl/ripemd.h
+t_x509a.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
+t_x509a.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
+t_x509a.o: ../../include/openssl/symhacks.h ../../include/openssl/x509.h
 t_x509a.o: ../../include/openssl/x509_vfy.h ../cryptlib.h
 x_algor.o: ../../include/openssl/asn1.h ../../include/openssl/asn1_mac.h
 x_algor.o: ../../include/openssl/bio.h ../../include/openssl/blowfish.h
@@ -1005,14 +1065,15 @@ x_algor.o: ../../include/openssl/dsa.h ../../include/openssl/e_os.h
 x_algor.o: ../../include/openssl/e_os2.h ../../include/openssl/err.h
 x_algor.o: ../../include/openssl/evp.h ../../include/openssl/idea.h
 x_algor.o: ../../include/openssl/lhash.h ../../include/openssl/md2.h
-x_algor.o: ../../include/openssl/md5.h ../../include/openssl/mdc2.h
-x_algor.o: ../../include/openssl/obj_mac.h ../../include/openssl/objects.h
-x_algor.o: ../../include/openssl/opensslconf.h ../../include/openssl/opensslv.h
-x_algor.o: ../../include/openssl/pkcs7.h ../../include/openssl/rc2.h
-x_algor.o: ../../include/openssl/rc4.h ../../include/openssl/rc5.h
-x_algor.o: ../../include/openssl/ripemd.h ../../include/openssl/rsa.h
-x_algor.o: ../../include/openssl/safestack.h ../../include/openssl/sha.h
-x_algor.o: ../../include/openssl/stack.h ../../include/openssl/x509.h
+x_algor.o: ../../include/openssl/md4.h ../../include/openssl/md5.h
+x_algor.o: ../../include/openssl/mdc2.h ../../include/openssl/obj_mac.h
+x_algor.o: ../../include/openssl/objects.h ../../include/openssl/opensslconf.h
+x_algor.o: ../../include/openssl/opensslv.h ../../include/openssl/pkcs7.h
+x_algor.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h
+x_algor.o: ../../include/openssl/rc5.h ../../include/openssl/ripemd.h
+x_algor.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
+x_algor.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
+x_algor.o: ../../include/openssl/symhacks.h ../../include/openssl/x509.h
 x_algor.o: ../../include/openssl/x509_vfy.h ../cryptlib.h
 x_attrib.o: ../../include/openssl/asn1.h ../../include/openssl/asn1_mac.h
 x_attrib.o: ../../include/openssl/bio.h ../../include/openssl/blowfish.h
@@ -1023,16 +1084,16 @@ x_attrib.o: ../../include/openssl/dsa.h ../../include/openssl/e_os.h
 x_attrib.o: ../../include/openssl/e_os2.h ../../include/openssl/err.h
 x_attrib.o: ../../include/openssl/evp.h ../../include/openssl/idea.h
 x_attrib.o: ../../include/openssl/lhash.h ../../include/openssl/md2.h
-x_attrib.o: ../../include/openssl/md5.h ../../include/openssl/mdc2.h
-x_attrib.o: ../../include/openssl/obj_mac.h ../../include/openssl/objects.h
-x_attrib.o: ../../include/openssl/opensslconf.h
+x_attrib.o: ../../include/openssl/md4.h ../../include/openssl/md5.h
+x_attrib.o: ../../include/openssl/mdc2.h ../../include/openssl/obj_mac.h
+x_attrib.o: ../../include/openssl/objects.h ../../include/openssl/opensslconf.h
 x_attrib.o: ../../include/openssl/opensslv.h ../../include/openssl/pkcs7.h
 x_attrib.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h
 x_attrib.o: ../../include/openssl/rc5.h ../../include/openssl/ripemd.h
 x_attrib.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
 x_attrib.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
-x_attrib.o: ../../include/openssl/x509.h ../../include/openssl/x509_vfy.h
-x_attrib.o: ../cryptlib.h
+x_attrib.o: ../../include/openssl/symhacks.h ../../include/openssl/x509.h
+x_attrib.o: ../../include/openssl/x509_vfy.h ../cryptlib.h
 x_cinf.o: ../../include/openssl/asn1.h ../../include/openssl/asn1_mac.h
 x_cinf.o: ../../include/openssl/bio.h ../../include/openssl/blowfish.h
 x_cinf.o: ../../include/openssl/bn.h ../../include/openssl/buffer.h
@@ -1042,14 +1103,15 @@ x_cinf.o: ../../include/openssl/dsa.h ../../include/openssl/e_os.h
 x_cinf.o: ../../include/openssl/e_os2.h ../../include/openssl/err.h
 x_cinf.o: ../../include/openssl/evp.h ../../include/openssl/idea.h
 x_cinf.o: ../../include/openssl/lhash.h ../../include/openssl/md2.h
-x_cinf.o: ../../include/openssl/md5.h ../../include/openssl/mdc2.h
-x_cinf.o: ../../include/openssl/obj_mac.h ../../include/openssl/objects.h
-x_cinf.o: ../../include/openssl/opensslconf.h ../../include/openssl/opensslv.h
-x_cinf.o: ../../include/openssl/pkcs7.h ../../include/openssl/rc2.h
-x_cinf.o: ../../include/openssl/rc4.h ../../include/openssl/rc5.h
-x_cinf.o: ../../include/openssl/ripemd.h ../../include/openssl/rsa.h
-x_cinf.o: ../../include/openssl/safestack.h ../../include/openssl/sha.h
-x_cinf.o: ../../include/openssl/stack.h ../../include/openssl/x509.h
+x_cinf.o: ../../include/openssl/md4.h ../../include/openssl/md5.h
+x_cinf.o: ../../include/openssl/mdc2.h ../../include/openssl/obj_mac.h
+x_cinf.o: ../../include/openssl/objects.h ../../include/openssl/opensslconf.h
+x_cinf.o: ../../include/openssl/opensslv.h ../../include/openssl/pkcs7.h
+x_cinf.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h
+x_cinf.o: ../../include/openssl/rc5.h ../../include/openssl/ripemd.h
+x_cinf.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
+x_cinf.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
+x_cinf.o: ../../include/openssl/symhacks.h ../../include/openssl/x509.h
 x_cinf.o: ../../include/openssl/x509_vfy.h ../cryptlib.h
 x_crl.o: ../../include/openssl/asn1.h ../../include/openssl/asn1_mac.h
 x_crl.o: ../../include/openssl/bio.h ../../include/openssl/blowfish.h
@@ -1060,14 +1122,15 @@ x_crl.o: ../../include/openssl/dsa.h ../../include/openssl/e_os.h
 x_crl.o: ../../include/openssl/e_os2.h ../../include/openssl/err.h
 x_crl.o: ../../include/openssl/evp.h ../../include/openssl/idea.h
 x_crl.o: ../../include/openssl/lhash.h ../../include/openssl/md2.h
-x_crl.o: ../../include/openssl/md5.h ../../include/openssl/mdc2.h
-x_crl.o: ../../include/openssl/obj_mac.h ../../include/openssl/objects.h
-x_crl.o: ../../include/openssl/opensslconf.h ../../include/openssl/opensslv.h
-x_crl.o: ../../include/openssl/pkcs7.h ../../include/openssl/rc2.h
-x_crl.o: ../../include/openssl/rc4.h ../../include/openssl/rc5.h
-x_crl.o: ../../include/openssl/ripemd.h ../../include/openssl/rsa.h
-x_crl.o: ../../include/openssl/safestack.h ../../include/openssl/sha.h
-x_crl.o: ../../include/openssl/stack.h ../../include/openssl/x509.h
+x_crl.o: ../../include/openssl/md4.h ../../include/openssl/md5.h
+x_crl.o: ../../include/openssl/mdc2.h ../../include/openssl/obj_mac.h
+x_crl.o: ../../include/openssl/objects.h ../../include/openssl/opensslconf.h
+x_crl.o: ../../include/openssl/opensslv.h ../../include/openssl/pkcs7.h
+x_crl.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h
+x_crl.o: ../../include/openssl/rc5.h ../../include/openssl/ripemd.h
+x_crl.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
+x_crl.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
+x_crl.o: ../../include/openssl/symhacks.h ../../include/openssl/x509.h
 x_crl.o: ../../include/openssl/x509_vfy.h ../cryptlib.h
 x_exten.o: ../../include/openssl/asn1.h ../../include/openssl/asn1_mac.h
 x_exten.o: ../../include/openssl/bio.h ../../include/openssl/blowfish.h
@@ -1078,14 +1141,15 @@ x_exten.o: ../../include/openssl/dsa.h ../../include/openssl/e_os.h
 x_exten.o: ../../include/openssl/e_os2.h ../../include/openssl/err.h
 x_exten.o: ../../include/openssl/evp.h ../../include/openssl/idea.h
 x_exten.o: ../../include/openssl/lhash.h ../../include/openssl/md2.h
-x_exten.o: ../../include/openssl/md5.h ../../include/openssl/mdc2.h
-x_exten.o: ../../include/openssl/obj_mac.h ../../include/openssl/objects.h
-x_exten.o: ../../include/openssl/opensslconf.h ../../include/openssl/opensslv.h
-x_exten.o: ../../include/openssl/pkcs7.h ../../include/openssl/rc2.h
-x_exten.o: ../../include/openssl/rc4.h ../../include/openssl/rc5.h
-x_exten.o: ../../include/openssl/ripemd.h ../../include/openssl/rsa.h
-x_exten.o: ../../include/openssl/safestack.h ../../include/openssl/sha.h
-x_exten.o: ../../include/openssl/stack.h ../../include/openssl/x509.h
+x_exten.o: ../../include/openssl/md4.h ../../include/openssl/md5.h
+x_exten.o: ../../include/openssl/mdc2.h ../../include/openssl/obj_mac.h
+x_exten.o: ../../include/openssl/objects.h ../../include/openssl/opensslconf.h
+x_exten.o: ../../include/openssl/opensslv.h ../../include/openssl/pkcs7.h
+x_exten.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h
+x_exten.o: ../../include/openssl/rc5.h ../../include/openssl/ripemd.h
+x_exten.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
+x_exten.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
+x_exten.o: ../../include/openssl/symhacks.h ../../include/openssl/x509.h
 x_exten.o: ../../include/openssl/x509_vfy.h ../cryptlib.h
 x_info.o: ../../include/openssl/asn1.h ../../include/openssl/asn1_mac.h
 x_info.o: ../../include/openssl/bio.h ../../include/openssl/blowfish.h
@@ -1096,14 +1160,15 @@ x_info.o: ../../include/openssl/dsa.h ../../include/openssl/e_os.h
 x_info.o: ../../include/openssl/e_os2.h ../../include/openssl/err.h
 x_info.o: ../../include/openssl/evp.h ../../include/openssl/idea.h
 x_info.o: ../../include/openssl/lhash.h ../../include/openssl/md2.h
-x_info.o: ../../include/openssl/md5.h ../../include/openssl/mdc2.h
-x_info.o: ../../include/openssl/obj_mac.h ../../include/openssl/objects.h
-x_info.o: ../../include/openssl/opensslconf.h ../../include/openssl/opensslv.h
-x_info.o: ../../include/openssl/pkcs7.h ../../include/openssl/rc2.h
-x_info.o: ../../include/openssl/rc4.h ../../include/openssl/rc5.h
-x_info.o: ../../include/openssl/ripemd.h ../../include/openssl/rsa.h
-x_info.o: ../../include/openssl/safestack.h ../../include/openssl/sha.h
-x_info.o: ../../include/openssl/stack.h ../../include/openssl/x509.h
+x_info.o: ../../include/openssl/md4.h ../../include/openssl/md5.h
+x_info.o: ../../include/openssl/mdc2.h ../../include/openssl/obj_mac.h
+x_info.o: ../../include/openssl/objects.h ../../include/openssl/opensslconf.h
+x_info.o: ../../include/openssl/opensslv.h ../../include/openssl/pkcs7.h
+x_info.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h
+x_info.o: ../../include/openssl/rc5.h ../../include/openssl/ripemd.h
+x_info.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
+x_info.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
+x_info.o: ../../include/openssl/symhacks.h ../../include/openssl/x509.h
 x_info.o: ../../include/openssl/x509_vfy.h ../cryptlib.h
 x_name.o: ../../include/openssl/asn1.h ../../include/openssl/asn1_mac.h
 x_name.o: ../../include/openssl/bio.h ../../include/openssl/blowfish.h
@@ -1114,14 +1179,15 @@ x_name.o: ../../include/openssl/dsa.h ../../include/openssl/e_os.h
 x_name.o: ../../include/openssl/e_os2.h ../../include/openssl/err.h
 x_name.o: ../../include/openssl/evp.h ../../include/openssl/idea.h
 x_name.o: ../../include/openssl/lhash.h ../../include/openssl/md2.h
-x_name.o: ../../include/openssl/md5.h ../../include/openssl/mdc2.h
-x_name.o: ../../include/openssl/obj_mac.h ../../include/openssl/objects.h
-x_name.o: ../../include/openssl/opensslconf.h ../../include/openssl/opensslv.h
-x_name.o: ../../include/openssl/pkcs7.h ../../include/openssl/rc2.h
-x_name.o: ../../include/openssl/rc4.h ../../include/openssl/rc5.h
-x_name.o: ../../include/openssl/ripemd.h ../../include/openssl/rsa.h
-x_name.o: ../../include/openssl/safestack.h ../../include/openssl/sha.h
-x_name.o: ../../include/openssl/stack.h ../../include/openssl/x509.h
+x_name.o: ../../include/openssl/md4.h ../../include/openssl/md5.h
+x_name.o: ../../include/openssl/mdc2.h ../../include/openssl/obj_mac.h
+x_name.o: ../../include/openssl/objects.h ../../include/openssl/opensslconf.h
+x_name.o: ../../include/openssl/opensslv.h ../../include/openssl/pkcs7.h
+x_name.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h
+x_name.o: ../../include/openssl/rc5.h ../../include/openssl/ripemd.h
+x_name.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
+x_name.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
+x_name.o: ../../include/openssl/symhacks.h ../../include/openssl/x509.h
 x_name.o: ../../include/openssl/x509_vfy.h ../cryptlib.h
 x_pkey.o: ../../include/openssl/asn1.h ../../include/openssl/asn1_mac.h
 x_pkey.o: ../../include/openssl/bio.h ../../include/openssl/blowfish.h
@@ -1132,14 +1198,15 @@ x_pkey.o: ../../include/openssl/dsa.h ../../include/openssl/e_os.h
 x_pkey.o: ../../include/openssl/e_os2.h ../../include/openssl/err.h
 x_pkey.o: ../../include/openssl/evp.h ../../include/openssl/idea.h
 x_pkey.o: ../../include/openssl/lhash.h ../../include/openssl/md2.h
-x_pkey.o: ../../include/openssl/md5.h ../../include/openssl/mdc2.h
-x_pkey.o: ../../include/openssl/obj_mac.h ../../include/openssl/objects.h
-x_pkey.o: ../../include/openssl/opensslconf.h ../../include/openssl/opensslv.h
-x_pkey.o: ../../include/openssl/pkcs7.h ../../include/openssl/rc2.h
-x_pkey.o: ../../include/openssl/rc4.h ../../include/openssl/rc5.h
-x_pkey.o: ../../include/openssl/ripemd.h ../../include/openssl/rsa.h
-x_pkey.o: ../../include/openssl/safestack.h ../../include/openssl/sha.h
-x_pkey.o: ../../include/openssl/stack.h ../../include/openssl/x509.h
+x_pkey.o: ../../include/openssl/md4.h ../../include/openssl/md5.h
+x_pkey.o: ../../include/openssl/mdc2.h ../../include/openssl/obj_mac.h
+x_pkey.o: ../../include/openssl/objects.h ../../include/openssl/opensslconf.h
+x_pkey.o: ../../include/openssl/opensslv.h ../../include/openssl/pkcs7.h
+x_pkey.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h
+x_pkey.o: ../../include/openssl/rc5.h ../../include/openssl/ripemd.h
+x_pkey.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
+x_pkey.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
+x_pkey.o: ../../include/openssl/symhacks.h ../../include/openssl/x509.h
 x_pkey.o: ../../include/openssl/x509_vfy.h ../cryptlib.h
 x_pubkey.o: ../../include/openssl/asn1.h ../../include/openssl/asn1_mac.h
 x_pubkey.o: ../../include/openssl/bio.h ../../include/openssl/blowfish.h
@@ -1150,16 +1217,16 @@ x_pubkey.o: ../../include/openssl/dsa.h ../../include/openssl/e_os.h
 x_pubkey.o: ../../include/openssl/e_os2.h ../../include/openssl/err.h
 x_pubkey.o: ../../include/openssl/evp.h ../../include/openssl/idea.h
 x_pubkey.o: ../../include/openssl/lhash.h ../../include/openssl/md2.h
-x_pubkey.o: ../../include/openssl/md5.h ../../include/openssl/mdc2.h
-x_pubkey.o: ../../include/openssl/obj_mac.h ../../include/openssl/objects.h
-x_pubkey.o: ../../include/openssl/opensslconf.h
+x_pubkey.o: ../../include/openssl/md4.h ../../include/openssl/md5.h
+x_pubkey.o: ../../include/openssl/mdc2.h ../../include/openssl/obj_mac.h
+x_pubkey.o: ../../include/openssl/objects.h ../../include/openssl/opensslconf.h
 x_pubkey.o: ../../include/openssl/opensslv.h ../../include/openssl/pkcs7.h
 x_pubkey.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h
 x_pubkey.o: ../../include/openssl/rc5.h ../../include/openssl/ripemd.h
 x_pubkey.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
 x_pubkey.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
-x_pubkey.o: ../../include/openssl/x509.h ../../include/openssl/x509_vfy.h
-x_pubkey.o: ../cryptlib.h
+x_pubkey.o: ../../include/openssl/symhacks.h ../../include/openssl/x509.h
+x_pubkey.o: ../../include/openssl/x509_vfy.h ../cryptlib.h
 x_req.o: ../../include/openssl/asn1.h ../../include/openssl/asn1_mac.h
 x_req.o: ../../include/openssl/bio.h ../../include/openssl/blowfish.h
 x_req.o: ../../include/openssl/bn.h ../../include/openssl/buffer.h
@@ -1169,14 +1236,15 @@ x_req.o: ../../include/openssl/dsa.h ../../include/openssl/e_os.h
 x_req.o: ../../include/openssl/e_os2.h ../../include/openssl/err.h
 x_req.o: ../../include/openssl/evp.h ../../include/openssl/idea.h
 x_req.o: ../../include/openssl/lhash.h ../../include/openssl/md2.h
-x_req.o: ../../include/openssl/md5.h ../../include/openssl/mdc2.h
-x_req.o: ../../include/openssl/obj_mac.h ../../include/openssl/objects.h
-x_req.o: ../../include/openssl/opensslconf.h ../../include/openssl/opensslv.h
-x_req.o: ../../include/openssl/pkcs7.h ../../include/openssl/rc2.h
-x_req.o: ../../include/openssl/rc4.h ../../include/openssl/rc5.h
-x_req.o: ../../include/openssl/ripemd.h ../../include/openssl/rsa.h
-x_req.o: ../../include/openssl/safestack.h ../../include/openssl/sha.h
-x_req.o: ../../include/openssl/stack.h ../../include/openssl/x509.h
+x_req.o: ../../include/openssl/md4.h ../../include/openssl/md5.h
+x_req.o: ../../include/openssl/mdc2.h ../../include/openssl/obj_mac.h
+x_req.o: ../../include/openssl/objects.h ../../include/openssl/opensslconf.h
+x_req.o: ../../include/openssl/opensslv.h ../../include/openssl/pkcs7.h
+x_req.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h
+x_req.o: ../../include/openssl/rc5.h ../../include/openssl/ripemd.h
+x_req.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
+x_req.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
+x_req.o: ../../include/openssl/symhacks.h ../../include/openssl/x509.h
 x_req.o: ../../include/openssl/x509_vfy.h ../cryptlib.h
 x_sig.o: ../../include/openssl/asn1.h ../../include/openssl/asn1_mac.h
 x_sig.o: ../../include/openssl/bio.h ../../include/openssl/blowfish.h
@@ -1187,14 +1255,15 @@ x_sig.o: ../../include/openssl/dsa.h ../../include/openssl/e_os.h
 x_sig.o: ../../include/openssl/e_os2.h ../../include/openssl/err.h
 x_sig.o: ../../include/openssl/evp.h ../../include/openssl/idea.h
 x_sig.o: ../../include/openssl/lhash.h ../../include/openssl/md2.h
-x_sig.o: ../../include/openssl/md5.h ../../include/openssl/mdc2.h
-x_sig.o: ../../include/openssl/obj_mac.h ../../include/openssl/objects.h
-x_sig.o: ../../include/openssl/opensslconf.h ../../include/openssl/opensslv.h
-x_sig.o: ../../include/openssl/pkcs7.h ../../include/openssl/rc2.h
-x_sig.o: ../../include/openssl/rc4.h ../../include/openssl/rc5.h
-x_sig.o: ../../include/openssl/ripemd.h ../../include/openssl/rsa.h
-x_sig.o: ../../include/openssl/safestack.h ../../include/openssl/sha.h
-x_sig.o: ../../include/openssl/stack.h ../../include/openssl/x509.h
+x_sig.o: ../../include/openssl/md4.h ../../include/openssl/md5.h
+x_sig.o: ../../include/openssl/mdc2.h ../../include/openssl/obj_mac.h
+x_sig.o: ../../include/openssl/objects.h ../../include/openssl/opensslconf.h
+x_sig.o: ../../include/openssl/opensslv.h ../../include/openssl/pkcs7.h
+x_sig.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h
+x_sig.o: ../../include/openssl/rc5.h ../../include/openssl/ripemd.h
+x_sig.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
+x_sig.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
+x_sig.o: ../../include/openssl/symhacks.h ../../include/openssl/x509.h
 x_sig.o: ../../include/openssl/x509_vfy.h ../cryptlib.h
 x_spki.o: ../../include/openssl/asn1.h ../../include/openssl/asn1_mac.h
 x_spki.o: ../../include/openssl/bio.h ../../include/openssl/blowfish.h
@@ -1205,14 +1274,15 @@ x_spki.o: ../../include/openssl/dsa.h ../../include/openssl/e_os.h
 x_spki.o: ../../include/openssl/e_os2.h ../../include/openssl/err.h
 x_spki.o: ../../include/openssl/evp.h ../../include/openssl/idea.h
 x_spki.o: ../../include/openssl/lhash.h ../../include/openssl/md2.h
-x_spki.o: ../../include/openssl/md5.h ../../include/openssl/mdc2.h
-x_spki.o: ../../include/openssl/obj_mac.h ../../include/openssl/objects.h
-x_spki.o: ../../include/openssl/opensslconf.h ../../include/openssl/opensslv.h
-x_spki.o: ../../include/openssl/pkcs7.h ../../include/openssl/rc2.h
-x_spki.o: ../../include/openssl/rc4.h ../../include/openssl/rc5.h
-x_spki.o: ../../include/openssl/ripemd.h ../../include/openssl/rsa.h
-x_spki.o: ../../include/openssl/safestack.h ../../include/openssl/sha.h
-x_spki.o: ../../include/openssl/stack.h ../../include/openssl/x509.h
+x_spki.o: ../../include/openssl/md4.h ../../include/openssl/md5.h
+x_spki.o: ../../include/openssl/mdc2.h ../../include/openssl/obj_mac.h
+x_spki.o: ../../include/openssl/objects.h ../../include/openssl/opensslconf.h
+x_spki.o: ../../include/openssl/opensslv.h ../../include/openssl/pkcs7.h
+x_spki.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h
+x_spki.o: ../../include/openssl/rc5.h ../../include/openssl/ripemd.h
+x_spki.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
+x_spki.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
+x_spki.o: ../../include/openssl/symhacks.h ../../include/openssl/x509.h
 x_spki.o: ../../include/openssl/x509_vfy.h ../cryptlib.h
 x_val.o: ../../include/openssl/asn1.h ../../include/openssl/asn1_mac.h
 x_val.o: ../../include/openssl/bio.h ../../include/openssl/blowfish.h
@@ -1223,33 +1293,37 @@ x_val.o: ../../include/openssl/dsa.h ../../include/openssl/e_os.h
 x_val.o: ../../include/openssl/e_os2.h ../../include/openssl/err.h
 x_val.o: ../../include/openssl/evp.h ../../include/openssl/idea.h
 x_val.o: ../../include/openssl/lhash.h ../../include/openssl/md2.h
-x_val.o: ../../include/openssl/md5.h ../../include/openssl/mdc2.h
-x_val.o: ../../include/openssl/obj_mac.h ../../include/openssl/objects.h
-x_val.o: ../../include/openssl/opensslconf.h ../../include/openssl/opensslv.h
-x_val.o: ../../include/openssl/pkcs7.h ../../include/openssl/rc2.h
-x_val.o: ../../include/openssl/rc4.h ../../include/openssl/rc5.h
-x_val.o: ../../include/openssl/ripemd.h ../../include/openssl/rsa.h
-x_val.o: ../../include/openssl/safestack.h ../../include/openssl/sha.h
-x_val.o: ../../include/openssl/stack.h ../../include/openssl/x509.h
+x_val.o: ../../include/openssl/md4.h ../../include/openssl/md5.h
+x_val.o: ../../include/openssl/mdc2.h ../../include/openssl/obj_mac.h
+x_val.o: ../../include/openssl/objects.h ../../include/openssl/opensslconf.h
+x_val.o: ../../include/openssl/opensslv.h ../../include/openssl/pkcs7.h
+x_val.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h
+x_val.o: ../../include/openssl/rc5.h ../../include/openssl/ripemd.h
+x_val.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
+x_val.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
+x_val.o: ../../include/openssl/symhacks.h ../../include/openssl/x509.h
 x_val.o: ../../include/openssl/x509_vfy.h ../cryptlib.h
 x_x509.o: ../../include/openssl/asn1.h ../../include/openssl/asn1_mac.h
 x_x509.o: ../../include/openssl/bio.h ../../include/openssl/blowfish.h
 x_x509.o: ../../include/openssl/bn.h ../../include/openssl/buffer.h
-x_x509.o: ../../include/openssl/cast.h ../../include/openssl/crypto.h
-x_x509.o: ../../include/openssl/des.h ../../include/openssl/dh.h
-x_x509.o: ../../include/openssl/dsa.h ../../include/openssl/e_os.h
+x_x509.o: ../../include/openssl/cast.h ../../include/openssl/conf.h
+x_x509.o: ../../include/openssl/crypto.h ../../include/openssl/des.h
+x_x509.o: ../../include/openssl/dh.h ../../include/openssl/dsa.h
+x_x509.o: ../../include/openssl/e_os.h ../../include/openssl/e_os.h
 x_x509.o: ../../include/openssl/e_os2.h ../../include/openssl/err.h
 x_x509.o: ../../include/openssl/evp.h ../../include/openssl/idea.h
 x_x509.o: ../../include/openssl/lhash.h ../../include/openssl/md2.h
-x_x509.o: ../../include/openssl/md5.h ../../include/openssl/mdc2.h
-x_x509.o: ../../include/openssl/obj_mac.h ../../include/openssl/objects.h
-x_x509.o: ../../include/openssl/opensslconf.h ../../include/openssl/opensslv.h
-x_x509.o: ../../include/openssl/pkcs7.h ../../include/openssl/rc2.h
-x_x509.o: ../../include/openssl/rc4.h ../../include/openssl/rc5.h
-x_x509.o: ../../include/openssl/ripemd.h ../../include/openssl/rsa.h
-x_x509.o: ../../include/openssl/safestack.h ../../include/openssl/sha.h
-x_x509.o: ../../include/openssl/stack.h ../../include/openssl/x509.h
-x_x509.o: ../../include/openssl/x509_vfy.h ../cryptlib.h
+x_x509.o: ../../include/openssl/md4.h ../../include/openssl/md5.h
+x_x509.o: ../../include/openssl/mdc2.h ../../include/openssl/obj_mac.h
+x_x509.o: ../../include/openssl/objects.h ../../include/openssl/opensslconf.h
+x_x509.o: ../../include/openssl/opensslv.h ../../include/openssl/pkcs7.h
+x_x509.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h
+x_x509.o: ../../include/openssl/rc5.h ../../include/openssl/ripemd.h
+x_x509.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
+x_x509.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
+x_x509.o: ../../include/openssl/symhacks.h ../../include/openssl/x509.h
+x_x509.o: ../../include/openssl/x509_vfy.h ../../include/openssl/x509v3.h
+x_x509.o: ../cryptlib.h
 x_x509a.o: ../../include/openssl/asn1.h ../../include/openssl/asn1_mac.h
 x_x509a.o: ../../include/openssl/bio.h ../../include/openssl/blowfish.h
 x_x509a.o: ../../include/openssl/bn.h ../../include/openssl/buffer.h
@@ -1259,12 +1333,13 @@ x_x509a.o: ../../include/openssl/dsa.h ../../include/openssl/e_os.h
 x_x509a.o: ../../include/openssl/e_os2.h ../../include/openssl/err.h
 x_x509a.o: ../../include/openssl/evp.h ../../include/openssl/idea.h
 x_x509a.o: ../../include/openssl/lhash.h ../../include/openssl/md2.h
-x_x509a.o: ../../include/openssl/md5.h ../../include/openssl/mdc2.h
-x_x509a.o: ../../include/openssl/obj_mac.h ../../include/openssl/objects.h
-x_x509a.o: ../../include/openssl/opensslconf.h ../../include/openssl/opensslv.h
-x_x509a.o: ../../include/openssl/pkcs7.h ../../include/openssl/rc2.h
-x_x509a.o: ../../include/openssl/rc4.h ../../include/openssl/rc5.h
-x_x509a.o: ../../include/openssl/ripemd.h ../../include/openssl/rsa.h
-x_x509a.o: ../../include/openssl/safestack.h ../../include/openssl/sha.h
-x_x509a.o: ../../include/openssl/stack.h ../../include/openssl/x509.h
+x_x509a.o: ../../include/openssl/md4.h ../../include/openssl/md5.h
+x_x509a.o: ../../include/openssl/mdc2.h ../../include/openssl/obj_mac.h
+x_x509a.o: ../../include/openssl/objects.h ../../include/openssl/opensslconf.h
+x_x509a.o: ../../include/openssl/opensslv.h ../../include/openssl/pkcs7.h
+x_x509a.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h
+x_x509a.o: ../../include/openssl/rc5.h ../../include/openssl/ripemd.h
+x_x509a.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
+x_x509a.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
+x_x509a.o: ../../include/openssl/symhacks.h ../../include/openssl/x509.h
 x_x509a.o: ../../include/openssl/x509_vfy.h ../cryptlib.h
index c0501e1ea95c0d107f8110d6f5acdac7644b7edb..7013a407ad68385d0f82c27ec6d4aed864f5d4ea 100644 (file)
@@ -236,10 +236,10 @@ int ASN1_BIT_STRING_set_bit(ASN1_BIT_STRING *a, int n, int value)
                else
                        c=(unsigned char *)OPENSSL_realloc(a->data,w+1);
                if (c == NULL) return(0);
+               if (w+1-a->length > 0) memset(c+a->length, 0, w+1-a->length);
                a->data=c;
                a->length=w+1;
-               c[w]=0;
-               }
+       }
        a->data[w]=((a->data[w])&iv)|v;
        while ((a->length > 0) && (a->data[a->length-1] == 0))
                a->length--;
index 53b30f2b56d659a60ed700ab2ad90c2b6a0bf0d1..1428d1df7a499c18510ec8e5de8f70f8887f5605 100644 (file)
@@ -79,7 +79,7 @@ int i2d_ASN1_ENUMERATED(ASN1_ENUMERATED *a, unsigned char **pp)
        len = i2c_ASN1_INTEGER(a, NULL);        
        ret=ASN1_object_size(0,len,V_ASN1_ENUMERATED);
        if(pp) {
-               ASN1_put_object(pp,0,ret,V_ASN1_ENUMERATED,V_ASN1_UNIVERSAL);
+               ASN1_put_object(pp,0,len,V_ASN1_ENUMERATED,V_ASN1_UNIVERSAL);
                i2c_ASN1_INTEGER(a, pp);        
        }
        return ret;
@@ -219,6 +219,6 @@ BIGNUM *ASN1_ENUMERATED_to_BN(ASN1_ENUMERATED *ai, BIGNUM *bn)
 
        if ((ret=BN_bin2bn(ai->data,ai->length,bn)) == NULL)
                ASN1err(ASN1_F_ASN1_ENUMERATED_TO_BN,ASN1_R_BN_LIB);
-       if(ai->type == V_ASN1_NEG_ENUMERATED) bn->neg = 1;
+       else if(ai->type == V_ASN1_NEG_ENUMERATED) ret->neg = 1;
        return(ret);
        }
index bb8e9cf8f9faf640c4a5a00320494e5f63c8c8d8..6f0413f885c16e8297c3fd9a7a25e612bdff23ee 100644 (file)
@@ -465,7 +465,7 @@ BIGNUM *ASN1_INTEGER_to_BN(ASN1_INTEGER *ai, BIGNUM *bn)
 
        if ((ret=BN_bin2bn(ai->data,ai->length,bn)) == NULL)
                ASN1err(ASN1_F_ASN1_INTEGER_TO_BN,ASN1_R_BN_LIB);
-       if(ai->type == V_ASN1_NEG_INTEGER) bn->neg = 1;
+       else if(ai->type == V_ASN1_NEG_INTEGER) ret->neg = 1;
        return(ret);
        }
 
index 42f5d3b01e2f89b63985117ebbcd4a1fb268b9b6..9842b653e62b8b5ad8747a8140eeb42a7c0af7ee 100644 (file)
@@ -92,6 +92,7 @@ int ASN1_mbstring_ncopy(ASN1_STRING **out, const unsigned char *in, int len,
 {
        int str_type;
        int ret;
+       char free_out;
        int outform, outlen;
        ASN1_STRING *dest;
        unsigned char *p;
@@ -180,6 +181,7 @@ int ASN1_mbstring_ncopy(ASN1_STRING **out, const unsigned char *in, int len,
        }
        if(!out) return str_type;
        if(*out) {
+               free_out = 0;
                dest = *out;
                if(dest->data) {
                        dest->length = 0;
@@ -188,6 +190,7 @@ int ASN1_mbstring_ncopy(ASN1_STRING **out, const unsigned char *in, int len,
                }
                dest->type = str_type;
        } else {
+               free_out = 1;
                dest = ASN1_STRING_type_new(str_type);
                if(!dest) {
                        ASN1err(ASN1_F_ASN1_MBSTRING_COPY,
@@ -229,7 +232,7 @@ int ASN1_mbstring_ncopy(ASN1_STRING **out, const unsigned char *in, int len,
                break;
        }
        if(!(p = OPENSSL_malloc(outlen + 1))) {
-               ASN1_STRING_free(dest);
+               if(free_out) ASN1_STRING_free(dest);
                ASN1err(ASN1_F_ASN1_MBSTRING_COPY,ERR_R_MALLOC_FAILURE);
                return -1;
        }
index 3873b98902e2abc0d3b310db9f9a2444e08ebe50..20caa2d3bde6a2f28ba4793b3d1e8399d7c4d237 100644 (file)
 int i2d_ASN1_OBJECT(ASN1_OBJECT *a, unsigned char **pp)
        {
        unsigned char *p;
+       int objsize;
 
        if ((a == NULL) || (a->data == NULL)) return(0);
 
-       if (pp == NULL)
-               return(ASN1_object_size(0,a->length,V_ASN1_OBJECT));
+       objsize = ASN1_object_size(0,a->length,V_ASN1_OBJECT);
+       if (pp == NULL) return objsize;
 
        p= *pp;
        ASN1_put_object(&p,0,a->length,V_ASN1_OBJECT,V_ASN1_UNIVERSAL);
@@ -77,7 +78,7 @@ int i2d_ASN1_OBJECT(ASN1_OBJECT *a, unsigned char **pp)
        p+=a->length;
 
        *pp=p;
-       return(a->length);
+       return(objsize);
        }
 
 int a2d_ASN1_OBJECT(unsigned char *out, int olen, const char *buf, int num)
index f94ae2751b302bc8dd930591b8ee72e16090ca2b..af77b0919493f13d84689b3b9ec51dae475dae06 100644 (file)
@@ -96,7 +96,7 @@ int send_bio_chars(void *arg, const void *buf, int len)
 int send_fp_chars(void *arg, const void *buf, int len)
 {
        if(!arg) return 1;
-       if(fwrite(buf, 1, len, arg) != len) return 0;
+       if(fwrite(buf, 1, len, arg) != (unsigned int)len) return 0;
        return 1;
 }
 
@@ -123,7 +123,7 @@ static int do_esc_char(unsigned long c, unsigned char flags, char *do_quotes, ch
                if(!io_ch(arg, tmphex, 6)) return -1;
                return 6;
        }
-       chtmp = c;
+       chtmp = (unsigned char)c;
        if(chtmp > 0x7f) chflgs = flags & ASN1_STRFLGS_ESC_MSB;
        else chflgs = char_type[chtmp] & flags;
        if(chflgs & CHARTYPE_BS_ESC) {
@@ -200,12 +200,12 @@ static int do_buf(unsigned char *buf, int buflen,
                                 * otherwise each character will be > 0x7f and so the 
                                 * character will never be escaped on first and last.
                                 */
-                               len = do_esc_char(utfbuf[i], flags | orflags, quotes, io_ch, arg);
+                               len = do_esc_char(utfbuf[i], (unsigned char)(flags | orflags), quotes, io_ch, arg);
                                if(len < 0) return -1;
                                outlen += len;
                        }
                } else {
-                       len = do_esc_char(c, flags | orflags, quotes, io_ch, arg);
+                       len = do_esc_char(c, (unsigned char)(flags | orflags), quotes, io_ch, arg);
                        if(len < 0) return -1;
                        outlen += len;
                }
@@ -304,7 +304,7 @@ static int do_print_ex(char_io *io_ch, void *arg, unsigned long lflags, ASN1_STR
        unsigned char flags;
        quotes = 0;
        /* Keep a copy of escape flags */
-       flags = lflags & ESC_FLAGS;
+       flags = (unsigned char)(lflags & ESC_FLAGS);
 
        type = str->type;
 
@@ -509,3 +509,24 @@ int ASN1_STRING_print_ex_fp(FILE *fp, ASN1_STRING *str, unsigned long flags)
 {
        return do_print_ex(send_fp_chars, fp, flags, str);
 }
+
+/* Utility function: convert any string type to UTF8, returns number of bytes
+ * in output string or a negative error code
+ */
+
+int ASN1_STRING_to_UTF8(unsigned char **out, ASN1_STRING *in)
+{
+       ASN1_STRING stmp, *str = &stmp;
+       int mbflag, type, ret;
+       if(!*out || !in) return -1;
+       type = in->type;
+       if((type < 0) || (type > 30)) return -1;
+       mbflag = tag2nbyte[type];
+       if(mbflag == -1) return -1;
+       mbflag |= MBSTRING_FLAG;
+       stmp.data = NULL;
+       ret = ASN1_mbstring_copy(&str, in->data, in->length, mbflag, B_ASN1_UTF8STRING);
+       if(ret < 0) return ret;
+       if(out) *out = stmp.data;
+       return stmp.length;
+}
index 2ee572e2281aad2e7c9cad76379e7608ebc680f8..b9b4d9a0057144f1776b664e7145dfab8ef37c8f 100644 (file)
@@ -265,6 +265,50 @@ ASN1_UTCTIME *ASN1_UTCTIME_set(ASN1_UTCTIME *s, time_t t)
        return(s);
        }
 
+
+int ASN1_UTCTIME_cmp_time_t(const ASN1_UTCTIME *s, time_t t)
+       {
+       struct tm *tm;
+       int offset;
+       int year;
+
+#define g2(p) (((p)[0]-'0')*10+(p)[1]-'0')
+
+       if (s->data[12] == 'Z')
+               offset=0;
+       else
+               {
+               offset = g2(s->data+13)*60+g2(s->data+15);
+               if (s->data[12] == '-')
+                       offset = -offset;
+               }
+
+       t -= offset*60; /* FIXME: may overflow in extreme cases */
+
+#if defined(THREADS) && !defined(WIN32)
+       { struct tm data; gmtime_r(&t, &data); tm = &data; }
+#else
+       tm = gmtime(&t);
+#endif
+       
+#define return_cmp(a,b) if ((a)<(b)) return -1; else if ((a)>(b)) return 1
+       year = g2(s->data);
+       if (year < 50)
+               year += 100;
+       return_cmp(year,              tm->tm_year);
+       return_cmp(g2(s->data+2) - 1, tm->tm_mon);
+       return_cmp(g2(s->data+4),     tm->tm_mday);
+       return_cmp(g2(s->data+6),     tm->tm_hour);
+       return_cmp(g2(s->data+8),     tm->tm_min);
+       return_cmp(g2(s->data+10),    tm->tm_sec);
+#undef g2
+#undef return_cmp
+
+       return 0;
+       }
+
+
+#if 0
 time_t ASN1_UTCTIME_get(const ASN1_UTCTIME *s)
        {
        struct tm tm;
@@ -300,3 +344,4 @@ time_t ASN1_UTCTIME_get(const ASN1_UTCTIME *s)
                                       * Also time_t is inappropriate for general
                                       * UTC times because it may a 32 bit type. */
        }
+#endif
index 9189537f289342757b6c13de5e7148f42161c0bf..6dfd4fa76e71515f1b7eb7c48187ff4255677927 100644 (file)
@@ -655,7 +655,10 @@ ASN1_ENUMERATED *d2i_ASN1_ENUMERATED(ASN1_ENUMERATED **a,unsigned char **pp,
 int ASN1_UTCTIME_check(ASN1_UTCTIME *a);
 ASN1_UTCTIME *ASN1_UTCTIME_set(ASN1_UTCTIME *s,time_t t);
 int ASN1_UTCTIME_set_string(ASN1_UTCTIME *s, char *str); 
+int ASN1_UTCTIME_cmp_time_t(const ASN1_UTCTIME *s, time_t t);
+#if 0
 time_t ASN1_UTCTIME_get(const ASN1_UTCTIME *s);
+#endif
 
 int ASN1_GENERALIZEDTIME_check(ASN1_GENERALIZEDTIME *a);
 ASN1_GENERALIZEDTIME *ASN1_GENERALIZEDTIME_set(ASN1_GENERALIZEDTIME *s,time_t t);
@@ -809,6 +812,8 @@ int ASN1_i2d_fp(int (*i2d)(),FILE *out,unsigned char *x);
 int ASN1_STRING_print_ex_fp(FILE *fp, ASN1_STRING *str, unsigned long flags);
 #endif
 
+int ASN1_STRING_to_UTF8(unsigned char **out, ASN1_STRING *in);
+
 #ifndef NO_BIO
 char *ASN1_d2i_bio(char *(*xnew)(),char *(*d2i)(),BIO *bp,unsigned char **x);
 int ASN1_i2d_bio(int (*i2d)(),BIO *out,unsigned char *x);
index dc868a4d87b636bc10f2ce7682fb0ba6c3066b2c..facfdd27fca0159f28f39e6d4fb50a2381985cc7 100644 (file)
@@ -292,7 +292,7 @@ static int asn1_parse2(BIO *bp, unsigned char **pp, long length, int offset,
                                                        if (BIO_write(bp,"\n",1) <= 0)
                                                                goto end;
                                                        }
-                                               if (BIO_dump_indent(bp,opp,
+                                               if (BIO_dump_indent(bp,(char *)opp,
                                                        ((dump == -1 || dump > os->length)?os->length:dump),
                                                        dump_indent) <= 0)
                                                        goto end;
@@ -373,7 +373,7 @@ static int asn1_parse2(BIO *bp, unsigned char **pp, long length, int offset,
                                        if (BIO_write(bp,"\n",1) <= 0)
                                                goto end;
                                        }
-                               if (BIO_dump_indent(bp,p,
+                               if (BIO_dump_indent(bp,(char *)p,
                                        ((dump == -1 || dump > len)?len:dump),
                                        dump_indent) <= 0)
                                        goto end;
index 90ead17dbc756a6bf719eb7de035fda40e8418a7..b1196ef581ceac7562fbdb1a7859b95ccbcc96b1 100644 (file)
@@ -62,6 +62,8 @@
 #include <openssl/pkcs7.h>
 #include <openssl/objects.h>
 
+#ifdef PKCS7_INDEFINITE_ENCODING
+
 int i2d_PKCS7(PKCS7 *a, unsigned char **pp)
        {
        M_ASN1_I2D_vars(a);
@@ -102,6 +104,7 @@ int i2d_PKCS7(PKCS7 *a, unsigned char **pp)
                        M_ASN1_I2D_len(a->d.encrypted,i2d_PKCS7_ENCRYPT);
                        break;
                default:
+                       M_ASN1_I2D_len(a->d.other,i2d_ASN1_TYPE);
                        break;
                        }
                }
@@ -136,6 +139,7 @@ int i2d_PKCS7(PKCS7 *a, unsigned char **pp)
                        M_ASN1_I2D_put(a->d.encrypted,i2d_PKCS7_ENCRYPT);
                        break;
                default:
+                       M_ASN1_I2D_put(a->d.other,i2d_ASN1_TYPE);
                        break;
                        }
                M_ASN1_I2D_INF_seq_end();
@@ -144,6 +148,98 @@ int i2d_PKCS7(PKCS7 *a, unsigned char **pp)
        M_ASN1_I2D_finish();
        }
 
+#else
+
+int i2d_PKCS7(PKCS7 *a, unsigned char **pp)
+       {
+       int explen = 0;
+       M_ASN1_I2D_vars(a);
+
+       if (a->asn1 != NULL)
+               {
+               if (pp == NULL)
+                       return((int)a->length);
+               memcpy(*pp,a->asn1,(int)a->length);
+               *pp+=a->length;
+               return((int)a->length);
+               }
+
+       M_ASN1_I2D_len(a->type,i2d_ASN1_OBJECT);
+       if (a->d.ptr != NULL)
+               {
+               /* Save current length */
+               r = ret;
+               switch (OBJ_obj2nid(a->type))
+                       {
+               case NID_pkcs7_data:
+                       M_ASN1_I2D_len(a->d.data,i2d_ASN1_OCTET_STRING);
+                       break;
+               case NID_pkcs7_signed:
+                       M_ASN1_I2D_len(a->d.sign,i2d_PKCS7_SIGNED);
+                       break;
+               case NID_pkcs7_enveloped:
+                       M_ASN1_I2D_len(a->d.enveloped,i2d_PKCS7_ENVELOPE);
+                       break;
+               case NID_pkcs7_signedAndEnveloped:
+                       M_ASN1_I2D_len(a->d.signed_and_enveloped,
+                               i2d_PKCS7_SIGN_ENVELOPE);
+                       break;
+               case NID_pkcs7_digest:
+                       M_ASN1_I2D_len(a->d.digest,i2d_PKCS7_DIGEST);
+                       break;
+               case NID_pkcs7_encrypted:
+                       M_ASN1_I2D_len(a->d.encrypted,i2d_PKCS7_ENCRYPT);
+                       break;
+               default:
+                       M_ASN1_I2D_len(a->d.other,i2d_ASN1_TYPE);
+                       break;
+                       }
+               /* Work out explicit tag content size */
+               explen = ret - r;
+               /* Work out explicit tag size: Note: ASN1_object_size
+                * includes the content length.
+                */
+               ret =  r + ASN1_object_size(1, explen, 0);
+               }
+
+       M_ASN1_I2D_seq_total();
+
+       M_ASN1_I2D_put(a->type,i2d_ASN1_OBJECT);
+
+       if (a->d.ptr != NULL)
+               {
+               ASN1_put_object(&p, 1, explen, 0, V_ASN1_CONTEXT_SPECIFIC);
+               switch (OBJ_obj2nid(a->type))
+                       {
+               case NID_pkcs7_data:
+                       M_ASN1_I2D_put(a->d.data,i2d_ASN1_OCTET_STRING);
+                       break;
+               case NID_pkcs7_signed:
+                       M_ASN1_I2D_put(a->d.sign,i2d_PKCS7_SIGNED);
+                       break;
+               case NID_pkcs7_enveloped:
+                       M_ASN1_I2D_put(a->d.enveloped,i2d_PKCS7_ENVELOPE);
+                       break;
+               case NID_pkcs7_signedAndEnveloped:
+                       M_ASN1_I2D_put(a->d.signed_and_enveloped,
+                               i2d_PKCS7_SIGN_ENVELOPE);
+                       break;
+               case NID_pkcs7_digest:
+                       M_ASN1_I2D_put(a->d.digest,i2d_PKCS7_DIGEST);
+                       break;
+               case NID_pkcs7_encrypted:
+                       M_ASN1_I2D_put(a->d.encrypted,i2d_PKCS7_ENCRYPT);
+                       break;
+               default:
+                       M_ASN1_I2D_put(a->d.other,i2d_ASN1_TYPE);
+                       break;
+                       }
+               }
+       M_ASN1_I2D_finish();
+       }
+
+#endif
+
 PKCS7 *d2i_PKCS7(PKCS7 **a, unsigned char **pp, long length)
        {
        M_ASN1_D2I_vars(a,PKCS7 *,PKCS7_new);
@@ -206,10 +302,8 @@ PKCS7 *d2i_PKCS7(PKCS7 **a, unsigned char **pp, long length)
                        M_ASN1_D2I_get(ret->d.encrypted,d2i_PKCS7_ENCRYPT);
                        break;
                default:
-                       c.error=ASN1_R_BAD_PKCS7_TYPE;
-                       c.line=__LINE__;
-                       goto err;
-                       /* break; */
+                       M_ASN1_D2I_get(ret->d.other,d2i_ASN1_TYPE);
+                       break;
                        }
                if (Tinf == (1|V_ASN1_CONSTRUCTED))
                        {
@@ -286,7 +380,7 @@ void PKCS7_content_free(PKCS7 *a)
                        PKCS7_ENCRYPT_free(a->d.encrypted);
                        break;
                default:
-                       /* MEMORY LEAK */
+                       ASN1_TYPE_free(a->d.other);
                        break;
                        }
                }
index 0056009885acf4f063806b8c69e46b53eb56796a..6dddd4f653edbac51190579628b8b658191b1104 100644 (file)
@@ -65,6 +65,14 @@ int i2d_X509_REQ_INFO(X509_REQ_INFO *a, unsigned char **pp)
        {
        M_ASN1_I2D_vars(a);
 
+       if(a->asn1) {
+               if(pp) {
+                       memcpy(*pp, a->asn1, a->length);
+                       *pp += a->length;
+               }
+               return a->length;
+       }
+
        M_ASN1_I2D_len(a->version,              i2d_ASN1_INTEGER);
        M_ASN1_I2D_len(a->subject,              i2d_X509_NAME);
        M_ASN1_I2D_len(a->pubkey,               i2d_X509_PUBKEY);
@@ -152,6 +160,7 @@ X509_REQ_INFO *X509_REQ_INFO_new(void)
        M_ASN1_New(ret->pubkey,X509_PUBKEY_new);
        M_ASN1_New(ret->attributes,sk_X509_ATTRIBUTE_new_null);
        ret->req_kludge=0;
+       ret->asn1 = NULL;
        return(ret);
        M_ASN1_New_Error(ASN1_F_X509_REQ_INFO_NEW);
        }
@@ -159,6 +168,7 @@ X509_REQ_INFO *X509_REQ_INFO_new(void)
 void X509_REQ_INFO_free(X509_REQ_INFO *a)
        {
        if (a == NULL) return;
+       if(a->asn1) OPENSSL_free(a->asn1);
        M_ASN1_INTEGER_free(a->version);
        X509_NAME_free(a->subject);
        X509_PUBKEY_free(a->pubkey);
@@ -189,6 +199,17 @@ X509_REQ *d2i_X509_REQ(X509_REQ **a, unsigned char **pp, long length)
        M_ASN1_D2I_Init();
        M_ASN1_D2I_start_sequence();
        M_ASN1_D2I_get(ret->req_info,d2i_X509_REQ_INFO);
+
+       /* Keep a copy of the original encoding for signature checking */
+       ret->req_info->length = c.p - c.q;
+       if(!(ret->req_info->asn1 = OPENSSL_malloc(ret->req_info->length))) {
+               c.line=__LINE__;
+               c.error = ERR_R_MALLOC_FAILURE;
+               goto err;
+       }
+
+       memcpy(ret->req_info->asn1, c.q, ret->req_info->length);
+
        M_ASN1_D2I_get(ret->sig_alg,d2i_X509_ALGOR);
        M_ASN1_D2I_get(ret->signature,d2i_ASN1_BIT_STRING);
        M_ASN1_D2I_Finish(a,X509_REQ_free,ASN1_F_D2I_X509_REQ);
index ea71a29c9ab19776ed7bea9c563b3262561a499b..61ba856b17c732d3188938522ebcbdedf5ccabe9 100644 (file)
@@ -61,6 +61,7 @@
 #include <openssl/evp.h>
 #include <openssl/asn1_mac.h>
 #include <openssl/x509.h>
+#include <openssl/x509v3.h>
 
 static int x509_meth_num = 0;
 static STACK_OF(CRYPTO_EX_DATA_FUNCS) *x509_meth = NULL;
@@ -114,11 +115,14 @@ X509 *X509_new(void)
        ASN1_CTX c;
 
        M_ASN1_New_Malloc(ret,X509);
-       ret->references=1;
        ret->valid=0;
+       ret->references=1;
+       ret->name = NULL;
        ret->ex_flags = 0;
-       ret->name=NULL;
-       ret->aux=NULL;
+       ret->ex_pathlen = -1;
+       ret->skid = NULL;
+       ret->akid = NULL;
+       ret->aux = NULL;
        M_ASN1_New(ret->cert_info,X509_CINF_new);
        M_ASN1_New(ret->sig_alg,X509_ALGOR_new);
        M_ASN1_New(ret->signature,M_ASN1_BIT_STRING_new);
@@ -151,6 +155,8 @@ void X509_free(X509 *a)
        X509_ALGOR_free(a->sig_alg);
        M_ASN1_BIT_STRING_free(a->signature);
        X509_CERT_AUX_free(a->aux);
+       ASN1_OCTET_STRING_free(a->skid);
+       AUTHORITY_KEYID_free(a->akid);
 
        if (a->name != NULL) OPENSSL_free(a->name);
        OPENSSL_free(a);
index 2af2fed27c1ff9328144b5a22ce398e3a9707a5b..17d2314398c6394d5232598a88e7217fcf9af9f7 100644 (file)
@@ -91,19 +91,22 @@ b_dump.o: ../../include/openssl/crypto.h ../../include/openssl/e_os.h
 b_dump.o: ../../include/openssl/e_os2.h ../../include/openssl/err.h
 b_dump.o: ../../include/openssl/lhash.h ../../include/openssl/opensslconf.h
 b_dump.o: ../../include/openssl/opensslv.h ../../include/openssl/safestack.h
-b_dump.o: ../../include/openssl/stack.h ../cryptlib.h
+b_dump.o: ../../include/openssl/stack.h ../../include/openssl/symhacks.h
+b_dump.o: ../cryptlib.h
 b_print.o: ../../include/openssl/bio.h ../../include/openssl/buffer.h
 b_print.o: ../../include/openssl/crypto.h ../../include/openssl/e_os.h
 b_print.o: ../../include/openssl/e_os2.h ../../include/openssl/err.h
 b_print.o: ../../include/openssl/lhash.h ../../include/openssl/opensslconf.h
 b_print.o: ../../include/openssl/opensslv.h ../../include/openssl/safestack.h
-b_print.o: ../../include/openssl/stack.h ../cryptlib.h
+b_print.o: ../../include/openssl/stack.h ../../include/openssl/symhacks.h
+b_print.o: ../cryptlib.h
 b_sock.o: ../../include/openssl/bio.h ../../include/openssl/buffer.h
 b_sock.o: ../../include/openssl/crypto.h ../../include/openssl/e_os.h
 b_sock.o: ../../include/openssl/e_os2.h ../../include/openssl/err.h
 b_sock.o: ../../include/openssl/lhash.h ../../include/openssl/opensslconf.h
 b_sock.o: ../../include/openssl/opensslv.h ../../include/openssl/safestack.h
-b_sock.o: ../../include/openssl/stack.h ../cryptlib.h
+b_sock.o: ../../include/openssl/stack.h ../../include/openssl/symhacks.h
+b_sock.o: ../cryptlib.h
 bf_buff.o: ../../include/openssl/asn1.h ../../include/openssl/bio.h
 bf_buff.o: ../../include/openssl/blowfish.h ../../include/openssl/bn.h
 bf_buff.o: ../../include/openssl/buffer.h ../../include/openssl/cast.h
@@ -112,14 +115,15 @@ bf_buff.o: ../../include/openssl/dh.h ../../include/openssl/dsa.h
 bf_buff.o: ../../include/openssl/e_os.h ../../include/openssl/e_os2.h
 bf_buff.o: ../../include/openssl/err.h ../../include/openssl/evp.h
 bf_buff.o: ../../include/openssl/idea.h ../../include/openssl/lhash.h
-bf_buff.o: ../../include/openssl/md2.h ../../include/openssl/md5.h
-bf_buff.o: ../../include/openssl/mdc2.h ../../include/openssl/obj_mac.h
-bf_buff.o: ../../include/openssl/objects.h ../../include/openssl/opensslconf.h
-bf_buff.o: ../../include/openssl/opensslv.h ../../include/openssl/rc2.h
-bf_buff.o: ../../include/openssl/rc4.h ../../include/openssl/rc5.h
-bf_buff.o: ../../include/openssl/ripemd.h ../../include/openssl/rsa.h
-bf_buff.o: ../../include/openssl/safestack.h ../../include/openssl/sha.h
-bf_buff.o: ../../include/openssl/stack.h ../cryptlib.h
+bf_buff.o: ../../include/openssl/md2.h ../../include/openssl/md4.h
+bf_buff.o: ../../include/openssl/md5.h ../../include/openssl/mdc2.h
+bf_buff.o: ../../include/openssl/obj_mac.h ../../include/openssl/objects.h
+bf_buff.o: ../../include/openssl/opensslconf.h ../../include/openssl/opensslv.h
+bf_buff.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h
+bf_buff.o: ../../include/openssl/rc5.h ../../include/openssl/ripemd.h
+bf_buff.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
+bf_buff.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
+bf_buff.o: ../../include/openssl/symhacks.h ../cryptlib.h
 bf_nbio.o: ../../include/openssl/asn1.h ../../include/openssl/bio.h
 bf_nbio.o: ../../include/openssl/blowfish.h ../../include/openssl/bn.h
 bf_nbio.o: ../../include/openssl/buffer.h ../../include/openssl/cast.h
@@ -128,14 +132,15 @@ bf_nbio.o: ../../include/openssl/dh.h ../../include/openssl/dsa.h
 bf_nbio.o: ../../include/openssl/e_os.h ../../include/openssl/e_os2.h
 bf_nbio.o: ../../include/openssl/err.h ../../include/openssl/evp.h
 bf_nbio.o: ../../include/openssl/idea.h ../../include/openssl/lhash.h
-bf_nbio.o: ../../include/openssl/md2.h ../../include/openssl/md5.h
-bf_nbio.o: ../../include/openssl/mdc2.h ../../include/openssl/obj_mac.h
-bf_nbio.o: ../../include/openssl/objects.h ../../include/openssl/opensslconf.h
-bf_nbio.o: ../../include/openssl/opensslv.h ../../include/openssl/rand.h
-bf_nbio.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h
-bf_nbio.o: ../../include/openssl/rc5.h ../../include/openssl/ripemd.h
-bf_nbio.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
-bf_nbio.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
+bf_nbio.o: ../../include/openssl/md2.h ../../include/openssl/md4.h
+bf_nbio.o: ../../include/openssl/md5.h ../../include/openssl/mdc2.h
+bf_nbio.o: ../../include/openssl/obj_mac.h ../../include/openssl/objects.h
+bf_nbio.o: ../../include/openssl/opensslconf.h ../../include/openssl/opensslv.h
+bf_nbio.o: ../../include/openssl/rand.h ../../include/openssl/rc2.h
+bf_nbio.o: ../../include/openssl/rc4.h ../../include/openssl/rc5.h
+bf_nbio.o: ../../include/openssl/ripemd.h ../../include/openssl/rsa.h
+bf_nbio.o: ../../include/openssl/safestack.h ../../include/openssl/sha.h
+bf_nbio.o: ../../include/openssl/stack.h ../../include/openssl/symhacks.h
 bf_nbio.o: ../cryptlib.h
 bf_null.o: ../../include/openssl/asn1.h ../../include/openssl/bio.h
 bf_null.o: ../../include/openssl/blowfish.h ../../include/openssl/bn.h
@@ -145,80 +150,92 @@ bf_null.o: ../../include/openssl/dh.h ../../include/openssl/dsa.h
 bf_null.o: ../../include/openssl/e_os.h ../../include/openssl/e_os2.h
 bf_null.o: ../../include/openssl/err.h ../../include/openssl/evp.h
 bf_null.o: ../../include/openssl/idea.h ../../include/openssl/lhash.h
-bf_null.o: ../../include/openssl/md2.h ../../include/openssl/md5.h
-bf_null.o: ../../include/openssl/mdc2.h ../../include/openssl/obj_mac.h
-bf_null.o: ../../include/openssl/objects.h ../../include/openssl/opensslconf.h
-bf_null.o: ../../include/openssl/opensslv.h ../../include/openssl/rc2.h
-bf_null.o: ../../include/openssl/rc4.h ../../include/openssl/rc5.h
-bf_null.o: ../../include/openssl/ripemd.h ../../include/openssl/rsa.h
-bf_null.o: ../../include/openssl/safestack.h ../../include/openssl/sha.h
-bf_null.o: ../../include/openssl/stack.h ../cryptlib.h
+bf_null.o: ../../include/openssl/md2.h ../../include/openssl/md4.h
+bf_null.o: ../../include/openssl/md5.h ../../include/openssl/mdc2.h
+bf_null.o: ../../include/openssl/obj_mac.h ../../include/openssl/objects.h
+bf_null.o: ../../include/openssl/opensslconf.h ../../include/openssl/opensslv.h
+bf_null.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h
+bf_null.o: ../../include/openssl/rc5.h ../../include/openssl/ripemd.h
+bf_null.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
+bf_null.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
+bf_null.o: ../../include/openssl/symhacks.h ../cryptlib.h
 bio_cb.o: ../../include/openssl/bio.h ../../include/openssl/buffer.h
 bio_cb.o: ../../include/openssl/crypto.h ../../include/openssl/e_os.h
 bio_cb.o: ../../include/openssl/e_os2.h ../../include/openssl/err.h
 bio_cb.o: ../../include/openssl/lhash.h ../../include/openssl/opensslconf.h
 bio_cb.o: ../../include/openssl/opensslv.h ../../include/openssl/safestack.h
-bio_cb.o: ../../include/openssl/stack.h ../cryptlib.h
+bio_cb.o: ../../include/openssl/stack.h ../../include/openssl/symhacks.h
+bio_cb.o: ../cryptlib.h
 bio_err.o: ../../include/openssl/bio.h ../../include/openssl/crypto.h
 bio_err.o: ../../include/openssl/err.h ../../include/openssl/lhash.h
 bio_err.o: ../../include/openssl/opensslv.h ../../include/openssl/safestack.h
-bio_err.o: ../../include/openssl/stack.h
+bio_err.o: ../../include/openssl/stack.h ../../include/openssl/symhacks.h
 bio_lib.o: ../../include/openssl/bio.h ../../include/openssl/buffer.h
 bio_lib.o: ../../include/openssl/crypto.h ../../include/openssl/e_os.h
 bio_lib.o: ../../include/openssl/e_os2.h ../../include/openssl/err.h
 bio_lib.o: ../../include/openssl/lhash.h ../../include/openssl/opensslconf.h
 bio_lib.o: ../../include/openssl/opensslv.h ../../include/openssl/safestack.h
-bio_lib.o: ../../include/openssl/stack.h ../cryptlib.h
+bio_lib.o: ../../include/openssl/stack.h ../../include/openssl/symhacks.h
+bio_lib.o: ../cryptlib.h
 bss_acpt.o: ../../include/openssl/bio.h ../../include/openssl/buffer.h
 bss_acpt.o: ../../include/openssl/crypto.h ../../include/openssl/e_os.h
 bss_acpt.o: ../../include/openssl/e_os2.h ../../include/openssl/err.h
 bss_acpt.o: ../../include/openssl/lhash.h ../../include/openssl/opensslconf.h
 bss_acpt.o: ../../include/openssl/opensslv.h ../../include/openssl/safestack.h
-bss_acpt.o: ../../include/openssl/stack.h ../cryptlib.h
+bss_acpt.o: ../../include/openssl/stack.h ../../include/openssl/symhacks.h
+bss_acpt.o: ../cryptlib.h
 bss_bio.o: ../../include/openssl/bio.h ../../include/openssl/crypto.h
 bss_bio.o: ../../include/openssl/e_os.h ../../include/openssl/e_os2.h
 bss_bio.o: ../../include/openssl/err.h ../../include/openssl/lhash.h
 bss_bio.o: ../../include/openssl/opensslconf.h ../../include/openssl/opensslv.h
 bss_bio.o: ../../include/openssl/safestack.h ../../include/openssl/stack.h
+bss_bio.o: ../../include/openssl/symhacks.h
 bss_conn.o: ../../include/openssl/bio.h ../../include/openssl/buffer.h
 bss_conn.o: ../../include/openssl/crypto.h ../../include/openssl/e_os.h
 bss_conn.o: ../../include/openssl/e_os2.h ../../include/openssl/err.h
 bss_conn.o: ../../include/openssl/lhash.h ../../include/openssl/opensslconf.h
 bss_conn.o: ../../include/openssl/opensslv.h ../../include/openssl/safestack.h
-bss_conn.o: ../../include/openssl/stack.h ../cryptlib.h
+bss_conn.o: ../../include/openssl/stack.h ../../include/openssl/symhacks.h
+bss_conn.o: ../cryptlib.h
 bss_fd.o: ../../include/openssl/bio.h ../../include/openssl/buffer.h
 bss_fd.o: ../../include/openssl/crypto.h ../../include/openssl/e_os.h
 bss_fd.o: ../../include/openssl/e_os2.h ../../include/openssl/err.h
 bss_fd.o: ../../include/openssl/lhash.h ../../include/openssl/opensslconf.h
 bss_fd.o: ../../include/openssl/opensslv.h ../../include/openssl/safestack.h
-bss_fd.o: ../../include/openssl/stack.h ../cryptlib.h bss_sock.c
+bss_fd.o: ../../include/openssl/stack.h ../../include/openssl/symhacks.h
+bss_fd.o: ../cryptlib.h bss_sock.c
 bss_file.o: ../../include/openssl/bio.h ../../include/openssl/buffer.h
 bss_file.o: ../../include/openssl/crypto.h ../../include/openssl/e_os.h
 bss_file.o: ../../include/openssl/e_os2.h ../../include/openssl/err.h
 bss_file.o: ../../include/openssl/lhash.h ../../include/openssl/opensslconf.h
 bss_file.o: ../../include/openssl/opensslv.h ../../include/openssl/safestack.h
-bss_file.o: ../../include/openssl/stack.h ../cryptlib.h
+bss_file.o: ../../include/openssl/stack.h ../../include/openssl/symhacks.h
+bss_file.o: ../cryptlib.h
 bss_log.o: ../../include/openssl/bio.h ../../include/openssl/buffer.h
 bss_log.o: ../../include/openssl/crypto.h ../../include/openssl/e_os.h
 bss_log.o: ../../include/openssl/e_os2.h ../../include/openssl/err.h
 bss_log.o: ../../include/openssl/lhash.h ../../include/openssl/opensslconf.h
 bss_log.o: ../../include/openssl/opensslv.h ../../include/openssl/safestack.h
-bss_log.o: ../../include/openssl/stack.h ../cryptlib.h
+bss_log.o: ../../include/openssl/stack.h ../../include/openssl/symhacks.h
+bss_log.o: ../cryptlib.h
 bss_mem.o: ../../include/openssl/bio.h ../../include/openssl/buffer.h
 bss_mem.o: ../../include/openssl/crypto.h ../../include/openssl/e_os.h
 bss_mem.o: ../../include/openssl/e_os2.h ../../include/openssl/err.h
 bss_mem.o: ../../include/openssl/lhash.h ../../include/openssl/opensslconf.h
 bss_mem.o: ../../include/openssl/opensslv.h ../../include/openssl/safestack.h
-bss_mem.o: ../../include/openssl/stack.h ../cryptlib.h
+bss_mem.o: ../../include/openssl/stack.h ../../include/openssl/symhacks.h
+bss_mem.o: ../cryptlib.h
 bss_null.o: ../../include/openssl/bio.h ../../include/openssl/buffer.h
 bss_null.o: ../../include/openssl/crypto.h ../../include/openssl/e_os.h
 bss_null.o: ../../include/openssl/e_os2.h ../../include/openssl/err.h
 bss_null.o: ../../include/openssl/lhash.h ../../include/openssl/opensslconf.h
 bss_null.o: ../../include/openssl/opensslv.h ../../include/openssl/safestack.h
-bss_null.o: ../../include/openssl/stack.h ../cryptlib.h
+bss_null.o: ../../include/openssl/stack.h ../../include/openssl/symhacks.h
+bss_null.o: ../cryptlib.h
 bss_sock.o: ../../include/openssl/bio.h ../../include/openssl/buffer.h
 bss_sock.o: ../../include/openssl/crypto.h ../../include/openssl/e_os.h
 bss_sock.o: ../../include/openssl/e_os2.h ../../include/openssl/err.h
 bss_sock.o: ../../include/openssl/lhash.h ../../include/openssl/opensslconf.h
 bss_sock.o: ../../include/openssl/opensslv.h ../../include/openssl/safestack.h
-bss_sock.o: ../../include/openssl/stack.h ../cryptlib.h
+bss_sock.o: ../../include/openssl/stack.h ../../include/openssl/symhacks.h
+bss_sock.o: ../cryptlib.h
index 7cbe4f22b51e55ec51748455c41d2d50095ae3ab..8397cfab6a2cfbe5582f92e3cf1297c94ff26cbb 100644 (file)
@@ -74,72 +74,79 @@ int BIO_dump(BIO *bio, const char *s, int len)
        }
 
 int BIO_dump_indent(BIO *bio, const char *s, int len, int indent)
-{
-  int ret=0;
-  char buf[288+1],tmp[20],str[128+1];
-  int i,j,rows,trunc;
-  unsigned char ch;
-  int dump_width;
-
-  trunc=0;
-
+       {
+       int ret=0;
+       char buf[288+1],tmp[20],str[128+1];
+       int i,j,rows,trunc;
+       unsigned char ch;
+       int dump_width;
+       
+       trunc=0;
+       
 #ifdef TRUNCATE
-  for(; (len > 0) && ((s[len-1] == ' ') || (s[len-1] == '\0')); len--) 
-    trunc++;
+       for(; (len > 0) && ((s[len-1] == ' ') || (s[len-1] == '\0')); len--) 
+               trunc++;
 #endif
 
-  if (indent < 0)
-    indent = 0;
-  if (indent) {
-    if (indent > 128) indent=128;
-    memset(str,' ',indent);
-  }
-  str[indent]='\0';
-
-  dump_width=DUMP_WIDTH_LESS_INDENT(indent);
-  rows=(len/dump_width);
-  if ((rows*dump_width)<len)
-    rows++;
-  for(i=0;i<rows;i++) {
-    buf[0]='\0';       /* start with empty string */
-    strcpy(buf,str);
-    sprintf(tmp,"%04x - ",i*dump_width);
-    strcat(buf,tmp);
-    for(j=0;j<dump_width;j++) {
-      if (((i*dump_width)+j)>=len) {
-       strcat(buf,"   ");
-      } else {
-        ch=((unsigned char)*(s+i*dump_width+j)) & 0xff;
-       sprintf(tmp,"%02x%c",ch,j==7?'-':' ');
-        strcat(buf,tmp);
-      }
-    }
-    strcat(buf,"  ");
-    for(j=0;j<dump_width;j++) {
-      if (((i*dump_width)+j)>=len)
-       break;
-      ch=((unsigned char)*(s+i*dump_width+j)) & 0xff;
+       if (indent < 0)
+               indent = 0;
+       if (indent)
+               {
+               if (indent > 128) indent=128;
+               memset(str,' ',indent);
+               }
+       str[indent]='\0';
+       
+       dump_width=DUMP_WIDTH_LESS_INDENT(indent);
+       rows=(len/dump_width);
+       if ((rows*dump_width)<len)
+               rows++;
+       for(i=0;i<rows;i++)
+               {
+               buf[0]='\0';    /* start with empty string */
+               strcpy(buf,str);
+               sprintf(tmp,"%04x - ",i*dump_width);
+               strcat(buf,tmp);
+               for(j=0;j<dump_width;j++)
+                       {
+                       if (((i*dump_width)+j)>=len)
+                               {
+                               strcat(buf,"   ");
+                               }
+                       else
+                               {
+                               ch=((unsigned char)*(s+i*dump_width+j)) & 0xff;
+                               sprintf(tmp,"%02x%c",ch,j==7?'-':' ');
+                               strcat(buf,tmp);
+                               }
+                       }
+               strcat(buf,"  ");
+               for(j=0;j<dump_width;j++)
+                       {
+                       if (((i*dump_width)+j)>=len)
+                               break;
+                       ch=((unsigned char)*(s+i*dump_width+j)) & 0xff;
 #ifndef CHARSET_EBCDIC
-      sprintf(tmp,"%c",((ch>=' ')&&(ch<='~'))?ch:'.');
+                       sprintf(tmp,"%c",((ch>=' ')&&(ch<='~'))?ch:'.');
 #else
-      sprintf(tmp,"%c",((ch>=os_toascii[' '])&&(ch<=os_toascii['~']))
-             ? os_toebcdic[ch]
-             : '.');
+                       sprintf(tmp,"%c",((ch>=os_toascii[' '])&&(ch<=os_toascii['~']))
+                               ? os_toebcdic[ch]
+                               : '.');
 #endif
-      strcat(buf,tmp);
-    }
-    strcat(buf,"\n");
-    /* if this is the last call then update the ddt_dump thing so that
-     * we will move the selection point in the debug window 
-     */
-    ret+=BIO_write(bio,(char *)buf,strlen(buf));
-  }
+                       strcat(buf,tmp);
+                       }
+               strcat(buf,"\n");
+               /* if this is the last call then update the ddt_dump thing so that
+                * we will move the selection point in the debug window 
+                */
+               ret+=BIO_write(bio,(char *)buf,strlen(buf));
+               }
 #ifdef TRUNCATE
-  if (trunc > 0) {
-    sprintf(buf,"%s%04x - <SPACES/NULS>\n",str,len+trunc);
-    ret+=BIO_write(bio,(char *)buf,strlen(buf));
-  }
+       if (trunc > 0)
+               {
+               sprintf(buf,"%s%04x - <SPACES/NULS>\n",str,len+trunc);
+               ret+=BIO_write(bio,(char *)buf,strlen(buf));
+               }
 #endif
-  return(ret);
-}
-
+       return(ret);
+       }
index aafa85bd12a55070805bc4745503889cbb8fe510..a62f5516354811e8b5fa2cf870f370ce7d50a609 100644 (file)
@@ -61,7 +61,6 @@
  */
 
 #include <stdio.h>
-#include <stdarg.h>
 #include <string.h>
 #include <ctype.h>
 #include <assert.h>
 #define LLONG long
 #endif
 
-static void fmtstr     (void (*)(char **, size_t *, size_t *, int),
-                       char **, size_t *, size_t *, const char *, int, int,
-                       int);
-static void fmtint     (void (*)(char **, size_t *, size_t *, int),
-                       char **, size_t *, size_t *, LLONG, int, int, int, int);
-static void fmtfp      (void (*)(char **, size_t *, size_t *, int),
-                       char **, size_t *, size_t *, LDOUBLE, int, int, int);
-static int dopr_isbig (size_t, size_t);
-static int dopr_copy (size_t);
-static void dopr_outch (char **, size_t *, size_t *, int);
-#ifdef USE_ALLOCATING_PRINT
-static int doapr_isbig (size_t, size_t);
-static int doapr_copy (size_t);
-static void doapr_outch (char **, size_t *, size_t *, int);
-#endif
-static void _dopr(void (*)(char **, size_t *, size_t *, int),
-                 int (*)(size_t, size_t), int (*)(size_t),
-                 char **buffer, size_t *maxlen, size_t *retlen, int *truncated,
+static void fmtstr     (char **, char **, size_t *, size_t *,
+                       const char *, int, int, int);
+static void fmtint     (char **, char **, size_t *, size_t *,
+                       LLONG, int, int, int, int);
+static void fmtfp      (char **, char **, size_t *, size_t *,
+                       LDOUBLE, int, int, int);
+static void doapr_outch (char **, char **, size_t *, size_t *, int);
+static void _dopr(char **sbuffer, char **buffer,
+                 size_t *maxlen, size_t *retlen, int *truncated,
                  const char *format, va_list args);
 
 /* format read states */
@@ -163,40 +153,9 @@ static void _dopr(void (*)(char **, size_t *, size_t *, int),
 #define char_to_int(p) (p - '0')
 #define MAX(p,q) ((p >= q) ? p : q)
 
-#ifndef USE_ALLOCATING_PRINT
-static void
-dopr(
-    char *buffer,
-    size_t maxlen,
-    size_t *retlen,
-    const char *format,
-    va_list args)
-{
-    int ignored;
-    _dopr(dopr_outch, dopr_isbig, dopr_copy,
-        &buffer, &maxlen, retlen, &ignored, format, args);
-}
-
-#else
-static void
-doapr(
-    char **buffer,
-    size_t *retlen,
-    const char *format,
-    va_list args)
-{
-    size_t dummy_maxlen = 0;
-    int ignored;
-    _dopr(doapr_outch, doapr_isbig, doapr_copy,
-        buffer, &dummy_maxlen, retlen, &ignored, format, args);
-}
-#endif
-
 static void
 _dopr(
-    void (*outch_fn)(char **, size_t *, size_t *, int),
-    int (*isbig_fn)(size_t, size_t),
-    int (*copy_fn)(size_t),
+    char **sbuffer,
     char **buffer,
     size_t *maxlen,
     size_t *retlen,
@@ -221,7 +180,7 @@ _dopr(
     ch = *format++;
 
     while (state != DP_S_DONE) {
-        if ((ch == '\0') || (*isbig_fn)(currlen, *maxlen))
+        if (ch == '\0' || (buffer == NULL && currlen >= *maxlen))
             state = DP_S_DONE;
 
         switch (state) {
@@ -229,7 +188,7 @@ _dopr(
             if (ch == '%')
                 state = DP_S_FLAGS;
             else
-                (*outch_fn)(buffer, &currlen, maxlen, ch);
+                doapr_outch(sbuffer,buffer, &currlen, maxlen, ch);
             ch = *format++;
             break;
         case DP_S_FLAGS:
@@ -335,7 +294,7 @@ _dopr(
                     value = va_arg(args, int);
                     break;
                 }
-                fmtint(outch_fn, buffer, &currlen, maxlen,
+                fmtint(sbuffer, buffer, &currlen, maxlen,
                        value, 10, min, max, flags);
                 break;
             case 'X':
@@ -361,7 +320,7 @@ _dopr(
                         unsigned int);
                     break;
                 }
-                fmtint(outch_fn, buffer, &currlen, maxlen, value,
+                fmtint(sbuffer, buffer, &currlen, maxlen, value,
                        ch == 'o' ? 8 : (ch == 'u' ? 10 : 16),
                        min, max, flags);
                 break;
@@ -370,7 +329,7 @@ _dopr(
                     fvalue = va_arg(args, LDOUBLE);
                 else
                     fvalue = va_arg(args, double);
-                fmtfp(outch_fn, buffer, &currlen, maxlen,
+                fmtfp(sbuffer, buffer, &currlen, maxlen,
                       fvalue, min, max, flags);
                 break;
             case 'E':
@@ -390,19 +349,23 @@ _dopr(
                     fvalue = va_arg(args, double);
                 break;
             case 'c':
-                (*outch_fn)(buffer, &currlen, maxlen,
+                doapr_outch(sbuffer, buffer, &currlen, maxlen,
                     va_arg(args, int));
                 break;
             case 's':
                 strvalue = va_arg(args, char *);
-                if (max < 0)
-                    max = (*copy_fn)(*maxlen);
-                fmtstr(outch_fn, buffer, &currlen, maxlen, strvalue,
+                if (max < 0) {
+                   if (buffer)
+                       max = INT_MAX;
+                   else
+                       max = *maxlen;
+               }
+                fmtstr(sbuffer, buffer, &currlen, maxlen, strvalue,
                        flags, min, max);
                 break;
             case 'p':
                 value = (long)va_arg(args, void *);
-                fmtint(outch_fn, buffer, &currlen, maxlen,
+                fmtint(sbuffer, buffer, &currlen, maxlen,
                     value, 16, min, max, flags);
                 break;
             case 'n': /* XXX */
@@ -425,7 +388,7 @@ _dopr(
                 }
                 break;
             case '%':
-                (*outch_fn)(buffer, &currlen, maxlen, ch);
+                doapr_outch(sbuffer, buffer, &currlen, maxlen, ch);
                 break;
             case 'w':
                 /* not supported yet, treat as next char */
@@ -449,14 +412,14 @@ _dopr(
     *truncated = (currlen > *maxlen - 1);
     if (*truncated)
         currlen = *maxlen - 1;
-    (*buffer)[currlen] = '\0';
-    *retlen = currlen;
+    doapr_outch(sbuffer, buffer, &currlen, maxlen, '\0');
+    *retlen = currlen - 1;
     return;
 }
 
 static void
 fmtstr(
-    void (*outch_fn)(char **, size_t *, size_t *, int),
+    char **sbuffer,
     char **buffer,
     size_t *currlen,
     size_t *maxlen,
@@ -479,16 +442,16 @@ fmtstr(
         padlen = -padlen;
 
     while ((padlen > 0) && (cnt < max)) {
-        (*outch_fn)(buffer, currlen, maxlen, ' ');
+        doapr_outch(sbuffer, buffer, currlen, maxlen, ' ');
         --padlen;
         ++cnt;
     }
     while (*value && (cnt < max)) {
-        (*outch_fn)(buffer, currlen, maxlen, *value++);
+        doapr_outch(sbuffer, buffer, currlen, maxlen, *value++);
         ++cnt;
     }
     while ((padlen < 0) && (cnt < max)) {
-        (*outch_fn)(buffer, currlen, maxlen, ' ');
+        doapr_outch(sbuffer, buffer, currlen, maxlen, ' ');
         ++padlen;
         ++cnt;
     }
@@ -496,7 +459,7 @@ fmtstr(
 
 static void
 fmtint(
-    void (*outch_fn)(char **, size_t *, size_t *, int),
+    char **sbuffer,
     char **buffer,
     size_t *currlen,
     size_t *maxlen,
@@ -553,28 +516,28 @@ fmtint(
 
     /* spaces */
     while (spadlen > 0) {
-        (*outch_fn)(buffer, currlen, maxlen, ' ');
+        doapr_outch(sbuffer, buffer, currlen, maxlen, ' ');
         --spadlen;
     }
 
     /* sign */
     if (signvalue)
-        (*outch_fn)(buffer, currlen, maxlen, signvalue);
+        doapr_outch(sbuffer, buffer, currlen, maxlen, signvalue);
 
     /* zeros */
     if (zpadlen > 0) {
         while (zpadlen > 0) {
-            (*outch_fn)(buffer, currlen, maxlen, '0');
+            doapr_outch(sbuffer, buffer, currlen, maxlen, '0');
             --zpadlen;
         }
     }
     /* digits */
     while (place > 0)
-        (*outch_fn)(buffer, currlen, maxlen, convert[--place]);
+        doapr_outch(sbuffer, buffer, currlen, maxlen, convert[--place]);
 
     /* left justified spaces */
     while (spadlen < 0) {
-        (*outch_fn)(buffer, currlen, maxlen, ' ');
+        doapr_outch(sbuffer, buffer, currlen, maxlen, ' ');
         ++spadlen;
     }
     return;
@@ -613,7 +576,7 @@ round(LDOUBLE value)
 
 static void
 fmtfp(
-    void (*outch_fn)(char **, size_t *, size_t *, int),
+    char **sbuffer,
     char **buffer,
     size_t *currlen,
     size_t *maxlen,
@@ -694,117 +657,85 @@ fmtfp(
 
     if ((flags & DP_F_ZERO) && (padlen > 0)) {
         if (signvalue) {
-            (*outch_fn)(buffer, currlen, maxlen, signvalue);
+            doapr_outch(sbuffer, buffer, currlen, maxlen, signvalue);
             --padlen;
             signvalue = 0;
         }
         while (padlen > 0) {
-            (*outch_fn)(buffer, currlen, maxlen, '0');
+            doapr_outch(sbuffer, buffer, currlen, maxlen, '0');
             --padlen;
         }
     }
     while (padlen > 0) {
-        (*outch_fn)(buffer, currlen, maxlen, ' ');
+        doapr_outch(sbuffer, buffer, currlen, maxlen, ' ');
         --padlen;
     }
     if (signvalue)
-        (*outch_fn)(buffer, currlen, maxlen, signvalue);
+        doapr_outch(sbuffer, buffer, currlen, maxlen, signvalue);
 
     while (iplace > 0)
-        (*outch_fn)(buffer, currlen, maxlen, iconvert[--iplace]);
+        doapr_outch(sbuffer, buffer, currlen, maxlen, iconvert[--iplace]);
 
     /*
      * Decimal point. This should probably use locale to find the correct
      * char to print out.
      */
     if (max > 0) {
-        (*outch_fn)(buffer, currlen, maxlen, '.');
+        doapr_outch(sbuffer, buffer, currlen, maxlen, '.');
 
         while (fplace > 0)
-            (*outch_fn)(buffer, currlen, maxlen, fconvert[--fplace]);
+            doapr_outch(sbuffer, buffer, currlen, maxlen, fconvert[--fplace]);
     }
     while (zpadlen > 0) {
-        (*outch_fn)(buffer, currlen, maxlen, '0');
+        doapr_outch(sbuffer, buffer, currlen, maxlen, '0');
         --zpadlen;
     }
 
     while (padlen < 0) {
-        (*outch_fn)(buffer, currlen, maxlen, ' ');
+        doapr_outch(sbuffer, buffer, currlen, maxlen, ' ');
         ++padlen;
     }
 }
 
-static int
-dopr_copy(
-    size_t len)
-{
-    return len;
-}
-
-#ifdef USE_ALLOCATING_PRINT
-static int
-doapr_copy(
-    size_t len)
-{
-    /* Return as high an integer as possible */
-    return INT_MAX;
-}
-#endif
-
-static int
-dopr_isbig(
-    size_t currlen,
-    size_t maxlen)
-{
-    return currlen > maxlen;
-}
-
-#ifdef USE_ALLOCATING_PRINT
-static int
-doapr_isbig(
-    size_t currlen,
-    size_t maxlen)
-{
-    return 0;
-}
-#endif
-
-static void
-dopr_outch(
-    char **buffer,
-    size_t *currlen,
-    size_t *maxlen,
-    int c)
-{
-    if (*currlen < *maxlen)
-        (*buffer)[(*currlen)++] = (char)c;
-    return;
-}
-
-#ifdef USE_ALLOCATING_PRINT
 static void
 doapr_outch(
+    char **sbuffer,
     char **buffer,
     size_t *currlen,
     size_t *maxlen,
     int c)
 {
-    if (*buffer == NULL) {
-       if (*maxlen == 0)
-           *maxlen = 1024;
-       *buffer = OPENSSL_malloc(*maxlen);
+    /* If we haven't at least one buffer, someone has doe a big booboo */
+    assert(*sbuffer != NULL || buffer != NULL);
+
+    if (buffer) {
+       while (*currlen >= *maxlen) {
+           if (*buffer == NULL) {
+               assert(*sbuffer != NULL);
+               if (*maxlen == 0)
+                   *maxlen = 1024;
+               *buffer = OPENSSL_malloc(*maxlen);
+               if (*currlen > 0)
+                   memcpy(*buffer, *sbuffer, *currlen);
+               *sbuffer = NULL;
+           } else {
+               *maxlen += 1024;
+               *buffer = OPENSSL_realloc(*buffer, *maxlen);
+           }
+       }
+       /* What to do if *buffer is NULL? */
+       assert(*sbuffer != NULL || *buffer != NULL);
     }
-    while (*currlen >= *maxlen) {
-       *maxlen += 1024;
-       *buffer = OPENSSL_realloc(*buffer, *maxlen);
+
+    if (*currlen < *maxlen) {
+       if (*sbuffer)
+           (*sbuffer)[(*currlen)++] = (char)c;
+       else
+           (*buffer)[(*currlen)++] = (char)c;
     }
-    /* What to do if *buffer is NULL? */
-    assert(*buffer != NULL);
 
-    (*buffer)[(*currlen)++] = (char)c;
     return;
 }
-#endif
 
 /***************************************************************************/
 
@@ -812,33 +743,39 @@ int BIO_printf (BIO *bio, const char *format, ...)
        {
        va_list args;
        int ret;
-       size_t retlen;
-#ifdef USE_ALLOCATING_PRINT
-       char *hugebuf;
-#else
-       MS_STATIC char hugebuf[1024*2]; /* 10k in one chunk is the limit */
-#endif
 
        va_start(args, format);
 
-#ifndef USE_ALLOCATING_PRINT
-       hugebuf[0]='\0';
-       dopr(hugebuf, sizeof(hugebuf), &retlen, format, args);
-#else
-       hugebuf = NULL;
+       ret = BIO_vprintf(bio, format, args);
+
+       va_end(args);
+       return(ret);
+       }
+
+int BIO_vprintf (BIO *bio, const char *format, va_list args)
+       {
+       int ret;
+       size_t retlen;
+       MS_STATIC char hugebuf[1024*10];
+       char *hugebufp = hugebuf;
+       size_t hugebufsize = sizeof(hugebuf);
+       char *dynbuf = NULL;
+       int ignored;
+
+       dynbuf = NULL;
        CRYPTO_push_info("doapr()");
-       doapr(&hugebuf, &retlen, format, args);
-       if (hugebuf)
+       _dopr(&hugebufp, &dynbuf, &hugebufsize,
+               &retlen, &ignored, format, args);
+       if (dynbuf)
+               {
+               ret=BIO_write(bio, dynbuf, (int)retlen);
+               OPENSSL_free(dynbuf);
+               }
+       else
                {
-#endif
                ret=BIO_write(bio, hugebuf, (int)retlen);
-
-#ifdef USE_ALLOCATING_PRINT
-               OPENSSL_free(hugebuf);
                }
        CRYPTO_pop_info();
-#endif
-       va_end(args);
        return(ret);
        }
 
@@ -849,12 +786,23 @@ int BIO_printf (BIO *bio, const char *format, ...)
 int BIO_snprintf(char *buf, size_t n, const char *format, ...)
        {
        va_list args;
+       int ret;
+
+       va_start(args, format);
+
+       ret = BIO_vsnprintf(buf, n, format, args);
+
+       va_end(args);
+       return(ret);
+       }
+
+int BIO_vsnprintf(char *buf, size_t n, const char *format, va_list args)
+       {
        size_t retlen;
        int truncated;
 
-       va_start(args, format);
-       _dopr(dopr_outch, dopr_isbig, dopr_copy,
-               &buf, &n, &retlen, &truncated, format, args);
+       _dopr(&buf, NULL, &n, &retlen, &truncated, format, args);
+
        if (truncated)
                /* In case of truncation, return -1 like traditional snprintf.
                 * (Current drafts for ISO/IEC 9899 say snprintf should return
index c65dc142a5c3af239d4c8dbe145c95212679f1a3..f50e8f98a3dababc89e12c63de8ddb8a4b83f770 100644 (file)
@@ -506,6 +506,6 @@ static int buffer_gets(BIO *b, char *buf, int size)
 
 static int buffer_puts(BIO *b, const char *str)
        {
-       return(BIO_write(b,str,strlen(str)));
+       return(buffer_write(b,str,strlen(str)));
        }
 
index 76748e05d8eb18b25a4743af7ea65aaffe7e3bda..0e1a16ce62a96b7f2ef6e4c5a424994fcff8bb55 100644 (file)
@@ -62,6 +62,7 @@
 #ifndef NO_FP_API
 # include <stdio.h>
 #endif
+#include <stdarg.h>
 
 #include <openssl/crypto.h>
 
@@ -600,7 +601,9 @@ void BIO_copy_next_retry(BIO *b);
 long BIO_ghbn_ctrl(int cmd,int iarg,char *parg);
 
 int BIO_printf(BIO *bio, const char *format, ...);
+int BIO_vprintf(BIO *bio, const char *format, va_list args);
 int BIO_snprintf(char *buf, size_t n, const char *format, ...);
+int BIO_vsnprintf(char *buf, size_t n, const char *format, va_list args);
 
 /* BEGIN ERROR CODES */
 /* The following lines are auto generated by the script mkerr.pl. Any changes
@@ -635,6 +638,7 @@ int BIO_snprintf(char *buf, size_t n, const char *format, ...);
 #define BIO_F_CONN_CTRL                                         127
 #define BIO_F_CONN_STATE                                115
 #define BIO_F_FILE_CTRL                                         116
+#define BIO_F_MEM_READ                                  128
 #define BIO_F_MEM_WRITE                                         117
 #define BIO_F_SSL_NEW                                   118
 #define BIO_F_WSASTARTUP                                119
@@ -645,6 +649,7 @@ int BIO_snprintf(char *buf, size_t n, const char *format, ...);
 #define BIO_R_BAD_HOSTNAME_LOOKUP                       102
 #define BIO_R_BROKEN_PIPE                               124
 #define BIO_R_CONNECT_ERROR                             103
+#define BIO_R_EOF_ON_MEMORY_BIO                                 127
 #define BIO_R_ERROR_SETTING_NBIO                        104
 #define BIO_R_ERROR_SETTING_NBIO_ON_ACCEPTED_SOCKET     105
 #define BIO_R_ERROR_SETTING_NBIO_ON_ACCEPT_SOCKET       106
index f38e7b917865c38bc829c88f69bb756f2d2c4ffc..fb99195471241b551edceaa58e44f3941bacf90a 100644 (file)
@@ -91,6 +91,7 @@ static ERR_STRING_DATA BIO_str_functs[]=
 {ERR_PACK(0,BIO_F_CONN_CTRL,0),        "CONN_CTRL"},
 {ERR_PACK(0,BIO_F_CONN_STATE,0),       "CONN_STATE"},
 {ERR_PACK(0,BIO_F_FILE_CTRL,0),        "FILE_CTRL"},
+{ERR_PACK(0,BIO_F_MEM_READ,0), "MEM_READ"},
 {ERR_PACK(0,BIO_F_MEM_WRITE,0),        "MEM_WRITE"},
 {ERR_PACK(0,BIO_F_SSL_NEW,0),  "SSL_new"},
 {ERR_PACK(0,BIO_F_WSASTARTUP,0),       "WSASTARTUP"},
@@ -104,6 +105,7 @@ static ERR_STRING_DATA BIO_str_reasons[]=
 {BIO_R_BAD_HOSTNAME_LOOKUP               ,"bad hostname lookup"},
 {BIO_R_BROKEN_PIPE                       ,"broken pipe"},
 {BIO_R_CONNECT_ERROR                     ,"connect error"},
+{BIO_R_EOF_ON_MEMORY_BIO                 ,"EOF on memory BIO"},
 {BIO_R_ERROR_SETTING_NBIO                ,"error setting nbio"},
 {BIO_R_ERROR_SETTING_NBIO_ON_ACCEPTED_SOCKET,"error setting nbio on accepted socket"},
 {BIO_R_ERROR_SETTING_NBIO_ON_ACCEPT_SOCKET,"error setting nbio on accept socket"},
@@ -124,8 +126,8 @@ static ERR_STRING_DATA BIO_str_reasons[]=
 {BIO_R_UNABLE_TO_LISTEN_SOCKET           ,"unable to listen socket"},
 {BIO_R_UNINITIALIZED                     ,"uninitialized"},
 {BIO_R_UNSUPPORTED_METHOD                ,"unsupported method"},
-{BIO_R_WRITE_TO_READ_ONLY_BIO            ,"write to read only bio"},
-{BIO_R_WSASTARTUP                        ,"wsastartup"},
+{BIO_R_WRITE_TO_READ_ONLY_BIO            ,"write to read only BIO"},
+{BIO_R_WSASTARTUP                        ,"WSAStartup"},
 {0,NULL}
        };
 
index d8cb83aaabaf8c592588cfefeba7d48a7dacda8b..ffdec3725d6da049984ac4cff696357ccd0e9c31 100644 (file)
@@ -201,13 +201,7 @@ int BIO_write(BIO *b, const void *in, int inl)
 
        if (i > 0) b->num_write+=(unsigned long)i;
 
-       /* This is evil and not thread safe.  If the BIO has been freed,
-        * we must not call the callback.  The only way to be able to
-        * determine this is the reference count which is now invalid since
-        * the memory has been free()ed.
-        */
-       if (b->references <= 0) abort();
-       if (cb != NULL) /* && (b->references >= 1)) */
+       if (cb != NULL)
                i=(int)cb(b,BIO_CB_WRITE|BIO_CB_RETURN,in,inl,
                        0L,(long)i);
        return(i);
@@ -238,6 +232,8 @@ int BIO_puts(BIO *b, const char *in)
 
        i=b->method->bputs(b,in);
 
+       if (i > 0) b->num_write+=(unsigned long)i;
+
        if (cb != NULL)
                i=(int)cb(b,BIO_CB_PUTS|BIO_CB_RETURN,in,0,
                        0L,(long)i);
index 7ed26f358f8e42bd0888b63951bdf2b798fb7799..e092528b3e6a353b3b7173f65a165b2671265f69 100644 (file)
@@ -188,7 +188,7 @@ static int conn_state(BIO *b, BIO_CONNECT *c)
                case BIO_CONN_S_GET_PORT:
                        if (c->param_port == NULL)
                                {
-                               abort();
+                               /* abort(); */
                                goto exit_loop;
                                }
                        else if (BIO_get_port(c->param_port,&c->port) <= 0)
@@ -299,7 +299,7 @@ static int conn_state(BIO *b, BIO_CONNECT *c)
                        ret=1;
                        goto exit_loop;
                default:
-                       abort();
+                       /* abort(); */
                        goto exit_loop;
                        }
 
index d5f905b62be46ca0bd5f24841017a8d0dee637b5..1edf16a76fd807ae922b8360ee419e795158cb0f 100644 (file)
@@ -115,7 +115,7 @@ static int MS_CALLBACK slg_puts(BIO *h, const char *str);
 static long MS_CALLBACK slg_ctrl(BIO *h, int cmd, long arg1, void *arg2);
 static int MS_CALLBACK slg_new(BIO *h);
 static int MS_CALLBACK slg_free(BIO *data);
-static void xopenlog(BIO* bp, const char* name, int level);
+static void xopenlog(BIO* bp, char* name, int level);
 static void xsyslog(BIO* bp, int priority, const char* string);
 static void xcloselog(BIO* bp);
 #ifdef WIN32
@@ -170,7 +170,36 @@ static int MS_CALLBACK slg_write(BIO *b, const char *in, int inl)
        int ret= inl;
        char* buf;
        char* pp;
-       int priority;
+       int priority, i;
+       static struct
+               {
+               int strl;
+               char str[10];
+               int log_level;
+               }
+       mapping[] =
+               {
+               { 6, "PANIC ", LOG_EMERG },
+               { 6, "EMERG ", LOG_EMERG },
+               { 4, "EMR ", LOG_EMERG },
+               { 6, "ALERT ", LOG_ALERT },
+               { 4, "ALR ", LOG_ALERT },
+               { 5, "CRIT ", LOG_CRIT },
+               { 4, "CRI ", LOG_CRIT },
+               { 6, "ERROR ", LOG_ERR },
+               { 4, "ERR ", LOG_ERR },
+               { 8, "WARNING ", LOG_WARNING },
+               { 5, "WARN ", LOG_WARNING },
+               { 4, "WAR ", LOG_WARNING },
+               { 7, "NOTICE ", LOG_NOTICE },
+               { 5, "NOTE ", LOG_NOTICE },
+               { 4, "NOT ", LOG_NOTICE },
+               { 5, "INFO ", LOG_INFO },
+               { 4, "INF ", LOG_INFO },
+               { 6, "DEBUG ", LOG_DEBUG },
+               { 4, "DBG ", LOG_DEBUG },
+               { 0, "", LOG_ERR } /* The default */
+               };
 
        if((buf= (char *)OPENSSL_malloc(inl+ 1)) == NULL){
                return(0);
@@ -178,19 +207,10 @@ static int MS_CALLBACK slg_write(BIO *b, const char *in, int inl)
        strncpy(buf, in, inl);
        buf[inl]= '\0';
 
-       if(strncmp(buf, "ERR ", 4) == 0){
-               priority= LOG_ERR;
-               pp= buf+ 4;
-       }else if(strncmp(buf, "WAR ", 4) == 0){
-               priority= LOG_WARNING;
-               pp= buf+ 4;
-       }else if(strncmp(buf, "INF ", 4) == 0){
-               priority= LOG_INFO;
-               pp= buf+ 4;
-       }else{
-               priority= LOG_ERR;
-               pp= buf;
-       }
+       i = 0;
+       while(strncmp(buf, mapping[i].str, mapping[i].strl) != 0) i++;
+       priority = mapping[i].log_level;
+       pp = buf + mapping[i].strl;
 
        xsyslog(b, priority, pp);
 
@@ -223,7 +243,7 @@ static int MS_CALLBACK slg_puts(BIO *bp, const char *str)
 
 #if defined(WIN32)
 
-static void xopenlog(BIO* bp, const char* name, int level)
+static void xopenlog(BIO* bp, char* name, int level)
 {
        if ( !register_event_source )
                {
@@ -257,16 +277,22 @@ static void xsyslog(BIO *bp, int priority, const char *string)
 
        switch (priority)
                {
+       case LOG_EMERG:
+       case LOG_ALERT:
+       case LOG_CRIT:
        case LOG_ERR:
                evtype = EVENTLOG_ERROR_TYPE;
                break;
        case LOG_WARNING:
                evtype = EVENTLOG_WARNING_TYPE;
                break;
+       case LOG_NOTICE:
        case LOG_INFO:
+       case LOG_DEBUG:
                evtype = EVENTLOG_INFORMATION_TYPE;
                break;
-       default:
+       default:                /* Should never happen, but set it
+                                  as error anyway. */
                evtype = EVENTLOG_ERROR_TYPE;
                break;
                }
@@ -291,7 +317,7 @@ static void xcloselog(BIO* bp)
 
 static int VMS_OPC_target = LOG_DAEMON;
 
-static void xopenlog(BIO* bp, const char* name, int level)
+static void xopenlog(BIO* bp, char* name, int level)
 {
        VMS_OPC_target = level; 
 }
@@ -348,7 +374,7 @@ static void xcloselog(BIO* bp)
 
 #else /* Unix */
 
-static void xopenlog(BIO* bp, const char* name, int level)
+static void xopenlog(BIO* bp, char* name, int level)
 {
        openlog(name, LOG_PID|LOG_CONS, level);
 }
index f8c144accde22534537f985d23bc6b02d2cf20d7..28ff7582bff87a52da73390879543aa57b8ebd1d 100644 (file)
@@ -163,9 +163,9 @@ static int mem_read(BIO *b, char *out, int outl)
                }
        } else if (bm->length == 0)
                {
-               if (b->num != 0)
+               ret = b->num;
+               if (ret != 0)
                        BIO_set_retry_read(b);
-               ret= b->num;
                }
        return(ret);
        }
@@ -208,15 +208,20 @@ static long mem_ctrl(BIO *b, int cmd, long num, void *ptr)
        switch (cmd)
                {
        case BIO_CTRL_RESET:
-               if (bm->data != NULL) {
+               if (bm->data != NULL)
+                       {
                        /* For read only case reset to the start again */
                        if(b->flags & BIO_FLAGS_MEM_RDONLY) 
-                                       bm->data -= bm->max - bm->length;
-                       else {
+                               {
+                               bm->data -= bm->max - bm->length;
+                               bm->length = bm->max;
+                               }
+                       else
+                               {
                                memset(bm->data,0,bm->max);
                                bm->length=0;
+                               }
                        }
-               }
                break;
        case BIO_CTRL_EOF:
                ret=(long)(bm->length == 0);
index d49b46617051f8d634205ac9188f847a04fad995..85be16a5b64c85a84038c61f04b8c520bb0a08e1 100644 (file)
@@ -173,89 +173,90 @@ bn_add.o: ../../include/openssl/e_os.h ../../include/openssl/e_os2.h
 bn_add.o: ../../include/openssl/err.h ../../include/openssl/lhash.h
 bn_add.o: ../../include/openssl/opensslconf.h ../../include/openssl/opensslv.h
 bn_add.o: ../../include/openssl/safestack.h ../../include/openssl/stack.h
-bn_add.o: ../cryptlib.h bn_lcl.h
+bn_add.o: ../../include/openssl/symhacks.h ../cryptlib.h bn_lcl.h
 bn_asm.o: ../../include/openssl/bio.h ../../include/openssl/bn.h
 bn_asm.o: ../../include/openssl/buffer.h ../../include/openssl/crypto.h
 bn_asm.o: ../../include/openssl/e_os.h ../../include/openssl/e_os2.h
 bn_asm.o: ../../include/openssl/err.h ../../include/openssl/lhash.h
 bn_asm.o: ../../include/openssl/opensslconf.h ../../include/openssl/opensslv.h
 bn_asm.o: ../../include/openssl/safestack.h ../../include/openssl/stack.h
-bn_asm.o: ../cryptlib.h bn_lcl.h
+bn_asm.o: ../../include/openssl/symhacks.h ../cryptlib.h bn_lcl.h
 bn_blind.o: ../../include/openssl/bio.h ../../include/openssl/bn.h
 bn_blind.o: ../../include/openssl/buffer.h ../../include/openssl/crypto.h
 bn_blind.o: ../../include/openssl/e_os.h ../../include/openssl/e_os2.h
 bn_blind.o: ../../include/openssl/err.h ../../include/openssl/lhash.h
 bn_blind.o: ../../include/openssl/opensslconf.h
 bn_blind.o: ../../include/openssl/opensslv.h ../../include/openssl/safestack.h
-bn_blind.o: ../../include/openssl/stack.h ../cryptlib.h bn_lcl.h
+bn_blind.o: ../../include/openssl/stack.h ../../include/openssl/symhacks.h
+bn_blind.o: ../cryptlib.h bn_lcl.h
 bn_ctx.o: ../../include/openssl/bio.h ../../include/openssl/bn.h
 bn_ctx.o: ../../include/openssl/buffer.h ../../include/openssl/crypto.h
 bn_ctx.o: ../../include/openssl/e_os.h ../../include/openssl/e_os2.h
 bn_ctx.o: ../../include/openssl/err.h ../../include/openssl/lhash.h
 bn_ctx.o: ../../include/openssl/opensslconf.h ../../include/openssl/opensslv.h
 bn_ctx.o: ../../include/openssl/safestack.h ../../include/openssl/stack.h
-bn_ctx.o: ../cryptlib.h
+bn_ctx.o: ../../include/openssl/symhacks.h ../cryptlib.h
 bn_div.o: ../../include/openssl/bio.h ../../include/openssl/bn.h
 bn_div.o: ../../include/openssl/buffer.h ../../include/openssl/crypto.h
 bn_div.o: ../../include/openssl/e_os.h ../../include/openssl/e_os2.h
 bn_div.o: ../../include/openssl/err.h ../../include/openssl/lhash.h
 bn_div.o: ../../include/openssl/opensslconf.h ../../include/openssl/opensslv.h
 bn_div.o: ../../include/openssl/safestack.h ../../include/openssl/stack.h
-bn_div.o: ../cryptlib.h bn_lcl.h
+bn_div.o: ../../include/openssl/symhacks.h ../cryptlib.h bn_lcl.h
 bn_err.o: ../../include/openssl/bio.h ../../include/openssl/bn.h
 bn_err.o: ../../include/openssl/crypto.h ../../include/openssl/err.h
 bn_err.o: ../../include/openssl/lhash.h ../../include/openssl/opensslconf.h
 bn_err.o: ../../include/openssl/opensslv.h ../../include/openssl/safestack.h
-bn_err.o: ../../include/openssl/stack.h
+bn_err.o: ../../include/openssl/stack.h ../../include/openssl/symhacks.h
 bn_exp.o: ../../include/openssl/bio.h ../../include/openssl/bn.h
 bn_exp.o: ../../include/openssl/buffer.h ../../include/openssl/crypto.h
 bn_exp.o: ../../include/openssl/e_os.h ../../include/openssl/e_os2.h
 bn_exp.o: ../../include/openssl/err.h ../../include/openssl/lhash.h
 bn_exp.o: ../../include/openssl/opensslconf.h ../../include/openssl/opensslv.h
 bn_exp.o: ../../include/openssl/safestack.h ../../include/openssl/stack.h
-bn_exp.o: ../cryptlib.h bn_lcl.h
+bn_exp.o: ../../include/openssl/symhacks.h ../cryptlib.h bn_lcl.h
 bn_exp2.o: ../../include/openssl/bio.h ../../include/openssl/bn.h
 bn_exp2.o: ../../include/openssl/buffer.h ../../include/openssl/crypto.h
 bn_exp2.o: ../../include/openssl/e_os.h ../../include/openssl/e_os2.h
 bn_exp2.o: ../../include/openssl/err.h ../../include/openssl/lhash.h
 bn_exp2.o: ../../include/openssl/opensslconf.h ../../include/openssl/opensslv.h
 bn_exp2.o: ../../include/openssl/safestack.h ../../include/openssl/stack.h
-bn_exp2.o: ../cryptlib.h bn_lcl.h
+bn_exp2.o: ../../include/openssl/symhacks.h ../cryptlib.h bn_lcl.h
 bn_gcd.o: ../../include/openssl/bio.h ../../include/openssl/bn.h
 bn_gcd.o: ../../include/openssl/buffer.h ../../include/openssl/crypto.h
 bn_gcd.o: ../../include/openssl/e_os.h ../../include/openssl/e_os2.h
 bn_gcd.o: ../../include/openssl/err.h ../../include/openssl/lhash.h
 bn_gcd.o: ../../include/openssl/opensslconf.h ../../include/openssl/opensslv.h
 bn_gcd.o: ../../include/openssl/safestack.h ../../include/openssl/stack.h
-bn_gcd.o: ../cryptlib.h bn_lcl.h
+bn_gcd.o: ../../include/openssl/symhacks.h ../cryptlib.h bn_lcl.h
 bn_lib.o: ../../include/openssl/bio.h ../../include/openssl/bn.h
 bn_lib.o: ../../include/openssl/buffer.h ../../include/openssl/crypto.h
 bn_lib.o: ../../include/openssl/e_os.h ../../include/openssl/e_os2.h
 bn_lib.o: ../../include/openssl/err.h ../../include/openssl/lhash.h
 bn_lib.o: ../../include/openssl/opensslconf.h ../../include/openssl/opensslv.h
 bn_lib.o: ../../include/openssl/safestack.h ../../include/openssl/stack.h
-bn_lib.o: ../cryptlib.h bn_lcl.h
+bn_lib.o: ../../include/openssl/symhacks.h ../cryptlib.h bn_lcl.h
 bn_mont.o: ../../include/openssl/bio.h ../../include/openssl/bn.h
 bn_mont.o: ../../include/openssl/buffer.h ../../include/openssl/crypto.h
 bn_mont.o: ../../include/openssl/e_os.h ../../include/openssl/e_os2.h
 bn_mont.o: ../../include/openssl/err.h ../../include/openssl/lhash.h
 bn_mont.o: ../../include/openssl/opensslconf.h ../../include/openssl/opensslv.h
 bn_mont.o: ../../include/openssl/safestack.h ../../include/openssl/stack.h
-bn_mont.o: ../cryptlib.h bn_lcl.h
+bn_mont.o: ../../include/openssl/symhacks.h ../cryptlib.h bn_lcl.h
 bn_mpi.o: ../../include/openssl/bio.h ../../include/openssl/bn.h
 bn_mpi.o: ../../include/openssl/buffer.h ../../include/openssl/crypto.h
 bn_mpi.o: ../../include/openssl/e_os.h ../../include/openssl/e_os2.h
 bn_mpi.o: ../../include/openssl/err.h ../../include/openssl/lhash.h
 bn_mpi.o: ../../include/openssl/opensslconf.h ../../include/openssl/opensslv.h
 bn_mpi.o: ../../include/openssl/safestack.h ../../include/openssl/stack.h
-bn_mpi.o: ../cryptlib.h bn_lcl.h
+bn_mpi.o: ../../include/openssl/symhacks.h ../cryptlib.h bn_lcl.h
 bn_mul.o: ../../include/openssl/bio.h ../../include/openssl/bn.h
 bn_mul.o: ../../include/openssl/buffer.h ../../include/openssl/crypto.h
 bn_mul.o: ../../include/openssl/e_os.h ../../include/openssl/e_os2.h
 bn_mul.o: ../../include/openssl/err.h ../../include/openssl/lhash.h
 bn_mul.o: ../../include/openssl/opensslconf.h ../../include/openssl/opensslv.h
 bn_mul.o: ../../include/openssl/safestack.h ../../include/openssl/stack.h
-bn_mul.o: ../cryptlib.h bn_lcl.h
+bn_mul.o: ../../include/openssl/symhacks.h ../cryptlib.h bn_lcl.h
 bn_prime.o: ../../include/openssl/bio.h ../../include/openssl/bn.h
 bn_prime.o: ../../include/openssl/buffer.h ../../include/openssl/crypto.h
 bn_prime.o: ../../include/openssl/e_os.h ../../include/openssl/e_os2.h
@@ -263,46 +264,49 @@ bn_prime.o: ../../include/openssl/err.h ../../include/openssl/lhash.h
 bn_prime.o: ../../include/openssl/opensslconf.h
 bn_prime.o: ../../include/openssl/opensslv.h ../../include/openssl/rand.h
 bn_prime.o: ../../include/openssl/safestack.h ../../include/openssl/stack.h
-bn_prime.o: ../cryptlib.h bn_lcl.h bn_prime.h
+bn_prime.o: ../../include/openssl/symhacks.h ../cryptlib.h bn_lcl.h bn_prime.h
 bn_print.o: ../../include/openssl/bio.h ../../include/openssl/bn.h
 bn_print.o: ../../include/openssl/buffer.h ../../include/openssl/crypto.h
 bn_print.o: ../../include/openssl/e_os.h ../../include/openssl/e_os2.h
 bn_print.o: ../../include/openssl/err.h ../../include/openssl/lhash.h
 bn_print.o: ../../include/openssl/opensslconf.h
 bn_print.o: ../../include/openssl/opensslv.h ../../include/openssl/safestack.h
-bn_print.o: ../../include/openssl/stack.h ../cryptlib.h bn_lcl.h
+bn_print.o: ../../include/openssl/stack.h ../../include/openssl/symhacks.h
+bn_print.o: ../cryptlib.h bn_lcl.h
 bn_rand.o: ../../include/openssl/bio.h ../../include/openssl/bn.h
 bn_rand.o: ../../include/openssl/buffer.h ../../include/openssl/crypto.h
 bn_rand.o: ../../include/openssl/e_os.h ../../include/openssl/e_os2.h
 bn_rand.o: ../../include/openssl/err.h ../../include/openssl/lhash.h
 bn_rand.o: ../../include/openssl/opensslconf.h ../../include/openssl/opensslv.h
 bn_rand.o: ../../include/openssl/rand.h ../../include/openssl/safestack.h
-bn_rand.o: ../../include/openssl/stack.h ../cryptlib.h bn_lcl.h
+bn_rand.o: ../../include/openssl/stack.h ../../include/openssl/symhacks.h
+bn_rand.o: ../cryptlib.h bn_lcl.h
 bn_recp.o: ../../include/openssl/bio.h ../../include/openssl/bn.h
 bn_recp.o: ../../include/openssl/buffer.h ../../include/openssl/crypto.h
 bn_recp.o: ../../include/openssl/e_os.h ../../include/openssl/e_os2.h
 bn_recp.o: ../../include/openssl/err.h ../../include/openssl/lhash.h
 bn_recp.o: ../../include/openssl/opensslconf.h ../../include/openssl/opensslv.h
 bn_recp.o: ../../include/openssl/safestack.h ../../include/openssl/stack.h
-bn_recp.o: ../cryptlib.h bn_lcl.h
+bn_recp.o: ../../include/openssl/symhacks.h ../cryptlib.h bn_lcl.h
 bn_shift.o: ../../include/openssl/bio.h ../../include/openssl/bn.h
 bn_shift.o: ../../include/openssl/buffer.h ../../include/openssl/crypto.h
 bn_shift.o: ../../include/openssl/e_os.h ../../include/openssl/e_os2.h
 bn_shift.o: ../../include/openssl/err.h ../../include/openssl/lhash.h
 bn_shift.o: ../../include/openssl/opensslconf.h
 bn_shift.o: ../../include/openssl/opensslv.h ../../include/openssl/safestack.h
-bn_shift.o: ../../include/openssl/stack.h ../cryptlib.h bn_lcl.h
+bn_shift.o: ../../include/openssl/stack.h ../../include/openssl/symhacks.h
+bn_shift.o: ../cryptlib.h bn_lcl.h
 bn_sqr.o: ../../include/openssl/bio.h ../../include/openssl/bn.h
 bn_sqr.o: ../../include/openssl/buffer.h ../../include/openssl/crypto.h
 bn_sqr.o: ../../include/openssl/e_os.h ../../include/openssl/e_os2.h
 bn_sqr.o: ../../include/openssl/err.h ../../include/openssl/lhash.h
 bn_sqr.o: ../../include/openssl/opensslconf.h ../../include/openssl/opensslv.h
 bn_sqr.o: ../../include/openssl/safestack.h ../../include/openssl/stack.h
-bn_sqr.o: ../cryptlib.h bn_lcl.h
+bn_sqr.o: ../../include/openssl/symhacks.h ../cryptlib.h bn_lcl.h
 bn_word.o: ../../include/openssl/bio.h ../../include/openssl/bn.h
 bn_word.o: ../../include/openssl/buffer.h ../../include/openssl/crypto.h
 bn_word.o: ../../include/openssl/e_os.h ../../include/openssl/e_os2.h
 bn_word.o: ../../include/openssl/err.h ../../include/openssl/lhash.h
 bn_word.o: ../../include/openssl/opensslconf.h ../../include/openssl/opensslv.h
 bn_word.o: ../../include/openssl/safestack.h ../../include/openssl/stack.h
-bn_word.o: ../cryptlib.h bn_lcl.h
+bn_word.o: ../../include/openssl/symhacks.h ../cryptlib.h bn_lcl.h
index d292394c0fd13f5056b1829f453029fc95c8bffd..1eb8395b25c3c6c2a0f521dbb54d52d1cedceff3 100644 (file)
@@ -233,7 +233,7 @@ typedef struct bignum_st
        BN_ULONG *d;    /* Pointer to an array of 'BN_BITS2' bit chunks. */
        int top;        /* Index of last used d +1. */
        /* The next are internal book keeping for bn_expand. */
-       int max;        /* Size of the d array. */
+       int dmax;       /* Size of the d array. */
        int neg;        /* one if the number is negative */
        int flags;
        } BIGNUM;
@@ -435,9 +435,9 @@ int BN_div_recp(BIGNUM *dv, BIGNUM *rem, BIGNUM *m,
 
 /* library internal functions */
 
-#define bn_expand(a,bits) ((((((bits+BN_BITS2-1))/BN_BITS2)) <= (a)->max)?\
+#define bn_expand(a,bits) ((((((bits+BN_BITS2-1))/BN_BITS2)) <= (a)->dmax)?\
        (a):bn_expand2((a),(bits)/BN_BITS2+1))
-#define bn_wexpand(a,words) (((words) <= (a)->max)?(a):bn_expand2((a),(words)))
+#define bn_wexpand(a,words) (((words) <= (a)->dmax)?(a):bn_expand2((a),(words)))
 BIGNUM *bn_expand2(BIGNUM *a, int words);
 
 #define bn_fix_top(a) \
index 3329cc18e6ca6989ae70a4084593935688b472a0..44e52a40db8d68d8dab78ee1d7870ce560f6d3da 100644 (file)
@@ -227,7 +227,7 @@ BN_ULONG bn_div_words(BN_ULONG h, BN_ULONG l, BN_ULONG d)
 
 #else
 
-/* Divide h-l by d and return the result. */
+/* Divide h,l by d and return the result. */
 /* I need to test this some more :-( */
 BN_ULONG bn_div_words(BN_ULONG h, BN_ULONG l, BN_ULONG d)
        {
@@ -237,13 +237,8 @@ BN_ULONG bn_div_words(BN_ULONG h, BN_ULONG l, BN_ULONG d)
        if (d == 0) return(BN_MASK2);
 
        i=BN_num_bits_word(d);
-       if ((i != BN_BITS2) && (h > (BN_ULONG)1<<i))
-               {
-#if !defined(NO_STDIO) && !defined(WIN16)
-               fprintf(stderr,"Division would overflow (%d)\n",i);
-#endif
-               abort();
-               }
+       assert((i == BN_BITS2) || (h > (BN_ULONG)1<<i));
+
        i=BN_BITS2-i;
        if (h >= d) h-=d;
 
index 07af1d3b449b2c98baf9c9bbc9a208f8b2434dfd..c3772c243be575d8c321bc4f22fe3bc215008d59 100644 (file)
@@ -205,7 +205,7 @@ int BN_div(BIGNUM *dv, BIGNUM *rm, const BIGNUM *num, const BIGNUM *divisor,
        BN_init(&wnum);
        wnum.d=  &(snum->d[loop]);
        wnum.top= div_n;
-       wnum.max= snum->max+1; /* a bit of a lie */
+       wnum.dmax= snum->dmax+1; /* a bit of a lie */
 
        /* Get the top 2 words of sdiv */
        /* i=sdiv->top; */
index 97c35ea5958c2c88cd47ac9f38025bff539c7095..9c959921b49198fc7094cb16ed714ef5b38cf0d0 100644 (file)
@@ -228,7 +228,7 @@ extern "C" {
 /* This is used for internal error checking and is not normally used */
 #ifdef BN_DEBUG
 # include <assert.h>
-# define bn_check_top(a) assert ((a)->top >= 0 && (a)->top <= (a)->max);
+# define bn_check_top(a) assert ((a)->top >= 0 && (a)->top <= (a)->dmax);
 #else
 # define bn_check_top(a)
 #endif
index 81e5d7d98e8d804d8150e6c58ea467f47cd8ead7..b6b0ce4b3c9fe134396a5187b1dae3e4785e1034 100644 (file)
  * [including the GNU Public Licence.]
  */
 
+#ifndef BN_DEBUG
+# undef NDEBUG /* avoid conflicting definitions */
+# define NDEBUG
+#endif
+
+#include <assert.h>
 #include <stdio.h>
 #include "cryptlib.h"
 #include "bn_lcl.h"
@@ -244,14 +250,8 @@ int BN_num_bits(const BIGNUM *a)
 
        if (a->top == 0) return(0);
        l=a->d[a->top-1];
+       assert(l != 0);
        i=(a->top-1)*BN_BITS2;
-       if (l == 0)
-               {
-#if !defined(NO_STDIO) && !defined(WIN16)
-               fprintf(stderr,"BAD TOP VALUE\n");
-#endif
-               abort();
-               }
        return(i+BN_num_bits_word(l));
        }
 
@@ -262,7 +262,7 @@ void BN_clear_free(BIGNUM *a)
        if (a == NULL) return;
        if (a->d != NULL)
                {
-               memset(a->d,0,a->max*sizeof(a->d[0]));
+               memset(a->d,0,a->dmax*sizeof(a->d[0]));
                if (!(BN_get_flags(a,BN_FLG_STATIC_DATA)))
                        OPENSSL_free(a->d);
                }
@@ -299,7 +299,7 @@ BIGNUM *BN_new(void)
        ret->flags=BN_FLG_MALLOCED;
        ret->top=0;
        ret->neg=0;
-       ret->max=0;
+       ret->dmax=0;
        ret->d=NULL;
        return(ret);
        }
@@ -317,7 +317,7 @@ BIGNUM *bn_expand2(BIGNUM *b, int words)
 
        bn_check_top(b);
 
-       if (words > b->max)
+       if (words > b->dmax)
                {
                bn_check_top(b);        
                if (BN_get_flags(b,BN_FLG_STATIC_DATA))
@@ -427,17 +427,17 @@ BIGNUM *bn_expand2(BIGNUM *b, int words)
                        }
 
                b->d=a;
-               b->max=words;
+               b->dmax=words;
 
                /* Now need to zero any data between b->top and b->max */
 
                A= &(b->d[b->top]);
-               for (i=(b->max - b->top)>>3; i>0; i--,A+=8)
+               for (i=(b->dmax - b->top)>>3; i>0; i--,A+=8)
                        {
                        A[0]=0; A[1]=0; A[2]=0; A[3]=0;
                        A[4]=0; A[5]=0; A[6]=0; A[7]=0;
                        }
-               for (i=(b->max - b->top)&7; i>0; i--,A++)
+               for (i=(b->dmax - b->top)&7; i>0; i--,A++)
                        A[0]=0;
 #else
                        memset(A,0,sizeof(BN_ULONG)*(words+1));
@@ -508,7 +508,7 @@ BIGNUM *BN_copy(BIGNUM *a, const BIGNUM *b)
 void BN_clear(BIGNUM *a)
        {
        if (a->d != NULL)
-               memset(a->d,0,a->max*sizeof(a->d[0]));
+               memset(a->d,0,a->dmax*sizeof(a->d[0]));
        a->top=0;
        a->neg=0;
        }
index 6a54e8f4cf843a67bbeaea6db0292c37113d7307..d40a153f24d366d005bd430870b4e69ef556e440 100644 (file)
@@ -157,7 +157,22 @@ int BN_from_montgomery(BIGNUM *ret, BIGNUM *a, BN_MONT_CTX *mont,
 #endif
        for (i=0; i<nl; i++)
                {
+#ifdef __TANDEM
+                {
+                   long long t1;
+                   long long t2;
+                   long long t3;
+                   t1 = rp[0] * (n0 & 0177777);
+                   t2 = 037777600000l;
+                   t2 = n0 & t2;
+                   t3 = rp[0] & 0177777;
+                   t2 = (t3 * t2) & BN_MASK2;
+                   t1 = t1 + t2;
+                   v=bn_mul_add_words(rp,np,nl,(BN_ULONG) t1);
+                }
+#else
                v=bn_mul_add_words(rp,np,nl,(rp[0]*n0)&BN_MASK2);
+#endif
                nrp++;
                rp++;
                if (((nrp[-1]+=v)&BN_MASK2) >= v)
@@ -284,7 +299,7 @@ int BN_MONT_CTX_set(BN_MONT_CTX *mont, const BIGNUM *mod, BN_CTX *ctx)
                buf[1]=0;
                tmod.d=buf;
                tmod.top=1;
-               tmod.max=2;
+               tmod.dmax=2;
                tmod.neg=mod->neg;
                                                        /* Ri = R^-1 mod N*/
                if ((BN_mod_inverse(&Ri,R,&tmod,ctx)) == NULL)
index f3bdde969cc376a9344b9d58c6d8c6a97766bcd6..cd59baa2c4902910f34a0268627512a24e839f0e 100644 (file)
@@ -182,11 +182,16 @@ int BN_mul_word(BIGNUM *a, BN_ULONG w)
        w&=BN_MASK2;
        if (a->top)
                {
-               ll=bn_mul_words(a->d,a->d,a->top,w);
-               if (ll)
+               if (w == 0)
+                       BN_zero(a);
+               else
                        {
-                       if (bn_wexpand(a,a->top+1) == NULL) return(0);
-                       a->d[a->top++]=ll;
+                       ll=bn_mul_words(a->d,a->d,a->top,w);
+                       if (ll)
+                               {
+                               if (bn_wexpand(a,a->top+1) == NULL) return(0);
+                               a->d[a->top++]=ll;
+                               }
                        }
                }
        return(1);
index 73af3370695be292fe24662fd30e5c3a7a9a77fc..0fa79c4edb55ab7c1dd2c9a976659c2ced0d3a96 100644 (file)
 
 bn_div_words_abort(int i)
 {
+#ifdef BN_DEBUG
 #if !defined(NO_STDIO) && !defined(WIN16)
        fprintf(stderr,"Division would overflow (%d)\n",i);
 #endif
        abort();
+#endif
 }
index 741c1ee85aebaaa13cb213d5c329b31ce86777ab..4e11038c8b12d3c0504112cbe1b378f0b7cab4f4 100644 (file)
@@ -82,9 +82,11 @@ buf_err.o: ../../include/openssl/bio.h ../../include/openssl/buffer.h
 buf_err.o: ../../include/openssl/crypto.h ../../include/openssl/err.h
 buf_err.o: ../../include/openssl/lhash.h ../../include/openssl/opensslv.h
 buf_err.o: ../../include/openssl/safestack.h ../../include/openssl/stack.h
+buf_err.o: ../../include/openssl/symhacks.h
 buffer.o: ../../include/openssl/bio.h ../../include/openssl/buffer.h
 buffer.o: ../../include/openssl/crypto.h ../../include/openssl/e_os.h
 buffer.o: ../../include/openssl/e_os2.h ../../include/openssl/err.h
 buffer.o: ../../include/openssl/lhash.h ../../include/openssl/opensslconf.h
 buffer.o: ../../include/openssl/opensslv.h ../../include/openssl/safestack.h
-buffer.o: ../../include/openssl/stack.h ../cryptlib.h
+buffer.o: ../../include/openssl/stack.h ../../include/openssl/symhacks.h
+buffer.o: ../cryptlib.h
index 1aec7911e5fdedd1804e99ee10224241d25654b2..3064df2447988c917b2d63a91f1521c59e64104c 100644 (file)
@@ -86,16 +86,16 @@ c_rle.o: ../../include/openssl/bn.h ../../include/openssl/comp.h
 c_rle.o: ../../include/openssl/crypto.h ../../include/openssl/obj_mac.h
 c_rle.o: ../../include/openssl/objects.h ../../include/openssl/opensslconf.h
 c_rle.o: ../../include/openssl/opensslv.h ../../include/openssl/safestack.h
-c_rle.o: ../../include/openssl/stack.h
+c_rle.o: ../../include/openssl/stack.h ../../include/openssl/symhacks.h
 c_zlib.o: ../../include/openssl/asn1.h ../../include/openssl/bio.h
 c_zlib.o: ../../include/openssl/bn.h ../../include/openssl/comp.h
 c_zlib.o: ../../include/openssl/crypto.h ../../include/openssl/obj_mac.h
 c_zlib.o: ../../include/openssl/objects.h ../../include/openssl/opensslconf.h
 c_zlib.o: ../../include/openssl/opensslv.h ../../include/openssl/safestack.h
-c_zlib.o: ../../include/openssl/stack.h
+c_zlib.o: ../../include/openssl/stack.h ../../include/openssl/symhacks.h
 comp_lib.o: ../../include/openssl/asn1.h ../../include/openssl/bio.h
 comp_lib.o: ../../include/openssl/bn.h ../../include/openssl/comp.h
 comp_lib.o: ../../include/openssl/crypto.h ../../include/openssl/obj_mac.h
 comp_lib.o: ../../include/openssl/objects.h ../../include/openssl/opensslconf.h
 comp_lib.o: ../../include/openssl/opensslv.h ../../include/openssl/safestack.h
-comp_lib.o: ../../include/openssl/stack.h
+comp_lib.o: ../../include/openssl/stack.h ../../include/openssl/symhacks.h
index 80cdd9ccf7e65652a2932e6db7fec49645dc29b9..ea82d467270e3ce0ce9dbfedc0ab4fd04ff959db 100644 (file)
@@ -84,24 +84,25 @@ conf_api.o: ../../include/openssl/conf_api.h ../../include/openssl/crypto.h
 conf_api.o: ../../include/openssl/e_os.h ../../include/openssl/e_os2.h
 conf_api.o: ../../include/openssl/lhash.h ../../include/openssl/opensslconf.h
 conf_api.o: ../../include/openssl/opensslv.h ../../include/openssl/safestack.h
-conf_api.o: ../../include/openssl/stack.h
+conf_api.o: ../../include/openssl/stack.h ../../include/openssl/symhacks.h
 conf_def.o: ../../include/openssl/bio.h ../../include/openssl/buffer.h
 conf_def.o: ../../include/openssl/conf.h ../../include/openssl/conf_api.h
 conf_def.o: ../../include/openssl/crypto.h ../../include/openssl/e_os.h
 conf_def.o: ../../include/openssl/e_os2.h ../../include/openssl/err.h
 conf_def.o: ../../include/openssl/lhash.h ../../include/openssl/opensslconf.h
 conf_def.o: ../../include/openssl/opensslv.h ../../include/openssl/safestack.h
-conf_def.o: ../../include/openssl/stack.h conf_def.h
+conf_def.o: ../../include/openssl/stack.h ../../include/openssl/symhacks.h
+conf_def.o: conf_def.h
 conf_err.o: ../../include/openssl/bio.h ../../include/openssl/conf.h
 conf_err.o: ../../include/openssl/crypto.h ../../include/openssl/e_os.h
 conf_err.o: ../../include/openssl/e_os2.h ../../include/openssl/err.h
 conf_err.o: ../../include/openssl/lhash.h ../../include/openssl/opensslconf.h
 conf_err.o: ../../include/openssl/opensslv.h ../../include/openssl/safestack.h
-conf_err.o: ../../include/openssl/stack.h
+conf_err.o: ../../include/openssl/stack.h ../../include/openssl/symhacks.h
 conf_lib.o: ../../include/openssl/bio.h ../../include/openssl/conf.h
 conf_lib.o: ../../include/openssl/conf_api.h ../../include/openssl/crypto.h
 conf_lib.o: ../../include/openssl/e_os.h ../../include/openssl/e_os2.h
 conf_lib.o: ../../include/openssl/err.h ../../include/openssl/lhash.h
 conf_lib.o: ../../include/openssl/opensslconf.h
 conf_lib.o: ../../include/openssl/opensslv.h ../../include/openssl/safestack.h
-conf_lib.o: ../../include/openssl/stack.h
+conf_lib.o: ../../include/openssl/stack.h ../../include/openssl/symhacks.h
index 8b6bc9accb1692749464168ae9ff73050d3bdb92..919aebe313558ab5a3be0d205f049e1fb2958cd1 100644 (file)
 
 /* Part of the code in here was originally in conf.c, which is now removed */
 
+#ifndef CONF_DEBUG
+# undef NDEBUG /* avoid conflicting definitions */
+# define NDEBUG
+#endif
+
+#include <assert.h>
 #include <openssl/conf.h>
 #include <openssl/conf_api.h>
 
@@ -267,13 +273,7 @@ CONF_VALUE *_CONF_new_section(CONF *conf, char *section)
        v->value=(char *)sk;
        
        vv=(CONF_VALUE *)lh_insert(conf->data,v);
-       if (vv != NULL)
-               {
-#if !defined(NO_STDIO) && !defined(WIN16)
-               fprintf(stderr,"internal fault\n");
-#endif
-               abort();
-               }
+       assert(vv == NULL);
        ok=1;
 err:
        if (!ok)
index 1d9a126800023172d94861f6d9f70035af7f76bd..031d7f0bdd4b070665f7a6dc2cbeb4dfda8e3fa7 100644 (file)
@@ -86,7 +86,7 @@ $ ENDIF
 $!
 $! Define The Different Encryption Types.
 $!
-$ ENCRYPT_TYPES = "Basic,MD2,MD5,SHA,MDC2,HMAC,RIPEMD,"+ -
+$ ENCRYPT_TYPES = "Basic,MD2,MD4,MD5,SHA,MDC2,HMAC,RIPEMD,"+ -
                  "DES,RC2,RC4,RC5,IDEA,BF,CAST,"+ -
                  "BN,RSA,DSA,DH,DSO,"+ -
                  "BUFFER,BIO,STACK,LHASH,RAND,ERR,OBJECTS,"+ -
@@ -176,6 +176,7 @@ $ APPS_PKCS7 = "ENC/ENC;DEC/DEC;SIGN/SIGN;VERIFY/VERIFY,EXAMPLE"
 $
 $ LIB_ = "cryptlib,mem,mem_dbg,cversion,ex_data,tmdiff,cpt_err"
 $ LIB_MD2 = "md2_dgst,md2_one"
+$ LIB_MD4 = "md4_dgst,md4_one"
 $ LIB_MD5 = "md5_dgst,md5_one"
 $ LIB_SHA = "sha_dgst,sha1dgst,sha_one,sha1_one"
 $ LIB_MDC2 = "mdc2dgst,mdc2_one"
@@ -263,8 +264,8 @@ $! Setup exceptional compilations
 $!
 $ COMPILEWITH_CC3 = ",bss_rtcp,"
 $ COMPILEWITH_CC4 = ",a_utctm,bss_log,"
-$ COMPILEWITH_CC5 = ",md2_dgst,md5_dgst,mdc2dgst,sha_dgst,sha1dgst," + -
-                    "rmd_dgst,bf_enc,"
+$ COMPILEWITH_CC5 = ",md2_dgst,md4_dgst,md5_dgst,mdc2dgst," + -
+                    "sha_dgst,sha1dgst,rmd_dgst,bf_enc,"
 $!
 $! Check To See If We Are Going To Use RSAREF.
 $!
index 5f72ed45132c1436c5034c6841575553ed7f05e6..52ee97b71a2259ea5da9ba4e40fe2297aec38d24 100644 (file)
 #include <openssl/ebcdic.h>
 #endif
 
-#if defined(VMS) || defined(__VMS)
-#include "vms_idhacks.h"
-#endif
-
+/* Resolve problems on some operating systems with symbol names that clash
+   one way or another */
+#include <openssl/symhacks.h>
 
 #ifdef  __cplusplus
 extern "C" {
@@ -276,12 +275,6 @@ int CRYPTO_is_mem_check_on(void);
 #define OPENSSL_free_locked(addr) CRYPTO_free_locked(addr)
 
 
-/* Case insensiteve linking causes problems.... */
-#if defined(WIN16) || defined(VMS)
-#define ERR_load_CRYPTO_strings        ERR_load_CRYPTOlib_strings
-#endif
-
-
 const char *SSLeay_version(int type);
 unsigned long SSLeay(void);
 
index 2d026ca8ba7f48da863d94ee1436a9d9e3a54ba7..b3cfe3dab6ba3a56b353e9554269a560bd50301c 100644 (file)
@@ -165,7 +165,8 @@ enc_read.o: ../../include/openssl/e_os.h ../../include/openssl/e_os2.h
 enc_read.o: ../../include/openssl/err.h ../../include/openssl/lhash.h
 enc_read.o: ../../include/openssl/opensslconf.h
 enc_read.o: ../../include/openssl/opensslv.h ../../include/openssl/safestack.h
-enc_read.o: ../../include/openssl/stack.h ../cryptlib.h des_locl.h
+enc_read.o: ../../include/openssl/stack.h ../../include/openssl/symhacks.h
+enc_read.o: ../cryptlib.h des_locl.h
 enc_writ.o: ../../include/openssl/bio.h ../../include/openssl/buffer.h
 enc_writ.o: ../../include/openssl/crypto.h ../../include/openssl/des.h
 enc_writ.o: ../../include/openssl/e_os.h ../../include/openssl/e_os2.h
@@ -173,7 +174,7 @@ enc_writ.o: ../../include/openssl/err.h ../../include/openssl/lhash.h
 enc_writ.o: ../../include/openssl/opensslconf.h
 enc_writ.o: ../../include/openssl/opensslv.h ../../include/openssl/rand.h
 enc_writ.o: ../../include/openssl/safestack.h ../../include/openssl/stack.h
-enc_writ.o: ../cryptlib.h des_locl.h
+enc_writ.o: ../../include/openssl/symhacks.h ../cryptlib.h des_locl.h
 fcrypt.o: ../../include/openssl/des.h ../../include/openssl/e_os2.h
 fcrypt.o: ../../include/openssl/opensslconf.h des_locl.h
 fcrypt_b.o: ../../include/openssl/des.h ../../include/openssl/e_os2.h
@@ -198,7 +199,8 @@ read_pwd.o: ../../include/openssl/e_os.h ../../include/openssl/e_os2.h
 read_pwd.o: ../../include/openssl/err.h ../../include/openssl/lhash.h
 read_pwd.o: ../../include/openssl/opensslconf.h
 read_pwd.o: ../../include/openssl/opensslv.h ../../include/openssl/safestack.h
-read_pwd.o: ../../include/openssl/stack.h ../cryptlib.h des_locl.h
+read_pwd.o: ../../include/openssl/stack.h ../../include/openssl/symhacks.h
+read_pwd.o: ../cryptlib.h des_locl.h
 rpc_enc.o: ../../include/openssl/des.h ../../include/openssl/e_os2.h
 rpc_enc.o: ../../include/openssl/opensslconf.h des_locl.h des_ver.h rpc_des.h
 set_key.o: ../../include/openssl/des.h ../../include/openssl/e_os2.h
index 5f0ec5387fab0a00bc79cbed6c0594267453f7b2..9fff989edbca001ee4c35991fe8608fd37d845d7 100644 (file)
@@ -81,13 +81,17 @@ DES_LONG des_quad_cksum(const unsigned char *input, des_cblock output[],
        long l;
        const unsigned char *cp;
 #ifdef _CRAY
-       short *lp;
+       struct lp_st { int a:32; int b:32; } *lp;
 #else
        DES_LONG *lp;
 #endif
 
        if (out_count < 1) out_count=1;
+#ifdef _CRAY
+       lp = (struct lp_st *) &(output[0])[0];
+#else
        lp = (DES_LONG *) &(output[0])[0];
+#endif
 
        z0=Q_B0((*seed)[0])|Q_B1((*seed)[1])|Q_B2((*seed)[2])|Q_B3((*seed)[3]);
        z1=Q_B0((*seed)[4])|Q_B1((*seed)[5])|Q_B2((*seed)[6])|Q_B3((*seed)[7]);
@@ -120,8 +124,14 @@ DES_LONG des_quad_cksum(const unsigned char *input, des_cblock output[],
                        {
                        /* The MIT library assumes that the checksum is
                         * composed of 2*out_count 32 bit ints */
+#ifdef _CRAY
+                       (*lp).a = z0;
+                       (*lp).b = z1;
+                       lp++;
+#else
                        *lp++ = z0;
                        *lp++ = z1;
+#endif
                        }
                }
        return(z0);
index c3d7dc2e3df673ff92958790145777dfd135988c..4616ca2b20b2ab5d93311f239aafba66aff36e9b 100644 (file)
@@ -84,19 +84,22 @@ dh_check.o: ../../include/openssl/dh.h ../../include/openssl/e_os.h
 dh_check.o: ../../include/openssl/e_os2.h ../../include/openssl/err.h
 dh_check.o: ../../include/openssl/lhash.h ../../include/openssl/opensslconf.h
 dh_check.o: ../../include/openssl/opensslv.h ../../include/openssl/safestack.h
-dh_check.o: ../../include/openssl/stack.h ../cryptlib.h
+dh_check.o: ../../include/openssl/stack.h ../../include/openssl/symhacks.h
+dh_check.o: ../cryptlib.h
 dh_err.o: ../../include/openssl/bio.h ../../include/openssl/bn.h
 dh_err.o: ../../include/openssl/crypto.h ../../include/openssl/dh.h
 dh_err.o: ../../include/openssl/err.h ../../include/openssl/lhash.h
 dh_err.o: ../../include/openssl/opensslconf.h ../../include/openssl/opensslv.h
 dh_err.o: ../../include/openssl/safestack.h ../../include/openssl/stack.h
+dh_err.o: ../../include/openssl/symhacks.h
 dh_gen.o: ../../include/openssl/bio.h ../../include/openssl/bn.h
 dh_gen.o: ../../include/openssl/buffer.h ../../include/openssl/crypto.h
 dh_gen.o: ../../include/openssl/dh.h ../../include/openssl/e_os.h
 dh_gen.o: ../../include/openssl/e_os2.h ../../include/openssl/err.h
 dh_gen.o: ../../include/openssl/lhash.h ../../include/openssl/opensslconf.h
 dh_gen.o: ../../include/openssl/opensslv.h ../../include/openssl/safestack.h
-dh_gen.o: ../../include/openssl/stack.h ../cryptlib.h
+dh_gen.o: ../../include/openssl/stack.h ../../include/openssl/symhacks.h
+dh_gen.o: ../cryptlib.h
 dh_key.o: ../../include/openssl/asn1.h ../../include/openssl/bio.h
 dh_key.o: ../../include/openssl/blowfish.h ../../include/openssl/bn.h
 dh_key.o: ../../include/openssl/buffer.h ../../include/openssl/cast.h
@@ -106,14 +109,15 @@ dh_key.o: ../../include/openssl/e_os.h ../../include/openssl/e_os2.h
 dh_key.o: ../../include/openssl/engine.h ../../include/openssl/err.h
 dh_key.o: ../../include/openssl/evp.h ../../include/openssl/idea.h
 dh_key.o: ../../include/openssl/lhash.h ../../include/openssl/md2.h
-dh_key.o: ../../include/openssl/md5.h ../../include/openssl/mdc2.h
-dh_key.o: ../../include/openssl/obj_mac.h ../../include/openssl/objects.h
-dh_key.o: ../../include/openssl/opensslconf.h ../../include/openssl/opensslv.h
-dh_key.o: ../../include/openssl/rand.h ../../include/openssl/rc2.h
-dh_key.o: ../../include/openssl/rc4.h ../../include/openssl/rc5.h
-dh_key.o: ../../include/openssl/ripemd.h ../../include/openssl/rsa.h
-dh_key.o: ../../include/openssl/safestack.h ../../include/openssl/sha.h
-dh_key.o: ../../include/openssl/stack.h ../cryptlib.h
+dh_key.o: ../../include/openssl/md4.h ../../include/openssl/md5.h
+dh_key.o: ../../include/openssl/mdc2.h ../../include/openssl/obj_mac.h
+dh_key.o: ../../include/openssl/objects.h ../../include/openssl/opensslconf.h
+dh_key.o: ../../include/openssl/opensslv.h ../../include/openssl/rand.h
+dh_key.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h
+dh_key.o: ../../include/openssl/rc5.h ../../include/openssl/ripemd.h
+dh_key.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
+dh_key.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
+dh_key.o: ../../include/openssl/symhacks.h ../cryptlib.h
 dh_lib.o: ../../include/openssl/asn1.h ../../include/openssl/bio.h
 dh_lib.o: ../../include/openssl/blowfish.h ../../include/openssl/bn.h
 dh_lib.o: ../../include/openssl/buffer.h ../../include/openssl/cast.h
@@ -123,11 +127,12 @@ dh_lib.o: ../../include/openssl/e_os.h ../../include/openssl/e_os2.h
 dh_lib.o: ../../include/openssl/engine.h ../../include/openssl/err.h
 dh_lib.o: ../../include/openssl/evp.h ../../include/openssl/idea.h
 dh_lib.o: ../../include/openssl/lhash.h ../../include/openssl/md2.h
-dh_lib.o: ../../include/openssl/md5.h ../../include/openssl/mdc2.h
-dh_lib.o: ../../include/openssl/obj_mac.h ../../include/openssl/objects.h
-dh_lib.o: ../../include/openssl/opensslconf.h ../../include/openssl/opensslv.h
-dh_lib.o: ../../include/openssl/rand.h ../../include/openssl/rc2.h
-dh_lib.o: ../../include/openssl/rc4.h ../../include/openssl/rc5.h
-dh_lib.o: ../../include/openssl/ripemd.h ../../include/openssl/rsa.h
-dh_lib.o: ../../include/openssl/safestack.h ../../include/openssl/sha.h
-dh_lib.o: ../../include/openssl/stack.h ../cryptlib.h
+dh_lib.o: ../../include/openssl/md4.h ../../include/openssl/md5.h
+dh_lib.o: ../../include/openssl/mdc2.h ../../include/openssl/obj_mac.h
+dh_lib.o: ../../include/openssl/objects.h ../../include/openssl/opensslconf.h
+dh_lib.o: ../../include/openssl/opensslv.h ../../include/openssl/rand.h
+dh_lib.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h
+dh_lib.o: ../../include/openssl/rc5.h ../../include/openssl/ripemd.h
+dh_lib.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
+dh_lib.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
+dh_lib.o: ../../include/openssl/symhacks.h ../cryptlib.h
index 26c6f0ebec2d0a336d18e7b1458ad70194744c77..24758c64cd48ba60b268c566439aaeaca2f7e4cf 100644 (file)
@@ -88,13 +88,14 @@ dsa_asn1.o: ../../include/openssl/e_os.h ../../include/openssl/e_os2.h
 dsa_asn1.o: ../../include/openssl/err.h ../../include/openssl/lhash.h
 dsa_asn1.o: ../../include/openssl/opensslconf.h
 dsa_asn1.o: ../../include/openssl/opensslv.h ../../include/openssl/safestack.h
-dsa_asn1.o: ../../include/openssl/stack.h ../cryptlib.h
+dsa_asn1.o: ../../include/openssl/stack.h ../../include/openssl/symhacks.h
+dsa_asn1.o: ../cryptlib.h
 dsa_err.o: ../../include/openssl/bio.h ../../include/openssl/bn.h
 dsa_err.o: ../../include/openssl/crypto.h ../../include/openssl/dh.h
 dsa_err.o: ../../include/openssl/dsa.h ../../include/openssl/err.h
 dsa_err.o: ../../include/openssl/lhash.h ../../include/openssl/opensslconf.h
 dsa_err.o: ../../include/openssl/opensslv.h ../../include/openssl/safestack.h
-dsa_err.o: ../../include/openssl/stack.h
+dsa_err.o: ../../include/openssl/stack.h ../../include/openssl/symhacks.h
 dsa_gen.o: ../../include/openssl/bio.h ../../include/openssl/bn.h
 dsa_gen.o: ../../include/openssl/buffer.h ../../include/openssl/crypto.h
 dsa_gen.o: ../../include/openssl/dh.h ../../include/openssl/dsa.h
@@ -103,7 +104,7 @@ dsa_gen.o: ../../include/openssl/err.h ../../include/openssl/lhash.h
 dsa_gen.o: ../../include/openssl/opensslconf.h ../../include/openssl/opensslv.h
 dsa_gen.o: ../../include/openssl/rand.h ../../include/openssl/safestack.h
 dsa_gen.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
-dsa_gen.o: ../cryptlib.h
+dsa_gen.o: ../../include/openssl/symhacks.h ../cryptlib.h
 dsa_key.o: ../../include/openssl/bio.h ../../include/openssl/bn.h
 dsa_key.o: ../../include/openssl/buffer.h ../../include/openssl/crypto.h
 dsa_key.o: ../../include/openssl/dh.h ../../include/openssl/dsa.h
@@ -112,7 +113,7 @@ dsa_key.o: ../../include/openssl/err.h ../../include/openssl/lhash.h
 dsa_key.o: ../../include/openssl/opensslconf.h ../../include/openssl/opensslv.h
 dsa_key.o: ../../include/openssl/rand.h ../../include/openssl/safestack.h
 dsa_key.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
-dsa_key.o: ../cryptlib.h
+dsa_key.o: ../../include/openssl/symhacks.h ../cryptlib.h
 dsa_lib.o: ../../include/openssl/asn1.h ../../include/openssl/bio.h
 dsa_lib.o: ../../include/openssl/blowfish.h ../../include/openssl/bn.h
 dsa_lib.o: ../../include/openssl/buffer.h ../../include/openssl/cast.h
@@ -122,14 +123,15 @@ dsa_lib.o: ../../include/openssl/e_os.h ../../include/openssl/e_os2.h
 dsa_lib.o: ../../include/openssl/engine.h ../../include/openssl/err.h
 dsa_lib.o: ../../include/openssl/evp.h ../../include/openssl/idea.h
 dsa_lib.o: ../../include/openssl/lhash.h ../../include/openssl/md2.h
-dsa_lib.o: ../../include/openssl/md5.h ../../include/openssl/mdc2.h
-dsa_lib.o: ../../include/openssl/obj_mac.h ../../include/openssl/objects.h
-dsa_lib.o: ../../include/openssl/opensslconf.h ../../include/openssl/opensslv.h
-dsa_lib.o: ../../include/openssl/rand.h ../../include/openssl/rc2.h
-dsa_lib.o: ../../include/openssl/rc4.h ../../include/openssl/rc5.h
-dsa_lib.o: ../../include/openssl/ripemd.h ../../include/openssl/rsa.h
-dsa_lib.o: ../../include/openssl/safestack.h ../../include/openssl/sha.h
-dsa_lib.o: ../../include/openssl/stack.h ../cryptlib.h
+dsa_lib.o: ../../include/openssl/md4.h ../../include/openssl/md5.h
+dsa_lib.o: ../../include/openssl/mdc2.h ../../include/openssl/obj_mac.h
+dsa_lib.o: ../../include/openssl/objects.h ../../include/openssl/opensslconf.h
+dsa_lib.o: ../../include/openssl/opensslv.h ../../include/openssl/rand.h
+dsa_lib.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h
+dsa_lib.o: ../../include/openssl/rc5.h ../../include/openssl/ripemd.h
+dsa_lib.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
+dsa_lib.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
+dsa_lib.o: ../../include/openssl/symhacks.h ../cryptlib.h
 dsa_ossl.o: ../../include/openssl/asn1.h ../../include/openssl/bio.h
 dsa_ossl.o: ../../include/openssl/blowfish.h ../../include/openssl/bn.h
 dsa_ossl.o: ../../include/openssl/buffer.h ../../include/openssl/cast.h
@@ -139,15 +141,15 @@ dsa_ossl.o: ../../include/openssl/e_os.h ../../include/openssl/e_os2.h
 dsa_ossl.o: ../../include/openssl/engine.h ../../include/openssl/err.h
 dsa_ossl.o: ../../include/openssl/evp.h ../../include/openssl/idea.h
 dsa_ossl.o: ../../include/openssl/lhash.h ../../include/openssl/md2.h
-dsa_ossl.o: ../../include/openssl/md5.h ../../include/openssl/mdc2.h
-dsa_ossl.o: ../../include/openssl/obj_mac.h ../../include/openssl/objects.h
-dsa_ossl.o: ../../include/openssl/opensslconf.h
+dsa_ossl.o: ../../include/openssl/md4.h ../../include/openssl/md5.h
+dsa_ossl.o: ../../include/openssl/mdc2.h ../../include/openssl/obj_mac.h
+dsa_ossl.o: ../../include/openssl/objects.h ../../include/openssl/opensslconf.h
 dsa_ossl.o: ../../include/openssl/opensslv.h ../../include/openssl/rand.h
 dsa_ossl.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h
 dsa_ossl.o: ../../include/openssl/rc5.h ../../include/openssl/ripemd.h
 dsa_ossl.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
 dsa_ossl.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
-dsa_ossl.o: ../cryptlib.h
+dsa_ossl.o: ../../include/openssl/symhacks.h ../cryptlib.h
 dsa_sign.o: ../../include/openssl/asn1.h ../../include/openssl/bio.h
 dsa_sign.o: ../../include/openssl/blowfish.h ../../include/openssl/bn.h
 dsa_sign.o: ../../include/openssl/buffer.h ../../include/openssl/cast.h
@@ -157,15 +159,15 @@ dsa_sign.o: ../../include/openssl/e_os.h ../../include/openssl/e_os2.h
 dsa_sign.o: ../../include/openssl/engine.h ../../include/openssl/err.h
 dsa_sign.o: ../../include/openssl/evp.h ../../include/openssl/idea.h
 dsa_sign.o: ../../include/openssl/lhash.h ../../include/openssl/md2.h
-dsa_sign.o: ../../include/openssl/md5.h ../../include/openssl/mdc2.h
-dsa_sign.o: ../../include/openssl/obj_mac.h ../../include/openssl/objects.h
-dsa_sign.o: ../../include/openssl/opensslconf.h
+dsa_sign.o: ../../include/openssl/md4.h ../../include/openssl/md5.h
+dsa_sign.o: ../../include/openssl/mdc2.h ../../include/openssl/obj_mac.h
+dsa_sign.o: ../../include/openssl/objects.h ../../include/openssl/opensslconf.h
 dsa_sign.o: ../../include/openssl/opensslv.h ../../include/openssl/rand.h
 dsa_sign.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h
 dsa_sign.o: ../../include/openssl/rc5.h ../../include/openssl/ripemd.h
 dsa_sign.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
 dsa_sign.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
-dsa_sign.o: ../cryptlib.h
+dsa_sign.o: ../../include/openssl/symhacks.h ../cryptlib.h
 dsa_vrf.o: ../../include/openssl/asn1.h ../../include/openssl/asn1_mac.h
 dsa_vrf.o: ../../include/openssl/bio.h ../../include/openssl/blowfish.h
 dsa_vrf.o: ../../include/openssl/bn.h ../../include/openssl/buffer.h
@@ -175,12 +177,13 @@ dsa_vrf.o: ../../include/openssl/dsa.h ../../include/openssl/e_os.h
 dsa_vrf.o: ../../include/openssl/e_os2.h ../../include/openssl/engine.h
 dsa_vrf.o: ../../include/openssl/err.h ../../include/openssl/evp.h
 dsa_vrf.o: ../../include/openssl/idea.h ../../include/openssl/lhash.h
-dsa_vrf.o: ../../include/openssl/md2.h ../../include/openssl/md5.h
-dsa_vrf.o: ../../include/openssl/mdc2.h ../../include/openssl/obj_mac.h
-dsa_vrf.o: ../../include/openssl/objects.h ../../include/openssl/opensslconf.h
-dsa_vrf.o: ../../include/openssl/opensslv.h ../../include/openssl/rand.h
-dsa_vrf.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h
-dsa_vrf.o: ../../include/openssl/rc5.h ../../include/openssl/ripemd.h
-dsa_vrf.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
-dsa_vrf.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
+dsa_vrf.o: ../../include/openssl/md2.h ../../include/openssl/md4.h
+dsa_vrf.o: ../../include/openssl/md5.h ../../include/openssl/mdc2.h
+dsa_vrf.o: ../../include/openssl/obj_mac.h ../../include/openssl/objects.h
+dsa_vrf.o: ../../include/openssl/opensslconf.h ../../include/openssl/opensslv.h
+dsa_vrf.o: ../../include/openssl/rand.h ../../include/openssl/rc2.h
+dsa_vrf.o: ../../include/openssl/rc4.h ../../include/openssl/rc5.h
+dsa_vrf.o: ../../include/openssl/ripemd.h ../../include/openssl/rsa.h
+dsa_vrf.o: ../../include/openssl/safestack.h ../../include/openssl/sha.h
+dsa_vrf.o: ../../include/openssl/stack.h ../../include/openssl/symhacks.h
 dsa_vrf.o: ../cryptlib.h
index b070a77850c6b2dc5dc4fe600a9ad044cf873ee1..c827b0befd3a27f87f0166897a0f2c5eed43e971 100644 (file)
@@ -86,32 +86,35 @@ dso_dl.o: ../../include/openssl/e_os.h ../../include/openssl/e_os2.h
 dso_dl.o: ../../include/openssl/err.h ../../include/openssl/lhash.h
 dso_dl.o: ../../include/openssl/opensslconf.h ../../include/openssl/opensslv.h
 dso_dl.o: ../../include/openssl/safestack.h ../../include/openssl/stack.h
-dso_dl.o: ../cryptlib.h
+dso_dl.o: ../../include/openssl/symhacks.h ../cryptlib.h
 dso_dlfcn.o: ../../include/openssl/bio.h ../../include/openssl/buffer.h
 dso_dlfcn.o: ../../include/openssl/crypto.h ../../include/openssl/dso.h
 dso_dlfcn.o: ../../include/openssl/e_os.h ../../include/openssl/e_os2.h
 dso_dlfcn.o: ../../include/openssl/err.h ../../include/openssl/lhash.h
 dso_dlfcn.o: ../../include/openssl/opensslconf.h
 dso_dlfcn.o: ../../include/openssl/opensslv.h ../../include/openssl/safestack.h
-dso_dlfcn.o: ../../include/openssl/stack.h ../cryptlib.h
+dso_dlfcn.o: ../../include/openssl/stack.h ../../include/openssl/symhacks.h
+dso_dlfcn.o: ../cryptlib.h
 dso_err.o: ../../include/openssl/bio.h ../../include/openssl/crypto.h
 dso_err.o: ../../include/openssl/dso.h ../../include/openssl/err.h
 dso_err.o: ../../include/openssl/lhash.h ../../include/openssl/opensslv.h
 dso_err.o: ../../include/openssl/safestack.h ../../include/openssl/stack.h
+dso_err.o: ../../include/openssl/symhacks.h
 dso_lib.o: ../../include/openssl/bio.h ../../include/openssl/buffer.h
 dso_lib.o: ../../include/openssl/crypto.h ../../include/openssl/dso.h
 dso_lib.o: ../../include/openssl/e_os.h ../../include/openssl/e_os2.h
 dso_lib.o: ../../include/openssl/err.h ../../include/openssl/lhash.h
 dso_lib.o: ../../include/openssl/opensslconf.h ../../include/openssl/opensslv.h
 dso_lib.o: ../../include/openssl/safestack.h ../../include/openssl/stack.h
-dso_lib.o: ../cryptlib.h
+dso_lib.o: ../../include/openssl/symhacks.h ../cryptlib.h
 dso_null.o: ../../include/openssl/bio.h ../../include/openssl/buffer.h
 dso_null.o: ../../include/openssl/crypto.h ../../include/openssl/dso.h
 dso_null.o: ../../include/openssl/e_os.h ../../include/openssl/e_os2.h
 dso_null.o: ../../include/openssl/err.h ../../include/openssl/lhash.h
 dso_null.o: ../../include/openssl/opensslconf.h
 dso_null.o: ../../include/openssl/opensslv.h ../../include/openssl/safestack.h
-dso_null.o: ../../include/openssl/stack.h ../cryptlib.h
+dso_null.o: ../../include/openssl/stack.h ../../include/openssl/symhacks.h
+dso_null.o: ../cryptlib.h
 dso_openssl.o: ../../include/openssl/bio.h ../../include/openssl/buffer.h
 dso_openssl.o: ../../include/openssl/crypto.h ../../include/openssl/dso.h
 dso_openssl.o: ../../include/openssl/e_os.h ../../include/openssl/e_os2.h
@@ -119,11 +122,12 @@ dso_openssl.o: ../../include/openssl/err.h ../../include/openssl/lhash.h
 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: ../cryptlib.h
+dso_openssl.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
 dso_win32.o: ../../include/openssl/err.h ../../include/openssl/lhash.h
 dso_win32.o: ../../include/openssl/opensslconf.h
 dso_win32.o: ../../include/openssl/opensslv.h ../../include/openssl/safestack.h
-dso_win32.o: ../../include/openssl/stack.h ../cryptlib.h
+dso_win32.o: ../../include/openssl/stack.h ../../include/openssl/symhacks.h
+dso_win32.o: ../cryptlib.h
index 846240c34701dce10855aa340d486bec30490c06..7a0ffe755d9ffc09f500d0450c0d302707c76358 100644 (file)
@@ -88,14 +88,16 @@ engine_err.o: ../../include/openssl/dsa.h ../../include/openssl/e_os2.h
 engine_err.o: ../../include/openssl/engine.h ../../include/openssl/err.h
 engine_err.o: ../../include/openssl/evp.h ../../include/openssl/idea.h
 engine_err.o: ../../include/openssl/lhash.h ../../include/openssl/md2.h
-engine_err.o: ../../include/openssl/md5.h ../../include/openssl/mdc2.h
-engine_err.o: ../../include/openssl/obj_mac.h ../../include/openssl/objects.h
+engine_err.o: ../../include/openssl/md4.h ../../include/openssl/md5.h
+engine_err.o: ../../include/openssl/mdc2.h ../../include/openssl/obj_mac.h
+engine_err.o: ../../include/openssl/objects.h
 engine_err.o: ../../include/openssl/opensslconf.h
 engine_err.o: ../../include/openssl/opensslv.h ../../include/openssl/rand.h
 engine_err.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h
 engine_err.o: ../../include/openssl/rc5.h ../../include/openssl/ripemd.h
 engine_err.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
 engine_err.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
+engine_err.o: ../../include/openssl/symhacks.h
 engine_lib.o: ../../include/openssl/asn1.h ../../include/openssl/bio.h
 engine_lib.o: ../../include/openssl/blowfish.h ../../include/openssl/bn.h
 engine_lib.o: ../../include/openssl/buffer.h ../../include/openssl/cast.h
@@ -105,15 +107,16 @@ engine_lib.o: ../../include/openssl/e_os.h ../../include/openssl/e_os2.h
 engine_lib.o: ../../include/openssl/engine.h ../../include/openssl/err.h
 engine_lib.o: ../../include/openssl/evp.h ../../include/openssl/idea.h
 engine_lib.o: ../../include/openssl/lhash.h ../../include/openssl/md2.h
-engine_lib.o: ../../include/openssl/md5.h ../../include/openssl/mdc2.h
-engine_lib.o: ../../include/openssl/obj_mac.h ../../include/openssl/objects.h
+engine_lib.o: ../../include/openssl/md4.h ../../include/openssl/md5.h
+engine_lib.o: ../../include/openssl/mdc2.h ../../include/openssl/obj_mac.h
+engine_lib.o: ../../include/openssl/objects.h
 engine_lib.o: ../../include/openssl/opensslconf.h
 engine_lib.o: ../../include/openssl/opensslv.h ../../include/openssl/rand.h
 engine_lib.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h
 engine_lib.o: ../../include/openssl/rc5.h ../../include/openssl/ripemd.h
 engine_lib.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
 engine_lib.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
-engine_lib.o: ../cryptlib.h engine_int.h
+engine_lib.o: ../../include/openssl/symhacks.h ../cryptlib.h engine_int.h
 engine_list.o: ../../include/openssl/asn1.h ../../include/openssl/bio.h
 engine_list.o: ../../include/openssl/blowfish.h ../../include/openssl/bn.h
 engine_list.o: ../../include/openssl/buffer.h ../../include/openssl/cast.h
@@ -123,15 +126,16 @@ engine_list.o: ../../include/openssl/e_os.h ../../include/openssl/e_os2.h
 engine_list.o: ../../include/openssl/engine.h ../../include/openssl/err.h
 engine_list.o: ../../include/openssl/evp.h ../../include/openssl/idea.h
 engine_list.o: ../../include/openssl/lhash.h ../../include/openssl/md2.h
-engine_list.o: ../../include/openssl/md5.h ../../include/openssl/mdc2.h
-engine_list.o: ../../include/openssl/obj_mac.h ../../include/openssl/objects.h
+engine_list.o: ../../include/openssl/md4.h ../../include/openssl/md5.h
+engine_list.o: ../../include/openssl/mdc2.h ../../include/openssl/obj_mac.h
+engine_list.o: ../../include/openssl/objects.h
 engine_list.o: ../../include/openssl/opensslconf.h
 engine_list.o: ../../include/openssl/opensslv.h ../../include/openssl/rand.h
 engine_list.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h
 engine_list.o: ../../include/openssl/rc5.h ../../include/openssl/ripemd.h
 engine_list.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
 engine_list.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
-engine_list.o: ../cryptlib.h engine_int.h
+engine_list.o: ../../include/openssl/symhacks.h ../cryptlib.h engine_int.h
 engine_openssl.o: ../../include/openssl/asn1.h ../../include/openssl/bio.h
 engine_openssl.o: ../../include/openssl/blowfish.h ../../include/openssl/bn.h
 engine_openssl.o: ../../include/openssl/buffer.h ../../include/openssl/cast.h
@@ -141,8 +145,9 @@ engine_openssl.o: ../../include/openssl/dso.h ../../include/openssl/e_os.h
 engine_openssl.o: ../../include/openssl/e_os2.h ../../include/openssl/engine.h
 engine_openssl.o: ../../include/openssl/err.h ../../include/openssl/evp.h
 engine_openssl.o: ../../include/openssl/idea.h ../../include/openssl/lhash.h
-engine_openssl.o: ../../include/openssl/md2.h ../../include/openssl/md5.h
-engine_openssl.o: ../../include/openssl/mdc2.h ../../include/openssl/obj_mac.h
+engine_openssl.o: ../../include/openssl/md2.h ../../include/openssl/md4.h
+engine_openssl.o: ../../include/openssl/md5.h ../../include/openssl/mdc2.h
+engine_openssl.o: ../../include/openssl/obj_mac.h
 engine_openssl.o: ../../include/openssl/objects.h
 engine_openssl.o: ../../include/openssl/opensslconf.h
 engine_openssl.o: ../../include/openssl/opensslv.h ../../include/openssl/rand.h
@@ -150,7 +155,7 @@ engine_openssl.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h
 engine_openssl.o: ../../include/openssl/rc5.h ../../include/openssl/ripemd.h
 engine_openssl.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
 engine_openssl.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
-engine_openssl.o: ../cryptlib.h engine_int.h
+engine_openssl.o: ../../include/openssl/symhacks.h ../cryptlib.h engine_int.h
 hw_atalla.o: ../../include/openssl/asn1.h ../../include/openssl/bio.h
 hw_atalla.o: ../../include/openssl/blowfish.h ../../include/openssl/bn.h
 hw_atalla.o: ../../include/openssl/buffer.h ../../include/openssl/cast.h
@@ -160,16 +165,17 @@ hw_atalla.o: ../../include/openssl/dso.h ../../include/openssl/e_os.h
 hw_atalla.o: ../../include/openssl/e_os2.h ../../include/openssl/engine.h
 hw_atalla.o: ../../include/openssl/err.h ../../include/openssl/evp.h
 hw_atalla.o: ../../include/openssl/idea.h ../../include/openssl/lhash.h
-hw_atalla.o: ../../include/openssl/md2.h ../../include/openssl/md5.h
-hw_atalla.o: ../../include/openssl/mdc2.h ../../include/openssl/obj_mac.h
-hw_atalla.o: ../../include/openssl/objects.h
+hw_atalla.o: ../../include/openssl/md2.h ../../include/openssl/md4.h
+hw_atalla.o: ../../include/openssl/md5.h ../../include/openssl/mdc2.h
+hw_atalla.o: ../../include/openssl/obj_mac.h ../../include/openssl/objects.h
 hw_atalla.o: ../../include/openssl/opensslconf.h
 hw_atalla.o: ../../include/openssl/opensslv.h ../../include/openssl/rand.h
 hw_atalla.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h
 hw_atalla.o: ../../include/openssl/rc5.h ../../include/openssl/ripemd.h
 hw_atalla.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
 hw_atalla.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
-hw_atalla.o: ../cryptlib.h engine_int.h vendor_defns/atalla.h
+hw_atalla.o: ../../include/openssl/symhacks.h ../cryptlib.h engine_int.h
+hw_atalla.o: vendor_defns/atalla.h
 hw_cswift.o: ../../include/openssl/asn1.h ../../include/openssl/bio.h
 hw_cswift.o: ../../include/openssl/blowfish.h ../../include/openssl/bn.h
 hw_cswift.o: ../../include/openssl/buffer.h ../../include/openssl/cast.h
@@ -179,16 +185,17 @@ hw_cswift.o: ../../include/openssl/dso.h ../../include/openssl/e_os.h
 hw_cswift.o: ../../include/openssl/e_os2.h ../../include/openssl/engine.h
 hw_cswift.o: ../../include/openssl/err.h ../../include/openssl/evp.h
 hw_cswift.o: ../../include/openssl/idea.h ../../include/openssl/lhash.h
-hw_cswift.o: ../../include/openssl/md2.h ../../include/openssl/md5.h
-hw_cswift.o: ../../include/openssl/mdc2.h ../../include/openssl/obj_mac.h
-hw_cswift.o: ../../include/openssl/objects.h
+hw_cswift.o: ../../include/openssl/md2.h ../../include/openssl/md4.h
+hw_cswift.o: ../../include/openssl/md5.h ../../include/openssl/mdc2.h
+hw_cswift.o: ../../include/openssl/obj_mac.h ../../include/openssl/objects.h
 hw_cswift.o: ../../include/openssl/opensslconf.h
 hw_cswift.o: ../../include/openssl/opensslv.h ../../include/openssl/rand.h
 hw_cswift.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h
 hw_cswift.o: ../../include/openssl/rc5.h ../../include/openssl/ripemd.h
 hw_cswift.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
 hw_cswift.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
-hw_cswift.o: ../cryptlib.h engine_int.h vendor_defns/cswift.h
+hw_cswift.o: ../../include/openssl/symhacks.h ../cryptlib.h engine_int.h
+hw_cswift.o: vendor_defns/cswift.h
 hw_ncipher.o: ../../include/openssl/asn1.h ../../include/openssl/bio.h
 hw_ncipher.o: ../../include/openssl/blowfish.h ../../include/openssl/bn.h
 hw_ncipher.o: ../../include/openssl/buffer.h ../../include/openssl/cast.h
@@ -198,9 +205,9 @@ hw_ncipher.o: ../../include/openssl/dso.h ../../include/openssl/e_os.h
 hw_ncipher.o: ../../include/openssl/e_os2.h ../../include/openssl/engine.h
 hw_ncipher.o: ../../include/openssl/err.h ../../include/openssl/evp.h
 hw_ncipher.o: ../../include/openssl/idea.h ../../include/openssl/lhash.h
-hw_ncipher.o: ../../include/openssl/md2.h ../../include/openssl/md5.h
-hw_ncipher.o: ../../include/openssl/mdc2.h ../../include/openssl/obj_mac.h
-hw_ncipher.o: ../../include/openssl/objects.h
+hw_ncipher.o: ../../include/openssl/md2.h ../../include/openssl/md4.h
+hw_ncipher.o: ../../include/openssl/md5.h ../../include/openssl/mdc2.h
+hw_ncipher.o: ../../include/openssl/obj_mac.h ../../include/openssl/objects.h
 hw_ncipher.o: ../../include/openssl/opensslconf.h
 hw_ncipher.o: ../../include/openssl/opensslv.h ../../include/openssl/pem.h
 hw_ncipher.o: ../../include/openssl/pem2.h ../../include/openssl/pkcs7.h
@@ -208,6 +215,6 @@ hw_ncipher.o: ../../include/openssl/rand.h ../../include/openssl/rc2.h
 hw_ncipher.o: ../../include/openssl/rc4.h ../../include/openssl/rc5.h
 hw_ncipher.o: ../../include/openssl/ripemd.h ../../include/openssl/rsa.h
 hw_ncipher.o: ../../include/openssl/safestack.h ../../include/openssl/sha.h
-hw_ncipher.o: ../../include/openssl/stack.h ../../include/openssl/x509.h
-hw_ncipher.o: ../../include/openssl/x509_vfy.h ../cryptlib.h engine_int.h
-hw_ncipher.o: vendor_defns/hwcryptohook.h
+hw_ncipher.o: ../../include/openssl/stack.h ../../include/openssl/symhacks.h
+hw_ncipher.o: ../../include/openssl/x509.h ../../include/openssl/x509_vfy.h
+hw_ncipher.o: ../cryptlib.h engine_int.h vendor_defns/hwcryptohook.h
index 9bffcbbf98e535736f371eb39eb98bcc046c080e..c4cfaef3f09d06755c07e5e465498773695420f1 100644 (file)
@@ -83,7 +83,8 @@ err.o: ../../include/openssl/crypto.h ../../include/openssl/e_os.h
 err.o: ../../include/openssl/e_os2.h ../../include/openssl/err.h
 err.o: ../../include/openssl/lhash.h ../../include/openssl/opensslconf.h
 err.o: ../../include/openssl/opensslv.h ../../include/openssl/safestack.h
-err.o: ../../include/openssl/stack.h ../cryptlib.h
+err.o: ../../include/openssl/stack.h ../../include/openssl/symhacks.h
+err.o: ../cryptlib.h
 err_all.o: ../../include/openssl/asn1.h ../../include/openssl/bio.h
 err_all.o: ../../include/openssl/blowfish.h ../../include/openssl/bn.h
 err_all.o: ../../include/openssl/buffer.h ../../include/openssl/cast.h
@@ -94,15 +95,16 @@ err_all.o: ../../include/openssl/e_os.h ../../include/openssl/e_os2.h
 err_all.o: ../../include/openssl/engine.h ../../include/openssl/err.h
 err_all.o: ../../include/openssl/evp.h ../../include/openssl/idea.h
 err_all.o: ../../include/openssl/lhash.h ../../include/openssl/md2.h
-err_all.o: ../../include/openssl/md5.h ../../include/openssl/mdc2.h
-err_all.o: ../../include/openssl/obj_mac.h ../../include/openssl/objects.h
-err_all.o: ../../include/openssl/opensslconf.h ../../include/openssl/opensslv.h
-err_all.o: ../../include/openssl/pem2.h ../../include/openssl/pkcs12.h
-err_all.o: ../../include/openssl/pkcs7.h ../../include/openssl/rand.h
-err_all.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h
-err_all.o: ../../include/openssl/rc5.h ../../include/openssl/ripemd.h
-err_all.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
-err_all.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
+err_all.o: ../../include/openssl/md4.h ../../include/openssl/md5.h
+err_all.o: ../../include/openssl/mdc2.h ../../include/openssl/obj_mac.h
+err_all.o: ../../include/openssl/objects.h ../../include/openssl/opensslconf.h
+err_all.o: ../../include/openssl/opensslv.h ../../include/openssl/pem2.h
+err_all.o: ../../include/openssl/pkcs12.h ../../include/openssl/pkcs7.h
+err_all.o: ../../include/openssl/rand.h ../../include/openssl/rc2.h
+err_all.o: ../../include/openssl/rc4.h ../../include/openssl/rc5.h
+err_all.o: ../../include/openssl/ripemd.h ../../include/openssl/rsa.h
+err_all.o: ../../include/openssl/safestack.h ../../include/openssl/sha.h
+err_all.o: ../../include/openssl/stack.h ../../include/openssl/symhacks.h
 err_all.o: ../../include/openssl/x509.h ../../include/openssl/x509_vfy.h
 err_all.o: ../../include/openssl/x509v3.h
 err_prn.o: ../../include/openssl/bio.h ../../include/openssl/buffer.h
@@ -110,4 +112,5 @@ err_prn.o: ../../include/openssl/crypto.h ../../include/openssl/e_os.h
 err_prn.o: ../../include/openssl/e_os2.h ../../include/openssl/err.h
 err_prn.o: ../../include/openssl/lhash.h ../../include/openssl/opensslconf.h
 err_prn.o: ../../include/openssl/opensslv.h ../../include/openssl/safestack.h
-err_prn.o: ../../include/openssl/stack.h ../cryptlib.h
+err_prn.o: ../../include/openssl/stack.h ../../include/openssl/symhacks.h
+err_prn.o: ../cryptlib.h
index b3fd416044cade81f176b605ee20ea4588e65354..99272e437c7cde3144b7dc5de94c9ee8a5e49c29 100644 (file)
@@ -537,7 +537,7 @@ char *ERR_error_string(unsigned long e, char *ret)
        static char buf[256];
 
        if (ret == NULL) ret=buf;
-       ERR_error_string_n(e, buf, 256);
+       ERR_error_string_n(e, ret, 256);
 
        return(ret);
        }
index d47f00d01fe5712be472ce15b114d0595cc54499..747051e4f13b6d5b909e3900c91b812a1be27f23 100644 (file)
@@ -26,8 +26,8 @@ LIBSRC= encode.c digest.c evp_enc.c evp_key.c \
        e_des.c e_bf.c e_idea.c e_des3.c \
        e_rc4.c names.c \
        e_xcbc_d.c e_rc2.c e_cast.c e_rc5.c \
-       m_null.c m_md2.c m_md5.c m_sha.c m_sha1.c m_dss.c m_dss1.c m_mdc2.c \
-       m_ripemd.c \
+       m_null.c m_md2.c m_md4.c m_md5.c m_sha.c m_sha1.c \
+       m_dss.c m_dss1.c m_mdc2.c m_ripemd.c \
        p_open.c p_seal.c p_sign.c p_verify.c p_lib.c p_enc.c p_dec.c \
        bio_md.c bio_b64.c bio_enc.c evp_err.c e_null.c \
        c_all.c c_allc.c c_alld.c evp_lib.c bio_ok.c \
@@ -37,8 +37,8 @@ LIBOBJ=       encode.o digest.o evp_enc.o evp_key.o \
        e_des.o e_bf.o e_idea.o e_des3.o \
        e_rc4.o names.o \
        e_xcbc_d.o e_rc2.o e_cast.o e_rc5.o \
-       m_null.o m_md2.o m_md5.o m_sha.o m_sha1.o m_dss.o m_dss1.o m_mdc2.o \
-       m_ripemd.o \
+       m_null.o m_md2.o m_md4.o m_md5.o m_sha.o m_sha1.o \
+       m_dss.o m_dss1.o m_mdc2.o m_ripemd.o \
        p_open.o p_seal.o p_sign.o p_verify.o p_lib.o p_enc.o p_dec.o \
        bio_md.o bio_b64.o bio_enc.o evp_err.o e_null.o \
        c_all.o c_allc.o c_alld.o evp_lib.o bio_ok.o \
@@ -105,14 +105,15 @@ bio_b64.o: ../../include/openssl/dh.h ../../include/openssl/dsa.h
 bio_b64.o: ../../include/openssl/e_os.h ../../include/openssl/e_os2.h
 bio_b64.o: ../../include/openssl/err.h ../../include/openssl/evp.h
 bio_b64.o: ../../include/openssl/idea.h ../../include/openssl/lhash.h
-bio_b64.o: ../../include/openssl/md2.h ../../include/openssl/md5.h
-bio_b64.o: ../../include/openssl/mdc2.h ../../include/openssl/obj_mac.h
-bio_b64.o: ../../include/openssl/objects.h ../../include/openssl/opensslconf.h
-bio_b64.o: ../../include/openssl/opensslv.h ../../include/openssl/rc2.h
-bio_b64.o: ../../include/openssl/rc4.h ../../include/openssl/rc5.h
-bio_b64.o: ../../include/openssl/ripemd.h ../../include/openssl/rsa.h
-bio_b64.o: ../../include/openssl/safestack.h ../../include/openssl/sha.h
-bio_b64.o: ../../include/openssl/stack.h ../cryptlib.h
+bio_b64.o: ../../include/openssl/md2.h ../../include/openssl/md4.h
+bio_b64.o: ../../include/openssl/md5.h ../../include/openssl/mdc2.h
+bio_b64.o: ../../include/openssl/obj_mac.h ../../include/openssl/objects.h
+bio_b64.o: ../../include/openssl/opensslconf.h ../../include/openssl/opensslv.h
+bio_b64.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h
+bio_b64.o: ../../include/openssl/rc5.h ../../include/openssl/ripemd.h
+bio_b64.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
+bio_b64.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
+bio_b64.o: ../../include/openssl/symhacks.h ../cryptlib.h
 bio_enc.o: ../../include/openssl/asn1.h ../../include/openssl/bio.h
 bio_enc.o: ../../include/openssl/blowfish.h ../../include/openssl/bn.h
 bio_enc.o: ../../include/openssl/buffer.h ../../include/openssl/cast.h
@@ -121,14 +122,15 @@ bio_enc.o: ../../include/openssl/dh.h ../../include/openssl/dsa.h
 bio_enc.o: ../../include/openssl/e_os.h ../../include/openssl/e_os2.h
 bio_enc.o: ../../include/openssl/err.h ../../include/openssl/evp.h
 bio_enc.o: ../../include/openssl/idea.h ../../include/openssl/lhash.h
-bio_enc.o: ../../include/openssl/md2.h ../../include/openssl/md5.h
-bio_enc.o: ../../include/openssl/mdc2.h ../../include/openssl/obj_mac.h
-bio_enc.o: ../../include/openssl/objects.h ../../include/openssl/opensslconf.h
-bio_enc.o: ../../include/openssl/opensslv.h ../../include/openssl/rc2.h
-bio_enc.o: ../../include/openssl/rc4.h ../../include/openssl/rc5.h
-bio_enc.o: ../../include/openssl/ripemd.h ../../include/openssl/rsa.h
-bio_enc.o: ../../include/openssl/safestack.h ../../include/openssl/sha.h
-bio_enc.o: ../../include/openssl/stack.h ../cryptlib.h
+bio_enc.o: ../../include/openssl/md2.h ../../include/openssl/md4.h
+bio_enc.o: ../../include/openssl/md5.h ../../include/openssl/mdc2.h
+bio_enc.o: ../../include/openssl/obj_mac.h ../../include/openssl/objects.h
+bio_enc.o: ../../include/openssl/opensslconf.h ../../include/openssl/opensslv.h
+bio_enc.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h
+bio_enc.o: ../../include/openssl/rc5.h ../../include/openssl/ripemd.h
+bio_enc.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
+bio_enc.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
+bio_enc.o: ../../include/openssl/symhacks.h ../cryptlib.h
 bio_md.o: ../../include/openssl/asn1.h ../../include/openssl/bio.h
 bio_md.o: ../../include/openssl/blowfish.h ../../include/openssl/bn.h
 bio_md.o: ../../include/openssl/buffer.h ../../include/openssl/cast.h
@@ -137,14 +139,15 @@ bio_md.o: ../../include/openssl/dh.h ../../include/openssl/dsa.h
 bio_md.o: ../../include/openssl/e_os.h ../../include/openssl/e_os2.h
 bio_md.o: ../../include/openssl/err.h ../../include/openssl/evp.h
 bio_md.o: ../../include/openssl/idea.h ../../include/openssl/lhash.h
-bio_md.o: ../../include/openssl/md2.h ../../include/openssl/md5.h
-bio_md.o: ../../include/openssl/mdc2.h ../../include/openssl/obj_mac.h
-bio_md.o: ../../include/openssl/objects.h ../../include/openssl/opensslconf.h
-bio_md.o: ../../include/openssl/opensslv.h ../../include/openssl/rc2.h
-bio_md.o: ../../include/openssl/rc4.h ../../include/openssl/rc5.h
-bio_md.o: ../../include/openssl/ripemd.h ../../include/openssl/rsa.h
-bio_md.o: ../../include/openssl/safestack.h ../../include/openssl/sha.h
-bio_md.o: ../../include/openssl/stack.h ../cryptlib.h
+bio_md.o: ../../include/openssl/md2.h ../../include/openssl/md4.h
+bio_md.o: ../../include/openssl/md5.h ../../include/openssl/mdc2.h
+bio_md.o: ../../include/openssl/obj_mac.h ../../include/openssl/objects.h
+bio_md.o: ../../include/openssl/opensslconf.h ../../include/openssl/opensslv.h
+bio_md.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h
+bio_md.o: ../../include/openssl/rc5.h ../../include/openssl/ripemd.h
+bio_md.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
+bio_md.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
+bio_md.o: ../../include/openssl/symhacks.h ../cryptlib.h
 bio_ok.o: ../../include/openssl/asn1.h ../../include/openssl/bio.h
 bio_ok.o: ../../include/openssl/blowfish.h ../../include/openssl/bn.h
 bio_ok.o: ../../include/openssl/buffer.h ../../include/openssl/cast.h
@@ -153,14 +156,15 @@ bio_ok.o: ../../include/openssl/dh.h ../../include/openssl/dsa.h
 bio_ok.o: ../../include/openssl/e_os.h ../../include/openssl/e_os2.h
 bio_ok.o: ../../include/openssl/err.h ../../include/openssl/evp.h
 bio_ok.o: ../../include/openssl/idea.h ../../include/openssl/lhash.h
-bio_ok.o: ../../include/openssl/md2.h ../../include/openssl/md5.h
-bio_ok.o: ../../include/openssl/mdc2.h ../../include/openssl/obj_mac.h
-bio_ok.o: ../../include/openssl/objects.h ../../include/openssl/opensslconf.h
-bio_ok.o: ../../include/openssl/opensslv.h ../../include/openssl/rand.h
-bio_ok.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h
-bio_ok.o: ../../include/openssl/rc5.h ../../include/openssl/ripemd.h
-bio_ok.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
-bio_ok.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
+bio_ok.o: ../../include/openssl/md2.h ../../include/openssl/md4.h
+bio_ok.o: ../../include/openssl/md5.h ../../include/openssl/mdc2.h
+bio_ok.o: ../../include/openssl/obj_mac.h ../../include/openssl/objects.h
+bio_ok.o: ../../include/openssl/opensslconf.h ../../include/openssl/opensslv.h
+bio_ok.o: ../../include/openssl/rand.h ../../include/openssl/rc2.h
+bio_ok.o: ../../include/openssl/rc4.h ../../include/openssl/rc5.h
+bio_ok.o: ../../include/openssl/ripemd.h ../../include/openssl/rsa.h
+bio_ok.o: ../../include/openssl/safestack.h ../../include/openssl/sha.h
+bio_ok.o: ../../include/openssl/stack.h ../../include/openssl/symhacks.h
 bio_ok.o: ../cryptlib.h
 c_all.o: ../../include/openssl/asn1.h ../../include/openssl/bio.h
 c_all.o: ../../include/openssl/blowfish.h ../../include/openssl/bn.h
@@ -170,14 +174,15 @@ c_all.o: ../../include/openssl/dh.h ../../include/openssl/dsa.h
 c_all.o: ../../include/openssl/e_os.h ../../include/openssl/e_os2.h
 c_all.o: ../../include/openssl/err.h ../../include/openssl/evp.h
 c_all.o: ../../include/openssl/idea.h ../../include/openssl/lhash.h
-c_all.o: ../../include/openssl/md2.h ../../include/openssl/md5.h
-c_all.o: ../../include/openssl/mdc2.h ../../include/openssl/obj_mac.h
-c_all.o: ../../include/openssl/objects.h ../../include/openssl/opensslconf.h
-c_all.o: ../../include/openssl/opensslv.h ../../include/openssl/rc2.h
-c_all.o: ../../include/openssl/rc4.h ../../include/openssl/rc5.h
-c_all.o: ../../include/openssl/ripemd.h ../../include/openssl/rsa.h
-c_all.o: ../../include/openssl/safestack.h ../../include/openssl/sha.h
-c_all.o: ../../include/openssl/stack.h ../cryptlib.h
+c_all.o: ../../include/openssl/md2.h ../../include/openssl/md4.h
+c_all.o: ../../include/openssl/md5.h ../../include/openssl/mdc2.h
+c_all.o: ../../include/openssl/obj_mac.h ../../include/openssl/objects.h
+c_all.o: ../../include/openssl/opensslconf.h ../../include/openssl/opensslv.h
+c_all.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h
+c_all.o: ../../include/openssl/rc5.h ../../include/openssl/ripemd.h
+c_all.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
+c_all.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
+c_all.o: ../../include/openssl/symhacks.h ../cryptlib.h
 c_allc.o: ../../include/openssl/asn1.h ../../include/openssl/bio.h
 c_allc.o: ../../include/openssl/blowfish.h ../../include/openssl/bn.h
 c_allc.o: ../../include/openssl/buffer.h ../../include/openssl/cast.h
@@ -186,15 +191,16 @@ c_allc.o: ../../include/openssl/dh.h ../../include/openssl/dsa.h
 c_allc.o: ../../include/openssl/e_os.h ../../include/openssl/e_os2.h
 c_allc.o: ../../include/openssl/err.h ../../include/openssl/evp.h
 c_allc.o: ../../include/openssl/idea.h ../../include/openssl/lhash.h
-c_allc.o: ../../include/openssl/md2.h ../../include/openssl/md5.h
-c_allc.o: ../../include/openssl/mdc2.h ../../include/openssl/obj_mac.h
-c_allc.o: ../../include/openssl/objects.h ../../include/openssl/opensslconf.h
-c_allc.o: ../../include/openssl/opensslv.h ../../include/openssl/pkcs12.h
-c_allc.o: ../../include/openssl/pkcs7.h ../../include/openssl/rc2.h
-c_allc.o: ../../include/openssl/rc4.h ../../include/openssl/rc5.h
-c_allc.o: ../../include/openssl/ripemd.h ../../include/openssl/rsa.h
-c_allc.o: ../../include/openssl/safestack.h ../../include/openssl/sha.h
-c_allc.o: ../../include/openssl/stack.h ../../include/openssl/x509.h
+c_allc.o: ../../include/openssl/md2.h ../../include/openssl/md4.h
+c_allc.o: ../../include/openssl/md5.h ../../include/openssl/mdc2.h
+c_allc.o: ../../include/openssl/obj_mac.h ../../include/openssl/objects.h
+c_allc.o: ../../include/openssl/opensslconf.h ../../include/openssl/opensslv.h
+c_allc.o: ../../include/openssl/pkcs12.h ../../include/openssl/pkcs7.h
+c_allc.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h
+c_allc.o: ../../include/openssl/rc5.h ../../include/openssl/ripemd.h
+c_allc.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
+c_allc.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
+c_allc.o: ../../include/openssl/symhacks.h ../../include/openssl/x509.h
 c_allc.o: ../../include/openssl/x509_vfy.h ../cryptlib.h
 c_alld.o: ../../include/openssl/asn1.h ../../include/openssl/bio.h
 c_alld.o: ../../include/openssl/blowfish.h ../../include/openssl/bn.h
@@ -204,15 +210,16 @@ c_alld.o: ../../include/openssl/dh.h ../../include/openssl/dsa.h
 c_alld.o: ../../include/openssl/e_os.h ../../include/openssl/e_os2.h
 c_alld.o: ../../include/openssl/err.h ../../include/openssl/evp.h
 c_alld.o: ../../include/openssl/idea.h ../../include/openssl/lhash.h
-c_alld.o: ../../include/openssl/md2.h ../../include/openssl/md5.h
-c_alld.o: ../../include/openssl/mdc2.h ../../include/openssl/obj_mac.h
-c_alld.o: ../../include/openssl/objects.h ../../include/openssl/opensslconf.h
-c_alld.o: ../../include/openssl/opensslv.h ../../include/openssl/pkcs12.h
-c_alld.o: ../../include/openssl/pkcs7.h ../../include/openssl/rc2.h
-c_alld.o: ../../include/openssl/rc4.h ../../include/openssl/rc5.h
-c_alld.o: ../../include/openssl/ripemd.h ../../include/openssl/rsa.h
-c_alld.o: ../../include/openssl/safestack.h ../../include/openssl/sha.h
-c_alld.o: ../../include/openssl/stack.h ../../include/openssl/x509.h
+c_alld.o: ../../include/openssl/md2.h ../../include/openssl/md4.h
+c_alld.o: ../../include/openssl/md5.h ../../include/openssl/mdc2.h
+c_alld.o: ../../include/openssl/obj_mac.h ../../include/openssl/objects.h
+c_alld.o: ../../include/openssl/opensslconf.h ../../include/openssl/opensslv.h
+c_alld.o: ../../include/openssl/pkcs12.h ../../include/openssl/pkcs7.h
+c_alld.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h
+c_alld.o: ../../include/openssl/rc5.h ../../include/openssl/ripemd.h
+c_alld.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
+c_alld.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
+c_alld.o: ../../include/openssl/symhacks.h ../../include/openssl/x509.h
 c_alld.o: ../../include/openssl/x509_vfy.h ../cryptlib.h
 digest.o: ../../include/openssl/asn1.h ../../include/openssl/bio.h
 digest.o: ../../include/openssl/blowfish.h ../../include/openssl/bn.h
@@ -222,14 +229,15 @@ digest.o: ../../include/openssl/dh.h ../../include/openssl/dsa.h
 digest.o: ../../include/openssl/e_os.h ../../include/openssl/e_os2.h
 digest.o: ../../include/openssl/err.h ../../include/openssl/evp.h
 digest.o: ../../include/openssl/idea.h ../../include/openssl/lhash.h
-digest.o: ../../include/openssl/md2.h ../../include/openssl/md5.h
-digest.o: ../../include/openssl/mdc2.h ../../include/openssl/obj_mac.h
-digest.o: ../../include/openssl/objects.h ../../include/openssl/opensslconf.h
-digest.o: ../../include/openssl/opensslv.h ../../include/openssl/rc2.h
-digest.o: ../../include/openssl/rc4.h ../../include/openssl/rc5.h
-digest.o: ../../include/openssl/ripemd.h ../../include/openssl/rsa.h
-digest.o: ../../include/openssl/safestack.h ../../include/openssl/sha.h
-digest.o: ../../include/openssl/stack.h ../cryptlib.h
+digest.o: ../../include/openssl/md2.h ../../include/openssl/md4.h
+digest.o: ../../include/openssl/md5.h ../../include/openssl/mdc2.h
+digest.o: ../../include/openssl/obj_mac.h ../../include/openssl/objects.h
+digest.o: ../../include/openssl/opensslconf.h ../../include/openssl/opensslv.h
+digest.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h
+digest.o: ../../include/openssl/rc5.h ../../include/openssl/ripemd.h
+digest.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
+digest.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
+digest.o: ../../include/openssl/symhacks.h ../cryptlib.h
 e_bf.o: ../../include/openssl/asn1.h ../../include/openssl/bio.h
 e_bf.o: ../../include/openssl/blowfish.h ../../include/openssl/bn.h
 e_bf.o: ../../include/openssl/buffer.h ../../include/openssl/cast.h
@@ -238,14 +246,15 @@ e_bf.o: ../../include/openssl/dh.h ../../include/openssl/dsa.h
 e_bf.o: ../../include/openssl/e_os.h ../../include/openssl/e_os2.h
 e_bf.o: ../../include/openssl/err.h ../../include/openssl/evp.h
 e_bf.o: ../../include/openssl/idea.h ../../include/openssl/lhash.h
-e_bf.o: ../../include/openssl/md2.h ../../include/openssl/md5.h
-e_bf.o: ../../include/openssl/mdc2.h ../../include/openssl/obj_mac.h
-e_bf.o: ../../include/openssl/objects.h ../../include/openssl/opensslconf.h
-e_bf.o: ../../include/openssl/opensslv.h ../../include/openssl/rc2.h
-e_bf.o: ../../include/openssl/rc4.h ../../include/openssl/rc5.h
-e_bf.o: ../../include/openssl/ripemd.h ../../include/openssl/rsa.h
-e_bf.o: ../../include/openssl/safestack.h ../../include/openssl/sha.h
-e_bf.o: ../../include/openssl/stack.h ../cryptlib.h evp_locl.h
+e_bf.o: ../../include/openssl/md2.h ../../include/openssl/md4.h
+e_bf.o: ../../include/openssl/md5.h ../../include/openssl/mdc2.h
+e_bf.o: ../../include/openssl/obj_mac.h ../../include/openssl/objects.h
+e_bf.o: ../../include/openssl/opensslconf.h ../../include/openssl/opensslv.h
+e_bf.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h
+e_bf.o: ../../include/openssl/rc5.h ../../include/openssl/ripemd.h
+e_bf.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
+e_bf.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
+e_bf.o: ../../include/openssl/symhacks.h ../cryptlib.h evp_locl.h
 e_cast.o: ../../include/openssl/asn1.h ../../include/openssl/bio.h
 e_cast.o: ../../include/openssl/blowfish.h ../../include/openssl/bn.h
 e_cast.o: ../../include/openssl/buffer.h ../../include/openssl/cast.h
@@ -254,14 +263,15 @@ e_cast.o: ../../include/openssl/dh.h ../../include/openssl/dsa.h
 e_cast.o: ../../include/openssl/e_os.h ../../include/openssl/e_os2.h
 e_cast.o: ../../include/openssl/err.h ../../include/openssl/evp.h
 e_cast.o: ../../include/openssl/idea.h ../../include/openssl/lhash.h
-e_cast.o: ../../include/openssl/md2.h ../../include/openssl/md5.h
-e_cast.o: ../../include/openssl/mdc2.h ../../include/openssl/obj_mac.h
-e_cast.o: ../../include/openssl/objects.h ../../include/openssl/opensslconf.h
-e_cast.o: ../../include/openssl/opensslv.h ../../include/openssl/rc2.h
-e_cast.o: ../../include/openssl/rc4.h ../../include/openssl/rc5.h
-e_cast.o: ../../include/openssl/ripemd.h ../../include/openssl/rsa.h
-e_cast.o: ../../include/openssl/safestack.h ../../include/openssl/sha.h
-e_cast.o: ../../include/openssl/stack.h ../cryptlib.h evp_locl.h
+e_cast.o: ../../include/openssl/md2.h ../../include/openssl/md4.h
+e_cast.o: ../../include/openssl/md5.h ../../include/openssl/mdc2.h
+e_cast.o: ../../include/openssl/obj_mac.h ../../include/openssl/objects.h
+e_cast.o: ../../include/openssl/opensslconf.h ../../include/openssl/opensslv.h
+e_cast.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h
+e_cast.o: ../../include/openssl/rc5.h ../../include/openssl/ripemd.h
+e_cast.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
+e_cast.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
+e_cast.o: ../../include/openssl/symhacks.h ../cryptlib.h evp_locl.h
 e_des.o: ../../include/openssl/asn1.h ../../include/openssl/bio.h
 e_des.o: ../../include/openssl/blowfish.h ../../include/openssl/bn.h
 e_des.o: ../../include/openssl/buffer.h ../../include/openssl/cast.h
@@ -270,14 +280,15 @@ e_des.o: ../../include/openssl/dh.h ../../include/openssl/dsa.h
 e_des.o: ../../include/openssl/e_os.h ../../include/openssl/e_os2.h
 e_des.o: ../../include/openssl/err.h ../../include/openssl/evp.h
 e_des.o: ../../include/openssl/idea.h ../../include/openssl/lhash.h
-e_des.o: ../../include/openssl/md2.h ../../include/openssl/md5.h
-e_des.o: ../../include/openssl/mdc2.h ../../include/openssl/obj_mac.h
-e_des.o: ../../include/openssl/objects.h ../../include/openssl/opensslconf.h
-e_des.o: ../../include/openssl/opensslv.h ../../include/openssl/rc2.h
-e_des.o: ../../include/openssl/rc4.h ../../include/openssl/rc5.h
-e_des.o: ../../include/openssl/ripemd.h ../../include/openssl/rsa.h
-e_des.o: ../../include/openssl/safestack.h ../../include/openssl/sha.h
-e_des.o: ../../include/openssl/stack.h ../cryptlib.h evp_locl.h
+e_des.o: ../../include/openssl/md2.h ../../include/openssl/md4.h
+e_des.o: ../../include/openssl/md5.h ../../include/openssl/mdc2.h
+e_des.o: ../../include/openssl/obj_mac.h ../../include/openssl/objects.h
+e_des.o: ../../include/openssl/opensslconf.h ../../include/openssl/opensslv.h
+e_des.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h
+e_des.o: ../../include/openssl/rc5.h ../../include/openssl/ripemd.h
+e_des.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
+e_des.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
+e_des.o: ../../include/openssl/symhacks.h ../cryptlib.h evp_locl.h
 e_des3.o: ../../include/openssl/asn1.h ../../include/openssl/bio.h
 e_des3.o: ../../include/openssl/blowfish.h ../../include/openssl/bn.h
 e_des3.o: ../../include/openssl/buffer.h ../../include/openssl/cast.h
@@ -286,14 +297,15 @@ e_des3.o: ../../include/openssl/dh.h ../../include/openssl/dsa.h
 e_des3.o: ../../include/openssl/e_os.h ../../include/openssl/e_os2.h
 e_des3.o: ../../include/openssl/err.h ../../include/openssl/evp.h
 e_des3.o: ../../include/openssl/idea.h ../../include/openssl/lhash.h
-e_des3.o: ../../include/openssl/md2.h ../../include/openssl/md5.h
-e_des3.o: ../../include/openssl/mdc2.h ../../include/openssl/obj_mac.h
-e_des3.o: ../../include/openssl/objects.h ../../include/openssl/opensslconf.h
-e_des3.o: ../../include/openssl/opensslv.h ../../include/openssl/rc2.h
-e_des3.o: ../../include/openssl/rc4.h ../../include/openssl/rc5.h
-e_des3.o: ../../include/openssl/ripemd.h ../../include/openssl/rsa.h
-e_des3.o: ../../include/openssl/safestack.h ../../include/openssl/sha.h
-e_des3.o: ../../include/openssl/stack.h ../cryptlib.h evp_locl.h
+e_des3.o: ../../include/openssl/md2.h ../../include/openssl/md4.h
+e_des3.o: ../../include/openssl/md5.h ../../include/openssl/mdc2.h
+e_des3.o: ../../include/openssl/obj_mac.h ../../include/openssl/objects.h
+e_des3.o: ../../include/openssl/opensslconf.h ../../include/openssl/opensslv.h
+e_des3.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h
+e_des3.o: ../../include/openssl/rc5.h ../../include/openssl/ripemd.h
+e_des3.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
+e_des3.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
+e_des3.o: ../../include/openssl/symhacks.h ../cryptlib.h evp_locl.h
 e_idea.o: ../../include/openssl/asn1.h ../../include/openssl/bio.h
 e_idea.o: ../../include/openssl/blowfish.h ../../include/openssl/bn.h
 e_idea.o: ../../include/openssl/buffer.h ../../include/openssl/cast.h
@@ -302,14 +314,15 @@ e_idea.o: ../../include/openssl/dh.h ../../include/openssl/dsa.h
 e_idea.o: ../../include/openssl/e_os.h ../../include/openssl/e_os2.h
 e_idea.o: ../../include/openssl/err.h ../../include/openssl/evp.h
 e_idea.o: ../../include/openssl/idea.h ../../include/openssl/lhash.h
-e_idea.o: ../../include/openssl/md2.h ../../include/openssl/md5.h
-e_idea.o: ../../include/openssl/mdc2.h ../../include/openssl/obj_mac.h
-e_idea.o: ../../include/openssl/objects.h ../../include/openssl/opensslconf.h
-e_idea.o: ../../include/openssl/opensslv.h ../../include/openssl/rc2.h
-e_idea.o: ../../include/openssl/rc4.h ../../include/openssl/rc5.h
-e_idea.o: ../../include/openssl/ripemd.h ../../include/openssl/rsa.h
-e_idea.o: ../../include/openssl/safestack.h ../../include/openssl/sha.h
-e_idea.o: ../../include/openssl/stack.h ../cryptlib.h evp_locl.h
+e_idea.o: ../../include/openssl/md2.h ../../include/openssl/md4.h
+e_idea.o: ../../include/openssl/md5.h ../../include/openssl/mdc2.h
+e_idea.o: ../../include/openssl/obj_mac.h ../../include/openssl/objects.h
+e_idea.o: ../../include/openssl/opensslconf.h ../../include/openssl/opensslv.h
+e_idea.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h
+e_idea.o: ../../include/openssl/rc5.h ../../include/openssl/ripemd.h
+e_idea.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
+e_idea.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
+e_idea.o: ../../include/openssl/symhacks.h ../cryptlib.h evp_locl.h
 e_null.o: ../../include/openssl/asn1.h ../../include/openssl/bio.h
 e_null.o: ../../include/openssl/blowfish.h ../../include/openssl/bn.h
 e_null.o: ../../include/openssl/buffer.h ../../include/openssl/cast.h
@@ -318,14 +331,15 @@ e_null.o: ../../include/openssl/dh.h ../../include/openssl/dsa.h
 e_null.o: ../../include/openssl/e_os.h ../../include/openssl/e_os2.h
 e_null.o: ../../include/openssl/err.h ../../include/openssl/evp.h
 e_null.o: ../../include/openssl/idea.h ../../include/openssl/lhash.h
-e_null.o: ../../include/openssl/md2.h ../../include/openssl/md5.h
-e_null.o: ../../include/openssl/mdc2.h ../../include/openssl/obj_mac.h
-e_null.o: ../../include/openssl/objects.h ../../include/openssl/opensslconf.h
-e_null.o: ../../include/openssl/opensslv.h ../../include/openssl/rc2.h
-e_null.o: ../../include/openssl/rc4.h ../../include/openssl/rc5.h
-e_null.o: ../../include/openssl/ripemd.h ../../include/openssl/rsa.h
-e_null.o: ../../include/openssl/safestack.h ../../include/openssl/sha.h
-e_null.o: ../../include/openssl/stack.h ../cryptlib.h
+e_null.o: ../../include/openssl/md2.h ../../include/openssl/md4.h
+e_null.o: ../../include/openssl/md5.h ../../include/openssl/mdc2.h
+e_null.o: ../../include/openssl/obj_mac.h ../../include/openssl/objects.h
+e_null.o: ../../include/openssl/opensslconf.h ../../include/openssl/opensslv.h
+e_null.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h
+e_null.o: ../../include/openssl/rc5.h ../../include/openssl/ripemd.h
+e_null.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
+e_null.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
+e_null.o: ../../include/openssl/symhacks.h ../cryptlib.h
 e_rc2.o: ../../include/openssl/asn1.h ../../include/openssl/bio.h
 e_rc2.o: ../../include/openssl/blowfish.h ../../include/openssl/bn.h
 e_rc2.o: ../../include/openssl/buffer.h ../../include/openssl/cast.h
@@ -334,14 +348,15 @@ e_rc2.o: ../../include/openssl/dh.h ../../include/openssl/dsa.h
 e_rc2.o: ../../include/openssl/e_os.h ../../include/openssl/e_os2.h
 e_rc2.o: ../../include/openssl/err.h ../../include/openssl/evp.h
 e_rc2.o: ../../include/openssl/idea.h ../../include/openssl/lhash.h
-e_rc2.o: ../../include/openssl/md2.h ../../include/openssl/md5.h
-e_rc2.o: ../../include/openssl/mdc2.h ../../include/openssl/obj_mac.h
-e_rc2.o: ../../include/openssl/objects.h ../../include/openssl/opensslconf.h
-e_rc2.o: ../../include/openssl/opensslv.h ../../include/openssl/rc2.h
-e_rc2.o: ../../include/openssl/rc4.h ../../include/openssl/rc5.h
-e_rc2.o: ../../include/openssl/ripemd.h ../../include/openssl/rsa.h
-e_rc2.o: ../../include/openssl/safestack.h ../../include/openssl/sha.h
-e_rc2.o: ../../include/openssl/stack.h ../cryptlib.h evp_locl.h
+e_rc2.o: ../../include/openssl/md2.h ../../include/openssl/md4.h
+e_rc2.o: ../../include/openssl/md5.h ../../include/openssl/mdc2.h
+e_rc2.o: ../../include/openssl/obj_mac.h ../../include/openssl/objects.h
+e_rc2.o: ../../include/openssl/opensslconf.h ../../include/openssl/opensslv.h
+e_rc2.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h
+e_rc2.o: ../../include/openssl/rc5.h ../../include/openssl/ripemd.h
+e_rc2.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
+e_rc2.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
+e_rc2.o: ../../include/openssl/symhacks.h ../cryptlib.h evp_locl.h
 e_rc4.o: ../../include/openssl/asn1.h ../../include/openssl/bio.h
 e_rc4.o: ../../include/openssl/blowfish.h ../../include/openssl/bn.h
 e_rc4.o: ../../include/openssl/buffer.h ../../include/openssl/cast.h
@@ -350,14 +365,15 @@ e_rc4.o: ../../include/openssl/dh.h ../../include/openssl/dsa.h
 e_rc4.o: ../../include/openssl/e_os.h ../../include/openssl/e_os2.h
 e_rc4.o: ../../include/openssl/err.h ../../include/openssl/evp.h
 e_rc4.o: ../../include/openssl/idea.h ../../include/openssl/lhash.h
-e_rc4.o: ../../include/openssl/md2.h ../../include/openssl/md5.h
-e_rc4.o: ../../include/openssl/mdc2.h ../../include/openssl/obj_mac.h
-e_rc4.o: ../../include/openssl/objects.h ../../include/openssl/opensslconf.h
-e_rc4.o: ../../include/openssl/opensslv.h ../../include/openssl/rc2.h
-e_rc4.o: ../../include/openssl/rc4.h ../../include/openssl/rc5.h
-e_rc4.o: ../../include/openssl/ripemd.h ../../include/openssl/rsa.h
-e_rc4.o: ../../include/openssl/safestack.h ../../include/openssl/sha.h
-e_rc4.o: ../../include/openssl/stack.h ../cryptlib.h
+e_rc4.o: ../../include/openssl/md2.h ../../include/openssl/md4.h
+e_rc4.o: ../../include/openssl/md5.h ../../include/openssl/mdc2.h
+e_rc4.o: ../../include/openssl/obj_mac.h ../../include/openssl/objects.h
+e_rc4.o: ../../include/openssl/opensslconf.h ../../include/openssl/opensslv.h
+e_rc4.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h
+e_rc4.o: ../../include/openssl/rc5.h ../../include/openssl/ripemd.h
+e_rc4.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
+e_rc4.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
+e_rc4.o: ../../include/openssl/symhacks.h ../cryptlib.h
 e_rc5.o: ../../include/openssl/asn1.h ../../include/openssl/bio.h
 e_rc5.o: ../../include/openssl/blowfish.h ../../include/openssl/bn.h
 e_rc5.o: ../../include/openssl/buffer.h ../../include/openssl/cast.h
@@ -366,14 +382,15 @@ e_rc5.o: ../../include/openssl/dh.h ../../include/openssl/dsa.h
 e_rc5.o: ../../include/openssl/e_os.h ../../include/openssl/e_os2.h
 e_rc5.o: ../../include/openssl/err.h ../../include/openssl/evp.h
 e_rc5.o: ../../include/openssl/idea.h ../../include/openssl/lhash.h
-e_rc5.o: ../../include/openssl/md2.h ../../include/openssl/md5.h
-e_rc5.o: ../../include/openssl/mdc2.h ../../include/openssl/obj_mac.h
-e_rc5.o: ../../include/openssl/objects.h ../../include/openssl/opensslconf.h
-e_rc5.o: ../../include/openssl/opensslv.h ../../include/openssl/rc2.h
-e_rc5.o: ../../include/openssl/rc4.h ../../include/openssl/rc5.h
-e_rc5.o: ../../include/openssl/ripemd.h ../../include/openssl/rsa.h
-e_rc5.o: ../../include/openssl/safestack.h ../../include/openssl/sha.h
-e_rc5.o: ../../include/openssl/stack.h ../cryptlib.h evp_locl.h
+e_rc5.o: ../../include/openssl/md2.h ../../include/openssl/md4.h
+e_rc5.o: ../../include/openssl/md5.h ../../include/openssl/mdc2.h
+e_rc5.o: ../../include/openssl/obj_mac.h ../../include/openssl/objects.h
+e_rc5.o: ../../include/openssl/opensslconf.h ../../include/openssl/opensslv.h
+e_rc5.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h
+e_rc5.o: ../../include/openssl/rc5.h ../../include/openssl/ripemd.h
+e_rc5.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
+e_rc5.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
+e_rc5.o: ../../include/openssl/symhacks.h ../cryptlib.h evp_locl.h
 e_xcbc_d.o: ../../include/openssl/asn1.h ../../include/openssl/bio.h
 e_xcbc_d.o: ../../include/openssl/blowfish.h ../../include/openssl/bn.h
 e_xcbc_d.o: ../../include/openssl/buffer.h ../../include/openssl/cast.h
@@ -382,14 +399,16 @@ e_xcbc_d.o: ../../include/openssl/dh.h ../../include/openssl/dsa.h
 e_xcbc_d.o: ../../include/openssl/e_os.h ../../include/openssl/e_os2.h
 e_xcbc_d.o: ../../include/openssl/err.h ../../include/openssl/evp.h
 e_xcbc_d.o: ../../include/openssl/idea.h ../../include/openssl/lhash.h
-e_xcbc_d.o: ../../include/openssl/md2.h ../../include/openssl/md5.h
-e_xcbc_d.o: ../../include/openssl/mdc2.h ../../include/openssl/obj_mac.h
-e_xcbc_d.o: ../../include/openssl/objects.h ../../include/openssl/opensslconf.h
+e_xcbc_d.o: ../../include/openssl/md2.h ../../include/openssl/md4.h
+e_xcbc_d.o: ../../include/openssl/md5.h ../../include/openssl/mdc2.h
+e_xcbc_d.o: ../../include/openssl/obj_mac.h ../../include/openssl/objects.h
+e_xcbc_d.o: ../../include/openssl/opensslconf.h
 e_xcbc_d.o: ../../include/openssl/opensslv.h ../../include/openssl/rc2.h
 e_xcbc_d.o: ../../include/openssl/rc4.h ../../include/openssl/rc5.h
 e_xcbc_d.o: ../../include/openssl/ripemd.h ../../include/openssl/rsa.h
 e_xcbc_d.o: ../../include/openssl/safestack.h ../../include/openssl/sha.h
-e_xcbc_d.o: ../../include/openssl/stack.h ../cryptlib.h
+e_xcbc_d.o: ../../include/openssl/stack.h ../../include/openssl/symhacks.h
+e_xcbc_d.o: ../cryptlib.h
 encode.o: ../../include/openssl/asn1.h ../../include/openssl/bio.h
 encode.o: ../../include/openssl/blowfish.h ../../include/openssl/bn.h
 encode.o: ../../include/openssl/buffer.h ../../include/openssl/cast.h
@@ -398,14 +417,15 @@ encode.o: ../../include/openssl/dh.h ../../include/openssl/dsa.h
 encode.o: ../../include/openssl/e_os.h ../../include/openssl/e_os2.h
 encode.o: ../../include/openssl/err.h ../../include/openssl/evp.h
 encode.o: ../../include/openssl/idea.h ../../include/openssl/lhash.h
-encode.o: ../../include/openssl/md2.h ../../include/openssl/md5.h
-encode.o: ../../include/openssl/mdc2.h ../../include/openssl/obj_mac.h
-encode.o: ../../include/openssl/objects.h ../../include/openssl/opensslconf.h
-encode.o: ../../include/openssl/opensslv.h ../../include/openssl/rc2.h
-encode.o: ../../include/openssl/rc4.h ../../include/openssl/rc5.h
-encode.o: ../../include/openssl/ripemd.h ../../include/openssl/rsa.h
-encode.o: ../../include/openssl/safestack.h ../../include/openssl/sha.h
-encode.o: ../../include/openssl/stack.h ../cryptlib.h
+encode.o: ../../include/openssl/md2.h ../../include/openssl/md4.h
+encode.o: ../../include/openssl/md5.h ../../include/openssl/mdc2.h
+encode.o: ../../include/openssl/obj_mac.h ../../include/openssl/objects.h
+encode.o: ../../include/openssl/opensslconf.h ../../include/openssl/opensslv.h
+encode.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h
+encode.o: ../../include/openssl/rc5.h ../../include/openssl/ripemd.h
+encode.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
+encode.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
+encode.o: ../../include/openssl/symhacks.h ../cryptlib.h
 evp_enc.o: ../../include/openssl/asn1.h ../../include/openssl/bio.h
 evp_enc.o: ../../include/openssl/blowfish.h ../../include/openssl/bn.h
 evp_enc.o: ../../include/openssl/buffer.h ../../include/openssl/cast.h
@@ -414,14 +434,15 @@ evp_enc.o: ../../include/openssl/dh.h ../../include/openssl/dsa.h
 evp_enc.o: ../../include/openssl/e_os.h ../../include/openssl/e_os2.h
 evp_enc.o: ../../include/openssl/err.h ../../include/openssl/evp.h
 evp_enc.o: ../../include/openssl/idea.h ../../include/openssl/lhash.h
-evp_enc.o: ../../include/openssl/md2.h ../../include/openssl/md5.h
-evp_enc.o: ../../include/openssl/mdc2.h ../../include/openssl/obj_mac.h
-evp_enc.o: ../../include/openssl/objects.h ../../include/openssl/opensslconf.h
-evp_enc.o: ../../include/openssl/opensslv.h ../../include/openssl/rc2.h
-evp_enc.o: ../../include/openssl/rc4.h ../../include/openssl/rc5.h
-evp_enc.o: ../../include/openssl/ripemd.h ../../include/openssl/rsa.h
-evp_enc.o: ../../include/openssl/safestack.h ../../include/openssl/sha.h
-evp_enc.o: ../../include/openssl/stack.h ../cryptlib.h evp_locl.h
+evp_enc.o: ../../include/openssl/md2.h ../../include/openssl/md4.h
+evp_enc.o: ../../include/openssl/md5.h ../../include/openssl/mdc2.h
+evp_enc.o: ../../include/openssl/obj_mac.h ../../include/openssl/objects.h
+evp_enc.o: ../../include/openssl/opensslconf.h ../../include/openssl/opensslv.h
+evp_enc.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h
+evp_enc.o: ../../include/openssl/rc5.h ../../include/openssl/ripemd.h
+evp_enc.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
+evp_enc.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
+evp_enc.o: ../../include/openssl/symhacks.h ../cryptlib.h evp_locl.h
 evp_err.o: ../../include/openssl/asn1.h ../../include/openssl/bio.h
 evp_err.o: ../../include/openssl/blowfish.h ../../include/openssl/bn.h
 evp_err.o: ../../include/openssl/cast.h ../../include/openssl/crypto.h
@@ -429,14 +450,15 @@ evp_err.o: ../../include/openssl/des.h ../../include/openssl/dh.h
 evp_err.o: ../../include/openssl/dsa.h ../../include/openssl/e_os2.h
 evp_err.o: ../../include/openssl/err.h ../../include/openssl/evp.h
 evp_err.o: ../../include/openssl/idea.h ../../include/openssl/lhash.h
-evp_err.o: ../../include/openssl/md2.h ../../include/openssl/md5.h
-evp_err.o: ../../include/openssl/mdc2.h ../../include/openssl/obj_mac.h
-evp_err.o: ../../include/openssl/objects.h ../../include/openssl/opensslconf.h
-evp_err.o: ../../include/openssl/opensslv.h ../../include/openssl/rc2.h
-evp_err.o: ../../include/openssl/rc4.h ../../include/openssl/rc5.h
-evp_err.o: ../../include/openssl/ripemd.h ../../include/openssl/rsa.h
-evp_err.o: ../../include/openssl/safestack.h ../../include/openssl/sha.h
-evp_err.o: ../../include/openssl/stack.h
+evp_err.o: ../../include/openssl/md2.h ../../include/openssl/md4.h
+evp_err.o: ../../include/openssl/md5.h ../../include/openssl/mdc2.h
+evp_err.o: ../../include/openssl/obj_mac.h ../../include/openssl/objects.h
+evp_err.o: ../../include/openssl/opensslconf.h ../../include/openssl/opensslv.h
+evp_err.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h
+evp_err.o: ../../include/openssl/rc5.h ../../include/openssl/ripemd.h
+evp_err.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
+evp_err.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
+evp_err.o: ../../include/openssl/symhacks.h
 evp_key.o: ../../include/openssl/asn1.h ../../include/openssl/bio.h
 evp_key.o: ../../include/openssl/blowfish.h ../../include/openssl/bn.h
 evp_key.o: ../../include/openssl/buffer.h ../../include/openssl/cast.h
@@ -445,14 +467,15 @@ evp_key.o: ../../include/openssl/dh.h ../../include/openssl/dsa.h
 evp_key.o: ../../include/openssl/e_os.h ../../include/openssl/e_os2.h
 evp_key.o: ../../include/openssl/err.h ../../include/openssl/evp.h
 evp_key.o: ../../include/openssl/idea.h ../../include/openssl/lhash.h
-evp_key.o: ../../include/openssl/md2.h ../../include/openssl/md5.h
-evp_key.o: ../../include/openssl/mdc2.h ../../include/openssl/obj_mac.h
-evp_key.o: ../../include/openssl/objects.h ../../include/openssl/opensslconf.h
-evp_key.o: ../../include/openssl/opensslv.h ../../include/openssl/pkcs7.h
-evp_key.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h
-evp_key.o: ../../include/openssl/rc5.h ../../include/openssl/ripemd.h
-evp_key.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
-evp_key.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
+evp_key.o: ../../include/openssl/md2.h ../../include/openssl/md4.h
+evp_key.o: ../../include/openssl/md5.h ../../include/openssl/mdc2.h
+evp_key.o: ../../include/openssl/obj_mac.h ../../include/openssl/objects.h
+evp_key.o: ../../include/openssl/opensslconf.h ../../include/openssl/opensslv.h
+evp_key.o: ../../include/openssl/pkcs7.h ../../include/openssl/rc2.h
+evp_key.o: ../../include/openssl/rc4.h ../../include/openssl/rc5.h
+evp_key.o: ../../include/openssl/ripemd.h ../../include/openssl/rsa.h
+evp_key.o: ../../include/openssl/safestack.h ../../include/openssl/sha.h
+evp_key.o: ../../include/openssl/stack.h ../../include/openssl/symhacks.h
 evp_key.o: ../../include/openssl/x509.h ../../include/openssl/x509_vfy.h
 evp_key.o: ../cryptlib.h
 evp_lib.o: ../../include/openssl/asn1.h ../../include/openssl/bio.h
@@ -463,14 +486,15 @@ evp_lib.o: ../../include/openssl/dh.h ../../include/openssl/dsa.h
 evp_lib.o: ../../include/openssl/e_os.h ../../include/openssl/e_os2.h
 evp_lib.o: ../../include/openssl/err.h ../../include/openssl/evp.h
 evp_lib.o: ../../include/openssl/idea.h ../../include/openssl/lhash.h
-evp_lib.o: ../../include/openssl/md2.h ../../include/openssl/md5.h
-evp_lib.o: ../../include/openssl/mdc2.h ../../include/openssl/obj_mac.h
-evp_lib.o: ../../include/openssl/objects.h ../../include/openssl/opensslconf.h
-evp_lib.o: ../../include/openssl/opensslv.h ../../include/openssl/rc2.h
-evp_lib.o: ../../include/openssl/rc4.h ../../include/openssl/rc5.h
-evp_lib.o: ../../include/openssl/ripemd.h ../../include/openssl/rsa.h
-evp_lib.o: ../../include/openssl/safestack.h ../../include/openssl/sha.h
-evp_lib.o: ../../include/openssl/stack.h ../cryptlib.h
+evp_lib.o: ../../include/openssl/md2.h ../../include/openssl/md4.h
+evp_lib.o: ../../include/openssl/md5.h ../../include/openssl/mdc2.h
+evp_lib.o: ../../include/openssl/obj_mac.h ../../include/openssl/objects.h
+evp_lib.o: ../../include/openssl/opensslconf.h ../../include/openssl/opensslv.h
+evp_lib.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h
+evp_lib.o: ../../include/openssl/rc5.h ../../include/openssl/ripemd.h
+evp_lib.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
+evp_lib.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
+evp_lib.o: ../../include/openssl/symhacks.h ../cryptlib.h
 evp_pbe.o: ../../include/openssl/asn1.h ../../include/openssl/bio.h
 evp_pbe.o: ../../include/openssl/blowfish.h ../../include/openssl/bn.h
 evp_pbe.o: ../../include/openssl/buffer.h ../../include/openssl/cast.h
@@ -479,14 +503,15 @@ evp_pbe.o: ../../include/openssl/dh.h ../../include/openssl/dsa.h
 evp_pbe.o: ../../include/openssl/e_os.h ../../include/openssl/e_os2.h
 evp_pbe.o: ../../include/openssl/err.h ../../include/openssl/evp.h
 evp_pbe.o: ../../include/openssl/idea.h ../../include/openssl/lhash.h
-evp_pbe.o: ../../include/openssl/md2.h ../../include/openssl/md5.h
-evp_pbe.o: ../../include/openssl/mdc2.h ../../include/openssl/obj_mac.h
-evp_pbe.o: ../../include/openssl/objects.h ../../include/openssl/opensslconf.h
-evp_pbe.o: ../../include/openssl/opensslv.h ../../include/openssl/pkcs7.h
-evp_pbe.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h
-evp_pbe.o: ../../include/openssl/rc5.h ../../include/openssl/ripemd.h
-evp_pbe.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
-evp_pbe.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
+evp_pbe.o: ../../include/openssl/md2.h ../../include/openssl/md4.h
+evp_pbe.o: ../../include/openssl/md5.h ../../include/openssl/mdc2.h
+evp_pbe.o: ../../include/openssl/obj_mac.h ../../include/openssl/objects.h
+evp_pbe.o: ../../include/openssl/opensslconf.h ../../include/openssl/opensslv.h
+evp_pbe.o: ../../include/openssl/pkcs7.h ../../include/openssl/rc2.h
+evp_pbe.o: ../../include/openssl/rc4.h ../../include/openssl/rc5.h
+evp_pbe.o: ../../include/openssl/ripemd.h ../../include/openssl/rsa.h
+evp_pbe.o: ../../include/openssl/safestack.h ../../include/openssl/sha.h
+evp_pbe.o: ../../include/openssl/stack.h ../../include/openssl/symhacks.h
 evp_pbe.o: ../../include/openssl/x509.h ../../include/openssl/x509_vfy.h
 evp_pbe.o: ../cryptlib.h
 evp_pkey.o: ../../include/openssl/asn1.h ../../include/openssl/bio.h
@@ -497,16 +522,18 @@ evp_pkey.o: ../../include/openssl/dh.h ../../include/openssl/dsa.h
 evp_pkey.o: ../../include/openssl/e_os.h ../../include/openssl/e_os2.h
 evp_pkey.o: ../../include/openssl/err.h ../../include/openssl/evp.h
 evp_pkey.o: ../../include/openssl/idea.h ../../include/openssl/lhash.h
-evp_pkey.o: ../../include/openssl/md2.h ../../include/openssl/md5.h
-evp_pkey.o: ../../include/openssl/mdc2.h ../../include/openssl/obj_mac.h
-evp_pkey.o: ../../include/openssl/objects.h ../../include/openssl/opensslconf.h
+evp_pkey.o: ../../include/openssl/md2.h ../../include/openssl/md4.h
+evp_pkey.o: ../../include/openssl/md5.h ../../include/openssl/mdc2.h
+evp_pkey.o: ../../include/openssl/obj_mac.h ../../include/openssl/objects.h
+evp_pkey.o: ../../include/openssl/opensslconf.h
 evp_pkey.o: ../../include/openssl/opensslv.h ../../include/openssl/pkcs7.h
 evp_pkey.o: ../../include/openssl/rand.h ../../include/openssl/rc2.h
 evp_pkey.o: ../../include/openssl/rc4.h ../../include/openssl/rc5.h
 evp_pkey.o: ../../include/openssl/ripemd.h ../../include/openssl/rsa.h
 evp_pkey.o: ../../include/openssl/safestack.h ../../include/openssl/sha.h
-evp_pkey.o: ../../include/openssl/stack.h ../../include/openssl/x509.h
-evp_pkey.o: ../../include/openssl/x509_vfy.h ../cryptlib.h
+evp_pkey.o: ../../include/openssl/stack.h ../../include/openssl/symhacks.h
+evp_pkey.o: ../../include/openssl/x509.h ../../include/openssl/x509_vfy.h
+evp_pkey.o: ../cryptlib.h
 m_dss.o: ../../include/openssl/asn1.h ../../include/openssl/bio.h
 m_dss.o: ../../include/openssl/blowfish.h ../../include/openssl/bn.h
 m_dss.o: ../../include/openssl/buffer.h ../../include/openssl/cast.h
@@ -515,14 +542,15 @@ m_dss.o: ../../include/openssl/dh.h ../../include/openssl/dsa.h
 m_dss.o: ../../include/openssl/e_os.h ../../include/openssl/e_os2.h
 m_dss.o: ../../include/openssl/err.h ../../include/openssl/evp.h
 m_dss.o: ../../include/openssl/idea.h ../../include/openssl/lhash.h
-m_dss.o: ../../include/openssl/md2.h ../../include/openssl/md5.h
-m_dss.o: ../../include/openssl/mdc2.h ../../include/openssl/obj_mac.h
-m_dss.o: ../../include/openssl/objects.h ../../include/openssl/opensslconf.h
-m_dss.o: ../../include/openssl/opensslv.h ../../include/openssl/pkcs7.h
-m_dss.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h
-m_dss.o: ../../include/openssl/rc5.h ../../include/openssl/ripemd.h
-m_dss.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
-m_dss.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
+m_dss.o: ../../include/openssl/md2.h ../../include/openssl/md4.h
+m_dss.o: ../../include/openssl/md5.h ../../include/openssl/mdc2.h
+m_dss.o: ../../include/openssl/obj_mac.h ../../include/openssl/objects.h
+m_dss.o: ../../include/openssl/opensslconf.h ../../include/openssl/opensslv.h
+m_dss.o: ../../include/openssl/pkcs7.h ../../include/openssl/rc2.h
+m_dss.o: ../../include/openssl/rc4.h ../../include/openssl/rc5.h
+m_dss.o: ../../include/openssl/ripemd.h ../../include/openssl/rsa.h
+m_dss.o: ../../include/openssl/safestack.h ../../include/openssl/sha.h
+m_dss.o: ../../include/openssl/stack.h ../../include/openssl/symhacks.h
 m_dss.o: ../../include/openssl/x509.h ../../include/openssl/x509_vfy.h
 m_dss.o: ../cryptlib.h
 m_dss1.o: ../../include/openssl/asn1.h ../../include/openssl/bio.h
@@ -533,14 +561,15 @@ m_dss1.o: ../../include/openssl/dh.h ../../include/openssl/dsa.h
 m_dss1.o: ../../include/openssl/e_os.h ../../include/openssl/e_os2.h
 m_dss1.o: ../../include/openssl/err.h ../../include/openssl/evp.h
 m_dss1.o: ../../include/openssl/idea.h ../../include/openssl/lhash.h
-m_dss1.o: ../../include/openssl/md2.h ../../include/openssl/md5.h
-m_dss1.o: ../../include/openssl/mdc2.h ../../include/openssl/obj_mac.h
-m_dss1.o: ../../include/openssl/objects.h ../../include/openssl/opensslconf.h
-m_dss1.o: ../../include/openssl/opensslv.h ../../include/openssl/pkcs7.h
-m_dss1.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h
-m_dss1.o: ../../include/openssl/rc5.h ../../include/openssl/ripemd.h
-m_dss1.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
-m_dss1.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
+m_dss1.o: ../../include/openssl/md2.h ../../include/openssl/md4.h
+m_dss1.o: ../../include/openssl/md5.h ../../include/openssl/mdc2.h
+m_dss1.o: ../../include/openssl/obj_mac.h ../../include/openssl/objects.h
+m_dss1.o: ../../include/openssl/opensslconf.h ../../include/openssl/opensslv.h
+m_dss1.o: ../../include/openssl/pkcs7.h ../../include/openssl/rc2.h
+m_dss1.o: ../../include/openssl/rc4.h ../../include/openssl/rc5.h
+m_dss1.o: ../../include/openssl/ripemd.h ../../include/openssl/rsa.h
+m_dss1.o: ../../include/openssl/safestack.h ../../include/openssl/sha.h
+m_dss1.o: ../../include/openssl/stack.h ../../include/openssl/symhacks.h
 m_dss1.o: ../../include/openssl/x509.h ../../include/openssl/x509_vfy.h
 m_dss1.o: ../cryptlib.h
 m_md2.o: ../../include/openssl/asn1.h ../../include/openssl/bio.h
@@ -551,16 +580,36 @@ m_md2.o: ../../include/openssl/dh.h ../../include/openssl/dsa.h
 m_md2.o: ../../include/openssl/e_os.h ../../include/openssl/e_os2.h
 m_md2.o: ../../include/openssl/err.h ../../include/openssl/evp.h
 m_md2.o: ../../include/openssl/idea.h ../../include/openssl/lhash.h
-m_md2.o: ../../include/openssl/md2.h ../../include/openssl/md5.h
-m_md2.o: ../../include/openssl/mdc2.h ../../include/openssl/obj_mac.h
-m_md2.o: ../../include/openssl/objects.h ../../include/openssl/opensslconf.h
-m_md2.o: ../../include/openssl/opensslv.h ../../include/openssl/pkcs7.h
-m_md2.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h
-m_md2.o: ../../include/openssl/rc5.h ../../include/openssl/ripemd.h
-m_md2.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
-m_md2.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
+m_md2.o: ../../include/openssl/md2.h ../../include/openssl/md4.h
+m_md2.o: ../../include/openssl/md5.h ../../include/openssl/mdc2.h
+m_md2.o: ../../include/openssl/obj_mac.h ../../include/openssl/objects.h
+m_md2.o: ../../include/openssl/opensslconf.h ../../include/openssl/opensslv.h
+m_md2.o: ../../include/openssl/pkcs7.h ../../include/openssl/rc2.h
+m_md2.o: ../../include/openssl/rc4.h ../../include/openssl/rc5.h
+m_md2.o: ../../include/openssl/ripemd.h ../../include/openssl/rsa.h
+m_md2.o: ../../include/openssl/safestack.h ../../include/openssl/sha.h
+m_md2.o: ../../include/openssl/stack.h ../../include/openssl/symhacks.h
 m_md2.o: ../../include/openssl/x509.h ../../include/openssl/x509_vfy.h
 m_md2.o: ../cryptlib.h
+m_md4.o: ../../include/openssl/asn1.h ../../include/openssl/bio.h
+m_md4.o: ../../include/openssl/blowfish.h ../../include/openssl/bn.h
+m_md4.o: ../../include/openssl/buffer.h ../../include/openssl/cast.h
+m_md4.o: ../../include/openssl/crypto.h ../../include/openssl/des.h
+m_md4.o: ../../include/openssl/dh.h ../../include/openssl/dsa.h
+m_md4.o: ../../include/openssl/e_os.h ../../include/openssl/e_os2.h
+m_md4.o: ../../include/openssl/err.h ../../include/openssl/evp.h
+m_md4.o: ../../include/openssl/idea.h ../../include/openssl/lhash.h
+m_md4.o: ../../include/openssl/md2.h ../../include/openssl/md4.h
+m_md4.o: ../../include/openssl/md5.h ../../include/openssl/mdc2.h
+m_md4.o: ../../include/openssl/obj_mac.h ../../include/openssl/objects.h
+m_md4.o: ../../include/openssl/opensslconf.h ../../include/openssl/opensslv.h
+m_md4.o: ../../include/openssl/pkcs7.h ../../include/openssl/rc2.h
+m_md4.o: ../../include/openssl/rc4.h ../../include/openssl/rc5.h
+m_md4.o: ../../include/openssl/ripemd.h ../../include/openssl/rsa.h
+m_md4.o: ../../include/openssl/safestack.h ../../include/openssl/sha.h
+m_md4.o: ../../include/openssl/stack.h ../../include/openssl/symhacks.h
+m_md4.o: ../../include/openssl/x509.h ../../include/openssl/x509_vfy.h
+m_md4.o: ../cryptlib.h
 m_md5.o: ../../include/openssl/asn1.h ../../include/openssl/bio.h
 m_md5.o: ../../include/openssl/blowfish.h ../../include/openssl/bn.h
 m_md5.o: ../../include/openssl/buffer.h ../../include/openssl/cast.h
@@ -569,14 +618,15 @@ m_md5.o: ../../include/openssl/dh.h ../../include/openssl/dsa.h
 m_md5.o: ../../include/openssl/e_os.h ../../include/openssl/e_os2.h
 m_md5.o: ../../include/openssl/err.h ../../include/openssl/evp.h
 m_md5.o: ../../include/openssl/idea.h ../../include/openssl/lhash.h
-m_md5.o: ../../include/openssl/md2.h ../../include/openssl/md5.h
-m_md5.o: ../../include/openssl/mdc2.h ../../include/openssl/obj_mac.h
-m_md5.o: ../../include/openssl/objects.h ../../include/openssl/opensslconf.h
-m_md5.o: ../../include/openssl/opensslv.h ../../include/openssl/pkcs7.h
-m_md5.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h
-m_md5.o: ../../include/openssl/rc5.h ../../include/openssl/ripemd.h
-m_md5.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
-m_md5.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
+m_md5.o: ../../include/openssl/md2.h ../../include/openssl/md4.h
+m_md5.o: ../../include/openssl/md5.h ../../include/openssl/mdc2.h
+m_md5.o: ../../include/openssl/obj_mac.h ../../include/openssl/objects.h
+m_md5.o: ../../include/openssl/opensslconf.h ../../include/openssl/opensslv.h
+m_md5.o: ../../include/openssl/pkcs7.h ../../include/openssl/rc2.h
+m_md5.o: ../../include/openssl/rc4.h ../../include/openssl/rc5.h
+m_md5.o: ../../include/openssl/ripemd.h ../../include/openssl/rsa.h
+m_md5.o: ../../include/openssl/safestack.h ../../include/openssl/sha.h
+m_md5.o: ../../include/openssl/stack.h ../../include/openssl/symhacks.h
 m_md5.o: ../../include/openssl/x509.h ../../include/openssl/x509_vfy.h
 m_md5.o: ../cryptlib.h
 m_mdc2.o: ../../include/openssl/asn1.h ../../include/openssl/bio.h
@@ -587,14 +637,15 @@ m_mdc2.o: ../../include/openssl/dh.h ../../include/openssl/dsa.h
 m_mdc2.o: ../../include/openssl/e_os.h ../../include/openssl/e_os2.h
 m_mdc2.o: ../../include/openssl/err.h ../../include/openssl/evp.h
 m_mdc2.o: ../../include/openssl/idea.h ../../include/openssl/lhash.h
-m_mdc2.o: ../../include/openssl/md2.h ../../include/openssl/md5.h
-m_mdc2.o: ../../include/openssl/mdc2.h ../../include/openssl/obj_mac.h
-m_mdc2.o: ../../include/openssl/objects.h ../../include/openssl/opensslconf.h
-m_mdc2.o: ../../include/openssl/opensslv.h ../../include/openssl/pkcs7.h
-m_mdc2.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h
-m_mdc2.o: ../../include/openssl/rc5.h ../../include/openssl/ripemd.h
-m_mdc2.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
-m_mdc2.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
+m_mdc2.o: ../../include/openssl/md2.h ../../include/openssl/md4.h
+m_mdc2.o: ../../include/openssl/md5.h ../../include/openssl/mdc2.h
+m_mdc2.o: ../../include/openssl/obj_mac.h ../../include/openssl/objects.h
+m_mdc2.o: ../../include/openssl/opensslconf.h ../../include/openssl/opensslv.h
+m_mdc2.o: ../../include/openssl/pkcs7.h ../../include/openssl/rc2.h
+m_mdc2.o: ../../include/openssl/rc4.h ../../include/openssl/rc5.h
+m_mdc2.o: ../../include/openssl/ripemd.h ../../include/openssl/rsa.h
+m_mdc2.o: ../../include/openssl/safestack.h ../../include/openssl/sha.h
+m_mdc2.o: ../../include/openssl/stack.h ../../include/openssl/symhacks.h
 m_mdc2.o: ../../include/openssl/x509.h ../../include/openssl/x509_vfy.h
 m_mdc2.o: ../cryptlib.h
 m_null.o: ../../include/openssl/asn1.h ../../include/openssl/bio.h
@@ -605,14 +656,15 @@ m_null.o: ../../include/openssl/dh.h ../../include/openssl/dsa.h
 m_null.o: ../../include/openssl/e_os.h ../../include/openssl/e_os2.h
 m_null.o: ../../include/openssl/err.h ../../include/openssl/evp.h
 m_null.o: ../../include/openssl/idea.h ../../include/openssl/lhash.h
-m_null.o: ../../include/openssl/md2.h ../../include/openssl/md5.h
-m_null.o: ../../include/openssl/mdc2.h ../../include/openssl/obj_mac.h
-m_null.o: ../../include/openssl/objects.h ../../include/openssl/opensslconf.h
-m_null.o: ../../include/openssl/opensslv.h ../../include/openssl/pkcs7.h
-m_null.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h
-m_null.o: ../../include/openssl/rc5.h ../../include/openssl/ripemd.h
-m_null.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
-m_null.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
+m_null.o: ../../include/openssl/md2.h ../../include/openssl/md4.h
+m_null.o: ../../include/openssl/md5.h ../../include/openssl/mdc2.h
+m_null.o: ../../include/openssl/obj_mac.h ../../include/openssl/objects.h
+m_null.o: ../../include/openssl/opensslconf.h ../../include/openssl/opensslv.h
+m_null.o: ../../include/openssl/pkcs7.h ../../include/openssl/rc2.h
+m_null.o: ../../include/openssl/rc4.h ../../include/openssl/rc5.h
+m_null.o: ../../include/openssl/ripemd.h ../../include/openssl/rsa.h
+m_null.o: ../../include/openssl/safestack.h ../../include/openssl/sha.h
+m_null.o: ../../include/openssl/stack.h ../../include/openssl/symhacks.h
 m_null.o: ../../include/openssl/x509.h ../../include/openssl/x509_vfy.h
 m_null.o: ../cryptlib.h
 m_ripemd.o: ../../include/openssl/asn1.h ../../include/openssl/bio.h
@@ -623,16 +675,17 @@ m_ripemd.o: ../../include/openssl/dh.h ../../include/openssl/dsa.h
 m_ripemd.o: ../../include/openssl/e_os.h ../../include/openssl/e_os2.h
 m_ripemd.o: ../../include/openssl/err.h ../../include/openssl/evp.h
 m_ripemd.o: ../../include/openssl/idea.h ../../include/openssl/lhash.h
-m_ripemd.o: ../../include/openssl/md2.h ../../include/openssl/md5.h
-m_ripemd.o: ../../include/openssl/mdc2.h ../../include/openssl/obj_mac.h
-m_ripemd.o: ../../include/openssl/objects.h ../../include/openssl/opensslconf.h
+m_ripemd.o: ../../include/openssl/md2.h ../../include/openssl/md4.h
+m_ripemd.o: ../../include/openssl/md5.h ../../include/openssl/mdc2.h
+m_ripemd.o: ../../include/openssl/obj_mac.h ../../include/openssl/objects.h
+m_ripemd.o: ../../include/openssl/opensslconf.h
 m_ripemd.o: ../../include/openssl/opensslv.h ../../include/openssl/pkcs7.h
 m_ripemd.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h
 m_ripemd.o: ../../include/openssl/rc5.h ../../include/openssl/ripemd.h
 m_ripemd.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
 m_ripemd.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
-m_ripemd.o: ../../include/openssl/x509.h ../../include/openssl/x509_vfy.h
-m_ripemd.o: ../cryptlib.h
+m_ripemd.o: ../../include/openssl/symhacks.h ../../include/openssl/x509.h
+m_ripemd.o: ../../include/openssl/x509_vfy.h ../cryptlib.h
 m_sha.o: ../../include/openssl/asn1.h ../../include/openssl/bio.h
 m_sha.o: ../../include/openssl/blowfish.h ../../include/openssl/bn.h
 m_sha.o: ../../include/openssl/buffer.h ../../include/openssl/cast.h
@@ -641,14 +694,15 @@ m_sha.o: ../../include/openssl/dh.h ../../include/openssl/dsa.h
 m_sha.o: ../../include/openssl/e_os.h ../../include/openssl/e_os2.h
 m_sha.o: ../../include/openssl/err.h ../../include/openssl/evp.h
 m_sha.o: ../../include/openssl/idea.h ../../include/openssl/lhash.h
-m_sha.o: ../../include/openssl/md2.h ../../include/openssl/md5.h
-m_sha.o: ../../include/openssl/mdc2.h ../../include/openssl/obj_mac.h
-m_sha.o: ../../include/openssl/objects.h ../../include/openssl/opensslconf.h
-m_sha.o: ../../include/openssl/opensslv.h ../../include/openssl/pkcs7.h
-m_sha.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h
-m_sha.o: ../../include/openssl/rc5.h ../../include/openssl/ripemd.h
-m_sha.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
-m_sha.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
+m_sha.o: ../../include/openssl/md2.h ../../include/openssl/md4.h
+m_sha.o: ../../include/openssl/md5.h ../../include/openssl/mdc2.h
+m_sha.o: ../../include/openssl/obj_mac.h ../../include/openssl/objects.h
+m_sha.o: ../../include/openssl/opensslconf.h ../../include/openssl/opensslv.h
+m_sha.o: ../../include/openssl/pkcs7.h ../../include/openssl/rc2.h
+m_sha.o: ../../include/openssl/rc4.h ../../include/openssl/rc5.h
+m_sha.o: ../../include/openssl/ripemd.h ../../include/openssl/rsa.h
+m_sha.o: ../../include/openssl/safestack.h ../../include/openssl/sha.h
+m_sha.o: ../../include/openssl/stack.h ../../include/openssl/symhacks.h
 m_sha.o: ../../include/openssl/x509.h ../../include/openssl/x509_vfy.h
 m_sha.o: ../cryptlib.h
 m_sha1.o: ../../include/openssl/asn1.h ../../include/openssl/bio.h
@@ -659,14 +713,15 @@ m_sha1.o: ../../include/openssl/dh.h ../../include/openssl/dsa.h
 m_sha1.o: ../../include/openssl/e_os.h ../../include/openssl/e_os2.h
 m_sha1.o: ../../include/openssl/err.h ../../include/openssl/evp.h
 m_sha1.o: ../../include/openssl/idea.h ../../include/openssl/lhash.h
-m_sha1.o: ../../include/openssl/md2.h ../../include/openssl/md5.h
-m_sha1.o: ../../include/openssl/mdc2.h ../../include/openssl/obj_mac.h
-m_sha1.o: ../../include/openssl/objects.h ../../include/openssl/opensslconf.h
-m_sha1.o: ../../include/openssl/opensslv.h ../../include/openssl/pkcs7.h
-m_sha1.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h
-m_sha1.o: ../../include/openssl/rc5.h ../../include/openssl/ripemd.h
-m_sha1.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
-m_sha1.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
+m_sha1.o: ../../include/openssl/md2.h ../../include/openssl/md4.h
+m_sha1.o: ../../include/openssl/md5.h ../../include/openssl/mdc2.h
+m_sha1.o: ../../include/openssl/obj_mac.h ../../include/openssl/objects.h
+m_sha1.o: ../../include/openssl/opensslconf.h ../../include/openssl/opensslv.h
+m_sha1.o: ../../include/openssl/pkcs7.h ../../include/openssl/rc2.h
+m_sha1.o: ../../include/openssl/rc4.h ../../include/openssl/rc5.h
+m_sha1.o: ../../include/openssl/ripemd.h ../../include/openssl/rsa.h
+m_sha1.o: ../../include/openssl/safestack.h ../../include/openssl/sha.h
+m_sha1.o: ../../include/openssl/stack.h ../../include/openssl/symhacks.h
 m_sha1.o: ../../include/openssl/x509.h ../../include/openssl/x509_vfy.h
 m_sha1.o: ../cryptlib.h
 names.o: ../../include/openssl/asn1.h ../../include/openssl/bio.h
@@ -677,14 +732,15 @@ names.o: ../../include/openssl/dh.h ../../include/openssl/dsa.h
 names.o: ../../include/openssl/e_os.h ../../include/openssl/e_os2.h
 names.o: ../../include/openssl/err.h ../../include/openssl/evp.h
 names.o: ../../include/openssl/idea.h ../../include/openssl/lhash.h
-names.o: ../../include/openssl/md2.h ../../include/openssl/md5.h
-names.o: ../../include/openssl/mdc2.h ../../include/openssl/obj_mac.h
-names.o: ../../include/openssl/objects.h ../../include/openssl/opensslconf.h
-names.o: ../../include/openssl/opensslv.h ../../include/openssl/pkcs7.h
-names.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h
-names.o: ../../include/openssl/rc5.h ../../include/openssl/ripemd.h
-names.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
-names.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
+names.o: ../../include/openssl/md2.h ../../include/openssl/md4.h
+names.o: ../../include/openssl/md5.h ../../include/openssl/mdc2.h
+names.o: ../../include/openssl/obj_mac.h ../../include/openssl/objects.h
+names.o: ../../include/openssl/opensslconf.h ../../include/openssl/opensslv.h
+names.o: ../../include/openssl/pkcs7.h ../../include/openssl/rc2.h
+names.o: ../../include/openssl/rc4.h ../../include/openssl/rc5.h
+names.o: ../../include/openssl/ripemd.h ../../include/openssl/rsa.h
+names.o: ../../include/openssl/safestack.h ../../include/openssl/sha.h
+names.o: ../../include/openssl/stack.h ../../include/openssl/symhacks.h
 names.o: ../../include/openssl/x509.h ../../include/openssl/x509_vfy.h
 names.o: ../cryptlib.h
 p5_crpt.o: ../../include/openssl/asn1.h ../../include/openssl/bio.h
@@ -695,14 +751,15 @@ p5_crpt.o: ../../include/openssl/dh.h ../../include/openssl/dsa.h
 p5_crpt.o: ../../include/openssl/e_os.h ../../include/openssl/e_os2.h
 p5_crpt.o: ../../include/openssl/err.h ../../include/openssl/evp.h
 p5_crpt.o: ../../include/openssl/idea.h ../../include/openssl/lhash.h
-p5_crpt.o: ../../include/openssl/md2.h ../../include/openssl/md5.h
-p5_crpt.o: ../../include/openssl/mdc2.h ../../include/openssl/obj_mac.h
-p5_crpt.o: ../../include/openssl/objects.h ../../include/openssl/opensslconf.h
-p5_crpt.o: ../../include/openssl/opensslv.h ../../include/openssl/pkcs7.h
-p5_crpt.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h
-p5_crpt.o: ../../include/openssl/rc5.h ../../include/openssl/ripemd.h
-p5_crpt.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
-p5_crpt.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
+p5_crpt.o: ../../include/openssl/md2.h ../../include/openssl/md4.h
+p5_crpt.o: ../../include/openssl/md5.h ../../include/openssl/mdc2.h
+p5_crpt.o: ../../include/openssl/obj_mac.h ../../include/openssl/objects.h
+p5_crpt.o: ../../include/openssl/opensslconf.h ../../include/openssl/opensslv.h
+p5_crpt.o: ../../include/openssl/pkcs7.h ../../include/openssl/rc2.h
+p5_crpt.o: ../../include/openssl/rc4.h ../../include/openssl/rc5.h
+p5_crpt.o: ../../include/openssl/ripemd.h ../../include/openssl/rsa.h
+p5_crpt.o: ../../include/openssl/safestack.h ../../include/openssl/sha.h
+p5_crpt.o: ../../include/openssl/stack.h ../../include/openssl/symhacks.h
 p5_crpt.o: ../../include/openssl/x509.h ../../include/openssl/x509_vfy.h
 p5_crpt.o: ../cryptlib.h
 p5_crpt2.o: ../../include/openssl/asn1.h ../../include/openssl/bio.h
@@ -714,16 +771,16 @@ p5_crpt2.o: ../../include/openssl/e_os.h ../../include/openssl/e_os2.h
 p5_crpt2.o: ../../include/openssl/err.h ../../include/openssl/evp.h
 p5_crpt2.o: ../../include/openssl/hmac.h ../../include/openssl/idea.h
 p5_crpt2.o: ../../include/openssl/lhash.h ../../include/openssl/md2.h
-p5_crpt2.o: ../../include/openssl/md5.h ../../include/openssl/mdc2.h
-p5_crpt2.o: ../../include/openssl/obj_mac.h ../../include/openssl/objects.h
-p5_crpt2.o: ../../include/openssl/opensslconf.h
+p5_crpt2.o: ../../include/openssl/md4.h ../../include/openssl/md5.h
+p5_crpt2.o: ../../include/openssl/mdc2.h ../../include/openssl/obj_mac.h
+p5_crpt2.o: ../../include/openssl/objects.h ../../include/openssl/opensslconf.h
 p5_crpt2.o: ../../include/openssl/opensslv.h ../../include/openssl/pkcs7.h
 p5_crpt2.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h
 p5_crpt2.o: ../../include/openssl/rc5.h ../../include/openssl/ripemd.h
 p5_crpt2.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
 p5_crpt2.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
-p5_crpt2.o: ../../include/openssl/x509.h ../../include/openssl/x509_vfy.h
-p5_crpt2.o: ../cryptlib.h
+p5_crpt2.o: ../../include/openssl/symhacks.h ../../include/openssl/x509.h
+p5_crpt2.o: ../../include/openssl/x509_vfy.h ../cryptlib.h
 p_dec.o: ../../include/openssl/asn1.h ../../include/openssl/bio.h
 p_dec.o: ../../include/openssl/blowfish.h ../../include/openssl/bn.h
 p_dec.o: ../../include/openssl/buffer.h ../../include/openssl/cast.h
@@ -732,15 +789,16 @@ p_dec.o: ../../include/openssl/dh.h ../../include/openssl/dsa.h
 p_dec.o: ../../include/openssl/e_os.h ../../include/openssl/e_os2.h
 p_dec.o: ../../include/openssl/err.h ../../include/openssl/evp.h
 p_dec.o: ../../include/openssl/idea.h ../../include/openssl/lhash.h
-p_dec.o: ../../include/openssl/md2.h ../../include/openssl/md5.h
-p_dec.o: ../../include/openssl/mdc2.h ../../include/openssl/obj_mac.h
-p_dec.o: ../../include/openssl/objects.h ../../include/openssl/opensslconf.h
-p_dec.o: ../../include/openssl/opensslv.h ../../include/openssl/pkcs7.h
-p_dec.o: ../../include/openssl/rand.h ../../include/openssl/rc2.h
-p_dec.o: ../../include/openssl/rc4.h ../../include/openssl/rc5.h
-p_dec.o: ../../include/openssl/ripemd.h ../../include/openssl/rsa.h
-p_dec.o: ../../include/openssl/safestack.h ../../include/openssl/sha.h
-p_dec.o: ../../include/openssl/stack.h ../../include/openssl/x509.h
+p_dec.o: ../../include/openssl/md2.h ../../include/openssl/md4.h
+p_dec.o: ../../include/openssl/md5.h ../../include/openssl/mdc2.h
+p_dec.o: ../../include/openssl/obj_mac.h ../../include/openssl/objects.h
+p_dec.o: ../../include/openssl/opensslconf.h ../../include/openssl/opensslv.h
+p_dec.o: ../../include/openssl/pkcs7.h ../../include/openssl/rand.h
+p_dec.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h
+p_dec.o: ../../include/openssl/rc5.h ../../include/openssl/ripemd.h
+p_dec.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
+p_dec.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
+p_dec.o: ../../include/openssl/symhacks.h ../../include/openssl/x509.h
 p_dec.o: ../../include/openssl/x509_vfy.h ../cryptlib.h
 p_enc.o: ../../include/openssl/asn1.h ../../include/openssl/bio.h
 p_enc.o: ../../include/openssl/blowfish.h ../../include/openssl/bn.h
@@ -750,15 +808,16 @@ p_enc.o: ../../include/openssl/dh.h ../../include/openssl/dsa.h
 p_enc.o: ../../include/openssl/e_os.h ../../include/openssl/e_os2.h
 p_enc.o: ../../include/openssl/err.h ../../include/openssl/evp.h
 p_enc.o: ../../include/openssl/idea.h ../../include/openssl/lhash.h
-p_enc.o: ../../include/openssl/md2.h ../../include/openssl/md5.h
-p_enc.o: ../../include/openssl/mdc2.h ../../include/openssl/obj_mac.h
-p_enc.o: ../../include/openssl/objects.h ../../include/openssl/opensslconf.h
-p_enc.o: ../../include/openssl/opensslv.h ../../include/openssl/pkcs7.h
-p_enc.o: ../../include/openssl/rand.h ../../include/openssl/rc2.h
-p_enc.o: ../../include/openssl/rc4.h ../../include/openssl/rc5.h
-p_enc.o: ../../include/openssl/ripemd.h ../../include/openssl/rsa.h
-p_enc.o: ../../include/openssl/safestack.h ../../include/openssl/sha.h
-p_enc.o: ../../include/openssl/stack.h ../../include/openssl/x509.h
+p_enc.o: ../../include/openssl/md2.h ../../include/openssl/md4.h
+p_enc.o: ../../include/openssl/md5.h ../../include/openssl/mdc2.h
+p_enc.o: ../../include/openssl/obj_mac.h ../../include/openssl/objects.h
+p_enc.o: ../../include/openssl/opensslconf.h ../../include/openssl/opensslv.h
+p_enc.o: ../../include/openssl/pkcs7.h ../../include/openssl/rand.h
+p_enc.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h
+p_enc.o: ../../include/openssl/rc5.h ../../include/openssl/ripemd.h
+p_enc.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
+p_enc.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
+p_enc.o: ../../include/openssl/symhacks.h ../../include/openssl/x509.h
 p_enc.o: ../../include/openssl/x509_vfy.h ../cryptlib.h
 p_lib.o: ../../include/openssl/asn1.h ../../include/openssl/asn1_mac.h
 p_lib.o: ../../include/openssl/bio.h ../../include/openssl/blowfish.h
@@ -769,14 +828,15 @@ p_lib.o: ../../include/openssl/dsa.h ../../include/openssl/e_os.h
 p_lib.o: ../../include/openssl/e_os2.h ../../include/openssl/err.h
 p_lib.o: ../../include/openssl/evp.h ../../include/openssl/idea.h
 p_lib.o: ../../include/openssl/lhash.h ../../include/openssl/md2.h
-p_lib.o: ../../include/openssl/md5.h ../../include/openssl/mdc2.h
-p_lib.o: ../../include/openssl/obj_mac.h ../../include/openssl/objects.h
-p_lib.o: ../../include/openssl/opensslconf.h ../../include/openssl/opensslv.h
-p_lib.o: ../../include/openssl/pkcs7.h ../../include/openssl/rc2.h
-p_lib.o: ../../include/openssl/rc4.h ../../include/openssl/rc5.h
-p_lib.o: ../../include/openssl/ripemd.h ../../include/openssl/rsa.h
-p_lib.o: ../../include/openssl/safestack.h ../../include/openssl/sha.h
-p_lib.o: ../../include/openssl/stack.h ../../include/openssl/x509.h
+p_lib.o: ../../include/openssl/md4.h ../../include/openssl/md5.h
+p_lib.o: ../../include/openssl/mdc2.h ../../include/openssl/obj_mac.h
+p_lib.o: ../../include/openssl/objects.h ../../include/openssl/opensslconf.h
+p_lib.o: ../../include/openssl/opensslv.h ../../include/openssl/pkcs7.h
+p_lib.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h
+p_lib.o: ../../include/openssl/rc5.h ../../include/openssl/ripemd.h
+p_lib.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
+p_lib.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
+p_lib.o: ../../include/openssl/symhacks.h ../../include/openssl/x509.h
 p_lib.o: ../../include/openssl/x509_vfy.h ../cryptlib.h
 p_open.o: ../../include/openssl/asn1.h ../../include/openssl/bio.h
 p_open.o: ../../include/openssl/blowfish.h ../../include/openssl/bn.h
@@ -786,14 +846,15 @@ p_open.o: ../../include/openssl/dh.h ../../include/openssl/dsa.h
 p_open.o: ../../include/openssl/e_os.h ../../include/openssl/e_os2.h
 p_open.o: ../../include/openssl/err.h ../../include/openssl/evp.h
 p_open.o: ../../include/openssl/idea.h ../../include/openssl/lhash.h
-p_open.o: ../../include/openssl/md2.h ../../include/openssl/md5.h
-p_open.o: ../../include/openssl/mdc2.h ../../include/openssl/obj_mac.h
-p_open.o: ../../include/openssl/objects.h ../../include/openssl/opensslconf.h
-p_open.o: ../../include/openssl/opensslv.h ../../include/openssl/pkcs7.h
-p_open.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h
-p_open.o: ../../include/openssl/rc5.h ../../include/openssl/ripemd.h
-p_open.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
-p_open.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
+p_open.o: ../../include/openssl/md2.h ../../include/openssl/md4.h
+p_open.o: ../../include/openssl/md5.h ../../include/openssl/mdc2.h
+p_open.o: ../../include/openssl/obj_mac.h ../../include/openssl/objects.h
+p_open.o: ../../include/openssl/opensslconf.h ../../include/openssl/opensslv.h
+p_open.o: ../../include/openssl/pkcs7.h ../../include/openssl/rc2.h
+p_open.o: ../../include/openssl/rc4.h ../../include/openssl/rc5.h
+p_open.o: ../../include/openssl/ripemd.h ../../include/openssl/rsa.h
+p_open.o: ../../include/openssl/safestack.h ../../include/openssl/sha.h
+p_open.o: ../../include/openssl/stack.h ../../include/openssl/symhacks.h
 p_open.o: ../../include/openssl/x509.h ../../include/openssl/x509_vfy.h
 p_open.o: ../cryptlib.h
 p_seal.o: ../../include/openssl/asn1.h ../../include/openssl/bio.h
@@ -804,15 +865,16 @@ p_seal.o: ../../include/openssl/dh.h ../../include/openssl/dsa.h
 p_seal.o: ../../include/openssl/e_os.h ../../include/openssl/e_os2.h
 p_seal.o: ../../include/openssl/err.h ../../include/openssl/evp.h
 p_seal.o: ../../include/openssl/idea.h ../../include/openssl/lhash.h
-p_seal.o: ../../include/openssl/md2.h ../../include/openssl/md5.h
-p_seal.o: ../../include/openssl/mdc2.h ../../include/openssl/obj_mac.h
-p_seal.o: ../../include/openssl/objects.h ../../include/openssl/opensslconf.h
-p_seal.o: ../../include/openssl/opensslv.h ../../include/openssl/pkcs7.h
-p_seal.o: ../../include/openssl/rand.h ../../include/openssl/rc2.h
-p_seal.o: ../../include/openssl/rc4.h ../../include/openssl/rc5.h
-p_seal.o: ../../include/openssl/ripemd.h ../../include/openssl/rsa.h
-p_seal.o: ../../include/openssl/safestack.h ../../include/openssl/sha.h
-p_seal.o: ../../include/openssl/stack.h ../../include/openssl/x509.h
+p_seal.o: ../../include/openssl/md2.h ../../include/openssl/md4.h
+p_seal.o: ../../include/openssl/md5.h ../../include/openssl/mdc2.h
+p_seal.o: ../../include/openssl/obj_mac.h ../../include/openssl/objects.h
+p_seal.o: ../../include/openssl/opensslconf.h ../../include/openssl/opensslv.h
+p_seal.o: ../../include/openssl/pkcs7.h ../../include/openssl/rand.h
+p_seal.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h
+p_seal.o: ../../include/openssl/rc5.h ../../include/openssl/ripemd.h
+p_seal.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
+p_seal.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
+p_seal.o: ../../include/openssl/symhacks.h ../../include/openssl/x509.h
 p_seal.o: ../../include/openssl/x509_vfy.h ../cryptlib.h
 p_sign.o: ../../include/openssl/asn1.h ../../include/openssl/bio.h
 p_sign.o: ../../include/openssl/blowfish.h ../../include/openssl/bn.h
@@ -822,14 +884,15 @@ p_sign.o: ../../include/openssl/dh.h ../../include/openssl/dsa.h
 p_sign.o: ../../include/openssl/e_os.h ../../include/openssl/e_os2.h
 p_sign.o: ../../include/openssl/err.h ../../include/openssl/evp.h
 p_sign.o: ../../include/openssl/idea.h ../../include/openssl/lhash.h
-p_sign.o: ../../include/openssl/md2.h ../../include/openssl/md5.h
-p_sign.o: ../../include/openssl/mdc2.h ../../include/openssl/obj_mac.h
-p_sign.o: ../../include/openssl/objects.h ../../include/openssl/opensslconf.h
-p_sign.o: ../../include/openssl/opensslv.h ../../include/openssl/pkcs7.h
-p_sign.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h
-p_sign.o: ../../include/openssl/rc5.h ../../include/openssl/ripemd.h
-p_sign.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
-p_sign.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
+p_sign.o: ../../include/openssl/md2.h ../../include/openssl/md4.h
+p_sign.o: ../../include/openssl/md5.h ../../include/openssl/mdc2.h
+p_sign.o: ../../include/openssl/obj_mac.h ../../include/openssl/objects.h
+p_sign.o: ../../include/openssl/opensslconf.h ../../include/openssl/opensslv.h
+p_sign.o: ../../include/openssl/pkcs7.h ../../include/openssl/rc2.h
+p_sign.o: ../../include/openssl/rc4.h ../../include/openssl/rc5.h
+p_sign.o: ../../include/openssl/ripemd.h ../../include/openssl/rsa.h
+p_sign.o: ../../include/openssl/safestack.h ../../include/openssl/sha.h
+p_sign.o: ../../include/openssl/stack.h ../../include/openssl/symhacks.h
 p_sign.o: ../../include/openssl/x509.h ../../include/openssl/x509_vfy.h
 p_sign.o: ../cryptlib.h
 p_verify.o: ../../include/openssl/asn1.h ../../include/openssl/bio.h
@@ -840,13 +903,14 @@ p_verify.o: ../../include/openssl/dh.h ../../include/openssl/dsa.h
 p_verify.o: ../../include/openssl/e_os.h ../../include/openssl/e_os2.h
 p_verify.o: ../../include/openssl/err.h ../../include/openssl/evp.h
 p_verify.o: ../../include/openssl/idea.h ../../include/openssl/lhash.h
-p_verify.o: ../../include/openssl/md2.h ../../include/openssl/md5.h
-p_verify.o: ../../include/openssl/mdc2.h ../../include/openssl/obj_mac.h
-p_verify.o: ../../include/openssl/objects.h ../../include/openssl/opensslconf.h
+p_verify.o: ../../include/openssl/md2.h ../../include/openssl/md4.h
+p_verify.o: ../../include/openssl/md5.h ../../include/openssl/mdc2.h
+p_verify.o: ../../include/openssl/obj_mac.h ../../include/openssl/objects.h
+p_verify.o: ../../include/openssl/opensslconf.h
 p_verify.o: ../../include/openssl/opensslv.h ../../include/openssl/pkcs7.h
 p_verify.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h
 p_verify.o: ../../include/openssl/rc5.h ../../include/openssl/ripemd.h
 p_verify.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
 p_verify.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
-p_verify.o: ../../include/openssl/x509.h ../../include/openssl/x509_vfy.h
-p_verify.o: ../cryptlib.h
+p_verify.o: ../../include/openssl/symhacks.h ../../include/openssl/x509.h
+p_verify.o: ../../include/openssl/x509_vfy.h ../cryptlib.h
index febe51a3ee4372dbf3dac2271919bcaa9595bf08..bbf059eb85e27e68fe47e5481e82823b80998277 100644 (file)
@@ -67,6 +67,9 @@ void OpenSSL_add_all_digests(void)
 #ifndef NO_MD2
        EVP_add_digest(EVP_md2());
 #endif
+#ifndef NO_MD4
+       EVP_add_digest(EVP_md4());
+#endif
 #ifndef NO_MD5
        EVP_add_digest(EVP_md5());
        EVP_add_digest_alias(SN_md5,"ssl2-md5");
index 14a4cb11f6c77bbee4e948dcbe83820091046d84..6ff9c1783cf60720ee60a29298746ec5e0427356 100644 (file)
@@ -292,7 +292,17 @@ int EVP_DecodeUpdate(EVP_ENCODE_CTX *ctx, unsigned char *out, int *outl,
                /* If we are at the end of input and it looks like a
                 * line, process it. */
                if (((i+1) == inl) && (((n&3) == 0) || eof))
+                       {
                        v=B64_EOF;
+                       /* In case things were given us in really small
+                          records (so two '=' were given in separate
+                          updates), eof may contain the incorrect number
+                          of ending bytes to skip, so let's redo the count */
+                       eof = 0;
+                       if (d[n-1] == '=') eof++;
+                       if (d[n-2] == '=') eof++;
+                       /* There will never be more than two '=' */
+                       }
 
                if ((v == B64_EOF) || (n >= 64))
                        {
index f3b2b7456a479dc39e5ad68251382d67d490ffff..f5b938d2f848c7af711cd2553adcc048a6ddbcd7 100644 (file)
@@ -73,6 +73,9 @@
 #ifndef NO_MD2
 #include <openssl/md2.h>
 #endif
+#ifndef NO_MD4
+#include <openssl/md4.h>
+#endif
 #ifndef NO_MD5
 #include <openssl/md5.h>
 #endif
@@ -309,6 +312,9 @@ typedef struct env_md_ctx_st
 #ifndef NO_MD5
                MD5_CTX md5;
 #endif
+#ifndef NO_MD4
+               MD4_CTX md4;
+#endif
 #ifndef NO_RIPEMD
                RIPEMD160_CTX ripemd160;
 #endif
@@ -607,6 +613,7 @@ void BIO_set_cipher(BIO *b,const EVP_CIPHER *c,unsigned char *k,
 
 EVP_MD *EVP_md_null(void);
 EVP_MD *EVP_md2(void);
+EVP_MD *EVP_md4(void);
 EVP_MD *EVP_md5(void);
 EVP_MD *EVP_sha(void);
 EVP_MD *EVP_sha1(void);
index 767269b0e5312f7edc5adcb6d50922c1c169d83a..430eab4c9a15e75b42023b2e001237d0237d45aa 100644 (file)
@@ -85,10 +85,11 @@ hmac.o: ../../include/openssl/des.h ../../include/openssl/dh.h
 hmac.o: ../../include/openssl/dsa.h ../../include/openssl/e_os2.h
 hmac.o: ../../include/openssl/evp.h ../../include/openssl/hmac.h
 hmac.o: ../../include/openssl/idea.h ../../include/openssl/md2.h
-hmac.o: ../../include/openssl/md5.h ../../include/openssl/mdc2.h
-hmac.o: ../../include/openssl/obj_mac.h ../../include/openssl/objects.h
-hmac.o: ../../include/openssl/opensslconf.h ../../include/openssl/opensslv.h
-hmac.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h
-hmac.o: ../../include/openssl/rc5.h ../../include/openssl/ripemd.h
-hmac.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
-hmac.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
+hmac.o: ../../include/openssl/md4.h ../../include/openssl/md5.h
+hmac.o: ../../include/openssl/mdc2.h ../../include/openssl/obj_mac.h
+hmac.o: ../../include/openssl/objects.h ../../include/openssl/opensslconf.h
+hmac.o: ../../include/openssl/opensslv.h ../../include/openssl/rc2.h
+hmac.o: ../../include/openssl/rc4.h ../../include/openssl/rc5.h
+hmac.o: ../../include/openssl/ripemd.h ../../include/openssl/rsa.h
+hmac.o: ../../include/openssl/safestack.h ../../include/openssl/sha.h
+hmac.o: ../../include/openssl/stack.h ../../include/openssl/symhacks.h
index 10cfe4e40468fe905b9d05c5d77ae71eb22dce9c..b0fca36b273ad92eafcada0e55d8584b2f499ef0 100644 (file)
@@ -38,7 +38,7 @@ $     SDIRS := ,MD2,MD5,SHA,MDC2,HMAC,RIPEMD,-
                 BUFFER,BIO,STACK,LHASH,RAND,ERR,OBJECTS,-
                 EVP,ASN1,PEM,X509,X509V3,-
                 CONF,TXT_DB,PKCS7,PKCS12,COMP
-$      EXHEADER_ := crypto.h,tmdiff.h,opensslv.h,opensslconf.h,ebcdic.h
+$      EXHEADER_ := crypto.h,tmdiff.h,opensslv.h,opensslconf.h,ebcdic.h,symhacks.h
 $      EXHEADER_MD2 := md2.h
 $      EXHEADER_MD5 := md5.h
 $      EXHEADER_SHA := sha.h
index 9afba2f9011ce53befb4a1e11af40aec094f9f03..d7a51db3ee6ce0c5b706d8cc9242e16f47a63a3f 100644 (file)
@@ -83,7 +83,9 @@ lh_stats.o: ../../include/openssl/crypto.h ../../include/openssl/e_os.h
 lh_stats.o: ../../include/openssl/e_os2.h ../../include/openssl/err.h
 lh_stats.o: ../../include/openssl/lhash.h ../../include/openssl/opensslconf.h
 lh_stats.o: ../../include/openssl/opensslv.h ../../include/openssl/safestack.h
-lh_stats.o: ../../include/openssl/stack.h ../cryptlib.h
+lh_stats.o: ../../include/openssl/stack.h ../../include/openssl/symhacks.h
+lh_stats.o: ../cryptlib.h
 lhash.o: ../../include/openssl/bio.h ../../include/openssl/crypto.h
 lhash.o: ../../include/openssl/lhash.h ../../include/openssl/opensslv.h
 lhash.o: ../../include/openssl/safestack.h ../../include/openssl/stack.h
+lhash.o: ../../include/openssl/symhacks.h
index 4d93a773e6417bf491708d371931a558f7b86db5..c25ab74a3816c692844b16a6dd08c61031f01a51 100644 (file)
@@ -86,4 +86,4 @@ md2_one.o: ../../include/openssl/e_os2.h ../../include/openssl/err.h
 md2_one.o: ../../include/openssl/lhash.h ../../include/openssl/md2.h
 md2_one.o: ../../include/openssl/opensslconf.h ../../include/openssl/opensslv.h
 md2_one.o: ../../include/openssl/safestack.h ../../include/openssl/stack.h
-md2_one.o: ../cryptlib.h
+md2_one.o: ../../include/openssl/symhacks.h ../cryptlib.h
index ee07ba3eb7b0d406dbaab350a9e226a6811bdc49..a50de0f42a6786fbb71ccc71f801d1d27c66f725 100644 (file)
@@ -84,6 +84,7 @@ mdc2_one.o: ../../include/openssl/e_os.h ../../include/openssl/e_os2.h
 mdc2_one.o: ../../include/openssl/err.h ../../include/openssl/lhash.h
 mdc2_one.o: ../../include/openssl/mdc2.h ../../include/openssl/opensslconf.h
 mdc2_one.o: ../../include/openssl/opensslv.h ../../include/openssl/safestack.h
-mdc2_one.o: ../../include/openssl/stack.h ../cryptlib.h
+mdc2_one.o: ../../include/openssl/stack.h ../../include/openssl/symhacks.h
+mdc2_one.o: ../cryptlib.h
 mdc2dgst.o: ../../include/openssl/des.h ../../include/openssl/e_os2.h
 mdc2dgst.o: ../../include/openssl/mdc2.h ../../include/openssl/opensslconf.h
index a814fd1b37d2cd533cdd234a534dd34c7ae37e73..47fdc34eec5345e58882fdf636189fa6599857a7 100644 (file)
@@ -83,7 +83,7 @@ o_names.o: ../../include/openssl/bn.h ../../include/openssl/crypto.h
 o_names.o: ../../include/openssl/lhash.h ../../include/openssl/obj_mac.h
 o_names.o: ../../include/openssl/objects.h ../../include/openssl/opensslconf.h
 o_names.o: ../../include/openssl/opensslv.h ../../include/openssl/safestack.h
-o_names.o: ../../include/openssl/stack.h
+o_names.o: ../../include/openssl/stack.h ../../include/openssl/symhacks.h
 obj_dat.o: ../../include/openssl/asn1.h ../../include/openssl/bio.h
 obj_dat.o: ../../include/openssl/bn.h ../../include/openssl/buffer.h
 obj_dat.o: ../../include/openssl/crypto.h ../../include/openssl/e_os.h
@@ -91,13 +91,15 @@ obj_dat.o: ../../include/openssl/e_os2.h ../../include/openssl/err.h
 obj_dat.o: ../../include/openssl/lhash.h ../../include/openssl/obj_mac.h
 obj_dat.o: ../../include/openssl/objects.h ../../include/openssl/opensslconf.h
 obj_dat.o: ../../include/openssl/opensslv.h ../../include/openssl/safestack.h
-obj_dat.o: ../../include/openssl/stack.h ../cryptlib.h obj_dat.h
+obj_dat.o: ../../include/openssl/stack.h ../../include/openssl/symhacks.h
+obj_dat.o: ../cryptlib.h obj_dat.h
 obj_err.o: ../../include/openssl/asn1.h ../../include/openssl/bio.h
 obj_err.o: ../../include/openssl/bn.h ../../include/openssl/crypto.h
 obj_err.o: ../../include/openssl/err.h ../../include/openssl/lhash.h
 obj_err.o: ../../include/openssl/obj_mac.h ../../include/openssl/objects.h
 obj_err.o: ../../include/openssl/opensslconf.h ../../include/openssl/opensslv.h
 obj_err.o: ../../include/openssl/safestack.h ../../include/openssl/stack.h
+obj_err.o: ../../include/openssl/symhacks.h
 obj_lib.o: ../../include/openssl/asn1.h ../../include/openssl/bio.h
 obj_lib.o: ../../include/openssl/bn.h ../../include/openssl/buffer.h
 obj_lib.o: ../../include/openssl/crypto.h ../../include/openssl/e_os.h
@@ -105,4 +107,5 @@ obj_lib.o: ../../include/openssl/e_os2.h ../../include/openssl/err.h
 obj_lib.o: ../../include/openssl/lhash.h ../../include/openssl/obj_mac.h
 obj_lib.o: ../../include/openssl/objects.h ../../include/openssl/opensslconf.h
 obj_lib.o: ../../include/openssl/opensslv.h ../../include/openssl/safestack.h
-obj_lib.o: ../../include/openssl/stack.h ../cryptlib.h
+obj_lib.o: ../../include/openssl/stack.h ../../include/openssl/symhacks.h
+obj_lib.o: ../cryptlib.h
index 24d312d76427223c667bbae73ed56c71a07ef5ea..4b1bb9583af3d6c34cb550552c0648d17671e57b 100644 (file)
@@ -134,7 +134,8 @@ static unsigned long add_hash(ADDED_OBJ *ca)
                ret=a->nid;
                break;
        default:
-               abort();
+               /* abort(); */
+               return 0;
                }
        ret&=0x3fffffffL;
        ret|=ca->type<<30L;
@@ -167,7 +168,8 @@ static int add_cmp(ADDED_OBJ *ca, ADDED_OBJ *cb)
        case ADDED_NID:
                return(a->nid-b->nid);
        default:
-               abort();
+               /* abort(); */
+               return 0;
                }
        return(1); /* should not get here */
        }
index afee370f34f36c71b72c7bdd3ccd7ccf40462191..f0d824141c393ea1fe92967accf7abad038ef010 100644 (file)
  * perl obj_dat.pl objects.h obj_dat.h
  */
 
-#define NUM_NID 379
-#define NUM_SN 346
-#define NUM_LN 195
-#define NUM_OBJ 352
+#define NUM_NID 393
+#define NUM_SN 392
+#define NUM_LN 392
+#define NUM_OBJ 366
 
-static unsigned char lvalues[2838]={
+static unsigned char lvalues[2896]={
 0x00,                                        /* [  0] OBJ_undef */
 0x2A,0x86,0x48,0x86,0xF7,0x0D,               /* [  1] OBJ_rsadsi */
 0x2A,0x86,0x48,0x86,0xF7,0x0D,0x01,          /* [  7] OBJ_pkcs */
@@ -419,6 +419,20 @@ static unsigned char lvalues[2838]={
 0x2B,0x0E,0x03,0x02,                         /* [2826] OBJ_algorithm */
 0x2B,0x0E,0x03,0x02,0x0B,                    /* [2830] OBJ_rsaSignature */
 0x55,0x08,                                   /* [2835] OBJ_X500algorithms */
+0x2B,                                        /* [2837] OBJ_org */
+0x2B,0x06,                                   /* [2838] OBJ_dod */
+0x2B,0x06,0x01,                              /* [2840] OBJ_iana */
+0x2B,0x06,0x01,0x01,                         /* [2843] OBJ_Directory */
+0x2B,0x06,0x01,0x02,                         /* [2847] OBJ_Management */
+0x2B,0x06,0x01,0x03,                         /* [2851] OBJ_Experimental */
+0x2B,0x06,0x01,0x04,                         /* [2855] OBJ_Private */
+0x2B,0x06,0x01,0x05,                         /* [2859] OBJ_Security */
+0x2B,0x06,0x01,0x06,                         /* [2863] OBJ_SNMPv2 */
+0x2B,0x06,0x01,0x07,                         /* [2867] OBJ_Mail */
+0x01,                                        /* [2871] OBJ_Enterprises */
+0xBA,0x82,0x58,                              /* [2872] OBJ_dcObject */
+0x09,0x92,0x26,0x89,0x93,0xF2,0x2C,0x64,0x01,0x19,/* [2875] OBJ_domainComponent */
+0x09,0x92,0x26,0x89,0x93,0xF2,0x2C,0x64,0x04,0x0D,/* [2885] OBJ_Domain */
 };
 
 static ASN1_OBJECT nid_objs[NUM_NID]={
@@ -993,8 +1007,9 @@ static ASN1_OBJECT nid_objs[NUM_NID]={
        &(lvalues[2695]),0},
 {"id-cct-PKIResponse","id-cct-PKIResponse",NID_id_cct_PKIResponse,8,
        &(lvalues[2703]),0},
-{"timestamping","Time Stamping",NID_ad_timeStamping,8,&(lvalues[2711]),0},
-{"DVCS","dvcs",NID_ad_dvcs,8,&(lvalues[2719]),0},
+{"ad_timestamping","AD Time Stamping",NID_ad_timeStamping,8,
+       &(lvalues[2711]),0},
+{"AD_DVCS","ad dvcs",NID_ad_dvcs,8,&(lvalues[2719]),0},
 {"basicOCSPResponse","Basic OCSP Response",NID_id_pkix_OCSP_basic,9,
        &(lvalues[2727]),0},
 {"Nonce","OCSP Nonce",NID_id_pkix_OCSP_Nonce,9,&(lvalues[2736]),0},
@@ -1016,9 +1031,24 @@ static ASN1_OBJECT nid_objs[NUM_NID]={
 {"rsaSignature","rsaSignature",NID_rsaSignature,5,&(lvalues[2830]),0},
 {"X500algorithms","directory services - algorithms",
        NID_X500algorithms,2,&(lvalues[2835]),0},
+{"ORG","org",NID_org,1,&(lvalues[2837]),0},
+{"DOD","dod",NID_dod,2,&(lvalues[2838]),0},
+{"IANA","iana",NID_iana,3,&(lvalues[2840]),0},
+{"directory","Directory",NID_Directory,4,&(lvalues[2843]),0},
+{"mgmt","Management",NID_Management,4,&(lvalues[2847]),0},
+{"experimental","Experimental",NID_Experimental,4,&(lvalues[2851]),0},
+{"private","Private",NID_Private,4,&(lvalues[2855]),0},
+{"security","Security",NID_Security,4,&(lvalues[2859]),0},
+{"snmpv2","SNMPv2",NID_SNMPv2,4,&(lvalues[2863]),0},
+{"mail","Mail",NID_Mail,4,&(lvalues[2867]),0},
+{"enterprises","Enterprises",NID_Enterprises,1,&(lvalues[2871]),0},
+{"dcobject","dcObject",NID_dcObject,3,&(lvalues[2872]),0},
+{"DC","domainComponent",NID_domainComponent,10,&(lvalues[2875]),0},
+{"domain","Domain",NID_Domain,10,&(lvalues[2885]),0},
 };
 
 static ASN1_OBJECT *sn_objs[NUM_SN]={
+&(nid_objs[364]),/* "AD_DVCS" */
 &(nid_objs[91]),/* "BF-CBC" */
 &(nid_objs[93]),/* "BF-CFB" */
 &(nid_objs[92]),/* "BF-ECB" */
@@ -1032,6 +1062,7 @@ static ASN1_OBJECT *sn_objs[NUM_SN]={
 &(nid_objs[141]),/* "CRLReason" */
 &(nid_objs[367]),/* "CrlID" */
 &(nid_objs[107]),/* "D" */
+&(nid_objs[391]),/* "DC" */
 &(nid_objs[31]),/* "DES-CBC" */
 &(nid_objs[30]),/* "DES-CFB" */
 &(nid_objs[29]),/* "DES-ECB" */
@@ -1045,16 +1076,17 @@ static ASN1_OBJECT *sn_objs[NUM_SN]={
 &(nid_objs[63]),/* "DES-EDE3-OFB" */
 &(nid_objs[45]),/* "DES-OFB" */
 &(nid_objs[80]),/* "DESX-CBC" */
+&(nid_objs[380]),/* "DOD" */
 &(nid_objs[116]),/* "DSA" */
 &(nid_objs[66]),/* "DSA-SHA" */
 &(nid_objs[113]),/* "DSA-SHA1" */
 &(nid_objs[70]),/* "DSA-SHA1-old" */
 &(nid_objs[67]),/* "DSA-old" */
 &(nid_objs[297]),/* "DVCS" */
-&(nid_objs[364]),/* "DVCS" */
 &(nid_objs[48]),/* "Email" */
 &(nid_objs[99]),/* "G" */
 &(nid_objs[101]),/* "I" */
+&(nid_objs[381]),/* "IANA" */
 &(nid_objs[34]),/* "IDEA-CBC" */
 &(nid_objs[35]),/* "IDEA-CFB" */
 &(nid_objs[36]),/* "IDEA-ECB" */
@@ -1072,6 +1104,7 @@ static ASN1_OBJECT *sn_objs[NUM_SN]={
 &(nid_objs[17]),/* "O" */
 &(nid_objs[178]),/* "OCSP" */
 &(nid_objs[180]),/* "OCSPSigning" */
+&(nid_objs[379]),/* "ORG" */
 &(nid_objs[18]),/* "OU" */
 &(nid_objs[ 9]),/* "PBE-MD2-DES" */
 &(nid_objs[168]),/* "PBE-MD2-RC2-64" */
@@ -1085,6 +1118,9 @@ static ASN1_OBJECT *sn_objs[NUM_SN]={
 &(nid_objs[68]),/* "PBE-SHA1-RC2-64" */
 &(nid_objs[144]),/* "PBE-SHA1-RC4-128" */
 &(nid_objs[145]),/* "PBE-SHA1-RC4-40" */
+&(nid_objs[161]),/* "PBES2" */
+&(nid_objs[69]),/* "PBKDF2" */
+&(nid_objs[162]),/* "PBMAC1" */
 &(nid_objs[127]),/* "PKIX" */
 &(nid_objs[98]),/* "RC2-40-CBC" */
 &(nid_objs[166]),/* "RC2-64-CBC" */
@@ -1130,6 +1166,7 @@ static ASN1_OBJECT *sn_objs[NUM_SN]={
 &(nid_objs[287]),/* "ac-auditEntity" */
 &(nid_objs[288]),/* "ac-targeting" */
 &(nid_objs[368]),/* "acceptableResponses" */
+&(nid_objs[363]),/* "ad_timestamping" */
 &(nid_objs[376]),/* "algorithm" */
 &(nid_objs[370]),/* "archiveCutoff" */
 &(nid_objs[177]),/* "authorityInfoAccess" */
@@ -1138,17 +1175,31 @@ static ASN1_OBJECT *sn_objs[NUM_SN]={
 &(nid_objs[365]),/* "basicOCSPResponse" */
 &(nid_objs[285]),/* "biometricInfo" */
 &(nid_objs[179]),/* "caIssuers" */
+&(nid_objs[152]),/* "certBag" */
 &(nid_objs[89]),/* "certificatePolicies" */
+&(nid_objs[54]),/* "challengePassword" */
 &(nid_objs[130]),/* "clientAuth" */
 &(nid_objs[131]),/* "codeSigning" */
+&(nid_objs[50]),/* "contentType" */
+&(nid_objs[53]),/* "countersignature" */
+&(nid_objs[153]),/* "crlBag" */
 &(nid_objs[103]),/* "crlDistributionPoints" */
 &(nid_objs[88]),/* "crlNumber" */
+&(nid_objs[390]),/* "dcobject" */
 &(nid_objs[140]),/* "deltaCRL" */
+&(nid_objs[28]),/* "dhKeyAgreement" */
+&(nid_objs[382]),/* "directory" */
 &(nid_objs[174]),/* "dnQualifier" */
+&(nid_objs[392]),/* "domain" */
 &(nid_objs[132]),/* "emailProtection" */
+&(nid_objs[389]),/* "enterprises" */
+&(nid_objs[384]),/* "experimental" */
 &(nid_objs[172]),/* "extReq" */
+&(nid_objs[56]),/* "extendedCertificateAttributes" */
 &(nid_objs[126]),/* "extendedKeyUsage" */
 &(nid_objs[372]),/* "extendedStatus" */
+&(nid_objs[156]),/* "friendlyName" */
+&(nid_objs[163]),/* "hmacWithSHA1" */
 &(nid_objs[266]),/* "id-aca" */
 &(nid_objs[355]),/* "id-aca-accessIdentity" */
 &(nid_objs[354]),/* "id-aca-authenticationInfo" */
@@ -1320,8 +1371,13 @@ static ASN1_OBJECT *sn_objs[NUM_SN]={
 &(nid_objs[295]),/* "ipsecTunnel" */
 &(nid_objs[296]),/* "ipsecUser" */
 &(nid_objs[86]),/* "issuerAltName" */
+&(nid_objs[150]),/* "keyBag" */
 &(nid_objs[83]),/* "keyUsage" */
+&(nid_objs[157]),/* "localKeyID" */
+&(nid_objs[388]),/* "mail" */
 &(nid_objs[182]),/* "member-body" */
+&(nid_objs[51]),/* "messageDigest" */
+&(nid_objs[383]),/* "mgmt" */
 &(nid_objs[136]),/* "msCTLSign" */
 &(nid_objs[135]),/* "msCodeCom" */
 &(nid_objs[134]),/* "msCodeInd" */
@@ -1343,38 +1399,62 @@ static ASN1_OBJECT *sn_objs[NUM_SN]={
 &(nid_objs[139]),/* "nsSGC" */
 &(nid_objs[77]),/* "nsSslServerName" */
 &(nid_objs[374]),/* "path" */
+&(nid_objs[112]),/* "pbeWithMD5AndCast5CBC" */
 &(nid_objs[ 2]),/* "pkcs" */
 &(nid_objs[186]),/* "pkcs1" */
 &(nid_objs[27]),/* "pkcs3" */
 &(nid_objs[187]),/* "pkcs5" */
 &(nid_objs[20]),/* "pkcs7" */
+&(nid_objs[21]),/* "pkcs7-data" */
+&(nid_objs[25]),/* "pkcs7-digestData" */
+&(nid_objs[26]),/* "pkcs7-encryptedData" */
+&(nid_objs[23]),/* "pkcs7-envelopedData" */
+&(nid_objs[24]),/* "pkcs7-signedAndEnvelopedData" */
+&(nid_objs[22]),/* "pkcs7-signedData" */
+&(nid_objs[151]),/* "pkcs8ShroudedKeyBag" */
 &(nid_objs[47]),/* "pkcs9" */
+&(nid_objs[385]),/* "private" */
 &(nid_objs[84]),/* "privateKeyUsagePeriod" */
 &(nid_objs[286]),/* "qcStatements" */
+&(nid_objs[ 6]),/* "rsaEncryption" */
 &(nid_objs[377]),/* "rsaSignature" */
 &(nid_objs[ 1]),/* "rsadsi" */
+&(nid_objs[155]),/* "safeContentsBag" */
 &(nid_objs[291]),/* "sbqp-autonomousSysNum" */
 &(nid_objs[290]),/* "sbqp-ipAddrBlock" */
 &(nid_objs[292]),/* "sbqp-routerIdentifier" */
+&(nid_objs[159]),/* "sdsiCertificate" */
+&(nid_objs[154]),/* "secretBag" */
+&(nid_objs[386]),/* "security" */
 &(nid_objs[129]),/* "serverAuth" */
 &(nid_objs[371]),/* "serviceLocator" */
+&(nid_objs[52]),/* "signingTime" */
+&(nid_objs[387]),/* "snmpv2" */
 &(nid_objs[85]),/* "subjectAltName" */
 &(nid_objs[82]),/* "subjectKeyIdentifier" */
 &(nid_objs[293]),/* "textNotice" */
 &(nid_objs[133]),/* "timeStamping" */
-&(nid_objs[363]),/* "timestamping" */
 &(nid_objs[375]),/* "trustRoot" */
+&(nid_objs[55]),/* "unstructuredAddress" */
+&(nid_objs[49]),/* "unstructuredName" */
 &(nid_objs[373]),/* "valid" */
+&(nid_objs[158]),/* "x509Certificate" */
+&(nid_objs[160]),/* "x509Crl" */
 };
 
 static ASN1_OBJECT *ln_objs[NUM_LN]={
+&(nid_objs[363]),/* "AD Time Stamping" */
 &(nid_objs[368]),/* "Acceptable OCSP Responses" */
 &(nid_objs[177]),/* "Authority Information Access" */
 &(nid_objs[365]),/* "Basic OCSP Response" */
 &(nid_objs[285]),/* "Biometric Info" */
 &(nid_objs[179]),/* "CA Issuers" */
 &(nid_objs[131]),/* "Code Signing" */
+&(nid_objs[382]),/* "Directory" */
+&(nid_objs[392]),/* "Domain" */
 &(nid_objs[132]),/* "E-mail Protection" */
+&(nid_objs[389]),/* "Enterprises" */
+&(nid_objs[384]),/* "Experimental" */
 &(nid_objs[372]),/* "Extended OCSP Status" */
 &(nid_objs[172]),/* "Extension Request" */
 &(nid_objs[294]),/* "IPSec End System" */
@@ -1383,6 +1463,8 @@ static ASN1_OBJECT *ln_objs[NUM_LN]={
 &(nid_objs[182]),/* "ISO Member Body" */
 &(nid_objs[183]),/* "ISO US Member Body" */
 &(nid_objs[142]),/* "Invalidity Date" */
+&(nid_objs[388]),/* "Mail" */
+&(nid_objs[383]),/* "Management" */
 &(nid_objs[135]),/* "Microsoft Commercial Code Signing" */
 &(nid_objs[138]),/* "Microsoft Encrypted File System" */
 &(nid_objs[171]),/* "Microsoft Extension Request" */
@@ -1402,27 +1484,31 @@ static ASN1_OBJECT *ln_objs[NUM_LN]={
 &(nid_objs[73]),/* "Netscape Revocation Url" */
 &(nid_objs[77]),/* "Netscape SSL Server Name" */
 &(nid_objs[139]),/* "Netscape Server Gated Crypto" */
+&(nid_objs[178]),/* "OCSP" */
 &(nid_objs[370]),/* "OCSP Archive Cutoff" */
 &(nid_objs[367]),/* "OCSP CRL ID" */
 &(nid_objs[366]),/* "OCSP Nonce" */
 &(nid_objs[371]),/* "OCSP Service Locator" */
 &(nid_objs[180]),/* "OCSP Signing" */
-&(nid_objs[178]),/* "OCSP" */
 &(nid_objs[161]),/* "PBES2" */
 &(nid_objs[69]),/* "PBKDF2" */
 &(nid_objs[162]),/* "PBMAC1" */
+&(nid_objs[127]),/* "PKIX" */
 &(nid_objs[164]),/* "Policy Qualifier CPS" */
 &(nid_objs[165]),/* "Policy Qualifier User Notice" */
-&(nid_objs[ 2]),/* "RSA Data Security, Inc. PKCS" */
+&(nid_objs[385]),/* "Private" */
 &(nid_objs[ 1]),/* "RSA Data Security, Inc." */
-&(nid_objs[167]),/* "S/MIME Capabilities" */
+&(nid_objs[ 2]),/* "RSA Data Security, Inc. PKCS" */
 &(nid_objs[188]),/* "S/MIME" */
+&(nid_objs[167]),/* "S/MIME Capabilities" */
+&(nid_objs[387]),/* "SNMPv2" */
+&(nid_objs[386]),/* "Security" */
 &(nid_objs[143]),/* "Strong Extranet ID" */
 &(nid_objs[130]),/* "TLS Web Client Authentication" */
 &(nid_objs[129]),/* "TLS Web Server Authentication" */
 &(nid_objs[133]),/* "Time Stamping" */
-&(nid_objs[363]),/* "Time Stamping" */
 &(nid_objs[375]),/* "Trust Root" */
+&(nid_objs[12]),/* "X509" */
 &(nid_objs[90]),/* "X509v3 Authority Key Identifier" */
 &(nid_objs[87]),/* "X509v3 Basic Constraints" */
 &(nid_objs[103]),/* "X509v3 CRL Distribution Points" */
@@ -1436,8 +1522,12 @@ static ASN1_OBJECT *ln_objs[NUM_LN]={
 &(nid_objs[84]),/* "X509v3 Private Key Usage Period" */
 &(nid_objs[85]),/* "X509v3 Subject Alternative Name" */
 &(nid_objs[82]),/* "X509v3 Subject Key Identifier" */
-&(nid_objs[185]),/* "X9.57 CM ?" */
 &(nid_objs[184]),/* "X9.57" */
+&(nid_objs[185]),/* "X9.57 CM ?" */
+&(nid_objs[289]),/* "aaControls" */
+&(nid_objs[287]),/* "ac-auditEntity" */
+&(nid_objs[288]),/* "ac-targeting" */
+&(nid_objs[364]),/* "ad dvcs" */
 &(nid_objs[376]),/* "algorithm" */
 &(nid_objs[91]),/* "bf-cbc" */
 &(nid_objs[93]),/* "bf-cfb" */
@@ -1454,6 +1544,7 @@ static ASN1_OBJECT *ln_objs[NUM_LN]={
 &(nid_objs[53]),/* "countersignature" */
 &(nid_objs[14]),/* "countryName" */
 &(nid_objs[153]),/* "crlBag" */
+&(nid_objs[390]),/* "dcObject" */
 &(nid_objs[31]),/* "des-cbc" */
 &(nid_objs[30]),/* "des-cfb" */
 &(nid_objs[29]),/* "des-ecb" */
@@ -1472,18 +1563,184 @@ static ASN1_OBJECT *ln_objs[NUM_LN]={
 &(nid_objs[11]),/* "directory services (X.500)" */
 &(nid_objs[378]),/* "directory services - algorithms" */
 &(nid_objs[174]),/* "dnQualifier" */
+&(nid_objs[380]),/* "dod" */
+&(nid_objs[391]),/* "domainComponent" */
 &(nid_objs[116]),/* "dsaEncryption" */
 &(nid_objs[67]),/* "dsaEncryption-old" */
 &(nid_objs[66]),/* "dsaWithSHA" */
 &(nid_objs[113]),/* "dsaWithSHA1" */
 &(nid_objs[70]),/* "dsaWithSHA1-old" */
 &(nid_objs[297]),/* "dvcs" */
-&(nid_objs[364]),/* "dvcs" */
 &(nid_objs[48]),/* "emailAddress" */
 &(nid_objs[56]),/* "extendedCertificateAttributes" */
 &(nid_objs[156]),/* "friendlyName" */
 &(nid_objs[99]),/* "givenName" */
 &(nid_objs[163]),/* "hmacWithSHA1" */
+&(nid_objs[381]),/* "iana" */
+&(nid_objs[266]),/* "id-aca" */
+&(nid_objs[355]),/* "id-aca-accessIdentity" */
+&(nid_objs[354]),/* "id-aca-authenticationInfo" */
+&(nid_objs[356]),/* "id-aca-chargingIdentity" */
+&(nid_objs[357]),/* "id-aca-group" */
+&(nid_objs[358]),/* "id-aca-role" */
+&(nid_objs[176]),/* "id-ad" */
+&(nid_objs[262]),/* "id-alg" */
+&(nid_objs[323]),/* "id-alg-des40" */
+&(nid_objs[326]),/* "id-alg-dh-pop" */
+&(nid_objs[325]),/* "id-alg-dh-sig-hmac-sha1" */
+&(nid_objs[324]),/* "id-alg-noSignature" */
+&(nid_objs[268]),/* "id-cct" */
+&(nid_objs[361]),/* "id-cct-PKIData" */
+&(nid_objs[362]),/* "id-cct-PKIResponse" */
+&(nid_objs[360]),/* "id-cct-crs" */
+&(nid_objs[81]),/* "id-ce" */
+&(nid_objs[263]),/* "id-cmc" */
+&(nid_objs[334]),/* "id-cmc-addExtensions" */
+&(nid_objs[346]),/* "id-cmc-confirmCertAcceptance" */
+&(nid_objs[330]),/* "id-cmc-dataReturn" */
+&(nid_objs[336]),/* "id-cmc-decryptedPOP" */
+&(nid_objs[335]),/* "id-cmc-encryptedPOP" */
+&(nid_objs[339]),/* "id-cmc-getCRL" */
+&(nid_objs[338]),/* "id-cmc-getCert" */
+&(nid_objs[328]),/* "id-cmc-identification" */
+&(nid_objs[329]),/* "id-cmc-identityProof" */
+&(nid_objs[337]),/* "id-cmc-lraPOPWitness" */
+&(nid_objs[344]),/* "id-cmc-popLinkRandom" */
+&(nid_objs[345]),/* "id-cmc-popLinkWitness" */
+&(nid_objs[343]),/* "id-cmc-queryPending" */
+&(nid_objs[333]),/* "id-cmc-recipientNonce" */
+&(nid_objs[341]),/* "id-cmc-regInfo" */
+&(nid_objs[342]),/* "id-cmc-responseInfo" */
+&(nid_objs[340]),/* "id-cmc-revokeRequest" */
+&(nid_objs[332]),/* "id-cmc-senderNonce" */
+&(nid_objs[327]),/* "id-cmc-statusInfo" */
+&(nid_objs[331]),/* "id-cmc-transactionId" */
+&(nid_objs[260]),/* "id-it" */
+&(nid_objs[302]),/* "id-it-caKeyUpdateInfo" */
+&(nid_objs[298]),/* "id-it-caProtEncCert" */
+&(nid_objs[311]),/* "id-it-confirmWaitTime" */
+&(nid_objs[303]),/* "id-it-currentCRL" */
+&(nid_objs[300]),/* "id-it-encKeyPairTypes" */
+&(nid_objs[310]),/* "id-it-implicitConfirm" */
+&(nid_objs[308]),/* "id-it-keyPairParamRep" */
+&(nid_objs[307]),/* "id-it-keyPairParamReq" */
+&(nid_objs[312]),/* "id-it-origPKIMessage" */
+&(nid_objs[301]),/* "id-it-preferredSymmAlg" */
+&(nid_objs[309]),/* "id-it-revPassphrase" */
+&(nid_objs[299]),/* "id-it-signKeyPairTypes" */
+&(nid_objs[305]),/* "id-it-subscriptionRequest" */
+&(nid_objs[306]),/* "id-it-subscriptionResponse" */
+&(nid_objs[304]),/* "id-it-unsupportedOIDs" */
+&(nid_objs[128]),/* "id-kp" */
+&(nid_objs[280]),/* "id-mod-attribute-cert" */
+&(nid_objs[274]),/* "id-mod-cmc" */
+&(nid_objs[277]),/* "id-mod-cmp" */
+&(nid_objs[284]),/* "id-mod-cmp2000" */
+&(nid_objs[273]),/* "id-mod-crmf" */
+&(nid_objs[283]),/* "id-mod-dvcs" */
+&(nid_objs[275]),/* "id-mod-kea-profile-88" */
+&(nid_objs[276]),/* "id-mod-kea-profile-93" */
+&(nid_objs[282]),/* "id-mod-ocsp" */
+&(nid_objs[278]),/* "id-mod-qualified-cert-88" */
+&(nid_objs[279]),/* "id-mod-qualified-cert-93" */
+&(nid_objs[281]),/* "id-mod-timestamp-protocol" */
+&(nid_objs[264]),/* "id-on" */
+&(nid_objs[347]),/* "id-on-personalData" */
+&(nid_objs[265]),/* "id-pda" */
+&(nid_objs[352]),/* "id-pda-countryOfCitizenship" */
+&(nid_objs[353]),/* "id-pda-countryOfResidence" */
+&(nid_objs[348]),/* "id-pda-dateOfBirth" */
+&(nid_objs[351]),/* "id-pda-gender" */
+&(nid_objs[349]),/* "id-pda-placeOfBirth" */
+&(nid_objs[350]),/* "id-pda-pseudonym" */
+&(nid_objs[175]),/* "id-pe" */
+&(nid_objs[261]),/* "id-pkip" */
+&(nid_objs[258]),/* "id-pkix-mod" */
+&(nid_objs[269]),/* "id-pkix1-explicit-88" */
+&(nid_objs[271]),/* "id-pkix1-explicit-93" */
+&(nid_objs[270]),/* "id-pkix1-implicit-88" */
+&(nid_objs[272]),/* "id-pkix1-implicit-93" */
+&(nid_objs[267]),/* "id-qcs" */
+&(nid_objs[359]),/* "id-qcs-pkixQCSyntax-v1" */
+&(nid_objs[259]),/* "id-qt" */
+&(nid_objs[313]),/* "id-regCtrl" */
+&(nid_objs[316]),/* "id-regCtrl-authenticator" */
+&(nid_objs[319]),/* "id-regCtrl-oldCertID" */
+&(nid_objs[318]),/* "id-regCtrl-pkiArchiveOptions" */
+&(nid_objs[317]),/* "id-regCtrl-pkiPublicationInfo" */
+&(nid_objs[320]),/* "id-regCtrl-protocolEncrKey" */
+&(nid_objs[315]),/* "id-regCtrl-regToken" */
+&(nid_objs[314]),/* "id-regInfo" */
+&(nid_objs[322]),/* "id-regInfo-certReq" */
+&(nid_objs[321]),/* "id-regInfo-utf8Pairs" */
+&(nid_objs[191]),/* "id-smime-aa" */
+&(nid_objs[215]),/* "id-smime-aa-contentHint" */
+&(nid_objs[218]),/* "id-smime-aa-contentIdentifier" */
+&(nid_objs[221]),/* "id-smime-aa-contentReference" */
+&(nid_objs[240]),/* "id-smime-aa-dvcs-dvc" */
+&(nid_objs[217]),/* "id-smime-aa-encapContentType" */
+&(nid_objs[222]),/* "id-smime-aa-encrypKeyPref" */
+&(nid_objs[220]),/* "id-smime-aa-equivalentLabels" */
+&(nid_objs[232]),/* "id-smime-aa-ets-CertificateRefs" */
+&(nid_objs[233]),/* "id-smime-aa-ets-RevocationRefs" */
+&(nid_objs[238]),/* "id-smime-aa-ets-archiveTimeStamp" */
+&(nid_objs[237]),/* "id-smime-aa-ets-certCRLTimestamp" */
+&(nid_objs[234]),/* "id-smime-aa-ets-certValues" */
+&(nid_objs[227]),/* "id-smime-aa-ets-commitmentType" */
+&(nid_objs[231]),/* "id-smime-aa-ets-contentTimestamp" */
+&(nid_objs[236]),/* "id-smime-aa-ets-escTimeStamp" */
+&(nid_objs[230]),/* "id-smime-aa-ets-otherSigCert" */
+&(nid_objs[235]),/* "id-smime-aa-ets-revocationValues" */
+&(nid_objs[226]),/* "id-smime-aa-ets-sigPolicyId" */
+&(nid_objs[229]),/* "id-smime-aa-ets-signerAttr" */
+&(nid_objs[228]),/* "id-smime-aa-ets-signerLocation" */
+&(nid_objs[219]),/* "id-smime-aa-macValue" */
+&(nid_objs[214]),/* "id-smime-aa-mlExpandHistory" */
+&(nid_objs[216]),/* "id-smime-aa-msgSigDigest" */
+&(nid_objs[212]),/* "id-smime-aa-receiptRequest" */
+&(nid_objs[213]),/* "id-smime-aa-securityLabel" */
+&(nid_objs[239]),/* "id-smime-aa-signatureType" */
+&(nid_objs[223]),/* "id-smime-aa-signingCertificate" */
+&(nid_objs[224]),/* "id-smime-aa-smimeEncryptCerts" */
+&(nid_objs[225]),/* "id-smime-aa-timeStampToken" */
+&(nid_objs[192]),/* "id-smime-alg" */
+&(nid_objs[243]),/* "id-smime-alg-3DESwrap" */
+&(nid_objs[246]),/* "id-smime-alg-CMS3DESwrap" */
+&(nid_objs[247]),/* "id-smime-alg-CMSRC2wrap" */
+&(nid_objs[245]),/* "id-smime-alg-ESDH" */
+&(nid_objs[241]),/* "id-smime-alg-ESDHwith3DES" */
+&(nid_objs[242]),/* "id-smime-alg-ESDHwithRC2" */
+&(nid_objs[244]),/* "id-smime-alg-RC2wrap" */
+&(nid_objs[193]),/* "id-smime-cd" */
+&(nid_objs[248]),/* "id-smime-cd-ldap" */
+&(nid_objs[190]),/* "id-smime-ct" */
+&(nid_objs[210]),/* "id-smime-ct-DVCSRequestData" */
+&(nid_objs[211]),/* "id-smime-ct-DVCSResponseData" */
+&(nid_objs[208]),/* "id-smime-ct-TDTInfo" */
+&(nid_objs[207]),/* "id-smime-ct-TSTInfo" */
+&(nid_objs[205]),/* "id-smime-ct-authData" */
+&(nid_objs[209]),/* "id-smime-ct-contentInfo" */
+&(nid_objs[206]),/* "id-smime-ct-publishCert" */
+&(nid_objs[204]),/* "id-smime-ct-receipt" */
+&(nid_objs[195]),/* "id-smime-cti" */
+&(nid_objs[255]),/* "id-smime-cti-ets-proofOfApproval" */
+&(nid_objs[256]),/* "id-smime-cti-ets-proofOfCreation" */
+&(nid_objs[253]),/* "id-smime-cti-ets-proofOfDelivery" */
+&(nid_objs[251]),/* "id-smime-cti-ets-proofOfOrigin" */
+&(nid_objs[252]),/* "id-smime-cti-ets-proofOfReceipt" */
+&(nid_objs[254]),/* "id-smime-cti-ets-proofOfSender" */
+&(nid_objs[189]),/* "id-smime-mod" */
+&(nid_objs[196]),/* "id-smime-mod-cms" */
+&(nid_objs[197]),/* "id-smime-mod-ess" */
+&(nid_objs[202]),/* "id-smime-mod-ets-eSigPolicy-88" */
+&(nid_objs[203]),/* "id-smime-mod-ets-eSigPolicy-97" */
+&(nid_objs[200]),/* "id-smime-mod-ets-eSignature-88" */
+&(nid_objs[201]),/* "id-smime-mod-ets-eSignature-97" */
+&(nid_objs[199]),/* "id-smime-mod-msg-v3" */
+&(nid_objs[198]),/* "id-smime-mod-oid" */
+&(nid_objs[194]),/* "id-smime-spq" */
+&(nid_objs[250]),/* "id-smime-spq-ets-sqt-unotice" */
+&(nid_objs[249]),/* "id-smime-spq-ets-sqt-uri" */
 &(nid_objs[34]),/* "idea-cbc" */
 &(nid_objs[35]),/* "idea-cfb" */
 &(nid_objs[36]),/* "idea-ecb" */
@@ -1504,8 +1761,11 @@ static ASN1_OBJECT *ln_objs[NUM_LN]={
 &(nid_objs[96]),/* "mdc2WithRSA" */
 &(nid_objs[51]),/* "messageDigest" */
 &(nid_objs[173]),/* "name" */
+&(nid_objs[369]),/* "noCheck" */
+&(nid_objs[379]),/* "org" */
 &(nid_objs[17]),/* "organizationName" */
 &(nid_objs[18]),/* "organizationalUnitName" */
+&(nid_objs[374]),/* "path" */
 &(nid_objs[ 9]),/* "pbeWithMD2AndDES-CBC" */
 &(nid_objs[168]),/* "pbeWithMD2AndRC2-CBC" */
 &(nid_objs[112]),/* "pbeWithMD5AndCast5CBC" */
@@ -1519,6 +1779,10 @@ static ASN1_OBJECT *ln_objs[NUM_LN]={
 &(nid_objs[145]),/* "pbeWithSHA1And40BitRC4" */
 &(nid_objs[170]),/* "pbeWithSHA1AndDES-CBC" */
 &(nid_objs[68]),/* "pbeWithSHA1AndRC2-CBC" */
+&(nid_objs[186]),/* "pkcs1" */
+&(nid_objs[27]),/* "pkcs3" */
+&(nid_objs[187]),/* "pkcs5" */
+&(nid_objs[20]),/* "pkcs7" */
 &(nid_objs[21]),/* "pkcs7-data" */
 &(nid_objs[25]),/* "pkcs7-digestData" */
 &(nid_objs[26]),/* "pkcs7-encryptedData" */
@@ -1526,6 +1790,8 @@ static ASN1_OBJECT *ln_objs[NUM_LN]={
 &(nid_objs[24]),/* "pkcs7-signedAndEnvelopedData" */
 &(nid_objs[22]),/* "pkcs7-signedData" */
 &(nid_objs[151]),/* "pkcs8ShroudedKeyBag" */
+&(nid_objs[47]),/* "pkcs9" */
+&(nid_objs[286]),/* "qcStatements" */
 &(nid_objs[98]),/* "rc2-40-cbc" */
 &(nid_objs[166]),/* "rc2-64-cbc" */
 &(nid_objs[37]),/* "rc2-cbc" */
@@ -1542,8 +1808,12 @@ static ASN1_OBJECT *ln_objs[NUM_LN]={
 &(nid_objs[119]),/* "ripemd160WithRSA" */
 &(nid_objs[19]),/* "rsa" */
 &(nid_objs[ 6]),/* "rsaEncryption" */
+&(nid_objs[377]),/* "rsaSignature" */
 &(nid_objs[124]),/* "run length compression" */
 &(nid_objs[155]),/* "safeContentsBag" */
+&(nid_objs[291]),/* "sbqp-autonomousSysNum" */
+&(nid_objs[290]),/* "sbqp-ipAddrBlock" */
+&(nid_objs[292]),/* "sbqp-routerIdentifier" */
 &(nid_objs[159]),/* "sdsiCertificate" */
 &(nid_objs[154]),/* "secretBag" */
 &(nid_objs[105]),/* "serialNumber" */
@@ -1555,11 +1825,13 @@ static ASN1_OBJECT *ln_objs[NUM_LN]={
 &(nid_objs[52]),/* "signingTime" */
 &(nid_objs[16]),/* "stateOrProvinceName" */
 &(nid_objs[100]),/* "surname" */
+&(nid_objs[293]),/* "textNotice" */
 &(nid_objs[106]),/* "title" */
 &(nid_objs[ 0]),/* "undefined" */
 &(nid_objs[102]),/* "uniqueIdentifier" */
 &(nid_objs[55]),/* "unstructuredAddress" */
 &(nid_objs[49]),/* "unstructuredName" */
+&(nid_objs[373]),/* "valid" */
 &(nid_objs[158]),/* "x509Certificate" */
 &(nid_objs[160]),/* "x509Crl" */
 &(nid_objs[125]),/* "zlib compression" */
@@ -1567,13 +1839,17 @@ static ASN1_OBJECT *ln_objs[NUM_LN]={
 
 static ASN1_OBJECT *obj_objs[NUM_OBJ]={
 &(nid_objs[ 0]),/* OBJ_undef                        0 */
+&(nid_objs[389]),/* OBJ_Enterprises                   1 */
 &(nid_objs[181]),/* OBJ_iso                          1 */
 &(nid_objs[182]),/* OBJ_member_body                  1 2 */
+&(nid_objs[379]),/* OBJ_org                          1 3 */
 &(nid_objs[11]),/* OBJ_X500                         2 5 */
+&(nid_objs[380]),/* OBJ_dod                          1 3 6 */
 &(nid_objs[12]),/* OBJ_X509                         2 5 4 */
 &(nid_objs[378]),/* OBJ_X500algorithms               2 5 8 */
 &(nid_objs[81]),/* OBJ_id_ce                        2 5 29 */
 &(nid_objs[183]),/* OBJ_ISO_US                       1 2 840 */
+&(nid_objs[381]),/* OBJ_iana                         1 3 6 1 */
 &(nid_objs[13]),/* OBJ_commonName                   2 5 4 3 */
 &(nid_objs[100]),/* OBJ_surname                      2 5 4 4 */
 &(nid_objs[105]),/* OBJ_serialNumber                 2 5 4 5 */
@@ -1603,6 +1879,14 @@ static ASN1_OBJECT *obj_objs[NUM_OBJ]={
 &(nid_objs[89]),/* OBJ_certificate_policies         2 5 29 32 */
 &(nid_objs[90]),/* OBJ_authority_key_identifier     2 5 29 35 */
 &(nid_objs[126]),/* OBJ_ext_key_usage                2 5 29 37 */
+&(nid_objs[390]),/* OBJ_dcObject                      1466 344 */
+&(nid_objs[382]),/* OBJ_Directory                    1 3 6 1 1 */
+&(nid_objs[383]),/* OBJ_Management                   1 3 6 1 2 */
+&(nid_objs[384]),/* OBJ_Experimental                 1 3 6 1 3 */
+&(nid_objs[385]),/* OBJ_Private                      1 3 6 1 4 */
+&(nid_objs[386]),/* OBJ_Security                     1 3 6 1 5 */
+&(nid_objs[387]),/* OBJ_SNMPv2                       1 3 6 1 6 */
+&(nid_objs[388]),/* OBJ_Mail                         1 3 6 1 7 */
 &(nid_objs[376]),/* OBJ_algorithm                    1 3 14 3 2 */
 &(nid_objs[19]),/* OBJ_rsa                          2 5 8 1 1 */
 &(nid_objs[96]),/* OBJ_mdc2WithRSA                  2 5 8 3 100 */
@@ -1828,6 +2112,8 @@ static ASN1_OBJECT *obj_objs[NUM_OBJ]={
 &(nid_objs[78]),/* OBJ_netscape_comment             2 16 840 1 113730 1 13 */
 &(nid_objs[79]),/* OBJ_netscape_cert_sequence       2 16 840 1 113730 2 5 */
 &(nid_objs[139]),/* OBJ_ns_sgc                       2 16 840 1 113730 4 1 */
+&(nid_objs[391]),/* OBJ_domainComponent              0 9 2342 19200300 100 1 25 */
+&(nid_objs[392]),/* OBJ_Domain                       0 9 2342 19200300 100 4 13 */
 &(nid_objs[189]),/* OBJ_id_smime_mod                 1 2 840 113549 1 9 16 0 */
 &(nid_objs[190]),/* OBJ_id_smime_ct                  1 2 840 113549 1 9 16 1 */
 &(nid_objs[191]),/* OBJ_id_smime_aa                  1 2 840 113549 1 9 16 2 */
index e6e3c3b9c02087e76b64b4143893c44bec5437e6..11066df680a6cc86291203f8aafa2c4bcea983e7 100644 (file)
@@ -46,10 +46,28 @@ while (<IN>)
        next unless /^\#define\s+(\S+)\s+(.*)$/;
        $v=$1;
        $d=$2;
+       $d =~ s/^\"//;
+       $d =~ s/\"$//;
        if ($v =~ /^SN_(.*)$/)
-               { $sn{$1}=$d; }
+               {
+               if(defined $snames{$d})
+                       {
+                       print "WARNING: Duplicate short name \"$d\"\n";
+                       }
+               else 
+                       { $snames{$d} = "X"; }
+               $sn{$1}=$d;
+               }
        elsif ($v =~ /^LN_(.*)$/)
-               { $ln{$1}=$d; }
+               {
+               if(defined $lnames{$d})
+                       {
+                       print "WARNING: Duplicate long name \"$d\"\n";
+                       }
+               else 
+                       { $lnames{$d} = "X"; }
+               $ln{$1}=$d;
+               }
        elsif ($v =~ /^NID_(.*)$/)
                { $nid{$d}=$1; }
        elsif ($v =~ /^OBJ_(.*)$/)
@@ -78,11 +96,20 @@ for ($i=0; $i<$n; $i++)
                {
                $sn=defined($sn{$nid{$i}})?"$sn{$nid{$i}}":"NULL";
                $ln=defined($ln{$nid{$i}})?"$ln{$nid{$i}}":"NULL";
-               $sn=$ln if ($sn eq "NULL");
-               $ln=$sn if ($ln eq "NULL");
+
+               if ($sn eq "NULL") {
+                       $sn=$ln;
+                       $sn{$nid{$i}} = $ln;
+               }
+
+               if ($ln eq "NULL") {
+                       $ln=$sn;
+                       $ln{$nid{$i}} = $sn;
+               }
+                       
                $out ="{";
-               $out.=$sn;
-               $out.=",".$ln;
+               $out.="\"$sn\"";
+               $out.=","."\"$ln\"";
                $out.=",NID_$nid{$i},";
                if (defined($obj{$nid{$i}}))
                        {
@@ -117,13 +144,13 @@ for ($i=0; $i<$n; $i++)
 @a=grep(defined($sn{$nid{$_}}),0 .. $n);
 foreach (sort { $sn{$nid{$a}} cmp $sn{$nid{$b}} } @a)
        {
-       push(@sn,sprintf("&(nid_objs[%2d]),/* $sn{$nid{$_}} */\n",$_));
+       push(@sn,sprintf("&(nid_objs[%2d]),/* \"$sn{$nid{$_}}\" */\n",$_));
        }
 
 @a=grep(defined($ln{$nid{$_}}),0 .. $n);
 foreach (sort { $ln{$nid{$a}} cmp $ln{$nid{$b}} } @a)
        {
-       push(@ln,sprintf("&(nid_objs[%2d]),/* $ln{$nid{$_}} */\n",$_));
+       push(@ln,sprintf("&(nid_objs[%2d]),/* \"$ln{$nid{$_}}\" */\n",$_));
        }
 
 @a=grep(defined($obj{$nid{$_}}),0 .. $n);
index 1da4949bc971d566c4803c195cc1cfd5e766d34c..401b1e5a1bc25b4d05a5309e6e15c4d9bb4789c0 100644 (file)
 #define NID_ad_ca_issuers              179
 #define OBJ_ad_ca_issuers              OBJ_id_ad,2L
 
-#define SN_ad_timeStamping             "timestamping"
-#define LN_ad_timeStamping             "Time Stamping"
+#define SN_ad_timeStamping             "ad_timestamping"
+#define LN_ad_timeStamping             "AD Time Stamping"
 #define NID_ad_timeStamping            363
 #define OBJ_ad_timeStamping            OBJ_id_ad,3L
 
-#define SN_ad_dvcs             "DVCS"
-#define LN_ad_dvcs             "dvcs"
+#define SN_ad_dvcs             "AD_DVCS"
+#define LN_ad_dvcs             "ad dvcs"
 #define NID_ad_dvcs            364
 #define OBJ_ad_dvcs            OBJ_id_ad,4L
 
 #define NID_ns_sgc             139
 #define OBJ_ns_sgc             OBJ_netscape,4L,1L
 
+#define SN_org         "ORG"
+#define LN_org         "org"
+#define NID_org                379
+#define OBJ_org                OBJ_iso,3L
+
+#define SN_dod         "DOD"
+#define LN_dod         "dod"
+#define NID_dod                380
+#define OBJ_dod                OBJ_org,6L
+
+#define SN_iana                "IANA"
+#define LN_iana                "iana"
+#define NID_iana               381
+#define OBJ_iana               OBJ_dod,1L
+
+#define OBJ_internet           OBJ_iana
+
+#define SN_Directory           "directory"
+#define LN_Directory           "Directory"
+#define NID_Directory          382
+#define OBJ_Directory          OBJ_internet,1L
+
+#define SN_Management          "mgmt"
+#define LN_Management          "Management"
+#define NID_Management         383
+#define OBJ_Management         OBJ_internet,2L
+
+#define SN_Experimental                "experimental"
+#define LN_Experimental                "Experimental"
+#define NID_Experimental               384
+#define OBJ_Experimental               OBJ_internet,3L
+
+#define SN_Private             "private"
+#define LN_Private             "Private"
+#define NID_Private            385
+#define OBJ_Private            OBJ_internet,4L
+
+#define SN_Security            "security"
+#define LN_Security            "Security"
+#define NID_Security           386
+#define OBJ_Security           OBJ_internet,5L
+
+#define SN_SNMPv2              "snmpv2"
+#define LN_SNMPv2              "SNMPv2"
+#define NID_SNMPv2             387
+#define OBJ_SNMPv2             OBJ_internet,6L
+
+#define SN_Mail                "mail"
+#define LN_Mail                "Mail"
+#define NID_Mail               388
+#define OBJ_Mail               OBJ_internet,7L
+
+#define SN_Enterprises         "enterprises"
+#define LN_Enterprises         "Enterprises"
+#define NID_Enterprises                389
+#define OBJ_Enterprises                OBJ_private,1L
+
+#define SN_dcObject            "dcobject"
+#define LN_dcObject            "dcObject"
+#define NID_dcObject           390
+#define OBJ_dcObject           OBJ_enterprises,1466L,344L
+
+#define SN_domainComponent             "DC"
+#define LN_domainComponent             "domainComponent"
+#define NID_domainComponent            391
+#define OBJ_domainComponent            0L,9L,2342L,19200300L,100L,1L,25L
+
+#define SN_Domain              "domain"
+#define LN_Domain              "Domain"
+#define NID_Domain             392
+#define OBJ_Domain             0L,9L,2342L,19200300L,100L,4L,13L
+
 #define SN_rle_compression             "RLE"
 #define LN_rle_compression             "run length compression"
 #define NID_rle_compression            124
index bf5639ba5f9a414a89764a6d3db6bef412ae4ded..d73a51370f76f72176351070464a56ff999cebbf 100644 (file)
@@ -376,3 +376,17 @@ id_pkix_OCSP_trustRoot             375
 algorithm              376
 rsaSignature           377
 X500algorithms         378
+org            379
+dod            380
+iana           381
+Directory              382
+Management             383
+Experimental           384
+Private                385
+Security               386
+SNMPv2         387
+Mail           388
+Enterprises            389
+dcObject               390
+domainComponent                391
+Domain         392
index e56f2d24c35c4c1989162a4524105eb040f66f5a..3d443cf88479f4c182b5f484f3724351a0462e0d 100644 (file)
@@ -1,5 +1,7 @@
 1                      : ISO                   : iso
+
 iso 2                  : member-body           : ISO Member Body
+
 member-body 840                : ISO-US                : ISO US Member Body
 ISO-US 10040           : X9-57                 : X9.57
 X9-57 4                        : X9cm                  : X9.57 CM ?
@@ -320,8 +322,7 @@ id-kp 6                     : ipsecTunnel           : IPSec Tunnel
 id-kp 7                        : ipsecUser             : IPSec User
 !Cname time-stamp
 id-kp 8                        : timeStamping          : Time Stamping
-#??? According to PKIX, id-kp 9 is temporalDataAuthority
-#??? I've no idea where OCSP-sign comes from -- Richard Levitte
+# From OCSP spec RFC2560
 !Cname OCSP-sign
 id-kp 9                        : OCSPSigning           : OCSP Signing
 id-kp 10               : DVCS                  : dvcs
@@ -421,9 +422,9 @@ id-ad 1                     : OCSP                  : OCSP
 !Cname ad-ca-issuers
 id-ad 2                        : caIssuers             : CA Issuers
 !Cname ad-timeStamping
-id-ad 3                        : timestamping          : Time Stamping
+id-ad 3                        : ad_timestamping       : AD Time Stamping
 !Cname ad-dvcs
-id-ad 4                        : DVCS                  : dvcs
+id-ad 4                        : AD_DVCS               : ad dvcs
 
 
 !Alias id-pkix-OCSP ad-OCSP
@@ -560,8 +561,33 @@ netscape-data-type 5       : nsCertSequence        : Netscape Certificate Sequence
 !Cname ns-sgc
 netscape 4 1           : nsSGC                 : Netscape Server Gated Crypto
 
+# iso(1)
+iso 3                  : ORG                   : org
+org 6                  : DOD                   : dod
+dod 1                  : IANA                  : iana
+!Alias internet iana
+
+internet 1             : directory             : Directory
+internet 2             : mgmt                  : Management
+internet 3             : experimental          : Experimental
+internet 4             : private               : Private
+internet 5             : security              : Security
+internet 6             : snmpv2                : SNMPv2
+internet 7             : mail                  : Mail
+
+private 1              : enterprises           : Enterprises
+
+# RFC 2247
+enterprises 1466 344   : dcobject              : dcObject
+
+# Stray OIDs we don't know the full name of each step for
+# RFC 2247
+0 9 2342 19200300 100 1 25 : DC                        : domainComponent
+0 9 2342 19200300 100 4 13 : domain            : Domain
+
 # What the hell are these OIDs, really?
 !Cname rle-compression
 1 1 1 1 666 1          : RLE                   : run length compression
 !Cname zlib-compression
 1 1 1 1 666 2          : ZLIB                  : zlib compression
+
index a3001f5b09c7b6dafa36d40ec2349d60f17fef9d..ed891092188383eb6c62d197f097a9691e6af242 100644 (file)
@@ -87,15 +87,16 @@ pem_all.o: ../../include/openssl/dh.h ../../include/openssl/dsa.h
 pem_all.o: ../../include/openssl/e_os.h ../../include/openssl/e_os2.h
 pem_all.o: ../../include/openssl/err.h ../../include/openssl/evp.h
 pem_all.o: ../../include/openssl/idea.h ../../include/openssl/lhash.h
-pem_all.o: ../../include/openssl/md2.h ../../include/openssl/md5.h
-pem_all.o: ../../include/openssl/mdc2.h ../../include/openssl/obj_mac.h
-pem_all.o: ../../include/openssl/objects.h ../../include/openssl/opensslconf.h
-pem_all.o: ../../include/openssl/opensslv.h ../../include/openssl/pem.h
-pem_all.o: ../../include/openssl/pem2.h ../../include/openssl/pkcs7.h
-pem_all.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h
-pem_all.o: ../../include/openssl/rc5.h ../../include/openssl/ripemd.h
-pem_all.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
-pem_all.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
+pem_all.o: ../../include/openssl/md2.h ../../include/openssl/md4.h
+pem_all.o: ../../include/openssl/md5.h ../../include/openssl/mdc2.h
+pem_all.o: ../../include/openssl/obj_mac.h ../../include/openssl/objects.h
+pem_all.o: ../../include/openssl/opensslconf.h ../../include/openssl/opensslv.h
+pem_all.o: ../../include/openssl/pem.h ../../include/openssl/pem2.h
+pem_all.o: ../../include/openssl/pkcs7.h ../../include/openssl/rc2.h
+pem_all.o: ../../include/openssl/rc4.h ../../include/openssl/rc5.h
+pem_all.o: ../../include/openssl/ripemd.h ../../include/openssl/rsa.h
+pem_all.o: ../../include/openssl/safestack.h ../../include/openssl/sha.h
+pem_all.o: ../../include/openssl/stack.h ../../include/openssl/symhacks.h
 pem_all.o: ../../include/openssl/x509.h ../../include/openssl/x509_vfy.h
 pem_all.o: ../cryptlib.h
 pem_err.o: ../../include/openssl/asn1.h ../../include/openssl/bio.h
@@ -106,15 +107,16 @@ pem_err.o: ../../include/openssl/dh.h ../../include/openssl/dsa.h
 pem_err.o: ../../include/openssl/e_os2.h ../../include/openssl/err.h
 pem_err.o: ../../include/openssl/evp.h ../../include/openssl/idea.h
 pem_err.o: ../../include/openssl/lhash.h ../../include/openssl/md2.h
-pem_err.o: ../../include/openssl/md5.h ../../include/openssl/mdc2.h
-pem_err.o: ../../include/openssl/obj_mac.h ../../include/openssl/objects.h
-pem_err.o: ../../include/openssl/opensslconf.h ../../include/openssl/opensslv.h
-pem_err.o: ../../include/openssl/pem.h ../../include/openssl/pem2.h
-pem_err.o: ../../include/openssl/pkcs7.h ../../include/openssl/rc2.h
-pem_err.o: ../../include/openssl/rc4.h ../../include/openssl/rc5.h
-pem_err.o: ../../include/openssl/ripemd.h ../../include/openssl/rsa.h
-pem_err.o: ../../include/openssl/safestack.h ../../include/openssl/sha.h
-pem_err.o: ../../include/openssl/stack.h ../../include/openssl/x509.h
+pem_err.o: ../../include/openssl/md4.h ../../include/openssl/md5.h
+pem_err.o: ../../include/openssl/mdc2.h ../../include/openssl/obj_mac.h
+pem_err.o: ../../include/openssl/objects.h ../../include/openssl/opensslconf.h
+pem_err.o: ../../include/openssl/opensslv.h ../../include/openssl/pem.h
+pem_err.o: ../../include/openssl/pem2.h ../../include/openssl/pkcs7.h
+pem_err.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h
+pem_err.o: ../../include/openssl/rc5.h ../../include/openssl/ripemd.h
+pem_err.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
+pem_err.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
+pem_err.o: ../../include/openssl/symhacks.h ../../include/openssl/x509.h
 pem_err.o: ../../include/openssl/x509_vfy.h
 pem_info.o: ../../include/openssl/asn1.h ../../include/openssl/bio.h
 pem_info.o: ../../include/openssl/blowfish.h ../../include/openssl/bn.h
@@ -124,17 +126,18 @@ pem_info.o: ../../include/openssl/dh.h ../../include/openssl/dsa.h
 pem_info.o: ../../include/openssl/e_os.h ../../include/openssl/e_os2.h
 pem_info.o: ../../include/openssl/err.h ../../include/openssl/evp.h
 pem_info.o: ../../include/openssl/idea.h ../../include/openssl/lhash.h
-pem_info.o: ../../include/openssl/md2.h ../../include/openssl/md5.h
-pem_info.o: ../../include/openssl/mdc2.h ../../include/openssl/obj_mac.h
-pem_info.o: ../../include/openssl/objects.h ../../include/openssl/opensslconf.h
+pem_info.o: ../../include/openssl/md2.h ../../include/openssl/md4.h
+pem_info.o: ../../include/openssl/md5.h ../../include/openssl/mdc2.h
+pem_info.o: ../../include/openssl/obj_mac.h ../../include/openssl/objects.h
+pem_info.o: ../../include/openssl/opensslconf.h
 pem_info.o: ../../include/openssl/opensslv.h ../../include/openssl/pem.h
 pem_info.o: ../../include/openssl/pem2.h ../../include/openssl/pkcs7.h
 pem_info.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h
 pem_info.o: ../../include/openssl/rc5.h ../../include/openssl/ripemd.h
 pem_info.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
 pem_info.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
-pem_info.o: ../../include/openssl/x509.h ../../include/openssl/x509_vfy.h
-pem_info.o: ../cryptlib.h
+pem_info.o: ../../include/openssl/symhacks.h ../../include/openssl/x509.h
+pem_info.o: ../../include/openssl/x509_vfy.h ../cryptlib.h
 pem_lib.o: ../../include/openssl/asn1.h ../../include/openssl/bio.h
 pem_lib.o: ../../include/openssl/blowfish.h ../../include/openssl/bn.h
 pem_lib.o: ../../include/openssl/buffer.h ../../include/openssl/cast.h
@@ -143,16 +146,17 @@ pem_lib.o: ../../include/openssl/dh.h ../../include/openssl/dsa.h
 pem_lib.o: ../../include/openssl/e_os.h ../../include/openssl/e_os2.h
 pem_lib.o: ../../include/openssl/err.h ../../include/openssl/evp.h
 pem_lib.o: ../../include/openssl/idea.h ../../include/openssl/lhash.h
-pem_lib.o: ../../include/openssl/md2.h ../../include/openssl/md5.h
-pem_lib.o: ../../include/openssl/mdc2.h ../../include/openssl/obj_mac.h
-pem_lib.o: ../../include/openssl/objects.h ../../include/openssl/opensslconf.h
-pem_lib.o: ../../include/openssl/opensslv.h ../../include/openssl/pem.h
-pem_lib.o: ../../include/openssl/pem2.h ../../include/openssl/pkcs12.h
-pem_lib.o: ../../include/openssl/pkcs7.h ../../include/openssl/rand.h
-pem_lib.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h
-pem_lib.o: ../../include/openssl/rc5.h ../../include/openssl/ripemd.h
-pem_lib.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
-pem_lib.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
+pem_lib.o: ../../include/openssl/md2.h ../../include/openssl/md4.h
+pem_lib.o: ../../include/openssl/md5.h ../../include/openssl/mdc2.h
+pem_lib.o: ../../include/openssl/obj_mac.h ../../include/openssl/objects.h
+pem_lib.o: ../../include/openssl/opensslconf.h ../../include/openssl/opensslv.h
+pem_lib.o: ../../include/openssl/pem.h ../../include/openssl/pem2.h
+pem_lib.o: ../../include/openssl/pkcs12.h ../../include/openssl/pkcs7.h
+pem_lib.o: ../../include/openssl/rand.h ../../include/openssl/rc2.h
+pem_lib.o: ../../include/openssl/rc4.h ../../include/openssl/rc5.h
+pem_lib.o: ../../include/openssl/ripemd.h ../../include/openssl/rsa.h
+pem_lib.o: ../../include/openssl/safestack.h ../../include/openssl/sha.h
+pem_lib.o: ../../include/openssl/stack.h ../../include/openssl/symhacks.h
 pem_lib.o: ../../include/openssl/x509.h ../../include/openssl/x509_vfy.h
 pem_lib.o: ../cryptlib.h
 pem_seal.o: ../../include/openssl/asn1.h ../../include/openssl/bio.h
@@ -163,17 +167,19 @@ pem_seal.o: ../../include/openssl/dh.h ../../include/openssl/dsa.h
 pem_seal.o: ../../include/openssl/e_os.h ../../include/openssl/e_os2.h
 pem_seal.o: ../../include/openssl/err.h ../../include/openssl/evp.h
 pem_seal.o: ../../include/openssl/idea.h ../../include/openssl/lhash.h
-pem_seal.o: ../../include/openssl/md2.h ../../include/openssl/md5.h
-pem_seal.o: ../../include/openssl/mdc2.h ../../include/openssl/obj_mac.h
-pem_seal.o: ../../include/openssl/objects.h ../../include/openssl/opensslconf.h
+pem_seal.o: ../../include/openssl/md2.h ../../include/openssl/md4.h
+pem_seal.o: ../../include/openssl/md5.h ../../include/openssl/mdc2.h
+pem_seal.o: ../../include/openssl/obj_mac.h ../../include/openssl/objects.h
+pem_seal.o: ../../include/openssl/opensslconf.h
 pem_seal.o: ../../include/openssl/opensslv.h ../../include/openssl/pem.h
 pem_seal.o: ../../include/openssl/pem2.h ../../include/openssl/pkcs7.h
 pem_seal.o: ../../include/openssl/rand.h ../../include/openssl/rc2.h
 pem_seal.o: ../../include/openssl/rc4.h ../../include/openssl/rc5.h
 pem_seal.o: ../../include/openssl/ripemd.h ../../include/openssl/rsa.h
 pem_seal.o: ../../include/openssl/safestack.h ../../include/openssl/sha.h
-pem_seal.o: ../../include/openssl/stack.h ../../include/openssl/x509.h
-pem_seal.o: ../../include/openssl/x509_vfy.h ../cryptlib.h
+pem_seal.o: ../../include/openssl/stack.h ../../include/openssl/symhacks.h
+pem_seal.o: ../../include/openssl/x509.h ../../include/openssl/x509_vfy.h
+pem_seal.o: ../cryptlib.h
 pem_sign.o: ../../include/openssl/asn1.h ../../include/openssl/bio.h
 pem_sign.o: ../../include/openssl/blowfish.h ../../include/openssl/bn.h
 pem_sign.o: ../../include/openssl/buffer.h ../../include/openssl/cast.h
@@ -182,14 +188,16 @@ pem_sign.o: ../../include/openssl/dh.h ../../include/openssl/dsa.h
 pem_sign.o: ../../include/openssl/e_os.h ../../include/openssl/e_os2.h
 pem_sign.o: ../../include/openssl/err.h ../../include/openssl/evp.h
 pem_sign.o: ../../include/openssl/idea.h ../../include/openssl/lhash.h
-pem_sign.o: ../../include/openssl/md2.h ../../include/openssl/md5.h
-pem_sign.o: ../../include/openssl/mdc2.h ../../include/openssl/obj_mac.h
-pem_sign.o: ../../include/openssl/objects.h ../../include/openssl/opensslconf.h
+pem_sign.o: ../../include/openssl/md2.h ../../include/openssl/md4.h
+pem_sign.o: ../../include/openssl/md5.h ../../include/openssl/mdc2.h
+pem_sign.o: ../../include/openssl/obj_mac.h ../../include/openssl/objects.h
+pem_sign.o: ../../include/openssl/opensslconf.h
 pem_sign.o: ../../include/openssl/opensslv.h ../../include/openssl/pem.h
 pem_sign.o: ../../include/openssl/pem2.h ../../include/openssl/pkcs7.h
 pem_sign.o: ../../include/openssl/rand.h ../../include/openssl/rc2.h
 pem_sign.o: ../../include/openssl/rc4.h ../../include/openssl/rc5.h
 pem_sign.o: ../../include/openssl/ripemd.h ../../include/openssl/rsa.h
 pem_sign.o: ../../include/openssl/safestack.h ../../include/openssl/sha.h
-pem_sign.o: ../../include/openssl/stack.h ../../include/openssl/x509.h
-pem_sign.o: ../../include/openssl/x509_vfy.h ../cryptlib.h
+pem_sign.o: ../../include/openssl/stack.h ../../include/openssl/symhacks.h
+pem_sign.o: ../../include/openssl/x509.h ../../include/openssl/x509_vfy.h
+pem_sign.o: ../cryptlib.h
index 46aafa68153d8d122a44b6c6e2ab96d84202b330..6d3c446577f0067ad4bcf35f73cae1b855745419 100644 (file)
@@ -531,9 +531,7 @@ void        PEM_dek_info(char *buf, const char *type, int len, char *str);
 
 #ifndef SSLEAY_MACROS
 
-#ifdef VMS
-#include <openssl/vms_idhacks.h>
-#endif
+#include <openssl/symhacks.h>
 
 DECLARE_PEM_rw(X509, X509)
 
index c3490db436d3a5614c3cdbb61af5018131f45a77..8f42d3044dfb5c9fa6a3958a63e69c27ffa2d39b 100644 (file)
@@ -92,15 +92,16 @@ p12_add.o: ../../include/openssl/dh.h ../../include/openssl/dsa.h
 p12_add.o: ../../include/openssl/e_os.h ../../include/openssl/e_os2.h
 p12_add.o: ../../include/openssl/err.h ../../include/openssl/evp.h
 p12_add.o: ../../include/openssl/idea.h ../../include/openssl/lhash.h
-p12_add.o: ../../include/openssl/md2.h ../../include/openssl/md5.h
-p12_add.o: ../../include/openssl/mdc2.h ../../include/openssl/obj_mac.h
-p12_add.o: ../../include/openssl/objects.h ../../include/openssl/opensslconf.h
-p12_add.o: ../../include/openssl/opensslv.h ../../include/openssl/pkcs12.h
-p12_add.o: ../../include/openssl/pkcs7.h ../../include/openssl/rc2.h
-p12_add.o: ../../include/openssl/rc4.h ../../include/openssl/rc5.h
-p12_add.o: ../../include/openssl/ripemd.h ../../include/openssl/rsa.h
-p12_add.o: ../../include/openssl/safestack.h ../../include/openssl/sha.h
-p12_add.o: ../../include/openssl/stack.h ../../include/openssl/x509.h
+p12_add.o: ../../include/openssl/md2.h ../../include/openssl/md4.h
+p12_add.o: ../../include/openssl/md5.h ../../include/openssl/mdc2.h
+p12_add.o: ../../include/openssl/obj_mac.h ../../include/openssl/objects.h
+p12_add.o: ../../include/openssl/opensslconf.h ../../include/openssl/opensslv.h
+p12_add.o: ../../include/openssl/pkcs12.h ../../include/openssl/pkcs7.h
+p12_add.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h
+p12_add.o: ../../include/openssl/rc5.h ../../include/openssl/ripemd.h
+p12_add.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
+p12_add.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
+p12_add.o: ../../include/openssl/symhacks.h ../../include/openssl/x509.h
 p12_add.o: ../../include/openssl/x509_vfy.h ../cryptlib.h
 p12_attr.o: ../../include/openssl/asn1.h ../../include/openssl/bio.h
 p12_attr.o: ../../include/openssl/blowfish.h ../../include/openssl/bn.h
@@ -110,16 +111,18 @@ p12_attr.o: ../../include/openssl/dh.h ../../include/openssl/dsa.h
 p12_attr.o: ../../include/openssl/e_os.h ../../include/openssl/e_os2.h
 p12_attr.o: ../../include/openssl/err.h ../../include/openssl/evp.h
 p12_attr.o: ../../include/openssl/idea.h ../../include/openssl/lhash.h
-p12_attr.o: ../../include/openssl/md2.h ../../include/openssl/md5.h
-p12_attr.o: ../../include/openssl/mdc2.h ../../include/openssl/obj_mac.h
-p12_attr.o: ../../include/openssl/objects.h ../../include/openssl/opensslconf.h
+p12_attr.o: ../../include/openssl/md2.h ../../include/openssl/md4.h
+p12_attr.o: ../../include/openssl/md5.h ../../include/openssl/mdc2.h
+p12_attr.o: ../../include/openssl/obj_mac.h ../../include/openssl/objects.h
+p12_attr.o: ../../include/openssl/opensslconf.h
 p12_attr.o: ../../include/openssl/opensslv.h ../../include/openssl/pkcs12.h
 p12_attr.o: ../../include/openssl/pkcs7.h ../../include/openssl/rc2.h
 p12_attr.o: ../../include/openssl/rc4.h ../../include/openssl/rc5.h
 p12_attr.o: ../../include/openssl/ripemd.h ../../include/openssl/rsa.h
 p12_attr.o: ../../include/openssl/safestack.h ../../include/openssl/sha.h
-p12_attr.o: ../../include/openssl/stack.h ../../include/openssl/x509.h
-p12_attr.o: ../../include/openssl/x509_vfy.h ../cryptlib.h
+p12_attr.o: ../../include/openssl/stack.h ../../include/openssl/symhacks.h
+p12_attr.o: ../../include/openssl/x509.h ../../include/openssl/x509_vfy.h
+p12_attr.o: ../cryptlib.h
 p12_bags.o: ../../include/openssl/asn1.h ../../include/openssl/asn1_mac.h
 p12_bags.o: ../../include/openssl/bio.h ../../include/openssl/blowfish.h
 p12_bags.o: ../../include/openssl/bn.h ../../include/openssl/buffer.h
@@ -129,16 +132,17 @@ p12_bags.o: ../../include/openssl/dsa.h ../../include/openssl/e_os.h
 p12_bags.o: ../../include/openssl/e_os2.h ../../include/openssl/err.h
 p12_bags.o: ../../include/openssl/evp.h ../../include/openssl/idea.h
 p12_bags.o: ../../include/openssl/lhash.h ../../include/openssl/md2.h
-p12_bags.o: ../../include/openssl/md5.h ../../include/openssl/mdc2.h
-p12_bags.o: ../../include/openssl/obj_mac.h ../../include/openssl/objects.h
-p12_bags.o: ../../include/openssl/opensslconf.h
+p12_bags.o: ../../include/openssl/md4.h ../../include/openssl/md5.h
+p12_bags.o: ../../include/openssl/mdc2.h ../../include/openssl/obj_mac.h
+p12_bags.o: ../../include/openssl/objects.h ../../include/openssl/opensslconf.h
 p12_bags.o: ../../include/openssl/opensslv.h ../../include/openssl/pkcs12.h
 p12_bags.o: ../../include/openssl/pkcs7.h ../../include/openssl/rc2.h
 p12_bags.o: ../../include/openssl/rc4.h ../../include/openssl/rc5.h
 p12_bags.o: ../../include/openssl/ripemd.h ../../include/openssl/rsa.h
 p12_bags.o: ../../include/openssl/safestack.h ../../include/openssl/sha.h
-p12_bags.o: ../../include/openssl/stack.h ../../include/openssl/x509.h
-p12_bags.o: ../../include/openssl/x509_vfy.h ../cryptlib.h
+p12_bags.o: ../../include/openssl/stack.h ../../include/openssl/symhacks.h
+p12_bags.o: ../../include/openssl/x509.h ../../include/openssl/x509_vfy.h
+p12_bags.o: ../cryptlib.h
 p12_crpt.o: ../../include/openssl/asn1.h ../../include/openssl/bio.h
 p12_crpt.o: ../../include/openssl/blowfish.h ../../include/openssl/bn.h
 p12_crpt.o: ../../include/openssl/buffer.h ../../include/openssl/cast.h
@@ -147,16 +151,18 @@ p12_crpt.o: ../../include/openssl/dh.h ../../include/openssl/dsa.h
 p12_crpt.o: ../../include/openssl/e_os.h ../../include/openssl/e_os2.h
 p12_crpt.o: ../../include/openssl/err.h ../../include/openssl/evp.h
 p12_crpt.o: ../../include/openssl/idea.h ../../include/openssl/lhash.h
-p12_crpt.o: ../../include/openssl/md2.h ../../include/openssl/md5.h
-p12_crpt.o: ../../include/openssl/mdc2.h ../../include/openssl/obj_mac.h
-p12_crpt.o: ../../include/openssl/objects.h ../../include/openssl/opensslconf.h
+p12_crpt.o: ../../include/openssl/md2.h ../../include/openssl/md4.h
+p12_crpt.o: ../../include/openssl/md5.h ../../include/openssl/mdc2.h
+p12_crpt.o: ../../include/openssl/obj_mac.h ../../include/openssl/objects.h
+p12_crpt.o: ../../include/openssl/opensslconf.h
 p12_crpt.o: ../../include/openssl/opensslv.h ../../include/openssl/pkcs12.h
 p12_crpt.o: ../../include/openssl/pkcs7.h ../../include/openssl/rc2.h
 p12_crpt.o: ../../include/openssl/rc4.h ../../include/openssl/rc5.h
 p12_crpt.o: ../../include/openssl/ripemd.h ../../include/openssl/rsa.h
 p12_crpt.o: ../../include/openssl/safestack.h ../../include/openssl/sha.h
-p12_crpt.o: ../../include/openssl/stack.h ../../include/openssl/x509.h
-p12_crpt.o: ../../include/openssl/x509_vfy.h ../cryptlib.h
+p12_crpt.o: ../../include/openssl/stack.h ../../include/openssl/symhacks.h
+p12_crpt.o: ../../include/openssl/x509.h ../../include/openssl/x509_vfy.h
+p12_crpt.o: ../cryptlib.h
 p12_crt.o: ../../include/openssl/asn1.h ../../include/openssl/bio.h
 p12_crt.o: ../../include/openssl/blowfish.h ../../include/openssl/bn.h
 p12_crt.o: ../../include/openssl/buffer.h ../../include/openssl/cast.h
@@ -165,15 +171,16 @@ p12_crt.o: ../../include/openssl/dh.h ../../include/openssl/dsa.h
 p12_crt.o: ../../include/openssl/e_os.h ../../include/openssl/e_os2.h
 p12_crt.o: ../../include/openssl/err.h ../../include/openssl/evp.h
 p12_crt.o: ../../include/openssl/idea.h ../../include/openssl/lhash.h
-p12_crt.o: ../../include/openssl/md2.h ../../include/openssl/md5.h
-p12_crt.o: ../../include/openssl/mdc2.h ../../include/openssl/obj_mac.h
-p12_crt.o: ../../include/openssl/objects.h ../../include/openssl/opensslconf.h
-p12_crt.o: ../../include/openssl/opensslv.h ../../include/openssl/pkcs12.h
-p12_crt.o: ../../include/openssl/pkcs7.h ../../include/openssl/rc2.h
-p12_crt.o: ../../include/openssl/rc4.h ../../include/openssl/rc5.h
-p12_crt.o: ../../include/openssl/ripemd.h ../../include/openssl/rsa.h
-p12_crt.o: ../../include/openssl/safestack.h ../../include/openssl/sha.h
-p12_crt.o: ../../include/openssl/stack.h ../../include/openssl/x509.h
+p12_crt.o: ../../include/openssl/md2.h ../../include/openssl/md4.h
+p12_crt.o: ../../include/openssl/md5.h ../../include/openssl/mdc2.h
+p12_crt.o: ../../include/openssl/obj_mac.h ../../include/openssl/objects.h
+p12_crt.o: ../../include/openssl/opensslconf.h ../../include/openssl/opensslv.h
+p12_crt.o: ../../include/openssl/pkcs12.h ../../include/openssl/pkcs7.h
+p12_crt.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h
+p12_crt.o: ../../include/openssl/rc5.h ../../include/openssl/ripemd.h
+p12_crt.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
+p12_crt.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
+p12_crt.o: ../../include/openssl/symhacks.h ../../include/openssl/x509.h
 p12_crt.o: ../../include/openssl/x509_vfy.h ../cryptlib.h
 p12_decr.o: ../../include/openssl/asn1.h ../../include/openssl/bio.h
 p12_decr.o: ../../include/openssl/blowfish.h ../../include/openssl/bn.h
@@ -183,16 +190,18 @@ p12_decr.o: ../../include/openssl/dh.h ../../include/openssl/dsa.h
 p12_decr.o: ../../include/openssl/e_os.h ../../include/openssl/e_os2.h
 p12_decr.o: ../../include/openssl/err.h ../../include/openssl/evp.h
 p12_decr.o: ../../include/openssl/idea.h ../../include/openssl/lhash.h
-p12_decr.o: ../../include/openssl/md2.h ../../include/openssl/md5.h
-p12_decr.o: ../../include/openssl/mdc2.h ../../include/openssl/obj_mac.h
-p12_decr.o: ../../include/openssl/objects.h ../../include/openssl/opensslconf.h
+p12_decr.o: ../../include/openssl/md2.h ../../include/openssl/md4.h
+p12_decr.o: ../../include/openssl/md5.h ../../include/openssl/mdc2.h
+p12_decr.o: ../../include/openssl/obj_mac.h ../../include/openssl/objects.h
+p12_decr.o: ../../include/openssl/opensslconf.h
 p12_decr.o: ../../include/openssl/opensslv.h ../../include/openssl/pkcs12.h
 p12_decr.o: ../../include/openssl/pkcs7.h ../../include/openssl/rc2.h
 p12_decr.o: ../../include/openssl/rc4.h ../../include/openssl/rc5.h
 p12_decr.o: ../../include/openssl/ripemd.h ../../include/openssl/rsa.h
 p12_decr.o: ../../include/openssl/safestack.h ../../include/openssl/sha.h
-p12_decr.o: ../../include/openssl/stack.h ../../include/openssl/x509.h
-p12_decr.o: ../../include/openssl/x509_vfy.h ../cryptlib.h
+p12_decr.o: ../../include/openssl/stack.h ../../include/openssl/symhacks.h
+p12_decr.o: ../../include/openssl/x509.h ../../include/openssl/x509_vfy.h
+p12_decr.o: ../cryptlib.h
 p12_init.o: ../../include/openssl/asn1.h ../../include/openssl/bio.h
 p12_init.o: ../../include/openssl/blowfish.h ../../include/openssl/bn.h
 p12_init.o: ../../include/openssl/buffer.h ../../include/openssl/cast.h
@@ -201,16 +210,18 @@ p12_init.o: ../../include/openssl/dh.h ../../include/openssl/dsa.h
 p12_init.o: ../../include/openssl/e_os.h ../../include/openssl/e_os2.h
 p12_init.o: ../../include/openssl/err.h ../../include/openssl/evp.h
 p12_init.o: ../../include/openssl/idea.h ../../include/openssl/lhash.h
-p12_init.o: ../../include/openssl/md2.h ../../include/openssl/md5.h
-p12_init.o: ../../include/openssl/mdc2.h ../../include/openssl/obj_mac.h
-p12_init.o: ../../include/openssl/objects.h ../../include/openssl/opensslconf.h
+p12_init.o: ../../include/openssl/md2.h ../../include/openssl/md4.h
+p12_init.o: ../../include/openssl/md5.h ../../include/openssl/mdc2.h
+p12_init.o: ../../include/openssl/obj_mac.h ../../include/openssl/objects.h
+p12_init.o: ../../include/openssl/opensslconf.h
 p12_init.o: ../../include/openssl/opensslv.h ../../include/openssl/pkcs12.h
 p12_init.o: ../../include/openssl/pkcs7.h ../../include/openssl/rc2.h
 p12_init.o: ../../include/openssl/rc4.h ../../include/openssl/rc5.h
 p12_init.o: ../../include/openssl/ripemd.h ../../include/openssl/rsa.h
 p12_init.o: ../../include/openssl/safestack.h ../../include/openssl/sha.h
-p12_init.o: ../../include/openssl/stack.h ../../include/openssl/x509.h
-p12_init.o: ../../include/openssl/x509_vfy.h ../cryptlib.h
+p12_init.o: ../../include/openssl/stack.h ../../include/openssl/symhacks.h
+p12_init.o: ../../include/openssl/x509.h ../../include/openssl/x509_vfy.h
+p12_init.o: ../cryptlib.h
 p12_key.o: ../../include/openssl/asn1.h ../../include/openssl/bio.h
 p12_key.o: ../../include/openssl/blowfish.h ../../include/openssl/bn.h
 p12_key.o: ../../include/openssl/buffer.h ../../include/openssl/cast.h
@@ -219,15 +230,16 @@ p12_key.o: ../../include/openssl/dh.h ../../include/openssl/dsa.h
 p12_key.o: ../../include/openssl/e_os.h ../../include/openssl/e_os2.h
 p12_key.o: ../../include/openssl/err.h ../../include/openssl/evp.h
 p12_key.o: ../../include/openssl/idea.h ../../include/openssl/lhash.h
-p12_key.o: ../../include/openssl/md2.h ../../include/openssl/md5.h
-p12_key.o: ../../include/openssl/mdc2.h ../../include/openssl/obj_mac.h
-p12_key.o: ../../include/openssl/objects.h ../../include/openssl/opensslconf.h
-p12_key.o: ../../include/openssl/opensslv.h ../../include/openssl/pkcs12.h
-p12_key.o: ../../include/openssl/pkcs7.h ../../include/openssl/rc2.h
-p12_key.o: ../../include/openssl/rc4.h ../../include/openssl/rc5.h
-p12_key.o: ../../include/openssl/ripemd.h ../../include/openssl/rsa.h
-p12_key.o: ../../include/openssl/safestack.h ../../include/openssl/sha.h
-p12_key.o: ../../include/openssl/stack.h ../../include/openssl/x509.h
+p12_key.o: ../../include/openssl/md2.h ../../include/openssl/md4.h
+p12_key.o: ../../include/openssl/md5.h ../../include/openssl/mdc2.h
+p12_key.o: ../../include/openssl/obj_mac.h ../../include/openssl/objects.h
+p12_key.o: ../../include/openssl/opensslconf.h ../../include/openssl/opensslv.h
+p12_key.o: ../../include/openssl/pkcs12.h ../../include/openssl/pkcs7.h
+p12_key.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h
+p12_key.o: ../../include/openssl/rc5.h ../../include/openssl/ripemd.h
+p12_key.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
+p12_key.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
+p12_key.o: ../../include/openssl/symhacks.h ../../include/openssl/x509.h
 p12_key.o: ../../include/openssl/x509_vfy.h ../cryptlib.h
 p12_kiss.o: ../../include/openssl/asn1.h ../../include/openssl/bio.h
 p12_kiss.o: ../../include/openssl/blowfish.h ../../include/openssl/bn.h
@@ -237,16 +249,18 @@ p12_kiss.o: ../../include/openssl/dh.h ../../include/openssl/dsa.h
 p12_kiss.o: ../../include/openssl/e_os.h ../../include/openssl/e_os2.h
 p12_kiss.o: ../../include/openssl/err.h ../../include/openssl/evp.h
 p12_kiss.o: ../../include/openssl/idea.h ../../include/openssl/lhash.h
-p12_kiss.o: ../../include/openssl/md2.h ../../include/openssl/md5.h
-p12_kiss.o: ../../include/openssl/mdc2.h ../../include/openssl/obj_mac.h
-p12_kiss.o: ../../include/openssl/objects.h ../../include/openssl/opensslconf.h
+p12_kiss.o: ../../include/openssl/md2.h ../../include/openssl/md4.h
+p12_kiss.o: ../../include/openssl/md5.h ../../include/openssl/mdc2.h
+p12_kiss.o: ../../include/openssl/obj_mac.h ../../include/openssl/objects.h
+p12_kiss.o: ../../include/openssl/opensslconf.h
 p12_kiss.o: ../../include/openssl/opensslv.h ../../include/openssl/pkcs12.h
 p12_kiss.o: ../../include/openssl/pkcs7.h ../../include/openssl/rc2.h
 p12_kiss.o: ../../include/openssl/rc4.h ../../include/openssl/rc5.h
 p12_kiss.o: ../../include/openssl/ripemd.h ../../include/openssl/rsa.h
 p12_kiss.o: ../../include/openssl/safestack.h ../../include/openssl/sha.h
-p12_kiss.o: ../../include/openssl/stack.h ../../include/openssl/x509.h
-p12_kiss.o: ../../include/openssl/x509_vfy.h ../cryptlib.h
+p12_kiss.o: ../../include/openssl/stack.h ../../include/openssl/symhacks.h
+p12_kiss.o: ../../include/openssl/x509.h ../../include/openssl/x509_vfy.h
+p12_kiss.o: ../cryptlib.h
 p12_lib.o: ../../include/openssl/asn1.h ../../include/openssl/asn1_mac.h
 p12_lib.o: ../../include/openssl/bio.h ../../include/openssl/blowfish.h
 p12_lib.o: ../../include/openssl/bn.h ../../include/openssl/buffer.h
@@ -256,14 +270,15 @@ p12_lib.o: ../../include/openssl/dsa.h ../../include/openssl/e_os.h
 p12_lib.o: ../../include/openssl/e_os2.h ../../include/openssl/err.h
 p12_lib.o: ../../include/openssl/evp.h ../../include/openssl/idea.h
 p12_lib.o: ../../include/openssl/lhash.h ../../include/openssl/md2.h
-p12_lib.o: ../../include/openssl/md5.h ../../include/openssl/mdc2.h
-p12_lib.o: ../../include/openssl/obj_mac.h ../../include/openssl/objects.h
-p12_lib.o: ../../include/openssl/opensslconf.h ../../include/openssl/opensslv.h
-p12_lib.o: ../../include/openssl/pkcs12.h ../../include/openssl/pkcs7.h
-p12_lib.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h
-p12_lib.o: ../../include/openssl/rc5.h ../../include/openssl/ripemd.h
-p12_lib.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
-p12_lib.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
+p12_lib.o: ../../include/openssl/md4.h ../../include/openssl/md5.h
+p12_lib.o: ../../include/openssl/mdc2.h ../../include/openssl/obj_mac.h
+p12_lib.o: ../../include/openssl/objects.h ../../include/openssl/opensslconf.h
+p12_lib.o: ../../include/openssl/opensslv.h ../../include/openssl/pkcs12.h
+p12_lib.o: ../../include/openssl/pkcs7.h ../../include/openssl/rc2.h
+p12_lib.o: ../../include/openssl/rc4.h ../../include/openssl/rc5.h
+p12_lib.o: ../../include/openssl/ripemd.h ../../include/openssl/rsa.h
+p12_lib.o: ../../include/openssl/safestack.h ../../include/openssl/sha.h
+p12_lib.o: ../../include/openssl/stack.h ../../include/openssl/symhacks.h
 p12_lib.o: ../../include/openssl/x509.h ../../include/openssl/x509_vfy.h
 p12_lib.o: ../cryptlib.h
 p12_mac.o: ../../include/openssl/asn1.h ../../include/openssl/asn1_mac.h
@@ -275,14 +290,15 @@ p12_mac.o: ../../include/openssl/dsa.h ../../include/openssl/e_os.h
 p12_mac.o: ../../include/openssl/e_os2.h ../../include/openssl/err.h
 p12_mac.o: ../../include/openssl/evp.h ../../include/openssl/idea.h
 p12_mac.o: ../../include/openssl/lhash.h ../../include/openssl/md2.h
-p12_mac.o: ../../include/openssl/md5.h ../../include/openssl/mdc2.h
-p12_mac.o: ../../include/openssl/obj_mac.h ../../include/openssl/objects.h
-p12_mac.o: ../../include/openssl/opensslconf.h ../../include/openssl/opensslv.h
-p12_mac.o: ../../include/openssl/pkcs12.h ../../include/openssl/pkcs7.h
-p12_mac.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h
-p12_mac.o: ../../include/openssl/rc5.h ../../include/openssl/ripemd.h
-p12_mac.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
-p12_mac.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
+p12_mac.o: ../../include/openssl/md4.h ../../include/openssl/md5.h
+p12_mac.o: ../../include/openssl/mdc2.h ../../include/openssl/obj_mac.h
+p12_mac.o: ../../include/openssl/objects.h ../../include/openssl/opensslconf.h
+p12_mac.o: ../../include/openssl/opensslv.h ../../include/openssl/pkcs12.h
+p12_mac.o: ../../include/openssl/pkcs7.h ../../include/openssl/rc2.h
+p12_mac.o: ../../include/openssl/rc4.h ../../include/openssl/rc5.h
+p12_mac.o: ../../include/openssl/ripemd.h ../../include/openssl/rsa.h
+p12_mac.o: ../../include/openssl/safestack.h ../../include/openssl/sha.h
+p12_mac.o: ../../include/openssl/stack.h ../../include/openssl/symhacks.h
 p12_mac.o: ../../include/openssl/x509.h ../../include/openssl/x509_vfy.h
 p12_mac.o: ../cryptlib.h
 p12_mutl.o: ../../include/openssl/asn1.h ../../include/openssl/bio.h
@@ -294,17 +310,17 @@ p12_mutl.o: ../../include/openssl/e_os.h ../../include/openssl/e_os2.h
 p12_mutl.o: ../../include/openssl/err.h ../../include/openssl/evp.h
 p12_mutl.o: ../../include/openssl/hmac.h ../../include/openssl/idea.h
 p12_mutl.o: ../../include/openssl/lhash.h ../../include/openssl/md2.h
-p12_mutl.o: ../../include/openssl/md5.h ../../include/openssl/mdc2.h
-p12_mutl.o: ../../include/openssl/obj_mac.h ../../include/openssl/objects.h
-p12_mutl.o: ../../include/openssl/opensslconf.h
+p12_mutl.o: ../../include/openssl/md4.h ../../include/openssl/md5.h
+p12_mutl.o: ../../include/openssl/mdc2.h ../../include/openssl/obj_mac.h
+p12_mutl.o: ../../include/openssl/objects.h ../../include/openssl/opensslconf.h
 p12_mutl.o: ../../include/openssl/opensslv.h ../../include/openssl/pkcs12.h
 p12_mutl.o: ../../include/openssl/pkcs7.h ../../include/openssl/rand.h
 p12_mutl.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h
 p12_mutl.o: ../../include/openssl/rc5.h ../../include/openssl/ripemd.h
 p12_mutl.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
 p12_mutl.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
-p12_mutl.o: ../../include/openssl/x509.h ../../include/openssl/x509_vfy.h
-p12_mutl.o: ../cryptlib.h
+p12_mutl.o: ../../include/openssl/symhacks.h ../../include/openssl/x509.h
+p12_mutl.o: ../../include/openssl/x509_vfy.h ../cryptlib.h
 p12_npas.o: ../../include/openssl/asn1.h ../../include/openssl/bio.h
 p12_npas.o: ../../include/openssl/blowfish.h ../../include/openssl/bn.h
 p12_npas.o: ../../include/openssl/buffer.h ../../include/openssl/cast.h
@@ -313,17 +329,17 @@ p12_npas.o: ../../include/openssl/dh.h ../../include/openssl/dsa.h
 p12_npas.o: ../../include/openssl/e_os2.h ../../include/openssl/err.h
 p12_npas.o: ../../include/openssl/evp.h ../../include/openssl/idea.h
 p12_npas.o: ../../include/openssl/lhash.h ../../include/openssl/md2.h
-p12_npas.o: ../../include/openssl/md5.h ../../include/openssl/mdc2.h
-p12_npas.o: ../../include/openssl/obj_mac.h ../../include/openssl/objects.h
-p12_npas.o: ../../include/openssl/opensslconf.h
+p12_npas.o: ../../include/openssl/md4.h ../../include/openssl/md5.h
+p12_npas.o: ../../include/openssl/mdc2.h ../../include/openssl/obj_mac.h
+p12_npas.o: ../../include/openssl/objects.h ../../include/openssl/opensslconf.h
 p12_npas.o: ../../include/openssl/opensslv.h ../../include/openssl/pem.h
 p12_npas.o: ../../include/openssl/pem2.h ../../include/openssl/pkcs12.h
 p12_npas.o: ../../include/openssl/pkcs7.h ../../include/openssl/rc2.h
 p12_npas.o: ../../include/openssl/rc4.h ../../include/openssl/rc5.h
 p12_npas.o: ../../include/openssl/ripemd.h ../../include/openssl/rsa.h
 p12_npas.o: ../../include/openssl/safestack.h ../../include/openssl/sha.h
-p12_npas.o: ../../include/openssl/stack.h ../../include/openssl/x509.h
-p12_npas.o: ../../include/openssl/x509_vfy.h
+p12_npas.o: ../../include/openssl/stack.h ../../include/openssl/symhacks.h
+p12_npas.o: ../../include/openssl/x509.h ../../include/openssl/x509_vfy.h
 p12_sbag.o: ../../include/openssl/asn1.h ../../include/openssl/asn1_mac.h
 p12_sbag.o: ../../include/openssl/bio.h ../../include/openssl/blowfish.h
 p12_sbag.o: ../../include/openssl/bn.h ../../include/openssl/buffer.h
@@ -333,16 +349,17 @@ p12_sbag.o: ../../include/openssl/dsa.h ../../include/openssl/e_os.h
 p12_sbag.o: ../../include/openssl/e_os2.h ../../include/openssl/err.h
 p12_sbag.o: ../../include/openssl/evp.h ../../include/openssl/idea.h
 p12_sbag.o: ../../include/openssl/lhash.h ../../include/openssl/md2.h
-p12_sbag.o: ../../include/openssl/md5.h ../../include/openssl/mdc2.h
-p12_sbag.o: ../../include/openssl/obj_mac.h ../../include/openssl/objects.h
-p12_sbag.o: ../../include/openssl/opensslconf.h
+p12_sbag.o: ../../include/openssl/md4.h ../../include/openssl/md5.h
+p12_sbag.o: ../../include/openssl/mdc2.h ../../include/openssl/obj_mac.h
+p12_sbag.o: ../../include/openssl/objects.h ../../include/openssl/opensslconf.h
 p12_sbag.o: ../../include/openssl/opensslv.h ../../include/openssl/pkcs12.h
 p12_sbag.o: ../../include/openssl/pkcs7.h ../../include/openssl/rc2.h
 p12_sbag.o: ../../include/openssl/rc4.h ../../include/openssl/rc5.h
 p12_sbag.o: ../../include/openssl/ripemd.h ../../include/openssl/rsa.h
 p12_sbag.o: ../../include/openssl/safestack.h ../../include/openssl/sha.h
-p12_sbag.o: ../../include/openssl/stack.h ../../include/openssl/x509.h
-p12_sbag.o: ../../include/openssl/x509_vfy.h ../cryptlib.h
+p12_sbag.o: ../../include/openssl/stack.h ../../include/openssl/symhacks.h
+p12_sbag.o: ../../include/openssl/x509.h ../../include/openssl/x509_vfy.h
+p12_sbag.o: ../cryptlib.h
 p12_utl.o: ../../include/openssl/asn1.h ../../include/openssl/bio.h
 p12_utl.o: ../../include/openssl/blowfish.h ../../include/openssl/bn.h
 p12_utl.o: ../../include/openssl/buffer.h ../../include/openssl/cast.h
@@ -351,15 +368,16 @@ p12_utl.o: ../../include/openssl/dh.h ../../include/openssl/dsa.h
 p12_utl.o: ../../include/openssl/e_os.h ../../include/openssl/e_os2.h
 p12_utl.o: ../../include/openssl/err.h ../../include/openssl/evp.h
 p12_utl.o: ../../include/openssl/idea.h ../../include/openssl/lhash.h
-p12_utl.o: ../../include/openssl/md2.h ../../include/openssl/md5.h
-p12_utl.o: ../../include/openssl/mdc2.h ../../include/openssl/obj_mac.h
-p12_utl.o: ../../include/openssl/objects.h ../../include/openssl/opensslconf.h
-p12_utl.o: ../../include/openssl/opensslv.h ../../include/openssl/pkcs12.h
-p12_utl.o: ../../include/openssl/pkcs7.h ../../include/openssl/rc2.h
-p12_utl.o: ../../include/openssl/rc4.h ../../include/openssl/rc5.h
-p12_utl.o: ../../include/openssl/ripemd.h ../../include/openssl/rsa.h
-p12_utl.o: ../../include/openssl/safestack.h ../../include/openssl/sha.h
-p12_utl.o: ../../include/openssl/stack.h ../../include/openssl/x509.h
+p12_utl.o: ../../include/openssl/md2.h ../../include/openssl/md4.h
+p12_utl.o: ../../include/openssl/md5.h ../../include/openssl/mdc2.h
+p12_utl.o: ../../include/openssl/obj_mac.h ../../include/openssl/objects.h
+p12_utl.o: ../../include/openssl/opensslconf.h ../../include/openssl/opensslv.h
+p12_utl.o: ../../include/openssl/pkcs12.h ../../include/openssl/pkcs7.h
+p12_utl.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h
+p12_utl.o: ../../include/openssl/rc5.h ../../include/openssl/ripemd.h
+p12_utl.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
+p12_utl.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
+p12_utl.o: ../../include/openssl/symhacks.h ../../include/openssl/x509.h
 p12_utl.o: ../../include/openssl/x509_vfy.h ../cryptlib.h
 pk12err.o: ../../include/openssl/asn1.h ../../include/openssl/bio.h
 pk12err.o: ../../include/openssl/blowfish.h ../../include/openssl/bn.h
@@ -369,12 +387,13 @@ pk12err.o: ../../include/openssl/dh.h ../../include/openssl/dsa.h
 pk12err.o: ../../include/openssl/e_os2.h ../../include/openssl/err.h
 pk12err.o: ../../include/openssl/evp.h ../../include/openssl/idea.h
 pk12err.o: ../../include/openssl/lhash.h ../../include/openssl/md2.h
-pk12err.o: ../../include/openssl/md5.h ../../include/openssl/mdc2.h
-pk12err.o: ../../include/openssl/obj_mac.h ../../include/openssl/objects.h
-pk12err.o: ../../include/openssl/opensslconf.h ../../include/openssl/opensslv.h
-pk12err.o: ../../include/openssl/pkcs12.h ../../include/openssl/pkcs7.h
-pk12err.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h
-pk12err.o: ../../include/openssl/rc5.h ../../include/openssl/ripemd.h
-pk12err.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
-pk12err.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
+pk12err.o: ../../include/openssl/md4.h ../../include/openssl/md5.h
+pk12err.o: ../../include/openssl/mdc2.h ../../include/openssl/obj_mac.h
+pk12err.o: ../../include/openssl/objects.h ../../include/openssl/opensslconf.h
+pk12err.o: ../../include/openssl/opensslv.h ../../include/openssl/pkcs12.h
+pk12err.o: ../../include/openssl/pkcs7.h ../../include/openssl/rc2.h
+pk12err.o: ../../include/openssl/rc4.h ../../include/openssl/rc5.h
+pk12err.o: ../../include/openssl/ripemd.h ../../include/openssl/rsa.h
+pk12err.o: ../../include/openssl/safestack.h ../../include/openssl/sha.h
+pk12err.o: ../../include/openssl/stack.h ../../include/openssl/symhacks.h
 pk12err.o: ../../include/openssl/x509.h ../../include/openssl/x509_vfy.h
index a5f17c51a772d00cd5511228a1fcf35680a49c83..5641a00898b3a5227062571d496927a806468f7f 100644 (file)
@@ -86,6 +86,8 @@ PKCS12 *PKCS12_create(char *pass, char *name, EVP_PKEY *pkey, X509 *cert,
                return NULL;
        }
 
+       if(!X509_check_private_key(cert, pkey)) return NULL;
+
        if(!(bags = sk_PKCS12_SAFEBAG_new (NULL))) {
                PKCS12err(PKCS12_F_PKCS12_CREATE,ERR_R_MALLOC_FAILURE);
                return NULL;
index 74641f76566c736c871422d2ec948b1cc3209390..1757fc39ac78da61b17bc150ece1b642e8b0bf04 100644 (file)
@@ -105,16 +105,17 @@ pk7_attr.o: ../../include/openssl/dh.h ../../include/openssl/dsa.h
 pk7_attr.o: ../../include/openssl/e_os2.h ../../include/openssl/err.h
 pk7_attr.o: ../../include/openssl/evp.h ../../include/openssl/idea.h
 pk7_attr.o: ../../include/openssl/lhash.h ../../include/openssl/md2.h
-pk7_attr.o: ../../include/openssl/md5.h ../../include/openssl/mdc2.h
-pk7_attr.o: ../../include/openssl/obj_mac.h ../../include/openssl/objects.h
-pk7_attr.o: ../../include/openssl/opensslconf.h
+pk7_attr.o: ../../include/openssl/md4.h ../../include/openssl/md5.h
+pk7_attr.o: ../../include/openssl/mdc2.h ../../include/openssl/obj_mac.h
+pk7_attr.o: ../../include/openssl/objects.h ../../include/openssl/opensslconf.h
 pk7_attr.o: ../../include/openssl/opensslv.h ../../include/openssl/pem.h
 pk7_attr.o: ../../include/openssl/pem2.h ../../include/openssl/pkcs7.h
 pk7_attr.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h
 pk7_attr.o: ../../include/openssl/rc5.h ../../include/openssl/ripemd.h
 pk7_attr.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
 pk7_attr.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
-pk7_attr.o: ../../include/openssl/x509.h ../../include/openssl/x509_vfy.h
+pk7_attr.o: ../../include/openssl/symhacks.h ../../include/openssl/x509.h
+pk7_attr.o: ../../include/openssl/x509_vfy.h
 pk7_doit.o: ../../include/openssl/asn1.h ../../include/openssl/bio.h
 pk7_doit.o: ../../include/openssl/blowfish.h ../../include/openssl/bn.h
 pk7_doit.o: ../../include/openssl/buffer.h ../../include/openssl/cast.h
@@ -124,17 +125,18 @@ pk7_doit.o: ../../include/openssl/dsa.h ../../include/openssl/e_os.h
 pk7_doit.o: ../../include/openssl/e_os.h ../../include/openssl/e_os2.h
 pk7_doit.o: ../../include/openssl/err.h ../../include/openssl/evp.h
 pk7_doit.o: ../../include/openssl/idea.h ../../include/openssl/lhash.h
-pk7_doit.o: ../../include/openssl/md2.h ../../include/openssl/md5.h
-pk7_doit.o: ../../include/openssl/mdc2.h ../../include/openssl/obj_mac.h
-pk7_doit.o: ../../include/openssl/objects.h ../../include/openssl/opensslconf.h
+pk7_doit.o: ../../include/openssl/md2.h ../../include/openssl/md4.h
+pk7_doit.o: ../../include/openssl/md5.h ../../include/openssl/mdc2.h
+pk7_doit.o: ../../include/openssl/obj_mac.h ../../include/openssl/objects.h
+pk7_doit.o: ../../include/openssl/opensslconf.h
 pk7_doit.o: ../../include/openssl/opensslv.h ../../include/openssl/pkcs7.h
 pk7_doit.o: ../../include/openssl/rand.h ../../include/openssl/rc2.h
 pk7_doit.o: ../../include/openssl/rc4.h ../../include/openssl/rc5.h
 pk7_doit.o: ../../include/openssl/ripemd.h ../../include/openssl/rsa.h
 pk7_doit.o: ../../include/openssl/safestack.h ../../include/openssl/sha.h
-pk7_doit.o: ../../include/openssl/stack.h ../../include/openssl/x509.h
-pk7_doit.o: ../../include/openssl/x509_vfy.h ../../include/openssl/x509v3.h
-pk7_doit.o: ../cryptlib.h
+pk7_doit.o: ../../include/openssl/stack.h ../../include/openssl/symhacks.h
+pk7_doit.o: ../../include/openssl/x509.h ../../include/openssl/x509_vfy.h
+pk7_doit.o: ../../include/openssl/x509v3.h ../cryptlib.h
 pk7_lib.o: ../../include/openssl/asn1.h ../../include/openssl/bio.h
 pk7_lib.o: ../../include/openssl/blowfish.h ../../include/openssl/bn.h
 pk7_lib.o: ../../include/openssl/buffer.h ../../include/openssl/cast.h
@@ -143,14 +145,15 @@ pk7_lib.o: ../../include/openssl/dh.h ../../include/openssl/dsa.h
 pk7_lib.o: ../../include/openssl/e_os.h ../../include/openssl/e_os2.h
 pk7_lib.o: ../../include/openssl/err.h ../../include/openssl/evp.h
 pk7_lib.o: ../../include/openssl/idea.h ../../include/openssl/lhash.h
-pk7_lib.o: ../../include/openssl/md2.h ../../include/openssl/md5.h
-pk7_lib.o: ../../include/openssl/mdc2.h ../../include/openssl/obj_mac.h
-pk7_lib.o: ../../include/openssl/objects.h ../../include/openssl/opensslconf.h
-pk7_lib.o: ../../include/openssl/opensslv.h ../../include/openssl/pkcs7.h
-pk7_lib.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h
-pk7_lib.o: ../../include/openssl/rc5.h ../../include/openssl/ripemd.h
-pk7_lib.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
-pk7_lib.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
+pk7_lib.o: ../../include/openssl/md2.h ../../include/openssl/md4.h
+pk7_lib.o: ../../include/openssl/md5.h ../../include/openssl/mdc2.h
+pk7_lib.o: ../../include/openssl/obj_mac.h ../../include/openssl/objects.h
+pk7_lib.o: ../../include/openssl/opensslconf.h ../../include/openssl/opensslv.h
+pk7_lib.o: ../../include/openssl/pkcs7.h ../../include/openssl/rc2.h
+pk7_lib.o: ../../include/openssl/rc4.h ../../include/openssl/rc5.h
+pk7_lib.o: ../../include/openssl/ripemd.h ../../include/openssl/rsa.h
+pk7_lib.o: ../../include/openssl/safestack.h ../../include/openssl/sha.h
+pk7_lib.o: ../../include/openssl/stack.h ../../include/openssl/symhacks.h
 pk7_lib.o: ../../include/openssl/x509.h ../../include/openssl/x509_vfy.h
 pk7_lib.o: ../cryptlib.h
 pk7_mime.o: ../../include/openssl/asn1.h ../../include/openssl/bio.h
@@ -161,16 +164,18 @@ pk7_mime.o: ../../include/openssl/dh.h ../../include/openssl/dsa.h
 pk7_mime.o: ../../include/openssl/e_os.h ../../include/openssl/e_os2.h
 pk7_mime.o: ../../include/openssl/err.h ../../include/openssl/evp.h
 pk7_mime.o: ../../include/openssl/idea.h ../../include/openssl/lhash.h
-pk7_mime.o: ../../include/openssl/md2.h ../../include/openssl/md5.h
-pk7_mime.o: ../../include/openssl/mdc2.h ../../include/openssl/obj_mac.h
-pk7_mime.o: ../../include/openssl/objects.h ../../include/openssl/opensslconf.h
+pk7_mime.o: ../../include/openssl/md2.h ../../include/openssl/md4.h
+pk7_mime.o: ../../include/openssl/md5.h ../../include/openssl/mdc2.h
+pk7_mime.o: ../../include/openssl/obj_mac.h ../../include/openssl/objects.h
+pk7_mime.o: ../../include/openssl/opensslconf.h
 pk7_mime.o: ../../include/openssl/opensslv.h ../../include/openssl/pkcs7.h
 pk7_mime.o: ../../include/openssl/rand.h ../../include/openssl/rc2.h
 pk7_mime.o: ../../include/openssl/rc4.h ../../include/openssl/rc5.h
 pk7_mime.o: ../../include/openssl/ripemd.h ../../include/openssl/rsa.h
 pk7_mime.o: ../../include/openssl/safestack.h ../../include/openssl/sha.h
-pk7_mime.o: ../../include/openssl/stack.h ../../include/openssl/x509.h
-pk7_mime.o: ../../include/openssl/x509_vfy.h ../cryptlib.h
+pk7_mime.o: ../../include/openssl/stack.h ../../include/openssl/symhacks.h
+pk7_mime.o: ../../include/openssl/x509.h ../../include/openssl/x509_vfy.h
+pk7_mime.o: ../cryptlib.h
 pk7_smime.o: ../../include/openssl/asn1.h ../../include/openssl/bio.h
 pk7_smime.o: ../../include/openssl/blowfish.h ../../include/openssl/bn.h
 pk7_smime.o: ../../include/openssl/buffer.h ../../include/openssl/cast.h
@@ -180,17 +185,18 @@ pk7_smime.o: ../../include/openssl/dsa.h ../../include/openssl/e_os.h
 pk7_smime.o: ../../include/openssl/e_os.h ../../include/openssl/e_os2.h
 pk7_smime.o: ../../include/openssl/err.h ../../include/openssl/evp.h
 pk7_smime.o: ../../include/openssl/idea.h ../../include/openssl/lhash.h
-pk7_smime.o: ../../include/openssl/md2.h ../../include/openssl/md5.h
-pk7_smime.o: ../../include/openssl/mdc2.h ../../include/openssl/obj_mac.h
-pk7_smime.o: ../../include/openssl/objects.h
+pk7_smime.o: ../../include/openssl/md2.h ../../include/openssl/md4.h
+pk7_smime.o: ../../include/openssl/md5.h ../../include/openssl/mdc2.h
+pk7_smime.o: ../../include/openssl/obj_mac.h ../../include/openssl/objects.h
 pk7_smime.o: ../../include/openssl/opensslconf.h
 pk7_smime.o: ../../include/openssl/opensslv.h ../../include/openssl/pkcs7.h
 pk7_smime.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h
 pk7_smime.o: ../../include/openssl/rc5.h ../../include/openssl/ripemd.h
 pk7_smime.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
 pk7_smime.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
-pk7_smime.o: ../../include/openssl/x509.h ../../include/openssl/x509_vfy.h
-pk7_smime.o: ../../include/openssl/x509v3.h ../cryptlib.h
+pk7_smime.o: ../../include/openssl/symhacks.h ../../include/openssl/x509.h
+pk7_smime.o: ../../include/openssl/x509_vfy.h ../../include/openssl/x509v3.h
+pk7_smime.o: ../cryptlib.h
 pkcs7err.o: ../../include/openssl/asn1.h ../../include/openssl/bio.h
 pkcs7err.o: ../../include/openssl/blowfish.h ../../include/openssl/bn.h
 pkcs7err.o: ../../include/openssl/buffer.h ../../include/openssl/cast.h
@@ -199,12 +205,13 @@ pkcs7err.o: ../../include/openssl/dh.h ../../include/openssl/dsa.h
 pkcs7err.o: ../../include/openssl/e_os2.h ../../include/openssl/err.h
 pkcs7err.o: ../../include/openssl/evp.h ../../include/openssl/idea.h
 pkcs7err.o: ../../include/openssl/lhash.h ../../include/openssl/md2.h
-pkcs7err.o: ../../include/openssl/md5.h ../../include/openssl/mdc2.h
-pkcs7err.o: ../../include/openssl/obj_mac.h ../../include/openssl/objects.h
-pkcs7err.o: ../../include/openssl/opensslconf.h
+pkcs7err.o: ../../include/openssl/md4.h ../../include/openssl/md5.h
+pkcs7err.o: ../../include/openssl/mdc2.h ../../include/openssl/obj_mac.h
+pkcs7err.o: ../../include/openssl/objects.h ../../include/openssl/opensslconf.h
 pkcs7err.o: ../../include/openssl/opensslv.h ../../include/openssl/pkcs7.h
 pkcs7err.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h
 pkcs7err.o: ../../include/openssl/rc5.h ../../include/openssl/ripemd.h
 pkcs7err.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
 pkcs7err.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
-pkcs7err.o: ../../include/openssl/x509.h ../../include/openssl/x509_vfy.h
+pkcs7err.o: ../../include/openssl/symhacks.h ../../include/openssl/x509.h
+pkcs7err.o: ../../include/openssl/x509_vfy.h
index 9741aa578ecd897a30e34325424afb9c547306ce..a7b692943646a241b55aed7cb70f948bed7d4c8d 100644 (file)
@@ -170,7 +170,7 @@ int SMIME_write_PKCS7(BIO *bio, PKCS7 *p7, BIO *data, int flags)
                BIO_printf(bio, "micalg=sha1 ; boundary=\"----%s\"\n\n", bound);
                BIO_printf(bio, "This is an S/MIME signed message\n\n");
                /* Now write out the first part */
-               BIO_printf(bio, "------%s\r\n", bound);
+               BIO_printf(bio, "------%s\n", bound);
                if(flags & PKCS7_TEXT) BIO_printf(bio, "Content-Type: text/plain\n\n");
                while((i = BIO_read(data, linebuf, MAX_SMLEN)) > 0) 
                                                BIO_write(bio, linebuf, i);
index 225fc63da066d44ce0655629b815f558db4b29bd..19e0b28a396ec0ac203b5ddd5748ed081bcf69ca 100644 (file)
@@ -109,6 +109,8 @@ PKCS7 *PKCS7_sign(X509 *signcert, EVP_PKEY *pkey, STACK_OF(X509) *certs,
                PKCS7_add_signed_attribute(si, NID_pkcs9_contentType,
                                V_ASN1_OBJECT, OBJ_nid2obj(NID_pkcs7_data));
                /* Add SMIMECapabilities */
+               if(!(flags & PKCS7_NOSMIMECAP))
+               {
                if(!(smcap = sk_X509_ALGOR_new(NULL))) {
                        PKCS7err(PKCS7_F_PKCS7_SIGN,ERR_R_MALLOC_FAILURE);
                        return NULL;
@@ -128,6 +130,7 @@ PKCS7 *PKCS7_sign(X509 *signcert, EVP_PKEY *pkey, STACK_OF(X509) *certs,
 #endif
                PKCS7_add_attrib_smimecap (si, smcap);
                sk_X509_ALGOR_pop_free(smcap, X509_ALGOR_free);
+               }
        }
 
        if(flags & PKCS7_DETACHED)PKCS7_set_detached(p7, 1);
index f3f85f57afb3c89beb182b812578654ffaa6dac1..556e84cf211c43cbe1a61291c628421144e59ce4 100644 (file)
@@ -210,6 +210,9 @@ typedef struct pkcs7_st
 
                /* NID_pkcs7_encrypted */
                PKCS7_ENCRYPT *encrypted;
+
+               /* Anything else */
+               ASN1_TYPE *other;
                } d;
        } PKCS7;
 
@@ -244,15 +247,16 @@ DECLARE_PKCS12_STACK_OF(PKCS7)
 
 /* S/MIME related flags */
 
-#define PKCS7_TEXT     0x1
-#define PKCS7_NOCERTS  0x2
-#define PKCS7_NOSIGS   0x4
-#define PKCS7_NOCHAIN  0x8
-#define PKCS7_NOINTERN 0x10
-#define PKCS7_NOVERIFY 0x20
-#define PKCS7_DETACHED 0x40
-#define PKCS7_BINARY   0x80
-#define PKCS7_NOATTR   0x100
+#define PKCS7_TEXT             0x1
+#define PKCS7_NOCERTS          0x2
+#define PKCS7_NOSIGS           0x4
+#define PKCS7_NOCHAIN          0x8
+#define PKCS7_NOINTERN         0x10
+#define PKCS7_NOVERIFY         0x20
+#define PKCS7_DETACHED         0x40
+#define PKCS7_BINARY           0x80
+#define PKCS7_NOATTR           0x100
+#define        PKCS7_NOSMIMECAP        0x200
 
 /* Flags: for compatibility with older code */
 
index 9d5e92b0e99bc944dcacb62d2b41affda7086d56..cffd57154e7d56634a05325f2146de7f50775b69 100644 (file)
@@ -83,12 +83,14 @@ md_rand.o: ../../include/openssl/e_os.h ../../include/openssl/e_os2.h
 md_rand.o: ../../include/openssl/err.h ../../include/openssl/lhash.h
 md_rand.o: ../../include/openssl/opensslconf.h ../../include/openssl/opensslv.h
 md_rand.o: ../../include/openssl/rand.h ../../include/openssl/safestack.h
-md_rand.o: ../../include/openssl/sha.h ../../include/openssl/stack.h rand_lcl.h
+md_rand.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
+md_rand.o: ../../include/openssl/symhacks.h rand_lcl.h
 rand_egd.o: ../../include/openssl/opensslconf.h ../../include/openssl/rand.h
 rand_err.o: ../../include/openssl/bio.h ../../include/openssl/crypto.h
 rand_err.o: ../../include/openssl/err.h ../../include/openssl/lhash.h
 rand_err.o: ../../include/openssl/opensslv.h ../../include/openssl/rand.h
 rand_err.o: ../../include/openssl/safestack.h ../../include/openssl/stack.h
+rand_err.o: ../../include/openssl/symhacks.h
 rand_lib.o: ../../include/openssl/asn1.h ../../include/openssl/bio.h
 rand_lib.o: ../../include/openssl/blowfish.h ../../include/openssl/bn.h
 rand_lib.o: ../../include/openssl/cast.h ../../include/openssl/crypto.h
@@ -96,22 +98,25 @@ rand_lib.o: ../../include/openssl/des.h ../../include/openssl/dh.h
 rand_lib.o: ../../include/openssl/dsa.h ../../include/openssl/e_os2.h
 rand_lib.o: ../../include/openssl/engine.h ../../include/openssl/evp.h
 rand_lib.o: ../../include/openssl/idea.h ../../include/openssl/md2.h
-rand_lib.o: ../../include/openssl/md5.h ../../include/openssl/mdc2.h
-rand_lib.o: ../../include/openssl/obj_mac.h ../../include/openssl/objects.h
-rand_lib.o: ../../include/openssl/opensslconf.h
+rand_lib.o: ../../include/openssl/md4.h ../../include/openssl/md5.h
+rand_lib.o: ../../include/openssl/mdc2.h ../../include/openssl/obj_mac.h
+rand_lib.o: ../../include/openssl/objects.h ../../include/openssl/opensslconf.h
 rand_lib.o: ../../include/openssl/opensslv.h ../../include/openssl/rand.h
 rand_lib.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h
 rand_lib.o: ../../include/openssl/rc5.h ../../include/openssl/ripemd.h
 rand_lib.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
 rand_lib.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
+rand_lib.o: ../../include/openssl/symhacks.h
 rand_win.o: ../../include/openssl/bio.h ../../include/openssl/buffer.h
 rand_win.o: ../../include/openssl/crypto.h ../../include/openssl/e_os.h
 rand_win.o: ../../include/openssl/e_os2.h ../../include/openssl/err.h
 rand_win.o: ../../include/openssl/lhash.h ../../include/openssl/opensslconf.h
 rand_win.o: ../../include/openssl/opensslv.h ../../include/openssl/rand.h
 rand_win.o: ../../include/openssl/safestack.h ../../include/openssl/sha.h
-rand_win.o: ../../include/openssl/stack.h ../cryptlib.h rand_lcl.h
+rand_win.o: ../../include/openssl/stack.h ../../include/openssl/symhacks.h
+rand_win.o: ../cryptlib.h rand_lcl.h
 randfile.o: ../../include/openssl/crypto.h ../../include/openssl/e_os.h
 randfile.o: ../../include/openssl/e_os2.h ../../include/openssl/opensslconf.h
 randfile.o: ../../include/openssl/opensslv.h ../../include/openssl/rand.h
 randfile.o: ../../include/openssl/safestack.h ../../include/openssl/stack.h
+randfile.o: ../../include/openssl/symhacks.h
index 837947e8a622c90307c1f12336f987c424cddcaf..d167dea77db6485bd14427dfb78bb3c6e8c9b1d5 100644 (file)
@@ -182,6 +182,7 @@ static void ssleay_rand_cleanup(void)
        md_count[0]=0;
        md_count[1]=0;
        entropy=0;
+       initialized=0;
        }
 
 static void ssleay_rand_add(const void *buf, int num, double add)
index 5e45b164bce467d649d9440e8995a95120fbe20f..71454a724f5fdbf05e3fe7d2264856fd92c6ad78 100644 (file)
@@ -85,6 +85,7 @@ rsa_chk.o: ../../include/openssl/crypto.h ../../include/openssl/err.h
 rsa_chk.o: ../../include/openssl/lhash.h ../../include/openssl/opensslconf.h
 rsa_chk.o: ../../include/openssl/opensslv.h ../../include/openssl/rsa.h
 rsa_chk.o: ../../include/openssl/safestack.h ../../include/openssl/stack.h
+rsa_chk.o: ../../include/openssl/symhacks.h
 rsa_eay.o: ../../include/openssl/asn1.h ../../include/openssl/bio.h
 rsa_eay.o: ../../include/openssl/blowfish.h ../../include/openssl/bn.h
 rsa_eay.o: ../../include/openssl/buffer.h ../../include/openssl/cast.h
@@ -94,26 +95,29 @@ rsa_eay.o: ../../include/openssl/e_os.h ../../include/openssl/e_os2.h
 rsa_eay.o: ../../include/openssl/engine.h ../../include/openssl/err.h
 rsa_eay.o: ../../include/openssl/evp.h ../../include/openssl/idea.h
 rsa_eay.o: ../../include/openssl/lhash.h ../../include/openssl/md2.h
-rsa_eay.o: ../../include/openssl/md5.h ../../include/openssl/mdc2.h
-rsa_eay.o: ../../include/openssl/obj_mac.h ../../include/openssl/objects.h
-rsa_eay.o: ../../include/openssl/opensslconf.h ../../include/openssl/opensslv.h
-rsa_eay.o: ../../include/openssl/rand.h ../../include/openssl/rc2.h
-rsa_eay.o: ../../include/openssl/rc4.h ../../include/openssl/rc5.h
-rsa_eay.o: ../../include/openssl/ripemd.h ../../include/openssl/rsa.h
-rsa_eay.o: ../../include/openssl/safestack.h ../../include/openssl/sha.h
-rsa_eay.o: ../../include/openssl/stack.h ../cryptlib.h
+rsa_eay.o: ../../include/openssl/md4.h ../../include/openssl/md5.h
+rsa_eay.o: ../../include/openssl/mdc2.h ../../include/openssl/obj_mac.h
+rsa_eay.o: ../../include/openssl/objects.h ../../include/openssl/opensslconf.h
+rsa_eay.o: ../../include/openssl/opensslv.h ../../include/openssl/rand.h
+rsa_eay.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h
+rsa_eay.o: ../../include/openssl/rc5.h ../../include/openssl/ripemd.h
+rsa_eay.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
+rsa_eay.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
+rsa_eay.o: ../../include/openssl/symhacks.h ../cryptlib.h
 rsa_err.o: ../../include/openssl/bio.h ../../include/openssl/bn.h
 rsa_err.o: ../../include/openssl/crypto.h ../../include/openssl/err.h
 rsa_err.o: ../../include/openssl/lhash.h ../../include/openssl/opensslconf.h
 rsa_err.o: ../../include/openssl/opensslv.h ../../include/openssl/rsa.h
 rsa_err.o: ../../include/openssl/safestack.h ../../include/openssl/stack.h
+rsa_err.o: ../../include/openssl/symhacks.h
 rsa_gen.o: ../../include/openssl/bio.h ../../include/openssl/bn.h
 rsa_gen.o: ../../include/openssl/buffer.h ../../include/openssl/crypto.h
 rsa_gen.o: ../../include/openssl/e_os.h ../../include/openssl/e_os2.h
 rsa_gen.o: ../../include/openssl/err.h ../../include/openssl/lhash.h
 rsa_gen.o: ../../include/openssl/opensslconf.h ../../include/openssl/opensslv.h
 rsa_gen.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
-rsa_gen.o: ../../include/openssl/stack.h ../cryptlib.h
+rsa_gen.o: ../../include/openssl/stack.h ../../include/openssl/symhacks.h
+rsa_gen.o: ../cryptlib.h
 rsa_lib.o: ../../include/openssl/asn1.h ../../include/openssl/bio.h
 rsa_lib.o: ../../include/openssl/blowfish.h ../../include/openssl/bn.h
 rsa_lib.o: ../../include/openssl/buffer.h ../../include/openssl/cast.h
@@ -123,14 +127,15 @@ rsa_lib.o: ../../include/openssl/e_os.h ../../include/openssl/e_os2.h
 rsa_lib.o: ../../include/openssl/engine.h ../../include/openssl/err.h
 rsa_lib.o: ../../include/openssl/evp.h ../../include/openssl/idea.h
 rsa_lib.o: ../../include/openssl/lhash.h ../../include/openssl/md2.h
-rsa_lib.o: ../../include/openssl/md5.h ../../include/openssl/mdc2.h
-rsa_lib.o: ../../include/openssl/obj_mac.h ../../include/openssl/objects.h
-rsa_lib.o: ../../include/openssl/opensslconf.h ../../include/openssl/opensslv.h
-rsa_lib.o: ../../include/openssl/rand.h ../../include/openssl/rc2.h
-rsa_lib.o: ../../include/openssl/rc4.h ../../include/openssl/rc5.h
-rsa_lib.o: ../../include/openssl/ripemd.h ../../include/openssl/rsa.h
-rsa_lib.o: ../../include/openssl/safestack.h ../../include/openssl/sha.h
-rsa_lib.o: ../../include/openssl/stack.h ../cryptlib.h
+rsa_lib.o: ../../include/openssl/md4.h ../../include/openssl/md5.h
+rsa_lib.o: ../../include/openssl/mdc2.h ../../include/openssl/obj_mac.h
+rsa_lib.o: ../../include/openssl/objects.h ../../include/openssl/opensslconf.h
+rsa_lib.o: ../../include/openssl/opensslv.h ../../include/openssl/rand.h
+rsa_lib.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h
+rsa_lib.o: ../../include/openssl/rc5.h ../../include/openssl/ripemd.h
+rsa_lib.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
+rsa_lib.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
+rsa_lib.o: ../../include/openssl/symhacks.h ../cryptlib.h
 rsa_none.o: ../../include/openssl/bio.h ../../include/openssl/bn.h
 rsa_none.o: ../../include/openssl/buffer.h ../../include/openssl/crypto.h
 rsa_none.o: ../../include/openssl/e_os.h ../../include/openssl/e_os2.h
@@ -138,7 +143,8 @@ rsa_none.o: ../../include/openssl/err.h ../../include/openssl/lhash.h
 rsa_none.o: ../../include/openssl/opensslconf.h
 rsa_none.o: ../../include/openssl/opensslv.h ../../include/openssl/rand.h
 rsa_none.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
-rsa_none.o: ../../include/openssl/stack.h ../cryptlib.h
+rsa_none.o: ../../include/openssl/stack.h ../../include/openssl/symhacks.h
+rsa_none.o: ../cryptlib.h
 rsa_null.o: ../../include/openssl/bio.h ../../include/openssl/bn.h
 rsa_null.o: ../../include/openssl/buffer.h ../../include/openssl/crypto.h
 rsa_null.o: ../../include/openssl/e_os.h ../../include/openssl/e_os2.h
@@ -146,7 +152,8 @@ rsa_null.o: ../../include/openssl/err.h ../../include/openssl/lhash.h
 rsa_null.o: ../../include/openssl/opensslconf.h
 rsa_null.o: ../../include/openssl/opensslv.h ../../include/openssl/rand.h
 rsa_null.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
-rsa_null.o: ../../include/openssl/stack.h ../cryptlib.h
+rsa_null.o: ../../include/openssl/stack.h ../../include/openssl/symhacks.h
+rsa_null.o: ../cryptlib.h
 rsa_oaep.o: ../../include/openssl/bio.h ../../include/openssl/bn.h
 rsa_oaep.o: ../../include/openssl/buffer.h ../../include/openssl/crypto.h
 rsa_oaep.o: ../../include/openssl/e_os.h ../../include/openssl/e_os2.h
@@ -155,7 +162,7 @@ rsa_oaep.o: ../../include/openssl/opensslconf.h
 rsa_oaep.o: ../../include/openssl/opensslv.h ../../include/openssl/rand.h
 rsa_oaep.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
 rsa_oaep.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
-rsa_oaep.o: ../cryptlib.h
+rsa_oaep.o: ../../include/openssl/symhacks.h ../cryptlib.h
 rsa_pk1.o: ../../include/openssl/bio.h ../../include/openssl/bn.h
 rsa_pk1.o: ../../include/openssl/buffer.h ../../include/openssl/crypto.h
 rsa_pk1.o: ../../include/openssl/e_os.h ../../include/openssl/e_os2.h
@@ -163,7 +170,7 @@ rsa_pk1.o: ../../include/openssl/err.h ../../include/openssl/lhash.h
 rsa_pk1.o: ../../include/openssl/opensslconf.h ../../include/openssl/opensslv.h
 rsa_pk1.o: ../../include/openssl/rand.h ../../include/openssl/rsa.h
 rsa_pk1.o: ../../include/openssl/safestack.h ../../include/openssl/stack.h
-rsa_pk1.o: ../cryptlib.h
+rsa_pk1.o: ../../include/openssl/symhacks.h ../cryptlib.h
 rsa_saos.o: ../../include/openssl/asn1.h ../../include/openssl/bio.h
 rsa_saos.o: ../../include/openssl/blowfish.h ../../include/openssl/bn.h
 rsa_saos.o: ../../include/openssl/buffer.h ../../include/openssl/cast.h
@@ -172,16 +179,17 @@ rsa_saos.o: ../../include/openssl/dh.h ../../include/openssl/dsa.h
 rsa_saos.o: ../../include/openssl/e_os.h ../../include/openssl/e_os2.h
 rsa_saos.o: ../../include/openssl/err.h ../../include/openssl/evp.h
 rsa_saos.o: ../../include/openssl/idea.h ../../include/openssl/lhash.h
-rsa_saos.o: ../../include/openssl/md2.h ../../include/openssl/md5.h
-rsa_saos.o: ../../include/openssl/mdc2.h ../../include/openssl/obj_mac.h
-rsa_saos.o: ../../include/openssl/objects.h ../../include/openssl/opensslconf.h
+rsa_saos.o: ../../include/openssl/md2.h ../../include/openssl/md4.h
+rsa_saos.o: ../../include/openssl/md5.h ../../include/openssl/mdc2.h
+rsa_saos.o: ../../include/openssl/obj_mac.h ../../include/openssl/objects.h
+rsa_saos.o: ../../include/openssl/opensslconf.h
 rsa_saos.o: ../../include/openssl/opensslv.h ../../include/openssl/pkcs7.h
 rsa_saos.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h
 rsa_saos.o: ../../include/openssl/rc5.h ../../include/openssl/ripemd.h
 rsa_saos.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
 rsa_saos.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
-rsa_saos.o: ../../include/openssl/x509.h ../../include/openssl/x509_vfy.h
-rsa_saos.o: ../cryptlib.h
+rsa_saos.o: ../../include/openssl/symhacks.h ../../include/openssl/x509.h
+rsa_saos.o: ../../include/openssl/x509_vfy.h ../cryptlib.h
 rsa_sign.o: ../../include/openssl/asn1.h ../../include/openssl/bio.h
 rsa_sign.o: ../../include/openssl/blowfish.h ../../include/openssl/bn.h
 rsa_sign.o: ../../include/openssl/buffer.h ../../include/openssl/cast.h
@@ -191,16 +199,17 @@ rsa_sign.o: ../../include/openssl/e_os.h ../../include/openssl/e_os2.h
 rsa_sign.o: ../../include/openssl/engine.h ../../include/openssl/err.h
 rsa_sign.o: ../../include/openssl/evp.h ../../include/openssl/idea.h
 rsa_sign.o: ../../include/openssl/lhash.h ../../include/openssl/md2.h
-rsa_sign.o: ../../include/openssl/md5.h ../../include/openssl/mdc2.h
-rsa_sign.o: ../../include/openssl/obj_mac.h ../../include/openssl/objects.h
-rsa_sign.o: ../../include/openssl/opensslconf.h
+rsa_sign.o: ../../include/openssl/md4.h ../../include/openssl/md5.h
+rsa_sign.o: ../../include/openssl/mdc2.h ../../include/openssl/obj_mac.h
+rsa_sign.o: ../../include/openssl/objects.h ../../include/openssl/opensslconf.h
 rsa_sign.o: ../../include/openssl/opensslv.h ../../include/openssl/pkcs7.h
 rsa_sign.o: ../../include/openssl/rand.h ../../include/openssl/rc2.h
 rsa_sign.o: ../../include/openssl/rc4.h ../../include/openssl/rc5.h
 rsa_sign.o: ../../include/openssl/ripemd.h ../../include/openssl/rsa.h
 rsa_sign.o: ../../include/openssl/safestack.h ../../include/openssl/sha.h
-rsa_sign.o: ../../include/openssl/stack.h ../../include/openssl/x509.h
-rsa_sign.o: ../../include/openssl/x509_vfy.h ../cryptlib.h
+rsa_sign.o: ../../include/openssl/stack.h ../../include/openssl/symhacks.h
+rsa_sign.o: ../../include/openssl/x509.h ../../include/openssl/x509_vfy.h
+rsa_sign.o: ../cryptlib.h
 rsa_ssl.o: ../../include/openssl/bio.h ../../include/openssl/bn.h
 rsa_ssl.o: ../../include/openssl/buffer.h ../../include/openssl/crypto.h
 rsa_ssl.o: ../../include/openssl/e_os.h ../../include/openssl/e_os2.h
@@ -208,4 +217,4 @@ rsa_ssl.o: ../../include/openssl/err.h ../../include/openssl/lhash.h
 rsa_ssl.o: ../../include/openssl/opensslconf.h ../../include/openssl/opensslv.h
 rsa_ssl.o: ../../include/openssl/rand.h ../../include/openssl/rsa.h
 rsa_ssl.o: ../../include/openssl/safestack.h ../../include/openssl/stack.h
-rsa_ssl.o: ../cryptlib.h
+rsa_ssl.o: ../../include/openssl/symhacks.h ../cryptlib.h
index 77149d78a2a0fe25a825a9e1babec13757ef6475..69d0a1cf6884309872f15fca6008ff9db75e9710 100644 (file)
@@ -83,4 +83,5 @@ stack.o: ../../include/openssl/crypto.h ../../include/openssl/e_os.h
 stack.o: ../../include/openssl/e_os2.h ../../include/openssl/err.h
 stack.o: ../../include/openssl/lhash.h ../../include/openssl/opensslconf.h
 stack.o: ../../include/openssl/opensslv.h ../../include/openssl/safestack.h
-stack.o: ../../include/openssl/stack.h ../cryptlib.h
+stack.o: ../../include/openssl/stack.h ../../include/openssl/symhacks.h
+stack.o: ../cryptlib.h
index f22c1f9fb358d0bcbc65b59dd5591b41d3821cdb..9fa63e1be5ef0d2d6a706d2ef739a73d5dbc688c 100644 (file)
@@ -864,6 +864,26 @@ STACK_OF(type) \
 #define sk_X509_NAME_ENTRY_pop(st) SKM_sk_pop(X509_NAME_ENTRY, (st))
 #define sk_X509_NAME_ENTRY_sort(st) SKM_sk_sort(X509_NAME_ENTRY, (st))
 
+#define sk_X509_OBJECT_new(st) SKM_sk_new(X509_OBJECT, (st))
+#define sk_X509_OBJECT_new_null() SKM_sk_new_null(X509_OBJECT)
+#define sk_X509_OBJECT_free(st) SKM_sk_free(X509_OBJECT, (st))
+#define sk_X509_OBJECT_num(st) SKM_sk_num(X509_OBJECT, (st))
+#define sk_X509_OBJECT_value(st, i) SKM_sk_value(X509_OBJECT, (st), (i))
+#define sk_X509_OBJECT_set(st, i, val) SKM_sk_set(X509_OBJECT, (st), (i), (val))
+#define sk_X509_OBJECT_zero(st) SKM_sk_zero(X509_OBJECT, (st))
+#define sk_X509_OBJECT_push(st, val) SKM_sk_push(X509_OBJECT, (st), (val))
+#define sk_X509_OBJECT_unshift(st, val) SKM_sk_unshift(X509_OBJECT, (st), (val))
+#define sk_X509_OBJECT_find(st, val) SKM_sk_find(X509_OBJECT, (st), (val))
+#define sk_X509_OBJECT_delete(st, i) SKM_sk_delete(X509_OBJECT, (st), (i))
+#define sk_X509_OBJECT_delete_ptr(st, ptr) SKM_sk_delete_ptr(X509_OBJECT, (st), (ptr))
+#define sk_X509_OBJECT_insert(st, val, i) SKM_sk_insert(X509_OBJECT, (st), (val), (i))
+#define sk_X509_OBJECT_set_cmp_func(st, cmp) SKM_sk_set_cmp_func(X509_OBJECT, (st), (cmp))
+#define sk_X509_OBJECT_dup(st) SKM_sk_dup(X509_OBJECT, st)
+#define sk_X509_OBJECT_pop_free(st, free_func) SKM_sk_pop_free(X509_OBJECT, (st), (free_func))
+#define sk_X509_OBJECT_shift(st) SKM_sk_shift(X509_OBJECT, (st))
+#define sk_X509_OBJECT_pop(st) SKM_sk_pop(X509_OBJECT, (st))
+#define sk_X509_OBJECT_sort(st) SKM_sk_sort(X509_OBJECT, (st))
+
 #define sk_X509_PURPOSE_new(st) SKM_sk_new(X509_PURPOSE, (st))
 #define sk_X509_PURPOSE_new_null() SKM_sk_new_null(X509_PURPOSE)
 #define sk_X509_PURPOSE_free(st) SKM_sk_free(X509_PURPOSE, (st))
index 83ee50b7064c92a368ffea0a198b59b14d319474..0e900ce7485b682bf3b2b112677ec6d856315bb5 100644 (file)
@@ -83,5 +83,5 @@ txt_db.o: ../../include/openssl/crypto.h ../../include/openssl/e_os.h
 txt_db.o: ../../include/openssl/e_os2.h ../../include/openssl/err.h
 txt_db.o: ../../include/openssl/lhash.h ../../include/openssl/opensslconf.h
 txt_db.o: ../../include/openssl/opensslv.h ../../include/openssl/safestack.h
-txt_db.o: ../../include/openssl/stack.h ../../include/openssl/txt_db.h
-txt_db.o: ../cryptlib.h
+txt_db.o: ../../include/openssl/stack.h ../../include/openssl/symhacks.h
+txt_db.o: ../../include/openssl/txt_db.h ../cryptlib.h
index 50db663ea86dd0d391e5848c5a6078ba178ccc7b..f8e59666c99f31ed2d80c5c2b096403cb111c5fc 100644 (file)
@@ -96,14 +96,15 @@ by_dir.o: ../../include/openssl/dh.h ../../include/openssl/dsa.h
 by_dir.o: ../../include/openssl/e_os.h ../../include/openssl/e_os2.h
 by_dir.o: ../../include/openssl/err.h ../../include/openssl/evp.h
 by_dir.o: ../../include/openssl/idea.h ../../include/openssl/lhash.h
-by_dir.o: ../../include/openssl/md2.h ../../include/openssl/md5.h
-by_dir.o: ../../include/openssl/mdc2.h ../../include/openssl/obj_mac.h
-by_dir.o: ../../include/openssl/objects.h ../../include/openssl/opensslconf.h
-by_dir.o: ../../include/openssl/opensslv.h ../../include/openssl/pkcs7.h
-by_dir.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h
-by_dir.o: ../../include/openssl/rc5.h ../../include/openssl/ripemd.h
-by_dir.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
-by_dir.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
+by_dir.o: ../../include/openssl/md2.h ../../include/openssl/md4.h
+by_dir.o: ../../include/openssl/md5.h ../../include/openssl/mdc2.h
+by_dir.o: ../../include/openssl/obj_mac.h ../../include/openssl/objects.h
+by_dir.o: ../../include/openssl/opensslconf.h ../../include/openssl/opensslv.h
+by_dir.o: ../../include/openssl/pkcs7.h ../../include/openssl/rc2.h
+by_dir.o: ../../include/openssl/rc4.h ../../include/openssl/rc5.h
+by_dir.o: ../../include/openssl/ripemd.h ../../include/openssl/rsa.h
+by_dir.o: ../../include/openssl/safestack.h ../../include/openssl/sha.h
+by_dir.o: ../../include/openssl/stack.h ../../include/openssl/symhacks.h
 by_dir.o: ../../include/openssl/x509.h ../../include/openssl/x509_vfy.h
 by_dir.o: ../cryptlib.h
 by_file.o: ../../include/openssl/asn1.h ../../include/openssl/bio.h
@@ -114,15 +115,16 @@ by_file.o: ../../include/openssl/dh.h ../../include/openssl/dsa.h
 by_file.o: ../../include/openssl/e_os.h ../../include/openssl/e_os2.h
 by_file.o: ../../include/openssl/err.h ../../include/openssl/evp.h
 by_file.o: ../../include/openssl/idea.h ../../include/openssl/lhash.h
-by_file.o: ../../include/openssl/md2.h ../../include/openssl/md5.h
-by_file.o: ../../include/openssl/mdc2.h ../../include/openssl/obj_mac.h
-by_file.o: ../../include/openssl/objects.h ../../include/openssl/opensslconf.h
-by_file.o: ../../include/openssl/opensslv.h ../../include/openssl/pem.h
-by_file.o: ../../include/openssl/pem2.h ../../include/openssl/pkcs7.h
-by_file.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h
-by_file.o: ../../include/openssl/rc5.h ../../include/openssl/ripemd.h
-by_file.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
-by_file.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
+by_file.o: ../../include/openssl/md2.h ../../include/openssl/md4.h
+by_file.o: ../../include/openssl/md5.h ../../include/openssl/mdc2.h
+by_file.o: ../../include/openssl/obj_mac.h ../../include/openssl/objects.h
+by_file.o: ../../include/openssl/opensslconf.h ../../include/openssl/opensslv.h
+by_file.o: ../../include/openssl/pem.h ../../include/openssl/pem2.h
+by_file.o: ../../include/openssl/pkcs7.h ../../include/openssl/rc2.h
+by_file.o: ../../include/openssl/rc4.h ../../include/openssl/rc5.h
+by_file.o: ../../include/openssl/ripemd.h ../../include/openssl/rsa.h
+by_file.o: ../../include/openssl/safestack.h ../../include/openssl/sha.h
+by_file.o: ../../include/openssl/stack.h ../../include/openssl/symhacks.h
 by_file.o: ../../include/openssl/x509.h ../../include/openssl/x509_vfy.h
 by_file.o: ../cryptlib.h
 x509_att.o: ../../include/openssl/asn1.h ../../include/openssl/bio.h
@@ -134,16 +136,18 @@ x509_att.o: ../../include/openssl/dsa.h ../../include/openssl/e_os.h
 x509_att.o: ../../include/openssl/e_os.h ../../include/openssl/e_os2.h
 x509_att.o: ../../include/openssl/err.h ../../include/openssl/evp.h
 x509_att.o: ../../include/openssl/idea.h ../../include/openssl/lhash.h
-x509_att.o: ../../include/openssl/md2.h ../../include/openssl/md5.h
-x509_att.o: ../../include/openssl/mdc2.h ../../include/openssl/obj_mac.h
-x509_att.o: ../../include/openssl/objects.h ../../include/openssl/opensslconf.h
+x509_att.o: ../../include/openssl/md2.h ../../include/openssl/md4.h
+x509_att.o: ../../include/openssl/md5.h ../../include/openssl/mdc2.h
+x509_att.o: ../../include/openssl/obj_mac.h ../../include/openssl/objects.h
+x509_att.o: ../../include/openssl/opensslconf.h
 x509_att.o: ../../include/openssl/opensslv.h ../../include/openssl/pkcs7.h
 x509_att.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h
 x509_att.o: ../../include/openssl/rc5.h ../../include/openssl/ripemd.h
 x509_att.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
 x509_att.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
-x509_att.o: ../../include/openssl/x509.h ../../include/openssl/x509_vfy.h
-x509_att.o: ../../include/openssl/x509v3.h ../cryptlib.h
+x509_att.o: ../../include/openssl/symhacks.h ../../include/openssl/x509.h
+x509_att.o: ../../include/openssl/x509_vfy.h ../../include/openssl/x509v3.h
+x509_att.o: ../cryptlib.h
 x509_cmp.o: ../../include/openssl/asn1.h ../../include/openssl/bio.h
 x509_cmp.o: ../../include/openssl/blowfish.h ../../include/openssl/bn.h
 x509_cmp.o: ../../include/openssl/buffer.h ../../include/openssl/cast.h
@@ -153,16 +157,18 @@ x509_cmp.o: ../../include/openssl/dsa.h ../../include/openssl/e_os.h
 x509_cmp.o: ../../include/openssl/e_os.h ../../include/openssl/e_os2.h
 x509_cmp.o: ../../include/openssl/err.h ../../include/openssl/evp.h
 x509_cmp.o: ../../include/openssl/idea.h ../../include/openssl/lhash.h
-x509_cmp.o: ../../include/openssl/md2.h ../../include/openssl/md5.h
-x509_cmp.o: ../../include/openssl/mdc2.h ../../include/openssl/obj_mac.h
-x509_cmp.o: ../../include/openssl/objects.h ../../include/openssl/opensslconf.h
+x509_cmp.o: ../../include/openssl/md2.h ../../include/openssl/md4.h
+x509_cmp.o: ../../include/openssl/md5.h ../../include/openssl/mdc2.h
+x509_cmp.o: ../../include/openssl/obj_mac.h ../../include/openssl/objects.h
+x509_cmp.o: ../../include/openssl/opensslconf.h
 x509_cmp.o: ../../include/openssl/opensslv.h ../../include/openssl/pkcs7.h
 x509_cmp.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h
 x509_cmp.o: ../../include/openssl/rc5.h ../../include/openssl/ripemd.h
 x509_cmp.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
 x509_cmp.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
-x509_cmp.o: ../../include/openssl/x509.h ../../include/openssl/x509_vfy.h
-x509_cmp.o: ../../include/openssl/x509v3.h ../cryptlib.h
+x509_cmp.o: ../../include/openssl/symhacks.h ../../include/openssl/x509.h
+x509_cmp.o: ../../include/openssl/x509_vfy.h ../../include/openssl/x509v3.h
+x509_cmp.o: ../cryptlib.h
 x509_d2.o: ../../include/openssl/asn1.h ../../include/openssl/bio.h
 x509_d2.o: ../../include/openssl/blowfish.h ../../include/openssl/bn.h
 x509_d2.o: ../../include/openssl/buffer.h ../../include/openssl/cast.h
@@ -171,14 +177,15 @@ x509_d2.o: ../../include/openssl/dh.h ../../include/openssl/dsa.h
 x509_d2.o: ../../include/openssl/e_os.h ../../include/openssl/e_os2.h
 x509_d2.o: ../../include/openssl/err.h ../../include/openssl/evp.h
 x509_d2.o: ../../include/openssl/idea.h ../../include/openssl/lhash.h
-x509_d2.o: ../../include/openssl/md2.h ../../include/openssl/md5.h
-x509_d2.o: ../../include/openssl/mdc2.h ../../include/openssl/obj_mac.h
-x509_d2.o: ../../include/openssl/objects.h ../../include/openssl/opensslconf.h
-x509_d2.o: ../../include/openssl/opensslv.h ../../include/openssl/pkcs7.h
-x509_d2.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h
-x509_d2.o: ../../include/openssl/rc5.h ../../include/openssl/ripemd.h
-x509_d2.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
-x509_d2.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
+x509_d2.o: ../../include/openssl/md2.h ../../include/openssl/md4.h
+x509_d2.o: ../../include/openssl/md5.h ../../include/openssl/mdc2.h
+x509_d2.o: ../../include/openssl/obj_mac.h ../../include/openssl/objects.h
+x509_d2.o: ../../include/openssl/opensslconf.h ../../include/openssl/opensslv.h
+x509_d2.o: ../../include/openssl/pkcs7.h ../../include/openssl/rc2.h
+x509_d2.o: ../../include/openssl/rc4.h ../../include/openssl/rc5.h
+x509_d2.o: ../../include/openssl/ripemd.h ../../include/openssl/rsa.h
+x509_d2.o: ../../include/openssl/safestack.h ../../include/openssl/sha.h
+x509_d2.o: ../../include/openssl/stack.h ../../include/openssl/symhacks.h
 x509_d2.o: ../../include/openssl/x509.h ../../include/openssl/x509_vfy.h
 x509_d2.o: ../cryptlib.h
 x509_def.o: ../../include/openssl/asn1.h ../../include/openssl/bio.h
@@ -189,16 +196,17 @@ x509_def.o: ../../include/openssl/dh.h ../../include/openssl/dsa.h
 x509_def.o: ../../include/openssl/e_os.h ../../include/openssl/e_os2.h
 x509_def.o: ../../include/openssl/err.h ../../include/openssl/evp.h
 x509_def.o: ../../include/openssl/idea.h ../../include/openssl/lhash.h
-x509_def.o: ../../include/openssl/md2.h ../../include/openssl/md5.h
-x509_def.o: ../../include/openssl/mdc2.h ../../include/openssl/obj_mac.h
-x509_def.o: ../../include/openssl/objects.h ../../include/openssl/opensslconf.h
+x509_def.o: ../../include/openssl/md2.h ../../include/openssl/md4.h
+x509_def.o: ../../include/openssl/md5.h ../../include/openssl/mdc2.h
+x509_def.o: ../../include/openssl/obj_mac.h ../../include/openssl/objects.h
+x509_def.o: ../../include/openssl/opensslconf.h
 x509_def.o: ../../include/openssl/opensslv.h ../../include/openssl/pkcs7.h
 x509_def.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h
 x509_def.o: ../../include/openssl/rc5.h ../../include/openssl/ripemd.h
 x509_def.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
 x509_def.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
-x509_def.o: ../../include/openssl/x509.h ../../include/openssl/x509_vfy.h
-x509_def.o: ../cryptlib.h
+x509_def.o: ../../include/openssl/symhacks.h ../../include/openssl/x509.h
+x509_def.o: ../../include/openssl/x509_vfy.h ../cryptlib.h
 x509_err.o: ../../include/openssl/asn1.h ../../include/openssl/bio.h
 x509_err.o: ../../include/openssl/blowfish.h ../../include/openssl/bn.h
 x509_err.o: ../../include/openssl/buffer.h ../../include/openssl/cast.h
@@ -207,15 +215,16 @@ x509_err.o: ../../include/openssl/dh.h ../../include/openssl/dsa.h
 x509_err.o: ../../include/openssl/e_os2.h ../../include/openssl/err.h
 x509_err.o: ../../include/openssl/evp.h ../../include/openssl/idea.h
 x509_err.o: ../../include/openssl/lhash.h ../../include/openssl/md2.h
-x509_err.o: ../../include/openssl/md5.h ../../include/openssl/mdc2.h
-x509_err.o: ../../include/openssl/obj_mac.h ../../include/openssl/objects.h
-x509_err.o: ../../include/openssl/opensslconf.h
+x509_err.o: ../../include/openssl/md4.h ../../include/openssl/md5.h
+x509_err.o: ../../include/openssl/mdc2.h ../../include/openssl/obj_mac.h
+x509_err.o: ../../include/openssl/objects.h ../../include/openssl/opensslconf.h
 x509_err.o: ../../include/openssl/opensslv.h ../../include/openssl/pkcs7.h
 x509_err.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h
 x509_err.o: ../../include/openssl/rc5.h ../../include/openssl/ripemd.h
 x509_err.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
 x509_err.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
-x509_err.o: ../../include/openssl/x509.h ../../include/openssl/x509_vfy.h
+x509_err.o: ../../include/openssl/symhacks.h ../../include/openssl/x509.h
+x509_err.o: ../../include/openssl/x509_vfy.h
 x509_ext.o: ../../include/openssl/asn1.h ../../include/openssl/bio.h
 x509_ext.o: ../../include/openssl/blowfish.h ../../include/openssl/bn.h
 x509_ext.o: ../../include/openssl/buffer.h ../../include/openssl/cast.h
@@ -225,16 +234,18 @@ x509_ext.o: ../../include/openssl/dsa.h ../../include/openssl/e_os.h
 x509_ext.o: ../../include/openssl/e_os.h ../../include/openssl/e_os2.h
 x509_ext.o: ../../include/openssl/err.h ../../include/openssl/evp.h
 x509_ext.o: ../../include/openssl/idea.h ../../include/openssl/lhash.h
-x509_ext.o: ../../include/openssl/md2.h ../../include/openssl/md5.h
-x509_ext.o: ../../include/openssl/mdc2.h ../../include/openssl/obj_mac.h
-x509_ext.o: ../../include/openssl/objects.h ../../include/openssl/opensslconf.h
+x509_ext.o: ../../include/openssl/md2.h ../../include/openssl/md4.h
+x509_ext.o: ../../include/openssl/md5.h ../../include/openssl/mdc2.h
+x509_ext.o: ../../include/openssl/obj_mac.h ../../include/openssl/objects.h
+x509_ext.o: ../../include/openssl/opensslconf.h
 x509_ext.o: ../../include/openssl/opensslv.h ../../include/openssl/pkcs7.h
 x509_ext.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h
 x509_ext.o: ../../include/openssl/rc5.h ../../include/openssl/ripemd.h
 x509_ext.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
 x509_ext.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
-x509_ext.o: ../../include/openssl/x509.h ../../include/openssl/x509_vfy.h
-x509_ext.o: ../../include/openssl/x509v3.h ../cryptlib.h
+x509_ext.o: ../../include/openssl/symhacks.h ../../include/openssl/x509.h
+x509_ext.o: ../../include/openssl/x509_vfy.h ../../include/openssl/x509v3.h
+x509_ext.o: ../cryptlib.h
 x509_lu.o: ../../include/openssl/asn1.h ../../include/openssl/bio.h
 x509_lu.o: ../../include/openssl/blowfish.h ../../include/openssl/bn.h
 x509_lu.o: ../../include/openssl/buffer.h ../../include/openssl/cast.h
@@ -243,14 +254,15 @@ x509_lu.o: ../../include/openssl/dh.h ../../include/openssl/dsa.h
 x509_lu.o: ../../include/openssl/e_os.h ../../include/openssl/e_os2.h
 x509_lu.o: ../../include/openssl/err.h ../../include/openssl/evp.h
 x509_lu.o: ../../include/openssl/idea.h ../../include/openssl/lhash.h
-x509_lu.o: ../../include/openssl/md2.h ../../include/openssl/md5.h
-x509_lu.o: ../../include/openssl/mdc2.h ../../include/openssl/obj_mac.h
-x509_lu.o: ../../include/openssl/objects.h ../../include/openssl/opensslconf.h
-x509_lu.o: ../../include/openssl/opensslv.h ../../include/openssl/pkcs7.h
-x509_lu.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h
-x509_lu.o: ../../include/openssl/rc5.h ../../include/openssl/ripemd.h
-x509_lu.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
-x509_lu.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
+x509_lu.o: ../../include/openssl/md2.h ../../include/openssl/md4.h
+x509_lu.o: ../../include/openssl/md5.h ../../include/openssl/mdc2.h
+x509_lu.o: ../../include/openssl/obj_mac.h ../../include/openssl/objects.h
+x509_lu.o: ../../include/openssl/opensslconf.h ../../include/openssl/opensslv.h
+x509_lu.o: ../../include/openssl/pkcs7.h ../../include/openssl/rc2.h
+x509_lu.o: ../../include/openssl/rc4.h ../../include/openssl/rc5.h
+x509_lu.o: ../../include/openssl/ripemd.h ../../include/openssl/rsa.h
+x509_lu.o: ../../include/openssl/safestack.h ../../include/openssl/sha.h
+x509_lu.o: ../../include/openssl/stack.h ../../include/openssl/symhacks.h
 x509_lu.o: ../../include/openssl/x509.h ../../include/openssl/x509_vfy.h
 x509_lu.o: ../cryptlib.h
 x509_obj.o: ../../include/openssl/asn1.h ../../include/openssl/bio.h
@@ -261,16 +273,17 @@ x509_obj.o: ../../include/openssl/dh.h ../../include/openssl/dsa.h
 x509_obj.o: ../../include/openssl/e_os.h ../../include/openssl/e_os2.h
 x509_obj.o: ../../include/openssl/err.h ../../include/openssl/evp.h
 x509_obj.o: ../../include/openssl/idea.h ../../include/openssl/lhash.h
-x509_obj.o: ../../include/openssl/md2.h ../../include/openssl/md5.h
-x509_obj.o: ../../include/openssl/mdc2.h ../../include/openssl/obj_mac.h
-x509_obj.o: ../../include/openssl/objects.h ../../include/openssl/opensslconf.h
+x509_obj.o: ../../include/openssl/md2.h ../../include/openssl/md4.h
+x509_obj.o: ../../include/openssl/md5.h ../../include/openssl/mdc2.h
+x509_obj.o: ../../include/openssl/obj_mac.h ../../include/openssl/objects.h
+x509_obj.o: ../../include/openssl/opensslconf.h
 x509_obj.o: ../../include/openssl/opensslv.h ../../include/openssl/pkcs7.h
 x509_obj.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h
 x509_obj.o: ../../include/openssl/rc5.h ../../include/openssl/ripemd.h
 x509_obj.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
 x509_obj.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
-x509_obj.o: ../../include/openssl/x509.h ../../include/openssl/x509_vfy.h
-x509_obj.o: ../cryptlib.h
+x509_obj.o: ../../include/openssl/symhacks.h ../../include/openssl/x509.h
+x509_obj.o: ../../include/openssl/x509_vfy.h ../cryptlib.h
 x509_r2x.o: ../../include/openssl/asn1.h ../../include/openssl/bio.h
 x509_r2x.o: ../../include/openssl/blowfish.h ../../include/openssl/bn.h
 x509_r2x.o: ../../include/openssl/buffer.h ../../include/openssl/cast.h
@@ -279,16 +292,17 @@ x509_r2x.o: ../../include/openssl/dh.h ../../include/openssl/dsa.h
 x509_r2x.o: ../../include/openssl/e_os.h ../../include/openssl/e_os2.h
 x509_r2x.o: ../../include/openssl/err.h ../../include/openssl/evp.h
 x509_r2x.o: ../../include/openssl/idea.h ../../include/openssl/lhash.h
-x509_r2x.o: ../../include/openssl/md2.h ../../include/openssl/md5.h
-x509_r2x.o: ../../include/openssl/mdc2.h ../../include/openssl/obj_mac.h
-x509_r2x.o: ../../include/openssl/objects.h ../../include/openssl/opensslconf.h
+x509_r2x.o: ../../include/openssl/md2.h ../../include/openssl/md4.h
+x509_r2x.o: ../../include/openssl/md5.h ../../include/openssl/mdc2.h
+x509_r2x.o: ../../include/openssl/obj_mac.h ../../include/openssl/objects.h
+x509_r2x.o: ../../include/openssl/opensslconf.h
 x509_r2x.o: ../../include/openssl/opensslv.h ../../include/openssl/pkcs7.h
 x509_r2x.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h
 x509_r2x.o: ../../include/openssl/rc5.h ../../include/openssl/ripemd.h
 x509_r2x.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
 x509_r2x.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
-x509_r2x.o: ../../include/openssl/x509.h ../../include/openssl/x509_vfy.h
-x509_r2x.o: ../cryptlib.h
+x509_r2x.o: ../../include/openssl/symhacks.h ../../include/openssl/x509.h
+x509_r2x.o: ../../include/openssl/x509_vfy.h ../cryptlib.h
 x509_req.o: ../../include/openssl/asn1.h ../../include/openssl/bio.h
 x509_req.o: ../../include/openssl/blowfish.h ../../include/openssl/bn.h
 x509_req.o: ../../include/openssl/buffer.h ../../include/openssl/cast.h
@@ -297,17 +311,18 @@ x509_req.o: ../../include/openssl/dh.h ../../include/openssl/dsa.h
 x509_req.o: ../../include/openssl/e_os.h ../../include/openssl/e_os2.h
 x509_req.o: ../../include/openssl/err.h ../../include/openssl/evp.h
 x509_req.o: ../../include/openssl/idea.h ../../include/openssl/lhash.h
-x509_req.o: ../../include/openssl/md2.h ../../include/openssl/md5.h
-x509_req.o: ../../include/openssl/mdc2.h ../../include/openssl/obj_mac.h
-x509_req.o: ../../include/openssl/objects.h ../../include/openssl/opensslconf.h
+x509_req.o: ../../include/openssl/md2.h ../../include/openssl/md4.h
+x509_req.o: ../../include/openssl/md5.h ../../include/openssl/mdc2.h
+x509_req.o: ../../include/openssl/obj_mac.h ../../include/openssl/objects.h
+x509_req.o: ../../include/openssl/opensslconf.h
 x509_req.o: ../../include/openssl/opensslv.h ../../include/openssl/pem.h
 x509_req.o: ../../include/openssl/pem2.h ../../include/openssl/pkcs7.h
 x509_req.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h
 x509_req.o: ../../include/openssl/rc5.h ../../include/openssl/ripemd.h
 x509_req.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
 x509_req.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
-x509_req.o: ../../include/openssl/x509.h ../../include/openssl/x509_vfy.h
-x509_req.o: ../cryptlib.h
+x509_req.o: ../../include/openssl/symhacks.h ../../include/openssl/x509.h
+x509_req.o: ../../include/openssl/x509_vfy.h ../cryptlib.h
 x509_set.o: ../../include/openssl/asn1.h ../../include/openssl/bio.h
 x509_set.o: ../../include/openssl/blowfish.h ../../include/openssl/bn.h
 x509_set.o: ../../include/openssl/buffer.h ../../include/openssl/cast.h
@@ -316,16 +331,17 @@ x509_set.o: ../../include/openssl/dh.h ../../include/openssl/dsa.h
 x509_set.o: ../../include/openssl/e_os.h ../../include/openssl/e_os2.h
 x509_set.o: ../../include/openssl/err.h ../../include/openssl/evp.h
 x509_set.o: ../../include/openssl/idea.h ../../include/openssl/lhash.h
-x509_set.o: ../../include/openssl/md2.h ../../include/openssl/md5.h
-x509_set.o: ../../include/openssl/mdc2.h ../../include/openssl/obj_mac.h
-x509_set.o: ../../include/openssl/objects.h ../../include/openssl/opensslconf.h
+x509_set.o: ../../include/openssl/md2.h ../../include/openssl/md4.h
+x509_set.o: ../../include/openssl/md5.h ../../include/openssl/mdc2.h
+x509_set.o: ../../include/openssl/obj_mac.h ../../include/openssl/objects.h
+x509_set.o: ../../include/openssl/opensslconf.h
 x509_set.o: ../../include/openssl/opensslv.h ../../include/openssl/pkcs7.h
 x509_set.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h
 x509_set.o: ../../include/openssl/rc5.h ../../include/openssl/ripemd.h
 x509_set.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
 x509_set.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
-x509_set.o: ../../include/openssl/x509.h ../../include/openssl/x509_vfy.h
-x509_set.o: ../cryptlib.h
+x509_set.o: ../../include/openssl/symhacks.h ../../include/openssl/x509.h
+x509_set.o: ../../include/openssl/x509_vfy.h ../cryptlib.h
 x509_trs.o: ../../include/openssl/asn1.h ../../include/openssl/bio.h
 x509_trs.o: ../../include/openssl/blowfish.h ../../include/openssl/bn.h
 x509_trs.o: ../../include/openssl/buffer.h ../../include/openssl/cast.h
@@ -335,16 +351,18 @@ x509_trs.o: ../../include/openssl/dsa.h ../../include/openssl/e_os.h
 x509_trs.o: ../../include/openssl/e_os.h ../../include/openssl/e_os2.h
 x509_trs.o: ../../include/openssl/err.h ../../include/openssl/evp.h
 x509_trs.o: ../../include/openssl/idea.h ../../include/openssl/lhash.h
-x509_trs.o: ../../include/openssl/md2.h ../../include/openssl/md5.h
-x509_trs.o: ../../include/openssl/mdc2.h ../../include/openssl/obj_mac.h
-x509_trs.o: ../../include/openssl/objects.h ../../include/openssl/opensslconf.h
+x509_trs.o: ../../include/openssl/md2.h ../../include/openssl/md4.h
+x509_trs.o: ../../include/openssl/md5.h ../../include/openssl/mdc2.h
+x509_trs.o: ../../include/openssl/obj_mac.h ../../include/openssl/objects.h
+x509_trs.o: ../../include/openssl/opensslconf.h
 x509_trs.o: ../../include/openssl/opensslv.h ../../include/openssl/pkcs7.h
 x509_trs.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h
 x509_trs.o: ../../include/openssl/rc5.h ../../include/openssl/ripemd.h
 x509_trs.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
 x509_trs.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
-x509_trs.o: ../../include/openssl/x509.h ../../include/openssl/x509_vfy.h
-x509_trs.o: ../../include/openssl/x509v3.h ../cryptlib.h
+x509_trs.o: ../../include/openssl/symhacks.h ../../include/openssl/x509.h
+x509_trs.o: ../../include/openssl/x509_vfy.h ../../include/openssl/x509v3.h
+x509_trs.o: ../cryptlib.h
 x509_txt.o: ../../include/openssl/asn1.h ../../include/openssl/bio.h
 x509_txt.o: ../../include/openssl/blowfish.h ../../include/openssl/bn.h
 x509_txt.o: ../../include/openssl/buffer.h ../../include/openssl/cast.h
@@ -353,16 +371,17 @@ x509_txt.o: ../../include/openssl/dh.h ../../include/openssl/dsa.h
 x509_txt.o: ../../include/openssl/e_os.h ../../include/openssl/e_os2.h
 x509_txt.o: ../../include/openssl/err.h ../../include/openssl/evp.h
 x509_txt.o: ../../include/openssl/idea.h ../../include/openssl/lhash.h
-x509_txt.o: ../../include/openssl/md2.h ../../include/openssl/md5.h
-x509_txt.o: ../../include/openssl/mdc2.h ../../include/openssl/obj_mac.h
-x509_txt.o: ../../include/openssl/objects.h ../../include/openssl/opensslconf.h
+x509_txt.o: ../../include/openssl/md2.h ../../include/openssl/md4.h
+x509_txt.o: ../../include/openssl/md5.h ../../include/openssl/mdc2.h
+x509_txt.o: ../../include/openssl/obj_mac.h ../../include/openssl/objects.h
+x509_txt.o: ../../include/openssl/opensslconf.h
 x509_txt.o: ../../include/openssl/opensslv.h ../../include/openssl/pkcs7.h
 x509_txt.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h
 x509_txt.o: ../../include/openssl/rc5.h ../../include/openssl/ripemd.h
 x509_txt.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
 x509_txt.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
-x509_txt.o: ../../include/openssl/x509.h ../../include/openssl/x509_vfy.h
-x509_txt.o: ../cryptlib.h
+x509_txt.o: ../../include/openssl/symhacks.h ../../include/openssl/x509.h
+x509_txt.o: ../../include/openssl/x509_vfy.h ../cryptlib.h
 x509_v3.o: ../../include/openssl/asn1.h ../../include/openssl/bio.h
 x509_v3.o: ../../include/openssl/blowfish.h ../../include/openssl/bn.h
 x509_v3.o: ../../include/openssl/buffer.h ../../include/openssl/cast.h
@@ -372,14 +391,15 @@ x509_v3.o: ../../include/openssl/dsa.h ../../include/openssl/e_os.h
 x509_v3.o: ../../include/openssl/e_os.h ../../include/openssl/e_os2.h
 x509_v3.o: ../../include/openssl/err.h ../../include/openssl/evp.h
 x509_v3.o: ../../include/openssl/idea.h ../../include/openssl/lhash.h
-x509_v3.o: ../../include/openssl/md2.h ../../include/openssl/md5.h
-x509_v3.o: ../../include/openssl/mdc2.h ../../include/openssl/obj_mac.h
-x509_v3.o: ../../include/openssl/objects.h ../../include/openssl/opensslconf.h
-x509_v3.o: ../../include/openssl/opensslv.h ../../include/openssl/pkcs7.h
-x509_v3.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h
-x509_v3.o: ../../include/openssl/rc5.h ../../include/openssl/ripemd.h
-x509_v3.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
-x509_v3.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
+x509_v3.o: ../../include/openssl/md2.h ../../include/openssl/md4.h
+x509_v3.o: ../../include/openssl/md5.h ../../include/openssl/mdc2.h
+x509_v3.o: ../../include/openssl/obj_mac.h ../../include/openssl/objects.h
+x509_v3.o: ../../include/openssl/opensslconf.h ../../include/openssl/opensslv.h
+x509_v3.o: ../../include/openssl/pkcs7.h ../../include/openssl/rc2.h
+x509_v3.o: ../../include/openssl/rc4.h ../../include/openssl/rc5.h
+x509_v3.o: ../../include/openssl/ripemd.h ../../include/openssl/rsa.h
+x509_v3.o: ../../include/openssl/safestack.h ../../include/openssl/sha.h
+x509_v3.o: ../../include/openssl/stack.h ../../include/openssl/symhacks.h
 x509_v3.o: ../../include/openssl/x509.h ../../include/openssl/x509_vfy.h
 x509_v3.o: ../../include/openssl/x509v3.h ../cryptlib.h
 x509_vfy.o: ../../include/openssl/asn1.h ../../include/openssl/bio.h
@@ -391,16 +411,18 @@ x509_vfy.o: ../../include/openssl/dsa.h ../../include/openssl/e_os.h
 x509_vfy.o: ../../include/openssl/e_os.h ../../include/openssl/e_os2.h
 x509_vfy.o: ../../include/openssl/err.h ../../include/openssl/evp.h
 x509_vfy.o: ../../include/openssl/idea.h ../../include/openssl/lhash.h
-x509_vfy.o: ../../include/openssl/md2.h ../../include/openssl/md5.h
-x509_vfy.o: ../../include/openssl/mdc2.h ../../include/openssl/obj_mac.h
-x509_vfy.o: ../../include/openssl/objects.h ../../include/openssl/opensslconf.h
+x509_vfy.o: ../../include/openssl/md2.h ../../include/openssl/md4.h
+x509_vfy.o: ../../include/openssl/md5.h ../../include/openssl/mdc2.h
+x509_vfy.o: ../../include/openssl/obj_mac.h ../../include/openssl/objects.h
+x509_vfy.o: ../../include/openssl/opensslconf.h
 x509_vfy.o: ../../include/openssl/opensslv.h ../../include/openssl/pkcs7.h
 x509_vfy.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h
 x509_vfy.o: ../../include/openssl/rc5.h ../../include/openssl/ripemd.h
 x509_vfy.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
 x509_vfy.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
-x509_vfy.o: ../../include/openssl/x509.h ../../include/openssl/x509_vfy.h
-x509_vfy.o: ../../include/openssl/x509v3.h ../cryptlib.h
+x509_vfy.o: ../../include/openssl/symhacks.h ../../include/openssl/x509.h
+x509_vfy.o: ../../include/openssl/x509_vfy.h ../../include/openssl/x509v3.h
+x509_vfy.o: ../cryptlib.h
 x509name.o: ../../include/openssl/asn1.h ../../include/openssl/bio.h
 x509name.o: ../../include/openssl/blowfish.h ../../include/openssl/bn.h
 x509name.o: ../../include/openssl/buffer.h ../../include/openssl/cast.h
@@ -409,16 +431,17 @@ x509name.o: ../../include/openssl/dh.h ../../include/openssl/dsa.h
 x509name.o: ../../include/openssl/e_os.h ../../include/openssl/e_os2.h
 x509name.o: ../../include/openssl/err.h ../../include/openssl/evp.h
 x509name.o: ../../include/openssl/idea.h ../../include/openssl/lhash.h
-x509name.o: ../../include/openssl/md2.h ../../include/openssl/md5.h
-x509name.o: ../../include/openssl/mdc2.h ../../include/openssl/obj_mac.h
-x509name.o: ../../include/openssl/objects.h ../../include/openssl/opensslconf.h
+x509name.o: ../../include/openssl/md2.h ../../include/openssl/md4.h
+x509name.o: ../../include/openssl/md5.h ../../include/openssl/mdc2.h
+x509name.o: ../../include/openssl/obj_mac.h ../../include/openssl/objects.h
+x509name.o: ../../include/openssl/opensslconf.h
 x509name.o: ../../include/openssl/opensslv.h ../../include/openssl/pkcs7.h
 x509name.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h
 x509name.o: ../../include/openssl/rc5.h ../../include/openssl/ripemd.h
 x509name.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
 x509name.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
-x509name.o: ../../include/openssl/x509.h ../../include/openssl/x509_vfy.h
-x509name.o: ../cryptlib.h
+x509name.o: ../../include/openssl/symhacks.h ../../include/openssl/x509.h
+x509name.o: ../../include/openssl/x509_vfy.h ../cryptlib.h
 x509rset.o: ../../include/openssl/asn1.h ../../include/openssl/bio.h
 x509rset.o: ../../include/openssl/blowfish.h ../../include/openssl/bn.h
 x509rset.o: ../../include/openssl/buffer.h ../../include/openssl/cast.h
@@ -427,16 +450,17 @@ x509rset.o: ../../include/openssl/dh.h ../../include/openssl/dsa.h
 x509rset.o: ../../include/openssl/e_os.h ../../include/openssl/e_os2.h
 x509rset.o: ../../include/openssl/err.h ../../include/openssl/evp.h
 x509rset.o: ../../include/openssl/idea.h ../../include/openssl/lhash.h
-x509rset.o: ../../include/openssl/md2.h ../../include/openssl/md5.h
-x509rset.o: ../../include/openssl/mdc2.h ../../include/openssl/obj_mac.h
-x509rset.o: ../../include/openssl/objects.h ../../include/openssl/opensslconf.h
+x509rset.o: ../../include/openssl/md2.h ../../include/openssl/md4.h
+x509rset.o: ../../include/openssl/md5.h ../../include/openssl/mdc2.h
+x509rset.o: ../../include/openssl/obj_mac.h ../../include/openssl/objects.h
+x509rset.o: ../../include/openssl/opensslconf.h
 x509rset.o: ../../include/openssl/opensslv.h ../../include/openssl/pkcs7.h
 x509rset.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h
 x509rset.o: ../../include/openssl/rc5.h ../../include/openssl/ripemd.h
 x509rset.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
 x509rset.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
-x509rset.o: ../../include/openssl/x509.h ../../include/openssl/x509_vfy.h
-x509rset.o: ../cryptlib.h
+x509rset.o: ../../include/openssl/symhacks.h ../../include/openssl/x509.h
+x509rset.o: ../../include/openssl/x509_vfy.h ../cryptlib.h
 x509spki.o: ../../include/openssl/asn1.h ../../include/openssl/asn1_mac.h
 x509spki.o: ../../include/openssl/bio.h ../../include/openssl/blowfish.h
 x509spki.o: ../../include/openssl/bn.h ../../include/openssl/buffer.h
@@ -446,16 +470,16 @@ x509spki.o: ../../include/openssl/dsa.h ../../include/openssl/e_os.h
 x509spki.o: ../../include/openssl/e_os2.h ../../include/openssl/err.h
 x509spki.o: ../../include/openssl/evp.h ../../include/openssl/idea.h
 x509spki.o: ../../include/openssl/lhash.h ../../include/openssl/md2.h
-x509spki.o: ../../include/openssl/md5.h ../../include/openssl/mdc2.h
-x509spki.o: ../../include/openssl/obj_mac.h ../../include/openssl/objects.h
-x509spki.o: ../../include/openssl/opensslconf.h
+x509spki.o: ../../include/openssl/md4.h ../../include/openssl/md5.h
+x509spki.o: ../../include/openssl/mdc2.h ../../include/openssl/obj_mac.h
+x509spki.o: ../../include/openssl/objects.h ../../include/openssl/opensslconf.h
 x509spki.o: ../../include/openssl/opensslv.h ../../include/openssl/pkcs7.h
 x509spki.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h
 x509spki.o: ../../include/openssl/rc5.h ../../include/openssl/ripemd.h
 x509spki.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
 x509spki.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
-x509spki.o: ../../include/openssl/x509.h ../../include/openssl/x509_vfy.h
-x509spki.o: ../cryptlib.h
+x509spki.o: ../../include/openssl/symhacks.h ../../include/openssl/x509.h
+x509spki.o: ../../include/openssl/x509_vfy.h ../cryptlib.h
 x509type.o: ../../include/openssl/asn1.h ../../include/openssl/bio.h
 x509type.o: ../../include/openssl/blowfish.h ../../include/openssl/bn.h
 x509type.o: ../../include/openssl/buffer.h ../../include/openssl/cast.h
@@ -464,16 +488,17 @@ x509type.o: ../../include/openssl/dh.h ../../include/openssl/dsa.h
 x509type.o: ../../include/openssl/e_os.h ../../include/openssl/e_os2.h
 x509type.o: ../../include/openssl/err.h ../../include/openssl/evp.h
 x509type.o: ../../include/openssl/idea.h ../../include/openssl/lhash.h
-x509type.o: ../../include/openssl/md2.h ../../include/openssl/md5.h
-x509type.o: ../../include/openssl/mdc2.h ../../include/openssl/obj_mac.h
-x509type.o: ../../include/openssl/objects.h ../../include/openssl/opensslconf.h
+x509type.o: ../../include/openssl/md2.h ../../include/openssl/md4.h
+x509type.o: ../../include/openssl/md5.h ../../include/openssl/mdc2.h
+x509type.o: ../../include/openssl/obj_mac.h ../../include/openssl/objects.h
+x509type.o: ../../include/openssl/opensslconf.h
 x509type.o: ../../include/openssl/opensslv.h ../../include/openssl/pkcs7.h
 x509type.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h
 x509type.o: ../../include/openssl/rc5.h ../../include/openssl/ripemd.h
 x509type.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
 x509type.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
-x509type.o: ../../include/openssl/x509.h ../../include/openssl/x509_vfy.h
-x509type.o: ../cryptlib.h
+x509type.o: ../../include/openssl/symhacks.h ../../include/openssl/x509.h
+x509type.o: ../../include/openssl/x509_vfy.h ../cryptlib.h
 x_all.o: ../../include/openssl/asn1.h ../../include/openssl/bio.h
 x_all.o: ../../include/openssl/blowfish.h ../../include/openssl/bn.h
 x_all.o: ../../include/openssl/buffer.h ../../include/openssl/cast.h
@@ -482,13 +507,14 @@ x_all.o: ../../include/openssl/dh.h ../../include/openssl/dsa.h
 x_all.o: ../../include/openssl/e_os.h ../../include/openssl/e_os2.h
 x_all.o: ../../include/openssl/err.h ../../include/openssl/evp.h
 x_all.o: ../../include/openssl/idea.h ../../include/openssl/lhash.h
-x_all.o: ../../include/openssl/md2.h ../../include/openssl/md5.h
-x_all.o: ../../include/openssl/mdc2.h ../../include/openssl/obj_mac.h
-x_all.o: ../../include/openssl/objects.h ../../include/openssl/opensslconf.h
-x_all.o: ../../include/openssl/opensslv.h ../../include/openssl/pkcs7.h
-x_all.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h
-x_all.o: ../../include/openssl/rc5.h ../../include/openssl/ripemd.h
-x_all.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
-x_all.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
+x_all.o: ../../include/openssl/md2.h ../../include/openssl/md4.h
+x_all.o: ../../include/openssl/md5.h ../../include/openssl/mdc2.h
+x_all.o: ../../include/openssl/obj_mac.h ../../include/openssl/objects.h
+x_all.o: ../../include/openssl/opensslconf.h ../../include/openssl/opensslv.h
+x_all.o: ../../include/openssl/pkcs7.h ../../include/openssl/rc2.h
+x_all.o: ../../include/openssl/rc4.h ../../include/openssl/rc5.h
+x_all.o: ../../include/openssl/ripemd.h ../../include/openssl/rsa.h
+x_all.o: ../../include/openssl/safestack.h ../../include/openssl/sha.h
+x_all.o: ../../include/openssl/stack.h ../../include/openssl/symhacks.h
 x_all.o: ../../include/openssl/x509.h ../../include/openssl/x509_vfy.h
 x_all.o: ../cryptlib.h
index c5920cc7dd9e4c5b029ea8f05fe4e3bf47a093f5..cac64a6f40451dfd47d08f1bc88f1970abaca2df 100644 (file)
@@ -326,7 +326,9 @@ static int get_cert_by_subject(X509_LOOKUP *xl, int type, X509_NAME *name,
                /* we have added it to the cache so now pull
                 * it out again */
                CRYPTO_r_lock(CRYPTO_LOCK_X509_STORE);
-               tmp=(X509_OBJECT *)lh_retrieve(xl->store_ctx->certs,&stmp);
+               j = sk_X509_OBJECT_find(xl->store_ctx->objs,&stmp);
+               if(j != -1) tmp=sk_X509_OBJECT_value(xl->store_ctx->objs,i);
+               else tmp = NULL;
                CRYPTO_r_unlock(CRYPTO_LOCK_X509_STORE);
 
                if (tmp != NULL)
index ffa6e01251f34b985bd30613e37293031a1c41d6..ae0ebd89d7ba4db9eaf506f94ff2742cd11618b4 100644 (file)
 #ifndef HEADER_X509_H
 #define HEADER_X509_H
 
-#ifdef VMS
-#undef X509_REVOKED_get_ext_by_critical
-#define X509_REVOKED_get_ext_by_critical X509_REVOKED_get_ext_by_critic
-#endif
-
+#include <openssl/symhacks.h>
 #ifndef NO_BUFFER
 #include <openssl/buffer.h>
 #endif
@@ -213,6 +209,8 @@ DECLARE_ASN1_SET_OF(X509_ATTRIBUTE)
 
 typedef struct X509_req_info_st
        {
+       unsigned char *asn1;
+       int length;
        ASN1_INTEGER *version;
        X509_NAME *subject;
        X509_PUBKEY *pubkey;
@@ -273,6 +271,8 @@ typedef struct x509_st
        unsigned long ex_kusage;
        unsigned long ex_xkusage;
        unsigned long ex_nscert;
+       ASN1_OCTET_STRING *skid;
+       struct AUTHORITY_KEYID_st *akid;
 #ifndef NO_SHA
        unsigned char sha1_hash[SHA_DIGEST_LENGTH];
 #endif
@@ -744,6 +744,8 @@ int i2d_PKCS8_PRIV_KEY_INFO_fp(FILE *fp,PKCS8_PRIV_KEY_INFO *p8inf);
 int i2d_PKCS8PrivateKeyInfo_fp(FILE *fp, EVP_PKEY *key);
 int i2d_PrivateKey_fp(FILE *fp, EVP_PKEY *pkey);
 EVP_PKEY *d2i_PrivateKey_fp(FILE *fp, EVP_PKEY **a);
+int i2d_PUBKEY_fp(FILE *fp, EVP_PKEY *pkey);
+EVP_PKEY *d2i_PUBKEY_fp(FILE *fp, EVP_PKEY **a);
 #endif
 
 #ifndef NO_BIO
@@ -775,6 +777,8 @@ int i2d_PKCS8_PRIV_KEY_INFO_bio(BIO *bp,PKCS8_PRIV_KEY_INFO *p8inf);
 int i2d_PKCS8PrivateKeyInfo_bio(BIO *bp, EVP_PKEY *key);
 int i2d_PrivateKey_bio(BIO *bp, EVP_PKEY *pkey);
 EVP_PKEY *d2i_PrivateKey_bio(BIO *bp, EVP_PKEY **a);
+int i2d_PUBKEY_bio(BIO *bp, EVP_PKEY *pkey);
+EVP_PKEY *d2i_PUBKEY_bio(BIO *bp, EVP_PKEY **a);
 #endif
 
 X509 *X509_dup(X509 *x509);
@@ -792,7 +796,9 @@ RSA *RSAPrivateKey_dup(RSA *rsa);
 
 #endif /* !SSLEAY_MACROS */
 
+int            X509_cmp_time(ASN1_TIME *s, time_t *t);
 int            X509_cmp_current_time(ASN1_TIME *s);
+ASN1_TIME *    X509_time_adj(ASN1_TIME *s, long adj, time_t *t);
 ASN1_TIME *    X509_gmtime_adj(ASN1_TIME *s, long adj);
 
 const char *   X509_get_default_cert_area(void );
index 5e5458568fc093bc095a2dfe19042ef5a20c5b25..863c738cad8daa4129da71279913da276f82ca33 100644 (file)
 #include <openssl/x509.h>
 
 static STACK_OF(CRYPTO_EX_DATA_FUNCS) *x509_store_meth=NULL;
-static STACK_OF(CRYPTO_EX_DATA_FUNCS) *x509_store_ctx_meth=NULL;
 
 X509_LOOKUP *X509_LOOKUP_new(X509_LOOKUP_METHOD *method)
        {
        X509_LOOKUP *ret;
 
        ret=(X509_LOOKUP *)OPENSSL_malloc(sizeof(X509_LOOKUP));
-       if (ret == NULL) return(NULL);
+       if (ret == NULL) return NULL;
 
        ret->init=0;
        ret->skip=0;
@@ -79,9 +78,9 @@ X509_LOOKUP *X509_LOOKUP_new(X509_LOOKUP_METHOD *method)
        if ((method->new_item != NULL) && !method->new_item(ret))
                {
                OPENSSL_free(ret);
-               return(NULL);
+               return NULL;
                }
-       return(ret);
+       return ret;
        }
 
 void X509_LOOKUP_free(X509_LOOKUP *ctx)
@@ -95,39 +94,39 @@ void X509_LOOKUP_free(X509_LOOKUP *ctx)
 
 int X509_LOOKUP_init(X509_LOOKUP *ctx)
        {
-       if (ctx->method == NULL) return(0);
+       if (ctx->method == NULL) return 0;
        if (ctx->method->init != NULL)
-               return(ctx->method->init(ctx));
+               return ctx->method->init(ctx);
        else
-               return(1);
+               return 1;
        }
 
 int X509_LOOKUP_shutdown(X509_LOOKUP *ctx)
        {
-       if (ctx->method == NULL) return(0);
+       if (ctx->method == NULL) return 0;
        if (ctx->method->shutdown != NULL)
-               return(ctx->method->shutdown(ctx));
+               return ctx->method->shutdown(ctx);
        else
-               return(1);
+               return 1;
        }
 
 int X509_LOOKUP_ctrl(X509_LOOKUP *ctx, int cmd, const char *argc, long argl,
             char **ret)
        {
-       if (ctx->method == NULL) return(-1);
+       if (ctx->method == NULL) return -1;
        if (ctx->method->ctrl != NULL)
-               return(ctx->method->ctrl(ctx,cmd,argc,argl,ret));
+               return ctx->method->ctrl(ctx,cmd,argc,argl,ret);
        else
-               return(1);
+               return 1;
        }
 
 int X509_LOOKUP_by_subject(X509_LOOKUP *ctx, int type, X509_NAME *name,
             X509_OBJECT *ret)
        {
        if ((ctx->method == NULL) || (ctx->method->get_by_subject == NULL))
-               return(X509_LU_FAIL);
-       if (ctx->skip) return(0);
-       return(ctx->method->get_by_subject(ctx,type,name,ret));
+               return X509_LU_FAIL;
+       if (ctx->skip) return 0;
+       return ctx->method->get_by_subject(ctx,type,name,ret);
        }
 
 int X509_LOOKUP_by_issuer_serial(X509_LOOKUP *ctx, int type, X509_NAME *name,
@@ -135,62 +134,46 @@ int X509_LOOKUP_by_issuer_serial(X509_LOOKUP *ctx, int type, X509_NAME *name,
        {
        if ((ctx->method == NULL) ||
                (ctx->method->get_by_issuer_serial == NULL))
-               return(X509_LU_FAIL);
-       return(ctx->method->get_by_issuer_serial(ctx,type,name,serial,ret));
+               return X509_LU_FAIL;
+       return ctx->method->get_by_issuer_serial(ctx,type,name,serial,ret);
        }
 
 int X509_LOOKUP_by_fingerprint(X509_LOOKUP *ctx, int type,
             unsigned char *bytes, int len, X509_OBJECT *ret)
        {
        if ((ctx->method == NULL) || (ctx->method->get_by_fingerprint == NULL))
-               return(X509_LU_FAIL);
-       return(ctx->method->get_by_fingerprint(ctx,type,bytes,len,ret));
+               return X509_LU_FAIL;
+       return ctx->method->get_by_fingerprint(ctx,type,bytes,len,ret);
        }
 
 int X509_LOOKUP_by_alias(X509_LOOKUP *ctx, int type, char *str, int len,
             X509_OBJECT *ret)
        {
        if ((ctx->method == NULL) || (ctx->method->get_by_alias == NULL))
-               return(X509_LU_FAIL);
-       return(ctx->method->get_by_alias(ctx,type,str,len,ret));
+               return X509_LU_FAIL;
+       return ctx->method->get_by_alias(ctx,type,str,len,ret);
        }
 
-static unsigned long x509_object_hash(X509_OBJECT *a)
-       {
-       unsigned long h;
-
-       switch (a->type)
-               {
-       case X509_LU_X509:
-               h=X509_NAME_hash(a->data.x509->cert_info->subject);
-               break;
-       case X509_LU_CRL:
-               h=X509_NAME_hash(a->data.crl->crl->issuer);
-               break;
+  
+static int x509_object_cmp(const X509_OBJECT * const *a, const X509_OBJECT * const *b)
+       {
+       int ret;
+
+       ret=((*a)->type - (*b)->type);
+       if (ret) return ret;
+       switch ((*a)->type)
+               {
+       case X509_LU_X509:
+               ret=X509_subject_name_cmp((*a)->data.x509,(*b)->data.x509);
+               break;
+       case X509_LU_CRL:
+               ret=X509_CRL_cmp((*a)->data.crl,(*b)->data.crl);
+               break;
        default:
-               abort();
+               /* abort(); */
+               return 0;
                }
-       return(h);
-       }
-
-static int x509_object_cmp(X509_OBJECT *a, X509_OBJECT *b)
-       {
-       int ret;
-
-       ret=(a->type - b->type);
-       if (ret) return(ret);
-       switch (a->type)
-               {
-       case X509_LU_X509:
-               ret=X509_subject_name_cmp(a->data.x509,b->data.x509);
-               break;
-       case X509_LU_CRL:
-               ret=X509_CRL_cmp(a->data.crl,b->data.crl);
-               break;
-       default:
-               abort();
-               }
-       return(ret);
+       return ret;
        }
 
 X509_STORE *X509_STORE_new(void)
@@ -198,8 +181,8 @@ X509_STORE *X509_STORE_new(void)
        X509_STORE *ret;
 
        if ((ret=(X509_STORE *)OPENSSL_malloc(sizeof(X509_STORE))) == NULL)
-               return(NULL);
-       ret->certs=lh_new(x509_object_hash,x509_object_cmp);
+               return NULL;
+       ret->objs = sk_X509_OBJECT_new(x509_object_cmp);
        ret->cache=1;
        ret->get_cert_methods=sk_X509_LOOKUP_new_null();
        ret->verify=NULL;
@@ -207,7 +190,7 @@ X509_STORE *X509_STORE_new(void)
        memset(&ret->ex_data,0,sizeof(CRYPTO_EX_DATA));
        ret->references=1;
        ret->depth=0;
-       return(ret);
+       return ret;
        }
 
 static void cleanup(X509_OBJECT *a)
@@ -221,7 +204,9 @@ static void cleanup(X509_OBJECT *a)
                X509_CRL_free(a->data.crl);
                }
        else
-               abort();
+               {
+               /* abort(); */
+               }
 
        OPENSSL_free(a);
        }
@@ -232,7 +217,7 @@ void X509_STORE_free(X509_STORE *vfy)
        STACK_OF(X509_LOOKUP) *sk;
        X509_LOOKUP *lu;
 
-       if(vfy == NULL)
+       if (vfy == NULL)
            return;
 
        sk=vfy->get_cert_methods;
@@ -243,10 +228,9 @@ void X509_STORE_free(X509_STORE *vfy)
                X509_LOOKUP_free(lu);
                }
        sk_X509_LOOKUP_free(sk);
+       sk_X509_OBJECT_pop_free(vfy->objs, cleanup);
 
        CRYPTO_free_ex_data(x509_store_meth,vfy,&vfy->ex_data);
-       lh_doall(vfy->certs,cleanup);
-       lh_free(vfy->certs);
        OPENSSL_free(vfy);
        }
 
@@ -262,22 +246,22 @@ X509_LOOKUP *X509_STORE_add_lookup(X509_STORE *v, X509_LOOKUP_METHOD *m)
                lu=sk_X509_LOOKUP_value(sk,i);
                if (m == lu->method)
                        {
-                       return(lu);
+                       return lu;
                        }
                }
        /* a new one */
        lu=X509_LOOKUP_new(m);
        if (lu == NULL)
-               return(NULL);
+               return NULL;
        else
                {
                lu->store_ctx=v;
                if (sk_X509_LOOKUP_push(v->get_cert_methods,lu))
-                       return(lu);
+                       return lu;
                else
                        {
                        X509_LOOKUP_free(lu);
-                       return(NULL);
+                       return NULL;
                        }
                }
        }
@@ -290,7 +274,7 @@ int X509_STORE_get_by_subject(X509_STORE_CTX *vs, int type, X509_NAME *name,
        X509_OBJECT stmp,*tmp;
        int i,j;
 
-       tmp=X509_OBJECT_retrieve_by_subject(ctx->certs,type,name);
+       tmp=X509_OBJECT_retrieve_by_subject(ctx->objs,type,name);
 
        if (tmp == NULL)
                {
@@ -301,7 +285,7 @@ int X509_STORE_get_by_subject(X509_STORE_CTX *vs, int type, X509_NAME *name,
                        if (j < 0)
                                {
                                vs->current_method=j;
-                               return(j);
+                               return j;
                                }
                        else if (j)
                                {
@@ -311,7 +295,7 @@ int X509_STORE_get_by_subject(X509_STORE_CTX *vs, int type, X509_NAME *name,
                        }
                vs->current_method=0;
                if (tmp == NULL)
-                       return(0);
+                       return 0;
                }
 
 /*     if (ret->data.ptr != NULL)
@@ -322,7 +306,74 @@ int X509_STORE_get_by_subject(X509_STORE_CTX *vs, int type, X509_NAME *name,
 
        X509_OBJECT_up_ref_count(ret);
 
-       return(1);
+       return 1;
+       }
+
+int X509_STORE_add_cert(X509_STORE *ctx, X509 *x)
+       {
+       X509_OBJECT *obj;
+       int ret=1;
+
+       if (x == NULL) return 0;
+       obj=(X509_OBJECT *)OPENSSL_malloc(sizeof(X509_OBJECT));
+       if (obj == NULL)
+               {
+               X509err(X509_F_X509_STORE_ADD_CERT,ERR_R_MALLOC_FAILURE);
+               return 0;
+               }
+       obj->type=X509_LU_X509;
+       obj->data.x509=x;
+
+       CRYPTO_w_lock(CRYPTO_LOCK_X509_STORE);
+
+       X509_OBJECT_up_ref_count(obj);
+
+
+       if (X509_OBJECT_retrieve_match(ctx->objs, obj))
+               {
+               X509_OBJECT_free_contents(obj);
+               OPENSSL_free(obj);
+               X509err(X509_F_X509_STORE_ADD_CERT,X509_R_CERT_ALREADY_IN_HASH_TABLE);
+               ret=0;
+               } 
+       else sk_X509_OBJECT_push(ctx->objs, obj);
+
+       CRYPTO_w_unlock(CRYPTO_LOCK_X509_STORE);
+
+       return ret;
+       }
+
+int X509_STORE_add_crl(X509_STORE *ctx, X509_CRL *x)
+       {
+       X509_OBJECT *obj;
+       int ret=1;
+
+       if (x == NULL) return 0;
+       obj=(X509_OBJECT *)OPENSSL_malloc(sizeof(X509_OBJECT));
+       if (obj == NULL)
+               {
+               X509err(X509_F_X509_STORE_ADD_CRL,ERR_R_MALLOC_FAILURE);
+               return 0;
+               }
+       obj->type=X509_LU_CRL;
+       obj->data.crl=x;
+
+       CRYPTO_w_lock(CRYPTO_LOCK_X509_STORE);
+
+       X509_OBJECT_up_ref_count(obj);
+
+       if (X509_OBJECT_retrieve_match(ctx->objs, obj))
+               {
+               X509_OBJECT_free_contents(obj);
+               OPENSSL_free(obj);
+               X509err(X509_F_X509_STORE_ADD_CRL,X509_R_CERT_ALREADY_IN_HASH_TABLE);
+               ret=0;
+               }
+       else sk_X509_OBJECT_push(ctx->objs, obj);
+
+       CRYPTO_w_unlock(CRYPTO_LOCK_X509_STORE);
+
+       return ret;
        }
 
 void X509_OBJECT_up_ref_count(X509_OBJECT *a)
@@ -351,10 +402,10 @@ void X509_OBJECT_free_contents(X509_OBJECT *a)
                }
        }
 
-X509_OBJECT *X509_OBJECT_retrieve_by_subject(LHASH *h, int type,
+int X509_OBJECT_idx_by_subject(STACK_OF(X509_OBJECT) *h, int type,
             X509_NAME *name)
        {
-       X509_OBJECT stmp,*tmp;
+       X509_OBJECT stmp;
        X509 x509_s;
        X509_CINF cinf_s;
        X509_CRL crl_s;
@@ -374,54 +425,105 @@ X509_OBJECT *X509_OBJECT_retrieve_by_subject(LHASH *h, int type,
                crl_info_s.issuer=name;
                break;
        default:
-               abort();
+               /* abort(); */
+               return -1;
                }
 
-       tmp=(X509_OBJECT *)lh_retrieve(h,&stmp);
-       return(tmp);
+       return sk_X509_OBJECT_find(h,&stmp);
        }
 
-X509_STORE_CTX *X509_STORE_CTX_new(void)
+X509_OBJECT *X509_OBJECT_retrieve_by_subject(STACK_OF(X509_OBJECT) *h, int type,
+            X509_NAME *name)
 {
-       X509_STORE_CTX *ctx;
-       ctx = (X509_STORE_CTX *)OPENSSL_malloc(sizeof(X509_STORE_CTX));
-       if(ctx) memset(ctx, 0, sizeof(X509_STORE_CTX));
-       return ctx;
+       int idx;
+       idx = X509_OBJECT_idx_by_subject(h, type, name);
+       if (idx==-1) return NULL;
+       return sk_X509_OBJECT_value(h, idx);
 }
 
-void X509_STORE_CTX_free(X509_STORE_CTX *ctx)
+X509_OBJECT *X509_OBJECT_retrieve_match(STACK_OF(X509_OBJECT) *h, X509_OBJECT *x)
 {
-       X509_STORE_CTX_cleanup(ctx);
-       OPENSSL_free(ctx);
+       int idx, i;
+       X509_OBJECT *obj;
+       idx = sk_X509_OBJECT_find(h, x);
+       if (idx == -1) return NULL;
+       if (x->type != X509_LU_X509) return sk_X509_OBJECT_value(h, idx);
+       for (i = idx; i < sk_X509_OBJECT_num(h); i++)
+               {
+               obj = sk_X509_OBJECT_value(h, i);
+               if (x509_object_cmp((const X509_OBJECT **)&obj, (const X509_OBJECT **)&x))
+                       return NULL;
+               if ((x->type != X509_LU_X509) || !X509_cmp(obj->data.x509, x->data.x509))
+                       return obj;
+               }
+       return NULL;
 }
 
-void X509_STORE_CTX_init(X509_STORE_CTX *ctx, X509_STORE *store, X509 *x509,
-            STACK_OF(X509) *chain)
-       {
-       ctx->ctx=store;
-       ctx->current_method=0;
-       ctx->cert=x509;
-       ctx->untrusted=chain;
-       ctx->last_untrusted=0;
-       ctx->purpose=0;
-       ctx->trust=0;
-       ctx->valid=0;
-       ctx->chain=NULL;
-       ctx->depth=9;
-       ctx->error=0;
-       ctx->current_cert=NULL;
-       memset(&(ctx->ex_data),0,sizeof(CRYPTO_EX_DATA));
-       }
 
-void X509_STORE_CTX_cleanup(X509_STORE_CTX *ctx)
-       {
-       if (ctx->chain != NULL)
+/* Try to get issuer certificate from store. Due to limitations
+ * of the API this can only retrieve a single certificate matching
+ * a given subject name. However it will fill the cache with all
+ * matching certificates, so we can examine the cache for all 
+ * matches.
+ *
+ * Return values are:
+ *  1 lookup successful.
+ *  0 certificate not found.
+ * -1 some other error.
+ */
+
+
+int X509_STORE_CTX_get1_issuer(X509 **issuer, X509_STORE_CTX *ctx, X509 *x)
+{
+       X509_NAME *xn;
+       X509_OBJECT obj, *pobj;
+       int i, ok, idx;
+       xn=X509_get_issuer_name(x);
+       ok=X509_STORE_get_by_subject(ctx,X509_LU_X509,xn,&obj);
+       if (ok != X509_LU_X509)
+               {
+               if (ok == X509_LU_RETRY)
+                       {
+                       X509_OBJECT_free_contents(&obj);
+                       X509err(X509_F_X509_VERIFY_CERT,X509_R_SHOULD_RETRY);
+                       return -1;
+                       }
+               else if (ok != X509_LU_FAIL)
+                       {
+                       X509_OBJECT_free_contents(&obj);
+                       /* not good :-(, break anyway */
+                       return -1;
+                       }
+               return 0;
+               }
+       /* If certificate matches all OK */
+       if (ctx->check_issued(ctx, x, obj.data.x509))
                {
-               sk_X509_pop_free(ctx->chain,X509_free);
-               ctx->chain=NULL;
+               *issuer = obj.data.x509;
+               return 1;
                }
-       CRYPTO_free_ex_data(x509_store_ctx_meth,ctx,&(ctx->ex_data));
-       memset(&ctx->ex_data,0,sizeof(CRYPTO_EX_DATA));
-       }
+       X509_OBJECT_free_contents(&obj);
+       /* Else find index of first matching cert */
+       idx = X509_OBJECT_idx_by_subject(ctx->ctx->objs, X509_LU_X509, xn);
+       /* This shouldn't normally happen since we already have one match */
+       if (idx == -1) return 0;
+
+       /* Look through all matching certificates for a suitable issuer */
+       for (i = idx; i < sk_X509_OBJECT_num(ctx->ctx->objs); i++)
+               {
+               pobj = sk_X509_OBJECT_value(ctx->ctx->objs, i);
+               /* See if we've ran out of matches */
+               if (pobj->type != X509_LU_X509) return 0;
+               if (X509_NAME_cmp(xn, X509_get_subject_name(pobj->data.x509))) return 0;
+               if (ctx->check_issued(ctx, x, pobj->data.x509))
+                       {
+                       *issuer = pobj->data.x509;
+                       X509_OBJECT_up_ref_count(pobj);
+                       return 1;
+                       }
+               }
+       return 0;
+}
 
 IMPLEMENT_STACK_OF(X509_LOOKUP)
+IMPLEMENT_STACK_OF(X509_OBJECT)
index 209cf5319135dfbc778aa93580d655a531578446..cfb478d4bc5bfd925433a8ba791c7e3315130271 100644 (file)
@@ -132,6 +132,15 @@ const char *X509_verify_cert_error_string(long n)
                return ("certificate rejected");
        case X509_V_ERR_APPLICATION_VERIFICATION:
                return("application verification failure");
+       case X509_V_ERR_SUBJECT_ISSUER_MISMATCH:
+               return("subject issuer mismatch");
+       case X509_V_ERR_AKID_SKID_MISMATCH:
+               return("authority and subject key identifier mismatch");
+       case X509_V_ERR_AKID_ISSUER_SERIAL_MISMATCH:
+               return("authority and issuer serial number mismatch");
+       case X509_V_ERR_KEYUSAGE_NO_CERTSIGN:
+               return("key usage does not include certificate signing");
+
        default:
                sprintf(buf,"error number %ld",n);
                return(buf);
index 0d5273d51a432da18fe4159689ce5d20a18f4036..db62c9f6a348cead99bae90c22fa592edab3a160 100644 (file)
@@ -71,6 +71,8 @@
 #include <openssl/objects.h>
 
 static int null_callback(int ok,X509_STORE_CTX *e);
+static int check_issued(X509_STORE_CTX *ctx, X509 *x, X509 *issuer);
+static X509 *find_issuer(X509_STORE_CTX *ctx, STACK_OF(X509) *sk, X509 *x);
 static int check_chain_purpose(X509_STORE_CTX *ctx);
 static int check_trust(X509_STORE_CTX *ctx);
 static int internal_verify(X509_STORE_CTX *ctx);
@@ -85,13 +87,13 @@ static STACK *x509_store_method=NULL;
 
 static int null_callback(int ok, X509_STORE_CTX *e)
        {
-       return(ok);
+       return ok;
        }
 
 #if 0
 static int x509_subject_cmp(X509 **a, X509 **b)
        {
-       return(X509_subject_name_cmp(*a,*b));
+       return X509_subject_name_cmp(*a,*b);
        }
 #endif
 
@@ -99,7 +101,6 @@ int X509_verify_cert(X509_STORE_CTX *ctx)
        {
        X509 *x,*xtmp,*chain_ss=NULL;
        X509_NAME *xn;
-       X509_OBJECT obj;
        int depth,i,ok=0;
        int num;
        int (*cb)();
@@ -108,10 +109,10 @@ int X509_verify_cert(X509_STORE_CTX *ctx)
        if (ctx->cert == NULL)
                {
                X509err(X509_F_X509_VERIFY_CERT,X509_R_NO_CERT_SET_FOR_US_TO_VERIFY);
-               return(-1);
+               return -1;
                }
 
-       cb=ctx->ctx->verify_cb;
+       cb=ctx->verify_cb;
        if (cb == NULL) cb=null_callback;
 
        /* first we make sure the chain we are going to build is
@@ -152,13 +153,12 @@ int X509_verify_cert(X509_STORE_CTX *ctx)
 
                /* If we are self signed, we break */
                xn=X509_get_issuer_name(x);
-               if (X509_NAME_cmp(X509_get_subject_name(x),xn) == 0)
-                       break;
+               if (ctx->check_issued(ctx, x,x)) break;
 
                /* If we were passed a cert chain, use it first */
                if (ctx->untrusted != NULL)
                        {
-                       xtmp=X509_find_by_subject(sktmp,xn);
+                       xtmp=find_issuer(ctx, sktmp,x);
                        if (xtmp != NULL)
                                {
                                if (!sk_X509_push(ctx->chain,xtmp))
@@ -183,11 +183,14 @@ int X509_verify_cert(X509_STORE_CTX *ctx)
         * certificates.  We now need to add at least one trusted one,
         * if possible, otherwise we complain. */
 
+       /* Examine last certificate in chain and see if it
+        * is self signed.
+        */
+
        i=sk_X509_num(ctx->chain);
        x=sk_X509_value(ctx->chain,i-1);
        xn = X509_get_subject_name(x);
-       if (X509_NAME_cmp(xn,X509_get_issuer_name(x))
-               == 0)
+       if (ctx->check_issued(ctx, x, x))
                {
                /* we have a self signed certificate */
                if (sk_X509_num(ctx->chain) == 1)
@@ -196,13 +199,13 @@ int X509_verify_cert(X509_STORE_CTX *ctx)
                         * we can find it in the store. We must have an exact
                         * match to avoid possible impersonation.
                         */
-                       ok=X509_STORE_get_by_subject(ctx,X509_LU_X509,xn,&obj);
-                       if ((ok != X509_LU_X509) || X509_cmp(x, obj.data.x509)) 
+                       ok = ctx->get_issuer(&xtmp, ctx, x);
+                       if ((ok <= 0) || X509_cmp(x, xtmp)) 
                                {
                                ctx->error=X509_V_ERR_DEPTH_ZERO_SELF_SIGNED_CERT;
                                ctx->current_cert=x;
                                ctx->error_depth=i-1;
-                               if(ok == X509_LU_X509) X509_OBJECT_free_contents(&obj);
+                               if (ok == 1) X509_free(xtmp);
                                ok=cb(0,ctx);
                                if (!ok) goto end;
                                }
@@ -212,14 +215,14 @@ int X509_verify_cert(X509_STORE_CTX *ctx)
                                 * so we get any trust settings.
                                 */
                                X509_free(x);
-                               x = obj.data.x509;
+                               x = xtmp;
                                sk_X509_set(ctx->chain, i - 1, x);
                                ctx->last_untrusted=0;
                                }
                        }
                else
                        {
-                       /* worry more about this one elsewhere */
+                       /* extract and save self signed certificate for later use */
                        chain_ss=sk_X509_pop(ctx->chain);
                        ctx->last_untrusted--;
                        num--;
@@ -235,41 +238,30 @@ int X509_verify_cert(X509_STORE_CTX *ctx)
 
                /* If we are self signed, we break */
                xn=X509_get_issuer_name(x);
-               if (X509_NAME_cmp(X509_get_subject_name(x),xn) == 0)
-                       break;
+               if (ctx->check_issued(ctx,x,x)) break;
 
-               ok=X509_STORE_get_by_subject(ctx,X509_LU_X509,xn,&obj);
-               if (ok != X509_LU_X509)
-                       {
-                       if (ok == X509_LU_RETRY)
-                               {
-                               X509_OBJECT_free_contents(&obj);
-                               X509err(X509_F_X509_VERIFY_CERT,X509_R_SHOULD_RETRY);
-                               return(ok);
-                               }
-                       else if (ok != X509_LU_FAIL)
-                               {
-                               X509_OBJECT_free_contents(&obj);
-                               /* not good :-(, break anyway */
-                               return(ok);
-                               }
-                       break;
-                       }
-               x=obj.data.x509;
-               if (!sk_X509_push(ctx->chain,obj.data.x509))
+               ok = ctx->get_issuer(&xtmp, ctx, x);
+
+               if (ok < 0) return ok;
+               if (ok == 0) break;
+
+               x = xtmp;
+               if (!sk_X509_push(ctx->chain,x))
                        {
-                       X509_OBJECT_free_contents(&obj);
+                       X509_free(xtmp);
                        X509err(X509_F_X509_VERIFY_CERT,ERR_R_MALLOC_FAILURE);
-                       return(0);
+                       return 0;
                        }
                num++;
                }
 
        /* we now have our chain, lets check it... */
        xn=X509_get_issuer_name(x);
-       if (X509_NAME_cmp(X509_get_subject_name(x),xn) != 0)
+
+       /* Is last certificate looked up self signed? */
+       if (!ctx->check_issued(ctx,x,x))
                {
-               if ((chain_ss == NULL) || (X509_NAME_cmp(X509_get_subject_name(chain_ss),xn) != 0))
+               if ((chain_ss == NULL) || !ctx->check_issued(ctx, x, chain_ss))
                        {
                        if (ctx->last_untrusted >= num)
                                ctx->error=X509_V_ERR_UNABLE_TO_GET_ISSUER_CERT_LOCALLY;
@@ -294,22 +286,22 @@ int X509_verify_cert(X509_STORE_CTX *ctx)
                }
 
        /* We have the chain complete: now we need to check its purpose */
-       if(ctx->purpose > 0) ok = check_chain_purpose(ctx);
+       if (ctx->purpose > 0) ok = check_chain_purpose(ctx);
 
-       if(!ok) goto end;
+       if (!ok) goto end;
 
        /* The chain extensions are OK: check trust */
 
-       if(ctx->trust > 0) ok = check_trust(ctx);
+       if (ctx->trust > 0) ok = check_trust(ctx);
 
-       if(!ok) goto end;
+       if (!ok) goto end;
 
        /* We may as well copy down any DSA parameters that are required */
        X509_get_pubkey_parameters(NULL,ctx->chain);
 
        /* At this point, we have a chain and just need to verify it */
-       if (ctx->ctx->verify != NULL)
-               ok=ctx->ctx->verify(ctx);
+       if (ctx->verify != NULL)
+               ok=ctx->verify(ctx);
        else
                ok=internal_verify(ctx);
        if (0)
@@ -319,9 +311,62 @@ end:
                }
        if (sktmp != NULL) sk_X509_free(sktmp);
        if (chain_ss != NULL) X509_free(chain_ss);
-       return(ok);
+       return ok;
        }
 
+
+/* Given a STACK_OF(X509) find the issuer of cert (if any)
+ */
+
+static X509 *find_issuer(X509_STORE_CTX *ctx, STACK_OF(X509) *sk, X509 *x)
+{
+       int i;
+       X509 *issuer;
+       for (i = 0; i < sk_X509_num(sk); i++)
+               {
+               issuer = sk_X509_value(sk, i);
+               if (ctx->check_issued(ctx, x, issuer))
+                       return issuer;
+               }
+       return NULL;
+}
+
+/* Given a possible certificate and issuer check them */
+
+static int check_issued(X509_STORE_CTX *ctx, X509 *x, X509 *issuer)
+{
+       int ret;
+       ret = X509_check_issued(issuer, x);
+       if (ret == X509_V_OK)
+               return 1;
+       else
+               {
+               ctx->error = ret;
+               ctx->current_cert = x;
+               ctx->current_issuer = issuer;
+               if ((ctx->flags & X509_V_FLAG_CB_ISSUER_CHECK) && ctx->verify_cb)
+                       return ctx->verify_cb(0, ctx);
+               else
+                       return 0;
+               }
+       return 0;
+}
+
+/* Alternative lookup method: look from a STACK stored in other_ctx */
+
+static int get_issuer_sk(X509 **issuer, X509_STORE_CTX *ctx, X509 *x)
+{
+       *issuer = find_issuer(ctx, ctx->other_ctx, x);
+       if (*issuer)
+               {
+               CRYPTO_add(&(*issuer)->references,1,CRYPTO_LOCK_X509);
+               return 1;
+               }
+       else
+               return 0;
+}
+       
+
 /* Check a certificate chains extensions for consistency
  * with the supplied purpose
  */
@@ -334,32 +379,37 @@ static int check_chain_purpose(X509_STORE_CTX *ctx)
        int i, ok=0;
        X509 *x;
        int (*cb)();
-       cb=ctx->ctx->verify_cb;
+       cb=ctx->verify_cb;
        if (cb == NULL) cb=null_callback;
        /* Check all untrusted certificates */
-       for(i = 0; i < ctx->last_untrusted; i++) {
+       for (i = 0; i < ctx->last_untrusted; i++)
+               {
                x = sk_X509_value(ctx->chain, i);
-               if(!X509_check_purpose(x, ctx->purpose, i)) {
-                       if(i) ctx->error = X509_V_ERR_INVALID_CA;
-                       else ctx->error = X509_V_ERR_INVALID_PURPOSE;
+               if (!X509_check_purpose(x, ctx->purpose, i))
+                       {
+                       if (i)
+                               ctx->error = X509_V_ERR_INVALID_CA;
+                       else
+                               ctx->error = X509_V_ERR_INVALID_PURPOSE;
                        ctx->error_depth = i;
                        ctx->current_cert = x;
                        ok=cb(0,ctx);
-                       if(!ok) goto end;
-               }
+                       if (!ok) goto end;
+                       }
                /* Check pathlen */
-               if((i > 1) && (x->ex_pathlen != -1)
-                                       && (i > (x->ex_pathlen + 1))) {
+               if ((i > 1) && (x->ex_pathlen != -1)
+                          && (i > (x->ex_pathlen + 1)))
+                       {
                        ctx->error = X509_V_ERR_PATH_LENGTH_EXCEEDED;
                        ctx->error_depth = i;
                        ctx->current_cert = x;
                        ok=cb(0,ctx);
-                       if(!ok) goto end;
+                       if (!ok) goto end;
+                       }
                }
-       }
        ok = 1;
      end:
-       return(ok);
+ end:
+       return ok;
 #endif
 }
 
@@ -371,19 +421,22 @@ static int check_trust(X509_STORE_CTX *ctx)
        int i, ok;
        X509 *x;
        int (*cb)();
-       cb=ctx->ctx->verify_cb;
+       cb=ctx->verify_cb;
        if (cb == NULL) cb=null_callback;
 /* For now just check the last certificate in the chain */
        i = sk_X509_num(ctx->chain) - 1;
        x = sk_X509_value(ctx->chain, i);
        ok = X509_check_trust(x, ctx->trust, 0);
-       if(ok == X509_TRUST_TRUSTED) return 1;
+       if (ok == X509_TRUST_TRUSTED)
+               return 1;
        ctx->error_depth = sk_X509_num(ctx->chain) - 1;
        ctx->current_cert = x;
-       if(ok == X509_TRUST_REJECTED) ctx->error = X509_V_ERR_CERT_REJECTED;
-       else ctx->error = X509_V_ERR_CERT_UNTRUSTED;
+       if (ok == X509_TRUST_REJECTED)
+               ctx->error = X509_V_ERR_CERT_REJECTED;
+       else
+               ctx->error = X509_V_ERR_CERT_UNTRUSTED;
        ok = cb(0, ctx);
-       return(ok);
+       return ok;
 #endif
 }
 
@@ -392,17 +445,21 @@ static int internal_verify(X509_STORE_CTX *ctx)
        int i,ok=0,n;
        X509 *xs,*xi;
        EVP_PKEY *pkey=NULL;
+       time_t *ptime;
        int (*cb)();
 
-       cb=ctx->ctx->verify_cb;
+       cb=ctx->verify_cb;
        if (cb == NULL) cb=null_callback;
 
        n=sk_X509_num(ctx->chain);
        ctx->error_depth=n-1;
        n--;
        xi=sk_X509_value(ctx->chain,n);
-       if (X509_NAME_cmp(X509_get_subject_name(xi),
-               X509_get_issuer_name(xi)) == 0)
+       if (ctx->flags & X509_V_FLAG_USE_CHECK_TIME)
+               ptime = &ctx->check_time;
+       else
+               ptime = NULL;
+       if (ctx->check_issued(ctx, xi, xi))
                xs=xi;
        else
                {
@@ -448,7 +505,7 @@ static int internal_verify(X509_STORE_CTX *ctx)
                        EVP_PKEY_free(pkey);
                        pkey=NULL;
 
-                       i=X509_cmp_current_time(X509_get_notBefore(xs));
+                       i=X509_cmp_time(X509_get_notBefore(xs), ptime);
                        if (i == 0)
                                {
                                ctx->error=X509_V_ERR_ERROR_IN_CERT_NOT_BEFORE_FIELD;
@@ -466,7 +523,7 @@ static int internal_verify(X509_STORE_CTX *ctx)
                        xs->valid=1;
                        }
 
-               i=X509_cmp_current_time(X509_get_notAfter(xs));
+               i=X509_cmp_time(X509_get_notAfter(xs), ptime);
                if (i == 0)
                        {
                        ctx->error=X509_V_ERR_ERROR_IN_CERT_NOT_AFTER_FIELD;
@@ -499,10 +556,15 @@ static int internal_verify(X509_STORE_CTX *ctx)
                }
        ok=1;
 end:
-       return(ok);
+       return ok;
        }
 
 int X509_cmp_current_time(ASN1_TIME *ctm)
+{
+       return X509_cmp_time(ctm, NULL);
+}
+
+int X509_cmp_time(ASN1_TIME *ctm, time_t *cmp_time)
        {
        char *str;
        ASN1_TIME atm;
@@ -513,17 +575,20 @@ int X509_cmp_current_time(ASN1_TIME *ctm)
        p=buff1;
        i=ctm->length;
        str=(char *)ctm->data;
-       if(ctm->type == V_ASN1_UTCTIME) {
-               if ((i < 11) || (i > 17)) return(0);
+       if (ctm->type == V_ASN1_UTCTIME)
+               {
+               if ((i < 11) || (i > 17)) return 0;
                memcpy(p,str,10);
                p+=10;
                str+=10;
-       } else {
-               if(i < 13) return 0;
+               }
+       else
+               {
+               if (i < 13) return 0;
                memcpy(p,str,12);
                p+=12;
                str+=12;
-       }
+               }
 
        if ((*str == 'Z') || (*str == '-') || (*str == '+'))
                { *(p++)='0'; *(p++)='0'; }
@@ -532,13 +597,13 @@ int X509_cmp_current_time(ASN1_TIME *ctm)
                *(p++)= *(str++);
                *(p++)= *(str++);
                /* Skip any fractional seconds... */
-               if(*str == '.')
+               if (*str == '.')
                        {
                        str++;
-                       while((*str >= '0') && (*str <= '9')) str++;
+                       while ((*str >= '0') && (*str <= '9')) str++;
                        }
-
-       }
+               
+               }
        *(p++)='Z';
        *(p++)='\0';
 
@@ -547,7 +612,7 @@ int X509_cmp_current_time(ASN1_TIME *ctm)
        else
                {
                if ((*str != '+') && (str[5] != '-'))
-                       return(0);
+                       return 0;
                offset=((str[1]-'0')*10+(str[2]-'0'))*60;
                offset+=(str[3]-'0')*10+(str[4]-'0');
                if (*str == '-')
@@ -557,32 +622,40 @@ int X509_cmp_current_time(ASN1_TIME *ctm)
        atm.length=sizeof(buff2);
        atm.data=(unsigned char *)buff2;
 
-       X509_gmtime_adj(&atm,-offset*60);
+       X509_time_adj(&atm,-offset*60, cmp_time);
 
-       if(ctm->type == V_ASN1_UTCTIME)
+       if (ctm->type == V_ASN1_UTCTIME)
                {
                i=(buff1[0]-'0')*10+(buff1[1]-'0');
                if (i < 50) i+=100; /* cf. RFC 2459 */
                j=(buff2[0]-'0')*10+(buff2[1]-'0');
                if (j < 50) j+=100;
 
-               if (i < j) return (-1);
-               if (i > j) return (1);
+               if (i < j) return -1;
+               if (i > j) return 1;
                }
        i=strcmp(buff1,buff2);
        if (i == 0) /* wait a second then return younger :-) */
-               return(-1);
+               return -1;
        else
-               return(i);
+               return i;
        }
 
 ASN1_TIME *X509_gmtime_adj(ASN1_TIME *s, long adj)
+{
+       return X509_time_adj(s, adj, NULL);
+}
+
+ASN1_TIME *X509_time_adj(ASN1_TIME *s, long adj, time_t *in_tm)
        {
        time_t t;
 
-       time(&t);
+       if (in_tm) t = *in_tm;
+       else time(&t);
+
        t+=adj;
-       if(s->type == V_ASN1_UTCTIME) return(ASN1_UTCTIME_set(s,t));
+       if (!s) return ASN1_TIME_set(s, t);
+       if (s->type == V_ASN1_UTCTIME) return ASN1_UTCTIME_set(s,t);
        return ASN1_GENERALIZEDTIME_set(s, t);
        }
 
@@ -591,7 +664,7 @@ int X509_get_pubkey_parameters(EVP_PKEY *pkey, STACK_OF(X509) *chain)
        EVP_PKEY *ktmp=NULL,*ktmp2;
        int i,j;
 
-       if ((pkey != NULL) && !EVP_PKEY_missing_parameters(pkey)) return(1);
+       if ((pkey != NULL) && !EVP_PKEY_missing_parameters(pkey)) return 1;
 
        for (i=0; i<sk_X509_num(chain); i++)
                {
@@ -599,7 +672,7 @@ int X509_get_pubkey_parameters(EVP_PKEY *pkey, STACK_OF(X509) *chain)
                if (ktmp == NULL)
                        {
                        X509err(X509_F_X509_GET_PUBKEY_PARAMETERS,X509_R_UNABLE_TO_GET_CERTS_PUBLIC_KEY);
-                       return(0);
+                       return 0;
                        }
                if (!EVP_PKEY_missing_parameters(ktmp))
                        break;
@@ -612,7 +685,7 @@ int X509_get_pubkey_parameters(EVP_PKEY *pkey, STACK_OF(X509) *chain)
        if (ktmp == NULL)
                {
                X509err(X509_F_X509_GET_PUBKEY_PARAMETERS,X509_R_UNABLE_TO_FIND_PARAMETERS_IN_CHAIN);
-               return(0);
+               return 0;
                }
 
        /* first, populate the other certs */
@@ -625,101 +698,31 @@ int X509_get_pubkey_parameters(EVP_PKEY *pkey, STACK_OF(X509) *chain)
        
        if (pkey != NULL) EVP_PKEY_copy_parameters(pkey,ktmp);
        EVP_PKEY_free(ktmp);
-       return(1);
-       }
-
-int X509_STORE_add_cert(X509_STORE *ctx, X509 *x)
-       {
-       X509_OBJECT *obj,*r;
-       int ret=1;
-
-       if (x == NULL) return(0);
-       obj=(X509_OBJECT *)OPENSSL_malloc(sizeof(X509_OBJECT));
-       if (obj == NULL)
-               {
-               X509err(X509_F_X509_STORE_ADD_CERT,ERR_R_MALLOC_FAILURE);
-               return(0);
-               }
-       obj->type=X509_LU_X509;
-       obj->data.x509=x;
-
-       CRYPTO_w_lock(CRYPTO_LOCK_X509_STORE);
-
-       X509_OBJECT_up_ref_count(obj);
-
-       r=(X509_OBJECT *)lh_insert(ctx->certs,obj);
-       if (r != NULL)
-               { /* oops, put it back */
-               lh_delete(ctx->certs,obj);
-               X509_OBJECT_free_contents(obj);
-               OPENSSL_free(obj);
-               lh_insert(ctx->certs,r);
-               X509err(X509_F_X509_STORE_ADD_CERT,X509_R_CERT_ALREADY_IN_HASH_TABLE);
-               ret=0;
-               }
-
-       CRYPTO_w_unlock(CRYPTO_LOCK_X509_STORE);
-
-       return(ret);    
-       }
-
-int X509_STORE_add_crl(X509_STORE *ctx, X509_CRL *x)
-       {
-       X509_OBJECT *obj,*r;
-       int ret=1;
-
-       if (x == NULL) return(0);
-       obj=(X509_OBJECT *)OPENSSL_malloc(sizeof(X509_OBJECT));
-       if (obj == NULL)
-               {
-               X509err(X509_F_X509_STORE_ADD_CRL,ERR_R_MALLOC_FAILURE);
-               return(0);
-               }
-       obj->type=X509_LU_CRL;
-       obj->data.crl=x;
-
-       CRYPTO_w_lock(CRYPTO_LOCK_X509_STORE);
-
-       X509_OBJECT_up_ref_count(obj);
-
-       r=(X509_OBJECT *)lh_insert(ctx->certs,obj);
-       if (r != NULL)
-               { /* oops, put it back */
-               lh_delete(ctx->certs,obj);
-               X509_OBJECT_free_contents(obj);
-               OPENSSL_free(obj);
-               lh_insert(ctx->certs,r);
-               X509err(X509_F_X509_STORE_ADD_CRL,X509_R_CERT_ALREADY_IN_HASH_TABLE);
-               ret=0;
-               }
-
-       CRYPTO_w_unlock(CRYPTO_LOCK_X509_STORE);
-
-       return(ret);    
+       return 1;
        }
 
 int X509_STORE_CTX_get_ex_new_index(long argl, void *argp, CRYPTO_EX_new *new_func,
             CRYPTO_EX_dup *dup_func, CRYPTO_EX_free *free_func)
         {
         x509_store_ctx_num++;
-        return(CRYPTO_get_ex_new_index(x509_store_ctx_num-1,
+        return CRYPTO_get_ex_new_index(x509_store_ctx_num-1,
                &x509_store_ctx_method,
-                argl,argp,new_func,dup_func,free_func));
+                argl,argp,new_func,dup_func,free_func);
         }
 
 int X509_STORE_CTX_set_ex_data(X509_STORE_CTX *ctx, int idx, void *data)
        {
-       return(CRYPTO_set_ex_data(&ctx->ex_data,idx,data));
+       return CRYPTO_set_ex_data(&ctx->ex_data,idx,data);
        }
 
 void *X509_STORE_CTX_get_ex_data(X509_STORE_CTX *ctx, int idx)
        {
-       return(CRYPTO_get_ex_data(&ctx->ex_data,idx));
+       return CRYPTO_get_ex_data(&ctx->ex_data,idx);
        }
 
 int X509_STORE_CTX_get_error(X509_STORE_CTX *ctx)
        {
-       return(ctx->error);
+       return ctx->error;
        }
 
 void X509_STORE_CTX_set_error(X509_STORE_CTX *ctx, int err)
@@ -729,17 +732,17 @@ void X509_STORE_CTX_set_error(X509_STORE_CTX *ctx, int err)
 
 int X509_STORE_CTX_get_error_depth(X509_STORE_CTX *ctx)
        {
-       return(ctx->error_depth);
+       return ctx->error_depth;
        }
 
 X509 *X509_STORE_CTX_get_current_cert(X509_STORE_CTX *ctx)
        {
-       return(ctx->current_cert);
+       return ctx->current_cert;
        }
 
 STACK_OF(X509) *X509_STORE_CTX_get_chain(X509_STORE_CTX *ctx)
        {
-       return(ctx->chain);
+       return ctx->chain;
        }
 
 STACK_OF(X509) *X509_STORE_CTX_get1_chain(X509_STORE_CTX *ctx)
@@ -747,12 +750,13 @@ STACK_OF(X509) *X509_STORE_CTX_get1_chain(X509_STORE_CTX *ctx)
        int i;
        X509 *x;
        STACK_OF(X509) *chain;
-       if(!ctx->chain || !(chain = sk_X509_dup(ctx->chain))) return NULL;
-       for(i = 0; i < sk_X509_num(chain); i++) {
+       if (!ctx->chain || !(chain = sk_X509_dup(ctx->chain))) return NULL;
+       for (i = 0; i < sk_X509_num(chain); i++)
+               {
                x = sk_X509_value(chain, i);
                CRYPTO_add(&x->references, 1, CRYPTO_LOCK_X509);
-       }
-       return(chain);
+               }
+       return chain;
        }
 
 void X509_STORE_CTX_set_cert(X509_STORE_CTX *ctx, X509 *x)
@@ -790,43 +794,123 @@ int X509_STORE_CTX_purpose_inherit(X509_STORE_CTX *ctx, int def_purpose,
 {
        int idx;
        /* If purpose not set use default */
-       if(!purpose) purpose = def_purpose;
+       if (!purpose) purpose = def_purpose;
        /* If we have a purpose then check it is valid */
-       if(purpose) {
+       if (purpose)
+               {
                X509_PURPOSE *ptmp;
                idx = X509_PURPOSE_get_by_id(purpose);
-               if(idx == -1) {
+               if (idx == -1)
+                       {
                        X509err(X509_F_X509_STORE_CTX_PURPOSE_INHERIT,
                                                X509_R_UNKNOWN_PURPOSE_ID);
                        return 0;
-               }
+                       }
                ptmp = X509_PURPOSE_get0(idx);
-               if(ptmp->trust == X509_TRUST_DEFAULT) {
+               if (ptmp->trust == X509_TRUST_DEFAULT)
+                       {
                        idx = X509_PURPOSE_get_by_id(def_purpose);
-                       if(idx == -1) {
+                       if (idx == -1)
+                               {
                                X509err(X509_F_X509_STORE_CTX_PURPOSE_INHERIT,
                                                X509_R_UNKNOWN_PURPOSE_ID);
                                return 0;
-                       }
+                               }
                        ptmp = X509_PURPOSE_get0(idx);
-               }
+                       }
                /* If trust not set then get from purpose default */
-               if(!trust) trust = ptmp->trust;
-       }
-       if(trust) {
+               if (!trust) trust = ptmp->trust;
+               }
+       if (trust)
+               {
                idx = X509_TRUST_get_by_id(trust);
-               if(idx == -1) {
+               if (idx == -1)
+                       {
                        X509err(X509_F_X509_STORE_CTX_PURPOSE_INHERIT,
                                                X509_R_UNKNOWN_TRUST_ID);
                        return 0;
+                       }
                }
-       }
 
-       if(purpose) ctx->purpose = purpose;
-       if(trust) ctx->trust = trust;
+       if (purpose) ctx->purpose = purpose;
+       if (trust) ctx->trust = trust;
        return 1;
 }
 
+X509_STORE_CTX *X509_STORE_CTX_new(void)
+{
+       X509_STORE_CTX *ctx;
+       ctx = (X509_STORE_CTX *)OPENSSL_malloc(sizeof(X509_STORE_CTX));
+       if (ctx) memset(ctx, 0, sizeof(X509_STORE_CTX));
+       return ctx;
+}
+
+void X509_STORE_CTX_free(X509_STORE_CTX *ctx)
+{
+       X509_STORE_CTX_cleanup(ctx);
+       OPENSSL_free(ctx);
+}
+
+void X509_STORE_CTX_init(X509_STORE_CTX *ctx, X509_STORE *store, X509 *x509,
+            STACK_OF(X509) *chain)
+       {
+       ctx->ctx=store;
+       ctx->current_method=0;
+       ctx->cert=x509;
+       ctx->untrusted=chain;
+       ctx->last_untrusted=0;
+       ctx->purpose=0;
+       ctx->trust=0;
+       ctx->check_time=0;
+       ctx->flags=0;
+       ctx->other_ctx=NULL;
+       ctx->valid=0;
+       ctx->chain=NULL;
+       ctx->depth=9;
+       ctx->error=0;
+       ctx->error_depth=0;
+       ctx->current_cert=NULL;
+       ctx->current_issuer=NULL;
+       ctx->check_issued = check_issued;
+       ctx->get_issuer = X509_STORE_CTX_get1_issuer;
+       ctx->verify_cb = store->verify_cb;
+       ctx->verify = store->verify;
+       ctx->cleanup = 0;
+       memset(&(ctx->ex_data),0,sizeof(CRYPTO_EX_DATA));
+       }
+
+/* Set alternative lookup method: just a STACK of trusted certificates.
+ * This avoids X509_STORE nastiness where it isn't needed.
+ */
+
+void X509_STORE_CTX_trusted_stack(X509_STORE_CTX *ctx, STACK_OF(X509) *sk)
+{
+       ctx->other_ctx = sk;
+       ctx->get_issuer = get_issuer_sk;
+}
+
+void X509_STORE_CTX_cleanup(X509_STORE_CTX *ctx)
+       {
+       if (ctx->cleanup) ctx->cleanup(ctx);
+       if (ctx->chain != NULL)
+               {
+               sk_X509_pop_free(ctx->chain,X509_free);
+               ctx->chain=NULL;
+               }
+       CRYPTO_free_ex_data(x509_store_ctx_method,ctx,&(ctx->ex_data));
+       memset(&ctx->ex_data,0,sizeof(CRYPTO_EX_DATA));
+       }
+
+void X509_STORE_CTX_set_flags(X509_STORE_CTX *ctx, long flags)
+       {
+       ctx->flags |= flags;
+       }
+
+void X509_STORE_CTX_set_time(X509_STORE_CTX *ctx, long flags, time_t t)
+       {
+       ctx->check_time = t;
+       ctx->flags |= X509_V_FLAG_USE_CHECK_TIME;
+       }
 
 IMPLEMENT_STACK_OF(X509)
 IMPLEMENT_ASN1_SET_OF(X509)
index cc0bd3dbc258a9d9615866b0916098e41c30b73a..e289d5309a47b8fa8addf6b2567994c8be13df6c 100644 (file)
@@ -131,6 +131,7 @@ typedef struct x509_object_st
 typedef struct x509_lookup_st X509_LOOKUP;
 
 DECLARE_STACK_OF(X509_LOOKUP)
+DECLARE_STACK_OF(X509_OBJECT)
 
 /* This is a static that defines the function interface */
 typedef struct x509_lookup_method_st
@@ -153,7 +154,7 @@ typedef struct x509_lookup_method_st
                            X509_OBJECT *ret);
        } X509_LOOKUP_METHOD;
 
-typedef struct x509_store_state_st X509_STORE_CTX;
+typedef struct x509_store_ctx_st X509_STORE_CTX;
 
 /* This is used to hold everything.  It is used for all certificate
  * validation.  Once we have a certificate chain, the 'verify'
@@ -162,11 +163,7 @@ typedef struct x509_store_st
        {
        /* The following is a cache of trusted certs */
        int cache;      /* if true, stash any hits */
-#ifndef NO_LHASH
-       LHASH *certs;   /* cached certs; */ 
-#else
-       char *certs;
-#endif
+       STACK_OF(X509_OBJECT) *objs;    /* Cache of all objects */
 
        /* These are external lookup methods */
        STACK_OF(X509_LOOKUP) *get_cert_methods;
@@ -194,10 +191,10 @@ struct x509_lookup_st
        X509_STORE *store_ctx;  /* who owns us */
        };
 
-/* This is a temporary used when processing cert chains.  Since the
+/* This is a used when verifying cert chains.  Since the
  * gathering of the cert chain can take some time (and have to be
  * 'retried', this needs to be kept and passed around. */
-struct x509_store_state_st      /* X509_STORE_CTX */
+struct x509_store_ctx_st      /* X509_STORE_CTX */
        {
        X509_STORE *ctx;
        int current_method;     /* used when looking up certs */
@@ -207,6 +204,16 @@ struct x509_store_state_st      /* X509_STORE_CTX */
        STACK_OF(X509) *untrusted;      /* chain of X509s - untrusted - passed in */
        int purpose;            /* purpose to check untrusted certificates */
        int trust;              /* trust setting to check */
+       time_t  check_time;     /* time to make verify at */
+       unsigned long flags;    /* Various verify flags */
+       void *other_ctx;        /* Other info for use with get_issuer() */
+
+       /* Callbacks for various operations */
+       int (*verify)(X509_STORE_CTX *ctx);     /* called to verify a certificate */
+       int (*verify_cb)(int ok,X509_STORE_CTX *ctx);           /* error callback */
+       int (*get_issuer)(X509 **issuer, X509_STORE_CTX *ctx, X509 *x); /* get issuers cert from ctx */
+       int (*check_issued)(X509_STORE_CTX *ctx, X509 *x, X509 *issuer); /* check issued */
+       int (*cleanup)(X509_STORE_CTX *ctx);
 
        /* The following is built up */
        int depth;              /* how far to go looking up certs */
@@ -218,6 +225,7 @@ struct x509_store_state_st      /* X509_STORE_CTX */
        int error_depth;
        int error;
        X509 *current_cert;
+       X509 *current_issuer;   /* cert currently being tested as valid issuer */
 
        CRYPTO_EX_DATA ex_data;
        };
@@ -268,10 +276,20 @@ struct x509_store_state_st      /* X509_STORE_CTX */
 #define                X509_V_ERR_INVALID_PURPOSE                      26
 #define                X509_V_ERR_CERT_UNTRUSTED                       27
 #define                X509_V_ERR_CERT_REJECTED                        28
+/* These are 'informational' when looking for issuer cert */
+#define                X509_V_ERR_SUBJECT_ISSUER_MISMATCH              29
+#define                X509_V_ERR_AKID_SKID_MISMATCH                   30
+#define                X509_V_ERR_AKID_ISSUER_SERIAL_MISMATCH          31
+#define                X509_V_ERR_KEYUSAGE_NO_CERTSIGN                 32
 
 /* The application is not happy */
 #define                X509_V_ERR_APPLICATION_VERIFICATION             50
 
+/* Certificate verify flags */
+
+#define        X509_V_FLAG_CB_ISSUER_CHECK             0x1     /* Send issuer+subject checks to verify_cb */
+#define        X509_V_FLAG_USE_CHECK_TIME              0x2     /* Use check time instead of current time */
+
                  /* These functions are being redefined in another directory,
                     and clash when the linker is case-insensitive, so let's
                     hide them a little, by giving them an extra 'o' at the
@@ -287,18 +305,23 @@ struct x509_store_state_st      /* X509_STORE_CTX */
 #define X509v3_add_standard_extensions oX509v3_add_standard_extensions
 #endif
 
-#ifndef NO_LHASH
-X509_OBJECT *X509_OBJECT_retrieve_by_subject(LHASH *h,int type,X509_NAME *name);
-#endif
+int X509_OBJECT_idx_by_subject(STACK_OF(X509_OBJECT) *h, int type,
+            X509_NAME *name);
+X509_OBJECT *X509_OBJECT_retrieve_by_subject(STACK_OF(X509_OBJECT) *h,int type,X509_NAME *name);
+X509_OBJECT *X509_OBJECT_retrieve_match(STACK_OF(X509_OBJECT) *h, X509_OBJECT *x);
 void X509_OBJECT_up_ref_count(X509_OBJECT *a);
 void X509_OBJECT_free_contents(X509_OBJECT *a);
 X509_STORE *X509_STORE_new(void );
 void X509_STORE_free(X509_STORE *v);
 
 X509_STORE_CTX *X509_STORE_CTX_new(void);
+
+int X509_STORE_CTX_get1_issuer(X509 **issuer, X509_STORE_CTX *ctx, X509 *x);
+
 void X509_STORE_CTX_free(X509_STORE_CTX *ctx);
 void X509_STORE_CTX_init(X509_STORE_CTX *ctx, X509_STORE *store,
                         X509 *x509, STACK_OF(X509) *chain);
+void X509_STORE_CTX_trusted_stack(X509_STORE_CTX *ctx, STACK_OF(X509) *sk);
 void X509_STORE_CTX_cleanup(X509_STORE_CTX *ctx);
 
 X509_LOOKUP *X509_STORE_add_lookup(X509_STORE *v, X509_LOOKUP_METHOD *m);
@@ -357,6 +380,8 @@ int X509_STORE_CTX_set_purpose(X509_STORE_CTX *ctx, int purpose);
 int X509_STORE_CTX_set_trust(X509_STORE_CTX *ctx, int trust);
 int X509_STORE_CTX_purpose_inherit(X509_STORE_CTX *ctx, int def_purpose,
                                int purpose, int trust);
+void X509_STORE_CTX_set_flags(X509_STORE_CTX *ctx, long flags);
+void X509_STORE_CTX_set_time(X509_STORE_CTX *ctx, long flags, time_t t);
 
 #ifdef  __cplusplus
 }
index dd5796e205d2f5d4571d85cb21514a3ca5af331b..9bd6e2a39bd6d2fe049ec806ed3beabea84f5d46 100644 (file)
@@ -504,6 +504,17 @@ EVP_PKEY *d2i_PrivateKey_fp(FILE *fp, EVP_PKEY **a)
                (char *(*)())d2i_AutoPrivateKey, (fp),(unsigned char **)(a)));
 }
 
+int i2d_PUBKEY_fp(FILE *fp, EVP_PKEY *pkey)
+       {
+       return(ASN1_i2d_fp(i2d_PUBKEY,fp,(unsigned char *)pkey));
+       }
+
+EVP_PKEY *d2i_PUBKEY_fp(FILE *fp, EVP_PKEY **a)
+{
+       return((EVP_PKEY *)ASN1_d2i_fp((char *(*)())EVP_PKEY_new,
+               (char *(*)())d2i_PUBKEY, (fp),(unsigned char **)(a)));
+}
+
 #endif
 
 PKCS8_PRIV_KEY_INFO *d2i_PKCS8_PRIV_KEY_INFO_bio(BIO *bp,
@@ -541,3 +552,14 @@ EVP_PKEY *d2i_PrivateKey_bio(BIO *bp, EVP_PKEY **a)
        return((EVP_PKEY *)ASN1_d2i_bio((char *(*)())EVP_PKEY_new,
                (char *(*)())d2i_AutoPrivateKey, (bp),(unsigned char **)(a)));
        }
+
+int i2d_PUBKEY_bio(BIO *bp, EVP_PKEY *pkey)
+       {
+       return(ASN1_i2d_bio(i2d_PUBKEY,bp,(unsigned char *)pkey));
+       }
+
+EVP_PKEY *d2i_PUBKEY_bio(BIO *bp, EVP_PKEY **a)
+       {
+       return((EVP_PKEY *)ASN1_d2i_bio((char *(*)())EVP_PKEY_new,
+               (char *(*)())d2i_PUBKEY, (bp),(unsigned char **)(a)));
+       }
index 6e7057d39c39bcf2b5fa0470c5c2eb5dc146362f..483df46fd416a1050cc978cf0c48bf6dddee40e7 100644 (file)
@@ -92,14 +92,15 @@ v3_akey.o: ../../include/openssl/e_os.h ../../include/openssl/e_os.h
 v3_akey.o: ../../include/openssl/e_os2.h ../../include/openssl/err.h
 v3_akey.o: ../../include/openssl/evp.h ../../include/openssl/idea.h
 v3_akey.o: ../../include/openssl/lhash.h ../../include/openssl/md2.h
-v3_akey.o: ../../include/openssl/md5.h ../../include/openssl/mdc2.h
-v3_akey.o: ../../include/openssl/obj_mac.h ../../include/openssl/objects.h
-v3_akey.o: ../../include/openssl/opensslconf.h ../../include/openssl/opensslv.h
-v3_akey.o: ../../include/openssl/pkcs7.h ../../include/openssl/rc2.h
-v3_akey.o: ../../include/openssl/rc4.h ../../include/openssl/rc5.h
-v3_akey.o: ../../include/openssl/ripemd.h ../../include/openssl/rsa.h
-v3_akey.o: ../../include/openssl/safestack.h ../../include/openssl/sha.h
-v3_akey.o: ../../include/openssl/stack.h ../../include/openssl/x509.h
+v3_akey.o: ../../include/openssl/md4.h ../../include/openssl/md5.h
+v3_akey.o: ../../include/openssl/mdc2.h ../../include/openssl/obj_mac.h
+v3_akey.o: ../../include/openssl/objects.h ../../include/openssl/opensslconf.h
+v3_akey.o: ../../include/openssl/opensslv.h ../../include/openssl/pkcs7.h
+v3_akey.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h
+v3_akey.o: ../../include/openssl/rc5.h ../../include/openssl/ripemd.h
+v3_akey.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
+v3_akey.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
+v3_akey.o: ../../include/openssl/symhacks.h ../../include/openssl/x509.h
 v3_akey.o: ../../include/openssl/x509_vfy.h ../../include/openssl/x509v3.h
 v3_akey.o: ../cryptlib.h
 v3_alt.o: ../../include/openssl/asn1.h ../../include/openssl/bio.h
@@ -111,14 +112,15 @@ v3_alt.o: ../../include/openssl/dsa.h ../../include/openssl/e_os.h
 v3_alt.o: ../../include/openssl/e_os.h ../../include/openssl/e_os2.h
 v3_alt.o: ../../include/openssl/err.h ../../include/openssl/evp.h
 v3_alt.o: ../../include/openssl/idea.h ../../include/openssl/lhash.h
-v3_alt.o: ../../include/openssl/md2.h ../../include/openssl/md5.h
-v3_alt.o: ../../include/openssl/mdc2.h ../../include/openssl/obj_mac.h
-v3_alt.o: ../../include/openssl/objects.h ../../include/openssl/opensslconf.h
-v3_alt.o: ../../include/openssl/opensslv.h ../../include/openssl/pkcs7.h
-v3_alt.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h
-v3_alt.o: ../../include/openssl/rc5.h ../../include/openssl/ripemd.h
-v3_alt.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
-v3_alt.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
+v3_alt.o: ../../include/openssl/md2.h ../../include/openssl/md4.h
+v3_alt.o: ../../include/openssl/md5.h ../../include/openssl/mdc2.h
+v3_alt.o: ../../include/openssl/obj_mac.h ../../include/openssl/objects.h
+v3_alt.o: ../../include/openssl/opensslconf.h ../../include/openssl/opensslv.h
+v3_alt.o: ../../include/openssl/pkcs7.h ../../include/openssl/rc2.h
+v3_alt.o: ../../include/openssl/rc4.h ../../include/openssl/rc5.h
+v3_alt.o: ../../include/openssl/ripemd.h ../../include/openssl/rsa.h
+v3_alt.o: ../../include/openssl/safestack.h ../../include/openssl/sha.h
+v3_alt.o: ../../include/openssl/stack.h ../../include/openssl/symhacks.h
 v3_alt.o: ../../include/openssl/x509.h ../../include/openssl/x509_vfy.h
 v3_alt.o: ../../include/openssl/x509v3.h ../cryptlib.h
 v3_bcons.o: ../../include/openssl/asn1.h ../../include/openssl/asn1_mac.h
@@ -131,16 +133,17 @@ v3_bcons.o: ../../include/openssl/e_os.h ../../include/openssl/e_os.h
 v3_bcons.o: ../../include/openssl/e_os2.h ../../include/openssl/err.h
 v3_bcons.o: ../../include/openssl/evp.h ../../include/openssl/idea.h
 v3_bcons.o: ../../include/openssl/lhash.h ../../include/openssl/md2.h
-v3_bcons.o: ../../include/openssl/md5.h ../../include/openssl/mdc2.h
-v3_bcons.o: ../../include/openssl/obj_mac.h ../../include/openssl/objects.h
-v3_bcons.o: ../../include/openssl/opensslconf.h
+v3_bcons.o: ../../include/openssl/md4.h ../../include/openssl/md5.h
+v3_bcons.o: ../../include/openssl/mdc2.h ../../include/openssl/obj_mac.h
+v3_bcons.o: ../../include/openssl/objects.h ../../include/openssl/opensslconf.h
 v3_bcons.o: ../../include/openssl/opensslv.h ../../include/openssl/pkcs7.h
 v3_bcons.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h
 v3_bcons.o: ../../include/openssl/rc5.h ../../include/openssl/ripemd.h
 v3_bcons.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
 v3_bcons.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
-v3_bcons.o: ../../include/openssl/x509.h ../../include/openssl/x509_vfy.h
-v3_bcons.o: ../../include/openssl/x509v3.h ../cryptlib.h
+v3_bcons.o: ../../include/openssl/symhacks.h ../../include/openssl/x509.h
+v3_bcons.o: ../../include/openssl/x509_vfy.h ../../include/openssl/x509v3.h
+v3_bcons.o: ../cryptlib.h
 v3_bitst.o: ../../include/openssl/asn1.h ../../include/openssl/bio.h
 v3_bitst.o: ../../include/openssl/blowfish.h ../../include/openssl/bn.h
 v3_bitst.o: ../../include/openssl/buffer.h ../../include/openssl/cast.h
@@ -150,16 +153,18 @@ v3_bitst.o: ../../include/openssl/dsa.h ../../include/openssl/e_os.h
 v3_bitst.o: ../../include/openssl/e_os.h ../../include/openssl/e_os2.h
 v3_bitst.o: ../../include/openssl/err.h ../../include/openssl/evp.h
 v3_bitst.o: ../../include/openssl/idea.h ../../include/openssl/lhash.h
-v3_bitst.o: ../../include/openssl/md2.h ../../include/openssl/md5.h
-v3_bitst.o: ../../include/openssl/mdc2.h ../../include/openssl/obj_mac.h
-v3_bitst.o: ../../include/openssl/objects.h ../../include/openssl/opensslconf.h
+v3_bitst.o: ../../include/openssl/md2.h ../../include/openssl/md4.h
+v3_bitst.o: ../../include/openssl/md5.h ../../include/openssl/mdc2.h
+v3_bitst.o: ../../include/openssl/obj_mac.h ../../include/openssl/objects.h
+v3_bitst.o: ../../include/openssl/opensslconf.h
 v3_bitst.o: ../../include/openssl/opensslv.h ../../include/openssl/pkcs7.h
 v3_bitst.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h
 v3_bitst.o: ../../include/openssl/rc5.h ../../include/openssl/ripemd.h
 v3_bitst.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
 v3_bitst.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
-v3_bitst.o: ../../include/openssl/x509.h ../../include/openssl/x509_vfy.h
-v3_bitst.o: ../../include/openssl/x509v3.h ../cryptlib.h
+v3_bitst.o: ../../include/openssl/symhacks.h ../../include/openssl/x509.h
+v3_bitst.o: ../../include/openssl/x509_vfy.h ../../include/openssl/x509v3.h
+v3_bitst.o: ../cryptlib.h
 v3_conf.o: ../../include/openssl/asn1.h ../../include/openssl/bio.h
 v3_conf.o: ../../include/openssl/blowfish.h ../../include/openssl/bn.h
 v3_conf.o: ../../include/openssl/buffer.h ../../include/openssl/cast.h
@@ -169,14 +174,15 @@ v3_conf.o: ../../include/openssl/dsa.h ../../include/openssl/e_os.h
 v3_conf.o: ../../include/openssl/e_os.h ../../include/openssl/e_os2.h
 v3_conf.o: ../../include/openssl/err.h ../../include/openssl/evp.h
 v3_conf.o: ../../include/openssl/idea.h ../../include/openssl/lhash.h
-v3_conf.o: ../../include/openssl/md2.h ../../include/openssl/md5.h
-v3_conf.o: ../../include/openssl/mdc2.h ../../include/openssl/obj_mac.h
-v3_conf.o: ../../include/openssl/objects.h ../../include/openssl/opensslconf.h
-v3_conf.o: ../../include/openssl/opensslv.h ../../include/openssl/pkcs7.h
-v3_conf.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h
-v3_conf.o: ../../include/openssl/rc5.h ../../include/openssl/ripemd.h
-v3_conf.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
-v3_conf.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
+v3_conf.o: ../../include/openssl/md2.h ../../include/openssl/md4.h
+v3_conf.o: ../../include/openssl/md5.h ../../include/openssl/mdc2.h
+v3_conf.o: ../../include/openssl/obj_mac.h ../../include/openssl/objects.h
+v3_conf.o: ../../include/openssl/opensslconf.h ../../include/openssl/opensslv.h
+v3_conf.o: ../../include/openssl/pkcs7.h ../../include/openssl/rc2.h
+v3_conf.o: ../../include/openssl/rc4.h ../../include/openssl/rc5.h
+v3_conf.o: ../../include/openssl/ripemd.h ../../include/openssl/rsa.h
+v3_conf.o: ../../include/openssl/safestack.h ../../include/openssl/sha.h
+v3_conf.o: ../../include/openssl/stack.h ../../include/openssl/symhacks.h
 v3_conf.o: ../../include/openssl/x509.h ../../include/openssl/x509_vfy.h
 v3_conf.o: ../../include/openssl/x509v3.h ../cryptlib.h
 v3_cpols.o: ../../include/openssl/asn1.h ../../include/openssl/asn1_mac.h
@@ -189,16 +195,17 @@ v3_cpols.o: ../../include/openssl/e_os.h ../../include/openssl/e_os.h
 v3_cpols.o: ../../include/openssl/e_os2.h ../../include/openssl/err.h
 v3_cpols.o: ../../include/openssl/evp.h ../../include/openssl/idea.h
 v3_cpols.o: ../../include/openssl/lhash.h ../../include/openssl/md2.h
-v3_cpols.o: ../../include/openssl/md5.h ../../include/openssl/mdc2.h
-v3_cpols.o: ../../include/openssl/obj_mac.h ../../include/openssl/objects.h
-v3_cpols.o: ../../include/openssl/opensslconf.h
+v3_cpols.o: ../../include/openssl/md4.h ../../include/openssl/md5.h
+v3_cpols.o: ../../include/openssl/mdc2.h ../../include/openssl/obj_mac.h
+v3_cpols.o: ../../include/openssl/objects.h ../../include/openssl/opensslconf.h
 v3_cpols.o: ../../include/openssl/opensslv.h ../../include/openssl/pkcs7.h
 v3_cpols.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h
 v3_cpols.o: ../../include/openssl/rc5.h ../../include/openssl/ripemd.h
 v3_cpols.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
 v3_cpols.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
-v3_cpols.o: ../../include/openssl/x509.h ../../include/openssl/x509_vfy.h
-v3_cpols.o: ../../include/openssl/x509v3.h ../cryptlib.h
+v3_cpols.o: ../../include/openssl/symhacks.h ../../include/openssl/x509.h
+v3_cpols.o: ../../include/openssl/x509_vfy.h ../../include/openssl/x509v3.h
+v3_cpols.o: ../cryptlib.h
 v3_crld.o: ../../include/openssl/asn1.h ../../include/openssl/asn1_mac.h
 v3_crld.o: ../../include/openssl/bio.h ../../include/openssl/blowfish.h
 v3_crld.o: ../../include/openssl/bn.h ../../include/openssl/buffer.h
@@ -209,14 +216,15 @@ v3_crld.o: ../../include/openssl/e_os.h ../../include/openssl/e_os.h
 v3_crld.o: ../../include/openssl/e_os2.h ../../include/openssl/err.h
 v3_crld.o: ../../include/openssl/evp.h ../../include/openssl/idea.h
 v3_crld.o: ../../include/openssl/lhash.h ../../include/openssl/md2.h
-v3_crld.o: ../../include/openssl/md5.h ../../include/openssl/mdc2.h
-v3_crld.o: ../../include/openssl/obj_mac.h ../../include/openssl/objects.h
-v3_crld.o: ../../include/openssl/opensslconf.h ../../include/openssl/opensslv.h
-v3_crld.o: ../../include/openssl/pkcs7.h ../../include/openssl/rc2.h
-v3_crld.o: ../../include/openssl/rc4.h ../../include/openssl/rc5.h
-v3_crld.o: ../../include/openssl/ripemd.h ../../include/openssl/rsa.h
-v3_crld.o: ../../include/openssl/safestack.h ../../include/openssl/sha.h
-v3_crld.o: ../../include/openssl/stack.h ../../include/openssl/x509.h
+v3_crld.o: ../../include/openssl/md4.h ../../include/openssl/md5.h
+v3_crld.o: ../../include/openssl/mdc2.h ../../include/openssl/obj_mac.h
+v3_crld.o: ../../include/openssl/objects.h ../../include/openssl/opensslconf.h
+v3_crld.o: ../../include/openssl/opensslv.h ../../include/openssl/pkcs7.h
+v3_crld.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h
+v3_crld.o: ../../include/openssl/rc5.h ../../include/openssl/ripemd.h
+v3_crld.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
+v3_crld.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
+v3_crld.o: ../../include/openssl/symhacks.h ../../include/openssl/x509.h
 v3_crld.o: ../../include/openssl/x509_vfy.h ../../include/openssl/x509v3.h
 v3_crld.o: ../cryptlib.h
 v3_enum.o: ../../include/openssl/asn1.h ../../include/openssl/bio.h
@@ -228,14 +236,15 @@ v3_enum.o: ../../include/openssl/dsa.h ../../include/openssl/e_os.h
 v3_enum.o: ../../include/openssl/e_os.h ../../include/openssl/e_os2.h
 v3_enum.o: ../../include/openssl/err.h ../../include/openssl/evp.h
 v3_enum.o: ../../include/openssl/idea.h ../../include/openssl/lhash.h
-v3_enum.o: ../../include/openssl/md2.h ../../include/openssl/md5.h
-v3_enum.o: ../../include/openssl/mdc2.h ../../include/openssl/obj_mac.h
-v3_enum.o: ../../include/openssl/objects.h ../../include/openssl/opensslconf.h
-v3_enum.o: ../../include/openssl/opensslv.h ../../include/openssl/pkcs7.h
-v3_enum.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h
-v3_enum.o: ../../include/openssl/rc5.h ../../include/openssl/ripemd.h
-v3_enum.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
-v3_enum.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
+v3_enum.o: ../../include/openssl/md2.h ../../include/openssl/md4.h
+v3_enum.o: ../../include/openssl/md5.h ../../include/openssl/mdc2.h
+v3_enum.o: ../../include/openssl/obj_mac.h ../../include/openssl/objects.h
+v3_enum.o: ../../include/openssl/opensslconf.h ../../include/openssl/opensslv.h
+v3_enum.o: ../../include/openssl/pkcs7.h ../../include/openssl/rc2.h
+v3_enum.o: ../../include/openssl/rc4.h ../../include/openssl/rc5.h
+v3_enum.o: ../../include/openssl/ripemd.h ../../include/openssl/rsa.h
+v3_enum.o: ../../include/openssl/safestack.h ../../include/openssl/sha.h
+v3_enum.o: ../../include/openssl/stack.h ../../include/openssl/symhacks.h
 v3_enum.o: ../../include/openssl/x509.h ../../include/openssl/x509_vfy.h
 v3_enum.o: ../../include/openssl/x509v3.h ../cryptlib.h
 v3_extku.o: ../../include/openssl/asn1.h ../../include/openssl/bio.h
@@ -247,16 +256,18 @@ v3_extku.o: ../../include/openssl/dsa.h ../../include/openssl/e_os.h
 v3_extku.o: ../../include/openssl/e_os.h ../../include/openssl/e_os2.h
 v3_extku.o: ../../include/openssl/err.h ../../include/openssl/evp.h
 v3_extku.o: ../../include/openssl/idea.h ../../include/openssl/lhash.h
-v3_extku.o: ../../include/openssl/md2.h ../../include/openssl/md5.h
-v3_extku.o: ../../include/openssl/mdc2.h ../../include/openssl/obj_mac.h
-v3_extku.o: ../../include/openssl/objects.h ../../include/openssl/opensslconf.h
+v3_extku.o: ../../include/openssl/md2.h ../../include/openssl/md4.h
+v3_extku.o: ../../include/openssl/md5.h ../../include/openssl/mdc2.h
+v3_extku.o: ../../include/openssl/obj_mac.h ../../include/openssl/objects.h
+v3_extku.o: ../../include/openssl/opensslconf.h
 v3_extku.o: ../../include/openssl/opensslv.h ../../include/openssl/pkcs7.h
 v3_extku.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h
 v3_extku.o: ../../include/openssl/rc5.h ../../include/openssl/ripemd.h
 v3_extku.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
 v3_extku.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
-v3_extku.o: ../../include/openssl/x509.h ../../include/openssl/x509_vfy.h
-v3_extku.o: ../../include/openssl/x509v3.h ../cryptlib.h
+v3_extku.o: ../../include/openssl/symhacks.h ../../include/openssl/x509.h
+v3_extku.o: ../../include/openssl/x509_vfy.h ../../include/openssl/x509v3.h
+v3_extku.o: ../cryptlib.h
 v3_genn.o: ../../include/openssl/asn1.h ../../include/openssl/asn1_mac.h
 v3_genn.o: ../../include/openssl/bio.h ../../include/openssl/blowfish.h
 v3_genn.o: ../../include/openssl/bn.h ../../include/openssl/buffer.h
@@ -267,14 +278,15 @@ v3_genn.o: ../../include/openssl/e_os.h ../../include/openssl/e_os.h
 v3_genn.o: ../../include/openssl/e_os2.h ../../include/openssl/err.h
 v3_genn.o: ../../include/openssl/evp.h ../../include/openssl/idea.h
 v3_genn.o: ../../include/openssl/lhash.h ../../include/openssl/md2.h
-v3_genn.o: ../../include/openssl/md5.h ../../include/openssl/mdc2.h
-v3_genn.o: ../../include/openssl/obj_mac.h ../../include/openssl/objects.h
-v3_genn.o: ../../include/openssl/opensslconf.h ../../include/openssl/opensslv.h
-v3_genn.o: ../../include/openssl/pkcs7.h ../../include/openssl/rc2.h
-v3_genn.o: ../../include/openssl/rc4.h ../../include/openssl/rc5.h
-v3_genn.o: ../../include/openssl/ripemd.h ../../include/openssl/rsa.h
-v3_genn.o: ../../include/openssl/safestack.h ../../include/openssl/sha.h
-v3_genn.o: ../../include/openssl/stack.h ../../include/openssl/x509.h
+v3_genn.o: ../../include/openssl/md4.h ../../include/openssl/md5.h
+v3_genn.o: ../../include/openssl/mdc2.h ../../include/openssl/obj_mac.h
+v3_genn.o: ../../include/openssl/objects.h ../../include/openssl/opensslconf.h
+v3_genn.o: ../../include/openssl/opensslv.h ../../include/openssl/pkcs7.h
+v3_genn.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h
+v3_genn.o: ../../include/openssl/rc5.h ../../include/openssl/ripemd.h
+v3_genn.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
+v3_genn.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
+v3_genn.o: ../../include/openssl/symhacks.h ../../include/openssl/x509.h
 v3_genn.o: ../../include/openssl/x509_vfy.h ../../include/openssl/x509v3.h
 v3_genn.o: ../cryptlib.h
 v3_ia5.o: ../../include/openssl/asn1.h ../../include/openssl/bio.h
@@ -286,14 +298,15 @@ v3_ia5.o: ../../include/openssl/dsa.h ../../include/openssl/e_os.h
 v3_ia5.o: ../../include/openssl/e_os.h ../../include/openssl/e_os2.h
 v3_ia5.o: ../../include/openssl/err.h ../../include/openssl/evp.h
 v3_ia5.o: ../../include/openssl/idea.h ../../include/openssl/lhash.h
-v3_ia5.o: ../../include/openssl/md2.h ../../include/openssl/md5.h
-v3_ia5.o: ../../include/openssl/mdc2.h ../../include/openssl/obj_mac.h
-v3_ia5.o: ../../include/openssl/objects.h ../../include/openssl/opensslconf.h
-v3_ia5.o: ../../include/openssl/opensslv.h ../../include/openssl/pkcs7.h
-v3_ia5.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h
-v3_ia5.o: ../../include/openssl/rc5.h ../../include/openssl/ripemd.h
-v3_ia5.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
-v3_ia5.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
+v3_ia5.o: ../../include/openssl/md2.h ../../include/openssl/md4.h
+v3_ia5.o: ../../include/openssl/md5.h ../../include/openssl/mdc2.h
+v3_ia5.o: ../../include/openssl/obj_mac.h ../../include/openssl/objects.h
+v3_ia5.o: ../../include/openssl/opensslconf.h ../../include/openssl/opensslv.h
+v3_ia5.o: ../../include/openssl/pkcs7.h ../../include/openssl/rc2.h
+v3_ia5.o: ../../include/openssl/rc4.h ../../include/openssl/rc5.h
+v3_ia5.o: ../../include/openssl/ripemd.h ../../include/openssl/rsa.h
+v3_ia5.o: ../../include/openssl/safestack.h ../../include/openssl/sha.h
+v3_ia5.o: ../../include/openssl/stack.h ../../include/openssl/symhacks.h
 v3_ia5.o: ../../include/openssl/x509.h ../../include/openssl/x509_vfy.h
 v3_ia5.o: ../../include/openssl/x509v3.h ../cryptlib.h
 v3_info.o: ../../include/openssl/asn1.h ../../include/openssl/asn1_mac.h
@@ -306,14 +319,15 @@ v3_info.o: ../../include/openssl/e_os.h ../../include/openssl/e_os.h
 v3_info.o: ../../include/openssl/e_os2.h ../../include/openssl/err.h
 v3_info.o: ../../include/openssl/evp.h ../../include/openssl/idea.h
 v3_info.o: ../../include/openssl/lhash.h ../../include/openssl/md2.h
-v3_info.o: ../../include/openssl/md5.h ../../include/openssl/mdc2.h
-v3_info.o: ../../include/openssl/obj_mac.h ../../include/openssl/objects.h
-v3_info.o: ../../include/openssl/opensslconf.h ../../include/openssl/opensslv.h
-v3_info.o: ../../include/openssl/pkcs7.h ../../include/openssl/rc2.h
-v3_info.o: ../../include/openssl/rc4.h ../../include/openssl/rc5.h
-v3_info.o: ../../include/openssl/ripemd.h ../../include/openssl/rsa.h
-v3_info.o: ../../include/openssl/safestack.h ../../include/openssl/sha.h
-v3_info.o: ../../include/openssl/stack.h ../../include/openssl/x509.h
+v3_info.o: ../../include/openssl/md4.h ../../include/openssl/md5.h
+v3_info.o: ../../include/openssl/mdc2.h ../../include/openssl/obj_mac.h
+v3_info.o: ../../include/openssl/objects.h ../../include/openssl/opensslconf.h
+v3_info.o: ../../include/openssl/opensslv.h ../../include/openssl/pkcs7.h
+v3_info.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h
+v3_info.o: ../../include/openssl/rc5.h ../../include/openssl/ripemd.h
+v3_info.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
+v3_info.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
+v3_info.o: ../../include/openssl/symhacks.h ../../include/openssl/x509.h
 v3_info.o: ../../include/openssl/x509_vfy.h ../../include/openssl/x509v3.h
 v3_info.o: ../cryptlib.h
 v3_int.o: ../../include/openssl/asn1.h ../../include/openssl/bio.h
@@ -325,14 +339,15 @@ v3_int.o: ../../include/openssl/dsa.h ../../include/openssl/e_os.h
 v3_int.o: ../../include/openssl/e_os.h ../../include/openssl/e_os2.h
 v3_int.o: ../../include/openssl/err.h ../../include/openssl/evp.h
 v3_int.o: ../../include/openssl/idea.h ../../include/openssl/lhash.h
-v3_int.o: ../../include/openssl/md2.h ../../include/openssl/md5.h
-v3_int.o: ../../include/openssl/mdc2.h ../../include/openssl/obj_mac.h
-v3_int.o: ../../include/openssl/objects.h ../../include/openssl/opensslconf.h
-v3_int.o: ../../include/openssl/opensslv.h ../../include/openssl/pkcs7.h
-v3_int.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h
-v3_int.o: ../../include/openssl/rc5.h ../../include/openssl/ripemd.h
-v3_int.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
-v3_int.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
+v3_int.o: ../../include/openssl/md2.h ../../include/openssl/md4.h
+v3_int.o: ../../include/openssl/md5.h ../../include/openssl/mdc2.h
+v3_int.o: ../../include/openssl/obj_mac.h ../../include/openssl/objects.h
+v3_int.o: ../../include/openssl/opensslconf.h ../../include/openssl/opensslv.h
+v3_int.o: ../../include/openssl/pkcs7.h ../../include/openssl/rc2.h
+v3_int.o: ../../include/openssl/rc4.h ../../include/openssl/rc5.h
+v3_int.o: ../../include/openssl/ripemd.h ../../include/openssl/rsa.h
+v3_int.o: ../../include/openssl/safestack.h ../../include/openssl/sha.h
+v3_int.o: ../../include/openssl/stack.h ../../include/openssl/symhacks.h
 v3_int.o: ../../include/openssl/x509.h ../../include/openssl/x509_vfy.h
 v3_int.o: ../../include/openssl/x509v3.h ../cryptlib.h
 v3_lib.o: ../../include/openssl/asn1.h ../../include/openssl/bio.h
@@ -344,14 +359,15 @@ v3_lib.o: ../../include/openssl/dsa.h ../../include/openssl/e_os.h
 v3_lib.o: ../../include/openssl/e_os.h ../../include/openssl/e_os2.h
 v3_lib.o: ../../include/openssl/err.h ../../include/openssl/evp.h
 v3_lib.o: ../../include/openssl/idea.h ../../include/openssl/lhash.h
-v3_lib.o: ../../include/openssl/md2.h ../../include/openssl/md5.h
-v3_lib.o: ../../include/openssl/mdc2.h ../../include/openssl/obj_mac.h
-v3_lib.o: ../../include/openssl/objects.h ../../include/openssl/opensslconf.h
-v3_lib.o: ../../include/openssl/opensslv.h ../../include/openssl/pkcs7.h
-v3_lib.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h
-v3_lib.o: ../../include/openssl/rc5.h ../../include/openssl/ripemd.h
-v3_lib.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
-v3_lib.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
+v3_lib.o: ../../include/openssl/md2.h ../../include/openssl/md4.h
+v3_lib.o: ../../include/openssl/md5.h ../../include/openssl/mdc2.h
+v3_lib.o: ../../include/openssl/obj_mac.h ../../include/openssl/objects.h
+v3_lib.o: ../../include/openssl/opensslconf.h ../../include/openssl/opensslv.h
+v3_lib.o: ../../include/openssl/pkcs7.h ../../include/openssl/rc2.h
+v3_lib.o: ../../include/openssl/rc4.h ../../include/openssl/rc5.h
+v3_lib.o: ../../include/openssl/ripemd.h ../../include/openssl/rsa.h
+v3_lib.o: ../../include/openssl/safestack.h ../../include/openssl/sha.h
+v3_lib.o: ../../include/openssl/stack.h ../../include/openssl/symhacks.h
 v3_lib.o: ../../include/openssl/x509.h ../../include/openssl/x509_vfy.h
 v3_lib.o: ../../include/openssl/x509v3.h ../cryptlib.h ext_dat.h
 v3_pku.o: ../../include/openssl/asn1.h ../../include/openssl/asn1_mac.h
@@ -364,14 +380,15 @@ v3_pku.o: ../../include/openssl/e_os.h ../../include/openssl/e_os.h
 v3_pku.o: ../../include/openssl/e_os2.h ../../include/openssl/err.h
 v3_pku.o: ../../include/openssl/evp.h ../../include/openssl/idea.h
 v3_pku.o: ../../include/openssl/lhash.h ../../include/openssl/md2.h
-v3_pku.o: ../../include/openssl/md5.h ../../include/openssl/mdc2.h
-v3_pku.o: ../../include/openssl/obj_mac.h ../../include/openssl/objects.h
-v3_pku.o: ../../include/openssl/opensslconf.h ../../include/openssl/opensslv.h
-v3_pku.o: ../../include/openssl/pkcs7.h ../../include/openssl/rc2.h
-v3_pku.o: ../../include/openssl/rc4.h ../../include/openssl/rc5.h
-v3_pku.o: ../../include/openssl/ripemd.h ../../include/openssl/rsa.h
-v3_pku.o: ../../include/openssl/safestack.h ../../include/openssl/sha.h
-v3_pku.o: ../../include/openssl/stack.h ../../include/openssl/x509.h
+v3_pku.o: ../../include/openssl/md4.h ../../include/openssl/md5.h
+v3_pku.o: ../../include/openssl/mdc2.h ../../include/openssl/obj_mac.h
+v3_pku.o: ../../include/openssl/objects.h ../../include/openssl/opensslconf.h
+v3_pku.o: ../../include/openssl/opensslv.h ../../include/openssl/pkcs7.h
+v3_pku.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h
+v3_pku.o: ../../include/openssl/rc5.h ../../include/openssl/ripemd.h
+v3_pku.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
+v3_pku.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
+v3_pku.o: ../../include/openssl/symhacks.h ../../include/openssl/x509.h
 v3_pku.o: ../../include/openssl/x509_vfy.h ../../include/openssl/x509v3.h
 v3_pku.o: ../cryptlib.h
 v3_prn.o: ../../include/openssl/asn1.h ../../include/openssl/bio.h
@@ -383,14 +400,15 @@ v3_prn.o: ../../include/openssl/dsa.h ../../include/openssl/e_os.h
 v3_prn.o: ../../include/openssl/e_os.h ../../include/openssl/e_os2.h
 v3_prn.o: ../../include/openssl/err.h ../../include/openssl/evp.h
 v3_prn.o: ../../include/openssl/idea.h ../../include/openssl/lhash.h
-v3_prn.o: ../../include/openssl/md2.h ../../include/openssl/md5.h
-v3_prn.o: ../../include/openssl/mdc2.h ../../include/openssl/obj_mac.h
-v3_prn.o: ../../include/openssl/objects.h ../../include/openssl/opensslconf.h
-v3_prn.o: ../../include/openssl/opensslv.h ../../include/openssl/pkcs7.h
-v3_prn.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h
-v3_prn.o: ../../include/openssl/rc5.h ../../include/openssl/ripemd.h
-v3_prn.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
-v3_prn.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
+v3_prn.o: ../../include/openssl/md2.h ../../include/openssl/md4.h
+v3_prn.o: ../../include/openssl/md5.h ../../include/openssl/mdc2.h
+v3_prn.o: ../../include/openssl/obj_mac.h ../../include/openssl/objects.h
+v3_prn.o: ../../include/openssl/opensslconf.h ../../include/openssl/opensslv.h
+v3_prn.o: ../../include/openssl/pkcs7.h ../../include/openssl/rc2.h
+v3_prn.o: ../../include/openssl/rc4.h ../../include/openssl/rc5.h
+v3_prn.o: ../../include/openssl/ripemd.h ../../include/openssl/rsa.h
+v3_prn.o: ../../include/openssl/safestack.h ../../include/openssl/sha.h
+v3_prn.o: ../../include/openssl/stack.h ../../include/openssl/symhacks.h
 v3_prn.o: ../../include/openssl/x509.h ../../include/openssl/x509_vfy.h
 v3_prn.o: ../../include/openssl/x509v3.h ../cryptlib.h
 v3_purp.o: ../../include/openssl/asn1.h ../../include/openssl/bio.h
@@ -402,14 +420,15 @@ v3_purp.o: ../../include/openssl/dsa.h ../../include/openssl/e_os.h
 v3_purp.o: ../../include/openssl/e_os.h ../../include/openssl/e_os2.h
 v3_purp.o: ../../include/openssl/err.h ../../include/openssl/evp.h
 v3_purp.o: ../../include/openssl/idea.h ../../include/openssl/lhash.h
-v3_purp.o: ../../include/openssl/md2.h ../../include/openssl/md5.h
-v3_purp.o: ../../include/openssl/mdc2.h ../../include/openssl/obj_mac.h
-v3_purp.o: ../../include/openssl/objects.h ../../include/openssl/opensslconf.h
-v3_purp.o: ../../include/openssl/opensslv.h ../../include/openssl/pkcs7.h
-v3_purp.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h
-v3_purp.o: ../../include/openssl/rc5.h ../../include/openssl/ripemd.h
-v3_purp.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
-v3_purp.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
+v3_purp.o: ../../include/openssl/md2.h ../../include/openssl/md4.h
+v3_purp.o: ../../include/openssl/md5.h ../../include/openssl/mdc2.h
+v3_purp.o: ../../include/openssl/obj_mac.h ../../include/openssl/objects.h
+v3_purp.o: ../../include/openssl/opensslconf.h ../../include/openssl/opensslv.h
+v3_purp.o: ../../include/openssl/pkcs7.h ../../include/openssl/rc2.h
+v3_purp.o: ../../include/openssl/rc4.h ../../include/openssl/rc5.h
+v3_purp.o: ../../include/openssl/ripemd.h ../../include/openssl/rsa.h
+v3_purp.o: ../../include/openssl/safestack.h ../../include/openssl/sha.h
+v3_purp.o: ../../include/openssl/stack.h ../../include/openssl/symhacks.h
 v3_purp.o: ../../include/openssl/x509.h ../../include/openssl/x509_vfy.h
 v3_purp.o: ../../include/openssl/x509v3.h ../cryptlib.h
 v3_skey.o: ../../include/openssl/asn1.h ../../include/openssl/bio.h
@@ -421,14 +440,15 @@ v3_skey.o: ../../include/openssl/dsa.h ../../include/openssl/e_os.h
 v3_skey.o: ../../include/openssl/e_os.h ../../include/openssl/e_os2.h
 v3_skey.o: ../../include/openssl/err.h ../../include/openssl/evp.h
 v3_skey.o: ../../include/openssl/idea.h ../../include/openssl/lhash.h
-v3_skey.o: ../../include/openssl/md2.h ../../include/openssl/md5.h
-v3_skey.o: ../../include/openssl/mdc2.h ../../include/openssl/obj_mac.h
-v3_skey.o: ../../include/openssl/objects.h ../../include/openssl/opensslconf.h
-v3_skey.o: ../../include/openssl/opensslv.h ../../include/openssl/pkcs7.h
-v3_skey.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h
-v3_skey.o: ../../include/openssl/rc5.h ../../include/openssl/ripemd.h
-v3_skey.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
-v3_skey.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
+v3_skey.o: ../../include/openssl/md2.h ../../include/openssl/md4.h
+v3_skey.o: ../../include/openssl/md5.h ../../include/openssl/mdc2.h
+v3_skey.o: ../../include/openssl/obj_mac.h ../../include/openssl/objects.h
+v3_skey.o: ../../include/openssl/opensslconf.h ../../include/openssl/opensslv.h
+v3_skey.o: ../../include/openssl/pkcs7.h ../../include/openssl/rc2.h
+v3_skey.o: ../../include/openssl/rc4.h ../../include/openssl/rc5.h
+v3_skey.o: ../../include/openssl/ripemd.h ../../include/openssl/rsa.h
+v3_skey.o: ../../include/openssl/safestack.h ../../include/openssl/sha.h
+v3_skey.o: ../../include/openssl/stack.h ../../include/openssl/symhacks.h
 v3_skey.o: ../../include/openssl/x509.h ../../include/openssl/x509_vfy.h
 v3_skey.o: ../../include/openssl/x509v3.h ../cryptlib.h
 v3_sxnet.o: ../../include/openssl/asn1.h ../../include/openssl/asn1_mac.h
@@ -441,16 +461,17 @@ v3_sxnet.o: ../../include/openssl/e_os.h ../../include/openssl/e_os.h
 v3_sxnet.o: ../../include/openssl/e_os2.h ../../include/openssl/err.h
 v3_sxnet.o: ../../include/openssl/evp.h ../../include/openssl/idea.h
 v3_sxnet.o: ../../include/openssl/lhash.h ../../include/openssl/md2.h
-v3_sxnet.o: ../../include/openssl/md5.h ../../include/openssl/mdc2.h
-v3_sxnet.o: ../../include/openssl/obj_mac.h ../../include/openssl/objects.h
-v3_sxnet.o: ../../include/openssl/opensslconf.h
+v3_sxnet.o: ../../include/openssl/md4.h ../../include/openssl/md5.h
+v3_sxnet.o: ../../include/openssl/mdc2.h ../../include/openssl/obj_mac.h
+v3_sxnet.o: ../../include/openssl/objects.h ../../include/openssl/opensslconf.h
 v3_sxnet.o: ../../include/openssl/opensslv.h ../../include/openssl/pkcs7.h
 v3_sxnet.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h
 v3_sxnet.o: ../../include/openssl/rc5.h ../../include/openssl/ripemd.h
 v3_sxnet.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
 v3_sxnet.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
-v3_sxnet.o: ../../include/openssl/x509.h ../../include/openssl/x509_vfy.h
-v3_sxnet.o: ../../include/openssl/x509v3.h ../cryptlib.h
+v3_sxnet.o: ../../include/openssl/symhacks.h ../../include/openssl/x509.h
+v3_sxnet.o: ../../include/openssl/x509_vfy.h ../../include/openssl/x509v3.h
+v3_sxnet.o: ../cryptlib.h
 v3_utl.o: ../../include/openssl/asn1.h ../../include/openssl/bio.h
 v3_utl.o: ../../include/openssl/blowfish.h ../../include/openssl/bn.h
 v3_utl.o: ../../include/openssl/buffer.h ../../include/openssl/cast.h
@@ -460,14 +481,15 @@ v3_utl.o: ../../include/openssl/dsa.h ../../include/openssl/e_os.h
 v3_utl.o: ../../include/openssl/e_os.h ../../include/openssl/e_os2.h
 v3_utl.o: ../../include/openssl/err.h ../../include/openssl/evp.h
 v3_utl.o: ../../include/openssl/idea.h ../../include/openssl/lhash.h
-v3_utl.o: ../../include/openssl/md2.h ../../include/openssl/md5.h
-v3_utl.o: ../../include/openssl/mdc2.h ../../include/openssl/obj_mac.h
-v3_utl.o: ../../include/openssl/objects.h ../../include/openssl/opensslconf.h
-v3_utl.o: ../../include/openssl/opensslv.h ../../include/openssl/pkcs7.h
-v3_utl.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h
-v3_utl.o: ../../include/openssl/rc5.h ../../include/openssl/ripemd.h
-v3_utl.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
-v3_utl.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
+v3_utl.o: ../../include/openssl/md2.h ../../include/openssl/md4.h
+v3_utl.o: ../../include/openssl/md5.h ../../include/openssl/mdc2.h
+v3_utl.o: ../../include/openssl/obj_mac.h ../../include/openssl/objects.h
+v3_utl.o: ../../include/openssl/opensslconf.h ../../include/openssl/opensslv.h
+v3_utl.o: ../../include/openssl/pkcs7.h ../../include/openssl/rc2.h
+v3_utl.o: ../../include/openssl/rc4.h ../../include/openssl/rc5.h
+v3_utl.o: ../../include/openssl/ripemd.h ../../include/openssl/rsa.h
+v3_utl.o: ../../include/openssl/safestack.h ../../include/openssl/sha.h
+v3_utl.o: ../../include/openssl/stack.h ../../include/openssl/symhacks.h
 v3_utl.o: ../../include/openssl/x509.h ../../include/openssl/x509_vfy.h
 v3_utl.o: ../../include/openssl/x509v3.h ../cryptlib.h
 v3err.o: ../../include/openssl/asn1.h ../../include/openssl/bio.h
@@ -479,12 +501,13 @@ v3err.o: ../../include/openssl/dsa.h ../../include/openssl/e_os.h
 v3err.o: ../../include/openssl/e_os2.h ../../include/openssl/err.h
 v3err.o: ../../include/openssl/evp.h ../../include/openssl/idea.h
 v3err.o: ../../include/openssl/lhash.h ../../include/openssl/md2.h
-v3err.o: ../../include/openssl/md5.h ../../include/openssl/mdc2.h
-v3err.o: ../../include/openssl/obj_mac.h ../../include/openssl/objects.h
-v3err.o: ../../include/openssl/opensslconf.h ../../include/openssl/opensslv.h
-v3err.o: ../../include/openssl/pkcs7.h ../../include/openssl/rc2.h
-v3err.o: ../../include/openssl/rc4.h ../../include/openssl/rc5.h
-v3err.o: ../../include/openssl/ripemd.h ../../include/openssl/rsa.h
-v3err.o: ../../include/openssl/safestack.h ../../include/openssl/sha.h
-v3err.o: ../../include/openssl/stack.h ../../include/openssl/x509.h
+v3err.o: ../../include/openssl/md4.h ../../include/openssl/md5.h
+v3err.o: ../../include/openssl/mdc2.h ../../include/openssl/obj_mac.h
+v3err.o: ../../include/openssl/objects.h ../../include/openssl/opensslconf.h
+v3err.o: ../../include/openssl/opensslv.h ../../include/openssl/pkcs7.h
+v3err.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h
+v3err.o: ../../include/openssl/rc5.h ../../include/openssl/ripemd.h
+v3err.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
+v3err.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
+v3err.o: ../../include/openssl/symhacks.h ../../include/openssl/x509.h
 v3err.o: ../../include/openssl/x509_vfy.h ../../include/openssl/x509v3.h
index d84d0130aead67140951b0f4d38886eb6b89d2f8..867699b26f3a6c30442587897c1e41b1d3546414 100644 (file)
@@ -59,6 +59,7 @@
 #include <stdio.h>
 #include "cryptlib.h"
 #include <openssl/x509v3.h>
+#include <openssl/x509_vfy.h>
 
 
 static void x509v3_cache_extensions(X509 *x);
@@ -255,16 +256,18 @@ int X509_PURPOSE_get_trust(X509_PURPOSE *xp)
        return xp->trust;
 }
 
-#ifndef NO_SHA
 static void x509v3_cache_extensions(X509 *x)
 {
        BASIC_CONSTRAINTS *bs;
        ASN1_BIT_STRING *usage;
        ASN1_BIT_STRING *ns;
        STACK_OF(ASN1_OBJECT) *extusage;
+       
        int i;
        if(x->ex_flags & EXFLAG_SET) return;
+#ifndef NO_SHA
        X509_digest(x, EVP_sha1(), x->sha1_hash, NULL);
+#endif
        /* Does subject name match issuer ? */
        if(!X509_NAME_cmp(X509_get_subject_name(x), X509_get_issuer_name(x)))
                         x->ex_flags |= EXFLAG_SS;
@@ -328,9 +331,10 @@ static void x509v3_cache_extensions(X509 *x)
                x->ex_flags |= EXFLAG_NSCERT;
                ASN1_BIT_STRING_free(ns);
        }
+       x->skid =X509_get_ext_d2i(x, NID_subject_key_identifier, NULL, NULL);
+       x->akid =X509_get_ext_d2i(x, NID_authority_key_identifier, NULL, NULL);
        x->ex_flags |= EXFLAG_SET;
 }
-#endif
 
 /* CA checks common to all purposes
  * return codes:
@@ -470,3 +474,60 @@ static int no_check(const X509_PURPOSE *xp, const X509 *x, int ca)
 {
        return 1;
 }
+
+/* Various checks to see if one certificate issued the second.
+ * This can be used to prune a set of possible issuer certificates
+ * which have been looked up using some simple method such as by
+ * subject name.
+ * These are:
+ * 1. Check issuer_name(subject) == subject_name(issuer)
+ * 2. If akid(subject) exists check it matches issuer
+ * 3. If key_usage(issuer) exists check it supports certificate signing
+ * returns 0 for OK, positive for reason for mismatch, reasons match
+ * codes for X509_verify_cert()
+ */
+
+int X509_check_issued(X509 *issuer, X509 *subject)
+{
+       if(X509_NAME_cmp(X509_get_subject_name(issuer),
+                       X509_get_issuer_name(subject)))
+                               return X509_V_ERR_SUBJECT_ISSUER_MISMATCH;
+       x509v3_cache_extensions(issuer);
+       x509v3_cache_extensions(subject);
+       if(subject->akid) {
+               /* Check key ids (if present) */
+               if(subject->akid->keyid && issuer->skid &&
+                ASN1_OCTET_STRING_cmp(subject->akid->keyid, issuer->skid) )
+                               return X509_V_ERR_AKID_SKID_MISMATCH;
+               /* Check serial number */
+               if(subject->akid->serial &&
+                       ASN1_INTEGER_cmp(X509_get_serialNumber(issuer),
+                                               subject->akid->serial))
+                               return X509_V_ERR_AKID_ISSUER_SERIAL_MISMATCH;
+               /* Check issuer name */
+               if(subject->akid->issuer) {
+                       /* Ugh, for some peculiar reason AKID includes
+                        * SEQUENCE OF GeneralName. So look for a DirName.
+                        * There may be more than one but we only take any
+                        * notice of the first.
+                        */
+                       STACK_OF(GENERAL_NAME) *gens;
+                       GENERAL_NAME *gen;
+                       X509_NAME *nm = NULL;
+                       int i;
+                       gens = subject->akid->issuer;
+                       for(i = 0; i < sk_GENERAL_NAME_num(gens); i++) {
+                               gen = sk_GENERAL_NAME_value(gens, i);
+                               if(gen->type == GEN_DIRNAME) {
+                                       nm = gen->d.dirn;
+                                       break;
+                               }
+                       }
+                       if(nm && X509_NAME_cmp(nm, X509_get_issuer_name(issuer)))
+                               return X509_V_ERR_AKID_ISSUER_SERIAL_MISMATCH;
+               }
+       }
+       if(ku_reject(issuer, KU_KEY_CERT_SIGN)) return X509_V_ERR_KEYUSAGE_NO_CERTSIGN;
+       return X509_V_OK;
+}
+
index 5f00ed5f7ad54133b44f89b585ce00edce3ee47f..0453b12d6335b619306b8486c3feeeb138838c6e 100644 (file)
@@ -532,6 +532,7 @@ int X509V3_EXT_print(BIO *out, X509_EXTENSION *ext, int flag, int indent);
 int X509V3_EXT_print_fp(FILE *out, X509_EXTENSION *ext, int flag, int indent);
 
 int X509_check_purpose(X509 *x, int id, int ca);
+int X509_check_issued(X509 *issuer, X509 *subject);
 int X509_PURPOSE_get_count(void);
 X509_PURPOSE * X509_PURPOSE_get0(int idx);
 int X509_PURPOSE_get_by_sname(char *sname);
index 75aa2a1d26515799c977141e0eef4b0756a676c7..63cd1320cc764265b0846770f6572ae460533d7d 100644 (file)
@@ -72,6 +72,13 @@ to be in the file "newreq.pem". The new certificate is written to the file
 "newcert.pem" except in the case of the B<-xsign> option when it is written
 to standard output.
 
+
+=item B<-signCA>
+
+this option is the same as the B<-signreq> option except it uses the configuration
+file section B<v3_ca> and so makes the signed request a valid CA certificate. This
+is useful when creating intermediate CA from a root CA.
+
 =item B<-signcert>
 
 this option is the same as B<-sign> except it expects a self signed certificate
index 03209aa6b17a14e892c871efb786ff1771e8a1cd..d35292586458c2bbb23fa7fac0058c423d517654 100644 (file)
@@ -23,6 +23,7 @@ B<openssl> B<ca>
 [B<-policy arg>]
 [B<-keyfile arg>]
 [B<-key arg>]
+[B<-passin arg>]
 [B<-cert file>]
 [B<-in file>]
 [B<-out file>]
@@ -99,6 +100,10 @@ the password used to encrypt the private key. Since on some
 systems the command line arguments are visible (e.g. Unix with
 the 'ps' utility) this option should be used with caution.
 
+=item B<-passin arg>
+
+the key password source. For more information about the format of B<arg>
+see the B<PASS PHRASE ARGUMENTS> section in L<openssl(1)|openssl(1)>.
 =item B<-verbose>
 
 this prints extra details about the operations being performed.
@@ -342,6 +347,10 @@ Sign a certificate request:
 
  openssl ca -in req.pem -out newcert.pem
 
+Sign a certificate request, using CA extensions:
+
+ openssl ca -in req.pem -extensions v3_ca -out newcert.pem
+
 Generate a CRL
 
  openssl ca -gencrl -out crl.pem
index fcfd3ecf23f4f948b3bee19dfcf19b4bc5459f28..1648742bcfe188647539f55978ac7d48bbb6d505 100644 (file)
@@ -2,25 +2,32 @@
 
 =head1 NAME
 
-dgst, md5, md2, sha1, sha, mdc2, ripemd160 - message digests
+dgst, md5, md4, md2, sha1, sha, mdc2, ripemd160 - message digests
 
 =head1 SYNOPSIS
 
 B<openssl> B<dgst> 
-[B<-md5|-md2|-sha1|-sha|mdc2|-ripemd160>]
+[B<-md5|-md4|-md2|-sha1|-sha|-mdc2|-ripemd160|-dss1>]
 [B<-c>]
 [B<-d>]
+[B<-hex>]
+[B<-binary>]
+[B<-out filename>]
+[B<-sign filename>]
+[B<-verify filename>]
+[B<-prverify filename>]
+[B<-signature filename>]
 [B<file...>]
 
-[B<md5|md2|sha1|sha|mdc2|ripemd160>]
+[B<md5|md4|md2|sha1|sha|mdc2|ripemd160>]
 [B<-c>]
 [B<-d>]
 [B<file...>]
 
 =head1 DESCRIPTION
 
-The digest functions print out the message digest of a supplied file or files
-in hexadecimal form.
+The digest functions output the message digest of a supplied file or files
+in hexadecimal form. They can also be used for digital signing and verification.
 
 =head1 OPTIONS
 
@@ -28,12 +35,51 @@ in hexadecimal form.
 
 =item B<-c>
 
-print out the digest in two digit groups separated by colons.
+print out the digest in two digit groups separated by colons, only relevant if
+B<hex> format output is used.
 
 =item B<-d>
 
 print out BIO debugging information.
 
+=item B<-hex>
+
+digest is to be output as a hex dump. This is the default case for a "normal"
+digest as opposed to a digital signature.
+
+=item B<-binary>
+
+output the digest or signature in binary form.
+
+=item B<-out filename>
+
+filename to output to, or standard output by default.
+
+=item B<-sign filename>
+
+digitally sign the digest using the private key in "filename".
+
+=item B<-verify filename>
+
+verify the signature using the the public key in "filename".
+The output is either "Verification OK" or "Verification Failure".
+
+=item B<-prverify filename>
+
+verify the signature using the  the private key in "filename".
+
+=item B<-signature filename>
+
+the actual signature to verify.
+
+=item B<-rand file(s)>
+
+a file or files containing random data used to seed the random number
+generator, or an EGD socket (see L<RAND_egd(3)|RAND_egd(3)>).
+Multiple files can be specified separated by a OS-dependent character.
+The separator is B<;> for MS-Windows, B<,> for OpenVMS, and B<:> for
+all others. 
+
 =item B<file...>
 
 file or files to digest. If no files are specified then standard input is
@@ -46,4 +92,13 @@ used.
 The digest of choice for all new applications is SHA1. Other digests are
 however still widely used.
 
+If you wish to sign or verify data using the DSA algorithm then the dss1
+digest must be used.
+
+A source of random numbers is required for certain signing algorithms, in
+particular DSA.
+
+The signing and verify options should only be used if a single file is
+being signed or verified.
+
 =cut
index 76b9ccc302b0edd39478702cfd1fe3c4435061da..0cbd199d79078160575c7f3e350785d1dc09ce3b 100644 (file)
@@ -141,6 +141,10 @@ X.509 Certificate Signing Request (CSR) Management.
 
 RSA Data Management.
 
+=item L<B<rsautl>|rsautl(1)>
+
+RSA utility for signing, verification, encryption, and decryption.
+
 =item L<B<s_client>|s_client(1)>
 
 This implements a generic SSL/TLS client which can establish a transparent
@@ -315,7 +319,8 @@ L<enc(1)|enc(1)>, L<gendsa(1)|gendsa(1)>,
 L<genrsa(1)|genrsa(1)>, L<nseq(1)|nseq(1)>, L<openssl(1)|openssl(1)>,
 L<passwd(1)|passwd(1)>,
 L<pkcs12(1)|pkcs12(1)>, L<pkcs7(1)|pkcs7(1)>, L<pkcs8(1)|pkcs8(1)>,
-L<rand(1)|rand(1)>, L<req(1)|req(1)>, L<rsa(1)|rsa(1)>, L<s_client(1)|s_client(1)>,
+L<rand(1)|rand(1)>, L<req(1)|req(1)>, L<rsa(1)|rsa(1)>,
+L<rsautl(1)|rsautl(1)>, L<s_client(1)|s_client(1)>,
 L<s_server(1)|s_server(1)>, L<smime(1)|smime(1)>, L<spkac(1)|spkac(1)>,
 L<verify(1)|verify(1)>, L<version(1)|version(1)>, L<x509(1)|x509(1)>,
 L<crypto(3)|crypto(3)>, L<ssl(3)|ssl(3)> 
index 4a6572d3b893e710d6f7eec17625d3fb93eb0e60..b2d207c29693f740ff36b00861644fb7c48f683a 100644 (file)
@@ -2,7 +2,7 @@
 
 =head1 NAME
 
-pkcs7 - PKCS#7 utility
+verify - Utility to verify certificates.
 
 =head1 SYNOPSIS
 
index f8742f84fccbba109b7dfd7581ca8b519d680f40..7f32eef0009babb68033c8089fd7b290641f2bb6 100644 (file)
@@ -382,7 +382,7 @@ and a space character at the beginning or end of a string.
 
 =item B<esc_ctrl>
 
-escape and control characters. That is those with ASCII values less than
+escape control characters. That is those with ASCII values less than
 0x20 (space) and the delete (0x7f) character. They are escaped using the
 RFC2253 \XX notation (where XX are two hex digits representing the
 character value).
@@ -456,7 +456,7 @@ indents the fields by four characters.
 =item B<dn_rev>
 
 reverse the fields of the DN. This is required by RFC2253. As a side
-effect this also reveress the order of multiple AVAs but this is
+effect this also reverses the order of multiple AVAs but this is
 permissible.
 
 =item B<nofname>, B<sname>, B<lname>, B<oid>
@@ -519,13 +519,13 @@ Convert a certificate to a certificate request:
 Convert a certificate request into a self signed certificate using
 extensions for a CA:
 
- openssl x509 -req -in careq.pem -config openssl.cnf -extensions v3_ca \
+ openssl x509 -req -in careq.pem -extfile openssl.cnf -extensions v3_ca \
        -signkey key.pem -out cacert.pem
 
 Sign a certificate request using the CA certificate above and add user
 certificate extensions:
 
- openssl x509 -req -in req.pem -config openssl.cnf -extensions v3_usr \
+ openssl x509 -req -in req.pem -extfile openssl.cnf -extensions v3_usr \
        -CA cacert.pem -CAkey key.pem -CAcreateserial
 
 
index 4b9ceacd912b06d315987b3b6368f773f2cc888f..07ba7e5bc9267dac928d140f52577f6353ba30db 100644 (file)
@@ -40,8 +40,9 @@ L<x509(3)|x509(3)>, L<x509v3(3)|x509v3(3)>
 
 =item AUTHENTICATION CODES, HASH FUNCTIONS
 
-L<hmac(3)|hmac(3)>, L<md2(3)|md2(3)>, L<md5(3)|md5(3)>, L<mdc2(3)|mdc2(3)>,
-L<ripemd(3)|ripemd(3)>, L<sha(3)|sha(3)> 
+L<hmac(3)|hmac(3)>, L<md2(3)|md2(3)>, L<md4(3)|md4(3)>,
+L<md5(3)|md5(3)>, L<mdc2(3)|mdc2(3)>, L<ripemd(3)|ripemd(3)>,
+L<sha(3)|sha(3)>
 
 =item AUXILIARY FUNCTIONS
 
index d7c120023dafca763e2a1a40408558e6598eb518..6e6322dcdcc864e5f38e8eb7064e7ed1d5706be6 100644 (file)
@@ -2,8 +2,8 @@
 
 =head1 NAME
 
-MD2, MD5, MD2_Init, MD2_Update, MD2_Final, MD5_Init, MD5_Update,
-MD5_Final - MD2 and MD5 hash functions
+MD2, MD4, MD5, MD2_Init, MD2_Update, MD2_Final, MD4_Init, MD4_Update,
+MD4_Final, MD5_Init, MD5_Update, MD5_Final - MD2, MD4, and MD5 hash functions
 
 =head1 SYNOPSIS
 
@@ -18,6 +18,17 @@ MD5_Final - MD2 and MD5 hash functions
  void MD2_Final(unsigned char *md, MD2_CTX *c);
 
 
+ #include <openssl/md4.h>
+
+ unsigned char *MD4(const unsigned char *d, unsigned long n,
+                  unsigned char *md);
+
+ void MD4_Init(MD4_CTX *c);
+ void MD4_Update(MD4_CTX *c, const void *data,
+                  unsigned long len);
+ void MD4_Final(unsigned char *md, MD4_CTX *c);
+
+
  #include <openssl/md5.h>
 
  unsigned char *MD5(const unsigned char *d, unsigned long n,
@@ -30,12 +41,13 @@ MD5_Final - MD2 and MD5 hash functions
 
 =head1 DESCRIPTION
 
-MD2 and MD5 are cryptographic hash functions with a 128 bit output.
+MD2, MD4, and MD5 are cryptographic hash functions with a 128 bit output.
 
-MD2() and MD5() compute the MD2 and MD5 message digest of the B<n>
-bytes at B<d> and place it in B<md> (which must have space for
-MD2_DIGEST_LENGTH == MD5_DIGEST_LENGTH == 16 bytes of output). If
-B<md> is NULL, the digest is placed in a static array.
+MD2(), MD4(), and MD5() compute the MD2, MD4, and MD5 message digest
+of the B<n> bytes at B<d> and place it in B<md> (which must have space
+for MD2_DIGEST_LENGTH == MD4_DIGEST_LENGTH == MD5_DIGEST_LENGTH == 16
+bytes of output). If B<md> is NULL, the digest is placed in a static
+array.
 
 The following functions may be used if the message is not completely
 stored in memory:
@@ -48,8 +60,8 @@ be hashed (B<len> bytes at B<data>).
 MD2_Final() places the message digest in B<md>, which must have space
 for MD2_DIGEST_LENGTH == 16 bytes of output, and erases the B<MD2_CTX>.
 
-MD5_Init(), MD5_Update() and MD5_Final() are analogous using an
-B<MD5_CTX> structure.
+MD4_Init(), MD4_Update(), MD4_Final(), MD5_Init(), MD5_Update(), and
+MD5_Final() are analogous using an B<MD4_CTX> and B<MD5_CTX> structure.
 
 Applications should use the higher level functions
 L<EVP_DigestInit(3)|EVP_DigestInit(3)>
@@ -57,20 +69,21 @@ etc. instead of calling the hash functions directly.
 
 =head1 NOTE
 
-MD2 and MD5 are recommended only for compatibility with existing
+MD2, MD4, and MD5 are recommended only for compatibility with existing
 applications. In new applications, SHA-1 or RIPEMD-160 should be
 preferred.
 
 =head1 RETURN VALUES
 
-MD2() and MD5() return pointers to the hash value. 
+MD2(), MD4(), and MD5() return pointers to the hash value. 
 
-MD2_Init(), MD2_Update() MD2_Final(), MD5_Init(), MD5_Update() and
-MD5_Final() do not return values.
+MD2_Init(), MD2_Update(), MD2_Final(), MD4_Init(), MD4_Update(),
+MD4_Final(), MD5_Init(), MD5_Update(), and MD5_Final() do not return
+values.
 
 =head1 CONFORMING TO
 
-RFC 1319, RFC 1321
+RFC 1319, RFC 1320, RFC 1321
 
 =head1 SEE ALSO
 
@@ -82,4 +95,7 @@ MD2(), MD2_Init(), MD2_Update() MD2_Final(), MD5(), MD5_Init(),
 MD5_Update() and MD5_Final() are available in all versions of SSLeay
 and OpenSSL.
 
+MD4(), MD4_Init(), and MD4_Update() are available in OpenSSL 0.9.6 and
+above.
+
 =cut
index cde0efc3ce7783fe8a1af7ae1c31524333b02dd2..7851830fc581847c2a101a766a265a0c25e09bd1 100644 (file)
@@ -41,7 +41,9 @@ if and only if B<ret E<gt> 0>.
 The SSL connection has been closed.  If the protocol version is SSL 3.0
 or TLS 1.0, this result code is returned only if a closure
 alert has occurred in the protocol, i.e. if the connection has been
-closed cleanly.
+closed cleanly. Note that in this case B<SSL_ERROR_ZERO_RETURN>
+does not necessarily indicate that the underlying transport
+has been closed.
 
 =item SSL_ERROR_WANT_READ, SSL_ERROR_WANT_WRITE
 
diff --git a/e_os.h b/e_os.h
index 487f0b2fb39c480c6c0f23631aca7bd48bff635b..3af6efb0e02eabbf7911808a3353948996aa97aa 100644 (file)
--- a/e_os.h
+++ b/e_os.h
@@ -363,6 +363,10 @@ extern HINSTANCE _hInstance;
 #      include <sys/select.h>
 #    endif
 
+#    ifdef __QNX__
+#      include <sys/select.h>
+#    endif
+
 #    if defined(sun)
 #      include <sys/filio.h>
 #    else
index 0371fa8cf573311ea4fa526a21ed2c04b215e22e..d0194e71534af47deb3a61109bebc029549b8709 100755 (executable)
@@ -365,7 +365,7 @@ $ SDIRS := ,MD2,MD5,SHA,MDC2,HMAC,RIPEMD,-
    BUFFER,BIO,STACK,LHASH,RAND,ERR,OBJECTS,-
    EVP,ASN1,PEM,X509,X509V3,-
    CONF,TXT_DB,PKCS7,PKCS12,COMP
-$ EXHEADER_ := crypto.h,tmdiff.h,opensslv.h,opensslconf.h,ebcdic.h
+$ EXHEADER_ := crypto.h,tmdiff.h,opensslv.h,opensslconf.h,ebcdic.h,symhacks.h
 $ EXHEADER_MD2 := md2.h
 $ EXHEADER_MD5 := md5.h
 $ EXHEADER_SHA := sha.h
@@ -426,11 +426,6 @@ $!
 $ EXHEADER := ssl.h,ssl2.h,ssl3.h,ssl23.h,tls1.h
 $ COPY SYS$DISK:[.SSL]'EXHEADER' SYS$DISK:[.INCLUDE.OPENSSL]
 $!
-$! Copy All The ".H" Files From The [.VMS] Directory.
-$!
-$ EXHEADER := vms_idhacks.h
-$ COPY SYS$DISK:[.VMS]'EXHEADER' SYS$DISK:[.INCLUDE.OPENSSL]
-$!
 $! Purge all doubles
 $!
 $ PURGE SYS$DISK:[.INCLUDE.OPENSSL]*.H
index 293091417809fec133578121d146c261a914fd3d..69d41a9a6dfb727e2c5e47e6f312f34b879adc4d 100644 (file)
@@ -90,7 +90,7 @@ rsar_err.o: ../include/openssl/crypto.h ../include/openssl/err.h
 rsar_err.o: ../include/openssl/lhash.h ../include/openssl/opensslconf.h
 rsar_err.o: ../include/openssl/opensslv.h ../include/openssl/rsa.h
 rsar_err.o: ../include/openssl/rsaref.h ../include/openssl/safestack.h
-rsar_err.o: ../include/openssl/stack.h
+rsar_err.o: ../include/openssl/stack.h ../include/openssl/symhacks.h
 rsaref.o: ../crypto/cryptlib.h ../include/openssl/bio.h ../include/openssl/bn.h
 rsaref.o: ../include/openssl/buffer.h ../include/openssl/crypto.h
 rsaref.o: ../include/openssl/e_os.h ../include/openssl/e_os2.h
@@ -98,4 +98,4 @@ rsaref.o: ../include/openssl/err.h ../include/openssl/lhash.h
 rsaref.o: ../include/openssl/opensslconf.h ../include/openssl/opensslv.h
 rsaref.o: ../include/openssl/rand.h ../include/openssl/rsa.h
 rsaref.o: ../include/openssl/rsaref.h ../include/openssl/safestack.h
-rsaref.o: ../include/openssl/stack.h
+rsaref.o: ../include/openssl/stack.h ../include/openssl/symhacks.h
index 684769b4379c0c11dc3770a206ebb4e5a96f85b9..04dd3e866349dc88826ed91f12047630e40b1959 100644 (file)
@@ -102,17 +102,18 @@ bio_ssl.o: ../include/openssl/des.h ../include/openssl/dh.h
 bio_ssl.o: ../include/openssl/dsa.h ../include/openssl/e_os2.h
 bio_ssl.o: ../include/openssl/err.h ../include/openssl/evp.h
 bio_ssl.o: ../include/openssl/idea.h ../include/openssl/lhash.h
-bio_ssl.o: ../include/openssl/md2.h ../include/openssl/md5.h
-bio_ssl.o: ../include/openssl/mdc2.h ../include/openssl/obj_mac.h
-bio_ssl.o: ../include/openssl/objects.h ../include/openssl/opensslconf.h
-bio_ssl.o: ../include/openssl/opensslv.h ../include/openssl/pem.h
-bio_ssl.o: ../include/openssl/pem2.h ../include/openssl/pkcs7.h
-bio_ssl.o: ../include/openssl/rc2.h ../include/openssl/rc4.h
-bio_ssl.o: ../include/openssl/rc5.h ../include/openssl/ripemd.h
-bio_ssl.o: ../include/openssl/rsa.h ../include/openssl/safestack.h
-bio_ssl.o: ../include/openssl/sha.h ../include/openssl/ssl.h
-bio_ssl.o: ../include/openssl/ssl2.h ../include/openssl/ssl23.h
-bio_ssl.o: ../include/openssl/ssl3.h ../include/openssl/stack.h
+bio_ssl.o: ../include/openssl/md2.h ../include/openssl/md4.h
+bio_ssl.o: ../include/openssl/md5.h ../include/openssl/mdc2.h
+bio_ssl.o: ../include/openssl/obj_mac.h ../include/openssl/objects.h
+bio_ssl.o: ../include/openssl/opensslconf.h ../include/openssl/opensslv.h
+bio_ssl.o: ../include/openssl/pem.h ../include/openssl/pem2.h
+bio_ssl.o: ../include/openssl/pkcs7.h ../include/openssl/rc2.h
+bio_ssl.o: ../include/openssl/rc4.h ../include/openssl/rc5.h
+bio_ssl.o: ../include/openssl/ripemd.h ../include/openssl/rsa.h
+bio_ssl.o: ../include/openssl/safestack.h ../include/openssl/sha.h
+bio_ssl.o: ../include/openssl/ssl.h ../include/openssl/ssl2.h
+bio_ssl.o: ../include/openssl/ssl23.h ../include/openssl/ssl3.h
+bio_ssl.o: ../include/openssl/stack.h ../include/openssl/symhacks.h
 bio_ssl.o: ../include/openssl/tls1.h ../include/openssl/x509.h
 bio_ssl.o: ../include/openssl/x509_vfy.h
 s23_clnt.o: ../include/openssl/asn1.h ../include/openssl/bio.h
@@ -124,17 +125,18 @@ s23_clnt.o: ../include/openssl/dsa.h ../include/openssl/e_os.h
 s23_clnt.o: ../include/openssl/e_os2.h ../include/openssl/err.h
 s23_clnt.o: ../include/openssl/evp.h ../include/openssl/idea.h
 s23_clnt.o: ../include/openssl/lhash.h ../include/openssl/md2.h
-s23_clnt.o: ../include/openssl/md5.h ../include/openssl/mdc2.h
-s23_clnt.o: ../include/openssl/obj_mac.h ../include/openssl/objects.h
-s23_clnt.o: ../include/openssl/opensslconf.h ../include/openssl/opensslv.h
-s23_clnt.o: ../include/openssl/pem.h ../include/openssl/pem2.h
-s23_clnt.o: ../include/openssl/pkcs7.h ../include/openssl/rand.h
-s23_clnt.o: ../include/openssl/rc2.h ../include/openssl/rc4.h
-s23_clnt.o: ../include/openssl/rc5.h ../include/openssl/ripemd.h
-s23_clnt.o: ../include/openssl/rsa.h ../include/openssl/safestack.h
-s23_clnt.o: ../include/openssl/sha.h ../include/openssl/ssl.h
-s23_clnt.o: ../include/openssl/ssl2.h ../include/openssl/ssl23.h
-s23_clnt.o: ../include/openssl/ssl3.h ../include/openssl/stack.h
+s23_clnt.o: ../include/openssl/md4.h ../include/openssl/md5.h
+s23_clnt.o: ../include/openssl/mdc2.h ../include/openssl/obj_mac.h
+s23_clnt.o: ../include/openssl/objects.h ../include/openssl/opensslconf.h
+s23_clnt.o: ../include/openssl/opensslv.h ../include/openssl/pem.h
+s23_clnt.o: ../include/openssl/pem2.h ../include/openssl/pkcs7.h
+s23_clnt.o: ../include/openssl/rand.h ../include/openssl/rc2.h
+s23_clnt.o: ../include/openssl/rc4.h ../include/openssl/rc5.h
+s23_clnt.o: ../include/openssl/ripemd.h ../include/openssl/rsa.h
+s23_clnt.o: ../include/openssl/safestack.h ../include/openssl/sha.h
+s23_clnt.o: ../include/openssl/ssl.h ../include/openssl/ssl2.h
+s23_clnt.o: ../include/openssl/ssl23.h ../include/openssl/ssl3.h
+s23_clnt.o: ../include/openssl/stack.h ../include/openssl/symhacks.h
 s23_clnt.o: ../include/openssl/tls1.h ../include/openssl/x509.h
 s23_clnt.o: ../include/openssl/x509_vfy.h ssl_locl.h
 s23_lib.o: ../include/openssl/asn1.h ../include/openssl/bio.h
@@ -146,17 +148,18 @@ s23_lib.o: ../include/openssl/dsa.h ../include/openssl/e_os.h
 s23_lib.o: ../include/openssl/e_os2.h ../include/openssl/err.h
 s23_lib.o: ../include/openssl/evp.h ../include/openssl/idea.h
 s23_lib.o: ../include/openssl/lhash.h ../include/openssl/md2.h
-s23_lib.o: ../include/openssl/md5.h ../include/openssl/mdc2.h
-s23_lib.o: ../include/openssl/obj_mac.h ../include/openssl/objects.h
-s23_lib.o: ../include/openssl/opensslconf.h ../include/openssl/opensslv.h
-s23_lib.o: ../include/openssl/pem.h ../include/openssl/pem2.h
-s23_lib.o: ../include/openssl/pkcs7.h ../include/openssl/rc2.h
-s23_lib.o: ../include/openssl/rc4.h ../include/openssl/rc5.h
-s23_lib.o: ../include/openssl/ripemd.h ../include/openssl/rsa.h
-s23_lib.o: ../include/openssl/safestack.h ../include/openssl/sha.h
-s23_lib.o: ../include/openssl/ssl.h ../include/openssl/ssl2.h
-s23_lib.o: ../include/openssl/ssl23.h ../include/openssl/ssl3.h
-s23_lib.o: ../include/openssl/stack.h ../include/openssl/tls1.h
+s23_lib.o: ../include/openssl/md4.h ../include/openssl/md5.h
+s23_lib.o: ../include/openssl/mdc2.h ../include/openssl/obj_mac.h
+s23_lib.o: ../include/openssl/objects.h ../include/openssl/opensslconf.h
+s23_lib.o: ../include/openssl/opensslv.h ../include/openssl/pem.h
+s23_lib.o: ../include/openssl/pem2.h ../include/openssl/pkcs7.h
+s23_lib.o: ../include/openssl/rc2.h ../include/openssl/rc4.h
+s23_lib.o: ../include/openssl/rc5.h ../include/openssl/ripemd.h
+s23_lib.o: ../include/openssl/rsa.h ../include/openssl/safestack.h
+s23_lib.o: ../include/openssl/sha.h ../include/openssl/ssl.h
+s23_lib.o: ../include/openssl/ssl2.h ../include/openssl/ssl23.h
+s23_lib.o: ../include/openssl/ssl3.h ../include/openssl/stack.h
+s23_lib.o: ../include/openssl/symhacks.h ../include/openssl/tls1.h
 s23_lib.o: ../include/openssl/x509.h ../include/openssl/x509_vfy.h ssl_locl.h
 s23_meth.o: ../include/openssl/asn1.h ../include/openssl/bio.h
 s23_meth.o: ../include/openssl/blowfish.h ../include/openssl/bn.h
@@ -167,17 +170,18 @@ s23_meth.o: ../include/openssl/dsa.h ../include/openssl/e_os.h
 s23_meth.o: ../include/openssl/e_os2.h ../include/openssl/err.h
 s23_meth.o: ../include/openssl/evp.h ../include/openssl/idea.h
 s23_meth.o: ../include/openssl/lhash.h ../include/openssl/md2.h
-s23_meth.o: ../include/openssl/md5.h ../include/openssl/mdc2.h
-s23_meth.o: ../include/openssl/obj_mac.h ../include/openssl/objects.h
-s23_meth.o: ../include/openssl/opensslconf.h ../include/openssl/opensslv.h
-s23_meth.o: ../include/openssl/pem.h ../include/openssl/pem2.h
-s23_meth.o: ../include/openssl/pkcs7.h ../include/openssl/rc2.h
-s23_meth.o: ../include/openssl/rc4.h ../include/openssl/rc5.h
-s23_meth.o: ../include/openssl/ripemd.h ../include/openssl/rsa.h
-s23_meth.o: ../include/openssl/safestack.h ../include/openssl/sha.h
-s23_meth.o: ../include/openssl/ssl.h ../include/openssl/ssl2.h
-s23_meth.o: ../include/openssl/ssl23.h ../include/openssl/ssl3.h
-s23_meth.o: ../include/openssl/stack.h ../include/openssl/tls1.h
+s23_meth.o: ../include/openssl/md4.h ../include/openssl/md5.h
+s23_meth.o: ../include/openssl/mdc2.h ../include/openssl/obj_mac.h
+s23_meth.o: ../include/openssl/objects.h ../include/openssl/opensslconf.h
+s23_meth.o: ../include/openssl/opensslv.h ../include/openssl/pem.h
+s23_meth.o: ../include/openssl/pem2.h ../include/openssl/pkcs7.h
+s23_meth.o: ../include/openssl/rc2.h ../include/openssl/rc4.h
+s23_meth.o: ../include/openssl/rc5.h ../include/openssl/ripemd.h
+s23_meth.o: ../include/openssl/rsa.h ../include/openssl/safestack.h
+s23_meth.o: ../include/openssl/sha.h ../include/openssl/ssl.h
+s23_meth.o: ../include/openssl/ssl2.h ../include/openssl/ssl23.h
+s23_meth.o: ../include/openssl/ssl3.h ../include/openssl/stack.h
+s23_meth.o: ../include/openssl/symhacks.h ../include/openssl/tls1.h
 s23_meth.o: ../include/openssl/x509.h ../include/openssl/x509_vfy.h ssl_locl.h
 s23_pkt.o: ../include/openssl/asn1.h ../include/openssl/bio.h
 s23_pkt.o: ../include/openssl/blowfish.h ../include/openssl/bn.h
@@ -188,17 +192,18 @@ s23_pkt.o: ../include/openssl/dsa.h ../include/openssl/e_os.h
 s23_pkt.o: ../include/openssl/e_os2.h ../include/openssl/err.h
 s23_pkt.o: ../include/openssl/evp.h ../include/openssl/idea.h
 s23_pkt.o: ../include/openssl/lhash.h ../include/openssl/md2.h
-s23_pkt.o: ../include/openssl/md5.h ../include/openssl/mdc2.h
-s23_pkt.o: ../include/openssl/obj_mac.h ../include/openssl/objects.h
-s23_pkt.o: ../include/openssl/opensslconf.h ../include/openssl/opensslv.h
-s23_pkt.o: ../include/openssl/pem.h ../include/openssl/pem2.h
-s23_pkt.o: ../include/openssl/pkcs7.h ../include/openssl/rc2.h
-s23_pkt.o: ../include/openssl/rc4.h ../include/openssl/rc5.h
-s23_pkt.o: ../include/openssl/ripemd.h ../include/openssl/rsa.h
-s23_pkt.o: ../include/openssl/safestack.h ../include/openssl/sha.h
-s23_pkt.o: ../include/openssl/ssl.h ../include/openssl/ssl2.h
-s23_pkt.o: ../include/openssl/ssl23.h ../include/openssl/ssl3.h
-s23_pkt.o: ../include/openssl/stack.h ../include/openssl/tls1.h
+s23_pkt.o: ../include/openssl/md4.h ../include/openssl/md5.h
+s23_pkt.o: ../include/openssl/mdc2.h ../include/openssl/obj_mac.h
+s23_pkt.o: ../include/openssl/objects.h ../include/openssl/opensslconf.h
+s23_pkt.o: ../include/openssl/opensslv.h ../include/openssl/pem.h
+s23_pkt.o: ../include/openssl/pem2.h ../include/openssl/pkcs7.h
+s23_pkt.o: ../include/openssl/rc2.h ../include/openssl/rc4.h
+s23_pkt.o: ../include/openssl/rc5.h ../include/openssl/ripemd.h
+s23_pkt.o: ../include/openssl/rsa.h ../include/openssl/safestack.h
+s23_pkt.o: ../include/openssl/sha.h ../include/openssl/ssl.h
+s23_pkt.o: ../include/openssl/ssl2.h ../include/openssl/ssl23.h
+s23_pkt.o: ../include/openssl/ssl3.h ../include/openssl/stack.h
+s23_pkt.o: ../include/openssl/symhacks.h ../include/openssl/tls1.h
 s23_pkt.o: ../include/openssl/x509.h ../include/openssl/x509_vfy.h ssl_locl.h
 s23_srvr.o: ../include/openssl/asn1.h ../include/openssl/bio.h
 s23_srvr.o: ../include/openssl/blowfish.h ../include/openssl/bn.h
@@ -209,17 +214,18 @@ s23_srvr.o: ../include/openssl/dsa.h ../include/openssl/e_os.h
 s23_srvr.o: ../include/openssl/e_os2.h ../include/openssl/err.h
 s23_srvr.o: ../include/openssl/evp.h ../include/openssl/idea.h
 s23_srvr.o: ../include/openssl/lhash.h ../include/openssl/md2.h
-s23_srvr.o: ../include/openssl/md5.h ../include/openssl/mdc2.h
-s23_srvr.o: ../include/openssl/obj_mac.h ../include/openssl/objects.h
-s23_srvr.o: ../include/openssl/opensslconf.h ../include/openssl/opensslv.h
-s23_srvr.o: ../include/openssl/pem.h ../include/openssl/pem2.h
-s23_srvr.o: ../include/openssl/pkcs7.h ../include/openssl/rand.h
-s23_srvr.o: ../include/openssl/rc2.h ../include/openssl/rc4.h
-s23_srvr.o: ../include/openssl/rc5.h ../include/openssl/ripemd.h
-s23_srvr.o: ../include/openssl/rsa.h ../include/openssl/safestack.h
-s23_srvr.o: ../include/openssl/sha.h ../include/openssl/ssl.h
-s23_srvr.o: ../include/openssl/ssl2.h ../include/openssl/ssl23.h
-s23_srvr.o: ../include/openssl/ssl3.h ../include/openssl/stack.h
+s23_srvr.o: ../include/openssl/md4.h ../include/openssl/md5.h
+s23_srvr.o: ../include/openssl/mdc2.h ../include/openssl/obj_mac.h
+s23_srvr.o: ../include/openssl/objects.h ../include/openssl/opensslconf.h
+s23_srvr.o: ../include/openssl/opensslv.h ../include/openssl/pem.h
+s23_srvr.o: ../include/openssl/pem2.h ../include/openssl/pkcs7.h
+s23_srvr.o: ../include/openssl/rand.h ../include/openssl/rc2.h
+s23_srvr.o: ../include/openssl/rc4.h ../include/openssl/rc5.h
+s23_srvr.o: ../include/openssl/ripemd.h ../include/openssl/rsa.h
+s23_srvr.o: ../include/openssl/safestack.h ../include/openssl/sha.h
+s23_srvr.o: ../include/openssl/ssl.h ../include/openssl/ssl2.h
+s23_srvr.o: ../include/openssl/ssl23.h ../include/openssl/ssl3.h
+s23_srvr.o: ../include/openssl/stack.h ../include/openssl/symhacks.h
 s23_srvr.o: ../include/openssl/tls1.h ../include/openssl/x509.h
 s23_srvr.o: ../include/openssl/x509_vfy.h ssl_locl.h
 s2_clnt.o: ../include/openssl/asn1.h ../include/openssl/bio.h
@@ -231,17 +237,18 @@ s2_clnt.o: ../include/openssl/dsa.h ../include/openssl/e_os.h
 s2_clnt.o: ../include/openssl/e_os2.h ../include/openssl/err.h
 s2_clnt.o: ../include/openssl/evp.h ../include/openssl/idea.h
 s2_clnt.o: ../include/openssl/lhash.h ../include/openssl/md2.h
-s2_clnt.o: ../include/openssl/md5.h ../include/openssl/mdc2.h
-s2_clnt.o: ../include/openssl/obj_mac.h ../include/openssl/objects.h
-s2_clnt.o: ../include/openssl/opensslconf.h ../include/openssl/opensslv.h
-s2_clnt.o: ../include/openssl/pem.h ../include/openssl/pem2.h
-s2_clnt.o: ../include/openssl/pkcs7.h ../include/openssl/rand.h
-s2_clnt.o: ../include/openssl/rc2.h ../include/openssl/rc4.h
-s2_clnt.o: ../include/openssl/rc5.h ../include/openssl/ripemd.h
-s2_clnt.o: ../include/openssl/rsa.h ../include/openssl/safestack.h
-s2_clnt.o: ../include/openssl/sha.h ../include/openssl/ssl.h
-s2_clnt.o: ../include/openssl/ssl2.h ../include/openssl/ssl23.h
-s2_clnt.o: ../include/openssl/ssl3.h ../include/openssl/stack.h
+s2_clnt.o: ../include/openssl/md4.h ../include/openssl/md5.h
+s2_clnt.o: ../include/openssl/mdc2.h ../include/openssl/obj_mac.h
+s2_clnt.o: ../include/openssl/objects.h ../include/openssl/opensslconf.h
+s2_clnt.o: ../include/openssl/opensslv.h ../include/openssl/pem.h
+s2_clnt.o: ../include/openssl/pem2.h ../include/openssl/pkcs7.h
+s2_clnt.o: ../include/openssl/rand.h ../include/openssl/rc2.h
+s2_clnt.o: ../include/openssl/rc4.h ../include/openssl/rc5.h
+s2_clnt.o: ../include/openssl/ripemd.h ../include/openssl/rsa.h
+s2_clnt.o: ../include/openssl/safestack.h ../include/openssl/sha.h
+s2_clnt.o: ../include/openssl/ssl.h ../include/openssl/ssl2.h
+s2_clnt.o: ../include/openssl/ssl23.h ../include/openssl/ssl3.h
+s2_clnt.o: ../include/openssl/stack.h ../include/openssl/symhacks.h
 s2_clnt.o: ../include/openssl/tls1.h ../include/openssl/x509.h
 s2_clnt.o: ../include/openssl/x509_vfy.h ssl_locl.h
 s2_enc.o: ../include/openssl/asn1.h ../include/openssl/bio.h
@@ -253,17 +260,18 @@ s2_enc.o: ../include/openssl/dsa.h ../include/openssl/e_os.h
 s2_enc.o: ../include/openssl/e_os2.h ../include/openssl/err.h
 s2_enc.o: ../include/openssl/evp.h ../include/openssl/idea.h
 s2_enc.o: ../include/openssl/lhash.h ../include/openssl/md2.h
-s2_enc.o: ../include/openssl/md5.h ../include/openssl/mdc2.h
-s2_enc.o: ../include/openssl/obj_mac.h ../include/openssl/objects.h
-s2_enc.o: ../include/openssl/opensslconf.h ../include/openssl/opensslv.h
-s2_enc.o: ../include/openssl/pem.h ../include/openssl/pem2.h
-s2_enc.o: ../include/openssl/pkcs7.h ../include/openssl/rc2.h
-s2_enc.o: ../include/openssl/rc4.h ../include/openssl/rc5.h
-s2_enc.o: ../include/openssl/ripemd.h ../include/openssl/rsa.h
-s2_enc.o: ../include/openssl/safestack.h ../include/openssl/sha.h
-s2_enc.o: ../include/openssl/ssl.h ../include/openssl/ssl2.h
-s2_enc.o: ../include/openssl/ssl23.h ../include/openssl/ssl3.h
-s2_enc.o: ../include/openssl/stack.h ../include/openssl/tls1.h
+s2_enc.o: ../include/openssl/md4.h ../include/openssl/md5.h
+s2_enc.o: ../include/openssl/mdc2.h ../include/openssl/obj_mac.h
+s2_enc.o: ../include/openssl/objects.h ../include/openssl/opensslconf.h
+s2_enc.o: ../include/openssl/opensslv.h ../include/openssl/pem.h
+s2_enc.o: ../include/openssl/pem2.h ../include/openssl/pkcs7.h
+s2_enc.o: ../include/openssl/rc2.h ../include/openssl/rc4.h
+s2_enc.o: ../include/openssl/rc5.h ../include/openssl/ripemd.h
+s2_enc.o: ../include/openssl/rsa.h ../include/openssl/safestack.h
+s2_enc.o: ../include/openssl/sha.h ../include/openssl/ssl.h
+s2_enc.o: ../include/openssl/ssl2.h ../include/openssl/ssl23.h
+s2_enc.o: ../include/openssl/ssl3.h ../include/openssl/stack.h
+s2_enc.o: ../include/openssl/symhacks.h ../include/openssl/tls1.h
 s2_enc.o: ../include/openssl/x509.h ../include/openssl/x509_vfy.h ssl_locl.h
 s2_lib.o: ../include/openssl/asn1.h ../include/openssl/bio.h
 s2_lib.o: ../include/openssl/blowfish.h ../include/openssl/bn.h
@@ -274,17 +282,18 @@ s2_lib.o: ../include/openssl/dsa.h ../include/openssl/e_os.h
 s2_lib.o: ../include/openssl/e_os2.h ../include/openssl/err.h
 s2_lib.o: ../include/openssl/evp.h ../include/openssl/idea.h
 s2_lib.o: ../include/openssl/lhash.h ../include/openssl/md2.h
-s2_lib.o: ../include/openssl/md5.h ../include/openssl/mdc2.h
-s2_lib.o: ../include/openssl/obj_mac.h ../include/openssl/objects.h
-s2_lib.o: ../include/openssl/opensslconf.h ../include/openssl/opensslv.h
-s2_lib.o: ../include/openssl/pem.h ../include/openssl/pem2.h
-s2_lib.o: ../include/openssl/pkcs7.h ../include/openssl/rc2.h
-s2_lib.o: ../include/openssl/rc4.h ../include/openssl/rc5.h
-s2_lib.o: ../include/openssl/ripemd.h ../include/openssl/rsa.h
-s2_lib.o: ../include/openssl/safestack.h ../include/openssl/sha.h
-s2_lib.o: ../include/openssl/ssl.h ../include/openssl/ssl2.h
-s2_lib.o: ../include/openssl/ssl23.h ../include/openssl/ssl3.h
-s2_lib.o: ../include/openssl/stack.h ../include/openssl/tls1.h
+s2_lib.o: ../include/openssl/md4.h ../include/openssl/md5.h
+s2_lib.o: ../include/openssl/mdc2.h ../include/openssl/obj_mac.h
+s2_lib.o: ../include/openssl/objects.h ../include/openssl/opensslconf.h
+s2_lib.o: ../include/openssl/opensslv.h ../include/openssl/pem.h
+s2_lib.o: ../include/openssl/pem2.h ../include/openssl/pkcs7.h
+s2_lib.o: ../include/openssl/rc2.h ../include/openssl/rc4.h
+s2_lib.o: ../include/openssl/rc5.h ../include/openssl/ripemd.h
+s2_lib.o: ../include/openssl/rsa.h ../include/openssl/safestack.h
+s2_lib.o: ../include/openssl/sha.h ../include/openssl/ssl.h
+s2_lib.o: ../include/openssl/ssl2.h ../include/openssl/ssl23.h
+s2_lib.o: ../include/openssl/ssl3.h ../include/openssl/stack.h
+s2_lib.o: ../include/openssl/symhacks.h ../include/openssl/tls1.h
 s2_lib.o: ../include/openssl/x509.h ../include/openssl/x509_vfy.h ssl_locl.h
 s2_meth.o: ../include/openssl/asn1.h ../include/openssl/bio.h
 s2_meth.o: ../include/openssl/blowfish.h ../include/openssl/bn.h
@@ -295,17 +304,18 @@ s2_meth.o: ../include/openssl/dsa.h ../include/openssl/e_os.h
 s2_meth.o: ../include/openssl/e_os2.h ../include/openssl/err.h
 s2_meth.o: ../include/openssl/evp.h ../include/openssl/idea.h
 s2_meth.o: ../include/openssl/lhash.h ../include/openssl/md2.h
-s2_meth.o: ../include/openssl/md5.h ../include/openssl/mdc2.h
-s2_meth.o: ../include/openssl/obj_mac.h ../include/openssl/objects.h
-s2_meth.o: ../include/openssl/opensslconf.h ../include/openssl/opensslv.h
-s2_meth.o: ../include/openssl/pem.h ../include/openssl/pem2.h
-s2_meth.o: ../include/openssl/pkcs7.h ../include/openssl/rc2.h
-s2_meth.o: ../include/openssl/rc4.h ../include/openssl/rc5.h
-s2_meth.o: ../include/openssl/ripemd.h ../include/openssl/rsa.h
-s2_meth.o: ../include/openssl/safestack.h ../include/openssl/sha.h
-s2_meth.o: ../include/openssl/ssl.h ../include/openssl/ssl2.h
-s2_meth.o: ../include/openssl/ssl23.h ../include/openssl/ssl3.h
-s2_meth.o: ../include/openssl/stack.h ../include/openssl/tls1.h
+s2_meth.o: ../include/openssl/md4.h ../include/openssl/md5.h
+s2_meth.o: ../include/openssl/mdc2.h ../include/openssl/obj_mac.h
+s2_meth.o: ../include/openssl/objects.h ../include/openssl/opensslconf.h
+s2_meth.o: ../include/openssl/opensslv.h ../include/openssl/pem.h
+s2_meth.o: ../include/openssl/pem2.h ../include/openssl/pkcs7.h
+s2_meth.o: ../include/openssl/rc2.h ../include/openssl/rc4.h
+s2_meth.o: ../include/openssl/rc5.h ../include/openssl/ripemd.h
+s2_meth.o: ../include/openssl/rsa.h ../include/openssl/safestack.h
+s2_meth.o: ../include/openssl/sha.h ../include/openssl/ssl.h
+s2_meth.o: ../include/openssl/ssl2.h ../include/openssl/ssl23.h
+s2_meth.o: ../include/openssl/ssl3.h ../include/openssl/stack.h
+s2_meth.o: ../include/openssl/symhacks.h ../include/openssl/tls1.h
 s2_meth.o: ../include/openssl/x509.h ../include/openssl/x509_vfy.h ssl_locl.h
 s2_pkt.o: ../include/openssl/asn1.h ../include/openssl/bio.h
 s2_pkt.o: ../include/openssl/blowfish.h ../include/openssl/bn.h
@@ -316,17 +326,18 @@ s2_pkt.o: ../include/openssl/dsa.h ../include/openssl/e_os.h
 s2_pkt.o: ../include/openssl/e_os2.h ../include/openssl/err.h
 s2_pkt.o: ../include/openssl/evp.h ../include/openssl/idea.h
 s2_pkt.o: ../include/openssl/lhash.h ../include/openssl/md2.h
-s2_pkt.o: ../include/openssl/md5.h ../include/openssl/mdc2.h
-s2_pkt.o: ../include/openssl/obj_mac.h ../include/openssl/objects.h
-s2_pkt.o: ../include/openssl/opensslconf.h ../include/openssl/opensslv.h
-s2_pkt.o: ../include/openssl/pem.h ../include/openssl/pem2.h
-s2_pkt.o: ../include/openssl/pkcs7.h ../include/openssl/rc2.h
-s2_pkt.o: ../include/openssl/rc4.h ../include/openssl/rc5.h
-s2_pkt.o: ../include/openssl/ripemd.h ../include/openssl/rsa.h
-s2_pkt.o: ../include/openssl/safestack.h ../include/openssl/sha.h
-s2_pkt.o: ../include/openssl/ssl.h ../include/openssl/ssl2.h
-s2_pkt.o: ../include/openssl/ssl23.h ../include/openssl/ssl3.h
-s2_pkt.o: ../include/openssl/stack.h ../include/openssl/tls1.h
+s2_pkt.o: ../include/openssl/md4.h ../include/openssl/md5.h
+s2_pkt.o: ../include/openssl/mdc2.h ../include/openssl/obj_mac.h
+s2_pkt.o: ../include/openssl/objects.h ../include/openssl/opensslconf.h
+s2_pkt.o: ../include/openssl/opensslv.h ../include/openssl/pem.h
+s2_pkt.o: ../include/openssl/pem2.h ../include/openssl/pkcs7.h
+s2_pkt.o: ../include/openssl/rc2.h ../include/openssl/rc4.h
+s2_pkt.o: ../include/openssl/rc5.h ../include/openssl/ripemd.h
+s2_pkt.o: ../include/openssl/rsa.h ../include/openssl/safestack.h
+s2_pkt.o: ../include/openssl/sha.h ../include/openssl/ssl.h
+s2_pkt.o: ../include/openssl/ssl2.h ../include/openssl/ssl23.h
+s2_pkt.o: ../include/openssl/ssl3.h ../include/openssl/stack.h
+s2_pkt.o: ../include/openssl/symhacks.h ../include/openssl/tls1.h
 s2_pkt.o: ../include/openssl/x509.h ../include/openssl/x509_vfy.h ssl_locl.h
 s2_srvr.o: ../include/openssl/asn1.h ../include/openssl/bio.h
 s2_srvr.o: ../include/openssl/blowfish.h ../include/openssl/bn.h
@@ -337,17 +348,18 @@ s2_srvr.o: ../include/openssl/dsa.h ../include/openssl/e_os.h
 s2_srvr.o: ../include/openssl/e_os2.h ../include/openssl/err.h
 s2_srvr.o: ../include/openssl/evp.h ../include/openssl/idea.h
 s2_srvr.o: ../include/openssl/lhash.h ../include/openssl/md2.h
-s2_srvr.o: ../include/openssl/md5.h ../include/openssl/mdc2.h
-s2_srvr.o: ../include/openssl/obj_mac.h ../include/openssl/objects.h
-s2_srvr.o: ../include/openssl/opensslconf.h ../include/openssl/opensslv.h
-s2_srvr.o: ../include/openssl/pem.h ../include/openssl/pem2.h
-s2_srvr.o: ../include/openssl/pkcs7.h ../include/openssl/rand.h
-s2_srvr.o: ../include/openssl/rc2.h ../include/openssl/rc4.h
-s2_srvr.o: ../include/openssl/rc5.h ../include/openssl/ripemd.h
-s2_srvr.o: ../include/openssl/rsa.h ../include/openssl/safestack.h
-s2_srvr.o: ../include/openssl/sha.h ../include/openssl/ssl.h
-s2_srvr.o: ../include/openssl/ssl2.h ../include/openssl/ssl23.h
-s2_srvr.o: ../include/openssl/ssl3.h ../include/openssl/stack.h
+s2_srvr.o: ../include/openssl/md4.h ../include/openssl/md5.h
+s2_srvr.o: ../include/openssl/mdc2.h ../include/openssl/obj_mac.h
+s2_srvr.o: ../include/openssl/objects.h ../include/openssl/opensslconf.h
+s2_srvr.o: ../include/openssl/opensslv.h ../include/openssl/pem.h
+s2_srvr.o: ../include/openssl/pem2.h ../include/openssl/pkcs7.h
+s2_srvr.o: ../include/openssl/rand.h ../include/openssl/rc2.h
+s2_srvr.o: ../include/openssl/rc4.h ../include/openssl/rc5.h
+s2_srvr.o: ../include/openssl/ripemd.h ../include/openssl/rsa.h
+s2_srvr.o: ../include/openssl/safestack.h ../include/openssl/sha.h
+s2_srvr.o: ../include/openssl/ssl.h ../include/openssl/ssl2.h
+s2_srvr.o: ../include/openssl/ssl23.h ../include/openssl/ssl3.h
+s2_srvr.o: ../include/openssl/stack.h ../include/openssl/symhacks.h
 s2_srvr.o: ../include/openssl/tls1.h ../include/openssl/x509.h
 s2_srvr.o: ../include/openssl/x509_vfy.h ssl_locl.h
 s3_both.o: ../include/openssl/asn1.h ../include/openssl/bio.h
@@ -359,17 +371,18 @@ s3_both.o: ../include/openssl/dsa.h ../include/openssl/e_os.h
 s3_both.o: ../include/openssl/e_os2.h ../include/openssl/err.h
 s3_both.o: ../include/openssl/evp.h ../include/openssl/idea.h
 s3_both.o: ../include/openssl/lhash.h ../include/openssl/md2.h
-s3_both.o: ../include/openssl/md5.h ../include/openssl/mdc2.h
-s3_both.o: ../include/openssl/obj_mac.h ../include/openssl/objects.h
-s3_both.o: ../include/openssl/opensslconf.h ../include/openssl/opensslv.h
-s3_both.o: ../include/openssl/pem.h ../include/openssl/pem2.h
-s3_both.o: ../include/openssl/pkcs7.h ../include/openssl/rand.h
-s3_both.o: ../include/openssl/rc2.h ../include/openssl/rc4.h
-s3_both.o: ../include/openssl/rc5.h ../include/openssl/ripemd.h
-s3_both.o: ../include/openssl/rsa.h ../include/openssl/safestack.h
-s3_both.o: ../include/openssl/sha.h ../include/openssl/ssl.h
-s3_both.o: ../include/openssl/ssl2.h ../include/openssl/ssl23.h
-s3_both.o: ../include/openssl/ssl3.h ../include/openssl/stack.h
+s3_both.o: ../include/openssl/md4.h ../include/openssl/md5.h
+s3_both.o: ../include/openssl/mdc2.h ../include/openssl/obj_mac.h
+s3_both.o: ../include/openssl/objects.h ../include/openssl/opensslconf.h
+s3_both.o: ../include/openssl/opensslv.h ../include/openssl/pem.h
+s3_both.o: ../include/openssl/pem2.h ../include/openssl/pkcs7.h
+s3_both.o: ../include/openssl/rand.h ../include/openssl/rc2.h
+s3_both.o: ../include/openssl/rc4.h ../include/openssl/rc5.h
+s3_both.o: ../include/openssl/ripemd.h ../include/openssl/rsa.h
+s3_both.o: ../include/openssl/safestack.h ../include/openssl/sha.h
+s3_both.o: ../include/openssl/ssl.h ../include/openssl/ssl2.h
+s3_both.o: ../include/openssl/ssl23.h ../include/openssl/ssl3.h
+s3_both.o: ../include/openssl/stack.h ../include/openssl/symhacks.h
 s3_both.o: ../include/openssl/tls1.h ../include/openssl/x509.h
 s3_both.o: ../include/openssl/x509_vfy.h ssl_locl.h
 s3_clnt.o: ../include/openssl/asn1.h ../include/openssl/bio.h
@@ -381,17 +394,18 @@ s3_clnt.o: ../include/openssl/dsa.h ../include/openssl/e_os.h
 s3_clnt.o: ../include/openssl/e_os2.h ../include/openssl/err.h
 s3_clnt.o: ../include/openssl/evp.h ../include/openssl/idea.h
 s3_clnt.o: ../include/openssl/lhash.h ../include/openssl/md2.h
-s3_clnt.o: ../include/openssl/md5.h ../include/openssl/mdc2.h
-s3_clnt.o: ../include/openssl/obj_mac.h ../include/openssl/objects.h
-s3_clnt.o: ../include/openssl/opensslconf.h ../include/openssl/opensslv.h
-s3_clnt.o: ../include/openssl/pem.h ../include/openssl/pem2.h
-s3_clnt.o: ../include/openssl/pkcs7.h ../include/openssl/rand.h
-s3_clnt.o: ../include/openssl/rc2.h ../include/openssl/rc4.h
-s3_clnt.o: ../include/openssl/rc5.h ../include/openssl/ripemd.h
-s3_clnt.o: ../include/openssl/rsa.h ../include/openssl/safestack.h
-s3_clnt.o: ../include/openssl/sha.h ../include/openssl/ssl.h
-s3_clnt.o: ../include/openssl/ssl2.h ../include/openssl/ssl23.h
-s3_clnt.o: ../include/openssl/ssl3.h ../include/openssl/stack.h
+s3_clnt.o: ../include/openssl/md4.h ../include/openssl/md5.h
+s3_clnt.o: ../include/openssl/mdc2.h ../include/openssl/obj_mac.h
+s3_clnt.o: ../include/openssl/objects.h ../include/openssl/opensslconf.h
+s3_clnt.o: ../include/openssl/opensslv.h ../include/openssl/pem.h
+s3_clnt.o: ../include/openssl/pem2.h ../include/openssl/pkcs7.h
+s3_clnt.o: ../include/openssl/rand.h ../include/openssl/rc2.h
+s3_clnt.o: ../include/openssl/rc4.h ../include/openssl/rc5.h
+s3_clnt.o: ../include/openssl/ripemd.h ../include/openssl/rsa.h
+s3_clnt.o: ../include/openssl/safestack.h ../include/openssl/sha.h
+s3_clnt.o: ../include/openssl/ssl.h ../include/openssl/ssl2.h
+s3_clnt.o: ../include/openssl/ssl23.h ../include/openssl/ssl3.h
+s3_clnt.o: ../include/openssl/stack.h ../include/openssl/symhacks.h
 s3_clnt.o: ../include/openssl/tls1.h ../include/openssl/x509.h
 s3_clnt.o: ../include/openssl/x509_vfy.h ssl_locl.h
 s3_enc.o: ../include/openssl/asn1.h ../include/openssl/bio.h
@@ -403,17 +417,18 @@ s3_enc.o: ../include/openssl/dsa.h ../include/openssl/e_os.h
 s3_enc.o: ../include/openssl/e_os2.h ../include/openssl/err.h
 s3_enc.o: ../include/openssl/evp.h ../include/openssl/idea.h
 s3_enc.o: ../include/openssl/lhash.h ../include/openssl/md2.h
-s3_enc.o: ../include/openssl/md5.h ../include/openssl/mdc2.h
-s3_enc.o: ../include/openssl/obj_mac.h ../include/openssl/objects.h
-s3_enc.o: ../include/openssl/opensslconf.h ../include/openssl/opensslv.h
-s3_enc.o: ../include/openssl/pem.h ../include/openssl/pem2.h
-s3_enc.o: ../include/openssl/pkcs7.h ../include/openssl/rc2.h
-s3_enc.o: ../include/openssl/rc4.h ../include/openssl/rc5.h
-s3_enc.o: ../include/openssl/ripemd.h ../include/openssl/rsa.h
-s3_enc.o: ../include/openssl/safestack.h ../include/openssl/sha.h
-s3_enc.o: ../include/openssl/ssl.h ../include/openssl/ssl2.h
-s3_enc.o: ../include/openssl/ssl23.h ../include/openssl/ssl3.h
-s3_enc.o: ../include/openssl/stack.h ../include/openssl/tls1.h
+s3_enc.o: ../include/openssl/md4.h ../include/openssl/md5.h
+s3_enc.o: ../include/openssl/mdc2.h ../include/openssl/obj_mac.h
+s3_enc.o: ../include/openssl/objects.h ../include/openssl/opensslconf.h
+s3_enc.o: ../include/openssl/opensslv.h ../include/openssl/pem.h
+s3_enc.o: ../include/openssl/pem2.h ../include/openssl/pkcs7.h
+s3_enc.o: ../include/openssl/rc2.h ../include/openssl/rc4.h
+s3_enc.o: ../include/openssl/rc5.h ../include/openssl/ripemd.h
+s3_enc.o: ../include/openssl/rsa.h ../include/openssl/safestack.h
+s3_enc.o: ../include/openssl/sha.h ../include/openssl/ssl.h
+s3_enc.o: ../include/openssl/ssl2.h ../include/openssl/ssl23.h
+s3_enc.o: ../include/openssl/ssl3.h ../include/openssl/stack.h
+s3_enc.o: ../include/openssl/symhacks.h ../include/openssl/tls1.h
 s3_enc.o: ../include/openssl/x509.h ../include/openssl/x509_vfy.h ssl_locl.h
 s3_lib.o: ../include/openssl/asn1.h ../include/openssl/bio.h
 s3_lib.o: ../include/openssl/blowfish.h ../include/openssl/bn.h
@@ -424,17 +439,18 @@ s3_lib.o: ../include/openssl/dsa.h ../include/openssl/e_os.h
 s3_lib.o: ../include/openssl/e_os2.h ../include/openssl/err.h
 s3_lib.o: ../include/openssl/evp.h ../include/openssl/idea.h
 s3_lib.o: ../include/openssl/lhash.h ../include/openssl/md2.h
-s3_lib.o: ../include/openssl/md5.h ../include/openssl/mdc2.h
-s3_lib.o: ../include/openssl/obj_mac.h ../include/openssl/objects.h
-s3_lib.o: ../include/openssl/opensslconf.h ../include/openssl/opensslv.h
-s3_lib.o: ../include/openssl/pem.h ../include/openssl/pem2.h
-s3_lib.o: ../include/openssl/pkcs7.h ../include/openssl/rc2.h
-s3_lib.o: ../include/openssl/rc4.h ../include/openssl/rc5.h
-s3_lib.o: ../include/openssl/ripemd.h ../include/openssl/rsa.h
-s3_lib.o: ../include/openssl/safestack.h ../include/openssl/sha.h
-s3_lib.o: ../include/openssl/ssl.h ../include/openssl/ssl2.h
-s3_lib.o: ../include/openssl/ssl23.h ../include/openssl/ssl3.h
-s3_lib.o: ../include/openssl/stack.h ../include/openssl/tls1.h
+s3_lib.o: ../include/openssl/md4.h ../include/openssl/md5.h
+s3_lib.o: ../include/openssl/mdc2.h ../include/openssl/obj_mac.h
+s3_lib.o: ../include/openssl/objects.h ../include/openssl/opensslconf.h
+s3_lib.o: ../include/openssl/opensslv.h ../include/openssl/pem.h
+s3_lib.o: ../include/openssl/pem2.h ../include/openssl/pkcs7.h
+s3_lib.o: ../include/openssl/rc2.h ../include/openssl/rc4.h
+s3_lib.o: ../include/openssl/rc5.h ../include/openssl/ripemd.h
+s3_lib.o: ../include/openssl/rsa.h ../include/openssl/safestack.h
+s3_lib.o: ../include/openssl/sha.h ../include/openssl/ssl.h
+s3_lib.o: ../include/openssl/ssl2.h ../include/openssl/ssl23.h
+s3_lib.o: ../include/openssl/ssl3.h ../include/openssl/stack.h
+s3_lib.o: ../include/openssl/symhacks.h ../include/openssl/tls1.h
 s3_lib.o: ../include/openssl/x509.h ../include/openssl/x509_vfy.h ssl_locl.h
 s3_meth.o: ../include/openssl/asn1.h ../include/openssl/bio.h
 s3_meth.o: ../include/openssl/blowfish.h ../include/openssl/bn.h
@@ -445,17 +461,18 @@ s3_meth.o: ../include/openssl/dsa.h ../include/openssl/e_os.h
 s3_meth.o: ../include/openssl/e_os2.h ../include/openssl/err.h
 s3_meth.o: ../include/openssl/evp.h ../include/openssl/idea.h
 s3_meth.o: ../include/openssl/lhash.h ../include/openssl/md2.h
-s3_meth.o: ../include/openssl/md5.h ../include/openssl/mdc2.h
-s3_meth.o: ../include/openssl/obj_mac.h ../include/openssl/objects.h
-s3_meth.o: ../include/openssl/opensslconf.h ../include/openssl/opensslv.h
-s3_meth.o: ../include/openssl/pem.h ../include/openssl/pem2.h
-s3_meth.o: ../include/openssl/pkcs7.h ../include/openssl/rc2.h
-s3_meth.o: ../include/openssl/rc4.h ../include/openssl/rc5.h
-s3_meth.o: ../include/openssl/ripemd.h ../include/openssl/rsa.h
-s3_meth.o: ../include/openssl/safestack.h ../include/openssl/sha.h
-s3_meth.o: ../include/openssl/ssl.h ../include/openssl/ssl2.h
-s3_meth.o: ../include/openssl/ssl23.h ../include/openssl/ssl3.h
-s3_meth.o: ../include/openssl/stack.h ../include/openssl/tls1.h
+s3_meth.o: ../include/openssl/md4.h ../include/openssl/md5.h
+s3_meth.o: ../include/openssl/mdc2.h ../include/openssl/obj_mac.h
+s3_meth.o: ../include/openssl/objects.h ../include/openssl/opensslconf.h
+s3_meth.o: ../include/openssl/opensslv.h ../include/openssl/pem.h
+s3_meth.o: ../include/openssl/pem2.h ../include/openssl/pkcs7.h
+s3_meth.o: ../include/openssl/rc2.h ../include/openssl/rc4.h
+s3_meth.o: ../include/openssl/rc5.h ../include/openssl/ripemd.h
+s3_meth.o: ../include/openssl/rsa.h ../include/openssl/safestack.h
+s3_meth.o: ../include/openssl/sha.h ../include/openssl/ssl.h
+s3_meth.o: ../include/openssl/ssl2.h ../include/openssl/ssl23.h
+s3_meth.o: ../include/openssl/ssl3.h ../include/openssl/stack.h
+s3_meth.o: ../include/openssl/symhacks.h ../include/openssl/tls1.h
 s3_meth.o: ../include/openssl/x509.h ../include/openssl/x509_vfy.h ssl_locl.h
 s3_pkt.o: ../include/openssl/asn1.h ../include/openssl/bio.h
 s3_pkt.o: ../include/openssl/blowfish.h ../include/openssl/bn.h
@@ -466,17 +483,18 @@ s3_pkt.o: ../include/openssl/dsa.h ../include/openssl/e_os.h
 s3_pkt.o: ../include/openssl/e_os2.h ../include/openssl/err.h
 s3_pkt.o: ../include/openssl/evp.h ../include/openssl/idea.h
 s3_pkt.o: ../include/openssl/lhash.h ../include/openssl/md2.h
-s3_pkt.o: ../include/openssl/md5.h ../include/openssl/mdc2.h
-s3_pkt.o: ../include/openssl/obj_mac.h ../include/openssl/objects.h
-s3_pkt.o: ../include/openssl/opensslconf.h ../include/openssl/opensslv.h
-s3_pkt.o: ../include/openssl/pem.h ../include/openssl/pem2.h
-s3_pkt.o: ../include/openssl/pkcs7.h ../include/openssl/rc2.h
-s3_pkt.o: ../include/openssl/rc4.h ../include/openssl/rc5.h
-s3_pkt.o: ../include/openssl/ripemd.h ../include/openssl/rsa.h
-s3_pkt.o: ../include/openssl/safestack.h ../include/openssl/sha.h
-s3_pkt.o: ../include/openssl/ssl.h ../include/openssl/ssl2.h
-s3_pkt.o: ../include/openssl/ssl23.h ../include/openssl/ssl3.h
-s3_pkt.o: ../include/openssl/stack.h ../include/openssl/tls1.h
+s3_pkt.o: ../include/openssl/md4.h ../include/openssl/md5.h
+s3_pkt.o: ../include/openssl/mdc2.h ../include/openssl/obj_mac.h
+s3_pkt.o: ../include/openssl/objects.h ../include/openssl/opensslconf.h
+s3_pkt.o: ../include/openssl/opensslv.h ../include/openssl/pem.h
+s3_pkt.o: ../include/openssl/pem2.h ../include/openssl/pkcs7.h
+s3_pkt.o: ../include/openssl/rc2.h ../include/openssl/rc4.h
+s3_pkt.o: ../include/openssl/rc5.h ../include/openssl/ripemd.h
+s3_pkt.o: ../include/openssl/rsa.h ../include/openssl/safestack.h
+s3_pkt.o: ../include/openssl/sha.h ../include/openssl/ssl.h
+s3_pkt.o: ../include/openssl/ssl2.h ../include/openssl/ssl23.h
+s3_pkt.o: ../include/openssl/ssl3.h ../include/openssl/stack.h
+s3_pkt.o: ../include/openssl/symhacks.h ../include/openssl/tls1.h
 s3_pkt.o: ../include/openssl/x509.h ../include/openssl/x509_vfy.h ssl_locl.h
 s3_srvr.o: ../include/openssl/asn1.h ../include/openssl/bio.h
 s3_srvr.o: ../include/openssl/blowfish.h ../include/openssl/bn.h
@@ -487,17 +505,18 @@ s3_srvr.o: ../include/openssl/dsa.h ../include/openssl/e_os.h
 s3_srvr.o: ../include/openssl/e_os2.h ../include/openssl/err.h
 s3_srvr.o: ../include/openssl/evp.h ../include/openssl/idea.h
 s3_srvr.o: ../include/openssl/lhash.h ../include/openssl/md2.h
-s3_srvr.o: ../include/openssl/md5.h ../include/openssl/mdc2.h
-s3_srvr.o: ../include/openssl/obj_mac.h ../include/openssl/objects.h
-s3_srvr.o: ../include/openssl/opensslconf.h ../include/openssl/opensslv.h
-s3_srvr.o: ../include/openssl/pem.h ../include/openssl/pem2.h
-s3_srvr.o: ../include/openssl/pkcs7.h ../include/openssl/rand.h
-s3_srvr.o: ../include/openssl/rc2.h ../include/openssl/rc4.h
-s3_srvr.o: ../include/openssl/rc5.h ../include/openssl/ripemd.h
-s3_srvr.o: ../include/openssl/rsa.h ../include/openssl/safestack.h
-s3_srvr.o: ../include/openssl/sha.h ../include/openssl/ssl.h
-s3_srvr.o: ../include/openssl/ssl2.h ../include/openssl/ssl23.h
-s3_srvr.o: ../include/openssl/ssl3.h ../include/openssl/stack.h
+s3_srvr.o: ../include/openssl/md4.h ../include/openssl/md5.h
+s3_srvr.o: ../include/openssl/mdc2.h ../include/openssl/obj_mac.h
+s3_srvr.o: ../include/openssl/objects.h ../include/openssl/opensslconf.h
+s3_srvr.o: ../include/openssl/opensslv.h ../include/openssl/pem.h
+s3_srvr.o: ../include/openssl/pem2.h ../include/openssl/pkcs7.h
+s3_srvr.o: ../include/openssl/rand.h ../include/openssl/rc2.h
+s3_srvr.o: ../include/openssl/rc4.h ../include/openssl/rc5.h
+s3_srvr.o: ../include/openssl/ripemd.h ../include/openssl/rsa.h
+s3_srvr.o: ../include/openssl/safestack.h ../include/openssl/sha.h
+s3_srvr.o: ../include/openssl/ssl.h ../include/openssl/ssl2.h
+s3_srvr.o: ../include/openssl/ssl23.h ../include/openssl/ssl3.h
+s3_srvr.o: ../include/openssl/stack.h ../include/openssl/symhacks.h
 s3_srvr.o: ../include/openssl/tls1.h ../include/openssl/x509.h
 s3_srvr.o: ../include/openssl/x509_vfy.h ssl_locl.h
 ssl_algs.o: ../include/openssl/asn1.h ../include/openssl/bio.h
@@ -509,17 +528,18 @@ ssl_algs.o: ../include/openssl/dsa.h ../include/openssl/e_os.h
 ssl_algs.o: ../include/openssl/e_os2.h ../include/openssl/err.h
 ssl_algs.o: ../include/openssl/evp.h ../include/openssl/idea.h
 ssl_algs.o: ../include/openssl/lhash.h ../include/openssl/md2.h
-ssl_algs.o: ../include/openssl/md5.h ../include/openssl/mdc2.h
-ssl_algs.o: ../include/openssl/obj_mac.h ../include/openssl/objects.h
-ssl_algs.o: ../include/openssl/opensslconf.h ../include/openssl/opensslv.h
-ssl_algs.o: ../include/openssl/pem.h ../include/openssl/pem2.h
-ssl_algs.o: ../include/openssl/pkcs7.h ../include/openssl/rc2.h
-ssl_algs.o: ../include/openssl/rc4.h ../include/openssl/rc5.h
-ssl_algs.o: ../include/openssl/ripemd.h ../include/openssl/rsa.h
-ssl_algs.o: ../include/openssl/safestack.h ../include/openssl/sha.h
-ssl_algs.o: ../include/openssl/ssl.h ../include/openssl/ssl2.h
-ssl_algs.o: ../include/openssl/ssl23.h ../include/openssl/ssl3.h
-ssl_algs.o: ../include/openssl/stack.h ../include/openssl/tls1.h
+ssl_algs.o: ../include/openssl/md4.h ../include/openssl/md5.h
+ssl_algs.o: ../include/openssl/mdc2.h ../include/openssl/obj_mac.h
+ssl_algs.o: ../include/openssl/objects.h ../include/openssl/opensslconf.h
+ssl_algs.o: ../include/openssl/opensslv.h ../include/openssl/pem.h
+ssl_algs.o: ../include/openssl/pem2.h ../include/openssl/pkcs7.h
+ssl_algs.o: ../include/openssl/rc2.h ../include/openssl/rc4.h
+ssl_algs.o: ../include/openssl/rc5.h ../include/openssl/ripemd.h
+ssl_algs.o: ../include/openssl/rsa.h ../include/openssl/safestack.h
+ssl_algs.o: ../include/openssl/sha.h ../include/openssl/ssl.h
+ssl_algs.o: ../include/openssl/ssl2.h ../include/openssl/ssl23.h
+ssl_algs.o: ../include/openssl/ssl3.h ../include/openssl/stack.h
+ssl_algs.o: ../include/openssl/symhacks.h ../include/openssl/tls1.h
 ssl_algs.o: ../include/openssl/x509.h ../include/openssl/x509_vfy.h ssl_locl.h
 ssl_asn1.o: ../include/openssl/asn1.h ../include/openssl/asn1_mac.h
 ssl_asn1.o: ../include/openssl/bio.h ../include/openssl/blowfish.h
@@ -530,17 +550,18 @@ ssl_asn1.o: ../include/openssl/dh.h ../include/openssl/dsa.h
 ssl_asn1.o: ../include/openssl/e_os.h ../include/openssl/e_os2.h
 ssl_asn1.o: ../include/openssl/err.h ../include/openssl/evp.h
 ssl_asn1.o: ../include/openssl/idea.h ../include/openssl/lhash.h
-ssl_asn1.o: ../include/openssl/md2.h ../include/openssl/md5.h
-ssl_asn1.o: ../include/openssl/mdc2.h ../include/openssl/obj_mac.h
-ssl_asn1.o: ../include/openssl/objects.h ../include/openssl/opensslconf.h
-ssl_asn1.o: ../include/openssl/opensslv.h ../include/openssl/pem.h
-ssl_asn1.o: ../include/openssl/pem2.h ../include/openssl/pkcs7.h
-ssl_asn1.o: ../include/openssl/rc2.h ../include/openssl/rc4.h
-ssl_asn1.o: ../include/openssl/rc5.h ../include/openssl/ripemd.h
-ssl_asn1.o: ../include/openssl/rsa.h ../include/openssl/safestack.h
-ssl_asn1.o: ../include/openssl/sha.h ../include/openssl/ssl.h
-ssl_asn1.o: ../include/openssl/ssl2.h ../include/openssl/ssl23.h
-ssl_asn1.o: ../include/openssl/ssl3.h ../include/openssl/stack.h
+ssl_asn1.o: ../include/openssl/md2.h ../include/openssl/md4.h
+ssl_asn1.o: ../include/openssl/md5.h ../include/openssl/mdc2.h
+ssl_asn1.o: ../include/openssl/obj_mac.h ../include/openssl/objects.h
+ssl_asn1.o: ../include/openssl/opensslconf.h ../include/openssl/opensslv.h
+ssl_asn1.o: ../include/openssl/pem.h ../include/openssl/pem2.h
+ssl_asn1.o: ../include/openssl/pkcs7.h ../include/openssl/rc2.h
+ssl_asn1.o: ../include/openssl/rc4.h ../include/openssl/rc5.h
+ssl_asn1.o: ../include/openssl/ripemd.h ../include/openssl/rsa.h
+ssl_asn1.o: ../include/openssl/safestack.h ../include/openssl/sha.h
+ssl_asn1.o: ../include/openssl/ssl.h ../include/openssl/ssl2.h
+ssl_asn1.o: ../include/openssl/ssl23.h ../include/openssl/ssl3.h
+ssl_asn1.o: ../include/openssl/stack.h ../include/openssl/symhacks.h
 ssl_asn1.o: ../include/openssl/tls1.h ../include/openssl/x509.h
 ssl_asn1.o: ../include/openssl/x509_vfy.h ssl_locl.h
 ssl_cert.o: ../include/openssl/asn1.h ../include/openssl/bio.h
@@ -553,17 +574,18 @@ ssl_cert.o: ../include/openssl/e_os.h ../include/openssl/e_os.h
 ssl_cert.o: ../include/openssl/e_os.h ../include/openssl/e_os2.h
 ssl_cert.o: ../include/openssl/err.h ../include/openssl/evp.h
 ssl_cert.o: ../include/openssl/idea.h ../include/openssl/lhash.h
-ssl_cert.o: ../include/openssl/md2.h ../include/openssl/md5.h
-ssl_cert.o: ../include/openssl/mdc2.h ../include/openssl/obj_mac.h
-ssl_cert.o: ../include/openssl/objects.h ../include/openssl/opensslconf.h
-ssl_cert.o: ../include/openssl/opensslv.h ../include/openssl/pem.h
-ssl_cert.o: ../include/openssl/pem2.h ../include/openssl/pkcs7.h
-ssl_cert.o: ../include/openssl/rc2.h ../include/openssl/rc4.h
-ssl_cert.o: ../include/openssl/rc5.h ../include/openssl/ripemd.h
-ssl_cert.o: ../include/openssl/rsa.h ../include/openssl/safestack.h
-ssl_cert.o: ../include/openssl/sha.h ../include/openssl/ssl.h
-ssl_cert.o: ../include/openssl/ssl2.h ../include/openssl/ssl23.h
-ssl_cert.o: ../include/openssl/ssl3.h ../include/openssl/stack.h
+ssl_cert.o: ../include/openssl/md2.h ../include/openssl/md4.h
+ssl_cert.o: ../include/openssl/md5.h ../include/openssl/mdc2.h
+ssl_cert.o: ../include/openssl/obj_mac.h ../include/openssl/objects.h
+ssl_cert.o: ../include/openssl/opensslconf.h ../include/openssl/opensslv.h
+ssl_cert.o: ../include/openssl/pem.h ../include/openssl/pem2.h
+ssl_cert.o: ../include/openssl/pkcs7.h ../include/openssl/rc2.h
+ssl_cert.o: ../include/openssl/rc4.h ../include/openssl/rc5.h
+ssl_cert.o: ../include/openssl/ripemd.h ../include/openssl/rsa.h
+ssl_cert.o: ../include/openssl/safestack.h ../include/openssl/sha.h
+ssl_cert.o: ../include/openssl/ssl.h ../include/openssl/ssl2.h
+ssl_cert.o: ../include/openssl/ssl23.h ../include/openssl/ssl3.h
+ssl_cert.o: ../include/openssl/stack.h ../include/openssl/symhacks.h
 ssl_cert.o: ../include/openssl/tls1.h ../include/openssl/x509.h
 ssl_cert.o: ../include/openssl/x509_vfy.h ../include/openssl/x509v3.h
 ssl_cert.o: ssl_locl.h
@@ -576,17 +598,18 @@ ssl_ciph.o: ../include/openssl/dsa.h ../include/openssl/e_os.h
 ssl_ciph.o: ../include/openssl/e_os2.h ../include/openssl/err.h
 ssl_ciph.o: ../include/openssl/evp.h ../include/openssl/idea.h
 ssl_ciph.o: ../include/openssl/lhash.h ../include/openssl/md2.h
-ssl_ciph.o: ../include/openssl/md5.h ../include/openssl/mdc2.h
-ssl_ciph.o: ../include/openssl/obj_mac.h ../include/openssl/objects.h
-ssl_ciph.o: ../include/openssl/opensslconf.h ../include/openssl/opensslv.h
-ssl_ciph.o: ../include/openssl/pem.h ../include/openssl/pem2.h
-ssl_ciph.o: ../include/openssl/pkcs7.h ../include/openssl/rc2.h
-ssl_ciph.o: ../include/openssl/rc4.h ../include/openssl/rc5.h
-ssl_ciph.o: ../include/openssl/ripemd.h ../include/openssl/rsa.h
-ssl_ciph.o: ../include/openssl/safestack.h ../include/openssl/sha.h
-ssl_ciph.o: ../include/openssl/ssl.h ../include/openssl/ssl2.h
-ssl_ciph.o: ../include/openssl/ssl23.h ../include/openssl/ssl3.h
-ssl_ciph.o: ../include/openssl/stack.h ../include/openssl/tls1.h
+ssl_ciph.o: ../include/openssl/md4.h ../include/openssl/md5.h
+ssl_ciph.o: ../include/openssl/mdc2.h ../include/openssl/obj_mac.h
+ssl_ciph.o: ../include/openssl/objects.h ../include/openssl/opensslconf.h
+ssl_ciph.o: ../include/openssl/opensslv.h ../include/openssl/pem.h
+ssl_ciph.o: ../include/openssl/pem2.h ../include/openssl/pkcs7.h
+ssl_ciph.o: ../include/openssl/rc2.h ../include/openssl/rc4.h
+ssl_ciph.o: ../include/openssl/rc5.h ../include/openssl/ripemd.h
+ssl_ciph.o: ../include/openssl/rsa.h ../include/openssl/safestack.h
+ssl_ciph.o: ../include/openssl/sha.h ../include/openssl/ssl.h
+ssl_ciph.o: ../include/openssl/ssl2.h ../include/openssl/ssl23.h
+ssl_ciph.o: ../include/openssl/ssl3.h ../include/openssl/stack.h
+ssl_ciph.o: ../include/openssl/symhacks.h ../include/openssl/tls1.h
 ssl_ciph.o: ../include/openssl/x509.h ../include/openssl/x509_vfy.h ssl_locl.h
 ssl_err.o: ../include/openssl/asn1.h ../include/openssl/bio.h
 ssl_err.o: ../include/openssl/blowfish.h ../include/openssl/bn.h
@@ -596,17 +619,18 @@ ssl_err.o: ../include/openssl/des.h ../include/openssl/dh.h
 ssl_err.o: ../include/openssl/dsa.h ../include/openssl/e_os2.h
 ssl_err.o: ../include/openssl/err.h ../include/openssl/evp.h
 ssl_err.o: ../include/openssl/idea.h ../include/openssl/lhash.h
-ssl_err.o: ../include/openssl/md2.h ../include/openssl/md5.h
-ssl_err.o: ../include/openssl/mdc2.h ../include/openssl/obj_mac.h
-ssl_err.o: ../include/openssl/objects.h ../include/openssl/opensslconf.h
-ssl_err.o: ../include/openssl/opensslv.h ../include/openssl/pem.h
-ssl_err.o: ../include/openssl/pem2.h ../include/openssl/pkcs7.h
-ssl_err.o: ../include/openssl/rc2.h ../include/openssl/rc4.h
-ssl_err.o: ../include/openssl/rc5.h ../include/openssl/ripemd.h
-ssl_err.o: ../include/openssl/rsa.h ../include/openssl/safestack.h
-ssl_err.o: ../include/openssl/sha.h ../include/openssl/ssl.h
-ssl_err.o: ../include/openssl/ssl2.h ../include/openssl/ssl23.h
-ssl_err.o: ../include/openssl/ssl3.h ../include/openssl/stack.h
+ssl_err.o: ../include/openssl/md2.h ../include/openssl/md4.h
+ssl_err.o: ../include/openssl/md5.h ../include/openssl/mdc2.h
+ssl_err.o: ../include/openssl/obj_mac.h ../include/openssl/objects.h
+ssl_err.o: ../include/openssl/opensslconf.h ../include/openssl/opensslv.h
+ssl_err.o: ../include/openssl/pem.h ../include/openssl/pem2.h
+ssl_err.o: ../include/openssl/pkcs7.h ../include/openssl/rc2.h
+ssl_err.o: ../include/openssl/rc4.h ../include/openssl/rc5.h
+ssl_err.o: ../include/openssl/ripemd.h ../include/openssl/rsa.h
+ssl_err.o: ../include/openssl/safestack.h ../include/openssl/sha.h
+ssl_err.o: ../include/openssl/ssl.h ../include/openssl/ssl2.h
+ssl_err.o: ../include/openssl/ssl23.h ../include/openssl/ssl3.h
+ssl_err.o: ../include/openssl/stack.h ../include/openssl/symhacks.h
 ssl_err.o: ../include/openssl/tls1.h ../include/openssl/x509.h
 ssl_err.o: ../include/openssl/x509_vfy.h
 ssl_err2.o: ../include/openssl/asn1.h ../include/openssl/bio.h
@@ -617,17 +641,18 @@ ssl_err2.o: ../include/openssl/des.h ../include/openssl/dh.h
 ssl_err2.o: ../include/openssl/dsa.h ../include/openssl/e_os2.h
 ssl_err2.o: ../include/openssl/err.h ../include/openssl/evp.h
 ssl_err2.o: ../include/openssl/idea.h ../include/openssl/lhash.h
-ssl_err2.o: ../include/openssl/md2.h ../include/openssl/md5.h
-ssl_err2.o: ../include/openssl/mdc2.h ../include/openssl/obj_mac.h
-ssl_err2.o: ../include/openssl/objects.h ../include/openssl/opensslconf.h
-ssl_err2.o: ../include/openssl/opensslv.h ../include/openssl/pem.h
-ssl_err2.o: ../include/openssl/pem2.h ../include/openssl/pkcs7.h
-ssl_err2.o: ../include/openssl/rc2.h ../include/openssl/rc4.h
-ssl_err2.o: ../include/openssl/rc5.h ../include/openssl/ripemd.h
-ssl_err2.o: ../include/openssl/rsa.h ../include/openssl/safestack.h
-ssl_err2.o: ../include/openssl/sha.h ../include/openssl/ssl.h
-ssl_err2.o: ../include/openssl/ssl2.h ../include/openssl/ssl23.h
-ssl_err2.o: ../include/openssl/ssl3.h ../include/openssl/stack.h
+ssl_err2.o: ../include/openssl/md2.h ../include/openssl/md4.h
+ssl_err2.o: ../include/openssl/md5.h ../include/openssl/mdc2.h
+ssl_err2.o: ../include/openssl/obj_mac.h ../include/openssl/objects.h
+ssl_err2.o: ../include/openssl/opensslconf.h ../include/openssl/opensslv.h
+ssl_err2.o: ../include/openssl/pem.h ../include/openssl/pem2.h
+ssl_err2.o: ../include/openssl/pkcs7.h ../include/openssl/rc2.h
+ssl_err2.o: ../include/openssl/rc4.h ../include/openssl/rc5.h
+ssl_err2.o: ../include/openssl/ripemd.h ../include/openssl/rsa.h
+ssl_err2.o: ../include/openssl/safestack.h ../include/openssl/sha.h
+ssl_err2.o: ../include/openssl/ssl.h ../include/openssl/ssl2.h
+ssl_err2.o: ../include/openssl/ssl23.h ../include/openssl/ssl3.h
+ssl_err2.o: ../include/openssl/stack.h ../include/openssl/symhacks.h
 ssl_err2.o: ../include/openssl/tls1.h ../include/openssl/x509.h
 ssl_err2.o: ../include/openssl/x509_vfy.h
 ssl_lib.o: ../include/openssl/asn1.h ../include/openssl/bio.h
@@ -640,17 +665,18 @@ ssl_lib.o: ../include/openssl/e_os.h ../include/openssl/e_os.h
 ssl_lib.o: ../include/openssl/e_os2.h ../include/openssl/err.h
 ssl_lib.o: ../include/openssl/evp.h ../include/openssl/idea.h
 ssl_lib.o: ../include/openssl/lhash.h ../include/openssl/md2.h
-ssl_lib.o: ../include/openssl/md5.h ../include/openssl/mdc2.h
-ssl_lib.o: ../include/openssl/obj_mac.h ../include/openssl/objects.h
-ssl_lib.o: ../include/openssl/opensslconf.h ../include/openssl/opensslv.h
-ssl_lib.o: ../include/openssl/pem.h ../include/openssl/pem2.h
-ssl_lib.o: ../include/openssl/pkcs7.h ../include/openssl/rc2.h
-ssl_lib.o: ../include/openssl/rc4.h ../include/openssl/rc5.h
-ssl_lib.o: ../include/openssl/ripemd.h ../include/openssl/rsa.h
-ssl_lib.o: ../include/openssl/safestack.h ../include/openssl/sha.h
-ssl_lib.o: ../include/openssl/ssl.h ../include/openssl/ssl2.h
-ssl_lib.o: ../include/openssl/ssl23.h ../include/openssl/ssl3.h
-ssl_lib.o: ../include/openssl/stack.h ../include/openssl/tls1.h
+ssl_lib.o: ../include/openssl/md4.h ../include/openssl/md5.h
+ssl_lib.o: ../include/openssl/mdc2.h ../include/openssl/obj_mac.h
+ssl_lib.o: ../include/openssl/objects.h ../include/openssl/opensslconf.h
+ssl_lib.o: ../include/openssl/opensslv.h ../include/openssl/pem.h
+ssl_lib.o: ../include/openssl/pem2.h ../include/openssl/pkcs7.h
+ssl_lib.o: ../include/openssl/rc2.h ../include/openssl/rc4.h
+ssl_lib.o: ../include/openssl/rc5.h ../include/openssl/ripemd.h
+ssl_lib.o: ../include/openssl/rsa.h ../include/openssl/safestack.h
+ssl_lib.o: ../include/openssl/sha.h ../include/openssl/ssl.h
+ssl_lib.o: ../include/openssl/ssl2.h ../include/openssl/ssl23.h
+ssl_lib.o: ../include/openssl/ssl3.h ../include/openssl/stack.h
+ssl_lib.o: ../include/openssl/symhacks.h ../include/openssl/tls1.h
 ssl_lib.o: ../include/openssl/x509.h ../include/openssl/x509_vfy.h
 ssl_lib.o: ../include/openssl/x509v3.h ssl_locl.h
 ssl_rsa.o: ../include/openssl/asn1.h ../include/openssl/bio.h
@@ -662,17 +688,18 @@ ssl_rsa.o: ../include/openssl/dsa.h ../include/openssl/e_os.h
 ssl_rsa.o: ../include/openssl/e_os2.h ../include/openssl/err.h
 ssl_rsa.o: ../include/openssl/evp.h ../include/openssl/idea.h
 ssl_rsa.o: ../include/openssl/lhash.h ../include/openssl/md2.h
-ssl_rsa.o: ../include/openssl/md5.h ../include/openssl/mdc2.h
-ssl_rsa.o: ../include/openssl/obj_mac.h ../include/openssl/objects.h
-ssl_rsa.o: ../include/openssl/opensslconf.h ../include/openssl/opensslv.h
-ssl_rsa.o: ../include/openssl/pem.h ../include/openssl/pem2.h
-ssl_rsa.o: ../include/openssl/pkcs7.h ../include/openssl/rc2.h
-ssl_rsa.o: ../include/openssl/rc4.h ../include/openssl/rc5.h
-ssl_rsa.o: ../include/openssl/ripemd.h ../include/openssl/rsa.h
-ssl_rsa.o: ../include/openssl/safestack.h ../include/openssl/sha.h
-ssl_rsa.o: ../include/openssl/ssl.h ../include/openssl/ssl2.h
-ssl_rsa.o: ../include/openssl/ssl23.h ../include/openssl/ssl3.h
-ssl_rsa.o: ../include/openssl/stack.h ../include/openssl/tls1.h
+ssl_rsa.o: ../include/openssl/md4.h ../include/openssl/md5.h
+ssl_rsa.o: ../include/openssl/mdc2.h ../include/openssl/obj_mac.h
+ssl_rsa.o: ../include/openssl/objects.h ../include/openssl/opensslconf.h
+ssl_rsa.o: ../include/openssl/opensslv.h ../include/openssl/pem.h
+ssl_rsa.o: ../include/openssl/pem2.h ../include/openssl/pkcs7.h
+ssl_rsa.o: ../include/openssl/rc2.h ../include/openssl/rc4.h
+ssl_rsa.o: ../include/openssl/rc5.h ../include/openssl/ripemd.h
+ssl_rsa.o: ../include/openssl/rsa.h ../include/openssl/safestack.h
+ssl_rsa.o: ../include/openssl/sha.h ../include/openssl/ssl.h
+ssl_rsa.o: ../include/openssl/ssl2.h ../include/openssl/ssl23.h
+ssl_rsa.o: ../include/openssl/ssl3.h ../include/openssl/stack.h
+ssl_rsa.o: ../include/openssl/symhacks.h ../include/openssl/tls1.h
 ssl_rsa.o: ../include/openssl/x509.h ../include/openssl/x509_vfy.h ssl_locl.h
 ssl_sess.o: ../include/openssl/asn1.h ../include/openssl/bio.h
 ssl_sess.o: ../include/openssl/blowfish.h ../include/openssl/bn.h
@@ -683,17 +710,18 @@ ssl_sess.o: ../include/openssl/dsa.h ../include/openssl/e_os.h
 ssl_sess.o: ../include/openssl/e_os2.h ../include/openssl/err.h
 ssl_sess.o: ../include/openssl/evp.h ../include/openssl/idea.h
 ssl_sess.o: ../include/openssl/lhash.h ../include/openssl/md2.h
-ssl_sess.o: ../include/openssl/md5.h ../include/openssl/mdc2.h
-ssl_sess.o: ../include/openssl/obj_mac.h ../include/openssl/objects.h
-ssl_sess.o: ../include/openssl/opensslconf.h ../include/openssl/opensslv.h
-ssl_sess.o: ../include/openssl/pem.h ../include/openssl/pem2.h
-ssl_sess.o: ../include/openssl/pkcs7.h ../include/openssl/rand.h
-ssl_sess.o: ../include/openssl/rc2.h ../include/openssl/rc4.h
-ssl_sess.o: ../include/openssl/rc5.h ../include/openssl/ripemd.h
-ssl_sess.o: ../include/openssl/rsa.h ../include/openssl/safestack.h
-ssl_sess.o: ../include/openssl/sha.h ../include/openssl/ssl.h
-ssl_sess.o: ../include/openssl/ssl2.h ../include/openssl/ssl23.h
-ssl_sess.o: ../include/openssl/ssl3.h ../include/openssl/stack.h
+ssl_sess.o: ../include/openssl/md4.h ../include/openssl/md5.h
+ssl_sess.o: ../include/openssl/mdc2.h ../include/openssl/obj_mac.h
+ssl_sess.o: ../include/openssl/objects.h ../include/openssl/opensslconf.h
+ssl_sess.o: ../include/openssl/opensslv.h ../include/openssl/pem.h
+ssl_sess.o: ../include/openssl/pem2.h ../include/openssl/pkcs7.h
+ssl_sess.o: ../include/openssl/rand.h ../include/openssl/rc2.h
+ssl_sess.o: ../include/openssl/rc4.h ../include/openssl/rc5.h
+ssl_sess.o: ../include/openssl/ripemd.h ../include/openssl/rsa.h
+ssl_sess.o: ../include/openssl/safestack.h ../include/openssl/sha.h
+ssl_sess.o: ../include/openssl/ssl.h ../include/openssl/ssl2.h
+ssl_sess.o: ../include/openssl/ssl23.h ../include/openssl/ssl3.h
+ssl_sess.o: ../include/openssl/stack.h ../include/openssl/symhacks.h
 ssl_sess.o: ../include/openssl/tls1.h ../include/openssl/x509.h
 ssl_sess.o: ../include/openssl/x509_vfy.h ssl_locl.h
 ssl_stat.o: ../include/openssl/asn1.h ../include/openssl/bio.h
@@ -705,17 +733,18 @@ ssl_stat.o: ../include/openssl/dsa.h ../include/openssl/e_os.h
 ssl_stat.o: ../include/openssl/e_os2.h ../include/openssl/err.h
 ssl_stat.o: ../include/openssl/evp.h ../include/openssl/idea.h
 ssl_stat.o: ../include/openssl/lhash.h ../include/openssl/md2.h
-ssl_stat.o: ../include/openssl/md5.h ../include/openssl/mdc2.h
-ssl_stat.o: ../include/openssl/obj_mac.h ../include/openssl/objects.h
-ssl_stat.o: ../include/openssl/opensslconf.h ../include/openssl/opensslv.h
-ssl_stat.o: ../include/openssl/pem.h ../include/openssl/pem2.h
-ssl_stat.o: ../include/openssl/pkcs7.h ../include/openssl/rc2.h
-ssl_stat.o: ../include/openssl/rc4.h ../include/openssl/rc5.h
-ssl_stat.o: ../include/openssl/ripemd.h ../include/openssl/rsa.h
-ssl_stat.o: ../include/openssl/safestack.h ../include/openssl/sha.h
-ssl_stat.o: ../include/openssl/ssl.h ../include/openssl/ssl2.h
-ssl_stat.o: ../include/openssl/ssl23.h ../include/openssl/ssl3.h
-ssl_stat.o: ../include/openssl/stack.h ../include/openssl/tls1.h
+ssl_stat.o: ../include/openssl/md4.h ../include/openssl/md5.h
+ssl_stat.o: ../include/openssl/mdc2.h ../include/openssl/obj_mac.h
+ssl_stat.o: ../include/openssl/objects.h ../include/openssl/opensslconf.h
+ssl_stat.o: ../include/openssl/opensslv.h ../include/openssl/pem.h
+ssl_stat.o: ../include/openssl/pem2.h ../include/openssl/pkcs7.h
+ssl_stat.o: ../include/openssl/rc2.h ../include/openssl/rc4.h
+ssl_stat.o: ../include/openssl/rc5.h ../include/openssl/ripemd.h
+ssl_stat.o: ../include/openssl/rsa.h ../include/openssl/safestack.h
+ssl_stat.o: ../include/openssl/sha.h ../include/openssl/ssl.h
+ssl_stat.o: ../include/openssl/ssl2.h ../include/openssl/ssl23.h
+ssl_stat.o: ../include/openssl/ssl3.h ../include/openssl/stack.h
+ssl_stat.o: ../include/openssl/symhacks.h ../include/openssl/tls1.h
 ssl_stat.o: ../include/openssl/x509.h ../include/openssl/x509_vfy.h ssl_locl.h
 ssl_txt.o: ../include/openssl/asn1.h ../include/openssl/bio.h
 ssl_txt.o: ../include/openssl/blowfish.h ../include/openssl/bn.h
@@ -726,17 +755,18 @@ ssl_txt.o: ../include/openssl/dsa.h ../include/openssl/e_os.h
 ssl_txt.o: ../include/openssl/e_os2.h ../include/openssl/err.h
 ssl_txt.o: ../include/openssl/evp.h ../include/openssl/idea.h
 ssl_txt.o: ../include/openssl/lhash.h ../include/openssl/md2.h
-ssl_txt.o: ../include/openssl/md5.h ../include/openssl/mdc2.h
-ssl_txt.o: ../include/openssl/obj_mac.h ../include/openssl/objects.h
-ssl_txt.o: ../include/openssl/opensslconf.h ../include/openssl/opensslv.h
-ssl_txt.o: ../include/openssl/pem.h ../include/openssl/pem2.h
-ssl_txt.o: ../include/openssl/pkcs7.h ../include/openssl/rc2.h
-ssl_txt.o: ../include/openssl/rc4.h ../include/openssl/rc5.h
-ssl_txt.o: ../include/openssl/ripemd.h ../include/openssl/rsa.h
-ssl_txt.o: ../include/openssl/safestack.h ../include/openssl/sha.h
-ssl_txt.o: ../include/openssl/ssl.h ../include/openssl/ssl2.h
-ssl_txt.o: ../include/openssl/ssl23.h ../include/openssl/ssl3.h
-ssl_txt.o: ../include/openssl/stack.h ../include/openssl/tls1.h
+ssl_txt.o: ../include/openssl/md4.h ../include/openssl/md5.h
+ssl_txt.o: ../include/openssl/mdc2.h ../include/openssl/obj_mac.h
+ssl_txt.o: ../include/openssl/objects.h ../include/openssl/opensslconf.h
+ssl_txt.o: ../include/openssl/opensslv.h ../include/openssl/pem.h
+ssl_txt.o: ../include/openssl/pem2.h ../include/openssl/pkcs7.h
+ssl_txt.o: ../include/openssl/rc2.h ../include/openssl/rc4.h
+ssl_txt.o: ../include/openssl/rc5.h ../include/openssl/ripemd.h
+ssl_txt.o: ../include/openssl/rsa.h ../include/openssl/safestack.h
+ssl_txt.o: ../include/openssl/sha.h ../include/openssl/ssl.h
+ssl_txt.o: ../include/openssl/ssl2.h ../include/openssl/ssl23.h
+ssl_txt.o: ../include/openssl/ssl3.h ../include/openssl/stack.h
+ssl_txt.o: ../include/openssl/symhacks.h ../include/openssl/tls1.h
 ssl_txt.o: ../include/openssl/x509.h ../include/openssl/x509_vfy.h ssl_locl.h
 t1_clnt.o: ../include/openssl/asn1.h ../include/openssl/bio.h
 t1_clnt.o: ../include/openssl/blowfish.h ../include/openssl/bn.h
@@ -747,17 +777,18 @@ t1_clnt.o: ../include/openssl/dsa.h ../include/openssl/e_os.h
 t1_clnt.o: ../include/openssl/e_os2.h ../include/openssl/err.h
 t1_clnt.o: ../include/openssl/evp.h ../include/openssl/idea.h
 t1_clnt.o: ../include/openssl/lhash.h ../include/openssl/md2.h
-t1_clnt.o: ../include/openssl/md5.h ../include/openssl/mdc2.h
-t1_clnt.o: ../include/openssl/obj_mac.h ../include/openssl/objects.h
-t1_clnt.o: ../include/openssl/opensslconf.h ../include/openssl/opensslv.h
-t1_clnt.o: ../include/openssl/pem.h ../include/openssl/pem2.h
-t1_clnt.o: ../include/openssl/pkcs7.h ../include/openssl/rand.h
-t1_clnt.o: ../include/openssl/rc2.h ../include/openssl/rc4.h
-t1_clnt.o: ../include/openssl/rc5.h ../include/openssl/ripemd.h
-t1_clnt.o: ../include/openssl/rsa.h ../include/openssl/safestack.h
-t1_clnt.o: ../include/openssl/sha.h ../include/openssl/ssl.h
-t1_clnt.o: ../include/openssl/ssl2.h ../include/openssl/ssl23.h
-t1_clnt.o: ../include/openssl/ssl3.h ../include/openssl/stack.h
+t1_clnt.o: ../include/openssl/md4.h ../include/openssl/md5.h
+t1_clnt.o: ../include/openssl/mdc2.h ../include/openssl/obj_mac.h
+t1_clnt.o: ../include/openssl/objects.h ../include/openssl/opensslconf.h
+t1_clnt.o: ../include/openssl/opensslv.h ../include/openssl/pem.h
+t1_clnt.o: ../include/openssl/pem2.h ../include/openssl/pkcs7.h
+t1_clnt.o: ../include/openssl/rand.h ../include/openssl/rc2.h
+t1_clnt.o: ../include/openssl/rc4.h ../include/openssl/rc5.h
+t1_clnt.o: ../include/openssl/ripemd.h ../include/openssl/rsa.h
+t1_clnt.o: ../include/openssl/safestack.h ../include/openssl/sha.h
+t1_clnt.o: ../include/openssl/ssl.h ../include/openssl/ssl2.h
+t1_clnt.o: ../include/openssl/ssl23.h ../include/openssl/ssl3.h
+t1_clnt.o: ../include/openssl/stack.h ../include/openssl/symhacks.h
 t1_clnt.o: ../include/openssl/tls1.h ../include/openssl/x509.h
 t1_clnt.o: ../include/openssl/x509_vfy.h ssl_locl.h
 t1_enc.o: ../include/openssl/asn1.h ../include/openssl/bio.h
@@ -769,17 +800,18 @@ t1_enc.o: ../include/openssl/dsa.h ../include/openssl/e_os.h
 t1_enc.o: ../include/openssl/e_os2.h ../include/openssl/err.h
 t1_enc.o: ../include/openssl/evp.h ../include/openssl/hmac.h
 t1_enc.o: ../include/openssl/idea.h ../include/openssl/lhash.h
-t1_enc.o: ../include/openssl/md2.h ../include/openssl/md5.h
-t1_enc.o: ../include/openssl/mdc2.h ../include/openssl/obj_mac.h
-t1_enc.o: ../include/openssl/objects.h ../include/openssl/opensslconf.h
-t1_enc.o: ../include/openssl/opensslv.h ../include/openssl/pem.h
-t1_enc.o: ../include/openssl/pem2.h ../include/openssl/pkcs7.h
-t1_enc.o: ../include/openssl/rc2.h ../include/openssl/rc4.h
-t1_enc.o: ../include/openssl/rc5.h ../include/openssl/ripemd.h
-t1_enc.o: ../include/openssl/rsa.h ../include/openssl/safestack.h
-t1_enc.o: ../include/openssl/sha.h ../include/openssl/ssl.h
-t1_enc.o: ../include/openssl/ssl2.h ../include/openssl/ssl23.h
-t1_enc.o: ../include/openssl/ssl3.h ../include/openssl/stack.h
+t1_enc.o: ../include/openssl/md2.h ../include/openssl/md4.h
+t1_enc.o: ../include/openssl/md5.h ../include/openssl/mdc2.h
+t1_enc.o: ../include/openssl/obj_mac.h ../include/openssl/objects.h
+t1_enc.o: ../include/openssl/opensslconf.h ../include/openssl/opensslv.h
+t1_enc.o: ../include/openssl/pem.h ../include/openssl/pem2.h
+t1_enc.o: ../include/openssl/pkcs7.h ../include/openssl/rc2.h
+t1_enc.o: ../include/openssl/rc4.h ../include/openssl/rc5.h
+t1_enc.o: ../include/openssl/ripemd.h ../include/openssl/rsa.h
+t1_enc.o: ../include/openssl/safestack.h ../include/openssl/sha.h
+t1_enc.o: ../include/openssl/ssl.h ../include/openssl/ssl2.h
+t1_enc.o: ../include/openssl/ssl23.h ../include/openssl/ssl3.h
+t1_enc.o: ../include/openssl/stack.h ../include/openssl/symhacks.h
 t1_enc.o: ../include/openssl/tls1.h ../include/openssl/x509.h
 t1_enc.o: ../include/openssl/x509_vfy.h ssl_locl.h
 t1_lib.o: ../include/openssl/asn1.h ../include/openssl/bio.h
@@ -791,17 +823,18 @@ t1_lib.o: ../include/openssl/dsa.h ../include/openssl/e_os.h
 t1_lib.o: ../include/openssl/e_os2.h ../include/openssl/err.h
 t1_lib.o: ../include/openssl/evp.h ../include/openssl/idea.h
 t1_lib.o: ../include/openssl/lhash.h ../include/openssl/md2.h
-t1_lib.o: ../include/openssl/md5.h ../include/openssl/mdc2.h
-t1_lib.o: ../include/openssl/obj_mac.h ../include/openssl/objects.h
-t1_lib.o: ../include/openssl/opensslconf.h ../include/openssl/opensslv.h
-t1_lib.o: ../include/openssl/pem.h ../include/openssl/pem2.h
-t1_lib.o: ../include/openssl/pkcs7.h ../include/openssl/rc2.h
-t1_lib.o: ../include/openssl/rc4.h ../include/openssl/rc5.h
-t1_lib.o: ../include/openssl/ripemd.h ../include/openssl/rsa.h
-t1_lib.o: ../include/openssl/safestack.h ../include/openssl/sha.h
-t1_lib.o: ../include/openssl/ssl.h ../include/openssl/ssl2.h
-t1_lib.o: ../include/openssl/ssl23.h ../include/openssl/ssl3.h
-t1_lib.o: ../include/openssl/stack.h ../include/openssl/tls1.h
+t1_lib.o: ../include/openssl/md4.h ../include/openssl/md5.h
+t1_lib.o: ../include/openssl/mdc2.h ../include/openssl/obj_mac.h
+t1_lib.o: ../include/openssl/objects.h ../include/openssl/opensslconf.h
+t1_lib.o: ../include/openssl/opensslv.h ../include/openssl/pem.h
+t1_lib.o: ../include/openssl/pem2.h ../include/openssl/pkcs7.h
+t1_lib.o: ../include/openssl/rc2.h ../include/openssl/rc4.h
+t1_lib.o: ../include/openssl/rc5.h ../include/openssl/ripemd.h
+t1_lib.o: ../include/openssl/rsa.h ../include/openssl/safestack.h
+t1_lib.o: ../include/openssl/sha.h ../include/openssl/ssl.h
+t1_lib.o: ../include/openssl/ssl2.h ../include/openssl/ssl23.h
+t1_lib.o: ../include/openssl/ssl3.h ../include/openssl/stack.h
+t1_lib.o: ../include/openssl/symhacks.h ../include/openssl/tls1.h
 t1_lib.o: ../include/openssl/x509.h ../include/openssl/x509_vfy.h ssl_locl.h
 t1_meth.o: ../include/openssl/asn1.h ../include/openssl/bio.h
 t1_meth.o: ../include/openssl/blowfish.h ../include/openssl/bn.h
@@ -812,17 +845,18 @@ t1_meth.o: ../include/openssl/dsa.h ../include/openssl/e_os.h
 t1_meth.o: ../include/openssl/e_os2.h ../include/openssl/err.h
 t1_meth.o: ../include/openssl/evp.h ../include/openssl/idea.h
 t1_meth.o: ../include/openssl/lhash.h ../include/openssl/md2.h
-t1_meth.o: ../include/openssl/md5.h ../include/openssl/mdc2.h
-t1_meth.o: ../include/openssl/obj_mac.h ../include/openssl/objects.h
-t1_meth.o: ../include/openssl/opensslconf.h ../include/openssl/opensslv.h
-t1_meth.o: ../include/openssl/pem.h ../include/openssl/pem2.h
-t1_meth.o: ../include/openssl/pkcs7.h ../include/openssl/rc2.h
-t1_meth.o: ../include/openssl/rc4.h ../include/openssl/rc5.h
-t1_meth.o: ../include/openssl/ripemd.h ../include/openssl/rsa.h
-t1_meth.o: ../include/openssl/safestack.h ../include/openssl/sha.h
-t1_meth.o: ../include/openssl/ssl.h ../include/openssl/ssl2.h
-t1_meth.o: ../include/openssl/ssl23.h ../include/openssl/ssl3.h
-t1_meth.o: ../include/openssl/stack.h ../include/openssl/tls1.h
+t1_meth.o: ../include/openssl/md4.h ../include/openssl/md5.h
+t1_meth.o: ../include/openssl/mdc2.h ../include/openssl/obj_mac.h
+t1_meth.o: ../include/openssl/objects.h ../include/openssl/opensslconf.h
+t1_meth.o: ../include/openssl/opensslv.h ../include/openssl/pem.h
+t1_meth.o: ../include/openssl/pem2.h ../include/openssl/pkcs7.h
+t1_meth.o: ../include/openssl/rc2.h ../include/openssl/rc4.h
+t1_meth.o: ../include/openssl/rc5.h ../include/openssl/ripemd.h
+t1_meth.o: ../include/openssl/rsa.h ../include/openssl/safestack.h
+t1_meth.o: ../include/openssl/sha.h ../include/openssl/ssl.h
+t1_meth.o: ../include/openssl/ssl2.h ../include/openssl/ssl23.h
+t1_meth.o: ../include/openssl/ssl3.h ../include/openssl/stack.h
+t1_meth.o: ../include/openssl/symhacks.h ../include/openssl/tls1.h
 t1_meth.o: ../include/openssl/x509.h ../include/openssl/x509_vfy.h ssl_locl.h
 t1_srvr.o: ../include/openssl/asn1.h ../include/openssl/bio.h
 t1_srvr.o: ../include/openssl/blowfish.h ../include/openssl/bn.h
@@ -833,16 +867,17 @@ t1_srvr.o: ../include/openssl/dsa.h ../include/openssl/e_os.h
 t1_srvr.o: ../include/openssl/e_os2.h ../include/openssl/err.h
 t1_srvr.o: ../include/openssl/evp.h ../include/openssl/idea.h
 t1_srvr.o: ../include/openssl/lhash.h ../include/openssl/md2.h
-t1_srvr.o: ../include/openssl/md5.h ../include/openssl/mdc2.h
-t1_srvr.o: ../include/openssl/obj_mac.h ../include/openssl/objects.h
-t1_srvr.o: ../include/openssl/opensslconf.h ../include/openssl/opensslv.h
-t1_srvr.o: ../include/openssl/pem.h ../include/openssl/pem2.h
-t1_srvr.o: ../include/openssl/pkcs7.h ../include/openssl/rand.h
-t1_srvr.o: ../include/openssl/rc2.h ../include/openssl/rc4.h
-t1_srvr.o: ../include/openssl/rc5.h ../include/openssl/ripemd.h
-t1_srvr.o: ../include/openssl/rsa.h ../include/openssl/safestack.h
-t1_srvr.o: ../include/openssl/sha.h ../include/openssl/ssl.h
-t1_srvr.o: ../include/openssl/ssl2.h ../include/openssl/ssl23.h
-t1_srvr.o: ../include/openssl/ssl3.h ../include/openssl/stack.h
+t1_srvr.o: ../include/openssl/md4.h ../include/openssl/md5.h
+t1_srvr.o: ../include/openssl/mdc2.h ../include/openssl/obj_mac.h
+t1_srvr.o: ../include/openssl/objects.h ../include/openssl/opensslconf.h
+t1_srvr.o: ../include/openssl/opensslv.h ../include/openssl/pem.h
+t1_srvr.o: ../include/openssl/pem2.h ../include/openssl/pkcs7.h
+t1_srvr.o: ../include/openssl/rand.h ../include/openssl/rc2.h
+t1_srvr.o: ../include/openssl/rc4.h ../include/openssl/rc5.h
+t1_srvr.o: ../include/openssl/ripemd.h ../include/openssl/rsa.h
+t1_srvr.o: ../include/openssl/safestack.h ../include/openssl/sha.h
+t1_srvr.o: ../include/openssl/ssl.h ../include/openssl/ssl2.h
+t1_srvr.o: ../include/openssl/ssl23.h ../include/openssl/ssl3.h
+t1_srvr.o: ../include/openssl/stack.h ../include/openssl/symhacks.h
 t1_srvr.o: ../include/openssl/tls1.h ../include/openssl/x509.h
 t1_srvr.o: ../include/openssl/x509_vfy.h ssl_locl.h
index 783b1dce3e78595b79552ed2c3753af200436d58..62040f9f1d01ba340a3d184113539eb2dc396bf1 100644 (file)
@@ -142,7 +142,12 @@ int ssl3_connect(SSL *s)
                        if (cb != NULL) cb(s,SSL_CB_HANDSHAKE_START,1);
 
                        if ((s->version & 0xff00 ) != 0x0300)
-                               abort();
+                               {
+                               SSLerr(SSL_F_SSL3_CONNECT, SSL_R_INTERNAL_ERROR);
+                               ret = -1;
+                               goto end;
+                               }
+                               
                        /* s->version=SSL3_VERSION; */
                        s->type=SSL_ST_CONNECT;
 
index c1895dda88ae04821714669f33d691530fb58519..bb8cfb31e55a149b5a4c618641bc7cb47df336d7 100644 (file)
@@ -153,7 +153,10 @@ int ssl3_accept(SSL *s)
                        if (cb != NULL) cb(s,SSL_CB_HANDSHAKE_START,1);
 
                        if ((s->version>>8) != 3)
-                               abort();
+                               {
+                               SSLerr(SSL_F_SSL3_ACCEPT, SSL_R_INTERNAL_ERROR);
+                               return -1;
+                               }
                        s->type=SSL_ST_ACCEPT;
 
                        if (s->init_buf == NULL)
index 1c55cf02abee333124e08d464d7a2e6a4b9942c3..f418b9921bfe8ee3c287f8e36cd36679c0ef2b96 100644 (file)
--- a/ssl/ssl.h
+++ b/ssl/ssl.h
@@ -553,7 +553,7 @@ struct ssl_st
 #ifndef NO_BIO
        BIO *rbio; /* used by SSL_read */
        BIO *wbio; /* used by SSL_write */
-       BIO *bbio; /* used during session-id reuse to concatinate
+       BIO *bbio; /* used during session-id reuse to concatenate
                    * messages */
 #else
        char *rbio; /* used by SSL_read */
index ee840f09c593e9a01cdf154bf60a8e49d35afb26..1483fad19a5214930cd58f57d05c1fe6817bc0f4 100644 (file)
@@ -58,6 +58,8 @@
  * [including the GNU Public Licence.]
  */
 
+
+#include <assert.h>
 #include <stdio.h>
 #include <openssl/objects.h>
 #include <openssl/lhash.h>
@@ -1844,19 +1846,16 @@ int ssl_init_wbio_buffer(SSL *s,int push)
 
 void ssl_free_wbio_buffer(SSL *s)
        {
-       BIO *under;
-
        if (s->bbio == NULL) return;
 
        if (s->bbio == s->wbio)
                {
                /* remove buffering */
-               under=BIO_pop(s->wbio);
-               if (under != NULL)
-                       s->wbio=under;
-               else
-                       abort(); /* ok */
-               }
+               s->wbio=BIO_pop(s->wbio);
+#ifdef REF_CHECK /* not the usual REF_CHECK, but this avoids adding one more preprocessor symbol */
+               assert(s->wbio != NULL);
+#endif 
+       }
        BIO_free(s->bbio);
        s->bbio=NULL;
        }
index 929076cf058edfe7c75b273c7fc4ee65d27a3ef4..37f4f081f88829eb2e1de1e5ee85c7c467bf52bb 100644 (file)
@@ -38,6 +38,7 @@ SHA1TEST=     sha1test
 MDC2TEST=      mdc2test
 RMDTEST=       rmdtest
 MD2TEST=       md2test
+MD4TEST=       md4test
 MD5TEST=       md5test
 HMACTEST=      hmactest
 RC2TEST=       rc2test
@@ -54,7 +55,7 @@ SSLTEST=      ssltest
 RSATEST=       rsa_test
 ENGINETEST=    enginetest
 
-EXE=   $(BNTEST) $(IDEATEST) $(MD2TEST)  $(MD5TEST) $(HMACTEST) \
+EXE=   $(BNTEST) $(IDEATEST) $(MD2TEST)  $(MD4TEST) $(MD5TEST) $(HMACTEST) \
        $(RC2TEST) $(RC4TEST) $(RC5TEST) \
        $(DESTEST) $(SHATEST) $(SHA1TEST) $(MDC2TEST) $(RMDTEST) \
        $(RANDTEST) $(DHTEST) $(ENGINETEST) \
@@ -62,12 +63,14 @@ EXE=        $(BNTEST) $(IDEATEST) $(MD2TEST)  $(MD5TEST) $(HMACTEST) \
 
 # $(METHTEST)
 
-OBJ=   $(BNTEST).o $(IDEATEST).o $(MD2TEST).o  $(MD5TEST).o $(HMACTEST).o \
+OBJ=   $(BNTEST).o $(IDEATEST).o $(MD2TEST).o $(MD4TEST).o $(MD5TEST).o \
+       $(HMACTEST).o \
        $(RC2TEST).o $(RC4TEST).o $(RC5TEST).o \
        $(DESTEST).o $(SHATEST).o $(SHA1TEST).o $(MDC2TEST).o $(RMDTEST).o \
        $(RANDTEST).o $(DHTEST).o $(ENGINETEST).o $(CASTTEST).o \
        $(BFTEST).o  $(SSLTEST).o  $(DSATEST).o  $(EXPTEST).o $(RSATEST).o
-SRC=   $(BNTEST).c $(IDEATEST).c $(MD2TEST).c  $(MD5TEST).c  $(HMACTEST).c \
+SRC=   $(BNTEST).c $(IDEATEST).c $(MD2TEST).c  $(MD4TEST).c $(MD5TEST).c \
+       $(HMACTEST).c \
        $(RC2TEST).c $(RC4TEST).c $(RC5TEST).c \
        $(DESTEST).c $(SHATEST).c $(SHA1TEST).c $(MDC2TEST).c $(RMDTEST).c \
        $(RANDTEST).c $(DHTEST).c $(ENGINETEST).c $(CASTTEST).c \
@@ -99,7 +102,8 @@ tags:
        ctags $(SRC)
 
 tests: exe apps \
-       test_des test_idea test_sha test_md5 test_hmac test_md2 test_mdc2 \
+       test_des test_idea test_sha test_md4 test_md5 test_hmac \
+       test_md2 test_mdc2 \
        test_rmd test_rc2 test_rc4 test_rc5 test_bf test_cast \
        test_rand test_bn test_enc test_x509 test_rsa test_crl test_sid \
        test_gen test_req test_pkcs7 test_verify test_dh test_dsa \
@@ -124,6 +128,9 @@ test_mdc2:
 test_md5:
        ./$(MD5TEST)
 
+test_md4:
+       ./$(MD4TEST)
+
 test_hmac:
        ./$(HMACTEST)
 
@@ -273,6 +280,9 @@ $(RMDTEST): $(RMDTEST).o $(DLIBCRYPTO)
 $(MDC2TEST): $(MDC2TEST).o $(DLIBCRYPTO)
        $(CC) -o $(MDC2TEST) $(CFLAGS) $(MDC2TEST).o $(PEX_LIBS) $(LIBCRYPTO) $(EX_LIBS)
 
+$(MD4TEST): $(MD4TEST).o $(DLIBCRYPTO)
+       $(CC) -o $(MD4TEST) $(CFLAGS) $(MD4TEST).o $(PEX_LIBS) $(LIBCRYPTO) $(EX_LIBS)
+
 $(MD5TEST): $(MD5TEST).o $(DLIBCRYPTO)
        $(CC) -o $(MD5TEST) $(CFLAGS) $(MD5TEST).o $(PEX_LIBS) $(LIBCRYPTO) $(EX_LIBS)
 
@@ -326,15 +336,16 @@ bntest.o: ../include/openssl/dh.h ../include/openssl/dsa.h
 bntest.o: ../include/openssl/e_os.h ../include/openssl/e_os2.h
 bntest.o: ../include/openssl/err.h ../include/openssl/evp.h
 bntest.o: ../include/openssl/idea.h ../include/openssl/lhash.h
-bntest.o: ../include/openssl/md2.h ../include/openssl/md5.h
-bntest.o: ../include/openssl/mdc2.h ../include/openssl/obj_mac.h
-bntest.o: ../include/openssl/objects.h ../include/openssl/opensslconf.h
-bntest.o: ../include/openssl/opensslv.h ../include/openssl/pkcs7.h
-bntest.o: ../include/openssl/rand.h ../include/openssl/rc2.h
-bntest.o: ../include/openssl/rc4.h ../include/openssl/rc5.h
-bntest.o: ../include/openssl/ripemd.h ../include/openssl/rsa.h
-bntest.o: ../include/openssl/safestack.h ../include/openssl/sha.h
-bntest.o: ../include/openssl/stack.h ../include/openssl/x509.h
+bntest.o: ../include/openssl/md2.h ../include/openssl/md4.h
+bntest.o: ../include/openssl/md5.h ../include/openssl/mdc2.h
+bntest.o: ../include/openssl/obj_mac.h ../include/openssl/objects.h
+bntest.o: ../include/openssl/opensslconf.h ../include/openssl/opensslv.h
+bntest.o: ../include/openssl/pkcs7.h ../include/openssl/rand.h
+bntest.o: ../include/openssl/rc2.h ../include/openssl/rc4.h
+bntest.o: ../include/openssl/rc5.h ../include/openssl/ripemd.h
+bntest.o: ../include/openssl/rsa.h ../include/openssl/safestack.h
+bntest.o: ../include/openssl/sha.h ../include/openssl/stack.h
+bntest.o: ../include/openssl/symhacks.h ../include/openssl/x509.h
 bntest.o: ../include/openssl/x509_vfy.h
 casttest.o: ../include/openssl/cast.h
 destest.o: ../include/openssl/des.h ../include/openssl/e_os2.h
@@ -343,13 +354,14 @@ dhtest.o: ../include/openssl/bio.h ../include/openssl/bn.h
 dhtest.o: ../include/openssl/crypto.h ../include/openssl/dh.h
 dhtest.o: ../include/openssl/opensslconf.h ../include/openssl/opensslv.h
 dhtest.o: ../include/openssl/rand.h ../include/openssl/safestack.h
-dhtest.o: ../include/openssl/stack.h
+dhtest.o: ../include/openssl/stack.h ../include/openssl/symhacks.h
 dsatest.o: ../include/openssl/bio.h ../include/openssl/bn.h
 dsatest.o: ../include/openssl/crypto.h ../include/openssl/dh.h
 dsatest.o: ../include/openssl/dsa.h ../include/openssl/err.h
 dsatest.o: ../include/openssl/lhash.h ../include/openssl/opensslconf.h
 dsatest.o: ../include/openssl/opensslv.h ../include/openssl/rand.h
 dsatest.o: ../include/openssl/safestack.h ../include/openssl/stack.h
+dsatest.o: ../include/openssl/symhacks.h
 enginetest.o: ../include/openssl/asn1.h ../include/openssl/bio.h
 enginetest.o: ../include/openssl/blowfish.h ../include/openssl/bn.h
 enginetest.o: ../include/openssl/cast.h ../include/openssl/crypto.h
@@ -358,19 +370,21 @@ enginetest.o: ../include/openssl/dsa.h ../include/openssl/e_os2.h
 enginetest.o: ../include/openssl/engine.h ../include/openssl/err.h
 enginetest.o: ../include/openssl/evp.h ../include/openssl/idea.h
 enginetest.o: ../include/openssl/lhash.h ../include/openssl/md2.h
-enginetest.o: ../include/openssl/md5.h ../include/openssl/mdc2.h
-enginetest.o: ../include/openssl/obj_mac.h ../include/openssl/objects.h
-enginetest.o: ../include/openssl/opensslconf.h ../include/openssl/opensslv.h
-enginetest.o: ../include/openssl/rand.h ../include/openssl/rc2.h
-enginetest.o: ../include/openssl/rc4.h ../include/openssl/rc5.h
-enginetest.o: ../include/openssl/ripemd.h ../include/openssl/rsa.h
-enginetest.o: ../include/openssl/safestack.h ../include/openssl/sha.h
-enginetest.o: ../include/openssl/stack.h
+enginetest.o: ../include/openssl/md4.h ../include/openssl/md5.h
+enginetest.o: ../include/openssl/mdc2.h ../include/openssl/obj_mac.h
+enginetest.o: ../include/openssl/objects.h ../include/openssl/opensslconf.h
+enginetest.o: ../include/openssl/opensslv.h ../include/openssl/rand.h
+enginetest.o: ../include/openssl/rc2.h ../include/openssl/rc4.h
+enginetest.o: ../include/openssl/rc5.h ../include/openssl/ripemd.h
+enginetest.o: ../include/openssl/rsa.h ../include/openssl/safestack.h
+enginetest.o: ../include/openssl/sha.h ../include/openssl/stack.h
+enginetest.o: ../include/openssl/symhacks.h
 exptest.o: ../include/openssl/bio.h ../include/openssl/bn.h
 exptest.o: ../include/openssl/crypto.h ../include/openssl/err.h
 exptest.o: ../include/openssl/lhash.h ../include/openssl/opensslconf.h
 exptest.o: ../include/openssl/opensslv.h ../include/openssl/rand.h
 exptest.o: ../include/openssl/safestack.h ../include/openssl/stack.h
+exptest.o: ../include/openssl/symhacks.h
 hmactest.o: ../include/openssl/asn1.h ../include/openssl/bio.h
 hmactest.o: ../include/openssl/blowfish.h ../include/openssl/bn.h
 hmactest.o: ../include/openssl/cast.h ../include/openssl/crypto.h
@@ -378,15 +392,17 @@ hmactest.o: ../include/openssl/des.h ../include/openssl/dh.h
 hmactest.o: ../include/openssl/dsa.h ../include/openssl/e_os2.h
 hmactest.o: ../include/openssl/evp.h ../include/openssl/hmac.h
 hmactest.o: ../include/openssl/idea.h ../include/openssl/md2.h
-hmactest.o: ../include/openssl/md5.h ../include/openssl/mdc2.h
-hmactest.o: ../include/openssl/obj_mac.h ../include/openssl/objects.h
-hmactest.o: ../include/openssl/opensslconf.h ../include/openssl/opensslv.h
-hmactest.o: ../include/openssl/rc2.h ../include/openssl/rc4.h
-hmactest.o: ../include/openssl/rc5.h ../include/openssl/ripemd.h
-hmactest.o: ../include/openssl/rsa.h ../include/openssl/safestack.h
-hmactest.o: ../include/openssl/sha.h ../include/openssl/stack.h
+hmactest.o: ../include/openssl/md4.h ../include/openssl/md5.h
+hmactest.o: ../include/openssl/mdc2.h ../include/openssl/obj_mac.h
+hmactest.o: ../include/openssl/objects.h ../include/openssl/opensslconf.h
+hmactest.o: ../include/openssl/opensslv.h ../include/openssl/rc2.h
+hmactest.o: ../include/openssl/rc4.h ../include/openssl/rc5.h
+hmactest.o: ../include/openssl/ripemd.h ../include/openssl/rsa.h
+hmactest.o: ../include/openssl/safestack.h ../include/openssl/sha.h
+hmactest.o: ../include/openssl/stack.h ../include/openssl/symhacks.h
 ideatest.o: ../include/openssl/idea.h ../include/openssl/opensslconf.h
 md2test.o: ../include/openssl/md2.h ../include/openssl/opensslconf.h
+md4test.o: ../include/openssl/md4.h
 md5test.o: ../include/openssl/md5.h
 mdc2test.o: ../include/openssl/des.h ../include/openssl/e_os2.h
 mdc2test.o: ../include/openssl/mdc2.h ../include/openssl/opensslconf.h
@@ -401,7 +417,7 @@ rsa_test.o: ../include/openssl/e_os2.h ../include/openssl/err.h
 rsa_test.o: ../include/openssl/lhash.h ../include/openssl/opensslconf.h
 rsa_test.o: ../include/openssl/opensslv.h ../include/openssl/rand.h
 rsa_test.o: ../include/openssl/rsa.h ../include/openssl/safestack.h
-rsa_test.o: ../include/openssl/stack.h
+rsa_test.o: ../include/openssl/stack.h ../include/openssl/symhacks.h
 sha1test.o: ../include/openssl/sha.h
 shatest.o: ../include/openssl/sha.h
 ssltest.o: ../include/openssl/asn1.h ../include/openssl/bio.h
@@ -413,16 +429,17 @@ ssltest.o: ../include/openssl/dsa.h ../include/openssl/e_os.h
 ssltest.o: ../include/openssl/e_os2.h ../include/openssl/err.h
 ssltest.o: ../include/openssl/evp.h ../include/openssl/idea.h
 ssltest.o: ../include/openssl/lhash.h ../include/openssl/md2.h
-ssltest.o: ../include/openssl/md5.h ../include/openssl/mdc2.h
-ssltest.o: ../include/openssl/obj_mac.h ../include/openssl/objects.h
-ssltest.o: ../include/openssl/opensslconf.h ../include/openssl/opensslv.h
-ssltest.o: ../include/openssl/pem.h ../include/openssl/pem2.h
-ssltest.o: ../include/openssl/pkcs7.h ../include/openssl/rand.h
-ssltest.o: ../include/openssl/rc2.h ../include/openssl/rc4.h
-ssltest.o: ../include/openssl/rc5.h ../include/openssl/ripemd.h
-ssltest.o: ../include/openssl/rsa.h ../include/openssl/safestack.h
-ssltest.o: ../include/openssl/sha.h ../include/openssl/ssl.h
-ssltest.o: ../include/openssl/ssl2.h ../include/openssl/ssl23.h
-ssltest.o: ../include/openssl/ssl3.h ../include/openssl/stack.h
+ssltest.o: ../include/openssl/md4.h ../include/openssl/md5.h
+ssltest.o: ../include/openssl/mdc2.h ../include/openssl/obj_mac.h
+ssltest.o: ../include/openssl/objects.h ../include/openssl/opensslconf.h
+ssltest.o: ../include/openssl/opensslv.h ../include/openssl/pem.h
+ssltest.o: ../include/openssl/pem2.h ../include/openssl/pkcs7.h
+ssltest.o: ../include/openssl/rand.h ../include/openssl/rc2.h
+ssltest.o: ../include/openssl/rc4.h ../include/openssl/rc5.h
+ssltest.o: ../include/openssl/ripemd.h ../include/openssl/rsa.h
+ssltest.o: ../include/openssl/safestack.h ../include/openssl/sha.h
+ssltest.o: ../include/openssl/ssl.h ../include/openssl/ssl2.h
+ssltest.o: ../include/openssl/ssl23.h ../include/openssl/ssl3.h
+ssltest.o: ../include/openssl/stack.h ../include/openssl/symhacks.h
 ssltest.o: ../include/openssl/tls1.h ../include/openssl/x509.h
 ssltest.o: ../include/openssl/x509_vfy.h
index 6bba16f13765af3357fd5ef8741423ab6b05d62a..e5b7866c3154cf3cf9d94df789c6913a2790cc9e 100644 (file)
@@ -1,46 +1,46 @@
 -----BEGIN PKCS7-----
-MIAGCSqGSIb3DQEHAqCAMIIIBwIBATEAMIAGCSqGSIb3DQEHAQAAoIIGPDCCBHIw
-ggQcoAMCAQICEHkvjiX1iVGQMenF9HgIjI8wDQYJKoZIhvcNAQEEBQAwYjERMA8G
-A1UEBxMISW50ZXJuZXQxFzAVBgNVBAoTDlZlcmlTaWduLCBJbmMuMTQwMgYDVQQL
-EytWZXJpU2lnbiBDbGFzcyAxIENBIC0gSW5kaXZpZHVhbCBTdWJzY3JpYmVyMB4X
-DTk2MDcxOTAwMDAwMFoXDTk3MDMzMDIzNTk1OVowgdUxETAPBgNVBAcTCEludGVy
-bmV0MRcwFQYDVQQKEw5WZXJpU2lnbiwgSW5jLjE0MDIGA1UECxMrVmVyaVNpZ24g
-Q2xhc3MgMSBDQSAtIEluZGl2aWR1YWwgU3Vic2NyaWJlcjEoMCYGA1UECxMfRGln
-aXRhbCBJRCBDbGFzcyAxIC0gU01JTUUgVGVzdDFHMEUGA1UECxM+d3d3LnZlcmlz
-aWduLmNvbS9yZXBvc2l0b3J5L0NQUy0xLjAgSW5jLiBieSBSZWYuLExJQUIuTFRE
-KGMpOTYwWzANBgkqhkiG9w0BAQEFAANKADBHAkAOy7xxCAIkOfuIA2LyRpxgKlDO
-Rl8htdXYhF5iBGUx1GYaK6KF+bK/CCI0l4j2OfWGFBUrwGoWqxTNcWgTfMzRAgMB
-AAGjggI5MIICNTAJBgNVHRMEAjAAMIICJgYDVR0DBIICHTCCAhkwggIVMIICEQYL
-YIZIAYb4RQEHAQEwggIAFoIBq1RoaXMgY2VydGlmaWNhdGUgaW5jb3Jwb3JhdGVz
-IGJ5IHJlZmVyZW5jZSwgYW5kIGl0cyB1c2UgaXMgc3RyaWN0bHkgc3ViamVjdCB0
-bywgdGhlIFZlcmlTaWduIENlcnRpZmljYXRpb24gUHJhY3RpY2UgU3RhdGVtZW50
-IChDUFMpLCBhdmFpbGFibGUgYXQ6IGh0dHBzOi8vd3d3LnZlcmlzaWduLmNvbS9D
-UFMtMS4wOyBieSBFLW1haWwgYXQgQ1BTLXJlcXVlc3RzQHZlcmlzaWduLmNvbTsg
-b3IgYnkgbWFpbCBhdCBWZXJpU2lnbiwgSW5jLiwgMjU5MyBDb2FzdCBBdmUuLCBN
-b3VudGFpbiBWaWV3LCBDQSA5NDA0MyBVU0EgVGVsLiArMSAoNDE1KSA5NjEtODgz
-MCBDb3B5cmlnaHQgKGMpIDE5OTYgVmVyaVNpZ24sIEluYy4gIEFsbCBSaWdodHMg
-UmVzZXJ2ZWQuIENFUlRBSU4gV0FSUkFOVElFUyBESVNDTEFJTUVEIGFuZCBMSUFC
-SUxJVFkgTElNSVRFRC6gDgYMYIZIAYb4RQEHAQEBoQ4GDGCGSAGG+EUBBwEBAjAv
-MC0WK2h0dHBzOi8vd3d3LnZlcmlzaWduLmNvbS9yZXBvc2l0b3J5L0NQUy0xLgMw
-DQYJKoZIhvcNAQEEBQADQQDAmA7km/3iJWEsWN9Z2WU2gmZAknx45WnDKHxMa3Bf
-gNsh6BLk/ngkJKjNKTDR13XVHqEPUY1flbjATZputw1GMIIBwjCCAWygAwIBAgIQ
-fAmE6tW5ERSQWDneu3KfSTANBgkqhkiG9w0BAQIFADA+MQswCQYDVQQGEwJVUzEX
-MBUGA1UEChMOVmVyaVNpZ24sIEluYy4xFjAUBgNVBAsTDVRFU1QgUm9vdCBQQ0Ew
-HhcNOTYwNzE3MDAwMDAwWhcNOTcwNzE3MjM1OTU5WjBiMREwDwYDVQQHEwhJbnRl
-cm5ldDEXMBUGA1UEChMOVmVyaVNpZ24sIEluYy4xNDAyBgNVBAsTK1ZlcmlTaWdu
-IENsYXNzIDEgQ0EgLSBJbmRpdmlkdWFsIFN1YnNjcmliZXIwXDANBgkqhkiG9w0B
-AQEFAANLADBIAkEA7Fc6zYJw4WwCWa1ni3fYNbzGSQNluuw990024GusjLfhEk1h
-MsIUukTT/n8yxoO7rYp4x+LS+tHF2tBtuxg7CwIDAQABoyIwIDALBgNVHQ8EBAMC
-AQYwEQYJYIZIAYb4QgEBBAQDAgIEMA0GCSqGSIb3DQEBAgUAA0EAFKem0cJGg9nd
-TAbP5o1HIEyNn11ZlvLU5v1Hejs1MKQt72IMm4jjgOH+pjguXW8lB6yzrK4oVOO2
-UNCaNQ1H26GCAa0wgcEwbTANBgkqhkiG9w0BAQIFADA+MQswCQYDVQQGEwJVUzEX
-MBUGA1UEChMOVmVyaVNpZ24sIEluYy4xFjAUBgNVBAsTDVRFU1QgUm9vdCBQQ0EX
-DTk2MDcxNzE3NDQwOVoXDTk4MDcxNzAwMDAwMFowDQYJKoZIhvcNAQECBQADQQB4
-rQNP8QLpAox83odQDE/5dqAuvDfshW/miTxwQTMXOoBtjGiowTcG+YXF1JZTJRMT
-jQN47tdH+6MCKt7N8MddMIHmMIGRMA0GCSqGSIb3DQEBAgUAMGIxETAPBgNVBAcT
-CEludGVybmV0MRcwFQYDVQQKEw5WZXJpU2lnbiwgSW5jLjE0MDIGA1UECxMrVmVy
-aVNpZ24gQ2xhc3MgMSBDQSAtIEluZGl2aWR1YWwgU3Vic2NyaWJlchcNOTYwNzE3
-MTc1OTI5WhcNOTcwNzE4MDAwMDAwWjANBgkqhkiG9w0BAQIFAANBALm1VmE7FrEJ
-rLXvX/lIDMPAZIw5TNuX8EC6wn5ppy8Y3sHstdJEkTsqVGiS2/q+KEQC3NHxvV32
-bGooiIKLUB4xAAAAAAA=
+MIIIGAYJKoZIhvcNAQcCoIIICTCCCAUCAQExADALBgkqhkiG9w0BBwGgggY8MIIE
+cjCCBBygAwIBAgIQeS+OJfWJUZAx6cX0eAiMjzANBgkqhkiG9w0BAQQFADBiMREw
+DwYDVQQHEwhJbnRlcm5ldDEXMBUGA1UEChMOVmVyaVNpZ24sIEluYy4xNDAyBgNV
+BAsTK1ZlcmlTaWduIENsYXNzIDEgQ0EgLSBJbmRpdmlkdWFsIFN1YnNjcmliZXIw
+HhcNOTYwNzE5MDAwMDAwWhcNOTcwMzMwMjM1OTU5WjCB1TERMA8GA1UEBxMISW50
+ZXJuZXQxFzAVBgNVBAoTDlZlcmlTaWduLCBJbmMuMTQwMgYDVQQLEytWZXJpU2ln
+biBDbGFzcyAxIENBIC0gSW5kaXZpZHVhbCBTdWJzY3JpYmVyMSgwJgYDVQQLEx9E
+aWdpdGFsIElEIENsYXNzIDEgLSBTTUlNRSBUZXN0MUcwRQYDVQQLEz53d3cudmVy
+aXNpZ24uY29tL3JlcG9zaXRvcnkvQ1BTLTEuMCBJbmMuIGJ5IFJlZi4sTElBQi5M
+VEQoYyk5NjBbMA0GCSqGSIb3DQEBAQUAA0oAMEcCQA7LvHEIAiQ5+4gDYvJGnGAq
+UM5GXyG11diEXmIEZTHUZhorooX5sr8IIjSXiPY59YYUFSvAaharFM1xaBN8zNEC
+AwEAAaOCAjkwggI1MAkGA1UdEwQCMAAwggImBgNVHQMEggIdMIICGTCCAhUwggIR
+BgtghkgBhvhFAQcBATCCAgAWggGrVGhpcyBjZXJ0aWZpY2F0ZSBpbmNvcnBvcmF0
+ZXMgYnkgcmVmZXJlbmNlLCBhbmQgaXRzIHVzZSBpcyBzdHJpY3RseSBzdWJqZWN0
+IHRvLCB0aGUgVmVyaVNpZ24gQ2VydGlmaWNhdGlvbiBQcmFjdGljZSBTdGF0ZW1l
+bnQgKENQUyksIGF2YWlsYWJsZSBhdDogaHR0cHM6Ly93d3cudmVyaXNpZ24uY29t
+L0NQUy0xLjA7IGJ5IEUtbWFpbCBhdCBDUFMtcmVxdWVzdHNAdmVyaXNpZ24uY29t
+OyBvciBieSBtYWlsIGF0IFZlcmlTaWduLCBJbmMuLCAyNTkzIENvYXN0IEF2ZS4s
+IE1vdW50YWluIFZpZXcsIENBIDk0MDQzIFVTQSBUZWwuICsxICg0MTUpIDk2MS04
+ODMwIENvcHlyaWdodCAoYykgMTk5NiBWZXJpU2lnbiwgSW5jLiAgQWxsIFJpZ2h0
+cyBSZXNlcnZlZC4gQ0VSVEFJTiBXQVJSQU5USUVTIERJU0NMQUlNRUQgYW5kIExJ
+QUJJTElUWSBMSU1JVEVELqAOBgxghkgBhvhFAQcBAQGhDgYMYIZIAYb4RQEHAQEC
+MC8wLRYraHR0cHM6Ly93d3cudmVyaXNpZ24uY29tL3JlcG9zaXRvcnkvQ1BTLTEu
+AzANBgkqhkiG9w0BAQQFAANBAMCYDuSb/eIlYSxY31nZZTaCZkCSfHjlacMofExr
+cF+A2yHoEuT+eCQkqM0pMNHXddUeoQ9RjV+VuMBNmm63DUYwggHCMIIBbKADAgEC
+AhB8CYTq1bkRFJBYOd67cp9JMA0GCSqGSIb3DQEBAgUAMD4xCzAJBgNVBAYTAlVT
+MRcwFQYDVQQKEw5WZXJpU2lnbiwgSW5jLjEWMBQGA1UECxMNVEVTVCBSb290IFBD
+QTAeFw05NjA3MTcwMDAwMDBaFw05NzA3MTcyMzU5NTlaMGIxETAPBgNVBAcTCElu
+dGVybmV0MRcwFQYDVQQKEw5WZXJpU2lnbiwgSW5jLjE0MDIGA1UECxMrVmVyaVNp
+Z24gQ2xhc3MgMSBDQSAtIEluZGl2aWR1YWwgU3Vic2NyaWJlcjBcMA0GCSqGSIb3
+DQEBAQUAA0sAMEgCQQDsVzrNgnDhbAJZrWeLd9g1vMZJA2W67D33TTbga6yMt+ES
+TWEywhS6RNP+fzLGg7utinjH4tL60cXa0G27GDsLAgMBAAGjIjAgMAsGA1UdDwQE
+AwIBBjARBglghkgBhvhCAQEEBAMCAgQwDQYJKoZIhvcNAQECBQADQQAUp6bRwkaD
+2d1MBs/mjUcgTI2fXVmW8tTm/Ud6OzUwpC3vYgybiOOA4f6mOC5dbyUHrLOsrihU
+47ZQ0Jo1DUfboYIBrTCBwTBtMA0GCSqGSIb3DQEBAgUAMD4xCzAJBgNVBAYTAlVT
+MRcwFQYDVQQKEw5WZXJpU2lnbiwgSW5jLjEWMBQGA1UECxMNVEVTVCBSb290IFBD
+QRcNOTYwNzE3MTc0NDA5WhcNOTgwNzE3MDAwMDAwWjANBgkqhkiG9w0BAQIFAANB
+AHitA0/xAukCjHzeh1AMT/l2oC68N+yFb+aJPHBBMxc6gG2MaKjBNwb5hcXUllMl
+ExONA3ju10f7owIq3s3wx10wgeYwgZEwDQYJKoZIhvcNAQECBQAwYjERMA8GA1UE
+BxMISW50ZXJuZXQxFzAVBgNVBAoTDlZlcmlTaWduLCBJbmMuMTQwMgYDVQQLEytW
+ZXJpU2lnbiBDbGFzcyAxIENBIC0gSW5kaXZpZHVhbCBTdWJzY3JpYmVyFw05NjA3
+MTcxNzU5MjlaFw05NzA3MTgwMDAwMDBaMA0GCSqGSIb3DQEBAgUAA0EAubVWYTsW
+sQmste9f+UgMw8BkjDlM25fwQLrCfmmnLxjewey10kSROypUaJLb+r4oRALc0fG9
+XfZsaiiIgotQHjEA
 -----END PKCS7-----
index 858026ead0113de960632c461cd5271a83374c03..13cae8fc5cb51e6d62855e7432cd3f879b6bc486 100755 (executable)
-SSLeay                                 1
-SSLeay_version                         2
-ASN1_BIT_STRING_asn1_meth              3
-ASN1_HEADER_free                       4
-ASN1_HEADER_new                                5
-ASN1_IA5STRING_asn1_meth               6
-ASN1_INTEGER_get                       7
-ASN1_INTEGER_set                       8
-ASN1_INTEGER_to_BN                     9
-ASN1_OBJECT_create                     10
-ASN1_OBJECT_free                       11
-ASN1_OBJECT_new                                12
-ASN1_PRINTABLE_type                    13
-ASN1_STRING_cmp                                14
-ASN1_STRING_dup                                15
-ASN1_STRING_free                       16
-ASN1_STRING_new                                17
-ASN1_STRING_print                      18
-ASN1_STRING_set                                19
-ASN1_STRING_type_new                   20
-ASN1_TYPE_free                         21
-ASN1_TYPE_new                          22
-ASN1_UNIVERSALSTRING_to_string         23
-ASN1_UTCTIME_check                     24
-ASN1_UTCTIME_print                     25
-ASN1_UTCTIME_set                       26
-ASN1_check_infinite_end                        27
-ASN1_d2i_bio                           28
-ASN1_d2i_fp                            29
-ASN1_digest                            30
-ASN1_dup                               31
-ASN1_get_object                                32
-ASN1_i2d_bio                           33
-ASN1_i2d_fp                            34
-ASN1_object_size                       35
-ASN1_parse                             36
-ASN1_put_object                                37
-ASN1_sign                              38
-ASN1_verify                            39
-BF_cbc_encrypt                         40
-BF_cfb64_encrypt                       41
-BF_ecb_encrypt                         42
-BF_encrypt                             43
-BF_ofb64_encrypt                       44
-BF_options                             45
-BF_set_key                             46
-BIO_CONNECT_free                       47
-BIO_CONNECT_new                                48
-BIO_accept                             51
-BIO_ctrl                               52
-BIO_int_ctrl                           53
-BIO_debug_callback                     54
-BIO_dump                               55
-BIO_dup_chain                          56
-BIO_f_base64                           57
-BIO_f_buffer                           58
-BIO_f_cipher                           59
-BIO_f_md                               60
-BIO_f_null                             61
-BIO_f_proxy_server                     62
-BIO_fd_non_fatal_error                 63
-BIO_fd_should_retry                    64
-BIO_find_type                          65
-BIO_free                               66
-BIO_free_all                           67
-BIO_get_accept_socket                  69
-BIO_get_filter_bio                     70
-BIO_get_host_ip                                71
-BIO_get_port                           72
-BIO_get_retry_BIO                      73
-BIO_get_retry_reason                   74
-BIO_gethostbyname                      75
-BIO_gets                               76
-BIO_new                                        78
-BIO_new_accept                         79
-BIO_new_connect                                80
-BIO_new_fd                             81
-BIO_new_file                           82
-BIO_new_fp                             83
-BIO_new_socket                         84
-BIO_pop                                        85
-BIO_printf                             86
-BIO_push                               87
-BIO_puts                               88
-BIO_read                               89
-BIO_s_accept                           90
-BIO_s_connect                          91
-BIO_s_fd                               92
-BIO_s_file                             93
-BIO_s_mem                              95
-BIO_s_null                             96
-BIO_s_proxy_client                     97
-BIO_s_socket                           98
-BIO_set                                        100
-BIO_set_cipher                         101
-BIO_set_tcp_ndelay                     102
-BIO_sock_cleanup                       103
-BIO_sock_error                         104
-BIO_sock_init                          105
-BIO_sock_non_fatal_error               106
-BIO_sock_should_retry                  107
-BIO_socket_ioctl                       108
-BIO_write                              109
-BN_CTX_free                            110
-BN_CTX_new                             111
-BN_MONT_CTX_free                       112
-BN_MONT_CTX_new                                113
-BN_MONT_CTX_set                                114
-BN_add                                 115
-BN_add_word                            116
-BN_hex2bn                              117
-BN_bin2bn                              118
-BN_bn2hex                              119
-BN_bn2bin                              120
-BN_clear                               121
-BN_clear_bit                           122
-BN_clear_free                          123
-BN_cmp                                 124
-BN_copy                                        125
-BN_div                                 126
-BN_div_word                            127
-BN_dup                                 128
-BN_free                                        129
-BN_from_montgomery                     130
-BN_gcd                                 131
-BN_generate_prime                      132
-BN_get_word                            133
-BN_is_bit_set                          134
-BN_is_prime                            135
-BN_lshift                              136
-BN_lshift1                             137
-BN_mask_bits                           138
-BN_mod                                 139
-BN_mod_exp                             140
-BN_mod_exp_mont                                141
-BN_mod_exp_recp                                142
-BN_mod_exp_simple                      143
-BN_mod_inverse                         144
-BN_mod_mul                             145
-BN_mod_mul_montgomery                  146
-BN_mod_mul_reciprocal                  147
-BN_mod_word                            148
-BN_mul                                 149
-BN_new                                 150
-BN_num_bits                            151
-BN_num_bits_word                       152
-BN_options                             153
-BN_print                               154
-BN_print_fp                            155
-BN_rand                                        156
-BN_reciprocal                          157
-BN_rshift                              158
-BN_rshift1                             159
-BN_set_bit                             160
-BN_set_word                            161
-BN_sqr                                 162
-BN_sub                                 163
-BN_to_ASN1_INTEGER                     164
-BN_ucmp                                        165
-BN_value_one                           166
-BUF_MEM_free                           167
-BUF_MEM_grow                           168
-BUF_MEM_new                            169
-BUF_strdup                             170
-CONF_free                              171
-CONF_get_number                                172
-CONF_get_section                       173
-CONF_get_string                                174
-CONF_load                              175
-CRYPTO_add_lock                                176
-CRYPTO_dbg_free                                177
-CRYPTO_dbg_malloc                      178
-CRYPTO_dbg_realloc                     179
-CRYPTO_dbg_remalloc                    180
-CRYPTO_free                            181
-CRYPTO_get_add_lock_callback           182
-CRYPTO_get_id_callback                 183
-CRYPTO_get_lock_name                   184
-CRYPTO_get_locking_callback            185
-CRYPTO_get_mem_functions               186
-CRYPTO_lock                            187
-CRYPTO_malloc                          188
-CRYPTO_mem_ctrl                                189
-CRYPTO_mem_leaks                       190
-CRYPTO_mem_leaks_cb                    191
-CRYPTO_mem_leaks_fp                    192
-CRYPTO_realloc                         193
-CRYPTO_remalloc                                194
-CRYPTO_set_add_lock_callback           195
-CRYPTO_set_id_callback                 196
-CRYPTO_set_locking_callback            197
-CRYPTO_set_mem_functions               198
-CRYPTO_thread_id                       199
-DH_check                               200
-DH_compute_key                         201
-DH_free                                        202
-DH_generate_key                                203
-DH_generate_parameters                 204
-DH_new                                 205
-DH_size                                        206
-DHparams_print                         207
-DHparams_print_fp                      208
-DSA_free                               209
-DSA_generate_key                       210
-DSA_generate_parameters                        211
-DSA_is_prime                           212
-DSA_new                                        213
-DSA_print                              214
-DSA_print_fp                           215
-DSA_sign                               216
-DSA_sign_setup                         217
-DSA_size                               218
-DSA_verify                             219
-DSAparams_print                                220
-DSAparams_print_fp                     221
-ERR_clear_error                                222
-ERR_error_string                       223
-ERR_free_strings                       224
-ERR_func_error_string                  225
-ERR_get_err_state_table                        226
-ERR_get_error                          227
-ERR_get_error_line                     228
-ERR_get_state                          229
-ERR_get_string_table                   230
-ERR_lib_error_string                   231
-ERR_load_ASN1_strings                  232
-ERR_load_BIO_strings                   233
-ERR_load_BN_strings                    234
-ERR_load_BUF_strings                   235
-ERR_load_CONF_strings                  236
-ERR_load_DH_strings                    237
-ERR_load_DSA_strings                   238
-ERR_load_ERR_strings                   239
-ERR_load_EVP_strings                   240
-ERR_load_OBJ_strings                   241
-ERR_load_PEM_strings                   242
-ERR_load_PROXY_strings                 243
-ERR_load_RSA_strings                   244
-ERR_load_X509_strings                  245
-ERR_load_crypto_strings                        246
-ERR_load_strings                       247
-ERR_peek_error                         248
-ERR_peek_error_line                    249
-ERR_print_errors                       250
-ERR_print_errors_fp                    251
-ERR_put_error                          252
-ERR_reason_error_string                        253
-ERR_remove_state                       254
-EVP_BytesToKey                         255
-EVP_CIPHER_CTX_cleanup                 256
-EVP_CipherFinal                                257
-EVP_CipherInit                         258
-EVP_CipherUpdate                       259
-EVP_DecodeBlock                                260
-EVP_DecodeFinal                                261
-EVP_DecodeInit                         262
-EVP_DecodeUpdate                       263
-EVP_DecryptFinal                       264
-EVP_DecryptInit                                265
-EVP_DecryptUpdate                      266
-EVP_DigestFinal                                267
-EVP_DigestInit                         268
-EVP_DigestUpdate                       269
-EVP_EncodeBlock                                270
-EVP_EncodeFinal                                271
-EVP_EncodeInit                         272
-EVP_EncodeUpdate                       273
-EVP_EncryptFinal                       274
-EVP_EncryptInit                                275
-EVP_EncryptUpdate                      276
-EVP_OpenFinal                          277
-EVP_OpenInit                           278
-EVP_PKEY_assign                                279
-EVP_PKEY_copy_parameters               280
-EVP_PKEY_free                          281
-EVP_PKEY_missing_parameters            282
-EVP_PKEY_new                           283
-EVP_PKEY_save_parameters               284
-EVP_PKEY_size                          285
-EVP_PKEY_type                          286
-EVP_SealFinal                          287
-EVP_SealInit                           288
-EVP_SignFinal                          289
-EVP_VerifyFinal                                290
-EVP_add_alias                          291
-EVP_add_cipher                         292
-EVP_add_digest                         293
-EVP_bf_cbc                             294
-EVP_bf_cfb                             295
-EVP_bf_ecb                             296
-EVP_bf_ofb                             297
-EVP_cleanup                            298
-EVP_des_cbc                            299
-EVP_des_cfb                            300
-EVP_des_ecb                            301
-EVP_des_ede                            302
-EVP_des_ede3                           303
-EVP_des_ede3_cbc                       304
-EVP_des_ede3_cfb                       305
-EVP_des_ede3_ofb                       306
-EVP_des_ede_cbc                                307
-EVP_des_ede_cfb                                308
-EVP_des_ede_ofb                                309
-EVP_des_ofb                            310
-EVP_desx_cbc                           311
-EVP_dss                                        312
-EVP_dss1                               313
-EVP_enc_null                           314
-EVP_get_cipherbyname                   315
-EVP_get_digestbyname                   316
-EVP_get_pw_prompt                      317
-EVP_idea_cbc                           318
-EVP_idea_cfb                           319
-EVP_idea_ecb                           320
-EVP_idea_ofb                           321
-EVP_md2                                        322
-EVP_md5                                        323
-EVP_md_null                            324
-EVP_rc2_cbc                            325
-EVP_rc2_cfb                            326
-EVP_rc2_ecb                            327
-EVP_rc2_ofb                            328
-EVP_rc4                                        329
-EVP_read_pw_string                     330
-EVP_set_pw_prompt                      331
-EVP_sha                                        332
-EVP_sha1                               333
-MD2                                    334
-MD2_Final                              335
-MD2_Init                               336
-MD2_Update                             337
-MD2_options                            338
-MD5                                    339
-MD5_Final                              340
-MD5_Init                               341
-MD5_Update                             342
-MDC2                                   343
-MDC2_Final                             344
-MDC2_Init                              345
-MDC2_Update                            346
-NETSCAPE_SPKAC_free                    347
-NETSCAPE_SPKAC_new                     348
-NETSCAPE_SPKI_free                     349
-NETSCAPE_SPKI_new                      350
-NETSCAPE_SPKI_sign                     351
-NETSCAPE_SPKI_verify                   352
-OBJ_add_object                         353
-OBJ_bsearch                            354
-OBJ_cleanup                            355
-OBJ_cmp                                        356
-OBJ_create                             357
-OBJ_dup                                        358
-OBJ_ln2nid                             359
-OBJ_new_nid                            360
-OBJ_nid2ln                             361
-OBJ_nid2obj                            362
-OBJ_nid2sn                             363
-OBJ_obj2nid                            364
-OBJ_sn2nid                             365
-OBJ_txt2nid                            366
-PEM_ASN1_read                          367
-PEM_ASN1_read_bio                      368
-PEM_ASN1_write                         369
-PEM_ASN1_write_bio                     370
-PEM_SealFinal                          371
-PEM_SealInit                           372
-PEM_SealUpdate                         373
-PEM_SignFinal                          374
-PEM_SignInit                           375
-PEM_SignUpdate                         376
-PEM_X509_INFO_read                     377
-PEM_X509_INFO_read_bio                 378
-PEM_X509_INFO_write_bio                        379
-PEM_dek_info                           380
-PEM_do_header                          381
-PEM_get_EVP_CIPHER_INFO                        382
-PEM_proc_type                          383
-PEM_read                               384
-PEM_read_DHparams                      385
-PEM_read_DSAPrivateKey                 386
-PEM_read_DSAparams                     387
-PEM_read_PKCS7                         388
-PEM_read_PrivateKey                    389
-PEM_read_RSAPrivateKey                 390
-PEM_read_X509                          391
-PEM_read_X509_CRL                      392
-PEM_read_X509_REQ                      393
-PEM_read_bio                           394
-PEM_read_bio_DHparams                  395
-PEM_read_bio_DSAPrivateKey             396
-PEM_read_bio_DSAparams                 397
-PEM_read_bio_PKCS7                     398
-PEM_read_bio_PrivateKey                        399
-PEM_read_bio_RSAPrivateKey             400
-PEM_read_bio_X509                      401
-PEM_read_bio_X509_CRL                  402
-PEM_read_bio_X509_REQ                  403
-PEM_write                              404
-PEM_write_DHparams                     405
-PEM_write_DSAPrivateKey                        406
-PEM_write_DSAparams                    407
-PEM_write_PKCS7                                408
-PEM_write_PrivateKey                   409
-PEM_write_RSAPrivateKey                        410
-PEM_write_X509                         411
-PEM_write_X509_CRL                     412
-PEM_write_X509_REQ                     413
-PEM_write_bio                          414
-PEM_write_bio_DHparams                 415
-PEM_write_bio_DSAPrivateKey            416
-PEM_write_bio_DSAparams                        417
-PEM_write_bio_PKCS7                    418
-PEM_write_bio_PrivateKey               419
-PEM_write_bio_RSAPrivateKey            420
-PEM_write_bio_X509                     421
-PEM_write_bio_X509_CRL                 422
-PEM_write_bio_X509_REQ                 423
-PKCS7_DIGEST_free                      424
-PKCS7_DIGEST_new                       425
-PKCS7_ENCRYPT_free                     426
-PKCS7_ENCRYPT_new                      427
-PKCS7_ENC_CONTENT_free                 428
-PKCS7_ENC_CONTENT_new                  429
-PKCS7_ENVELOPE_free                    430
-PKCS7_ENVELOPE_new                     431
-PKCS7_ISSUER_AND_SERIAL_digest         432
-PKCS7_ISSUER_AND_SERIAL_free           433
-PKCS7_ISSUER_AND_SERIAL_new            434
-PKCS7_RECIP_INFO_free                  435
-PKCS7_RECIP_INFO_new                   436
-PKCS7_SIGNED_free                      437
-PKCS7_SIGNED_new                       438
-PKCS7_SIGNER_INFO_free                 439
-PKCS7_SIGNER_INFO_new                  440
-PKCS7_SIGN_ENVELOPE_free               441
-PKCS7_SIGN_ENVELOPE_new                        442
-PKCS7_dup                              443
-PKCS7_free                             444
-PKCS7_new                              445
-PROXY_ENTRY_add_noproxy                        446
-PROXY_ENTRY_clear_noproxy              447
-PROXY_ENTRY_free                       448
-PROXY_ENTRY_get_noproxy                        449
-PROXY_ENTRY_new                                450
-PROXY_ENTRY_set_server                 451
-PROXY_add_noproxy                      452
-PROXY_add_server                       453
-PROXY_check_by_host                    454
-PROXY_check_url                                455
-PROXY_clear_noproxy                    456
-PROXY_free                             457
-PROXY_get_noproxy                      458
-PROXY_get_proxies                      459
-PROXY_get_proxy_entry                  460
-PROXY_load_conf                                461
-PROXY_new                              462
-PROXY_print                            463
-RAND_bytes                             464
-RAND_cleanup                           465
-RAND_file_name                         466
-RAND_load_file                         467
-RAND_screen                            468
-RAND_seed                              469
-RAND_write_file                                470
-RC2_cbc_encrypt                                471
-RC2_cfb64_encrypt                      472
-RC2_ecb_encrypt                                473
-RC2_encrypt                            474
-RC2_ofb64_encrypt                      475
-RC2_set_key                            476
-RC4                                    477
-RC4_options                            478
-RC4_set_key                            479
-RSAPrivateKey_asn1_meth                        480
-RSAPrivateKey_dup                      481
-RSAPublicKey_dup                       482
-RSA_PKCS1_SSLeay                       483
-RSA_free                               484
-RSA_generate_key                       485
-RSA_new                                        486
-RSA_new_method                         487
-RSA_print                              488
-RSA_print_fp                           489
-RSA_private_decrypt                    490
-RSA_private_encrypt                    491
-RSA_public_decrypt                     492
-RSA_public_encrypt                     493
-RSA_sign                               495
-RSA_sign_ASN1_OCTET_STRING             496
-RSA_size                               497
-RSA_verify                             498
-RSA_verify_ASN1_OCTET_STRING           499
-SHA                                    500
-SHA1                                   501
-SHA1_Final                             502
-SHA1_Init                              503
-SHA1_Update                            504
-SHA_Final                              505
-SHA_Init                               506
-SHA_Update                             507
-OpenSSL_add_all_algorithms             508
-OpenSSL_add_all_ciphers                        509
-OpenSSL_add_all_digests                        510
-TXT_DB_create_index                    511
-TXT_DB_free                            512
-TXT_DB_get_by_index                    513
-TXT_DB_insert                          514
-TXT_DB_read                            515
-TXT_DB_write                           516
-X509_ALGOR_free                                517
-X509_ALGOR_new                         518
-X509_ATTRIBUTE_free                    519
-X509_ATTRIBUTE_new                     520
-X509_CINF_free                         521
-X509_CINF_new                          522
-X509_CRL_INFO_free                     523
-X509_CRL_INFO_new                      524
-X509_CRL_add_ext                       525
-X509_CRL_cmp                           526
-X509_CRL_delete_ext                    527
-X509_CRL_dup                           528
-X509_CRL_free                          529
-X509_CRL_get_ext                       530
-X509_CRL_get_ext_by_NID                        531
-X509_CRL_get_ext_by_OBJ                        532
-X509_CRL_get_ext_by_critical           533
-X509_CRL_get_ext_count                 534
-X509_CRL_new                           535
-X509_CRL_sign                          536
-X509_CRL_verify                                537
-X509_EXTENSION_create_by_NID           538
-X509_EXTENSION_create_by_OBJ           539
-X509_EXTENSION_dup                     540
-X509_EXTENSION_free                    541
-X509_EXTENSION_get_critical            542
-X509_EXTENSION_get_data                        543
-X509_EXTENSION_get_object              544
-X509_EXTENSION_new                     545
-X509_EXTENSION_set_critical            546
-X509_EXTENSION_set_data                        547
-X509_EXTENSION_set_object              548
-X509_INFO_free                         549
-X509_INFO_new                          550
-X509_LOOKUP_by_alias                   551
-X509_LOOKUP_by_fingerprint             552
-X509_LOOKUP_by_issuer_serial           553
-X509_LOOKUP_by_subject                 554
-X509_LOOKUP_ctrl                       555
-X509_LOOKUP_file                       556
-X509_LOOKUP_free                       557
-X509_LOOKUP_hash_dir                   558
-X509_LOOKUP_init                       559
-X509_LOOKUP_new                                560
-X509_LOOKUP_shutdown                   561
-X509_NAME_ENTRY_create_by_NID          562
-X509_NAME_ENTRY_create_by_OBJ          563
-X509_NAME_ENTRY_dup                    564
-X509_NAME_ENTRY_free                   565
-X509_NAME_ENTRY_get_data               566
-X509_NAME_ENTRY_get_object             567
-X509_NAME_ENTRY_new                    568
-X509_NAME_ENTRY_set_data               569
-X509_NAME_ENTRY_set_object             570
-X509_NAME_add_entry                    571
-X509_NAME_cmp                          572
-X509_NAME_delete_entry                 573
-X509_NAME_digest                       574
-X509_NAME_dup                          575
-X509_NAME_entry_count                  576
-X509_NAME_free                         577
-X509_NAME_get_entry                    578
-X509_NAME_get_index_by_NID             579
-X509_NAME_get_index_by_OBJ             580
-X509_NAME_get_text_by_NID              581
-X509_NAME_get_text_by_OBJ              582
-X509_NAME_hash                         583
-X509_NAME_new                          584
-X509_NAME_oneline                      585
-X509_NAME_print                                586
-X509_NAME_set                          587
-X509_OBJECT_free_contents              588
-X509_OBJECT_retrieve_by_subject                589
-X509_OBJECT_up_ref_count               590
-X509_PKEY_free                         591
-X509_PKEY_new                          592
-X509_PUBKEY_free                       593
-X509_PUBKEY_get                                594
-X509_PUBKEY_new                                595
-X509_PUBKEY_set                                596
-X509_REQ_INFO_free                     597
-X509_REQ_INFO_new                      598
-X509_REQ_dup                           599
-X509_REQ_free                          600
-X509_REQ_get_pubkey                    601
-X509_REQ_new                           602
-X509_REQ_print                         603
-X509_REQ_print_fp                      604
-X509_REQ_set_pubkey                    605
-X509_REQ_set_subject_name              606
-X509_REQ_set_version                   607
-X509_REQ_sign                          608
-X509_REQ_to_X509                       609
-X509_REQ_verify                                610
-X509_REVOKED_add_ext                   611
-X509_REVOKED_delete_ext                        612
-X509_REVOKED_free                      613
-X509_REVOKED_get_ext                   614
-X509_REVOKED_get_ext_by_NID            615
-X509_REVOKED_get_ext_by_OBJ            616
-X509_REVOKED_get_ext_by_critical       617
-X509_REVOKED_get_ext_count             618
-X509_REVOKED_new                       619
-X509_SIG_free                          620
-X509_SIG_new                           621
-X509_STORE_CTX_cleanup                 622
-X509_STORE_CTX_init                    623
-X509_STORE_add_cert                    624
-X509_STORE_add_lookup                  625
-X509_STORE_free                                626
-X509_STORE_get_by_subject              627
-X509_STORE_load_locations              628
-X509_STORE_new                         629
-X509_STORE_set_default_paths           630
-X509_VAL_free                          631
-X509_VAL_new                           632
-X509_add_ext                           633
-X509_asn1_meth                         634
-X509_certificate_type                  635
-X509_check_private_key                 636
-X509_cmp_current_time                  637
-X509_delete_ext                                638
-X509_digest                            639
-X509_dup                               640
-X509_free                              641
-X509_get_default_cert_area             642
-X509_get_default_cert_dir              643
-X509_get_default_cert_dir_env          644
-X509_get_default_cert_file             645
-X509_get_default_cert_file_env         646
-X509_get_default_private_dir           647
-X509_get_ext                           648
-X509_get_ext_by_NID                    649
-X509_get_ext_by_OBJ                    650
-X509_get_ext_by_critical               651
-X509_get_ext_count                     652
-X509_get_issuer_name                   653
-X509_get_pubkey                                654
-X509_get_pubkey_parameters             655
-X509_get_serialNumber                  656
-X509_get_subject_name                  657
-X509_gmtime_adj                                658
-X509_issuer_and_serial_cmp             659
-X509_issuer_and_serial_hash            660
-X509_issuer_name_cmp                   661
-X509_issuer_name_hash                  662
-X509_load_cert_file                    663
-X509_new                               664
-X509_print                             665
-X509_print_fp                          666
-X509_set_issuer_name                   667
-X509_set_notAfter                      668
-X509_set_notBefore                     669
-X509_set_pubkey                                670
-X509_set_serialNumber                  671
-X509_set_subject_name                  672
-X509_set_version                       673
-X509_sign                              674
-X509_subject_name_cmp                  675
-X509_subject_name_hash                 676
-X509_to_X509_REQ                       677
-X509_verify                            678
-X509_verify_cert                       679
-X509_verify_cert_error_string          680
-X509v3_add_ext                         681
-X509v3_add_extension                   682
-X509v3_add_netscape_extensions         683
-X509v3_add_standard_extensions         684
-X509v3_cleanup_extensions              685
-X509v3_data_type_by_NID                        686
-X509v3_data_type_by_OBJ                        687
-X509v3_delete_ext                      688
-X509v3_get_ext                         689
-X509v3_get_ext_by_NID                  690
-X509v3_get_ext_by_OBJ                  691
-X509v3_get_ext_by_critical             692
-X509v3_get_ext_count                   693
-X509v3_pack_string                     694
-X509v3_pack_type_by_NID                        695
-X509v3_pack_type_by_OBJ                        696
-X509v3_unpack_string                   697
-_des_crypt                             698
-a2d_ASN1_OBJECT                                699
-a2i_ASN1_INTEGER                       700
-a2i_ASN1_STRING                                701
-asn1_Finish                            702
-asn1_GetSequence                       703
-bn_div_words                           704
-bn_expand2                             705
-bn_mul_add_words                       706
-bn_mul_words                           707
-BN_uadd                                        708
-BN_usub                                        709
-bn_sqr_words                           710
-crypt                                  711
-d2i_ASN1_BIT_STRING                    712
-d2i_ASN1_BOOLEAN                       713
-d2i_ASN1_HEADER                                714
-d2i_ASN1_IA5STRING                     715
-d2i_ASN1_INTEGER                       716
-d2i_ASN1_OBJECT                                717
-d2i_ASN1_OCTET_STRING                  718
-d2i_ASN1_PRINTABLE                     719
-d2i_ASN1_PRINTABLESTRING               720
-d2i_ASN1_SET                           721
-d2i_ASN1_T61STRING                     722
-d2i_ASN1_TYPE                          723
-d2i_ASN1_UTCTIME                       724
-d2i_ASN1_bytes                         725
-d2i_ASN1_type_bytes                    726
-d2i_DHparams                           727
-d2i_DSAPrivateKey                      728
-d2i_DSAPrivateKey_bio                  729
-d2i_DSAPrivateKey_fp                   730
-d2i_DSAPublicKey                       731
-d2i_DSAparams                          732
-d2i_NETSCAPE_SPKAC                     733
-d2i_NETSCAPE_SPKI                      734
-d2i_Netscape_RSA                       735
-d2i_PKCS7                              736
-d2i_PKCS7_DIGEST                       737
-d2i_PKCS7_ENCRYPT                      738
-d2i_PKCS7_ENC_CONTENT                  739
-d2i_PKCS7_ENVELOPE                     740
-d2i_PKCS7_ISSUER_AND_SERIAL            741
-d2i_PKCS7_RECIP_INFO                   742
-d2i_PKCS7_SIGNED                       743
-d2i_PKCS7_SIGNER_INFO                  744
-d2i_PKCS7_SIGN_ENVELOPE                        745
-d2i_PKCS7_bio                          746
-d2i_PKCS7_fp                           747
-d2i_PrivateKey                         748
-d2i_PublicKey                          749
-d2i_RSAPrivateKey                      750
-d2i_RSAPrivateKey_bio                  751
-d2i_RSAPrivateKey_fp                   752
-d2i_RSAPublicKey                       753
-d2i_X509                               754
-d2i_X509_ALGOR                         755
-d2i_X509_ATTRIBUTE                     756
-d2i_X509_CINF                          757
-d2i_X509_CRL                           758
-d2i_X509_CRL_INFO                      759
-d2i_X509_CRL_bio                       760
-d2i_X509_CRL_fp                                761
-d2i_X509_EXTENSION                     762
-d2i_X509_NAME                          763
-d2i_X509_NAME_ENTRY                    764
-d2i_X509_PKEY                          765
-d2i_X509_PUBKEY                                766
-d2i_X509_REQ                           767
-d2i_X509_REQ_INFO                      768
-d2i_X509_REQ_bio                       769
-d2i_X509_REQ_fp                                770
-d2i_X509_REVOKED                       771
-d2i_X509_SIG                           772
-d2i_X509_VAL                           773
-d2i_X509_bio                           774
-d2i_X509_fp                            775
-des_cbc_cksum                          777
-des_cbc_encrypt                                778
-des_cblock_print_file                  779
-des_cfb64_encrypt                      780
-des_cfb_encrypt                                781
-des_decrypt3                           782
-des_ecb3_encrypt                       783
-des_ecb_encrypt                                784
-des_ede3_cbc_encrypt                   785
-des_ede3_cfb64_encrypt                 786
-des_ede3_ofb64_encrypt                 787
-des_enc_read                           788
-des_enc_write                          789
-des_encrypt                            790
-des_encrypt2                           791
-des_encrypt3                           792
-des_fcrypt                             793
-des_is_weak_key                                794
-des_key_sched                          795
-des_ncbc_encrypt                       796
-des_ofb64_encrypt                      797
-des_ofb_encrypt                                798
-des_options                            799
-des_pcbc_encrypt                       800
-des_quad_cksum                         801
-des_random_key                         802
-des_random_seed                                803
-des_read_2passwords                    804
-des_read_password                      805
-des_read_pw                            806
-des_read_pw_string                     807
-des_set_key                            808
-des_set_odd_parity                     809
-des_string_to_2keys                    810
-des_string_to_key                      811
-des_xcbc_encrypt                       812
-des_xwhite_in2out                      813
-fcrypt_body                            814
-i2a_ASN1_INTEGER                       815
-i2a_ASN1_OBJECT                                816
-i2a_ASN1_STRING                                817
-i2d_ASN1_BIT_STRING                    818
-i2d_ASN1_BOOLEAN                       819
-i2d_ASN1_HEADER                                820
-i2d_ASN1_IA5STRING                     821
-i2d_ASN1_INTEGER                       822
-i2d_ASN1_OBJECT                                823
-i2d_ASN1_OCTET_STRING                  824
-i2d_ASN1_PRINTABLE                     825
-i2d_ASN1_SET                           826
-i2d_ASN1_TYPE                          827
-i2d_ASN1_UTCTIME                       828
-i2d_ASN1_bytes                         829
-i2d_DHparams                           830
-i2d_DSAPrivateKey                      831
-i2d_DSAPrivateKey_bio                  832
-i2d_DSAPrivateKey_fp                   833
-i2d_DSAPublicKey                       834
-i2d_DSAparams                          835
-i2d_NETSCAPE_SPKAC                     836
-i2d_NETSCAPE_SPKI                      837
-i2d_Netscape_RSA                       838
-i2d_PKCS7                              839
-i2d_PKCS7_DIGEST                       840
-i2d_PKCS7_ENCRYPT                      841
-i2d_PKCS7_ENC_CONTENT                  842
-i2d_PKCS7_ENVELOPE                     843
-i2d_PKCS7_ISSUER_AND_SERIAL            844
-i2d_PKCS7_RECIP_INFO                   845
-i2d_PKCS7_SIGNED                       846
-i2d_PKCS7_SIGNER_INFO                  847
-i2d_PKCS7_SIGN_ENVELOPE                        848
-i2d_PKCS7_bio                          849
-i2d_PKCS7_fp                           850
-i2d_PrivateKey                         851
-i2d_PublicKey                          852
-i2d_RSAPrivateKey                      853
-i2d_RSAPrivateKey_bio                  854
-i2d_RSAPrivateKey_fp                   855
-i2d_RSAPublicKey                       856
-i2d_X509                               857
-i2d_X509_ALGOR                         858
-i2d_X509_ATTRIBUTE                     859
-i2d_X509_CINF                          860
-i2d_X509_CRL                           861
-i2d_X509_CRL_INFO                      862
-i2d_X509_CRL_bio                       863
-i2d_X509_CRL_fp                                864
-i2d_X509_EXTENSION                     865
-i2d_X509_NAME                          866
-i2d_X509_NAME_ENTRY                    867
-i2d_X509_PKEY                          868
-i2d_X509_PUBKEY                                869
-i2d_X509_REQ                           870
-i2d_X509_REQ_INFO                      871
-i2d_X509_REQ_bio                       872
-i2d_X509_REQ_fp                                873
-i2d_X509_REVOKED                       874
-i2d_X509_SIG                           875
-i2d_X509_VAL                           876
-i2d_X509_bio                           877
-i2d_X509_fp                            878
-idea_cbc_encrypt                       879
-idea_cfb64_encrypt                     880
-idea_ecb_encrypt                       881
-idea_encrypt                           882
-idea_ofb64_encrypt                     883
-idea_options                           884
-idea_set_decrypt_key                   885
-idea_set_encrypt_key                   886
-lh_delete                              887
-lh_doall                               888
-lh_doall_arg                           889
-lh_free                                        890
-lh_insert                              891
-lh_new                                 892
-lh_node_stats                          893
-lh_node_stats_bio                      894
-lh_node_usage_stats                    895
-lh_node_usage_stats_bio                        896
-lh_retrieve                            897
-lh_stats                               898
-lh_stats_bio                           899
-lh_strhash                             900
-sk_delete                              901
-sk_delete_ptr                          902
-sk_dup                                 903
-sk_find                                        904
-sk_free                                        905
-sk_insert                              906
-sk_new                                 907
-sk_pop                                 908
-sk_pop_free                            909
-sk_push                                        910
-sk_set_cmp_func                                911
-sk_shift                               912
-sk_unshift                             913
-sk_zero                                        914
-BIO_f_nbio_test                                915
-ASN1_TYPE_get                          916
-ASN1_TYPE_set                          917
-PKCS7_content_free                     918
-ERR_load_PKCS7_strings                 919
-X509_find_by_issuer_and_serial         920
-X509_find_by_subject                   921
-PKCS7_ctrl                             927
-PKCS7_set_type                         928
-PKCS7_set_content                      929
-PKCS7_SIGNER_INFO_set                  930
-PKCS7_add_signer                       931
-PKCS7_add_certificate                  932
-PKCS7_add_crl                          933
-PKCS7_content_new                      934
-PKCS7_dataSign                         935
-PKCS7_dataVerify                       936
-PKCS7_dataInit                         937
-PKCS7_add_signature                    938
-PKCS7_cert_from_signer_info            939
-PKCS7_get_signer_info                  940
-EVP_delete_alias                       941
-EVP_mdc2                               942
-PEM_read_bio_RSAPublicKey              943
-PEM_write_bio_RSAPublicKey             944
-d2i_RSAPublicKey_bio                   945
-i2d_RSAPublicKey_bio                   946
-PEM_read_RSAPublicKey                  947
-PEM_write_RSAPublicKey                 949
-d2i_RSAPublicKey_fp                    952
-i2d_RSAPublicKey_fp                    954
-BIO_copy_next_retry                    955
-RSA_flags                              956
-X509_STORE_add_crl                     957
-X509_load_crl_file                     958
-EVP_rc2_40_cbc                         959
-EVP_rc4_40                             960
-EVP_CIPHER_CTX_init                    961
-HMAC                                   962
-HMAC_Init                              963
-HMAC_Update                            964
-HMAC_Final                             965
-ERR_get_next_error_library             966
-EVP_PKEY_cmp_parameters                        967
-HMAC_cleanup                           968
-BIO_ptr_ctrl                           969
-BIO_new_file_internal                  970
-BIO_new_fp_internal                    971
-BIO_s_file_internal                    972
-BN_BLINDING_convert                    973
-BN_BLINDING_invert                     974
-BN_BLINDING_update                     975
-RSA_blinding_on                                977
-RSA_blinding_off                       978
-i2t_ASN1_OBJECT                                979
-BN_BLINDING_new                                980
-BN_BLINDING_free                       981
-EVP_cast5_cbc                          983
-EVP_cast5_cfb                          984
-EVP_cast5_ecb                          985
-EVP_cast5_ofb                          986
-BF_decrypt                             987
-CAST_set_key                           988
-CAST_encrypt                           989
-CAST_decrypt                           990
-CAST_ecb_encrypt                       991
-CAST_cbc_encrypt                       992
-CAST_cfb64_encrypt                     993
-CAST_ofb64_encrypt                     994
-RC2_decrypt                            995
-OBJ_create_objects                     997
-BN_exp                                 998
-BN_mul_word                            999
-BN_sub_word                            1000
-BN_dec2bn                              1001
-BN_bn2dec                              1002
-BIO_ghbn_ctrl                          1003
-CRYPTO_free_ex_data                    1004
-CRYPTO_get_ex_data                     1005
-CRYPTO_set_ex_data                     1007
-ERR_load_CRYPTO_strings                        1009
-ERR_load_CRYPTOlib_strings             1009
-EVP_PKEY_bits                          1010
-MD5_Transform                          1011
-SHA1_Transform                         1012
-SHA_Transform                          1013
-X509_STORE_CTX_get_chain               1014
-X509_STORE_CTX_get_current_cert                1015
-X509_STORE_CTX_get_error               1016
-X509_STORE_CTX_get_error_depth         1017
-X509_STORE_CTX_get_ex_data             1018
-X509_STORE_CTX_set_cert                        1020
-X509_STORE_CTX_set_chain               1021
-X509_STORE_CTX_set_error               1022
-X509_STORE_CTX_set_ex_data             1023
-CRYPTO_dup_ex_data                     1025
-CRYPTO_get_new_lockid                  1026
-CRYPTO_new_ex_data                     1027
-RSA_set_ex_data                                1028
-RSA_get_ex_data                                1029
-RSA_get_ex_new_index                   1030
-RSA_padding_add_PKCS1_type_1           1031
-RSA_padding_add_PKCS1_type_2           1032
-RSA_padding_add_SSLv23                 1033
-RSA_padding_add_none                   1034
-RSA_padding_check_PKCS1_type_1         1035
-RSA_padding_check_PKCS1_type_2         1036
-RSA_padding_check_SSLv23               1037
-RSA_padding_check_none                 1038
-bn_add_words                           1039
-d2i_Netscape_RSA_2                     1040
-CRYPTO_get_ex_new_index                        1041
-RIPEMD160_Init                         1042
-RIPEMD160_Update                       1043
-RIPEMD160_Final                                1044
-RIPEMD160                              1045
-RIPEMD160_Transform                    1046
-RC5_32_set_key                         1047
-RC5_32_ecb_encrypt                     1048
-RC5_32_encrypt                         1049
-RC5_32_decrypt                         1050
-RC5_32_cbc_encrypt                     1051
-RC5_32_cfb64_encrypt                   1052
-RC5_32_ofb64_encrypt                   1053
-BN_bn2mpi                              1058
-BN_mpi2bn                              1059
-ASN1_BIT_STRING_get_bit                        1060
-ASN1_BIT_STRING_set_bit                        1061
-BIO_get_ex_data                                1062
-BIO_get_ex_new_index                   1063
-BIO_set_ex_data                                1064
-X509_STORE_CTX_get_ex_new_index                1065
-X509v3_get_key_usage                   1066
-X509v3_set_key_usage                   1067
-a2i_X509v3_key_usage                   1068
-i2a_X509v3_key_usage                   1069
-EVP_PKEY_decrypt                       1070
-EVP_PKEY_encrypt                       1071
-PKCS7_RECIP_INFO_set                   1072
-PKCS7_add_recipient                    1073
-PKCS7_add_recipient_info               1074
-PKCS7_set_cipher                       1075
-ASN1_TYPE_get_int_octetstring          1076
-ASN1_TYPE_get_octetstring              1077
-ASN1_TYPE_set_int_octetstring          1078
-ASN1_TYPE_set_octetstring              1079
-ASN1_UTCTIME_set_string                        1080
-ERR_add_error_data                     1081
-ERR_set_error_data                     1082
-EVP_CIPHER_asn1_to_param               1083
-EVP_CIPHER_param_to_asn1               1084
-EVP_CIPHER_get_asn1_iv                 1085
-EVP_CIPHER_set_asn1_iv                 1086
-EVP_rc5_32_12_16_cbc                   1087
-EVP_rc5_32_12_16_cfb                   1088
-EVP_rc5_32_12_16_ecb                   1089
-EVP_rc5_32_12_16_ofb                   1090
-asn1_add_error                         1091
-d2i_ASN1_BMPSTRING                     1092
-i2d_ASN1_BMPSTRING                     1093
-BIO_f_ber                              1094
-BN_init                                        1095
-COMP_CTX_new                           1096
-COMP_CTX_free                          1097
-COMP_CTX_compress_block                        1098
-COMP_CTX_expand_block                  1099
-X509_STORE_CTX_get_ex_new_index                1100
-OBJ_NAME_add                           1101
-BIO_socket_nbio                                1102
-EVP_rc2_64_cbc                         1103
-OBJ_NAME_cleanup                       1104
-OBJ_NAME_get                           1105
-OBJ_NAME_init                          1106
-OBJ_NAME_new_index                     1107
-OBJ_NAME_remove                                1108
-BN_MONT_CTX_copy                       1109
-BIO_new_socks4a_connect                        1110
-BIO_s_socks4a_connect                  1111
-PROXY_set_connect_mode                 1112
-RAND_SSLeay                            1113
-RAND_set_rand_method                   1114
-RSA_memory_lock                                1115
-bn_sub_words                           1116
-bn_mul_normal                          1117
-bn_mul_comba8                          1118
-bn_mul_comba4                          1119
-bn_sqr_normal                          1120
-bn_sqr_comba8                          1121
-bn_sqr_comba4                          1122
-bn_cmp_words                           1123
-bn_mul_recursive                       1124
-bn_mul_part_recursive                  1125
-bn_sqr_recursive                       1126
-bn_mul_low_normal                      1127
-BN_RECP_CTX_init                       1128
-BN_RECP_CTX_new                                1129
-BN_RECP_CTX_free                       1130
-BN_RECP_CTX_set                                1131
-BN_mod_mul_reciprocal                  1132
-BN_mod_exp_recp                                1133
-BN_div_recp                            1134
-BN_CTX_init                            1135
-BN_MONT_CTX_init                       1136
-RAND_get_rand_method                   1137
-PKCS7_add_attribute                    1138
-PKCS7_add_signed_attribute             1139
-PKCS7_digest_from_attributes           1140
-PKCS7_get_attribute                    1141
-PKCS7_get_issuer_and_serial            1142
-PKCS7_get_signed_attribute             1143
-COMP_compress_block                    1144
-COMP_expand_block                      1145
-COMP_rle                               1146
-COMP_zlib                              1147
-ms_time_diff                           1148
-ms_time_new                            1149
-ms_time_free                           1150
-ms_time_cmp                            1151
-ms_time_get                            1152
-PKCS7_set_attributes                   1153
-PKCS7_set_signed_attributes            1154
-X509_ATTRIBUTE_create                  1155
-X509_ATTRIBUTE_dup                     1156
-ASN1_GENERALIZEDTIME_check             1157
-ASN1_GENERALIZEDTIME_print             1158
-ASN1_GENERALIZEDTIME_set               1159
-ASN1_GENERALIZEDTIME_set_string                1160
-ASN1_TIME_print                                1161
-BASIC_CONSTRAINTS_free                 1162
-BASIC_CONSTRAINTS_new                  1163
-ERR_load_X509V3_strings                        1164
-NETSCAPE_CERT_SEQUENCE_free            1165
-NETSCAPE_CERT_SEQUENCE_new             1166
-OBJ_txt2obj                            1167
-PEM_read_NETSCAPE_CERT_SEQUENCE                1168
-PEM_read_bio_NETSCAPE_CERT_SEQUENCE    1169
-PEM_write_NETSCAPE_CERT_SEQUENCE       1170
-PEM_write_bio_NETSCAPE_CERT_SEQUENCE   1171
-X509V3_EXT_add                         1172
-X509V3_EXT_add_alias                   1173
-X509V3_EXT_add_conf                    1174
-X509V3_EXT_cleanup                     1175
-X509V3_EXT_conf                                1176
-X509V3_EXT_conf_nid                    1177
-X509V3_EXT_get                         1178
-X509V3_EXT_get_nid                     1179
-X509V3_EXT_print                       1180
-X509V3_EXT_print_fp                    1181
-X509V3_add_standard_extensions         1182
-X509V3_add_value                       1183
-X509V3_add_value_bool                  1184
-X509V3_add_value_int                   1185
-X509V3_conf_free                       1186
-X509V3_get_value_bool                  1187
-X509V3_get_value_int                   1188
-X509V3_parse_list                      1189
-d2i_ASN1_GENERALIZEDTIME               1190
-d2i_ASN1_TIME                          1191
-d2i_BASIC_CONSTRAINTS                  1192
-d2i_NETSCAPE_CERT_SEQUENCE             1193
-d2i_ext_ku                             1194
-ext_ku_free                            1195
-ext_ku_new                             1196
-i2d_ASN1_GENERALIZEDTIME               1197
-i2d_ASN1_TIME                          1198
-i2d_BASIC_CONSTRAINTS                  1199
-i2d_NETSCAPE_CERT_SEQUENCE             1200
-i2d_ext_ku                             1201
-EVP_MD_CTX_copy                                1202
-i2d_ASN1_ENUMERATED                     1203
-d2i_ASN1_ENUMERATED                     1204
-ASN1_ENUMERATED_set                     1205
-ASN1_ENUMERATED_get                     1206
-BN_to_ASN1_ENUMERATED                   1207
-ASN1_ENUMERATED_to_BN                   1208
-i2a_ASN1_ENUMERATED                     1209
-a2i_ASN1_ENUMERATED                     1210
-i2d_GENERAL_NAME                        1211
-d2i_GENERAL_NAME                        1212
-GENERAL_NAME_new                        1213
-GENERAL_NAME_free                       1214
-GENERAL_NAMES_new                       1215
-GENERAL_NAMES_free                      1216
-d2i_GENERAL_NAMES                       1217
-i2d_GENERAL_NAMES                       1218
-i2v_GENERAL_NAMES                       1219
-i2s_ASN1_OCTET_STRING                   1220
-s2i_ASN1_OCTET_STRING                   1221
-X509V3_EXT_check_conf                   1222
-hex_to_string                           1223
-string_to_hex                           1224
-des_ede3_cbcm_encrypt                   1225
-RSA_padding_add_PKCS1_OAEP              1226
-RSA_padding_check_PKCS1_OAEP            1227
-X509_CRL_print_fp                       1228
-X509_CRL_print                          1229
-i2v_GENERAL_NAME                        1230
-v2i_GENERAL_NAME                        1231
-i2d_PKEY_USAGE_PERIOD                   1232
-d2i_PKEY_USAGE_PERIOD                   1233
-PKEY_USAGE_PERIOD_new                   1234
-PKEY_USAGE_PERIOD_free                  1235
-v2i_GENERAL_NAMES                       1236
-i2s_ASN1_INTEGER                        1237
-X509V3_EXT_d2i                          1238
-name_cmp                                1239
-str_dup                                 1240
-i2s_ASN1_ENUMERATED                     1241
-i2s_ASN1_ENUMERATED_TABLE               1242
-BIO_s_log                               1243
-BIO_f_reliable                          1244
-PKCS7_dataFinal                         1245
-PKCS7_dataDecode                        1246
-X509V3_EXT_CRL_add_conf                 1247
-BN_set_params                           1248
-BN_get_params                           1249
-BIO_get_ex_num                          1250
-BIO_set_ex_free_func                    1251
-EVP_ripemd160                           1252
-ASN1_TIME_set                           1253
-i2d_AUTHORITY_KEYID                     1254
-d2i_AUTHORITY_KEYID                     1255
-AUTHORITY_KEYID_new                     1256
-AUTHORITY_KEYID_free                    1257
-ASN1_seq_unpack                         1258
-ASN1_seq_pack                           1259
-ASN1_unpack_string                      1260
-ASN1_pack_string                        1261
-PKCS12_pack_safebag                     1262
-PKCS12_MAKE_KEYBAG                      1263
-PKCS8_encrypt                           1264
-PKCS12_MAKE_SHKEYBAG                    1265
-PKCS12_pack_p7data                      1266
-PKCS12_pack_p7encdata                   1267
-PKCS12_add_localkeyid                   1268
-PKCS12_add_friendlyname_asc             1269
-PKCS12_add_friendlyname_uni             1270
-PKCS12_get_friendlyname                 1271
-PKCS12_pbe_crypt                        1272
-PKCS12_decrypt_d2i                      1273
-PKCS12_i2d_encrypt                      1274
-PKCS12_init                             1275
-PKCS12_key_gen_asc                      1276
-PKCS12_key_gen_uni                      1277
-PKCS12_gen_mac                          1278
-PKCS12_verify_mac                       1279
-PKCS12_set_mac                          1280
-PKCS12_setup_mac                        1281
-asc2uni                                 1282
-uni2asc                                 1283
-i2d_PKCS12_BAGS                         1284
-PKCS12_BAGS_new                         1285
-d2i_PKCS12_BAGS                         1286
-PKCS12_BAGS_free                        1287
-i2d_PKCS12                              1288
-d2i_PKCS12                              1289
-PKCS12_new                              1290
-PKCS12_free                             1291
-i2d_PKCS12_MAC_DATA                     1292
-PKCS12_MAC_DATA_new                     1293
-d2i_PKCS12_MAC_DATA                     1294
-PKCS12_MAC_DATA_free                    1295
-i2d_PKCS12_SAFEBAG                      1296
-PKCS12_SAFEBAG_new                      1297
-d2i_PKCS12_SAFEBAG                      1298
-PKCS12_SAFEBAG_free                     1299
-ERR_load_PKCS12_strings                 1300
-PKCS12_PBE_add                          1301
-PKCS8_add_keyusage                      1302
-PKCS12_get_attr_gen                     1303
-PKCS12_parse                            1304
-PKCS12_create                           1305
-i2d_PKCS12_bio                          1306
-i2d_PKCS12_fp                           1307
-d2i_PKCS12_bio                          1308
-d2i_PKCS12_fp                           1309
-i2d_PBEPARAM                            1310
-PBEPARAM_new                            1311
-d2i_PBEPARAM                            1312
-PBEPARAM_free                           1313
-i2d_PKCS8_PRIV_KEY_INFO                 1314
-PKCS8_PRIV_KEY_INFO_new                 1315
-d2i_PKCS8_PRIV_KEY_INFO                 1316
-PKCS8_PRIV_KEY_INFO_free                1317
-EVP_PKCS82PKEY                          1318
-EVP_PKEY2PKCS8                          1319
-PKCS8_set_broken                        1320
-EVP_PBE_ALGOR_CipherInit                1321
-EVP_PBE_alg_add                         1322
-PKCS5_pbe_set                           1323
-EVP_PBE_cleanup                         1324
-i2d_SXNET                               1325
-d2i_SXNET                               1326
-SXNET_new                               1327
-SXNET_free                              1328
-i2d_SXNETID                             1329
-d2i_SXNETID                             1330
-SXNETID_new                             1331
-SXNETID_free                            1332
-DSA_SIG_new                             1333
-DSA_SIG_free                            1334
-DSA_do_sign                             1335
-DSA_do_verify                           1336
-d2i_DSA_SIG                             1337
-i2d_DSA_SIG                             1338
-i2d_ASN1_VISIBLESTRING                  1339
-d2i_ASN1_VISIBLESTRING                  1340
-i2d_ASN1_UTF8STRING                     1341
-d2i_ASN1_UTF8STRING                     1342
-i2d_DIRECTORYSTRING                     1343
-d2i_DIRECTORYSTRING                     1344
-i2d_DISPLAYTEXT                         1345
-d2i_DISPLAYTEXT                         1346
-d2i_ASN1_SET_OF_X509                    1379
-i2d_ASN1_SET_OF_X509                    1380
-i2d_PBKDF2PARAM                         1397
-PBKDF2PARAM_new                         1398
-d2i_PBKDF2PARAM                         1399
-PBKDF2PARAM_free                        1400
-i2d_PBE2PARAM                           1401
-PBE2PARAM_new                           1402
-d2i_PBE2PARAM                           1403
-PBE2PARAM_free                          1404
-d2i_ASN1_SET_OF_GENERAL_NAME            1421
-i2d_ASN1_SET_OF_GENERAL_NAME            1422
-d2i_ASN1_SET_OF_SXNETID                 1439
-i2d_ASN1_SET_OF_SXNETID                 1440
-d2i_ASN1_SET_OF_POLICYQUALINFO          1457
-i2d_ASN1_SET_OF_POLICYQUALINFO          1458
-d2i_ASN1_SET_OF_POLICYINFO              1475
-i2d_ASN1_SET_OF_POLICYINFO              1476
-SXNET_add_id_asc                        1477
-SXNET_add_id_ulong                      1478
-SXNET_add_id_INTEGER                    1479
-SXNET_get_id_asc                        1480
-SXNET_get_id_ulong                      1481
-SXNET_get_id_INTEGER                    1482
-X509V3_set_conf_lhash                   1483
-i2d_CERTIFICATEPOLICIES                 1484
-CERTIFICATEPOLICIES_new                 1485
-CERTIFICATEPOLICIES_free                1486
-d2i_CERTIFICATEPOLICIES                 1487
-i2d_POLICYINFO                          1488
-POLICYINFO_new                          1489
-d2i_POLICYINFO                          1490
-POLICYINFO_free                         1491
-i2d_POLICYQUALINFO                      1492
-POLICYQUALINFO_new                      1493
-d2i_POLICYQUALINFO                      1494
-POLICYQUALINFO_free                     1495
-i2d_USERNOTICE                          1496
-USERNOTICE_new                          1497
-d2i_USERNOTICE                          1498
-USERNOTICE_free                         1499
-i2d_NOTICEREF                           1500
-NOTICEREF_new                           1501
-d2i_NOTICEREF                           1502
-NOTICEREF_free                          1503
-X509V3_get_string                       1504
-X509V3_get_section                      1505
-X509V3_string_free                      1506
-X509V3_section_free                     1507
-X509V3_set_ctx                          1508
-s2i_ASN1_INTEGER                        1509
-CRYPTO_set_locked_mem_functions         1510
-CRYPTO_get_locked_mem_functions         1511
-CRYPTO_malloc_locked                    1512
-CRYPTO_free_locked                      1513
-BN_mod_exp2_mont                        1514
-ERR_get_error_line_data                 1515
-ERR_peek_error_line_data                1516
-PKCS12_PBE_keyivgen                     1517
-X509_ALGOR_dup                          1518
-d2i_ASN1_SET_OF_DIST_POINT              1535
-i2d_ASN1_SET_OF_DIST_POINT              1536
-i2d_CRL_DIST_POINTS                     1537
-CRL_DIST_POINTS_new                     1538
-CRL_DIST_POINTS_free                    1539
-d2i_CRL_DIST_POINTS                     1540
-i2d_DIST_POINT                          1541
-DIST_POINT_new                          1542
-d2i_DIST_POINT                          1543
-DIST_POINT_free                         1544
-i2d_DIST_POINT_NAME                     1545
-DIST_POINT_NAME_new                     1546
-DIST_POINT_NAME_free                    1547
-d2i_DIST_POINT_NAME                     1548
-X509V3_add_value_uchar                  1549
-d2i_ASN1_SET_OF_X509_ATTRIBUTE          1555
-i2d_ASN1_SET_OF_ASN1_TYPE               1560
-d2i_ASN1_SET_OF_X509_EXTENSION          1567
-d2i_ASN1_SET_OF_X509_NAME_ENTRY         1574
-d2i_ASN1_SET_OF_ASN1_TYPE               1589
-i2d_ASN1_SET_OF_X509_ATTRIBUTE          1615
-i2d_ASN1_SET_OF_X509_EXTENSION          1624
-i2d_ASN1_SET_OF_X509_NAME_ENTRY         1633
-X509V3_EXT_i2d                          1646
-X509V3_EXT_val_prn                      1647
-X509V3_EXT_add_list                     1648
-EVP_CIPHER_type                         1649
-EVP_PBE_CipherInit                      1650
-X509V3_add_value_bool_nf                1651
-d2i_ASN1_UINTEGER                       1652
-sk_value                                1653
-sk_num                                  1654
-sk_set                                  1655
-i2d_ASN1_SET_OF_X509_REVOKED            1661
-sk_sort                                 1671
-d2i_ASN1_SET_OF_X509_REVOKED            1674
-i2d_ASN1_SET_OF_X509_ALGOR              1682
-i2d_ASN1_SET_OF_X509_CRL                1685
-d2i_ASN1_SET_OF_X509_ALGOR              1696
-d2i_ASN1_SET_OF_X509_CRL                1702
-i2d_ASN1_SET_OF_PKCS7_SIGNER_INFO       1723
-i2d_ASN1_SET_OF_PKCS7_RECIP_INFO        1738
-d2i_ASN1_SET_OF_PKCS7_SIGNER_INFO       1748
-d2i_ASN1_SET_OF_PKCS7_RECIP_INFO        1753
-PKCS5_PBE_add                           1775
-PEM_write_bio_PKCS8                     1776
-i2d_PKCS8_fp                            1777
-PEM_read_bio_PKCS8_PRIV_KEY_INFO        1778
-d2i_PKCS8_bio                           1779
-d2i_PKCS8_PRIV_KEY_INFO_fp              1780
-PEM_write_bio_PKCS8_PRIV_KEY_INFO       1781
-PEM_read_PKCS8                          1782
-d2i_PKCS8_PRIV_KEY_INFO_bio             1783
-d2i_PKCS8_fp                            1784
-PEM_write_PKCS8                         1785
-PEM_read_PKCS8_PRIV_KEY_INFO            1786
-PEM_read_bio_PKCS8                      1787
-PEM_write_PKCS8_PRIV_KEY_INFO           1788
-PKCS5_PBE_keyivgen                      1789
-i2d_PKCS8_bio                           1790
-i2d_PKCS8_PRIV_KEY_INFO_fp              1791
-i2d_PKCS8_PRIV_KEY_INFO_bio             1792
-BIO_s_bio                               1793
-PKCS5_pbe2_set                          1794
-PKCS5_PBKDF2_HMAC_SHA1                  1795
-PKCS5_v2_PBE_keyivgen                   1796
-PEM_write_bio_PKCS8PrivateKey           1797
-PEM_write_PKCS8PrivateKey               1798
-BIO_ctrl_get_read_request               1799
-BIO_ctrl_pending                        1800
-BIO_ctrl_wpending                       1801
-BIO_new_bio_pair                        1802
-BIO_ctrl_get_write_guarantee            1803
-CRYPTO_num_locks                        1804
-CONF_load_bio                           1805
-CONF_load_fp                            1806
-i2d_ASN1_SET_OF_ASN1_OBJECT             1837
-d2i_ASN1_SET_OF_ASN1_OBJECT             1844
-PKCS7_signatureVerify                   1845
-RSA_set_method                          1846
-RSA_get_method                          1847
-RSA_get_default_method                  1848
-sk_CONF_VALUE_sort                      1849
-sk_X509_REVOKED_sort                    1850
-sk_X509_ATTRIBUTE_sort                  1851
-sk_X509_INFO_sort                       1852
-sk_POLICYINFO_sort                      1853
-sk_GENERAL_NAME_sort                    1854
-sk_X509_sort                            1855
-sk_X509_NAME_sort                       1856
-sk_ASN1_TYPE_sort                       1857
-sk_X509_ALGOR_sort                      1858
-sk_PKCS7_RECIP_INFO_sort                1859
-sk_X509_NAME_ENTRY_sort                 1860
-sk_X509_EXTENSION_sort                  1861
-sk_SXNETID_sort                         1862
-sk_ASN1_OBJECT_sort                     1863
-sk_PKCS7_SIGNER_INFO_sort               1864
-sk_X509_LOOKUP_sort                     1865
-sk_POLICYQUALINFO_sort                  1866
-sk_X509_CRL_sort                        1867
-sk_DIST_POINT_sort                      1868
-RSA_check_key                           1869
-OBJ_obj2txt                             1870
-DSA_dup_DH                              1871
-X509_REQ_get_extensions                 1872
-X509_REQ_set_extension_nids             1873
-BIO_nwrite                              1874
-X509_REQ_extension_nid                  1875
-BIO_nread                               1876
-X509_REQ_get_extension_nids              1877
-BIO_nwrite0                             1878
-X509_REQ_add_extensions_nid             1879
-BIO_nread0                              1880
-X509_REQ_add_extensions                 1881
-BIO_new_mem_buf                         1882
-DH_set_ex_data                          1883
-DH_set_method                           1884
-DSA_OpenSSL                             1885
-DH_get_ex_data                          1886
-DH_get_ex_new_index                     1887
-DSA_new_method                          1888
-DH_new_method                           1889
-DH_OpenSSL                              1890
-DSA_get_ex_new_index                    1891
-DSA_set_ex_data                         1893
-DSA_get_ex_data                         1895
-X509V3_EXT_REQ_add_conf                 1896
-NETSCAPE_SPKI_print                     1897
-NETSCAPE_SPKI_set_pubkey                1898
-NETSCAPE_SPKI_b64_encode                1899
-NETSCAPE_SPKI_get_pubkey                1900
-NETSCAPE_SPKI_b64_decode                1901
-UTF8_putc                               1902
-UTF8_getc                               1903
-RSA_null_method                         1904
-ASN1_tag2str                            1905
-BIO_ctrl_reset_read_request             1906
-DISPLAYTEXT_new                         1907
-ASN1_GENERALIZEDTIME_free               1908
-X509_REVOKED_get_ext_d2i                1909
-X509_set_ex_data                        1910
-X509_reject_set_bit_asc                 1911
-X509_NAME_add_entry_by_txt              1912
-X509_NAME_add_entry_by_NID              1914
-X509_PURPOSE_get0                       1915
-PEM_read_X509_AUX                       1917
-d2i_AUTHORITY_INFO_ACCESS               1918
-PEM_write_PUBKEY                        1921
-ACCESS_DESCRIPTION_new                  1925
-X509_CERT_AUX_free                      1926
-d2i_ACCESS_DESCRIPTION                  1927
-X509_trust_clear                        1928
-X509_TRUST_add                          1931
-ASN1_VISIBLESTRING_new                  1932
-X509_alias_set1                         1933
-ASN1_PRINTABLESTRING_free               1934
-EVP_PKEY_get1_DSA                       1935
-ASN1_BMPSTRING_new                      1936
-ASN1_mbstring_copy                      1937
-ASN1_UTF8STRING_new                     1938
-sk_ACCESS_DESCRIPTION_set               1939
-sk_X509_PURPOSE_pop                     1940
-DSA_get_default_method                  1941
-sk_X509_PURPOSE_push                    1942
-sk_X509_PURPOSE_delete                  1943
-sk_X509_PURPOSE_num                     1944
-i2d_ASN1_SET_OF_ACCESS_DESCRIPTION      1945
-ASN1_T61STRING_free                     1946
-DSA_set_method                          1949
-X509_get_ex_data                        1950
-ASN1_STRING_type                        1951
-X509_PURPOSE_get_by_sname               1952
-ASN1_TIME_free                          1954
-ASN1_OCTET_STRING_cmp                   1955
-ASN1_BIT_STRING_new                     1957
-X509_get_ext_d2i                        1958
-PEM_read_bio_X509_AUX                   1959
-ASN1_STRING_set_default_mask_asc        1960
-PEM_write_bio_RSA_PUBKEY                1961
-ASN1_INTEGER_cmp                        1963
-d2i_RSA_PUBKEY_fp                       1964
-X509_trust_set_bit_asc                  1967
-PEM_write_bio_DSA_PUBKEY                1968
-X509_STORE_CTX_free                     1969
-EVP_PKEY_set1_DSA                       1970
-i2d_DSA_PUBKEY_fp                       1971
-X509_load_cert_crl_file                 1972
-ASN1_TIME_new                           1973
-i2d_RSA_PUBKEY                          1974
-X509_STORE_CTX_purpose_inherit          1976
-PEM_read_RSA_PUBKEY                     1977
-d2i_X509_AUX                            1980
-i2d_DSA_PUBKEY                          1981
-X509_CERT_AUX_print                     1982
-PEM_read_DSA_PUBKEY                     1984
-i2d_RSA_PUBKEY_bio                      1985
-ASN1_BIT_STRING_num_asc                 1986
-i2d_PUBKEY                              1987
-ASN1_UTCTIME_free                       1988
-X509_PURPOSE_get_by_id                  1990
-ACCESS_DESCRIPTION_free                 1994
-PEM_read_bio_PUBKEY                     1995
-ASN1_STRING_set_by_NID                  1996
-X509_PURPOSE_get_id                     1997
-DISPLAYTEXT_free                        1998
-OTHERNAME_new                           1999
-X509_CERT_AUX_new                       2001
-X509_TRUST_cleanup                      2007
-X509_NAME_add_entry_by_OBJ              2008
-X509_CRL_get_ext_d2i                    2009
-X509_PURPOSE_get0_name                  2011
-PEM_read_PUBKEY                         2012
-i2d_DSA_PUBKEY_bio                      2014
-i2d_OTHERNAME                           2015
-ASN1_OCTET_STRING_free                  2016
-ASN1_BIT_STRING_set_asc                 2017
-X509_get_ex_new_index                   2019
-ASN1_STRING_TABLE_cleanup               2020
-X509_TRUST_get_by_id                    2021
-X509_PURPOSE_get_trust                  2022
-ASN1_STRING_length                      2023
-d2i_ASN1_SET_OF_ACCESS_DESCRIPTION      2024
-ASN1_PRINTABLESTRING_new                2025
-X509V3_get_d2i                          2026
-ASN1_ENUMERATED_free                    2027
-i2d_X509_CERT_AUX                       2028
-X509_STORE_CTX_set_trust                2030
-ASN1_STRING_set_default_mask            2032
-X509_STORE_CTX_new                      2033
-EVP_PKEY_get1_RSA                       2034
-DIRECTORYSTRING_free                    2038
-PEM_write_X509_AUX                      2039
-ASN1_OCTET_STRING_set                   2040
-d2i_DSA_PUBKEY_fp                       2041
-d2i_RSA_PUBKEY                          2044
-X509_TRUST_get0_name                    2046
-X509_TRUST_get0                         2047
-AUTHORITY_INFO_ACCESS_free              2048
-ASN1_IA5STRING_new                      2049
-d2i_DSA_PUBKEY                          2050
-X509_check_purpose                      2051
-ASN1_ENUMERATED_new                     2052
-d2i_RSA_PUBKEY_bio                      2053
-d2i_PUBKEY                              2054
-X509_TRUST_get_trust                    2055
-X509_TRUST_get_flags                    2056
-ASN1_BMPSTRING_free                     2057
-ASN1_T61STRING_new                      2058
-ASN1_UTCTIME_new                        2060
-i2d_AUTHORITY_INFO_ACCESS               2062
-EVP_PKEY_set1_RSA                       2063
-X509_STORE_CTX_set_purpose              2064
-ASN1_IA5STRING_free                     2065
-PEM_write_bio_X509_AUX                  2066
-X509_PURPOSE_get_count                  2067
-CRYPTO_add_info                         2068
-X509_NAME_ENTRY_create_by_txt           2071
-ASN1_STRING_get_default_mask            2072
-X509_alias_get0                         2074
-ASN1_STRING_data                        2075
-i2d_ACCESS_DESCRIPTION                  2077
-X509_trust_set_bit                      2078
-ASN1_BIT_STRING_free                    2080
-PEM_read_bio_RSA_PUBKEY                 2081
-X509_add1_reject_object                 2082
-X509_check_trust                        2083
-PEM_read_bio_DSA_PUBKEY                 2088
-X509_PURPOSE_add                        2090
-ASN1_STRING_TABLE_get                   2091
-ASN1_UTF8STRING_free                    2092
-d2i_DSA_PUBKEY_bio                      2093
-PEM_write_RSA_PUBKEY                    2095
-d2i_OTHERNAME                           2096
-X509_reject_set_bit                     2098
-PEM_write_DSA_PUBKEY                    2101
-X509_PURPOSE_get0_sname                 2105
-EVP_PKEY_set1_DH                        2107
-ASN1_OCTET_STRING_dup                   2108
-ASN1_BIT_STRING_set                     2109
-X509_TRUST_get_count                    2110
-ASN1_INTEGER_free                       2111
-OTHERNAME_free                          2112
-i2d_RSA_PUBKEY_fp                       2113
-ASN1_INTEGER_dup                        2114
-d2i_X509_CERT_AUX                       2115
-PEM_write_bio_PUBKEY                    2117
-ASN1_VISIBLESTRING_free                 2118
-X509_PURPOSE_cleanup                    2119
-ASN1_mbstring_ncopy                     2123
-ASN1_GENERALIZEDTIME_new                2126
-EVP_PKEY_get1_DH                        2128
-ASN1_OCTET_STRING_new                   2130
-ASN1_INTEGER_new                        2131
-i2d_X509_AUX                            2132
-ASN1_BIT_STRING_name_print              2134
-X509_cmp                                2135
-ASN1_STRING_length_set                  2136
-DIRECTORYSTRING_new                     2137
-X509_add1_trust_object                  2140
-PKCS12_newpass                          2141
-SMIME_write_PKCS7                       2142
-SMIME_read_PKCS7                        2143
-des_set_key_checked                     2144
-PKCS7_verify                            2145
-PKCS7_encrypt                           2146
-des_set_key_unchecked                   2147
-SMIME_crlf_copy                         2148
-i2d_ASN1_PRINTABLESTRING                2149
-PKCS7_get0_signers                      2150
-PKCS7_decrypt                           2151
-SMIME_text                              2152
-PKCS7_simple_smimecap                   2153
-PKCS7_get_smimecap                      2154
-PKCS7_sign                              2155
-PKCS7_add_attrib_smimecap               2156
-CRYPTO_dbg_set_options                  2157
-CRYPTO_remove_all_info                  2158
-CRYPTO_get_mem_debug_functions          2159
-CRYPTO_is_mem_check_on                  2160
-CRYPTO_set_mem_debug_functions          2161
-CRYPTO_pop_info                         2162
-CRYPTO_push_info_                       2163
-CRYPTO_set_mem_debug_options            2164
-PEM_write_PKCS8PrivateKey_nid           2165
-PEM_write_bio_PKCS8PrivateKey_nid       2166
-d2i_PKCS8PrivateKey_bio                 2167
-ASN1_NULL_free                          2168
-d2i_ASN1_NULL                           2169
-ASN1_NULL_new                           2170
-i2d_PKCS8PrivateKey_bio                 2171
-i2d_PKCS8PrivateKey_fp                  2172
-i2d_ASN1_NULL                           2173
-i2d_PKCS8PrivateKey_nid_fp              2174
-d2i_PKCS8PrivateKey_fp                  2175
-i2d_PKCS8PrivateKey_nid_bio             2176
-i2d_PKCS8PrivateKeyInfo_fp              2177
-i2d_PKCS8PrivateKeyInfo_bio             2178
-PEM_cb                                  2179
-i2d_PrivateKey_fp                       2180
-d2i_PrivateKey_bio                      2181
-d2i_PrivateKey_fp                       2182
-i2d_PrivateKey_bio                      2183
-X509_reject_clear                       2184
-X509_TRUST_set_default                  2185
-d2i_AutoPrivateKey                      2186
-X509_ATTRIBUTE_get0_type                2187
-X509_ATTRIBUTE_set1_data                2188
-X509at_get_attr                         2189
-X509at_get_attr_count                   2190
-X509_ATTRIBUTE_create_by_NID            2191
-X509_ATTRIBUTE_set1_object              2192
-X509_ATTRIBUTE_count                    2193
-X509_ATTRIBUTE_create_by_OBJ            2194
-X509_ATTRIBUTE_get0_object              2195
-X509at_get_attr_by_NID                  2196
-X509at_add1_attr                        2197
-X509_ATTRIBUTE_get0_data                2198
-X509at_delete_attr                      2199
-X509at_get_attr_by_OBJ                  2200
-RAND_add                                2201
-BIO_number_written                      2202
-BIO_number_read                         2203
-X509_STORE_CTX_get1_chain               2204
-ERR_load_RAND_strings                   2205
-RAND_pseudo_bytes                       2206
-X509_REQ_get_attr_by_NID                2207
-X509_REQ_get_attr                       2208
-X509_REQ_add1_attr_by_NID               2209
-X509_REQ_get_attr_by_OBJ                2210
-X509at_add1_attr_by_NID                 2211
-X509_REQ_add1_attr_by_OBJ               2212
-X509_REQ_get_attr_count                 2213
-X509_REQ_add1_attr                      2214
-X509_REQ_delete_attr                    2215
-X509at_add1_attr_by_OBJ                 2216
-X509_REQ_add1_attr_by_txt               2217
-X509_ATTRIBUTE_create_by_txt            2218
-X509at_add1_attr_by_txt                 2219
-BN_pseudo_rand                          2239
-BN_is_prime_fasttest                    2240
-BN_CTX_end                              2241
-BN_CTX_start                            2242
-BN_CTX_get                              2243
-EVP_PKEY2PKCS8_broken                   2244
-ASN1_STRING_TABLE_add                   2245
-CRYPTO_dbg_get_options                  2246
-AUTHORITY_INFO_ACCESS_new               2247
-CRYPTO_get_mem_debug_options            2248
-des_crypt                               2249
-PEM_write_bio_X509_REQ_NEW              2250
-PEM_write_X509_REQ_NEW                  2251
-BIO_callback_ctrl                       2252
-RAND_egd                                2253
-RAND_status                             2254
-bn_dump1                                2255
-des_check_key_parity                    2256
-lh_num_items                            2257
-RAND_event                              2258
-DSO_new                                 2259
-DSO_new_method                          2260
-DSO_free                                2261
-DSO_flags                               2262
-DSO_up                                  2263
-DSO_set_default_method                  2264
-DSO_get_default_method                  2265
-DSO_get_method                          2266
-DSO_set_method                          2267
-DSO_load                                2268
-DSO_bind_var                            2269
-DSO_METHOD_null                         2270
-DSO_METHOD_openssl                      2271
-DSO_METHOD_dlfcn                        2272
-DSO_METHOD_win32                        2273
-ERR_load_DSO_strings                    2274
-DSO_METHOD_dl                           2275
-NCONF_load                              2276
-NCONF_load_fp                           2278
-NCONF_new                               2279
-NCONF_get_string                        2280
-NCONF_free                              2281
-NCONF_get_number                        2282
-CONF_dump_fp                            2283
-NCONF_load_bio                          2284
-NCONF_dump_fp                           2285
-NCONF_get_section                       2286
-NCONF_dump_bio                          2287
-CONF_dump_bio                           2288
-NCONF_free_data                         2289
-CONF_set_default_method                 2290
-ERR_error_string_n                      2291
-BIO_snprintf                            2292
-DSO_ctrl                                2293
-i2d_ASN1_SET_OF_ASN1_INTEGER            2317
-i2d_ASN1_SET_OF_PKCS12_SAFEBAG          2320
-i2d_ASN1_SET_OF_PKCS7                   2328
-BIO_vfree                               2334
-d2i_ASN1_SET_OF_ASN1_INTEGER            2339
-d2i_ASN1_SET_OF_PKCS12_SAFEBAG          2341
-ASN1_UTCTIME_get                        2350
-X509_REQ_digest                         2362
-X509_CRL_digest                         2391
-d2i_ASN1_SET_OF_PKCS7                   2397
-EVP_CIPHER_CTX_set_key_length           2399
-EVP_CIPHER_CTX_ctrl                     2400
-BN_mod_exp_mont_word                    2401
-RAND_egd_bytes                          2402
-X509_REQ_get1_email                     2403
-X509_get1_email                         2404
-X509_email_free                         2405
-i2d_RSA_NET                             2406
-d2i_RSA_NET_2                           2407
-d2i_RSA_NET                             2408
-DSO_bind_func                           2409
-CRYPTO_get_new_dynlockid                2410
-sk_new_null                             2411
-CRYPTO_set_dynlock_destroy_callback     2412
-CRYPTO_destroy_dynlockid                2413
-CRYPTO_set_dynlock_size                 2414
-CRYPTO_set_dynlock_create_callback      2415
-CRYPTO_set_dynlock_lock_callback        2416
-CRYPTO_get_dynlock_lock_callback        2417
-CRYPTO_get_dynlock_destroy_callback     2418
-CRYPTO_get_dynlock_value                2419
-CRYPTO_get_dynlock_create_callback      2420
-c2i_ASN1_BIT_STRING                     2421
-i2c_ASN1_BIT_STRING                     2422
-RAND_poll                               2423
-c2i_ASN1_INTEGER                        2424
-i2c_ASN1_INTEGER                        2425
-ERR_load_ENGINE_strings                 2426
-ENGINE_set_DSA                          2427
-ENGINE_get_finish_function              2428
-ENGINE_get_default_RSA                  2429
-BIO_dump_indent                         2430
-ENGINE_get_BN_mod_exp                   2431
-ASN1_parse_dump                         2432
-DSA_get_default_openssl_method          2433
-c2i_ASN1_OBJECT                         2434
-ENGINE_set_DH                           2435
-ENGINE_set_default_BN_mod_exp_crt       2436
-ENGINE_init                             2437
-DH_get_default_openssl_method           2438
-RSA_set_default_openssl_method          2439
-ENGINE_finish                           2440
-ENGINE_load_public_key                  2441
-ENGINE_get_DH                           2442
-ENGINE_ctrl                             2443
-ENGINE_get_init_function                2444
-ENGINE_set_init_function                2445
-ENGINE_set_default_DSA                  2446
-ENGINE_get_name                         2447
-ENGINE_get_last                         2448
-ENGINE_get_prev                         2449
-ENGINE_get_default_DH                   2450
-ENGINE_get_RSA                          2451
-X509_NAME_print_ex_fp                   2452
-ASN1_STRING_print_ex_fp                 2453
-ENGINE_set_default                      2454
-ENGINE_get_RAND                         2455
-ENGINE_get_first                        2456
-ENGINE_by_id                            2457
-ENGINE_set_finish_function              2458
-ENGINE_get_default_BN_mod_exp_crt       2459
-RSA_get_default_openssl_method          2460
-ENGINE_set_RSA                          2461
-ENGINE_load_private_key                 2462
-ENGINE_set_default_RAND                 2463
-ENGINE_set_BN_mod_exp                   2464
-ENGINE_remove                           2465
-ENGINE_free                             2466
-ENGINE_get_BN_mod_exp_crt               2467
-ENGINE_get_next                         2468
-ENGINE_set_name                         2469
-ENGINE_get_default_DSA                  2470
-ENGINE_set_default_BN_mod_exp           2471
-ENGINE_set_default_RSA                  2472
-ENGINE_get_default_RAND                 2473
-ENGINE_get_default_BN_mod_exp           2474
-ENGINE_set_RAND                         2475
-ENGINE_set_id                           2476
-X509_NAME_print_ex                      2477
-ENGINE_set_BN_mod_exp_crt               2478
-ENGINE_set_default_DH                   2479
-ENGINE_new                              2480
-ENGINE_get_id                           2481
-DSA_set_default_openssl_method          2482
-ENGINE_add                              2483
-DH_set_default_openssl_method           2484
-ASN1_STRING_print_ex                    2485
-ENGINE_get_DSA                          2486
-ENGINE_get_ctrl_function                2487
-ENGINE_set_ctrl_function                2488
+SSLeay                                  1      EXIST::FUNCTION:
+SSLeay_version                          2      EXIST::FUNCTION:
+ASN1_BIT_STRING_asn1_meth               3      EXIST::FUNCTION:
+ASN1_HEADER_free                        4      EXIST::FUNCTION:
+ASN1_HEADER_new                         5      EXIST::FUNCTION:
+ASN1_IA5STRING_asn1_meth                6      EXIST::FUNCTION:
+ASN1_INTEGER_get                        7      EXIST::FUNCTION:
+ASN1_INTEGER_set                        8      EXIST::FUNCTION:
+ASN1_INTEGER_to_BN                      9      EXIST::FUNCTION:
+ASN1_OBJECT_create                      10     EXIST::FUNCTION:
+ASN1_OBJECT_free                        11     EXIST::FUNCTION:
+ASN1_OBJECT_new                         12     EXIST::FUNCTION:
+ASN1_PRINTABLE_type                     13     EXIST::FUNCTION:
+ASN1_STRING_cmp                         14     EXIST::FUNCTION:
+ASN1_STRING_dup                         15     EXIST::FUNCTION:
+ASN1_STRING_free                        16     EXIST::FUNCTION:
+ASN1_STRING_new                         17     EXIST::FUNCTION:
+ASN1_STRING_print                       18     EXIST::FUNCTION:
+ASN1_STRING_set                         19     EXIST::FUNCTION:
+ASN1_STRING_type_new                    20     EXIST::FUNCTION:
+ASN1_TYPE_free                          21     EXIST::FUNCTION:
+ASN1_TYPE_new                           22     EXIST::FUNCTION:
+ASN1_UNIVERSALSTRING_to_string          23     EXIST::FUNCTION:
+ASN1_UTCTIME_check                      24     EXIST::FUNCTION:
+ASN1_UTCTIME_print                      25     EXIST::FUNCTION:
+ASN1_UTCTIME_set                        26     EXIST::FUNCTION:
+ASN1_check_infinite_end                 27     EXIST::FUNCTION:
+ASN1_d2i_bio                            28     EXIST::FUNCTION:
+ASN1_d2i_fp                             29     EXIST::FUNCTION:FP_API
+ASN1_digest                             30     EXIST::FUNCTION:
+ASN1_dup                                31     EXIST::FUNCTION:
+ASN1_get_object                         32     EXIST::FUNCTION:
+ASN1_i2d_bio                            33     EXIST::FUNCTION:
+ASN1_i2d_fp                             34     EXIST::FUNCTION:FP_API
+ASN1_object_size                        35     EXIST::FUNCTION:
+ASN1_parse                              36     EXIST::FUNCTION:
+ASN1_put_object                         37     EXIST::FUNCTION:
+ASN1_sign                               38     EXIST::FUNCTION:
+ASN1_verify                             39     EXIST::FUNCTION:
+BF_cbc_encrypt                          40     EXIST::FUNCTION:BF
+BF_cfb64_encrypt                        41     EXIST::FUNCTION:BF
+BF_ecb_encrypt                          42     EXIST::FUNCTION:BF
+BF_encrypt                              43     EXIST::FUNCTION:BF
+BF_ofb64_encrypt                        44     EXIST::FUNCTION:BF
+BF_options                              45     EXIST::FUNCTION:BF
+BF_set_key                              46     EXIST::FUNCTION:BF
+BIO_CONNECT_free                        47     NOEXIST::FUNCTION:
+BIO_CONNECT_new                         48     NOEXIST::FUNCTION:
+BIO_accept                              51     EXIST::FUNCTION:
+BIO_ctrl                                52     EXIST::FUNCTION:
+BIO_int_ctrl                            53     EXIST::FUNCTION:
+BIO_debug_callback                      54     EXIST::FUNCTION:
+BIO_dump                                55     EXIST::FUNCTION:
+BIO_dup_chain                           56     EXIST::FUNCTION:
+BIO_f_base64                            57     EXIST::FUNCTION:
+BIO_f_buffer                            58     EXIST::FUNCTION:
+BIO_f_cipher                            59     EXIST::FUNCTION:
+BIO_f_md                                60     EXIST::FUNCTION:
+BIO_f_null                              61     EXIST::FUNCTION:
+BIO_f_proxy_server                      62     NOEXIST::FUNCTION:
+BIO_fd_non_fatal_error                  63     EXIST::FUNCTION:
+BIO_fd_should_retry                     64     EXIST::FUNCTION:
+BIO_find_type                           65     EXIST::FUNCTION:
+BIO_free                                66     EXIST::FUNCTION:
+BIO_free_all                            67     EXIST::FUNCTION:
+BIO_get_accept_socket                   69     EXIST::FUNCTION:
+BIO_get_filter_bio                      70     NOEXIST::FUNCTION:
+BIO_get_host_ip                         71     EXIST::FUNCTION:
+BIO_get_port                            72     EXIST::FUNCTION:
+BIO_get_retry_BIO                       73     EXIST::FUNCTION:
+BIO_get_retry_reason                    74     EXIST::FUNCTION:
+BIO_gethostbyname                       75     EXIST::FUNCTION:
+BIO_gets                                76     EXIST::FUNCTION:
+BIO_new                                 78     EXIST::FUNCTION:
+BIO_new_accept                          79     EXIST::FUNCTION:
+BIO_new_connect                         80     EXIST::FUNCTION:
+BIO_new_fd                              81     EXIST::FUNCTION:
+BIO_new_file                            82     EXIST:!WIN16:FUNCTION:FP_API
+BIO_new_fp                              83     EXIST:!WIN16:FUNCTION:FP_API
+BIO_new_socket                          84     EXIST::FUNCTION:
+BIO_pop                                 85     EXIST::FUNCTION:
+BIO_printf                              86     EXIST::FUNCTION:
+BIO_push                                87     EXIST::FUNCTION:
+BIO_puts                                88     EXIST::FUNCTION:
+BIO_read                                89     EXIST::FUNCTION:
+BIO_s_accept                            90     EXIST::FUNCTION:
+BIO_s_connect                           91     EXIST::FUNCTION:
+BIO_s_fd                                92     EXIST::FUNCTION:
+BIO_s_file                              93     EXIST:!WIN16:FUNCTION:FP_API
+BIO_s_mem                               95     EXIST::FUNCTION:
+BIO_s_null                              96     EXIST::FUNCTION:
+BIO_s_proxy_client                      97     NOEXIST::FUNCTION:
+BIO_s_socket                            98     EXIST::FUNCTION:
+BIO_set                                 100    EXIST::FUNCTION:
+BIO_set_cipher                          101    EXIST::FUNCTION:
+BIO_set_tcp_ndelay                      102    EXIST::FUNCTION:
+BIO_sock_cleanup                        103    EXIST::FUNCTION:
+BIO_sock_error                          104    EXIST::FUNCTION:
+BIO_sock_init                           105    EXIST::FUNCTION:
+BIO_sock_non_fatal_error                106    EXIST::FUNCTION:
+BIO_sock_should_retry                   107    EXIST::FUNCTION:
+BIO_socket_ioctl                        108    EXIST::FUNCTION:
+BIO_write                               109    EXIST::FUNCTION:
+BN_CTX_free                             110    EXIST::FUNCTION:
+BN_CTX_new                              111    EXIST::FUNCTION:
+BN_MONT_CTX_free                        112    EXIST::FUNCTION:
+BN_MONT_CTX_new                         113    EXIST::FUNCTION:
+BN_MONT_CTX_set                         114    EXIST::FUNCTION:
+BN_add                                  115    EXIST::FUNCTION:
+BN_add_word                             116    EXIST::FUNCTION:
+BN_hex2bn                               117    EXIST::FUNCTION:
+BN_bin2bn                               118    EXIST::FUNCTION:
+BN_bn2hex                               119    EXIST::FUNCTION:
+BN_bn2bin                               120    EXIST::FUNCTION:
+BN_clear                                121    EXIST::FUNCTION:
+BN_clear_bit                            122    EXIST::FUNCTION:
+BN_clear_free                           123    EXIST::FUNCTION:
+BN_cmp                                  124    EXIST::FUNCTION:
+BN_copy                                 125    EXIST::FUNCTION:
+BN_div                                  126    EXIST::FUNCTION:
+BN_div_word                             127    EXIST::FUNCTION:
+BN_dup                                  128    EXIST::FUNCTION:
+BN_free                                 129    EXIST::FUNCTION:
+BN_from_montgomery                      130    EXIST::FUNCTION:
+BN_gcd                                  131    EXIST::FUNCTION:
+BN_generate_prime                       132    EXIST::FUNCTION:
+BN_get_word                             133    EXIST::FUNCTION:
+BN_is_bit_set                           134    EXIST::FUNCTION:
+BN_is_prime                             135    EXIST::FUNCTION:
+BN_lshift                               136    EXIST::FUNCTION:
+BN_lshift1                              137    EXIST::FUNCTION:
+BN_mask_bits                            138    EXIST::FUNCTION:
+BN_mod                                  139    EXIST::FUNCTION:
+BN_mod_exp                              140    EXIST::FUNCTION:
+BN_mod_exp_mont                         141    EXIST::FUNCTION:
+BN_mod_exp_simple                       143    EXIST::FUNCTION:
+BN_mod_inverse                          144    EXIST::FUNCTION:
+BN_mod_mul                              145    EXIST::FUNCTION:
+BN_mod_mul_montgomery                   146    EXIST::FUNCTION:
+BN_mod_word                             148    EXIST::FUNCTION:
+BN_mul                                  149    EXIST::FUNCTION:
+BN_new                                  150    EXIST::FUNCTION:
+BN_num_bits                             151    EXIST::FUNCTION:
+BN_num_bits_word                        152    EXIST::FUNCTION:
+BN_options                              153    EXIST::FUNCTION:
+BN_print                                154    EXIST::FUNCTION:
+BN_print_fp                             155    EXIST::FUNCTION:FP_API
+BN_rand                                 156    EXIST::FUNCTION:
+BN_reciprocal                           157    EXIST::FUNCTION:
+BN_rshift                               158    EXIST::FUNCTION:
+BN_rshift1                              159    EXIST::FUNCTION:
+BN_set_bit                              160    EXIST::FUNCTION:
+BN_set_word                             161    EXIST::FUNCTION:
+BN_sqr                                  162    EXIST::FUNCTION:
+BN_sub                                  163    EXIST::FUNCTION:
+BN_to_ASN1_INTEGER                      164    EXIST::FUNCTION:
+BN_ucmp                                 165    EXIST::FUNCTION:
+BN_value_one                            166    EXIST::FUNCTION:
+BUF_MEM_free                            167    EXIST::FUNCTION:
+BUF_MEM_grow                            168    EXIST::FUNCTION:
+BUF_MEM_new                             169    EXIST::FUNCTION:
+BUF_strdup                              170    EXIST::FUNCTION:
+CONF_free                               171    EXIST::FUNCTION:
+CONF_get_number                         172    EXIST::FUNCTION:
+CONF_get_section                        173    EXIST::FUNCTION:
+CONF_get_string                         174    EXIST::FUNCTION:
+CONF_load                               175    EXIST::FUNCTION:
+CRYPTO_add_lock                         176    EXIST::FUNCTION:
+CRYPTO_dbg_free                         177    EXIST::FUNCTION:
+CRYPTO_dbg_malloc                       178    EXIST::FUNCTION:
+CRYPTO_dbg_realloc                      179    EXIST::FUNCTION:
+CRYPTO_dbg_remalloc                     180    NOEXIST::FUNCTION:
+CRYPTO_free                             181    EXIST::FUNCTION:
+CRYPTO_get_add_lock_callback            182    EXIST::FUNCTION:
+CRYPTO_get_id_callback                  183    EXIST::FUNCTION:
+CRYPTO_get_lock_name                    184    EXIST::FUNCTION:
+CRYPTO_get_locking_callback             185    EXIST::FUNCTION:
+CRYPTO_get_mem_functions                186    EXIST::FUNCTION:
+CRYPTO_lock                             187    EXIST::FUNCTION:
+CRYPTO_malloc                           188    EXIST::FUNCTION:
+CRYPTO_mem_ctrl                         189    EXIST::FUNCTION:
+CRYPTO_mem_leaks                        190    EXIST::FUNCTION:
+CRYPTO_mem_leaks_cb                     191    EXIST::FUNCTION:
+CRYPTO_mem_leaks_fp                     192    EXIST::FUNCTION:FP_API
+CRYPTO_realloc                          193    EXIST::FUNCTION:
+CRYPTO_remalloc                         194    EXIST::FUNCTION:
+CRYPTO_set_add_lock_callback            195    EXIST::FUNCTION:
+CRYPTO_set_id_callback                  196    EXIST::FUNCTION:
+CRYPTO_set_locking_callback             197    EXIST::FUNCTION:
+CRYPTO_set_mem_functions                198    EXIST::FUNCTION:
+CRYPTO_thread_id                        199    EXIST::FUNCTION:
+DH_check                                200    EXIST::FUNCTION:DH
+DH_compute_key                          201    EXIST::FUNCTION:DH
+DH_free                                 202    EXIST::FUNCTION:DH
+DH_generate_key                         203    EXIST::FUNCTION:DH
+DH_generate_parameters                  204    EXIST::FUNCTION:DH
+DH_new                                  205    EXIST::FUNCTION:DH
+DH_size                                 206    EXIST::FUNCTION:DH
+DHparams_print                          207    EXIST::FUNCTION:DH
+DHparams_print_fp                       208    EXIST::FUNCTION:DH,FP_API
+DSA_free                                209    EXIST::FUNCTION:DSA
+DSA_generate_key                        210    EXIST::FUNCTION:DSA
+DSA_generate_parameters                 211    EXIST::FUNCTION:DSA
+DSA_is_prime                            212    NOEXIST::FUNCTION:
+DSA_new                                 213    EXIST::FUNCTION:DSA
+DSA_print                               214    EXIST::FUNCTION:DSA
+DSA_print_fp                            215    EXIST::FUNCTION:DSA,FP_API
+DSA_sign                                216    EXIST::FUNCTION:DSA
+DSA_sign_setup                          217    EXIST::FUNCTION:DSA
+DSA_size                                218    EXIST::FUNCTION:DSA
+DSA_verify                              219    EXIST::FUNCTION:DSA
+DSAparams_print                         220    EXIST::FUNCTION:DSA
+DSAparams_print_fp                      221    EXIST::FUNCTION:DSA,FP_API
+ERR_clear_error                         222    EXIST::FUNCTION:
+ERR_error_string                        223    EXIST::FUNCTION:
+ERR_free_strings                        224    EXIST::FUNCTION:
+ERR_func_error_string                   225    EXIST::FUNCTION:
+ERR_get_err_state_table                 226    EXIST::FUNCTION:
+ERR_get_error                           227    EXIST::FUNCTION:
+ERR_get_error_line                      228    EXIST::FUNCTION:
+ERR_get_state                           229    EXIST::FUNCTION:
+ERR_get_string_table                    230    EXIST::FUNCTION:
+ERR_lib_error_string                    231    EXIST::FUNCTION:
+ERR_load_ASN1_strings                   232    EXIST::FUNCTION:
+ERR_load_BIO_strings                    233    EXIST::FUNCTION:
+ERR_load_BN_strings                     234    EXIST::FUNCTION:
+ERR_load_BUF_strings                    235    EXIST::FUNCTION:
+ERR_load_CONF_strings                   236    EXIST::FUNCTION:
+ERR_load_DH_strings                     237    EXIST::FUNCTION:DH
+ERR_load_DSA_strings                    238    EXIST::FUNCTION:DSA
+ERR_load_ERR_strings                    239    EXIST::FUNCTION:
+ERR_load_EVP_strings                    240    EXIST::FUNCTION:
+ERR_load_OBJ_strings                    241    EXIST::FUNCTION:
+ERR_load_PEM_strings                    242    EXIST::FUNCTION:
+ERR_load_PROXY_strings                  243    NOEXIST::FUNCTION:
+ERR_load_RSA_strings                    244    EXIST::FUNCTION:RSA
+ERR_load_X509_strings                   245    EXIST::FUNCTION:
+ERR_load_crypto_strings                 246    EXIST::FUNCTION:
+ERR_load_strings                        247    EXIST::FUNCTION:
+ERR_peek_error                          248    EXIST::FUNCTION:
+ERR_peek_error_line                     249    EXIST::FUNCTION:
+ERR_print_errors                        250    EXIST::FUNCTION:
+ERR_print_errors_fp                     251    EXIST::FUNCTION:FP_API
+ERR_put_error                           252    EXIST::FUNCTION:
+ERR_reason_error_string                 253    EXIST::FUNCTION:
+ERR_remove_state                        254    EXIST::FUNCTION:
+EVP_BytesToKey                          255    EXIST::FUNCTION:
+EVP_CIPHER_CTX_cleanup                  256    EXIST::FUNCTION:
+EVP_CipherFinal                         257    EXIST::FUNCTION:
+EVP_CipherInit                          258    EXIST::FUNCTION:
+EVP_CipherUpdate                        259    EXIST::FUNCTION:
+EVP_DecodeBlock                         260    EXIST::FUNCTION:
+EVP_DecodeFinal                         261    EXIST::FUNCTION:
+EVP_DecodeInit                          262    EXIST::FUNCTION:
+EVP_DecodeUpdate                        263    EXIST::FUNCTION:
+EVP_DecryptFinal                        264    EXIST::FUNCTION:
+EVP_DecryptInit                         265    EXIST::FUNCTION:
+EVP_DecryptUpdate                       266    EXIST::FUNCTION:
+EVP_DigestFinal                         267    EXIST::FUNCTION:
+EVP_DigestInit                          268    EXIST::FUNCTION:
+EVP_DigestUpdate                        269    EXIST::FUNCTION:
+EVP_EncodeBlock                         270    EXIST::FUNCTION:
+EVP_EncodeFinal                         271    EXIST::FUNCTION:
+EVP_EncodeInit                          272    EXIST::FUNCTION:
+EVP_EncodeUpdate                        273    EXIST::FUNCTION:
+EVP_EncryptFinal                        274    EXIST::FUNCTION:
+EVP_EncryptInit                         275    EXIST::FUNCTION:
+EVP_EncryptUpdate                       276    EXIST::FUNCTION:
+EVP_OpenFinal                           277    EXIST::FUNCTION:RSA
+EVP_OpenInit                            278    EXIST::FUNCTION:RSA
+EVP_PKEY_assign                         279    EXIST::FUNCTION:
+EVP_PKEY_copy_parameters                280    EXIST::FUNCTION:
+EVP_PKEY_free                           281    EXIST::FUNCTION:
+EVP_PKEY_missing_parameters             282    EXIST::FUNCTION:
+EVP_PKEY_new                            283    EXIST::FUNCTION:
+EVP_PKEY_save_parameters                284    EXIST::FUNCTION:
+EVP_PKEY_size                           285    EXIST::FUNCTION:
+EVP_PKEY_type                           286    EXIST::FUNCTION:
+EVP_SealFinal                           287    EXIST::FUNCTION:RSA
+EVP_SealInit                            288    EXIST::FUNCTION:RSA
+EVP_SignFinal                           289    EXIST::FUNCTION:
+EVP_VerifyFinal                         290    EXIST::FUNCTION:
+EVP_add_alias                           291    NOEXIST::FUNCTION:
+EVP_add_cipher                          292    EXIST::FUNCTION:
+EVP_add_digest                          293    EXIST::FUNCTION:
+EVP_bf_cbc                              294    EXIST::FUNCTION:BF
+EVP_bf_cfb                              295    EXIST::FUNCTION:BF
+EVP_bf_ecb                              296    EXIST::FUNCTION:BF
+EVP_bf_ofb                              297    EXIST::FUNCTION:BF
+EVP_cleanup                             298    EXIST::FUNCTION:
+EVP_des_cbc                             299    EXIST::FUNCTION:DES
+EVP_des_cfb                             300    EXIST::FUNCTION:DES
+EVP_des_ecb                             301    EXIST::FUNCTION:DES
+EVP_des_ede                             302    EXIST::FUNCTION:DES
+EVP_des_ede3                            303    EXIST::FUNCTION:DES
+EVP_des_ede3_cbc                        304    EXIST::FUNCTION:DES
+EVP_des_ede3_cfb                        305    EXIST::FUNCTION:DES
+EVP_des_ede3_ofb                        306    EXIST::FUNCTION:DES
+EVP_des_ede_cbc                         307    EXIST::FUNCTION:DES
+EVP_des_ede_cfb                         308    EXIST::FUNCTION:DES
+EVP_des_ede_ofb                         309    EXIST::FUNCTION:DES
+EVP_des_ofb                             310    EXIST::FUNCTION:DES
+EVP_desx_cbc                            311    EXIST::FUNCTION:DES
+EVP_dss                                 312    EXIST::FUNCTION:DSA
+EVP_dss1                                313    EXIST::FUNCTION:DSA
+EVP_enc_null                            314    EXIST::FUNCTION:
+EVP_get_cipherbyname                    315    EXIST::FUNCTION:
+EVP_get_digestbyname                    316    EXIST::FUNCTION:
+EVP_get_pw_prompt                       317    EXIST::FUNCTION:
+EVP_idea_cbc                            318    EXIST::FUNCTION:IDEA
+EVP_idea_cfb                            319    EXIST::FUNCTION:IDEA
+EVP_idea_ecb                            320    EXIST::FUNCTION:IDEA
+EVP_idea_ofb                            321    EXIST::FUNCTION:IDEA
+EVP_md2                                 322    EXIST::FUNCTION:MD2
+EVP_md5                                 323    EXIST::FUNCTION:MD5
+EVP_md_null                             324    EXIST::FUNCTION:
+EVP_rc2_cbc                             325    EXIST::FUNCTION:RC2
+EVP_rc2_cfb                             326    EXIST::FUNCTION:RC2
+EVP_rc2_ecb                             327    EXIST::FUNCTION:RC2
+EVP_rc2_ofb                             328    EXIST::FUNCTION:RC2
+EVP_rc4                                 329    EXIST::FUNCTION:RC4
+EVP_read_pw_string                      330    EXIST::FUNCTION:
+EVP_set_pw_prompt                       331    EXIST::FUNCTION:
+EVP_sha                                 332    EXIST::FUNCTION:SHA
+EVP_sha1                                333    EXIST::FUNCTION:SHA
+MD2                                     334    EXIST::FUNCTION:MD2
+MD2_Final                               335    EXIST::FUNCTION:MD2
+MD2_Init                                336    EXIST::FUNCTION:MD2
+MD2_Update                              337    EXIST::FUNCTION:MD2
+MD2_options                             338    EXIST::FUNCTION:MD2
+MD5                                     339    EXIST::FUNCTION:MD5
+MD5_Final                               340    EXIST::FUNCTION:MD5
+MD5_Init                                341    EXIST::FUNCTION:MD5
+MD5_Update                              342    EXIST::FUNCTION:MD5
+MDC2                                    343    EXIST::FUNCTION:MDC2
+MDC2_Final                              344    EXIST::FUNCTION:MDC2
+MDC2_Init                               345    EXIST::FUNCTION:MDC2
+MDC2_Update                             346    EXIST::FUNCTION:MDC2
+NETSCAPE_SPKAC_free                     347    EXIST::FUNCTION:
+NETSCAPE_SPKAC_new                      348    EXIST::FUNCTION:
+NETSCAPE_SPKI_free                      349    EXIST::FUNCTION:
+NETSCAPE_SPKI_new                       350    EXIST::FUNCTION:
+NETSCAPE_SPKI_sign                      351    EXIST::FUNCTION:
+NETSCAPE_SPKI_verify                    352    EXIST::FUNCTION:
+OBJ_add_object                          353    EXIST::FUNCTION:
+OBJ_bsearch                             354    EXIST::FUNCTION:
+OBJ_cleanup                             355    EXIST::FUNCTION:
+OBJ_cmp                                 356    EXIST::FUNCTION:
+OBJ_create                              357    EXIST::FUNCTION:
+OBJ_dup                                 358    EXIST::FUNCTION:
+OBJ_ln2nid                              359    EXIST::FUNCTION:
+OBJ_new_nid                             360    EXIST::FUNCTION:
+OBJ_nid2ln                              361    EXIST::FUNCTION:
+OBJ_nid2obj                             362    EXIST::FUNCTION:
+OBJ_nid2sn                              363    EXIST::FUNCTION:
+OBJ_obj2nid                             364    EXIST::FUNCTION:
+OBJ_sn2nid                              365    EXIST::FUNCTION:
+OBJ_txt2nid                             366    EXIST::FUNCTION:
+PEM_ASN1_read                           367    EXIST:!WIN16:FUNCTION:
+PEM_ASN1_read_bio                       368    EXIST::FUNCTION:
+PEM_ASN1_write                          369    EXIST:!WIN16:FUNCTION:
+PEM_ASN1_write_bio                      370    EXIST::FUNCTION:
+PEM_SealFinal                           371    EXIST::FUNCTION:RSA
+PEM_SealInit                            372    EXIST::FUNCTION:RSA
+PEM_SealUpdate                          373    EXIST::FUNCTION:RSA
+PEM_SignFinal                           374    EXIST::FUNCTION:
+PEM_SignInit                            375    EXIST::FUNCTION:
+PEM_SignUpdate                          376    EXIST::FUNCTION:
+PEM_X509_INFO_read                      377    EXIST:!WIN16:FUNCTION:
+PEM_X509_INFO_read_bio                  378    EXIST::FUNCTION:
+PEM_X509_INFO_write_bio                 379    EXIST::FUNCTION:
+PEM_dek_info                            380    EXIST::FUNCTION:
+PEM_do_header                           381    EXIST::FUNCTION:
+PEM_get_EVP_CIPHER_INFO                 382    EXIST::FUNCTION:
+PEM_proc_type                           383    EXIST::FUNCTION:
+PEM_read                                384    EXIST:!WIN16:FUNCTION:
+PEM_read_DHparams                       385    EXIST:!WIN16:FUNCTION:DH
+PEM_read_DSAPrivateKey                  386    EXIST:!WIN16:FUNCTION:DSA
+PEM_read_DSAparams                      387    EXIST:!WIN16:FUNCTION:DSA
+PEM_read_PKCS7                          388    EXIST:!WIN16:FUNCTION:
+PEM_read_PrivateKey                     389    EXIST:!WIN16:FUNCTION:
+PEM_read_RSAPrivateKey                  390    EXIST:!WIN16:FUNCTION:RSA
+PEM_read_X509                           391    EXIST:!WIN16:FUNCTION:
+PEM_read_X509_CRL                       392    EXIST:!WIN16:FUNCTION:
+PEM_read_X509_REQ                       393    EXIST:!WIN16:FUNCTION:
+PEM_read_bio                            394    EXIST::FUNCTION:
+PEM_read_bio_DHparams                   395    EXIST::FUNCTION:DH
+PEM_read_bio_DSAPrivateKey              396    EXIST::FUNCTION:DSA
+PEM_read_bio_DSAparams                  397    EXIST::FUNCTION:DSA
+PEM_read_bio_PKCS7                      398    EXIST::FUNCTION:
+PEM_read_bio_PrivateKey                 399    EXIST::FUNCTION:
+PEM_read_bio_RSAPrivateKey              400    EXIST::FUNCTION:RSA
+PEM_read_bio_X509                       401    EXIST::FUNCTION:
+PEM_read_bio_X509_CRL                   402    EXIST::FUNCTION:
+PEM_read_bio_X509_REQ                   403    EXIST::FUNCTION:
+PEM_write                               404    EXIST:!WIN16:FUNCTION:
+PEM_write_DHparams                      405    EXIST:!WIN16:FUNCTION:DH
+PEM_write_DSAPrivateKey                 406    EXIST:!WIN16:FUNCTION:DSA
+PEM_write_DSAparams                     407    EXIST:!WIN16:FUNCTION:DSA
+PEM_write_PKCS7                         408    EXIST:!WIN16:FUNCTION:
+PEM_write_PrivateKey                    409    EXIST:!WIN16:FUNCTION:
+PEM_write_RSAPrivateKey                 410    EXIST:!WIN16:FUNCTION:RSA
+PEM_write_X509                          411    EXIST:!WIN16:FUNCTION:
+PEM_write_X509_CRL                      412    EXIST:!WIN16:FUNCTION:
+PEM_write_X509_REQ                      413    EXIST:!WIN16:FUNCTION:
+PEM_write_bio                           414    EXIST::FUNCTION:
+PEM_write_bio_DHparams                  415    EXIST::FUNCTION:DH
+PEM_write_bio_DSAPrivateKey             416    EXIST::FUNCTION:DSA
+PEM_write_bio_DSAparams                 417    EXIST::FUNCTION:DSA
+PEM_write_bio_PKCS7                     418    EXIST::FUNCTION:
+PEM_write_bio_PrivateKey                419    EXIST::FUNCTION:
+PEM_write_bio_RSAPrivateKey             420    EXIST::FUNCTION:RSA
+PEM_write_bio_X509                      421    EXIST::FUNCTION:
+PEM_write_bio_X509_CRL                  422    EXIST::FUNCTION:
+PEM_write_bio_X509_REQ                  423    EXIST::FUNCTION:
+PKCS7_DIGEST_free                       424    EXIST::FUNCTION:
+PKCS7_DIGEST_new                        425    EXIST::FUNCTION:
+PKCS7_ENCRYPT_free                      426    EXIST::FUNCTION:
+PKCS7_ENCRYPT_new                       427    EXIST::FUNCTION:
+PKCS7_ENC_CONTENT_free                  428    EXIST::FUNCTION:
+PKCS7_ENC_CONTENT_new                   429    EXIST::FUNCTION:
+PKCS7_ENVELOPE_free                     430    EXIST::FUNCTION:
+PKCS7_ENVELOPE_new                      431    EXIST::FUNCTION:
+PKCS7_ISSUER_AND_SERIAL_digest          432    EXIST::FUNCTION:
+PKCS7_ISSUER_AND_SERIAL_free            433    EXIST::FUNCTION:
+PKCS7_ISSUER_AND_SERIAL_new             434    EXIST::FUNCTION:
+PKCS7_RECIP_INFO_free                   435    EXIST::FUNCTION:
+PKCS7_RECIP_INFO_new                    436    EXIST::FUNCTION:
+PKCS7_SIGNED_free                       437    EXIST::FUNCTION:
+PKCS7_SIGNED_new                        438    EXIST::FUNCTION:
+PKCS7_SIGNER_INFO_free                  439    EXIST::FUNCTION:
+PKCS7_SIGNER_INFO_new                   440    EXIST::FUNCTION:
+PKCS7_SIGN_ENVELOPE_free                441    EXIST::FUNCTION:
+PKCS7_SIGN_ENVELOPE_new                 442    EXIST::FUNCTION:
+PKCS7_dup                               443    EXIST::FUNCTION:
+PKCS7_free                              444    EXIST::FUNCTION:
+PKCS7_new                               445    EXIST::FUNCTION:
+PROXY_ENTRY_add_noproxy                 446    NOEXIST::FUNCTION:
+PROXY_ENTRY_clear_noproxy               447    NOEXIST::FUNCTION:
+PROXY_ENTRY_free                        448    NOEXIST::FUNCTION:
+PROXY_ENTRY_get_noproxy                 449    NOEXIST::FUNCTION:
+PROXY_ENTRY_new                         450    NOEXIST::FUNCTION:
+PROXY_ENTRY_set_server                  451    NOEXIST::FUNCTION:
+PROXY_add_noproxy                       452    NOEXIST::FUNCTION:
+PROXY_add_server                        453    NOEXIST::FUNCTION:
+PROXY_check_by_host                     454    NOEXIST::FUNCTION:
+PROXY_check_url                         455    NOEXIST::FUNCTION:
+PROXY_clear_noproxy                     456    NOEXIST::FUNCTION:
+PROXY_free                              457    NOEXIST::FUNCTION:
+PROXY_get_noproxy                       458    NOEXIST::FUNCTION:
+PROXY_get_proxies                       459    NOEXIST::FUNCTION:
+PROXY_get_proxy_entry                   460    NOEXIST::FUNCTION:
+PROXY_load_conf                         461    NOEXIST::FUNCTION:
+PROXY_new                               462    NOEXIST::FUNCTION:
+PROXY_print                             463    NOEXIST::FUNCTION:
+RAND_bytes                              464    EXIST::FUNCTION:
+RAND_cleanup                            465    EXIST::FUNCTION:
+RAND_file_name                          466    EXIST::FUNCTION:
+RAND_load_file                          467    EXIST::FUNCTION:
+RAND_screen                             468    EXIST::FUNCTION:
+RAND_seed                               469    EXIST::FUNCTION:
+RAND_write_file                         470    EXIST::FUNCTION:
+RC2_cbc_encrypt                         471    EXIST::FUNCTION:RC2
+RC2_cfb64_encrypt                       472    EXIST::FUNCTION:RC2
+RC2_ecb_encrypt                         473    EXIST::FUNCTION:RC2
+RC2_encrypt                             474    EXIST::FUNCTION:RC2
+RC2_ofb64_encrypt                       475    EXIST::FUNCTION:RC2
+RC2_set_key                             476    EXIST::FUNCTION:RC2
+RC4                                     477    EXIST::FUNCTION:RC4
+RC4_options                             478    EXIST::FUNCTION:RC4
+RC4_set_key                             479    EXIST::FUNCTION:RC4
+RSAPrivateKey_asn1_meth                 480    EXIST::FUNCTION:RSA
+RSAPrivateKey_dup                       481    EXIST::FUNCTION:RSA
+RSAPublicKey_dup                        482    EXIST::FUNCTION:RSA
+RSA_PKCS1_SSLeay                        483    EXIST::FUNCTION:RSA
+RSA_free                                484    EXIST::FUNCTION:RSA
+RSA_generate_key                        485    EXIST::FUNCTION:RSA
+RSA_new                                 486    EXIST::FUNCTION:RSA
+RSA_new_method                          487    EXIST::FUNCTION:RSA
+RSA_print                               488    EXIST::FUNCTION:RSA
+RSA_print_fp                            489    EXIST::FUNCTION:RSA,FP_API
+RSA_private_decrypt                     490    EXIST::FUNCTION:RSA
+RSA_private_encrypt                     491    EXIST::FUNCTION:RSA
+RSA_public_decrypt                      492    EXIST::FUNCTION:RSA
+RSA_public_encrypt                      493    EXIST::FUNCTION:RSA
+RSA_set_default_method                  494    EXIST::FUNCTION:RSA
+RSA_sign                                495    EXIST::FUNCTION:RSA
+RSA_sign_ASN1_OCTET_STRING              496    EXIST::FUNCTION:RSA
+RSA_size                                497    EXIST::FUNCTION:RSA
+RSA_verify                              498    EXIST::FUNCTION:RSA
+RSA_verify_ASN1_OCTET_STRING            499    EXIST::FUNCTION:RSA
+SHA                                     500    EXIST::FUNCTION:SHA
+SHA1                                    501    EXIST::FUNCTION:SHA
+SHA1_Final                              502    EXIST::FUNCTION:SHA
+SHA1_Init                               503    EXIST::FUNCTION:SHA
+SHA1_Update                             504    EXIST::FUNCTION:SHA
+SHA_Final                               505    EXIST::FUNCTION:SHA
+SHA_Init                                506    EXIST::FUNCTION:SHA
+SHA_Update                              507    EXIST::FUNCTION:SHA
+OpenSSL_add_all_algorithms              508    EXIST::FUNCTION:
+OpenSSL_add_all_ciphers                 509    EXIST::FUNCTION:
+OpenSSL_add_all_digests                 510    EXIST::FUNCTION:
+TXT_DB_create_index                     511    EXIST::FUNCTION:
+TXT_DB_free                             512    EXIST::FUNCTION:
+TXT_DB_get_by_index                     513    EXIST::FUNCTION:
+TXT_DB_insert                           514    EXIST::FUNCTION:
+TXT_DB_read                             515    EXIST::FUNCTION:
+TXT_DB_write                            516    EXIST::FUNCTION:
+X509_ALGOR_free                         517    EXIST::FUNCTION:
+X509_ALGOR_new                          518    EXIST::FUNCTION:
+X509_ATTRIBUTE_free                     519    EXIST::FUNCTION:
+X509_ATTRIBUTE_new                      520    EXIST::FUNCTION:
+X509_CINF_free                          521    EXIST::FUNCTION:
+X509_CINF_new                           522    EXIST::FUNCTION:
+X509_CRL_INFO_free                      523    EXIST::FUNCTION:
+X509_CRL_INFO_new                       524    EXIST::FUNCTION:
+X509_CRL_add_ext                        525    EXIST::FUNCTION:
+X509_CRL_cmp                            526    EXIST::FUNCTION:
+X509_CRL_delete_ext                     527    EXIST::FUNCTION:
+X509_CRL_dup                            528    EXIST::FUNCTION:
+X509_CRL_free                           529    EXIST::FUNCTION:
+X509_CRL_get_ext                        530    EXIST::FUNCTION:
+X509_CRL_get_ext_by_NID                 531    EXIST::FUNCTION:
+X509_CRL_get_ext_by_OBJ                 532    EXIST::FUNCTION:
+X509_CRL_get_ext_by_critical            533    EXIST::FUNCTION:
+X509_CRL_get_ext_count                  534    EXIST::FUNCTION:
+X509_CRL_new                            535    EXIST::FUNCTION:
+X509_CRL_sign                           536    EXIST::FUNCTION:
+X509_CRL_verify                         537    EXIST::FUNCTION:
+X509_EXTENSION_create_by_NID            538    EXIST::FUNCTION:
+X509_EXTENSION_create_by_OBJ            539    EXIST::FUNCTION:
+X509_EXTENSION_dup                      540    EXIST::FUNCTION:
+X509_EXTENSION_free                     541    EXIST::FUNCTION:
+X509_EXTENSION_get_critical             542    EXIST::FUNCTION:
+X509_EXTENSION_get_data                 543    EXIST::FUNCTION:
+X509_EXTENSION_get_object               544    EXIST::FUNCTION:
+X509_EXTENSION_new                      545    EXIST::FUNCTION:
+X509_EXTENSION_set_critical             546    EXIST::FUNCTION:
+X509_EXTENSION_set_data                 547    EXIST::FUNCTION:
+X509_EXTENSION_set_object               548    EXIST::FUNCTION:
+X509_INFO_free                          549    EXIST::FUNCTION:
+X509_INFO_new                           550    EXIST::FUNCTION:
+X509_LOOKUP_by_alias                    551    EXIST::FUNCTION:
+X509_LOOKUP_by_fingerprint              552    EXIST::FUNCTION:
+X509_LOOKUP_by_issuer_serial            553    EXIST::FUNCTION:
+X509_LOOKUP_by_subject                  554    EXIST::FUNCTION:
+X509_LOOKUP_ctrl                        555    EXIST::FUNCTION:
+X509_LOOKUP_file                        556    EXIST::FUNCTION:
+X509_LOOKUP_free                        557    EXIST::FUNCTION:
+X509_LOOKUP_hash_dir                    558    EXIST::FUNCTION:
+X509_LOOKUP_init                        559    EXIST::FUNCTION:
+X509_LOOKUP_new                         560    EXIST::FUNCTION:
+X509_LOOKUP_shutdown                    561    EXIST::FUNCTION:
+X509_NAME_ENTRY_create_by_NID           562    EXIST::FUNCTION:
+X509_NAME_ENTRY_create_by_OBJ           563    EXIST::FUNCTION:
+X509_NAME_ENTRY_dup                     564    EXIST::FUNCTION:
+X509_NAME_ENTRY_free                    565    EXIST::FUNCTION:
+X509_NAME_ENTRY_get_data                566    EXIST::FUNCTION:
+X509_NAME_ENTRY_get_object              567    EXIST::FUNCTION:
+X509_NAME_ENTRY_new                     568    EXIST::FUNCTION:
+X509_NAME_ENTRY_set_data                569    EXIST::FUNCTION:
+X509_NAME_ENTRY_set_object              570    EXIST::FUNCTION:
+X509_NAME_add_entry                     571    EXIST::FUNCTION:
+X509_NAME_cmp                           572    EXIST::FUNCTION:
+X509_NAME_delete_entry                  573    EXIST::FUNCTION:
+X509_NAME_digest                        574    EXIST::FUNCTION:
+X509_NAME_dup                           575    EXIST::FUNCTION:
+X509_NAME_entry_count                   576    EXIST::FUNCTION:
+X509_NAME_free                          577    EXIST::FUNCTION:
+X509_NAME_get_entry                     578    EXIST::FUNCTION:
+X509_NAME_get_index_by_NID              579    EXIST::FUNCTION:
+X509_NAME_get_index_by_OBJ              580    EXIST::FUNCTION:
+X509_NAME_get_text_by_NID               581    EXIST::FUNCTION:
+X509_NAME_get_text_by_OBJ               582    EXIST::FUNCTION:
+X509_NAME_hash                          583    EXIST::FUNCTION:
+X509_NAME_new                           584    EXIST::FUNCTION:
+X509_NAME_oneline                       585    EXIST::FUNCTION:
+X509_NAME_print                         586    EXIST::FUNCTION:
+X509_NAME_set                           587    EXIST::FUNCTION:
+X509_OBJECT_free_contents               588    EXIST::FUNCTION:
+X509_OBJECT_retrieve_by_subject         589    EXIST::FUNCTION:
+X509_OBJECT_up_ref_count                590    EXIST::FUNCTION:
+X509_PKEY_free                          591    EXIST::FUNCTION:
+X509_PKEY_new                           592    EXIST::FUNCTION:
+X509_PUBKEY_free                        593    EXIST::FUNCTION:
+X509_PUBKEY_get                         594    EXIST::FUNCTION:
+X509_PUBKEY_new                         595    EXIST::FUNCTION:
+X509_PUBKEY_set                         596    EXIST::FUNCTION:
+X509_REQ_INFO_free                      597    EXIST::FUNCTION:
+X509_REQ_INFO_new                       598    EXIST::FUNCTION:
+X509_REQ_dup                            599    EXIST::FUNCTION:
+X509_REQ_free                           600    EXIST::FUNCTION:
+X509_REQ_get_pubkey                     601    EXIST::FUNCTION:
+X509_REQ_new                            602    EXIST::FUNCTION:
+X509_REQ_print                          603    EXIST::FUNCTION:
+X509_REQ_print_fp                       604    EXIST::FUNCTION:FP_API
+X509_REQ_set_pubkey                     605    EXIST::FUNCTION:
+X509_REQ_set_subject_name               606    EXIST::FUNCTION:
+X509_REQ_set_version                    607    EXIST::FUNCTION:
+X509_REQ_sign                           608    EXIST::FUNCTION:
+X509_REQ_to_X509                        609    EXIST::FUNCTION:
+X509_REQ_verify                         610    EXIST::FUNCTION:
+X509_REVOKED_add_ext                    611    EXIST::FUNCTION:
+X509_REVOKED_delete_ext                 612    EXIST::FUNCTION:
+X509_REVOKED_free                       613    EXIST::FUNCTION:
+X509_REVOKED_get_ext                    614    EXIST::FUNCTION:
+X509_REVOKED_get_ext_by_NID             615    EXIST::FUNCTION:
+X509_REVOKED_get_ext_by_OBJ             616    EXIST::FUNCTION:
+X509_REVOKED_get_ext_by_critical        617    EXIST:!VMS:FUNCTION:
+X509_REVOKED_get_ext_by_critic          617    EXIST:VMS:FUNCTION:
+X509_REVOKED_get_ext_count              618    EXIST::FUNCTION:
+X509_REVOKED_new                        619    EXIST::FUNCTION:
+X509_SIG_free                           620    EXIST::FUNCTION:
+X509_SIG_new                            621    EXIST::FUNCTION:
+X509_STORE_CTX_cleanup                  622    EXIST::FUNCTION:
+X509_STORE_CTX_init                     623    EXIST::FUNCTION:
+X509_STORE_add_cert                     624    EXIST::FUNCTION:
+X509_STORE_add_lookup                   625    EXIST::FUNCTION:
+X509_STORE_free                         626    EXIST::FUNCTION:
+X509_STORE_get_by_subject               627    EXIST::FUNCTION:
+X509_STORE_load_locations               628    EXIST::FUNCTION:
+X509_STORE_new                          629    EXIST::FUNCTION:
+X509_STORE_set_default_paths            630    EXIST::FUNCTION:
+X509_VAL_free                           631    EXIST::FUNCTION:
+X509_VAL_new                            632    EXIST::FUNCTION:
+X509_add_ext                            633    EXIST::FUNCTION:
+X509_asn1_meth                          634    EXIST::FUNCTION:
+X509_certificate_type                   635    EXIST::FUNCTION:
+X509_check_private_key                  636    EXIST::FUNCTION:
+X509_cmp_current_time                   637    EXIST::FUNCTION:
+X509_delete_ext                         638    EXIST::FUNCTION:
+X509_digest                             639    EXIST::FUNCTION:
+X509_dup                                640    EXIST::FUNCTION:
+X509_free                               641    EXIST::FUNCTION:
+X509_get_default_cert_area              642    EXIST::FUNCTION:
+X509_get_default_cert_dir               643    EXIST::FUNCTION:
+X509_get_default_cert_dir_env           644    EXIST::FUNCTION:
+X509_get_default_cert_file              645    EXIST::FUNCTION:
+X509_get_default_cert_file_env          646    EXIST::FUNCTION:
+X509_get_default_private_dir            647    EXIST::FUNCTION:
+X509_get_ext                            648    EXIST::FUNCTION:
+X509_get_ext_by_NID                     649    EXIST::FUNCTION:
+X509_get_ext_by_OBJ                     650    EXIST::FUNCTION:
+X509_get_ext_by_critical                651    EXIST::FUNCTION:
+X509_get_ext_count                      652    EXIST::FUNCTION:
+X509_get_issuer_name                    653    EXIST::FUNCTION:
+X509_get_pubkey                         654    EXIST::FUNCTION:
+X509_get_pubkey_parameters              655    EXIST::FUNCTION:
+X509_get_serialNumber                   656    EXIST::FUNCTION:
+X509_get_subject_name                   657    EXIST::FUNCTION:
+X509_gmtime_adj                         658    EXIST::FUNCTION:
+X509_issuer_and_serial_cmp              659    EXIST::FUNCTION:
+X509_issuer_and_serial_hash             660    EXIST::FUNCTION:
+X509_issuer_name_cmp                    661    EXIST::FUNCTION:
+X509_issuer_name_hash                   662    EXIST::FUNCTION:
+X509_load_cert_file                     663    EXIST::FUNCTION:
+X509_new                                664    EXIST::FUNCTION:
+X509_print                              665    EXIST::FUNCTION:
+X509_print_fp                           666    EXIST::FUNCTION:FP_API
+X509_set_issuer_name                    667    EXIST::FUNCTION:
+X509_set_notAfter                       668    EXIST::FUNCTION:
+X509_set_notBefore                      669    EXIST::FUNCTION:
+X509_set_pubkey                         670    EXIST::FUNCTION:
+X509_set_serialNumber                   671    EXIST::FUNCTION:
+X509_set_subject_name                   672    EXIST::FUNCTION:
+X509_set_version                        673    EXIST::FUNCTION:
+X509_sign                               674    EXIST::FUNCTION:
+X509_subject_name_cmp                   675    EXIST::FUNCTION:
+X509_subject_name_hash                  676    EXIST::FUNCTION:
+X509_to_X509_REQ                        677    EXIST::FUNCTION:
+X509_verify                             678    EXIST::FUNCTION:
+X509_verify_cert                        679    EXIST::FUNCTION:
+X509_verify_cert_error_string           680    EXIST::FUNCTION:
+X509v3_add_ext                          681    EXIST::FUNCTION:
+X509v3_add_extension                    682    NOEXIST::FUNCTION:
+X509v3_add_netscape_extensions          683    NOEXIST::FUNCTION:
+X509v3_add_standard_extensions          684    NOEXIST::FUNCTION:
+X509v3_cleanup_extensions               685    NOEXIST::FUNCTION:
+X509v3_data_type_by_NID                 686    NOEXIST::FUNCTION:
+X509v3_data_type_by_OBJ                 687    NOEXIST::FUNCTION:
+X509v3_delete_ext                       688    EXIST::FUNCTION:
+X509v3_get_ext                          689    EXIST::FUNCTION:
+X509v3_get_ext_by_NID                   690    EXIST::FUNCTION:
+X509v3_get_ext_by_OBJ                   691    EXIST::FUNCTION:
+X509v3_get_ext_by_critical              692    EXIST::FUNCTION:
+X509v3_get_ext_count                    693    EXIST::FUNCTION:
+X509v3_pack_string                      694    NOEXIST::FUNCTION:
+X509v3_pack_type_by_NID                 695    NOEXIST::FUNCTION:
+X509v3_pack_type_by_OBJ                 696    NOEXIST::FUNCTION:
+X509v3_unpack_string                    697    NOEXIST::FUNCTION:
+_des_crypt                              698    NOEXIST::FUNCTION:
+a2d_ASN1_OBJECT                         699    EXIST::FUNCTION:
+a2i_ASN1_INTEGER                        700    EXIST::FUNCTION:
+a2i_ASN1_STRING                         701    EXIST::FUNCTION:
+asn1_Finish                             702    EXIST::FUNCTION:
+asn1_GetSequence                        703    EXIST::FUNCTION:
+bn_div_words                            704    EXIST::FUNCTION:
+bn_expand2                              705    EXIST::FUNCTION:
+bn_mul_add_words                        706    EXIST::FUNCTION:
+bn_mul_words                            707    EXIST::FUNCTION:
+BN_uadd                                 708    EXIST::FUNCTION:
+BN_usub                                 709    EXIST::FUNCTION:
+bn_sqr_words                            710    EXIST::FUNCTION:
+crypt                                   711    EXIST:!PERL5,!NeXT,!__FreeBSD__:FUNCTION:DES
+d2i_ASN1_BIT_STRING                     712    EXIST::FUNCTION:
+d2i_ASN1_BOOLEAN                        713    EXIST::FUNCTION:
+d2i_ASN1_HEADER                         714    EXIST::FUNCTION:
+d2i_ASN1_IA5STRING                      715    EXIST::FUNCTION:
+d2i_ASN1_INTEGER                        716    EXIST::FUNCTION:
+d2i_ASN1_OBJECT                         717    EXIST::FUNCTION:
+d2i_ASN1_OCTET_STRING                   718    EXIST::FUNCTION:
+d2i_ASN1_PRINTABLE                      719    EXIST::FUNCTION:
+d2i_ASN1_PRINTABLESTRING                720    EXIST::FUNCTION:
+d2i_ASN1_SET                            721    EXIST::FUNCTION:
+d2i_ASN1_T61STRING                      722    EXIST::FUNCTION:
+d2i_ASN1_TYPE                           723    EXIST::FUNCTION:
+d2i_ASN1_UTCTIME                        724    EXIST::FUNCTION:
+d2i_ASN1_bytes                          725    EXIST::FUNCTION:
+d2i_ASN1_type_bytes                     726    EXIST::FUNCTION:
+d2i_DHparams                            727    EXIST::FUNCTION:DH
+d2i_DSAPrivateKey                       728    EXIST::FUNCTION:DSA
+d2i_DSAPrivateKey_bio                   729    EXIST::FUNCTION:DSA
+d2i_DSAPrivateKey_fp                    730    EXIST::FUNCTION:DSA,FP_API
+d2i_DSAPublicKey                        731    EXIST::FUNCTION:DSA
+d2i_DSAparams                           732    EXIST::FUNCTION:DSA
+d2i_NETSCAPE_SPKAC                      733    EXIST::FUNCTION:
+d2i_NETSCAPE_SPKI                       734    EXIST::FUNCTION:
+d2i_Netscape_RSA                        735    EXIST::FUNCTION:RSA
+d2i_PKCS7                               736    EXIST::FUNCTION:
+d2i_PKCS7_DIGEST                        737    EXIST::FUNCTION:
+d2i_PKCS7_ENCRYPT                       738    EXIST::FUNCTION:
+d2i_PKCS7_ENC_CONTENT                   739    EXIST::FUNCTION:
+d2i_PKCS7_ENVELOPE                      740    EXIST::FUNCTION:
+d2i_PKCS7_ISSUER_AND_SERIAL             741    EXIST::FUNCTION:
+d2i_PKCS7_RECIP_INFO                    742    EXIST::FUNCTION:
+d2i_PKCS7_SIGNED                        743    EXIST::FUNCTION:
+d2i_PKCS7_SIGNER_INFO                   744    EXIST::FUNCTION:
+d2i_PKCS7_SIGN_ENVELOPE                 745    EXIST::FUNCTION:
+d2i_PKCS7_bio                           746    EXIST::FUNCTION:
+d2i_PKCS7_fp                            747    EXIST::FUNCTION:FP_API
+d2i_PrivateKey                          748    EXIST::FUNCTION:
+d2i_PublicKey                           749    EXIST::FUNCTION:
+d2i_RSAPrivateKey                       750    EXIST::FUNCTION:RSA
+d2i_RSAPrivateKey_bio                   751    EXIST::FUNCTION:RSA
+d2i_RSAPrivateKey_fp                    752    EXIST::FUNCTION:RSA,FP_API
+d2i_RSAPublicKey                        753    EXIST::FUNCTION:RSA
+d2i_X509                                754    EXIST::FUNCTION:
+d2i_X509_ALGOR                          755    EXIST::FUNCTION:
+d2i_X509_ATTRIBUTE                      756    EXIST::FUNCTION:
+d2i_X509_CINF                           757    EXIST::FUNCTION:
+d2i_X509_CRL                            758    EXIST::FUNCTION:
+d2i_X509_CRL_INFO                       759    EXIST::FUNCTION:
+d2i_X509_CRL_bio                        760    EXIST::FUNCTION:
+d2i_X509_CRL_fp                         761    EXIST::FUNCTION:FP_API
+d2i_X509_EXTENSION                      762    EXIST::FUNCTION:
+d2i_X509_NAME                           763    EXIST::FUNCTION:
+d2i_X509_NAME_ENTRY                     764    EXIST::FUNCTION:
+d2i_X509_PKEY                           765    EXIST::FUNCTION:
+d2i_X509_PUBKEY                         766    EXIST::FUNCTION:
+d2i_X509_REQ                            767    EXIST::FUNCTION:
+d2i_X509_REQ_INFO                       768    EXIST::FUNCTION:
+d2i_X509_REQ_bio                        769    EXIST::FUNCTION:
+d2i_X509_REQ_fp                         770    EXIST::FUNCTION:FP_API
+d2i_X509_REVOKED                        771    EXIST::FUNCTION:
+d2i_X509_SIG                            772    EXIST::FUNCTION:
+d2i_X509_VAL                            773    EXIST::FUNCTION:
+d2i_X509_bio                            774    EXIST::FUNCTION:
+d2i_X509_fp                             775    EXIST::FUNCTION:FP_API
+des_cbc_cksum                           777    EXIST::FUNCTION:DES
+des_cbc_encrypt                         778    EXIST::FUNCTION:DES
+des_cblock_print_file                   779    NOEXIST::FUNCTION:
+des_cfb64_encrypt                       780    EXIST::FUNCTION:DES
+des_cfb_encrypt                         781    EXIST::FUNCTION:DES
+des_decrypt3                            782    EXIST::FUNCTION:DES
+des_ecb3_encrypt                        783    EXIST::FUNCTION:DES
+des_ecb_encrypt                         784    EXIST::FUNCTION:DES
+des_ede3_cbc_encrypt                    785    EXIST::FUNCTION:DES
+des_ede3_cfb64_encrypt                  786    EXIST::FUNCTION:DES
+des_ede3_ofb64_encrypt                  787    EXIST::FUNCTION:DES
+des_enc_read                            788    EXIST::FUNCTION:DES
+des_enc_write                           789    EXIST::FUNCTION:DES
+des_encrypt                             790    EXIST::FUNCTION:DES
+des_encrypt2                            791    EXIST::FUNCTION:DES
+des_encrypt3                            792    EXIST::FUNCTION:DES
+des_fcrypt                              793    EXIST::FUNCTION:DES
+des_is_weak_key                         794    EXIST::FUNCTION:DES
+des_key_sched                           795    EXIST::FUNCTION:DES
+des_ncbc_encrypt                        796    EXIST::FUNCTION:DES
+des_ofb64_encrypt                       797    EXIST::FUNCTION:DES
+des_ofb_encrypt                         798    EXIST::FUNCTION:DES
+des_options                             799    EXIST::FUNCTION:DES
+des_pcbc_encrypt                        800    EXIST::FUNCTION:DES
+des_quad_cksum                          801    EXIST::FUNCTION:DES
+des_random_key                          802    EXIST::FUNCTION:DES
+des_random_seed                         803    EXIST::FUNCTION:DES
+des_read_2passwords                     804    EXIST::FUNCTION:DES
+des_read_password                       805    EXIST::FUNCTION:DES
+des_read_pw                             806    EXIST::FUNCTION:DES
+des_read_pw_string                      807    EXIST::FUNCTION:DES
+des_set_key                             808    EXIST::FUNCTION:DES
+des_set_odd_parity                      809    EXIST::FUNCTION:DES
+des_string_to_2keys                     810    EXIST::FUNCTION:DES
+des_string_to_key                       811    EXIST::FUNCTION:DES
+des_xcbc_encrypt                        812    EXIST::FUNCTION:DES
+des_xwhite_in2out                       813    EXIST::FUNCTION:DES
+fcrypt_body                             814    NOEXIST::FUNCTION:
+i2a_ASN1_INTEGER                        815    EXIST::FUNCTION:
+i2a_ASN1_OBJECT                         816    EXIST::FUNCTION:
+i2a_ASN1_STRING                         817    EXIST::FUNCTION:
+i2d_ASN1_BIT_STRING                     818    EXIST::FUNCTION:
+i2d_ASN1_BOOLEAN                        819    EXIST::FUNCTION:
+i2d_ASN1_HEADER                         820    EXIST::FUNCTION:
+i2d_ASN1_IA5STRING                      821    EXIST::FUNCTION:
+i2d_ASN1_INTEGER                        822    EXIST::FUNCTION:
+i2d_ASN1_OBJECT                         823    EXIST::FUNCTION:
+i2d_ASN1_OCTET_STRING                   824    EXIST::FUNCTION:
+i2d_ASN1_PRINTABLE                      825    EXIST::FUNCTION:
+i2d_ASN1_SET                            826    EXIST::FUNCTION:
+i2d_ASN1_TYPE                           827    EXIST::FUNCTION:
+i2d_ASN1_UTCTIME                        828    EXIST::FUNCTION:
+i2d_ASN1_bytes                          829    EXIST::FUNCTION:
+i2d_DHparams                            830    EXIST::FUNCTION:DH
+i2d_DSAPrivateKey                       831    EXIST::FUNCTION:DSA
+i2d_DSAPrivateKey_bio                   832    EXIST::FUNCTION:DSA
+i2d_DSAPrivateKey_fp                    833    EXIST::FUNCTION:DSA,FP_API
+i2d_DSAPublicKey                        834    EXIST::FUNCTION:DSA
+i2d_DSAparams                           835    EXIST::FUNCTION:DSA
+i2d_NETSCAPE_SPKAC                      836    EXIST::FUNCTION:
+i2d_NETSCAPE_SPKI                       837    EXIST::FUNCTION:
+i2d_Netscape_RSA                        838    EXIST::FUNCTION:RSA
+i2d_PKCS7                               839    EXIST::FUNCTION:
+i2d_PKCS7_DIGEST                        840    EXIST::FUNCTION:
+i2d_PKCS7_ENCRYPT                       841    EXIST::FUNCTION:
+i2d_PKCS7_ENC_CONTENT                   842    EXIST::FUNCTION:
+i2d_PKCS7_ENVELOPE                      843    EXIST::FUNCTION:
+i2d_PKCS7_ISSUER_AND_SERIAL             844    EXIST::FUNCTION:
+i2d_PKCS7_RECIP_INFO                    845    EXIST::FUNCTION:
+i2d_PKCS7_SIGNED                        846    EXIST::FUNCTION:
+i2d_PKCS7_SIGNER_INFO                   847    EXIST::FUNCTION:
+i2d_PKCS7_SIGN_ENVELOPE                 848    EXIST::FUNCTION:
+i2d_PKCS7_bio                           849    EXIST::FUNCTION:
+i2d_PKCS7_fp                            850    EXIST::FUNCTION:FP_API
+i2d_PrivateKey                          851    EXIST::FUNCTION:
+i2d_PublicKey                           852    EXIST::FUNCTION:
+i2d_RSAPrivateKey                       853    EXIST::FUNCTION:RSA
+i2d_RSAPrivateKey_bio                   854    EXIST::FUNCTION:RSA
+i2d_RSAPrivateKey_fp                    855    EXIST::FUNCTION:RSA,FP_API
+i2d_RSAPublicKey                        856    EXIST::FUNCTION:RSA
+i2d_X509                                857    EXIST::FUNCTION:
+i2d_X509_ALGOR                          858    EXIST::FUNCTION:
+i2d_X509_ATTRIBUTE                      859    EXIST::FUNCTION:
+i2d_X509_CINF                           860    EXIST::FUNCTION:
+i2d_X509_CRL                            861    EXIST::FUNCTION:
+i2d_X509_CRL_INFO                       862    EXIST::FUNCTION:
+i2d_X509_CRL_bio                        863    EXIST::FUNCTION:
+i2d_X509_CRL_fp                         864    EXIST::FUNCTION:FP_API
+i2d_X509_EXTENSION                      865    EXIST::FUNCTION:
+i2d_X509_NAME                           866    EXIST::FUNCTION:
+i2d_X509_NAME_ENTRY                     867    EXIST::FUNCTION:
+i2d_X509_PKEY                           868    EXIST::FUNCTION:
+i2d_X509_PUBKEY                         869    EXIST::FUNCTION:
+i2d_X509_REQ                            870    EXIST::FUNCTION:
+i2d_X509_REQ_INFO                       871    EXIST::FUNCTION:
+i2d_X509_REQ_bio                        872    EXIST::FUNCTION:
+i2d_X509_REQ_fp                         873    EXIST::FUNCTION:FP_API
+i2d_X509_REVOKED                        874    EXIST::FUNCTION:
+i2d_X509_SIG                            875    EXIST::FUNCTION:
+i2d_X509_VAL                            876    EXIST::FUNCTION:
+i2d_X509_bio                            877    EXIST::FUNCTION:
+i2d_X509_fp                             878    EXIST::FUNCTION:FP_API
+idea_cbc_encrypt                        879    EXIST::FUNCTION:IDEA
+idea_cfb64_encrypt                      880    EXIST::FUNCTION:IDEA
+idea_ecb_encrypt                        881    EXIST::FUNCTION:IDEA
+idea_encrypt                            882    EXIST::FUNCTION:IDEA
+idea_ofb64_encrypt                      883    EXIST::FUNCTION:IDEA
+idea_options                            884    EXIST::FUNCTION:IDEA
+idea_set_decrypt_key                    885    EXIST::FUNCTION:IDEA
+idea_set_encrypt_key                    886    EXIST::FUNCTION:IDEA
+lh_delete                               887    EXIST::FUNCTION:
+lh_doall                                888    EXIST::FUNCTION:
+lh_doall_arg                            889    EXIST::FUNCTION:
+lh_free                                 890    EXIST::FUNCTION:
+lh_insert                               891    EXIST::FUNCTION:
+lh_new                                  892    EXIST::FUNCTION:
+lh_node_stats                           893    EXIST::FUNCTION:FP_API
+lh_node_stats_bio                       894    EXIST::FUNCTION:
+lh_node_usage_stats                     895    EXIST::FUNCTION:FP_API
+lh_node_usage_stats_bio                 896    EXIST::FUNCTION:
+lh_retrieve                             897    EXIST::FUNCTION:
+lh_stats                                898    EXIST::FUNCTION:FP_API
+lh_stats_bio                            899    EXIST::FUNCTION:
+lh_strhash                              900    EXIST::FUNCTION:
+sk_delete                               901    EXIST::FUNCTION:
+sk_delete_ptr                           902    EXIST::FUNCTION:
+sk_dup                                  903    EXIST::FUNCTION:
+sk_find                                 904    EXIST::FUNCTION:
+sk_free                                 905    EXIST::FUNCTION:
+sk_insert                               906    EXIST::FUNCTION:
+sk_new                                  907    EXIST::FUNCTION:
+sk_pop                                  908    EXIST::FUNCTION:
+sk_pop_free                             909    EXIST::FUNCTION:
+sk_push                                 910    EXIST::FUNCTION:
+sk_set_cmp_func                         911    EXIST::FUNCTION:
+sk_shift                                912    EXIST::FUNCTION:
+sk_unshift                              913    EXIST::FUNCTION:
+sk_zero                                 914    EXIST::FUNCTION:
+BIO_f_nbio_test                         915    EXIST::FUNCTION:
+ASN1_TYPE_get                           916    EXIST::FUNCTION:
+ASN1_TYPE_set                           917    EXIST::FUNCTION:
+PKCS7_content_free                      918    EXIST::FUNCTION:
+ERR_load_PKCS7_strings                  919    EXIST::FUNCTION:
+X509_find_by_issuer_and_serial          920    EXIST::FUNCTION:
+X509_find_by_subject                    921    EXIST::FUNCTION:
+PKCS7_ctrl                              927    EXIST::FUNCTION:
+PKCS7_set_type                          928    EXIST::FUNCTION:
+PKCS7_set_content                       929    EXIST::FUNCTION:
+PKCS7_SIGNER_INFO_set                   930    EXIST::FUNCTION:
+PKCS7_add_signer                        931    EXIST::FUNCTION:
+PKCS7_add_certificate                   932    EXIST::FUNCTION:
+PKCS7_add_crl                           933    EXIST::FUNCTION:
+PKCS7_content_new                       934    EXIST::FUNCTION:
+PKCS7_dataSign                          935    NOEXIST::FUNCTION:
+PKCS7_dataVerify                        936    EXIST::FUNCTION:
+PKCS7_dataInit                          937    EXIST::FUNCTION:
+PKCS7_add_signature                     938    EXIST::FUNCTION:
+PKCS7_cert_from_signer_info             939    EXIST::FUNCTION:
+PKCS7_get_signer_info                   940    EXIST::FUNCTION:
+EVP_delete_alias                        941    NOEXIST::FUNCTION:
+EVP_mdc2                                942    EXIST::FUNCTION:
+PEM_read_bio_RSAPublicKey               943    EXIST::FUNCTION:RSA
+PEM_write_bio_RSAPublicKey              944    EXIST::FUNCTION:RSA
+d2i_RSAPublicKey_bio                    945    EXIST::FUNCTION:RSA
+i2d_RSAPublicKey_bio                    946    EXIST::FUNCTION:RSA
+PEM_read_RSAPublicKey                   947    EXIST:!WIN16:FUNCTION:RSA
+PEM_write_RSAPublicKey                  949    EXIST:!WIN16:FUNCTION:RSA
+d2i_RSAPublicKey_fp                     952    EXIST::FUNCTION:RSA,FP_API
+i2d_RSAPublicKey_fp                     954    EXIST::FUNCTION:RSA,FP_API
+BIO_copy_next_retry                     955    EXIST::FUNCTION:
+RSA_flags                               956    EXIST::FUNCTION:RSA
+X509_STORE_add_crl                      957    EXIST::FUNCTION:
+X509_load_crl_file                      958    EXIST::FUNCTION:
+EVP_rc2_40_cbc                          959    EXIST::FUNCTION:RC2
+EVP_rc4_40                              960    EXIST::FUNCTION:RC4
+EVP_CIPHER_CTX_init                     961    EXIST::FUNCTION:
+HMAC                                    962    EXIST::FUNCTION:HMAC
+HMAC_Init                               963    EXIST::FUNCTION:HMAC
+HMAC_Update                             964    EXIST::FUNCTION:HMAC
+HMAC_Final                              965    EXIST::FUNCTION:HMAC
+ERR_get_next_error_library              966    EXIST::FUNCTION:
+EVP_PKEY_cmp_parameters                 967    EXIST::FUNCTION:
+HMAC_cleanup                            968    EXIST::FUNCTION:HMAC
+BIO_ptr_ctrl                            969    EXIST::FUNCTION:
+BIO_new_file_internal                   970    EXIST:WIN16:FUNCTION:FP_API
+BIO_new_fp_internal                     971    EXIST:WIN16:FUNCTION:FP_API
+BIO_s_file_internal                     972    EXIST:WIN16:FUNCTION:FP_API
+BN_BLINDING_convert                     973    EXIST::FUNCTION:
+BN_BLINDING_invert                      974    EXIST::FUNCTION:
+BN_BLINDING_update                      975    EXIST::FUNCTION:
+RSA_blinding_on                         977    EXIST::FUNCTION:RSA
+RSA_blinding_off                        978    EXIST::FUNCTION:RSA
+i2t_ASN1_OBJECT                         979    EXIST::FUNCTION:
+BN_BLINDING_new                         980    EXIST::FUNCTION:
+BN_BLINDING_free                        981    EXIST::FUNCTION:
+EVP_cast5_cbc                           983    EXIST::FUNCTION:CAST
+EVP_cast5_cfb                           984    EXIST::FUNCTION:CAST
+EVP_cast5_ecb                           985    EXIST::FUNCTION:CAST
+EVP_cast5_ofb                           986    EXIST::FUNCTION:CAST
+BF_decrypt                              987    EXIST::FUNCTION:BF
+CAST_set_key                            988    EXIST::FUNCTION:CAST
+CAST_encrypt                            989    EXIST::FUNCTION:CAST
+CAST_decrypt                            990    EXIST::FUNCTION:CAST
+CAST_ecb_encrypt                        991    EXIST::FUNCTION:CAST
+CAST_cbc_encrypt                        992    EXIST::FUNCTION:CAST
+CAST_cfb64_encrypt                      993    EXIST::FUNCTION:CAST
+CAST_ofb64_encrypt                      994    EXIST::FUNCTION:CAST
+RC2_decrypt                             995    EXIST::FUNCTION:RC2
+OBJ_create_objects                      997    EXIST::FUNCTION:
+BN_exp                                  998    EXIST::FUNCTION:
+BN_mul_word                             999    EXIST::FUNCTION:
+BN_sub_word                             1000   EXIST::FUNCTION:
+BN_dec2bn                               1001   EXIST::FUNCTION:
+BN_bn2dec                               1002   EXIST::FUNCTION:
+BIO_ghbn_ctrl                           1003   EXIST::FUNCTION:
+CRYPTO_free_ex_data                     1004   EXIST::FUNCTION:
+CRYPTO_get_ex_data                      1005   EXIST::FUNCTION:
+CRYPTO_set_ex_data                      1007   EXIST::FUNCTION:
+ERR_load_CRYPTO_strings                 1009   EXIST:!WIN16,!VMS:FUNCTION:
+ERR_load_CRYPTOlib_strings              1009   EXIST:WIN16,VMS:FUNCTION:
+EVP_PKEY_bits                           1010   EXIST::FUNCTION:
+MD5_Transform                           1011   EXIST::FUNCTION:MD5
+SHA1_Transform                          1012   EXIST::FUNCTION:SHA
+SHA_Transform                           1013   EXIST::FUNCTION:SHA
+X509_STORE_CTX_get_chain                1014   EXIST::FUNCTION:
+X509_STORE_CTX_get_current_cert         1015   EXIST::FUNCTION:
+X509_STORE_CTX_get_error                1016   EXIST::FUNCTION:
+X509_STORE_CTX_get_error_depth          1017   EXIST::FUNCTION:
+X509_STORE_CTX_get_ex_data              1018   EXIST::FUNCTION:
+X509_STORE_CTX_set_cert                 1020   EXIST::FUNCTION:
+X509_STORE_CTX_set_chain                1021   EXIST::FUNCTION:
+X509_STORE_CTX_set_error                1022   EXIST::FUNCTION:
+X509_STORE_CTX_set_ex_data              1023   EXIST::FUNCTION:
+CRYPTO_dup_ex_data                      1025   EXIST::FUNCTION:
+CRYPTO_get_new_lockid                   1026   EXIST::FUNCTION:
+CRYPTO_new_ex_data                      1027   EXIST::FUNCTION:
+RSA_set_ex_data                         1028   EXIST::FUNCTION:RSA
+RSA_get_ex_data                         1029   EXIST::FUNCTION:RSA
+RSA_get_ex_new_index                    1030   EXIST::FUNCTION:RSA
+RSA_padding_add_PKCS1_type_1            1031   EXIST::FUNCTION:RSA
+RSA_padding_add_PKCS1_type_2            1032   EXIST::FUNCTION:RSA
+RSA_padding_add_SSLv23                  1033   EXIST::FUNCTION:RSA
+RSA_padding_add_none                    1034   EXIST::FUNCTION:RSA
+RSA_padding_check_PKCS1_type_1          1035   EXIST::FUNCTION:RSA
+RSA_padding_check_PKCS1_type_2          1036   EXIST::FUNCTION:RSA
+RSA_padding_check_SSLv23                1037   EXIST::FUNCTION:RSA
+RSA_padding_check_none                  1038   EXIST::FUNCTION:RSA
+bn_add_words                            1039   EXIST::FUNCTION:
+d2i_Netscape_RSA_2                      1040   EXIST::FUNCTION:RSA
+CRYPTO_get_ex_new_index                 1041   EXIST::FUNCTION:
+RIPEMD160_Init                          1042   EXIST::FUNCTION:RIPEMD
+RIPEMD160_Update                        1043   EXIST::FUNCTION:RIPEMD
+RIPEMD160_Final                         1044   EXIST::FUNCTION:RIPEMD
+RIPEMD160                               1045   EXIST::FUNCTION:RIPEMD
+RIPEMD160_Transform                     1046   EXIST::FUNCTION:RIPEMD
+RC5_32_set_key                          1047   EXIST::FUNCTION:RC5
+RC5_32_ecb_encrypt                      1048   EXIST::FUNCTION:RC5
+RC5_32_encrypt                          1049   EXIST::FUNCTION:RC5
+RC5_32_decrypt                          1050   EXIST::FUNCTION:RC5
+RC5_32_cbc_encrypt                      1051   EXIST::FUNCTION:RC5
+RC5_32_cfb64_encrypt                    1052   EXIST::FUNCTION:RC5
+RC5_32_ofb64_encrypt                    1053   EXIST::FUNCTION:RC5
+BN_bn2mpi                               1058   EXIST::FUNCTION:
+BN_mpi2bn                               1059   EXIST::FUNCTION:
+ASN1_BIT_STRING_get_bit                 1060   EXIST::FUNCTION:
+ASN1_BIT_STRING_set_bit                 1061   EXIST::FUNCTION:
+BIO_get_ex_data                         1062   EXIST::FUNCTION:
+BIO_get_ex_new_index                    1063   EXIST::FUNCTION:
+BIO_set_ex_data                         1064   EXIST::FUNCTION:
+X509v3_get_key_usage                    1066   NOEXIST::FUNCTION:
+X509v3_set_key_usage                    1067   NOEXIST::FUNCTION:
+a2i_X509v3_key_usage                    1068   NOEXIST::FUNCTION:
+i2a_X509v3_key_usage                    1069   NOEXIST::FUNCTION:
+EVP_PKEY_decrypt                        1070   EXIST::FUNCTION:
+EVP_PKEY_encrypt                        1071   EXIST::FUNCTION:
+PKCS7_RECIP_INFO_set                    1072   EXIST::FUNCTION:
+PKCS7_add_recipient                     1073   EXIST::FUNCTION:
+PKCS7_add_recipient_info                1074   EXIST::FUNCTION:
+PKCS7_set_cipher                        1075   EXIST::FUNCTION:
+ASN1_TYPE_get_int_octetstring           1076   EXIST::FUNCTION:
+ASN1_TYPE_get_octetstring               1077   EXIST::FUNCTION:
+ASN1_TYPE_set_int_octetstring           1078   EXIST::FUNCTION:
+ASN1_TYPE_set_octetstring               1079   EXIST::FUNCTION:
+ASN1_UTCTIME_set_string                 1080   EXIST::FUNCTION:
+ERR_add_error_data                      1081   EXIST::FUNCTION:
+ERR_set_error_data                      1082   EXIST::FUNCTION:
+EVP_CIPHER_asn1_to_param                1083   EXIST::FUNCTION:
+EVP_CIPHER_param_to_asn1                1084   EXIST::FUNCTION:
+EVP_CIPHER_get_asn1_iv                  1085   EXIST::FUNCTION:
+EVP_CIPHER_set_asn1_iv                  1086   EXIST::FUNCTION:
+EVP_rc5_32_12_16_cbc                    1087   EXIST::FUNCTION:RC5
+EVP_rc5_32_12_16_cfb                    1088   EXIST::FUNCTION:RC5
+EVP_rc5_32_12_16_ecb                    1089   EXIST::FUNCTION:RC5
+EVP_rc5_32_12_16_ofb                    1090   EXIST::FUNCTION:RC5
+asn1_add_error                          1091   EXIST::FUNCTION:
+d2i_ASN1_BMPSTRING                      1092   EXIST::FUNCTION:
+i2d_ASN1_BMPSTRING                      1093   EXIST::FUNCTION:
+BIO_f_ber                               1094   NOEXIST::FUNCTION:
+BN_init                                 1095   EXIST::FUNCTION:
+COMP_CTX_new                            1096   EXIST::FUNCTION:
+COMP_CTX_free                           1097   EXIST::FUNCTION:
+COMP_CTX_compress_block                 1098   NOEXIST::FUNCTION:
+COMP_CTX_expand_block                   1099   NOEXIST::FUNCTION:
+X509_STORE_CTX_get_ex_new_index         1100   EXIST::FUNCTION:
+OBJ_NAME_add                            1101   EXIST::FUNCTION:
+BIO_socket_nbio                         1102   EXIST::FUNCTION:
+EVP_rc2_64_cbc                          1103   EXIST::FUNCTION:RC2
+OBJ_NAME_cleanup                        1104   EXIST::FUNCTION:
+OBJ_NAME_get                            1105   EXIST::FUNCTION:
+OBJ_NAME_init                           1106   EXIST::FUNCTION:
+OBJ_NAME_new_index                      1107   EXIST::FUNCTION:
+OBJ_NAME_remove                         1108   EXIST::FUNCTION:
+BN_MONT_CTX_copy                        1109   EXIST::FUNCTION:
+BIO_new_socks4a_connect                 1110   NOEXIST::FUNCTION:
+BIO_s_socks4a_connect                   1111   NOEXIST::FUNCTION:
+PROXY_set_connect_mode                  1112   NOEXIST::FUNCTION:
+RAND_SSLeay                             1113   EXIST::FUNCTION:
+RAND_set_rand_method                    1114   EXIST::FUNCTION:
+RSA_memory_lock                         1115   EXIST::FUNCTION:RSA
+bn_sub_words                            1116   EXIST::FUNCTION:
+bn_mul_normal                           1117   NOEXIST::FUNCTION:
+bn_mul_comba8                           1118   NOEXIST::FUNCTION:
+bn_mul_comba4                           1119   NOEXIST::FUNCTION:
+bn_sqr_normal                           1120   NOEXIST::FUNCTION:
+bn_sqr_comba8                           1121   NOEXIST::FUNCTION:
+bn_sqr_comba4                           1122   NOEXIST::FUNCTION:
+bn_cmp_words                            1123   NOEXIST::FUNCTION:
+bn_mul_recursive                        1124   NOEXIST::FUNCTION:
+bn_mul_part_recursive                   1125   NOEXIST::FUNCTION:
+bn_sqr_recursive                        1126   NOEXIST::FUNCTION:
+bn_mul_low_normal                       1127   NOEXIST::FUNCTION:
+BN_RECP_CTX_init                        1128   EXIST::FUNCTION:
+BN_RECP_CTX_new                         1129   EXIST::FUNCTION:
+BN_RECP_CTX_free                        1130   EXIST::FUNCTION:
+BN_RECP_CTX_set                         1131   EXIST::FUNCTION:
+BN_mod_mul_reciprocal                   1132   EXIST::FUNCTION:
+BN_mod_exp_recp                         1133   EXIST::FUNCTION:
+BN_div_recp                             1134   EXIST::FUNCTION:
+BN_CTX_init                             1135   EXIST::FUNCTION:
+BN_MONT_CTX_init                        1136   EXIST::FUNCTION:
+RAND_get_rand_method                    1137   EXIST::FUNCTION:
+PKCS7_add_attribute                     1138   EXIST::FUNCTION:
+PKCS7_add_signed_attribute              1139   EXIST::FUNCTION:
+PKCS7_digest_from_attributes            1140   EXIST::FUNCTION:
+PKCS7_get_attribute                     1141   EXIST::FUNCTION:
+PKCS7_get_issuer_and_serial             1142   EXIST::FUNCTION:
+PKCS7_get_signed_attribute              1143   EXIST::FUNCTION:
+COMP_compress_block                     1144   EXIST::FUNCTION:
+COMP_expand_block                       1145   EXIST::FUNCTION:
+COMP_rle                                1146   EXIST::FUNCTION:
+COMP_zlib                               1147   EXIST::FUNCTION:
+ms_time_diff                            1148   EXIST::FUNCTION:
+ms_time_new                             1149   EXIST::FUNCTION:
+ms_time_free                            1150   EXIST::FUNCTION:
+ms_time_cmp                             1151   EXIST::FUNCTION:
+ms_time_get                             1152   EXIST::FUNCTION:
+PKCS7_set_attributes                    1153   EXIST::FUNCTION:
+PKCS7_set_signed_attributes             1154   EXIST::FUNCTION:
+X509_ATTRIBUTE_create                   1155   EXIST::FUNCTION:
+X509_ATTRIBUTE_dup                      1156   EXIST::FUNCTION:
+ASN1_GENERALIZEDTIME_check              1157   EXIST::FUNCTION:
+ASN1_GENERALIZEDTIME_print              1158   EXIST::FUNCTION:
+ASN1_GENERALIZEDTIME_set                1159   EXIST::FUNCTION:
+ASN1_GENERALIZEDTIME_set_string         1160   EXIST::FUNCTION:
+ASN1_TIME_print                         1161   EXIST::FUNCTION:
+BASIC_CONSTRAINTS_free                  1162   EXIST::FUNCTION:
+BASIC_CONSTRAINTS_new                   1163   EXIST::FUNCTION:
+ERR_load_X509V3_strings                 1164   EXIST::FUNCTION:
+NETSCAPE_CERT_SEQUENCE_free             1165   EXIST::FUNCTION:
+NETSCAPE_CERT_SEQUENCE_new              1166   EXIST::FUNCTION:
+OBJ_txt2obj                             1167   EXIST::FUNCTION:
+PEM_read_NETSCAPE_CERT_SEQUENCE         1168   EXIST:!WIN16:FUNCTION:
+PEM_read_bio_NETSCAPE_CERT_SEQUENCE     1169   EXIST::FUNCTION:
+PEM_write_NETSCAPE_CERT_SEQUENCE        1170   EXIST:!WIN16:FUNCTION:
+PEM_write_bio_NETSCAPE_CERT_SEQUENCE    1171   EXIST::FUNCTION:
+X509V3_EXT_add                          1172   EXIST::FUNCTION:
+X509V3_EXT_add_alias                    1173   EXIST::FUNCTION:
+X509V3_EXT_add_conf                     1174   EXIST::FUNCTION:
+X509V3_EXT_cleanup                      1175   EXIST::FUNCTION:
+X509V3_EXT_conf                         1176   EXIST::FUNCTION:
+X509V3_EXT_conf_nid                     1177   EXIST::FUNCTION:
+X509V3_EXT_get                          1178   EXIST::FUNCTION:
+X509V3_EXT_get_nid                      1179   EXIST::FUNCTION:
+X509V3_EXT_print                        1180   EXIST::FUNCTION:
+X509V3_EXT_print_fp                     1181   EXIST::FUNCTION:
+X509V3_add_standard_extensions          1182   EXIST::FUNCTION:
+X509V3_add_value                        1183   EXIST::FUNCTION:
+X509V3_add_value_bool                   1184   EXIST::FUNCTION:
+X509V3_add_value_int                    1185   EXIST::FUNCTION:
+X509V3_conf_free                        1186   EXIST::FUNCTION:
+X509V3_get_value_bool                   1187   EXIST::FUNCTION:
+X509V3_get_value_int                    1188   EXIST::FUNCTION:
+X509V3_parse_list                       1189   EXIST::FUNCTION:
+d2i_ASN1_GENERALIZEDTIME                1190   EXIST::FUNCTION:
+d2i_ASN1_TIME                           1191   EXIST::FUNCTION:
+d2i_BASIC_CONSTRAINTS                   1192   EXIST::FUNCTION:
+d2i_NETSCAPE_CERT_SEQUENCE              1193   EXIST::FUNCTION:
+d2i_ext_ku                              1194   EXIST::FUNCTION:
+ext_ku_free                             1195   EXIST::FUNCTION:
+ext_ku_new                              1196   EXIST::FUNCTION:
+i2d_ASN1_GENERALIZEDTIME                1197   EXIST::FUNCTION:
+i2d_ASN1_TIME                           1198   EXIST::FUNCTION:
+i2d_BASIC_CONSTRAINTS                   1199   EXIST::FUNCTION:
+i2d_NETSCAPE_CERT_SEQUENCE              1200   EXIST::FUNCTION:
+i2d_ext_ku                              1201   EXIST::FUNCTION:
+EVP_MD_CTX_copy                         1202   EXIST::FUNCTION:
+i2d_ASN1_ENUMERATED                     1203   EXIST::FUNCTION:
+d2i_ASN1_ENUMERATED                     1204   EXIST::FUNCTION:
+ASN1_ENUMERATED_set                     1205   EXIST::FUNCTION:
+ASN1_ENUMERATED_get                     1206   EXIST::FUNCTION:
+BN_to_ASN1_ENUMERATED                   1207   EXIST::FUNCTION:
+ASN1_ENUMERATED_to_BN                   1208   EXIST::FUNCTION:
+i2a_ASN1_ENUMERATED                     1209   EXIST::FUNCTION:
+a2i_ASN1_ENUMERATED                     1210   EXIST::FUNCTION:
+i2d_GENERAL_NAME                        1211   EXIST::FUNCTION:
+d2i_GENERAL_NAME                        1212   EXIST::FUNCTION:
+GENERAL_NAME_new                        1213   EXIST::FUNCTION:
+GENERAL_NAME_free                       1214   EXIST::FUNCTION:
+GENERAL_NAMES_new                       1215   EXIST::FUNCTION:
+GENERAL_NAMES_free                      1216   EXIST::FUNCTION:
+d2i_GENERAL_NAMES                       1217   EXIST::FUNCTION:
+i2d_GENERAL_NAMES                       1218   EXIST::FUNCTION:
+i2v_GENERAL_NAMES                       1219   EXIST::FUNCTION:
+i2s_ASN1_OCTET_STRING                   1220   EXIST::FUNCTION:
+s2i_ASN1_OCTET_STRING                   1221   EXIST::FUNCTION:
+X509V3_EXT_check_conf                   1222   NOEXIST::FUNCTION:
+hex_to_string                           1223   EXIST::FUNCTION:
+string_to_hex                           1224   EXIST::FUNCTION:
+des_ede3_cbcm_encrypt                   1225   EXIST::FUNCTION:DES
+RSA_padding_add_PKCS1_OAEP              1226   EXIST::FUNCTION:RSA
+RSA_padding_check_PKCS1_OAEP            1227   EXIST::FUNCTION:RSA
+X509_CRL_print_fp                       1228   EXIST::FUNCTION:FP_API
+X509_CRL_print                          1229   EXIST::FUNCTION:
+i2v_GENERAL_NAME                        1230   EXIST::FUNCTION:
+v2i_GENERAL_NAME                        1231   EXIST::FUNCTION:
+i2d_PKEY_USAGE_PERIOD                   1232   EXIST::FUNCTION:
+d2i_PKEY_USAGE_PERIOD                   1233   EXIST::FUNCTION:
+PKEY_USAGE_PERIOD_new                   1234   EXIST::FUNCTION:
+PKEY_USAGE_PERIOD_free                  1235   EXIST::FUNCTION:
+v2i_GENERAL_NAMES                       1236   EXIST::FUNCTION:
+i2s_ASN1_INTEGER                        1237   EXIST::FUNCTION:
+X509V3_EXT_d2i                          1238   EXIST::FUNCTION:
+name_cmp                                1239   EXIST::FUNCTION:
+str_dup                                 1240   NOEXIST::FUNCTION:
+i2s_ASN1_ENUMERATED                     1241   EXIST::FUNCTION:
+i2s_ASN1_ENUMERATED_TABLE               1242   EXIST::FUNCTION:
+BIO_s_log                               1243   EXIST:!WIN32,!WIN16,!macintosh:FUNCTION:
+BIO_f_reliable                          1244   EXIST::FUNCTION:
+PKCS7_dataFinal                         1245   EXIST::FUNCTION:
+PKCS7_dataDecode                        1246   EXIST::FUNCTION:
+X509V3_EXT_CRL_add_conf                 1247   EXIST::FUNCTION:
+BN_set_params                           1248   EXIST::FUNCTION:
+BN_get_params                           1249   EXIST::FUNCTION:
+BIO_get_ex_num                          1250   NOEXIST::FUNCTION:
+BIO_set_ex_free_func                    1251   NOEXIST::FUNCTION:
+EVP_ripemd160                           1252   EXIST::FUNCTION:RIPEMD
+ASN1_TIME_set                           1253   EXIST::FUNCTION:
+i2d_AUTHORITY_KEYID                     1254   EXIST::FUNCTION:
+d2i_AUTHORITY_KEYID                     1255   EXIST::FUNCTION:
+AUTHORITY_KEYID_new                     1256   EXIST::FUNCTION:
+AUTHORITY_KEYID_free                    1257   EXIST::FUNCTION:
+ASN1_seq_unpack                         1258   EXIST::FUNCTION:
+ASN1_seq_pack                           1259   EXIST::FUNCTION:
+ASN1_unpack_string                      1260   EXIST::FUNCTION:
+ASN1_pack_string                        1261   EXIST::FUNCTION:
+PKCS12_pack_safebag                     1262   EXIST::FUNCTION:
+PKCS12_MAKE_KEYBAG                      1263   EXIST::FUNCTION:
+PKCS8_encrypt                           1264   EXIST::FUNCTION:
+PKCS12_MAKE_SHKEYBAG                    1265   EXIST::FUNCTION:
+PKCS12_pack_p7data                      1266   EXIST::FUNCTION:
+PKCS12_pack_p7encdata                   1267   EXIST::FUNCTION:
+PKCS12_add_localkeyid                   1268   EXIST::FUNCTION:
+PKCS12_add_friendlyname_asc             1269   EXIST::FUNCTION:
+PKCS12_add_friendlyname_uni             1270   EXIST::FUNCTION:
+PKCS12_get_friendlyname                 1271   EXIST::FUNCTION:
+PKCS12_pbe_crypt                        1272   EXIST::FUNCTION:
+PKCS12_decrypt_d2i                      1273   EXIST::FUNCTION:
+PKCS12_i2d_encrypt                      1274   EXIST::FUNCTION:
+PKCS12_init                             1275   EXIST::FUNCTION:
+PKCS12_key_gen_asc                      1276   EXIST::FUNCTION:
+PKCS12_key_gen_uni                      1277   EXIST::FUNCTION:
+PKCS12_gen_mac                          1278   EXIST::FUNCTION:
+PKCS12_verify_mac                       1279   EXIST::FUNCTION:
+PKCS12_set_mac                          1280   EXIST::FUNCTION:
+PKCS12_setup_mac                        1281   EXIST::FUNCTION:
+asc2uni                                 1282   EXIST::FUNCTION:
+uni2asc                                 1283   EXIST::FUNCTION:
+i2d_PKCS12_BAGS                         1284   EXIST::FUNCTION:
+PKCS12_BAGS_new                         1285   EXIST::FUNCTION:
+d2i_PKCS12_BAGS                         1286   EXIST::FUNCTION:
+PKCS12_BAGS_free                        1287   EXIST::FUNCTION:
+i2d_PKCS12                              1288   EXIST::FUNCTION:
+d2i_PKCS12                              1289   EXIST::FUNCTION:
+PKCS12_new                              1290   EXIST::FUNCTION:
+PKCS12_free                             1291   EXIST::FUNCTION:
+i2d_PKCS12_MAC_DATA                     1292   EXIST::FUNCTION:
+PKCS12_MAC_DATA_new                     1293   EXIST::FUNCTION:
+d2i_PKCS12_MAC_DATA                     1294   EXIST::FUNCTION:
+PKCS12_MAC_DATA_free                    1295   EXIST::FUNCTION:
+i2d_PKCS12_SAFEBAG                      1296   EXIST::FUNCTION:
+PKCS12_SAFEBAG_new                      1297   EXIST::FUNCTION:
+d2i_PKCS12_SAFEBAG                      1298   EXIST::FUNCTION:
+PKCS12_SAFEBAG_free                     1299   EXIST::FUNCTION:
+ERR_load_PKCS12_strings                 1300   EXIST::FUNCTION:
+PKCS12_PBE_add                          1301   EXIST::FUNCTION:
+PKCS8_add_keyusage                      1302   EXIST::FUNCTION:
+PKCS12_get_attr_gen                     1303   EXIST::FUNCTION:
+PKCS12_parse                            1304   EXIST::FUNCTION:
+PKCS12_create                           1305   EXIST::FUNCTION:
+i2d_PKCS12_bio                          1306   EXIST::FUNCTION:
+i2d_PKCS12_fp                           1307   EXIST::FUNCTION:
+d2i_PKCS12_bio                          1308   EXIST::FUNCTION:
+d2i_PKCS12_fp                           1309   EXIST::FUNCTION:
+i2d_PBEPARAM                            1310   EXIST::FUNCTION:
+PBEPARAM_new                            1311   EXIST::FUNCTION:
+d2i_PBEPARAM                            1312   EXIST::FUNCTION:
+PBEPARAM_free                           1313   EXIST::FUNCTION:
+i2d_PKCS8_PRIV_KEY_INFO                 1314   EXIST::FUNCTION:
+PKCS8_PRIV_KEY_INFO_new                 1315   EXIST::FUNCTION:
+d2i_PKCS8_PRIV_KEY_INFO                 1316   EXIST::FUNCTION:
+PKCS8_PRIV_KEY_INFO_free                1317   EXIST::FUNCTION:
+EVP_PKCS82PKEY                          1318   EXIST::FUNCTION:
+EVP_PKEY2PKCS8                          1319   EXIST::FUNCTION:
+PKCS8_set_broken                        1320   EXIST::FUNCTION:
+EVP_PBE_ALGOR_CipherInit                1321   NOEXIST::FUNCTION:
+EVP_PBE_alg_add                         1322   EXIST::FUNCTION:
+PKCS5_pbe_set                           1323   EXIST::FUNCTION:
+EVP_PBE_cleanup                         1324   EXIST::FUNCTION:
+i2d_SXNET                               1325   EXIST::FUNCTION:
+d2i_SXNET                               1326   EXIST::FUNCTION:
+SXNET_new                               1327   EXIST::FUNCTION:
+SXNET_free                              1328   EXIST::FUNCTION:
+i2d_SXNETID                             1329   EXIST::FUNCTION:
+d2i_SXNETID                             1330   EXIST::FUNCTION:
+SXNETID_new                             1331   EXIST::FUNCTION:
+SXNETID_free                            1332   EXIST::FUNCTION:
+DSA_SIG_new                             1333   EXIST::FUNCTION:DSA
+DSA_SIG_free                            1334   EXIST::FUNCTION:DSA
+DSA_do_sign                             1335   EXIST::FUNCTION:DSA
+DSA_do_verify                           1336   EXIST::FUNCTION:DSA
+d2i_DSA_SIG                             1337   EXIST::FUNCTION:DSA
+i2d_DSA_SIG                             1338   EXIST::FUNCTION:DSA
+i2d_ASN1_VISIBLESTRING                  1339   EXIST::FUNCTION:
+d2i_ASN1_VISIBLESTRING                  1340   EXIST::FUNCTION:
+i2d_ASN1_UTF8STRING                     1341   EXIST::FUNCTION:
+d2i_ASN1_UTF8STRING                     1342   EXIST::FUNCTION:
+i2d_DIRECTORYSTRING                     1343   EXIST::FUNCTION:
+d2i_DIRECTORYSTRING                     1344   EXIST::FUNCTION:
+i2d_DISPLAYTEXT                         1345   EXIST::FUNCTION:
+d2i_DISPLAYTEXT                         1346   EXIST::FUNCTION:
+d2i_ASN1_SET_OF_X509                    1379   NOEXIST::FUNCTION:
+i2d_ASN1_SET_OF_X509                    1380   NOEXIST::FUNCTION:
+i2d_PBKDF2PARAM                         1397   EXIST::FUNCTION:
+PBKDF2PARAM_new                         1398   EXIST::FUNCTION:
+d2i_PBKDF2PARAM                         1399   EXIST::FUNCTION:
+PBKDF2PARAM_free                        1400   EXIST::FUNCTION:
+i2d_PBE2PARAM                           1401   EXIST::FUNCTION:
+PBE2PARAM_new                           1402   EXIST::FUNCTION:
+d2i_PBE2PARAM                           1403   EXIST::FUNCTION:
+PBE2PARAM_free                          1404   EXIST::FUNCTION:
+d2i_ASN1_SET_OF_GENERAL_NAME            1421   NOEXIST::FUNCTION:
+i2d_ASN1_SET_OF_GENERAL_NAME            1422   NOEXIST::FUNCTION:
+d2i_ASN1_SET_OF_SXNETID                 1439   NOEXIST::FUNCTION:
+i2d_ASN1_SET_OF_SXNETID                 1440   NOEXIST::FUNCTION:
+d2i_ASN1_SET_OF_POLICYQUALINFO          1457   NOEXIST::FUNCTION:
+i2d_ASN1_SET_OF_POLICYQUALINFO          1458   NOEXIST::FUNCTION:
+d2i_ASN1_SET_OF_POLICYINFO              1475   NOEXIST::FUNCTION:
+i2d_ASN1_SET_OF_POLICYINFO              1476   NOEXIST::FUNCTION:
+SXNET_add_id_asc                        1477   EXIST::FUNCTION:
+SXNET_add_id_ulong                      1478   EXIST::FUNCTION:
+SXNET_add_id_INTEGER                    1479   EXIST::FUNCTION:
+SXNET_get_id_asc                        1480   EXIST::FUNCTION:
+SXNET_get_id_ulong                      1481   EXIST::FUNCTION:
+SXNET_get_id_INTEGER                    1482   EXIST::FUNCTION:
+X509V3_set_conf_lhash                   1483   EXIST::FUNCTION:
+i2d_CERTIFICATEPOLICIES                 1484   EXIST::FUNCTION:
+CERTIFICATEPOLICIES_new                 1485   EXIST::FUNCTION:
+CERTIFICATEPOLICIES_free                1486   EXIST::FUNCTION:
+d2i_CERTIFICATEPOLICIES                 1487   EXIST::FUNCTION:
+i2d_POLICYINFO                          1488   EXIST::FUNCTION:
+POLICYINFO_new                          1489   EXIST::FUNCTION:
+d2i_POLICYINFO                          1490   EXIST::FUNCTION:
+POLICYINFO_free                         1491   EXIST::FUNCTION:
+i2d_POLICYQUALINFO                      1492   EXIST::FUNCTION:
+POLICYQUALINFO_new                      1493   EXIST::FUNCTION:
+d2i_POLICYQUALINFO                      1494   EXIST::FUNCTION:
+POLICYQUALINFO_free                     1495   EXIST::FUNCTION:
+i2d_USERNOTICE                          1496   EXIST::FUNCTION:
+USERNOTICE_new                          1497   EXIST::FUNCTION:
+d2i_USERNOTICE                          1498   EXIST::FUNCTION:
+USERNOTICE_free                         1499   EXIST::FUNCTION:
+i2d_NOTICEREF                           1500   EXIST::FUNCTION:
+NOTICEREF_new                           1501   EXIST::FUNCTION:
+d2i_NOTICEREF                           1502   EXIST::FUNCTION:
+NOTICEREF_free                          1503   EXIST::FUNCTION:
+X509V3_get_string                       1504   EXIST::FUNCTION:
+X509V3_get_section                      1505   EXIST::FUNCTION:
+X509V3_string_free                      1506   EXIST::FUNCTION:
+X509V3_section_free                     1507   EXIST::FUNCTION:
+X509V3_set_ctx                          1508   EXIST::FUNCTION:
+s2i_ASN1_INTEGER                        1509   EXIST::FUNCTION:
+CRYPTO_set_locked_mem_functions         1510   EXIST::FUNCTION:
+CRYPTO_get_locked_mem_functions         1511   EXIST::FUNCTION:
+CRYPTO_malloc_locked                    1512   EXIST::FUNCTION:
+CRYPTO_free_locked                      1513   EXIST::FUNCTION:
+BN_mod_exp2_mont                        1514   EXIST::FUNCTION:
+ERR_get_error_line_data                 1515   EXIST::FUNCTION:
+ERR_peek_error_line_data                1516   EXIST::FUNCTION:
+PKCS12_PBE_keyivgen                     1517   EXIST::FUNCTION:
+X509_ALGOR_dup                          1518   EXIST::FUNCTION:
+d2i_ASN1_SET_OF_DIST_POINT              1535   NOEXIST::FUNCTION:
+i2d_ASN1_SET_OF_DIST_POINT              1536   NOEXIST::FUNCTION:
+i2d_CRL_DIST_POINTS                     1537   EXIST::FUNCTION:
+CRL_DIST_POINTS_new                     1538   EXIST::FUNCTION:
+CRL_DIST_POINTS_free                    1539   EXIST::FUNCTION:
+d2i_CRL_DIST_POINTS                     1540   EXIST::FUNCTION:
+i2d_DIST_POINT                          1541   EXIST::FUNCTION:
+DIST_POINT_new                          1542   EXIST::FUNCTION:
+d2i_DIST_POINT                          1543   EXIST::FUNCTION:
+DIST_POINT_free                         1544   EXIST::FUNCTION:
+i2d_DIST_POINT_NAME                     1545   EXIST::FUNCTION:
+DIST_POINT_NAME_new                     1546   EXIST::FUNCTION:
+DIST_POINT_NAME_free                    1547   EXIST::FUNCTION:
+d2i_DIST_POINT_NAME                     1548   EXIST::FUNCTION:
+X509V3_add_value_uchar                  1549   EXIST::FUNCTION:
+d2i_ASN1_SET_OF_X509_ATTRIBUTE          1555   NOEXIST::FUNCTION:
+i2d_ASN1_SET_OF_ASN1_TYPE               1560   NOEXIST::FUNCTION:
+d2i_ASN1_SET_OF_X509_EXTENSION          1567   NOEXIST::FUNCTION:
+d2i_ASN1_SET_OF_X509_NAME_ENTRY         1574   NOEXIST::FUNCTION:
+d2i_ASN1_SET_OF_ASN1_TYPE               1589   NOEXIST::FUNCTION:
+i2d_ASN1_SET_OF_X509_ATTRIBUTE          1615   NOEXIST::FUNCTION:
+i2d_ASN1_SET_OF_X509_EXTENSION          1624   NOEXIST::FUNCTION:
+i2d_ASN1_SET_OF_X509_NAME_ENTRY         1633   NOEXIST::FUNCTION:
+X509V3_EXT_i2d                          1646   EXIST::FUNCTION:
+X509V3_EXT_val_prn                      1647   EXIST::FUNCTION:
+X509V3_EXT_add_list                     1648   EXIST::FUNCTION:
+EVP_CIPHER_type                         1649   EXIST::FUNCTION:
+EVP_PBE_CipherInit                      1650   EXIST::FUNCTION:
+X509V3_add_value_bool_nf                1651   EXIST::FUNCTION:
+d2i_ASN1_UINTEGER                       1652   EXIST::FUNCTION:
+sk_value                                1653   EXIST::FUNCTION:
+sk_num                                  1654   EXIST::FUNCTION:
+sk_set                                  1655   EXIST::FUNCTION:
+i2d_ASN1_SET_OF_X509_REVOKED            1661   NOEXIST::FUNCTION:
+sk_sort                                 1671   EXIST::FUNCTION:
+d2i_ASN1_SET_OF_X509_REVOKED            1674   NOEXIST::FUNCTION:
+i2d_ASN1_SET_OF_X509_ALGOR              1682   NOEXIST::FUNCTION:
+i2d_ASN1_SET_OF_X509_CRL                1685   NOEXIST::FUNCTION:
+d2i_ASN1_SET_OF_X509_ALGOR              1696   NOEXIST::FUNCTION:
+d2i_ASN1_SET_OF_X509_CRL                1702   NOEXIST::FUNCTION:
+i2d_ASN1_SET_OF_PKCS7_SIGNER_INFO       1723   NOEXIST::FUNCTION:
+i2d_ASN1_SET_OF_PKCS7_RECIP_INFO        1738   NOEXIST::FUNCTION:
+d2i_ASN1_SET_OF_PKCS7_SIGNER_INFO       1748   NOEXIST::FUNCTION:
+d2i_ASN1_SET_OF_PKCS7_RECIP_INFO        1753   NOEXIST::FUNCTION:
+PKCS5_PBE_add                           1775   EXIST::FUNCTION:
+PEM_write_bio_PKCS8                     1776   EXIST::FUNCTION:
+i2d_PKCS8_fp                            1777   EXIST::FUNCTION:FP_API
+PEM_read_bio_PKCS8_PRIV_KEY_INFO        1778   EXIST::FUNCTION:
+d2i_PKCS8_bio                           1779   EXIST::FUNCTION:
+d2i_PKCS8_PRIV_KEY_INFO_fp              1780   EXIST::FUNCTION:FP_API
+PEM_write_bio_PKCS8_PRIV_KEY_INFO       1781   EXIST::FUNCTION:
+PEM_read_PKCS8                          1782   EXIST:!WIN16:FUNCTION:
+d2i_PKCS8_PRIV_KEY_INFO_bio             1783   EXIST::FUNCTION:
+d2i_PKCS8_fp                            1784   EXIST::FUNCTION:FP_API
+PEM_write_PKCS8                         1785   EXIST:!WIN16:FUNCTION:
+PEM_read_PKCS8_PRIV_KEY_INFO            1786   EXIST:!WIN16:FUNCTION:
+PEM_read_bio_PKCS8                      1787   EXIST::FUNCTION:
+PEM_write_PKCS8_PRIV_KEY_INFO           1788   EXIST:!WIN16:FUNCTION:
+PKCS5_PBE_keyivgen                      1789   EXIST::FUNCTION:
+i2d_PKCS8_bio                           1790   EXIST::FUNCTION:
+i2d_PKCS8_PRIV_KEY_INFO_fp              1791   EXIST::FUNCTION:FP_API
+i2d_PKCS8_PRIV_KEY_INFO_bio             1792   EXIST::FUNCTION:
+BIO_s_bio                               1793   EXIST::FUNCTION:
+PKCS5_pbe2_set                          1794   EXIST::FUNCTION:
+PKCS5_PBKDF2_HMAC_SHA1                  1795   EXIST::FUNCTION:
+PKCS5_v2_PBE_keyivgen                   1796   EXIST::FUNCTION:
+PEM_write_bio_PKCS8PrivateKey           1797   EXIST::FUNCTION:
+PEM_write_PKCS8PrivateKey               1798   EXIST::FUNCTION:
+BIO_ctrl_get_read_request               1799   EXIST::FUNCTION:
+BIO_ctrl_pending                        1800   EXIST::FUNCTION:
+BIO_ctrl_wpending                       1801   EXIST::FUNCTION:
+BIO_new_bio_pair                        1802   EXIST::FUNCTION:
+BIO_ctrl_get_write_guarantee            1803   EXIST::FUNCTION:
+CRYPTO_num_locks                        1804   EXIST::FUNCTION:
+CONF_load_bio                           1805   EXIST::FUNCTION:
+CONF_load_fp                            1806   EXIST::FUNCTION:FP_API
+i2d_ASN1_SET_OF_ASN1_OBJECT             1837   NOEXIST::FUNCTION:
+d2i_ASN1_SET_OF_ASN1_OBJECT             1844   NOEXIST::FUNCTION:
+PKCS7_signatureVerify                   1845   EXIST::FUNCTION:
+RSA_set_method                          1846   EXIST::FUNCTION:RSA
+RSA_get_method                          1847   EXIST::FUNCTION:RSA
+RSA_get_default_method                  1848   EXIST::FUNCTION:RSA
+RSA_check_key                           1869   EXIST::FUNCTION:RSA
+OBJ_obj2txt                             1870   EXIST::FUNCTION:
+DSA_dup_DH                              1871   EXIST::FUNCTION:DSA,DH
+X509_REQ_get_extensions                 1872   EXIST::FUNCTION:
+X509_REQ_set_extension_nids             1873   EXIST::FUNCTION:
+BIO_nwrite                              1874   EXIST::FUNCTION:
+X509_REQ_extension_nid                  1875   EXIST::FUNCTION:
+BIO_nread                               1876   EXIST::FUNCTION:
+X509_REQ_get_extension_nids             1877   EXIST::FUNCTION:
+BIO_nwrite0                             1878   EXIST::FUNCTION:
+X509_REQ_add_extensions_nid             1879   EXIST::FUNCTION:
+BIO_nread0                              1880   EXIST::FUNCTION:
+X509_REQ_add_extensions                 1881   EXIST::FUNCTION:
+BIO_new_mem_buf                         1882   EXIST::FUNCTION:
+DH_set_ex_data                          1883   EXIST::FUNCTION:DH
+DH_set_method                           1884   EXIST::FUNCTION:DH
+DSA_OpenSSL                             1885   EXIST::FUNCTION:DSA
+DH_get_ex_data                          1886   EXIST::FUNCTION:DH
+DH_get_ex_new_index                     1887   EXIST::FUNCTION:DH
+DSA_new_method                          1888   EXIST::FUNCTION:DSA
+DH_new_method                           1889   EXIST::FUNCTION:DH
+DH_OpenSSL                              1890   EXIST::FUNCTION:DH
+DSA_get_ex_new_index                    1891   EXIST::FUNCTION:DSA
+DH_get_default_method                   1892   EXIST::FUNCTION:DH
+DSA_set_ex_data                         1893   EXIST::FUNCTION:DSA
+DH_set_default_method                   1894   EXIST::FUNCTION:DH
+DSA_get_ex_data                         1895   EXIST::FUNCTION:DSA
+X509V3_EXT_REQ_add_conf                 1896   EXIST::FUNCTION:
+NETSCAPE_SPKI_print                     1897   EXIST::FUNCTION:
+NETSCAPE_SPKI_set_pubkey                1898   EXIST::FUNCTION:
+NETSCAPE_SPKI_b64_encode                1899   EXIST::FUNCTION:
+NETSCAPE_SPKI_get_pubkey                1900   EXIST::FUNCTION:
+NETSCAPE_SPKI_b64_decode                1901   EXIST::FUNCTION:
+UTF8_putc                               1902   EXIST::FUNCTION:
+UTF8_getc                               1903   EXIST::FUNCTION:
+RSA_null_method                         1904   EXIST::FUNCTION:RSA
+ASN1_tag2str                            1905   EXIST::FUNCTION:
+BIO_ctrl_reset_read_request             1906   EXIST::FUNCTION:
+DISPLAYTEXT_new                         1907   EXIST::FUNCTION:
+ASN1_GENERALIZEDTIME_free               1908   EXIST::FUNCTION:
+X509_REVOKED_get_ext_d2i                1909   EXIST::FUNCTION:
+X509_set_ex_data                        1910   EXIST::FUNCTION:
+X509_reject_set_bit_asc                 1911   NOEXIST::FUNCTION:
+X509_NAME_add_entry_by_txt              1912   EXIST::FUNCTION:
+X509_NAME_add_entry_by_NID              1914   EXIST::FUNCTION:
+X509_PURPOSE_get0                       1915   EXIST::FUNCTION:
+PEM_read_X509_AUX                       1917   EXIST:!WIN16:FUNCTION:
+d2i_AUTHORITY_INFO_ACCESS               1918   EXIST::FUNCTION:
+PEM_write_PUBKEY                        1921   EXIST:!WIN16:FUNCTION:
+ACCESS_DESCRIPTION_new                  1925   EXIST::FUNCTION:
+X509_CERT_AUX_free                      1926   EXIST::FUNCTION:
+d2i_ACCESS_DESCRIPTION                  1927   EXIST::FUNCTION:
+X509_trust_clear                        1928   EXIST::FUNCTION:
+X509_TRUST_add                          1931   EXIST::FUNCTION:
+ASN1_VISIBLESTRING_new                  1932   EXIST::FUNCTION:
+X509_alias_set1                         1933   EXIST::FUNCTION:
+ASN1_PRINTABLESTRING_free               1934   EXIST::FUNCTION:
+EVP_PKEY_get1_DSA                       1935   EXIST::FUNCTION:DSA
+ASN1_BMPSTRING_new                      1936   EXIST::FUNCTION:
+ASN1_mbstring_copy                      1937   EXIST::FUNCTION:
+ASN1_UTF8STRING_new                     1938   EXIST::FUNCTION:
+DSA_get_default_method                  1941   EXIST::FUNCTION:DSA
+i2d_ASN1_SET_OF_ACCESS_DESCRIPTION      1945   NOEXIST::FUNCTION:
+ASN1_T61STRING_free                     1946   EXIST::FUNCTION:
+DSA_set_method                          1949   EXIST::FUNCTION:DSA
+X509_get_ex_data                        1950   EXIST::FUNCTION:
+ASN1_STRING_type                        1951   EXIST::FUNCTION:
+X509_PURPOSE_get_by_sname               1952   EXIST::FUNCTION:
+ASN1_TIME_free                          1954   EXIST::FUNCTION:
+ASN1_OCTET_STRING_cmp                   1955   EXIST::FUNCTION:
+ASN1_BIT_STRING_new                     1957   EXIST::FUNCTION:
+X509_get_ext_d2i                        1958   EXIST::FUNCTION:
+PEM_read_bio_X509_AUX                   1959   EXIST::FUNCTION:
+ASN1_STRING_set_default_mask_asc        1960   EXIST:!VMS:FUNCTION:
+ASN1_STRING_set_def_mask_asc            1960   EXIST:VMS:FUNCTION:
+PEM_write_bio_RSA_PUBKEY                1961   EXIST::FUNCTION:RSA
+ASN1_INTEGER_cmp                        1963   EXIST::FUNCTION:
+d2i_RSA_PUBKEY_fp                       1964   EXIST::FUNCTION:RSA,FP_API
+X509_trust_set_bit_asc                  1967   NOEXIST::FUNCTION:
+PEM_write_bio_DSA_PUBKEY                1968   EXIST::FUNCTION:
+X509_STORE_CTX_free                     1969   EXIST::FUNCTION:
+EVP_PKEY_set1_DSA                       1970   EXIST::FUNCTION:DSA
+i2d_DSA_PUBKEY_fp                       1971   EXIST::FUNCTION:DSA,FP_API
+X509_load_cert_crl_file                 1972   EXIST::FUNCTION:
+ASN1_TIME_new                           1973   EXIST::FUNCTION:
+i2d_RSA_PUBKEY                          1974   EXIST::FUNCTION:RSA
+X509_STORE_CTX_purpose_inherit          1976   EXIST::FUNCTION:
+PEM_read_RSA_PUBKEY                     1977   EXIST:!WIN16:FUNCTION:RSA
+d2i_X509_AUX                            1980   EXIST::FUNCTION:
+i2d_DSA_PUBKEY                          1981   EXIST::FUNCTION:DSA
+X509_CERT_AUX_print                     1982   EXIST::FUNCTION:
+PEM_read_DSA_PUBKEY                     1984   EXIST:!WIN16:FUNCTION:
+i2d_RSA_PUBKEY_bio                      1985   EXIST::FUNCTION:RSA
+ASN1_BIT_STRING_num_asc                 1986   EXIST::FUNCTION:
+i2d_PUBKEY                              1987   EXIST::FUNCTION:
+ASN1_UTCTIME_free                       1988   EXIST::FUNCTION:
+DSA_set_default_method                  1989   EXIST::FUNCTION:DSA
+X509_PURPOSE_get_by_id                  1990   EXIST::FUNCTION:
+ACCESS_DESCRIPTION_free                 1994   EXIST::FUNCTION:
+PEM_read_bio_PUBKEY                     1995   EXIST::FUNCTION:
+ASN1_STRING_set_by_NID                  1996   EXIST::FUNCTION:
+X509_PURPOSE_get_id                     1997   EXIST::FUNCTION:
+DISPLAYTEXT_free                        1998   EXIST::FUNCTION:
+OTHERNAME_new                           1999   EXIST::FUNCTION:
+X509_CERT_AUX_new                       2001   EXIST::FUNCTION:
+X509_TRUST_cleanup                      2007   EXIST::FUNCTION:
+X509_NAME_add_entry_by_OBJ              2008   EXIST::FUNCTION:
+X509_CRL_get_ext_d2i                    2009   EXIST::FUNCTION:
+X509_PURPOSE_get0_name                  2011   EXIST::FUNCTION:
+PEM_read_PUBKEY                         2012   EXIST:!WIN16:FUNCTION:
+i2d_DSA_PUBKEY_bio                      2014   EXIST::FUNCTION:DSA
+i2d_OTHERNAME                           2015   EXIST::FUNCTION:
+ASN1_OCTET_STRING_free                  2016   EXIST::FUNCTION:
+ASN1_BIT_STRING_set_asc                 2017   EXIST::FUNCTION:
+X509_get_ex_new_index                   2019   EXIST::FUNCTION:
+ASN1_STRING_TABLE_cleanup               2020   EXIST::FUNCTION:
+X509_TRUST_get_by_id                    2021   EXIST::FUNCTION:
+X509_PURPOSE_get_trust                  2022   EXIST::FUNCTION:
+ASN1_STRING_length                      2023   EXIST::FUNCTION:
+d2i_ASN1_SET_OF_ACCESS_DESCRIPTION      2024   NOEXIST::FUNCTION:
+ASN1_PRINTABLESTRING_new                2025   EXIST::FUNCTION:
+X509V3_get_d2i                          2026   EXIST::FUNCTION:
+ASN1_ENUMERATED_free                    2027   EXIST::FUNCTION:
+i2d_X509_CERT_AUX                       2028   EXIST::FUNCTION:
+X509_STORE_CTX_set_trust                2030   EXIST::FUNCTION:
+ASN1_STRING_set_default_mask            2032   EXIST::FUNCTION:
+X509_STORE_CTX_new                      2033   EXIST::FUNCTION:
+EVP_PKEY_get1_RSA                       2034   EXIST::FUNCTION:RSA
+DIRECTORYSTRING_free                    2038   EXIST::FUNCTION:
+PEM_write_X509_AUX                      2039   EXIST:!WIN16:FUNCTION:
+ASN1_OCTET_STRING_set                   2040   EXIST::FUNCTION:
+d2i_DSA_PUBKEY_fp                       2041   EXIST::FUNCTION:DSA,FP_API
+d2i_RSA_PUBKEY                          2044   EXIST::FUNCTION:RSA
+X509_TRUST_get0_name                    2046   EXIST::FUNCTION:
+X509_TRUST_get0                         2047   EXIST::FUNCTION:
+AUTHORITY_INFO_ACCESS_free              2048   EXIST::FUNCTION:
+ASN1_IA5STRING_new                      2049   EXIST::FUNCTION:
+d2i_DSA_PUBKEY                          2050   EXIST::FUNCTION:DSA
+X509_check_purpose                      2051   EXIST::FUNCTION:
+ASN1_ENUMERATED_new                     2052   EXIST::FUNCTION:
+d2i_RSA_PUBKEY_bio                      2053   EXIST::FUNCTION:RSA
+d2i_PUBKEY                              2054   EXIST::FUNCTION:
+X509_TRUST_get_trust                    2055   EXIST::FUNCTION:
+X509_TRUST_get_flags                    2056   EXIST::FUNCTION:
+ASN1_BMPSTRING_free                     2057   EXIST::FUNCTION:
+ASN1_T61STRING_new                      2058   EXIST::FUNCTION:
+ASN1_UTCTIME_new                        2060   EXIST::FUNCTION:
+i2d_AUTHORITY_INFO_ACCESS               2062   EXIST::FUNCTION:
+EVP_PKEY_set1_RSA                       2063   EXIST::FUNCTION:RSA
+X509_STORE_CTX_set_purpose              2064   EXIST::FUNCTION:
+ASN1_IA5STRING_free                     2065   EXIST::FUNCTION:
+PEM_write_bio_X509_AUX                  2066   EXIST::FUNCTION:
+X509_PURPOSE_get_count                  2067   EXIST::FUNCTION:
+CRYPTO_add_info                         2068   NOEXIST::FUNCTION:
+X509_NAME_ENTRY_create_by_txt           2071   EXIST::FUNCTION:
+ASN1_STRING_get_default_mask            2072   EXIST::FUNCTION:
+X509_alias_get0                         2074   EXIST::FUNCTION:
+ASN1_STRING_data                        2075   EXIST::FUNCTION:
+i2d_ACCESS_DESCRIPTION                  2077   EXIST::FUNCTION:
+X509_trust_set_bit                      2078   NOEXIST::FUNCTION:
+ASN1_BIT_STRING_free                    2080   EXIST::FUNCTION:
+PEM_read_bio_RSA_PUBKEY                 2081   EXIST::FUNCTION:RSA
+X509_add1_reject_object                 2082   EXIST::FUNCTION:
+X509_check_trust                        2083   EXIST::FUNCTION:
+PEM_read_bio_DSA_PUBKEY                 2088   EXIST::FUNCTION:
+X509_PURPOSE_add                        2090   EXIST::FUNCTION:
+ASN1_STRING_TABLE_get                   2091   EXIST::FUNCTION:
+ASN1_UTF8STRING_free                    2092   EXIST::FUNCTION:
+d2i_DSA_PUBKEY_bio                      2093   EXIST::FUNCTION:DSA
+PEM_write_RSA_PUBKEY                    2095   EXIST:!WIN16:FUNCTION:RSA
+d2i_OTHERNAME                           2096   EXIST::FUNCTION:
+X509_reject_set_bit                     2098   NOEXIST::FUNCTION:
+PEM_write_DSA_PUBKEY                    2101   EXIST:!WIN16:FUNCTION:
+X509_PURPOSE_get0_sname                 2105   EXIST::FUNCTION:
+EVP_PKEY_set1_DH                        2107   EXIST::FUNCTION:DH
+ASN1_OCTET_STRING_dup                   2108   EXIST::FUNCTION:
+ASN1_BIT_STRING_set                     2109   EXIST::FUNCTION:
+X509_TRUST_get_count                    2110   EXIST::FUNCTION:
+ASN1_INTEGER_free                       2111   EXIST::FUNCTION:
+OTHERNAME_free                          2112   EXIST::FUNCTION:
+i2d_RSA_PUBKEY_fp                       2113   EXIST::FUNCTION:RSA,FP_API
+ASN1_INTEGER_dup                        2114   EXIST::FUNCTION:
+d2i_X509_CERT_AUX                       2115   EXIST::FUNCTION:
+PEM_write_bio_PUBKEY                    2117   EXIST::FUNCTION:
+ASN1_VISIBLESTRING_free                 2118   EXIST::FUNCTION:
+X509_PURPOSE_cleanup                    2119   EXIST::FUNCTION:
+ASN1_mbstring_ncopy                     2123   EXIST::FUNCTION:
+ASN1_GENERALIZEDTIME_new                2126   EXIST::FUNCTION:
+EVP_PKEY_get1_DH                        2128   EXIST::FUNCTION:DH
+ASN1_OCTET_STRING_new                   2130   EXIST::FUNCTION:
+ASN1_INTEGER_new                        2131   EXIST::FUNCTION:
+i2d_X509_AUX                            2132   EXIST::FUNCTION:
+ASN1_BIT_STRING_name_print              2134   EXIST::FUNCTION:
+X509_cmp                                2135   EXIST::FUNCTION:
+ASN1_STRING_length_set                  2136   EXIST::FUNCTION:
+DIRECTORYSTRING_new                     2137   EXIST::FUNCTION:
+X509_add1_trust_object                  2140   EXIST::FUNCTION:
+PKCS12_newpass                          2141   EXIST::FUNCTION:
+SMIME_write_PKCS7                       2142   EXIST::FUNCTION:
+SMIME_read_PKCS7                        2143   EXIST::FUNCTION:
+des_set_key_checked                     2144   EXIST::FUNCTION:DES
+PKCS7_verify                            2145   EXIST::FUNCTION:
+PKCS7_encrypt                           2146   EXIST::FUNCTION:
+des_set_key_unchecked                   2147   EXIST::FUNCTION:DES
+SMIME_crlf_copy                         2148   EXIST::FUNCTION:
+i2d_ASN1_PRINTABLESTRING                2149   EXIST::FUNCTION:
+PKCS7_get0_signers                      2150   EXIST::FUNCTION:
+PKCS7_decrypt                           2151   EXIST::FUNCTION:
+SMIME_text                              2152   EXIST::FUNCTION:
+PKCS7_simple_smimecap                   2153   EXIST::FUNCTION:
+PKCS7_get_smimecap                      2154   EXIST::FUNCTION:
+PKCS7_sign                              2155   EXIST::FUNCTION:
+PKCS7_add_attrib_smimecap               2156   EXIST::FUNCTION:
+CRYPTO_dbg_set_options                  2157   EXIST::FUNCTION:
+CRYPTO_remove_all_info                  2158   EXIST::FUNCTION:
+CRYPTO_get_mem_debug_functions          2159   EXIST::FUNCTION:
+CRYPTO_is_mem_check_on                  2160   EXIST::FUNCTION:
+CRYPTO_set_mem_debug_functions          2161   EXIST::FUNCTION:
+CRYPTO_pop_info                         2162   EXIST::FUNCTION:
+CRYPTO_push_info_                       2163   EXIST::FUNCTION:
+CRYPTO_set_mem_debug_options            2164   EXIST::FUNCTION:
+PEM_write_PKCS8PrivateKey_nid           2165   EXIST::FUNCTION:
+PEM_write_bio_PKCS8PrivateKey_nid       2166   EXIST:!VMS:FUNCTION:
+PEM_write_bio_PKCS8PrivKey_nid          2166   EXIST:VMS:FUNCTION:
+d2i_PKCS8PrivateKey_bio                 2167   EXIST::FUNCTION:
+ASN1_NULL_free                          2168   EXIST::FUNCTION:
+d2i_ASN1_NULL                           2169   EXIST::FUNCTION:
+ASN1_NULL_new                           2170   EXIST::FUNCTION:
+i2d_PKCS8PrivateKey_bio                 2171   EXIST::FUNCTION:
+i2d_PKCS8PrivateKey_fp                  2172   EXIST::FUNCTION:
+i2d_ASN1_NULL                           2173   EXIST::FUNCTION:
+i2d_PKCS8PrivateKey_nid_fp              2174   EXIST::FUNCTION:
+d2i_PKCS8PrivateKey_fp                  2175   EXIST::FUNCTION:
+i2d_PKCS8PrivateKey_nid_bio             2176   EXIST::FUNCTION:
+i2d_PKCS8PrivateKeyInfo_fp              2177   EXIST::FUNCTION:FP_API
+i2d_PKCS8PrivateKeyInfo_bio             2178   EXIST::FUNCTION:
+PEM_cb                                  2179   NOEXIST::FUNCTION:
+i2d_PrivateKey_fp                       2180   EXIST::FUNCTION:FP_API
+d2i_PrivateKey_bio                      2181   EXIST::FUNCTION:
+d2i_PrivateKey_fp                       2182   EXIST::FUNCTION:FP_API
+i2d_PrivateKey_bio                      2183   EXIST::FUNCTION:
+X509_reject_clear                       2184   EXIST::FUNCTION:
+X509_TRUST_set_default                  2185   EXIST::FUNCTION:
+d2i_AutoPrivateKey                      2186   EXIST::FUNCTION:
+X509_ATTRIBUTE_get0_type                2187   EXIST::FUNCTION:
+X509_ATTRIBUTE_set1_data                2188   EXIST::FUNCTION:
+X509at_get_attr                         2189   EXIST::FUNCTION:
+X509at_get_attr_count                   2190   EXIST::FUNCTION:
+X509_ATTRIBUTE_create_by_NID            2191   EXIST::FUNCTION:
+X509_ATTRIBUTE_set1_object              2192   EXIST::FUNCTION:
+X509_ATTRIBUTE_count                    2193   EXIST::FUNCTION:
+X509_ATTRIBUTE_create_by_OBJ            2194   EXIST::FUNCTION:
+X509_ATTRIBUTE_get0_object              2195   EXIST::FUNCTION:
+X509at_get_attr_by_NID                  2196   EXIST::FUNCTION:
+X509at_add1_attr                        2197   EXIST::FUNCTION:
+X509_ATTRIBUTE_get0_data                2198   EXIST::FUNCTION:
+X509at_delete_attr                      2199   EXIST::FUNCTION:
+X509at_get_attr_by_OBJ                  2200   EXIST::FUNCTION:
+RAND_add                                2201   EXIST::FUNCTION:
+BIO_number_written                      2202   EXIST::FUNCTION:
+BIO_number_read                         2203   EXIST::FUNCTION:
+X509_STORE_CTX_get1_chain               2204   EXIST::FUNCTION:
+ERR_load_RAND_strings                   2205   EXIST::FUNCTION:
+RAND_pseudo_bytes                       2206   EXIST::FUNCTION:
+X509_REQ_get_attr_by_NID                2207   EXIST::FUNCTION:
+X509_REQ_get_attr                       2208   EXIST::FUNCTION:
+X509_REQ_add1_attr_by_NID               2209   EXIST::FUNCTION:
+X509_REQ_get_attr_by_OBJ                2210   EXIST::FUNCTION:
+X509at_add1_attr_by_NID                 2211   EXIST::FUNCTION:
+X509_REQ_add1_attr_by_OBJ               2212   EXIST::FUNCTION:
+X509_REQ_get_attr_count                 2213   EXIST::FUNCTION:
+X509_REQ_add1_attr                      2214   EXIST::FUNCTION:
+X509_REQ_delete_attr                    2215   EXIST::FUNCTION:
+X509at_add1_attr_by_OBJ                 2216   EXIST::FUNCTION:
+X509_REQ_add1_attr_by_txt               2217   EXIST::FUNCTION:
+X509_ATTRIBUTE_create_by_txt            2218   EXIST::FUNCTION:
+X509at_add1_attr_by_txt                 2219   EXIST::FUNCTION:
+BN_pseudo_rand                          2239   EXIST::FUNCTION:
+BN_is_prime_fasttest                    2240   EXIST::FUNCTION:
+BN_CTX_end                              2241   EXIST::FUNCTION:
+BN_CTX_start                            2242   EXIST::FUNCTION:
+BN_CTX_get                              2243   EXIST::FUNCTION:
+EVP_PKEY2PKCS8_broken                   2244   EXIST::FUNCTION:
+ASN1_STRING_TABLE_add                   2245   EXIST::FUNCTION:
+CRYPTO_dbg_get_options                  2246   EXIST::FUNCTION:
+AUTHORITY_INFO_ACCESS_new               2247   EXIST::FUNCTION:
+CRYPTO_get_mem_debug_options            2248   EXIST::FUNCTION:
+des_crypt                               2249   EXIST::FUNCTION:DES
+PEM_write_bio_X509_REQ_NEW              2250   EXIST::FUNCTION:
+PEM_write_X509_REQ_NEW                  2251   EXIST:!WIN16:FUNCTION:
+BIO_callback_ctrl                       2252   EXIST::FUNCTION:
+RAND_egd                                2253   EXIST::FUNCTION:
+RAND_status                             2254   EXIST::FUNCTION:
+bn_dump1                                2255   NOEXIST::FUNCTION:
+des_check_key_parity                    2256   EXIST::FUNCTION:DES
+lh_num_items                            2257   EXIST::FUNCTION:
+RAND_event                              2258   EXIST::FUNCTION:
+DSO_new                                 2259   EXIST::FUNCTION:
+DSO_new_method                          2260   EXIST::FUNCTION:
+DSO_free                                2261   EXIST::FUNCTION:
+DSO_flags                               2262   EXIST::FUNCTION:
+DSO_up                                  2263   EXIST::FUNCTION:
+DSO_set_default_method                  2264   EXIST::FUNCTION:
+DSO_get_default_method                  2265   EXIST::FUNCTION:
+DSO_get_method                          2266   EXIST::FUNCTION:
+DSO_set_method                          2267   EXIST::FUNCTION:
+DSO_load                                2268   EXIST::FUNCTION:
+DSO_bind_var                            2269   EXIST::FUNCTION:
+DSO_METHOD_null                         2270   EXIST::FUNCTION:
+DSO_METHOD_openssl                      2271   EXIST::FUNCTION:
+DSO_METHOD_dlfcn                        2272   EXIST::FUNCTION:
+DSO_METHOD_win32                        2273   EXIST::FUNCTION:
+ERR_load_DSO_strings                    2274   EXIST::FUNCTION:
+DSO_METHOD_dl                           2275   EXIST::FUNCTION:
+NCONF_load                              2276   EXIST::FUNCTION:
+NCONF_load_fp                           2278   EXIST::FUNCTION:FP_API
+NCONF_new                               2279   EXIST::FUNCTION:
+NCONF_get_string                        2280   EXIST::FUNCTION:
+NCONF_free                              2281   EXIST::FUNCTION:
+NCONF_get_number                        2282   EXIST::FUNCTION:
+CONF_dump_fp                            2283   EXIST::FUNCTION:
+NCONF_load_bio                          2284   EXIST::FUNCTION:
+NCONF_dump_fp                           2285   EXIST::FUNCTION:
+NCONF_get_section                       2286   EXIST::FUNCTION:
+NCONF_dump_bio                          2287   EXIST::FUNCTION:
+CONF_dump_bio                           2288   EXIST::FUNCTION:
+NCONF_free_data                         2289   EXIST::FUNCTION:
+CONF_set_default_method                 2290   EXIST::FUNCTION:
+ERR_error_string_n                      2291   EXIST::FUNCTION:
+BIO_snprintf                            2292   EXIST::FUNCTION:
+DSO_ctrl                                2293   EXIST::FUNCTION:
+i2d_ASN1_SET_OF_ASN1_INTEGER            2317   NOEXIST::FUNCTION:
+i2d_ASN1_SET_OF_PKCS12_SAFEBAG          2320   NOEXIST::FUNCTION:
+i2d_ASN1_SET_OF_PKCS7                   2328   NOEXIST::FUNCTION:
+BIO_vfree                               2334   EXIST::FUNCTION:
+d2i_ASN1_SET_OF_ASN1_INTEGER            2339   NOEXIST::FUNCTION:
+d2i_ASN1_SET_OF_PKCS12_SAFEBAG          2341   NOEXIST::FUNCTION:
+ASN1_UTCTIME_get                        2350   EXIST::FUNCTION:
+X509_REQ_digest                         2362   EXIST::FUNCTION:
+X509_CRL_digest                         2391   EXIST::FUNCTION:
+d2i_ASN1_SET_OF_PKCS7                   2397   NOEXIST::FUNCTION:
+EVP_CIPHER_CTX_set_key_length           2399   EXIST::FUNCTION:
+EVP_CIPHER_CTX_ctrl                     2400   EXIST::FUNCTION:
+BN_mod_exp_mont_word                    2401   EXIST::FUNCTION:
+RAND_egd_bytes                          2402   EXIST::FUNCTION:
+X509_REQ_get1_email                     2403   EXIST::FUNCTION:
+X509_get1_email                         2404   EXIST::FUNCTION:
+X509_email_free                         2405   EXIST::FUNCTION:
+i2d_RSA_NET                             2406   EXIST::FUNCTION:RSA
+d2i_RSA_NET_2                           2407   EXIST::FUNCTION:RSA
+d2i_RSA_NET                             2408   EXIST::FUNCTION:RSA
+DSO_bind_func                           2409   EXIST::FUNCTION:
+CRYPTO_get_new_dynlockid                2410   EXIST::FUNCTION:
+sk_new_null                             2411   EXIST::FUNCTION:
+CRYPTO_set_dynlock_destroy_callback     2412   EXIST::FUNCTION:
+CRYPTO_destroy_dynlockid                2413   EXIST::FUNCTION:
+CRYPTO_set_dynlock_size                 2414   NOEXIST::FUNCTION:
+CRYPTO_set_dynlock_create_callback      2415   EXIST::FUNCTION:
+CRYPTO_set_dynlock_lock_callback        2416   EXIST::FUNCTION:
+CRYPTO_get_dynlock_lock_callback        2417   EXIST::FUNCTION:
+CRYPTO_get_dynlock_destroy_callback     2418   EXIST::FUNCTION:
+CRYPTO_get_dynlock_value                2419   EXIST::FUNCTION:
+CRYPTO_get_dynlock_create_callback      2420   EXIST::FUNCTION:
+c2i_ASN1_BIT_STRING                     2421   EXIST::FUNCTION:
+i2c_ASN1_BIT_STRING                     2422   EXIST::FUNCTION:
+RAND_poll                               2423   EXIST::FUNCTION:
+c2i_ASN1_INTEGER                        2424   EXIST::FUNCTION:
+i2c_ASN1_INTEGER                        2425   EXIST::FUNCTION:
+BIO_dump_indent                         2426   EXIST::FUNCTION:
+ASN1_parse_dump                         2427   EXIST::FUNCTION:
+c2i_ASN1_OBJECT                         2428   EXIST::FUNCTION:
+X509_NAME_print_ex_fp                   2429   EXIST::FUNCTION:FP_API
+ASN1_STRING_print_ex_fp                 2430   EXIST::FUNCTION:FP_API
+X509_NAME_print_ex                      2431   EXIST::FUNCTION:
+ASN1_STRING_print_ex                    2432   EXIST::FUNCTION:
+MD4                                     2433   EXIST::FUNCTION:MD4
+MD4_Transform                           2434   EXIST::FUNCTION:MD4
+MD4_Final                               2435   EXIST::FUNCTION:MD4
+MD4_Update                              2436   EXIST::FUNCTION:MD4
+MD4_Init                                2437   EXIST::FUNCTION:MD4
+EVP_md4                                 2438   EXIST::FUNCTION:MD4
+i2d_PUBKEY_bio                          2439   EXIST::FUNCTION:
+i2d_PUBKEY_fp                           2440   EXIST::FUNCTION:FP_API
+d2i_PUBKEY_bio                          2441   EXIST::FUNCTION:
+ASN1_STRING_to_UTF8                     2442   EXIST::FUNCTION:
+BIO_vprintf                             2443   EXIST::FUNCTION:
+BIO_vsnprintf                           2444   EXIST::FUNCTION:
+d2i_PUBKEY_fp                           2445   EXIST::FUNCTION:FP_API
+X509_cmp_time                           2446   EXIST::FUNCTION:
+X509_STORE_CTX_set_time                 2447   EXIST::FUNCTION:
+X509_STORE_CTX_get1_issuer              2448   EXIST::FUNCTION:
+X509_OBJECT_retrieve_match              2449   EXIST::FUNCTION:
+X509_OBJECT_idx_by_subject              2450   EXIST::FUNCTION:
+X509_STORE_CTX_set_flags                2451   EXIST::FUNCTION:
+X509_STORE_CTX_trusted_stack            2452   EXIST::FUNCTION:
+X509_time_adj                           2453   EXIST::FUNCTION:
+X509_check_issued                       2454   EXIST::FUNCTION:
+ASN1_UTCTIME_cmp_time_t                 2455   EXIST::FUNCTION:
+des_set_weak_key_flag                   2456   EXIST::VARIABLE:DES
+des_check_key                           2457   EXIST::VARIABLE:DES
+des_rw_mode                             2458   EXIST::VARIABLE:DES
+RSA_PKCS1_RSAref                        2459   EXIST:RSAREF:FUNCTION:RSA
+ERR_load_ENGINE_strings                 2460   EXIST::FUNCTION:
+ENGINE_set_DSA                          2461   EXIST::FUNCTION:
+ENGINE_get_finish_function              2462   EXIST::FUNCTION:
+ENGINE_get_default_RSA                  2463   EXIST::FUNCTION:
+ENGINE_get_BN_mod_exp                   2464   EXIST::FUNCTION:
+DSA_get_default_openssl_method          2465   EXIST::FUNCTION:DSA
+ENGINE_set_DH                           2466   EXIST::FUNCTION:
+ENGINE_set_default_BN_mod_exp_crt       2467   EXIST::FUNCTION:
+ENGINE_init                             2468   EXIST::FUNCTION:
+DH_get_default_openssl_method           2469   EXIST::FUNCTION:DH
+RSA_set_default_openssl_method          2470   EXIST::FUNCTION:RSA
+ENGINE_finish                           2471   EXIST::FUNCTION:
+ENGINE_load_public_key                  2472   EXIST::FUNCTION:
+ENGINE_get_DH                           2473   EXIST::FUNCTION:
+ENGINE_ctrl                             2474   EXIST::FUNCTION:
+ENGINE_get_init_function                2475   EXIST::FUNCTION:
+ENGINE_set_init_function                2476   EXIST::FUNCTION:
+ENGINE_set_default_DSA                  2477   EXIST::FUNCTION:
+ENGINE_get_name                         2478   EXIST::FUNCTION:
+ENGINE_get_last                         2479   EXIST::FUNCTION:
+ENGINE_get_prev                         2480   EXIST::FUNCTION:
+ENGINE_get_default_DH                   2481   EXIST::FUNCTION:
+ENGINE_get_RSA                          2482   EXIST::FUNCTION:
+ENGINE_set_default                      2483   EXIST::FUNCTION:
+ENGINE_get_RAND                         2484   EXIST::FUNCTION:
+ENGINE_get_first                        2485   EXIST::FUNCTION:
+ENGINE_by_id                            2486   EXIST::FUNCTION:
+ENGINE_set_finish_function              2487   EXIST::FUNCTION:
+ENGINE_get_default_BN_mod_exp_crt       2488   EXIST::FUNCTION:
+RSA_get_default_openssl_method          2489   EXIST::FUNCTION:RSA
+ENGINE_set_RSA                          2490   EXIST::FUNCTION:
+ENGINE_load_private_key                 2491   EXIST::FUNCTION:
+ENGINE_set_default_RAND                 2492   EXIST::FUNCTION:
+ENGINE_set_BN_mod_exp                   2493   EXIST::FUNCTION:
+ENGINE_remove                           2494   EXIST::FUNCTION:
+ENGINE_free                             2495   EXIST::FUNCTION:
+ENGINE_get_BN_mod_exp_crt               2496   EXIST::FUNCTION:
+ENGINE_get_next                         2497   EXIST::FUNCTION:
+ENGINE_set_name                         2498   EXIST::FUNCTION:
+ENGINE_get_default_DSA                  2499   EXIST::FUNCTION:
+ENGINE_set_default_BN_mod_exp           2500   EXIST::FUNCTION:
+ENGINE_set_default_RSA                  2501   EXIST::FUNCTION:
+ENGINE_get_default_RAND                 2502   EXIST::FUNCTION:
+ENGINE_get_default_BN_mod_exp           2503   EXIST::FUNCTION:
+ENGINE_set_RAND                         2504   EXIST::FUNCTION:
+ENGINE_set_id                           2505   EXIST::FUNCTION:
+ENGINE_set_BN_mod_exp_crt               2506   EXIST::FUNCTION:
+ENGINE_set_default_DH                   2507   EXIST::FUNCTION:
+ENGINE_new                              2508   EXIST::FUNCTION:
+ENGINE_get_id                           2509   EXIST::FUNCTION:
+DSA_set_default_openssl_method          2510   EXIST::FUNCTION:DSA
+ENGINE_add                              2511   EXIST::FUNCTION:
+DH_set_default_openssl_method           2512   EXIST::FUNCTION:DH
+ENGINE_get_DSA                          2513   EXIST::FUNCTION:
+ENGINE_get_ctrl_function                2514   EXIST::FUNCTION:
+ENGINE_set_ctrl_function                2515   EXIST::FUNCTION:
index 98ee58719654e2469fa27074988ed0fbf8748d39..72e47af9b4787d30d2f086f8b0a62f46b94ce99a 100755 (executable)
@@ -52,7 +52,8 @@ foreach (@ARGV)
                { printf STDERR "\t%-10s\t%s\n",$i,$ops{$i}; }
                print STDERR <<"EOF";
 and [options] can be one of
-       no-md2 no-md5 no-sha no-mdc2 no-ripemd  - Skip this digest
+       no-md2 no-md4 no-md5 no-sha no-mdc2     - Skip this digest
+       no-ripemd
        no-rc2 no-rc4 no-idea no-des no-bf no-cast - Skip this symetric cipher
        no-rc5
        no-rsa no-dsa no-dh                     - Skip this public key cipher
@@ -201,6 +202,7 @@ $cflags.=" -DNO_RC2"  if $no_rc2;
 $cflags.=" -DNO_RC4"  if $no_rc4;
 $cflags.=" -DNO_RC5"  if $no_rc5;
 $cflags.=" -DNO_MD2"  if $no_md2;
+$cflags.=" -DNO_MD4"  if $no_md4;
 $cflags.=" -DNO_MD5"  if $no_md5;
 $cflags.=" -DNO_SHA"  if $no_sha;
 $cflags.=" -DNO_SHA1" if $no_sha1;
@@ -666,6 +668,7 @@ sub var_add
        @a=grep(!/(_sock$)|(_acpt$)|(_conn$)|(^pxy_)/,@a) if $no_sock;
 
        @a=grep(!/(^md2)|(_md2$)/,@a) if $no_md2;
+       @a=grep(!/(^md4)|(_md4$)/,@a) if $no_md4;
        @a=grep(!/(^md5)|(_md5$)/,@a) if $no_md5;
        @a=grep(!/(rmd)|(ripemd)/,@a) if $no_rmd160;
 
@@ -855,6 +858,7 @@ sub read_options
        elsif (/^no-bf$/)       { $no_bf=1; }
        elsif (/^no-cast$/)     { $no_cast=1; }
        elsif (/^no-md2$/)      { $no_md2=1; }
+       elsif (/^no-md4$/)      { $no_md4=1; }
        elsif (/^no-md5$/)      { $no_md5=1; }
        elsif (/^no-sha$/)      { $no_sha=1; }
        elsif (/^no-sha1$/)     { $no_sha1=1; }
index 0f48c82fec6f53a6887c92182bd9348335644fc0..8703b7377d8791c974034b99dd973c70380ee2cc 100755 (executable)
@@ -5,21 +5,72 @@
 # It does this by parsing the header files and looking for the
 # prototyped functions: it then prunes the output.
 #
+# Intermediary files are created, call libeay.num and ssleay.num,...
+# Previously, they had the following format:
+#
+#      routine-name    nnnn
+#
+# But that isn't enough for a number of reasons, the first on being that
+# this format is (needlessly) very Win32-centric, and even then...
+# One of the biggest problems is that there's no information about what
+# routines should actually be used, which varies with what crypto algorithms
+# are disabled.  Also, some operating systems (for example VMS with VAX C)
+# need to keep track of the global variables as well as the functions.
+#
+# So, a remake of this script is done so as to include information on the
+# kind of symbol it is (function or variable) and what algorithms they're
+# part of.  This will allow easy translating to .def files or the corresponding
+# file in other operating systems (a .opt file for VMS, possibly with a .mar
+# file).
+#
+# The format now becomes:
+#
+#      routine-name    nnnn    info
+#
+# and the "info" part is actually a colon-separated string of fields with
+# the following meaning:
+#
+#      existence:platform:kind:algorithms
+#
+# - "existence" can be "EXIST" or "NOEXIST" depending on if the symbol is
+#   found somewhere in the source, 
+# - "platforms" is empty if it exists on all platforms, otherwise it contains
+#   comma-separated list of the platform, just as they are if the symbol exists
+#   for those platforms, or prepended with a "!" if not.  This helps resolve
+#   symbol name replacements for platforms where the names are too long for the
+#   compiler or linker, or if the systems is case insensitive and there is a
+#   clash.  This script assumes those redefinitions are place in the file
+#   crypto/idhacks.h.
+# - "kind" is "FUNCTION" or "VARIABLE".  The meaning of that is obvious.
+# - "algorithms" is a comma-separated list of algorithm names.  This helps
+#   exclude symbols that are part of an algorithm that some user wants to
+#   exclude.
+#
 
-my $crypto_num="util/libeay.num";
-my $ssl_num=   "util/ssleay.num";
+my $crypto_num= "util/libeay.num";
+my $ssl_num=    "util/ssleay.num";
 
 my $do_update = 0;
+my $do_rewrite = 0;
 my $do_crypto = 0;
 my $do_ssl = 0;
 my $do_ctest = 0;
+my $do_ctestall = 0;
 my $rsaref = 0;
 
-my $W32=1;
+my $VMS=0;
+my $W32=0;
+my $W16=0;
 my $NT=0;
 # Set this to make typesafe STACK definitions appear in DEF
 my $safe_stack_def = 0;
 
+my @known_platforms = ( "__FreeBSD__", "VMS", "WIN16", "WIN32",
+                       "WINNT", "PERL5", "NeXT" );
+my @known_algorithms = ( "RC2", "RC4", "RC5", "IDEA", "DES", "BF",
+                        "CAST", "MD2", "MD4", "MD5", "SHA", "RIPEMD",
+                        "MDC2", "RSA", "DSA", "DH", "HMAC", "FP_API" );
+
 my $options="";
 open(IN,"<Makefile.ssl") || die "unable to open Makefile.ssl!\n";
 while(<IN>) {
@@ -31,23 +82,28 @@ close(IN);
 # defined with ifndef(NO_XXX) are not included in the .def file, and everything
 # in directory xxx is ignored.
 my $no_rc2; my $no_rc4; my $no_rc5; my $no_idea; my $no_des; my $no_bf;
-my $no_cast; my $no_md2; my $no_md5; my $no_sha; my $no_ripemd; my $no_mdc2;
+my $no_cast;
+my $no_md2; my $no_md4; my $no_md5; my $no_sha; my $no_ripemd; my $no_mdc2;
 my $no_rsa; my $no_dsa; my $no_dh; my $no_hmac=0;
+my $no_fp_api;
 
 foreach (@ARGV, split(/ /, $options))
        {
        $W32=1 if $_ eq "32";
-       $W32=0 if $_ eq "16";
+       $W16=1 if $_ eq "16";
        if($_ eq "NT") {
                $W32 = 1;
                $NT = 1;
        }
+       $VMS=1 if $_ eq "VMS";
        $do_ssl=1 if $_ eq "ssleay";
        $do_ssl=1 if $_ eq "ssl";
        $do_crypto=1 if $_ eq "libeay";
        $do_crypto=1 if $_ eq "crypto";
        $do_update=1 if $_ eq "update";
+       $do_rewrite=1 if $_ eq "rewrite";
        $do_ctest=1 if $_ eq "ctest";
+       $do_ctestall=1 if $_ eq "ctestall";
        $rsaref=1 if $_ eq "rsaref";
        #$safe_stack_def=1 if $_ eq "-DDEBUG_SAFESTACK";
 
@@ -59,6 +115,7 @@ foreach (@ARGV, split(/ /, $options))
        elsif (/^no-bf$/)       { $no_bf=1; }
        elsif (/^no-cast$/)     { $no_cast=1; }
        elsif (/^no-md2$/)      { $no_md2=1; }
+       elsif (/^no-md4$/)      { $no_md4=1; }
        elsif (/^no-md5$/)      { $no_md5=1; }
        elsif (/^no-sha$/)      { $no_sha=1; }
        elsif (/^no-ripemd$/)   { $no_ripemd=1; }
@@ -70,6 +127,16 @@ foreach (@ARGV, split(/ /, $options))
        }
 
 
+# If no platform is given, assume WIN32
+if ($W32 + $W16 + $VMS == 0) {
+       $W32 = 1;
+}
+
+# Add extra knowledge
+if ($W16) {
+       $no_fp_api=1;
+}
+
 if (!$do_ssl && !$do_crypto)
        {
        print STDERR "usage: $0 ( ssl | crypto ) [ 16 | 32 | NT ] [rsaref]\n";
@@ -92,6 +159,7 @@ $crypto.=" crypto/rc2/rc2.h" unless $no_rc2;
 $crypto.=" crypto/bf/blowfish.h" unless $no_bf;
 $crypto.=" crypto/cast/cast.h" unless $no_cast;
 $crypto.=" crypto/md2/md2.h" unless $no_md2;
+$crypto.=" crypto/md4/md4.h" unless $no_md4;
 $crypto.=" crypto/md5/md5.h" unless $no_md5;
 $crypto.=" crypto/mdc2/mdc2.h" unless $no_mdc2;
 $crypto.=" crypto/sha/sha.h" unless $no_sha;
@@ -128,25 +196,41 @@ $crypto.=" crypto/rand/rand.h";
 $crypto.=" crypto/comp/comp.h";
 $crypto.=" crypto/tmdiff.h";
 
-my @ssl_func = &do_defs("SSLEAY", $ssl);
-my @crypto_func = &do_defs("LIBEAY", $crypto);
+my $symhacks="crypto/symhacks.h";
 
+my @ssl_symbols = &do_defs("SSLEAY", $ssl, $symhacks);
+my @crypto_symbols = &do_defs("LIBEAY", $crypto, $symhacks);
 
 if ($do_update) {
 
 if ($do_ssl == 1) {
-       open(OUT, ">>$ssl_num");
-       &update_numbers(*OUT,"SSLEAY",*ssl_list,$max_ssl, @ssl_func);
+
+       &maybe_add_info("SSLEAY",*ssl_list,@ssl_symbols);
+       if ($do_rewrite == 1) {
+               open(OUT, ">$ssl_num");
+               &rewrite_numbers(*OUT,"SSLEAY",*ssl_list,@ssl_symbols);
+               close OUT;
+       } else {
+               open(OUT, ">>$ssl_num");
+       }
+       &update_numbers(*OUT,"SSLEAY",*ssl_list,$max_ssl,@ssl_symbols);
        close OUT;
 }
 
 if($do_crypto == 1) {
-       open(OUT, ">>$crypto_num");
-       &update_numbers(*OUT,"LIBEAY",*crypto_list,$max_crypto, @crypto_func);
+
+       &maybe_add_info("LIBEAY",*crypto_list,@crypto_symbols);
+       if ($do_rewrite == 1) {
+               open(OUT, ">$crypto_num");
+               &rewrite_numbers(*OUT,"LIBEAY",*crypto_list,@crypto_symbols);
+       } else {
+               open(OUT, ">>$crypto_num");
+       }
+       &update_numbers(*OUT,"LIBEAY",*crypto_list,$max_crypto,@crypto_symbols);
        close OUT;
 } 
 
-} elsif ($do_ctest) {
+} elsif ($do_ctest || $do_ctestall) {
 
        print <<"EOF";
 
@@ -157,20 +241,20 @@ if($do_crypto == 1) {
 int main()
 {
 EOF
-       &print_test_file(*STDOUT,"SSLEAY",*ssl_list,@ssl_func)
+       &print_test_file(*STDOUT,"SSLEAY",*ssl_list,$do_ctestall,@ssl_symbols)
                if $do_ssl == 1;
 
-       &print_test_file(*STDOUT,"LIBEAY",*crypto_list,@crypto_func)
+       &print_test_file(*STDOUT,"LIBEAY",*crypto_list,$do_ctestall,@crypto_symbols)
                if $do_crypto == 1;
 
        print "}\n";
 
 } else {
 
-       &print_def_file(*STDOUT,"SSLEAY",*ssl_list,@ssl_func)
+       &print_def_file(*STDOUT,"SSLEAY",*ssl_list,@ssl_symbols)
                if $do_ssl == 1;
 
-       &print_def_file(*STDOUT,"LIBEAY",*crypto_list,@crypto_func)
+       &print_def_file(*STDOUT,"LIBEAY",*crypto_list,@crypto_symbols)
                if $do_crypto == 1;
 
 }
@@ -178,42 +262,30 @@ EOF
 
 sub do_defs
 {
-       my($name,$files)=@_;
+       my($name,$files,$symhacksfile)=@_;
        my $file;
        my @ret;
-       my %funcs;
+       my %syms;
+       my %platform;           # For anything undefined, we assume ""
+       my %kind;               # For anything undefined, we assume "FUNCTION"
+       my %algorithm;          # For anything undefined, we assume ""
+       my %rename;
        my $cpp;
 
-       foreach $file (split(/\s+/,$files))
+       foreach $file (split(/\s+/,$symhacksfile." ".$files))
                {
                open(IN,"<$file") || die "unable to open $file:$!\n";
                my $line = "", my $def= "";
                my %tag = (
-                       FreeBSD         => 0,
+                       (map { $_ => 0 } @known_platforms),
+                       (map { "NO_".$_ => 0 } @known_algorithms),
                        NOPROTO         => 0,
-                       WIN16           => 0,
                        PERL5           => 0,
                        _WINDLL         => 0,
-                       NO_FP_API       => 0,
                        CONST_STRICT    => 0,
                        TRUE            => 1,
-                       NO_RC2          => 0,
-                       NO_RC4          => 0,
-                       NO_RC5          => 0,
-                       NO_IDEA         => 0,
-                       NO_DES          => 0,
-                       NO_BF           => 0,
-                       NO_CAST         => 0,
-                       NO_MD2          => 0,
-                       NO_MD5          => 0,
-                       NO_SHA          => 0,
-                       NO_RIPEMD       => 0,
-                       NO_MDC2         => 0,
-                       NO_RSA          => 0,
-                       NO_DSA          => 0,
-                       NO_DH           => 0,
-                       NO_HMAC         => 0,
                );
+               my $symhacking = $file eq $symhacksfile;
                while(<IN>) {
                        last if (/BEGIN ERROR CODES/);
                        if ($line ne '') {
@@ -226,9 +298,9 @@ sub do_defs
                                next;
                        }
 
-                       $cpp = 1 if /^#.*ifdef.*cplusplus/;
+                       $cpp = 1 if /^\#.*ifdef.*cplusplus/;
                        if ($cpp) {
-                               $cpp = 0 if /^#.*endif/;
+                               $cpp = 0 if /^\#.*endif/;
                                next;
                        }
 
@@ -237,102 +309,132 @@ sub do_defs
                        if (/^\#\s*ifndef (.*)/) {
                                push(@tag,$1);
                                $tag{$1}=-1;
-                               next;
                        } elsif (/^\#\s*if !defined\(([^\)]+)\)/) {
                                push(@tag,$1);
                                $tag{$1}=-1;
-                               next;
                        } elsif (/^\#\s*ifdef (.*)/) {
                                push(@tag,$1);
                                $tag{$1}=1;
-                               next;
-                       } elsif (/^\#\s*if defined(.*)/) {
+                       } elsif (/^\#\s*if defined\(([^\)]+)\)/) {
                                push(@tag,$1);
                                $tag{$1}=1;
-                               next;
+                       } elsif (/^\#\s*error\s+(\w+) is disabled\./) {
+                               if ($tag[$#tag] eq "NO_".$1) {
+                                       $tag{$tag[$#tag]}=2;
+                               }
                        } elsif (/^\#\s*endif/) {
-                               $tag{$tag[$#tag]}=0;
+                               if ($tag{$tag[$#tag]}==2) {
+                                       $tag{$tag[$#tag]}=-1;
+                               } else {
+                                       $tag{$tag[$#tag]}=0;
+                               }
                                pop(@tag);
-                               next;
                        } elsif (/^\#\s*else/) {
                                my $t=$tag[$#tag];
                                $tag{$t}= -$tag{$t};
-                               next;
                        } elsif (/^\#\s*if\s+1/) {
                                # Dummy tag
                                push(@tag,"TRUE");
                                $tag{"TRUE"}=1;
-                               next;
                        } elsif (/^\#\s*if\s+0/) {
                                # Dummy tag
                                push(@tag,"TRUE");
                                $tag{"TRUE"}=-1;
-                               next;
-                       } elsif (/^\#/) {
+                       } elsif (/^\#\s*define\s+(\w+)\s+(\w+)/
+                                && $symhacking) {
+                               my $s = $1;
+                               my $a =
+                                   $2.":".join(",", grep(!/^$/,
+                                                         map { $tag{$_} == 1 ?
+                                                                   $_ : "" }
+                                                         @known_platforms));
+                               $rename{$s} = $a;
+                       }
+                       if (/^\#/) {
+                               my @p = grep(!/^$/,
+                                            map { $tag{$_} == 1 ? $_ :
+                                                      $tag{$_} == -1 ? "!".$_  : "" }
+                                            @known_platforms);
+                               my @a = grep(!/^$/,
+                                            map { $tag{"NO_".$_} == -1 ? $_ : "" }
+                                            @known_algorithms);
+                               $def .= "#INFO:".join(',',@p).":".join(',',@a).";";
                                next;
                        }
                        if (/^\s*DECLARE_STACK_OF\s*\(\s*(\w*)\s*\)/) {
                                next;
+                       } elsif (/^\s*DECLARE_PKCS12_STACK_OF\s*\(\s*(\w*)\s*\)/) {
+                               next;
                        } elsif (/^\s*DECLARE_ASN1_SET_OF\s*\(\s*(\w*)\s*\)/) {
                                next;
                        } elsif (/^DECLARE_PEM_rw\s*\(\s*(\w*)\s*,/ ||
-                                    /^DECLARE_PEM_rw_cb\s*\(\s*(\w*)\s*,/ ) {
-                               if (!($no_rsa && ($1 eq "RSAPrivateKey" ||
-                                                 $1 eq "RSAPublicKey" ||
-                                                 $1 eq "RSA_PUBKEY"))) {
-                                       if($W32) {
-                                               $funcs{"PEM_read_${1}"} = 1;
-                                               $funcs{"PEM_write_${1}"} = 1;
-                                       }
-                                       $funcs{"PEM_read_bio_${1}"} = 1;
-                                       $funcs{"PEM_write_bio_${1}"} = 1;
+                                /^DECLARE_PEM_rw_cb\s*\(\s*(\w*)\s*,/ ) {
+                               # Things not in Win16
+                               $syms{"PEM_read_${1}"} = 1;
+                               $platform{"PEM_read_${1}"} = "!WIN16";
+                               $syms{"PEM_write_${1}"} = 1;
+                               $platform{"PEM_write_${1}"} = "!WIN16";
+                               # Things that are everywhere
+                               $syms{"PEM_read_bio_${1}"} = 1;
+                               $syms{"PEM_write_bio_${1}"} = 1;
+                               if ($1 eq "RSAPrivateKey" ||
+                                   $1 eq "RSAPublicKey" ||
+                                   $1 eq "RSA_PUBKEY") {
+                                       $algorithm{"PEM_read_${1}"} = "RSA";
+                                       $algorithm{"PEM_write_${1}"} = "RSA";
+                                       $algorithm{"PEM_read_bio_${1}"} = "RSA";
+                                       $algorithm{"PEM_write_bio_${1}"} = "RSA";
+                               }
+                               elsif ($1 eq "DSAPrivateKey" ||
+                                      $1 eq "DSAparams" ||
+                                      $1 eq "RSA_PUBKEY") {
+                                       $algorithm{"PEM_read_${1}"} = "DSA";
+                                       $algorithm{"PEM_write_${1}"} = "DSA";
+                                       $algorithm{"PEM_read_bio_${1}"} = "DSA";
+                                       $algorithm{"PEM_write_bio_${1}"} = "DSA";
+                               }
+                               elsif ($1 eq "DHparams") {
+                                       $algorithm{"PEM_read_${1}"} = "DH";
+                                       $algorithm{"PEM_write_${1}"} = "DH";
+                                       $algorithm{"PEM_read_bio_${1}"} = "DH";
+                                       $algorithm{"PEM_write_bio_${1}"} = "DH";
                                }
                        } elsif (/^DECLARE_PEM_write\s*\(\s*(\w*)\s*,/ ||
                                     /^DECLARE_PEM_write_cb\s*\(\s*(\w*)\s*,/ ) {
-                               if (!($no_rsa && ($1 eq "RSAPrivateKey" ||
-                                                 $1 eq "RSAPublicKey" ||
-                                                 $1 eq "RSA_PUBKEY"))) {
-                                       if($W32) {
-                                               $funcs{"PEM_write_${1}"} = 1;
-                                       }
-                                       $funcs{"PEM_write_bio_${1}"} = 1;
+                               # Things not in Win16
+                               $syms{"PEM_write_${1}"} = 1;
+                               $platform{"PEM_write_${1}"} .= ",!WIN16";
+                               # Things that are everywhere
+                               $syms{"PEM_write_bio_${1}"} = 1;
+                               if ($1 eq "RSAPrivateKey" ||
+                                   $1 eq "RSAPublicKey" ||
+                                   $1 eq "RSA_PUBKEY") {
+                                       $algorithm{"PEM_write_${1}"} = "RSA";
+                                       $algorithm{"PEM_write_bio_${1}"} = "RSA";
+                               }
+                               elsif ($1 eq "DSAPrivateKey" ||
+                                      $1 eq "DSAparams" ||
+                                      $1 eq "RSA_PUBKEY") {
+                                       $algorithm{"PEM_write_${1}"} = "DSA";
+                                       $algorithm{"PEM_write_bio_${1}"} = "DSA";
+                               }
+                               elsif ($1 eq "DHparams") {
+                                       $algorithm{"PEM_write_${1}"} = "DH";
+                                       $algorithm{"PEM_write_bio_${1}"} = "DH";
                                }
                        } elsif (/^DECLARE_PEM_read\s*\(\s*(\w*)\s*,/ ||
                                     /^DECLARE_PEM_read_cb\s*\(\s*(\w*)\s*,/ ) {
-                               if($W32) {
-                                       $funcs{"PEM_read_${1}"} = 1;
-                               }
-                               $funcs{"PEM_read_bio_${1}"} = 1;
+                               # Things not in Win16
+                               $syms{"PEM_read_${1}"} = 1;
+                               $platform{"PEM_read_${1}"} .= ",!WIN16";
+                               # Things that are everywhere
+                               $syms{"PEM_read_bio_${1}"} = 1;
                        } elsif (
-                               ($tag{'TRUE'} != -1) &&
-                               ($tag{'FreeBSD'} != 1) &&
-                               ($tag{'CONST_STRICT'} != 1) &&
-                               (($W32 && ($tag{'WIN16'} != 1)) ||
-                                (!$W32 && ($tag{'WIN16'} != -1))) &&
-                               ($tag{'PERL5'} != 1) &&
-#                              ($tag{'_WINDLL'} != -1) &&
-                               ((!$W32 && $tag{'_WINDLL'} != -1) ||
-                                ($W32 && $tag{'_WINDLL'} != 1)) &&
-                               ((($tag{'NO_FP_API'} != 1) && $W32) ||
-                                (($tag{'NO_FP_API'} != -1) && !$W32)) &&
-                               ($tag{'NO_RC2'} == 0  || !$no_rc2) &&
-                               ($tag{'NO_RC4'} == 0  || !$no_rc4) &&
-                               ($tag{'NO_RC5'} == 0  || !$no_rc5) &&
-                               ($tag{'NO_IDEA'} == 0 || !$no_idea) &&
-                               ($tag{'NO_DES'} == 0  || !$no_des) &&
-                               ($tag{'NO_BF'} == 0   || !$no_bf) &&
-                               ($tag{'NO_CAST'} == 0 || !$no_cast) &&
-                               ($tag{'NO_MD2'} == 0  || !$no_md2) &&
-                               ($tag{'NO_MD5'} == 0  || !$no_md5) &&
-                               ($tag{'NO_SHA'} == 0  || !$no_sha) &&
-                               ($tag{'NO_RIPEMD'} == 0 || !$no_ripemd) &&
-                               ($tag{'NO_MDC2'} == 0 || !$no_mdc2) &&
-                               ($tag{'NO_RSA'} == 0  || !$no_rsa) &&
-                               ($tag{'NO_DSA'} == 0  || !$no_dsa) &&
-                               ($tag{'NO_DH'} == 0   || !$no_dh) &&
-                               ($tag{'NO_HMAC'} == 0 || !$no_hmac))
+                               ($tag{'TRUE'} != -1)
+                               && ($tag{'CONST_STRICT'} != 1)
+                                )
                                {
-                                       if (/{|\/\*/) { # }
+                                       if (/\{|\/\*|\([^\)]*$/) {
                                                $line = $_;
                                        } else {
                                                $def .= $_;
@@ -341,30 +443,26 @@ sub do_defs
                        }
                close(IN);
 
+               my $algs;
+               my $plays;
+
                foreach (split /;/, $def) {
+                       my $s; my $k = "FUNCTION"; my $p; my $a;
                        s/^[\n\s]*//g;
                        s/[\n\s]*$//g;
-                       next if(/#define/);
+                       next if(/\#undef/);
                        next if(/typedef\W/);
-                       next if(/EVP_bf/ and $no_bf);
-                       next if(/EVP_cast/ and $no_cast);
-                       next if(/EVP_des/ and $no_des);
-                       next if(/EVP_dss/ and $no_dsa);
-                       next if(/EVP_idea/ and $no_idea);
-                       next if(/EVP_md2/ and $no_md2);
-                       next if(/EVP_md5/ and $no_md5);
-                       next if(/EVP_rc2/ and $no_rc2);
-                       next if(/EVP_rc4/ and $no_rc4);
-                       next if(/EVP_rc5/ and $no_rc5);
-                       next if(/EVP_ripemd/ and $no_ripemd);
-                       next if(/EVP_sha/ and $no_sha);
-                       next if(/EVP_(Open|Seal)(Final|Init)/ and $no_rsa);
-                       next if(/PEM_Seal(Final|Init|Update)/ and $no_rsa);
-                       next if(/RSAPrivateKey/ and $no_rsa);
-                       next if(/SSLv23?_((client|server)_)?method/ and $no_rsa);
-
-                       if (/\(\*(\w*)\([^\)]+/) {
-                               $funcs{$1} = 1;
+                       next if(/\#define/);
+
+                       if (/^\#INFO:([^:]*):(.*)$/) {
+                               $plats = $1;
+                               $algs = $2;
+                               next;
+                       } elsif (/^\s*OPENSSL_EXTERN\s.*?(\w+)(\[[0-9]*\])*\s*$/) {
+                               $s = $1;
+                               $k = "VARIABLE";
+                       } elsif (/\(\*(\w*)\([^\)]+/) {
+                               $s = $1;
                        } elsif (/\w+\W+(\w+)\W*\(\s*\)$/s) {
                                # K&R C
                                next;
@@ -375,65 +473,181 @@ sub do_defs
                                }
                                s/\(void\)//;
                                /(\w+)\W*\(\)/s;
-                               $funcs{$1} = 1;
+                               $s = $1;
                        } elsif (/\(/ and not (/=/)) {
                                print STDERR "File $file: cannot parse: $_;\n";
+                               next;
+                       } else {
+                               next;
+                       }
+
+                       $syms{$s} = 1;
+                       $kind{$s} = $k;
+
+                       $p = $plats;
+                       $a = $algs;
+                       $a .= ",BF" if($s =~ /EVP_bf/);
+                       $a .= ",CAST" if($s =~ /EVP_cast/);
+                       $a .= ",DES" if($s =~ /EVP_des/);
+                       $a .= ",DSA" if($s =~ /EVP_dss/);
+                       $a .= ",IDEA" if($s =~ /EVP_idea/);
+                       $a .= ",MD2" if($s =~ /EVP_md2/);
+                       $a .= ",MD4" if($s =~ /EVP_md4/);
+                       $a .= ",MD5" if($s =~ /EVP_md5/);
+                       $a .= ",RC2" if($s =~ /EVP_rc2/);
+                       $a .= ",RC4" if($s =~ /EVP_rc4/);
+                       $a .= ",RC5" if($s =~ /EVP_rc5/);
+                       $a .= ",RIPEMD" if($s =~ /EVP_ripemd/);
+                       $a .= ",SHA" if($s =~ /EVP_sha/);
+                       $a .= ",RSA" if($s =~ /EVP_(Open|Seal)(Final|Init)/);
+                       $a .= ",RSA" if($s =~ /PEM_Seal(Final|Init|Update)/);
+                       $a .= ",RSA" if($s =~ /RSAPrivateKey/);
+                       $a .= ",RSA" if($s =~ /SSLv23?_((client|server)_)?method/);
+
+                       $platform{$s} .= ','.$p;
+                       $algorithm{$s} .= ','.$a;
+
+                       if (defined($rename{$s})) {
+                               (my $r, my $p) = split(/:/,$rename{$s});
+                               my @ip = map { /^!(.*)$/ ? $1 : "!".$_ } split /,/, $p;
+                               $syms{$r} = 1;
+                               $kind{$r} = $kind{$s}."(".$s.")";
+                               $algorithm{$r} = $algorithm{$s};
+                               $platform{$r} = $platform{$s}.",".$p;
+                               $platform{$s} .= ','.join(',', @ip).','.join(',', @ip);
                        }
                }
        }
 
-       # Prune the returned functions
+       # Prune the returned symbols
 
-        delete $funcs{"SSL_add_dir_cert_subjects_to_stack"};
-        delete $funcs{"RSA_PKCS1_RSAref"} unless $rsaref;
-        delete $funcs{"bn_dump1"};
+       $platform{"crypt"} .= ",!PERL5,!__FreeBSD__,!NeXT";
 
-       if($W32) {
-               delete $funcs{"BIO_s_file_internal"};
-               delete $funcs{"BIO_new_file_internal"};
-               delete $funcs{"BIO_new_fp_internal"};
-       } else {
-               if(exists $funcs{"ERR_load_CRYPTO_strings"}) {
-                       delete $funcs{"ERR_load_CRYPTO_strings"};
-                       $funcs{"ERR_load_CRYPTOlib_strings"} = 1;
+        delete $syms{"SSL_add_dir_cert_subjects_to_stack"};
+        delete $syms{"bn_dump1"};
+
+       $platform{"BIO_s_file_internal"} .= ",WIN16";
+       $platform{"BIO_new_file_internal"} .= ",WIN16";
+       $platform{"BIO_new_fp_internal"} .= ",WIN16";
+
+       $platform{"BIO_s_file"} .= ",!WIN16";
+       $platform{"BIO_new_file"} .= ",!WIN16";
+       $platform{"BIO_new_fp"} .= ",!WIN16";
+
+       $platform{"BIO_s_log"} .= ",!WIN32,!WIN16,!macintosh";
+
+       if(exists $syms{"ERR_load_CRYPTO_strings"}) {
+               $platform{"ERR_load_CRYPTO_strings"} .= ",!VMS,!WIN16";
+               $syms{"ERR_load_CRYPTOlib_strings"} = 1;
+               $platform{"ERR_load_CRYPTOlib_strings"} .= ",VMS,WIN16";
+       }
+
+       # Info we know about
+
+       $platform{"RSA_PKCS1_RSAref"} = "RSAREF";
+       $algorithm{"RSA_PKCS1_RSAref"} = "RSA";
+
+       push @ret, map { $_."\\".&info_string($_,"EXIST",
+                                             $platform{$_},
+                                             $kind{$_},
+                                             $algorithm{$_}) } keys %syms;
+
+       return(@ret);
+}
+
+sub info_string {
+       (my $symbol, my $exist, my $platforms, my $kind, my $algorithms) = @_;
+
+       my %a = defined($algorithms) ?
+           map { $_ => 1 } split /,/, $algorithms : ();
+       my $pl = defined($platforms) ? $platforms : "";
+       my %p = map { $_ => 0 } split /,/, $pl;
+       my $k = defined($kind) ? $kind : "FUNCTION";
+       my $ret;
+
+       # We do this, because if there's code like the following, it really
+       # means the function exists in all cases and should therefore be
+       # everywhere.  By increasing and decreasing, we may attain 0:
+       #
+       # ifndef WIN16
+       #    int foo();
+       # else
+       #    int _fat foo();
+       # endif
+       foreach $platform (split /,/, $pl) {
+               if ($platform =~ /^!(.*)$/) {
+                       $p{$1}--;
+               } else {
+                       $p{$platform}++;
                }
-               delete $funcs{"BIO_s_file"};
-               delete $funcs{"BIO_new_file"};
-               delete $funcs{"BIO_new_fp"};
        }
-       if (!$NT) {
-               delete $funcs{"BIO_s_log"};
+       foreach $platform (keys %p) {
+               if ($p{$platform} == 0) { delete $p{$platform}; }
        }
 
-       push @ret, keys %funcs;
+       delete $p{""};
+       delete $a{""};
 
-       return(@ret);
+       $ret = $exist;
+       $ret .= ":".join(',',map { $p{$_} < 0 ? "!".$_ : $_ } keys %p);
+       $ret .= ":".$k;
+       $ret .= ":".join(',',keys %a);
+       return $ret;
+}
+
+sub maybe_add_info {
+       (my $name, *nums, my @symbols) = @_;
+       my $sym;
+       my $new_info = 0;
+
+       print STDERR "Updating $name info\n";
+       foreach $sym (@symbols) {
+               (my $s, my $i) = split /\\/, $sym;
+               $i =~ s/^(.*?:.*?:\w+)(\(\w+\))?/$1/;
+               if (defined($nums{$s})) {
+                       (my $n, my $dummy) = split /\\/, $nums{$s};
+                       if (!defined($dummy) || $i ne $dummy) {
+                               $nums{$s} = $n."\\".$i;
+                               $new_info++;
+                               #print STDERR "DEBUG: maybe_add_info for $s: \"$dummy\" => \"$i\"\n";
+                       }
+               }
+       }
+       if ($new_info) {
+               print STDERR "$new_info old symbols got an info update\n";
+       } else {
+               print STDERR "No old symbols needed info update\n";
+       }
 }
 
 sub print_test_file
 {
-       (*OUT,my $name,*nums,my @functions)=@_;
+       (*OUT,my $name,*nums,my @symbols)=@_;
        my $n = 1; my @e; my @r;
-       my $func;
-
-       (@e)=grep(/^SSLeay/,@functions);
-       (@r)=grep(!/^SSLeay/,@functions);
-       @functions=((sort @e),(sort @r));
-
-       foreach $func (@functions) {
-               if (!defined($nums{$func})) {
-                       printf STDERR "$func does not have a number assigned\n"
-                                       if(!$do_update);
-               } else {
-                       $n=$nums{$func};
-                       print OUT "\t$func();\n";
+       my $sym; my $prev = ""; my $prefSSLeay;
+
+       (@e)=grep(/^SSLeay\\.*?:.*?:FUNCTION/,@symbols);
+       (@r)=grep(/^\w+\\.*?:.*?:FUNCTION/ && !/^SSLeay\\.*?:.*?:FUNCTION/,@symbols);
+       @symbols=((sort @e),(sort @r));
+
+       foreach $sym (@symbols) {
+               (my $s, my $i) = $sym =~ /^(.*?)\\(.*)$/;
+               if ($s ne $prev) {
+                       if (!defined($nums{$sym})) {
+                               printf STDERR "Warning: $sym does not have a number assigned\n"
+                                               if(!$do_update);
+                       } else {
+                               $n=$nums{$s};
+                               print OUT "\t$s();\n";
+                       }
                }
+               $prev = $s;     # To avoid duplicates...
        }
 }
 
 sub print_def_file
 {
-       (*OUT,my $name,*nums,my @functions)=@_;
+       (*OUT,my $name,*nums,my @symbols)=@_;
        my $n = 1; my @e; my @r;
 
        if ($W32)
@@ -467,18 +681,27 @@ EOF
 
        print "EXPORTS\n";
 
+       (@e)=grep(/^SSLeay\\.*?:.*?:FUNCTION/,@symbols);
+       (@r)=grep(/^\w+\\.*?:.*?:FUNCTION/ && !/^SSLeay\\.*?:.*?:FUNCTION/,@symbols);
+       @symbols=((sort @e),(sort @r));
 
-       (@e)=grep(/^SSLeay/,@functions);
-       (@r)=grep(!/^SSLeay/,@functions);
-       @functions=((sort @e),(sort @r));
 
-       foreach $func (@functions) {
-               if (!defined($nums{$func})) {
-                       printf STDERR "$func does not have a number assigned\n"
+       foreach $sym (@symbols) {
+               (my $s, my $i) = $sym =~ /^(.*?)\\(.*)$/;
+               if (!defined($nums{$s})) {
+                       printf STDERR "Warning: $s does not have a number assigned\n"
                                        if(!$do_update);
                } else {
-                       $n=$nums{$func};
-                       printf OUT "    %s%-40s@%d\n",($W32)?"":"_",$func,$n;
+                       (my $n, my $i) = split /\\/, $nums{$s};
+                       my @p = split(/,/, ($i =~ /^.*?:(.*?):/,$1));
+                       printf OUT "    %s%-40s@%d\n",($W32)?"":"_",$s,$n
+                           # It is very important to check NT before W32
+                           if ($NT && (!@p || (grep(/^WINNT$/,@p)
+                                               && !grep(/^!WINNT$/,@p)))
+                               || $W32 && (!@p || (grep(/^WIN32$/,@p)
+                                                   && !grep(/^!WIN32$/,@p)))
+                               || $W16 && (!@p || (grep(/^WIN16$/,@p)
+                                                   && !grep(/^!WIN16$/,@p))));
                }
        }
        printf OUT "\n";
@@ -490,6 +713,8 @@ sub load_numbers
        my(@a,%ret);
 
        $max_num = 0;
+       $num_noinfo = 0;
+       $prev = "";
 
        open(IN,"<$name") || die "unable to open $name:$!\n";
        while (<IN>) {
@@ -497,27 +722,138 @@ sub load_numbers
                s/#.*$//;
                next if /^\s*$/;
                @a=split;
-               $ret{$a[0]}=$a[1];
+               if (defined $ret{$a[0]}) {
+                       print STDERR "Warning: Symbol '",$a[0],"' redefined. old=",$ret{$a[0]},", new=",$a[1],"\n";
+               }
+               if ($max_num > $a[1]) {
+                       print STDERR "Warning: Number decreased from ",$max_num," to ",$a[1],"\n";
+               }
+               if ($max_num == $a[1]) {
+                       # This is actually perfectly OK
+                       #print STDERR "Warning: Symbol ",$a[0]," has same number as previous ",$prev,": ",$a[1],"\n";
+               }
+               if ($#a < 2) {
+                       # Existence will be proven later, in do_defs
+                       $ret{$a[0]}=$a[1];
+                       $num_noinfo++;
+               } else {
+                       $ret{$a[0]}=$a[1]."\\".$a[2]; # \\ is a special marker
+               }
                $max_num = $a[1] if $a[1] > $max_num;
+               $prev=$a[0];
+       }
+       if ($num_noinfo) {
+               print STDERR "Warning: $num_noinfo symbols were without info.";
+               if ($do_rewrite) {
+                       printf STDERR "  The rewrite will fix this.\n";
+               } else {
+                       printf STDERR "  You should do a rewrite to fix this.\n";
+               }
        }
        close(IN);
        return(%ret);
 }
 
+sub parse_number
+{
+       (my $str, my $what) = @_;
+       (my $n, my $i) = split(/\\/,$str);
+       if ($what eq "n") {
+               return $n;
+       } else {
+               return $i;
+       }
+}
+
+sub rewrite_numbers
+{
+       (*OUT,$name,*nums,@symbols)=@_;
+       my $thing;
+
+       print STDERR "Rewriting $name\n";
+
+       my @r = grep(/^\w+\\.*?:.*?:\w+\(\w+\)/,@symbols);
+       my $r; my %r; my %rsyms;
+       foreach $r (@r) {
+               (my $s, my $i) = split /\\/, $r;
+               my $a = $1 if $i =~ /^.*?:.*?:\w+\((\w+)\)/;
+               $i =~ s/^(.*?:.*?:\w+)\(\w+\)/$1/;
+               $r{$a} = $s."\\".$i;
+               $rsyms{$s} = 1;
+       }
+
+       my @s=sort { &parse_number($nums{$a},"n") <=> &parse_number($nums{$b},"n") } keys %nums;
+       foreach $sym (@s) {
+               (my $n, my $i) = split /\\/, $nums{$sym};
+               next if defined($i) && $i =~ /^.*?:.*?:\w+\(\w+\)/;
+               next if defined($rsyms{$sym});
+               $i="NOEXIST::FUNCTION:" if !defined($i) || $i eq "";
+               printf OUT "%s%-40s%d\t%s\n","",$sym,$n,$i;
+               if (exists $r{$sym}) {
+                       (my $s, $i) = split /\\/,$r{$sym};
+                       printf OUT "%s%-40s%d\t%s\n","",$s,$n,$i;
+               }
+       }
+}
+
 sub update_numbers
 {
-       (*OUT,$name,*nums,my $start_num, my @functions)=@_;
-       my $new_funcs = 0;
-       print STDERR "Updating $name\n";
-       foreach $func (@functions) {
-               if (!exists $nums{$func}) {
-                       $new_funcs++;
-                       printf OUT "%s%-40s%d\n","",$func, ++$start_num;
+       (*OUT,$name,*nums,my $start_num, my @symbols)=@_;
+       my $new_syms = 0;
+
+       print STDERR "Updating $name numbers\n";
+
+       my @r = grep(/^\w+\\.*?:.*?:\w+\(\w+\)/,@symbols);
+       my $r; my %r; my %rsyms;
+       foreach $r (@r) {
+               (my $s, my $i) = split /\\/, $r;
+               my $a = $1 if $i =~ /^.*?:.*?:\w+\((\w+)\)/;
+               $i =~ s/^(.*?:.*?:\w+)\(\w+\)/$1/;
+               $r{$a} = $s."\\".$i;
+               $rsyms{$s} = 1;
+       }
+
+       foreach $sym (@symbols) {
+               (my $s, my $i) = $sym =~ /^(.*?)\\(.*)$/;
+               next if $i =~ /^.*?:.*?:\w+\(\w+\)/;
+               next if defined($rsyms{$sym});
+               die "ERROR: Symbol $sym had no info attached to it."
+                   if $i eq "";
+               if (!exists $nums{$s}) {
+                       $new_syms++;
+                       printf OUT "%s%-40s%d\t%s\n","",$s, ++$start_num,$i;
+                       if (exists $r{$s}) {
+                               ($s, $i) = split /\\/,$r{$sym};
+                               printf OUT "%s%-40s%d\t%s\n","",$s, $start_num,$i;
+                       }
                }
        }
-       if($new_funcs) {
-               print STDERR "$new_funcs New Functions added\n";
+       if($new_syms) {
+               print STDERR "$new_syms New symbols added\n";
        } else {
-               print STDERR "No New Functions Added\n";
+               print STDERR "No New symbols Added\n";
        }
 }
+
+sub check_existing
+{
+       (*nums, my @symbols)=@_;
+       my %existing; my @remaining;
+       @remaining=();
+       foreach $sym (@symbols) {
+               (my $s, my $i) = $sym =~ /^(.*?)\\(.*)$/;
+               $existing{$s}=1;
+       }
+       foreach $sym (keys %nums) {
+               if (!exists $existing{$sym}) {
+                       push @remaining, $sym;
+               }
+       }
+       if(@remaining) {
+               print STDERR "The following symbols do not seem to exist:\n";
+               foreach $sym (@remaining) {
+                       print STDERR "\t",$sym,"\n";
+               }
+       }
+}
+
index fca47601bd3c657a7db55805a5a18b8f2587753c..470feea76f262e07b9e5fdaf8f53e16d100d9eb3 100755 (executable)
@@ -10,6 +10,7 @@ my @dirs = (
 ".",
 "crypto",
 "crypto/md2",
+"crypto/md4",
 "crypto/md5",
 "crypto/sha",
 "crypto/mdc2",
index f81e50201b7510cf9cc927e50572dbb9000d25fb..9d6c60387fa1c862f4c3fe4a4fe86a30c48e60ee 100755 (executable)
@@ -11,7 +11,7 @@
 %two=&loadfile($ARGV[1]);
 
 $line=0;
-foreach $a ("md2","md5","sha","sha1","rc4","des cfb","des cbc","des ede3",
+foreach $a ("md2","md4","md5","sha","sha1","rc4","des cfb","des cbc","des ede3",
        "idea cfb","idea cbc","rc2 cfb","rc2 cbc","blowfish cbc","cast cbc")
        {
        if (defined($one{$a,8}) && defined($two{$a,8}))
index 047950d899345037d254ff8ae4a1de4d7224ff8b..8dd5feece1e7b862691483417c4594f2872f94e0 100755 (executable)
-ERR_load_SSL_strings                   1
-SSL_CIPHER_description                 2
-SSL_CTX_add_client_CA                  3
-SSL_CTX_add_session                    4
-SSL_CTX_check_private_key              5
-SSL_CTX_ctrl                           6
-SSL_CTX_flush_sessions                 7
-SSL_CTX_free                           8
-SSL_CTX_get_client_CA_list             9
-SSL_CTX_get_verify_callback            10
-SSL_CTX_get_verify_mode                        11
-SSL_CTX_new                            12
-SSL_CTX_remove_session                 13
-SSL_CTX_set_cert_verify_cb             14
-SSL_CTX_set_cipher_list                        15
-SSL_CTX_set_client_CA_list             16
-SSL_CTX_set_default_passwd_cb          17
-SSL_CTX_set_ssl_version                        19
-SSL_CTX_set_verify                     21
-SSL_CTX_use_PrivateKey                 22
-SSL_CTX_use_PrivateKey_ASN1            23
-SSL_CTX_use_PrivateKey_file            24
-SSL_CTX_use_RSAPrivateKey              25
-SSL_CTX_use_RSAPrivateKey_ASN1         26
-SSL_CTX_use_RSAPrivateKey_file         27
-SSL_CTX_use_certificate                        28
-SSL_CTX_use_certificate_ASN1           29
-SSL_CTX_use_certificate_file           30
-SSL_SESSION_free                       31
-SSL_SESSION_new                                32
-SSL_SESSION_print                      33
-SSL_SESSION_print_fp                   34
-SSL_accept                             35
-SSL_add_client_CA                      36
-SSL_alert_desc_string                  37
-SSL_alert_desc_string_long             38
-SSL_alert_type_string                  39
-SSL_alert_type_string_long             40
-SSL_check_private_key                  41
-SSL_clear                              42
-SSL_connect                            43
-SSL_copy_session_id                    44
-SSL_ctrl                               45
-SSL_dup                                        46
-SSL_dup_CA_list                                47
-SSL_free                               48
-SSL_get_certificate                    49
-SSL_get_cipher_list                    52
-SSL_get_ciphers                                55
-SSL_get_client_CA_list                 56
-SSL_get_default_timeout                        57
-SSL_get_error                          58
-SSL_get_fd                             59
-SSL_get_peer_cert_chain                        60
-SSL_get_peer_certificate               61
-SSL_get_rbio                           63
-SSL_get_read_ahead                     64
-SSL_get_shared_ciphers                 65
-SSL_get_ssl_method                     66
-SSL_get_verify_callback                        69
-SSL_get_verify_mode                    70
-SSL_get_version                                71
-SSL_get_wbio                           72
-SSL_load_client_CA_file                        73
-SSL_load_error_strings                 74
-SSL_new                                        75
-SSL_peek                               76
-SSL_pending                            77
-SSL_read                               78
-SSL_renegotiate                                79
-SSL_rstate_string                      80
-SSL_rstate_string_long                 81
-SSL_set_accept_state                   82
-SSL_set_bio                            83
-SSL_set_cipher_list                    84
-SSL_set_client_CA_list                 85
-SSL_set_connect_state                  86
-SSL_set_fd                             87
-SSL_set_read_ahead                     88
-SSL_set_rfd                            89
-SSL_set_session                                90
-SSL_set_ssl_method                     91
-SSL_set_verify                         94
-SSL_set_wfd                            95
-SSL_shutdown                           96
-SSL_state_string                       97
-SSL_state_string_long                  98
-SSL_use_PrivateKey                     99
-SSL_use_PrivateKey_ASN1                        100
-SSL_use_PrivateKey_file                        101
-SSL_use_RSAPrivateKey                  102
-SSL_use_RSAPrivateKey_ASN1             103
-SSL_use_RSAPrivateKey_file             104
-SSL_use_certificate                    105
-SSL_use_certificate_ASN1               106
-SSL_use_certificate_file               107
-SSL_write                              108
-SSLeay_add_ssl_algorithms              109
-SSLv23_client_method                   110
-SSLv23_method                          111
-SSLv23_server_method                   112
-SSLv2_client_method                    113
-SSLv2_method                           114
-SSLv2_server_method                    115
-SSLv3_client_method                    116
-SSLv3_method                           117
-SSLv3_server_method                    118
-d2i_SSL_SESSION                                119
-i2d_SSL_SESSION                                120
-BIO_f_ssl                              121
-BIO_new_ssl                            122
-BIO_proxy_ssl_copy_session_id          123
-BIO_ssl_copy_session_id                        124
-SSL_do_handshake                       125
-SSL_get_privatekey                     126
-SSL_get_current_cipher                 127
-SSL_CIPHER_get_bits                    128
-SSL_CIPHER_get_version                 129
-SSL_CIPHER_get_name                    130
-BIO_ssl_shutdown                       131
-SSL_SESSION_cmp                                132
-SSL_SESSION_hash                       133
-SSL_SESSION_get_time                   134
-SSL_SESSION_set_time                   135
-SSL_SESSION_get_timeout                        136
-SSL_SESSION_set_timeout                        137
-SSL_CTX_get_ex_data                    138
-SSL_CTX_get_quiet_shutdown             140
-SSL_CTX_load_verify_locations          141
-SSL_CTX_set_default_verify_paths       142
-SSL_CTX_set_ex_data                    143
-SSL_CTX_set_quiet_shutdown             145
-SSL_SESSION_get_ex_data                        146
-SSL_SESSION_set_ex_data                        148
-SSL_get_SSL_CTX                                150
-SSL_get_ex_data                                151
-SSL_get_quiet_shutdown                 153
-SSL_get_session                                154
-SSL_get_shutdown                       155
-SSL_get_verify_result                  157
-SSL_set_ex_data                                158
-SSL_set_info_callback                  160
-SSL_set_quiet_shutdown                 161
-SSL_set_shutdown                       162
-SSL_set_verify_result                  163
-SSL_version                            164
-SSL_get_info_callback                  165
-SSL_state                              166
-SSL_CTX_get_ex_new_index               167
-SSL_SESSION_get_ex_new_index           168
-SSL_get_ex_new_index                   169
-TLSv1_method                           170
-TLSv1_server_method                    171
-TLSv1_client_method                    172
-BIO_new_buffer_ssl_connect             173
-BIO_new_ssl_connect                    174
-SSL_get_ex_data_X509_STORE_CTX_idx     175
-SSL_CTX_set_tmp_dh_callback            176
-SSL_CTX_set_tmp_rsa_callback           177
-SSL_CTX_set_timeout                     178
-SSL_CTX_get_timeout                     179
-SSL_CTX_get_cert_store                  180
-SSL_CTX_set_cert_store                  181
-SSL_want                                182
-SSL_library_init                        183
-SSL_COMP_add_compression_method         184
-SSL_add_file_cert_subjects_to_stack     185
-SSL_set_tmp_rsa_callback                186
-SSL_set_tmp_dh_callback                 187
-SSL_add_dir_cert_subjects_to_stack      188
-SSL_set_session_id_context              189
-SSL_CTX_use_certificate_chain_file      222
-SSL_CTX_set_verify_depth                225
-SSL_set_verify_depth                    226
-SSL_CTX_get_verify_depth                228
-SSL_get_verify_depth                    229
-SSL_CTX_set_session_id_context          231
-SSL_CTX_set_cert_verify_callback        232
-SSL_CTX_set_default_passwd_cb_userdata  235
-SSL_set_purpose                         236
-SSL_CTX_set_trust                       237
-SSL_CTX_set_purpose                     238
-SSL_set_trust                           239
-SSL_get_finished                        240
-SSL_get_peer_finished                   241
-SSL_get1_session                        242
-SSL_CTX_callback_ctrl                   243
-SSL_callback_ctrl                       244
-SSL_CTX_sessions                        245
+ERR_load_SSL_strings                    1      EXIST::FUNCTION:
+SSL_CIPHER_description                  2      EXIST::FUNCTION:
+SSL_CTX_add_client_CA                   3      EXIST::FUNCTION:
+SSL_CTX_add_session                     4      EXIST::FUNCTION:
+SSL_CTX_check_private_key               5      EXIST::FUNCTION:
+SSL_CTX_ctrl                            6      EXIST::FUNCTION:
+SSL_CTX_flush_sessions                  7      EXIST::FUNCTION:
+SSL_CTX_free                            8      EXIST::FUNCTION:
+SSL_CTX_get_client_CA_list              9      EXIST::FUNCTION:
+SSL_CTX_get_verify_callback             10     EXIST::FUNCTION:
+SSL_CTX_get_verify_mode                 11     EXIST::FUNCTION:
+SSL_CTX_new                             12     EXIST::FUNCTION:
+SSL_CTX_remove_session                  13     EXIST::FUNCTION:
+SSL_CTX_set_cert_verify_cb              14     NOEXIST::FUNCTION:
+SSL_CTX_set_cipher_list                 15     EXIST::FUNCTION:
+SSL_CTX_set_client_CA_list              16     EXIST::FUNCTION:
+SSL_CTX_set_default_passwd_cb           17     EXIST::FUNCTION:
+SSL_CTX_set_ssl_version                 19     EXIST::FUNCTION:
+SSL_CTX_set_verify                      21     EXIST::FUNCTION:
+SSL_CTX_use_PrivateKey                  22     EXIST::FUNCTION:
+SSL_CTX_use_PrivateKey_ASN1             23     EXIST::FUNCTION:
+SSL_CTX_use_PrivateKey_file             24     EXIST::FUNCTION:
+SSL_CTX_use_RSAPrivateKey               25     EXIST::FUNCTION:RSA
+SSL_CTX_use_RSAPrivateKey_ASN1          26     EXIST::FUNCTION:RSA
+SSL_CTX_use_RSAPrivateKey_file          27     EXIST::FUNCTION:RSA
+SSL_CTX_use_certificate                 28     EXIST::FUNCTION:
+SSL_CTX_use_certificate_ASN1            29     EXIST::FUNCTION:
+SSL_CTX_use_certificate_file            30     EXIST::FUNCTION:
+SSL_SESSION_free                        31     EXIST::FUNCTION:
+SSL_SESSION_new                         32     EXIST::FUNCTION:
+SSL_SESSION_print                       33     EXIST::FUNCTION:
+SSL_SESSION_print_fp                    34     EXIST::FUNCTION:FP_API
+SSL_accept                              35     EXIST::FUNCTION:
+SSL_add_client_CA                       36     EXIST::FUNCTION:
+SSL_alert_desc_string                   37     EXIST::FUNCTION:
+SSL_alert_desc_string_long              38     EXIST::FUNCTION:
+SSL_alert_type_string                   39     EXIST::FUNCTION:
+SSL_alert_type_string_long              40     EXIST::FUNCTION:
+SSL_check_private_key                   41     EXIST::FUNCTION:
+SSL_clear                               42     EXIST::FUNCTION:
+SSL_connect                             43     EXIST::FUNCTION:
+SSL_copy_session_id                     44     EXIST::FUNCTION:
+SSL_ctrl                                45     EXIST::FUNCTION:
+SSL_dup                                 46     EXIST::FUNCTION:
+SSL_dup_CA_list                         47     EXIST::FUNCTION:
+SSL_free                                48     EXIST::FUNCTION:
+SSL_get_certificate                     49     EXIST::FUNCTION:
+SSL_get_cipher_list                     52     EXIST::FUNCTION:
+SSL_get_ciphers                         55     EXIST::FUNCTION:
+SSL_get_client_CA_list                  56     EXIST::FUNCTION:
+SSL_get_default_timeout                 57     EXIST::FUNCTION:
+SSL_get_error                           58     EXIST::FUNCTION:
+SSL_get_fd                              59     EXIST::FUNCTION:
+SSL_get_peer_cert_chain                 60     EXIST::FUNCTION:
+SSL_get_peer_certificate                61     EXIST::FUNCTION:
+SSL_get_rbio                            63     EXIST::FUNCTION:
+SSL_get_read_ahead                      64     EXIST::FUNCTION:
+SSL_get_shared_ciphers                  65     EXIST::FUNCTION:
+SSL_get_ssl_method                      66     EXIST::FUNCTION:
+SSL_get_verify_callback                 69     EXIST::FUNCTION:
+SSL_get_verify_mode                     70     EXIST::FUNCTION:
+SSL_get_version                         71     EXIST::FUNCTION:
+SSL_get_wbio                            72     EXIST::FUNCTION:
+SSL_load_client_CA_file                 73     EXIST::FUNCTION:
+SSL_load_error_strings                  74     EXIST::FUNCTION:
+SSL_new                                 75     EXIST::FUNCTION:
+SSL_peek                                76     EXIST::FUNCTION:
+SSL_pending                             77     EXIST::FUNCTION:
+SSL_read                                78     EXIST::FUNCTION:
+SSL_renegotiate                         79     EXIST::FUNCTION:
+SSL_rstate_string                       80     EXIST::FUNCTION:
+SSL_rstate_string_long                  81     EXIST::FUNCTION:
+SSL_set_accept_state                    82     EXIST::FUNCTION:
+SSL_set_bio                             83     EXIST::FUNCTION:
+SSL_set_cipher_list                     84     EXIST::FUNCTION:
+SSL_set_client_CA_list                  85     EXIST::FUNCTION:
+SSL_set_connect_state                   86     EXIST::FUNCTION:
+SSL_set_fd                              87     EXIST::FUNCTION:
+SSL_set_read_ahead                      88     EXIST::FUNCTION:
+SSL_set_rfd                             89     EXIST::FUNCTION:
+SSL_set_session                         90     EXIST::FUNCTION:
+SSL_set_ssl_method                      91     EXIST::FUNCTION:
+SSL_set_verify                          94     EXIST::FUNCTION:
+SSL_set_wfd                             95     EXIST::FUNCTION:
+SSL_shutdown                            96     EXIST::FUNCTION:
+SSL_state_string                        97     EXIST::FUNCTION:
+SSL_state_string_long                   98     EXIST::FUNCTION:
+SSL_use_PrivateKey                      99     EXIST::FUNCTION:
+SSL_use_PrivateKey_ASN1                 100    EXIST::FUNCTION:
+SSL_use_PrivateKey_file                 101    EXIST::FUNCTION:
+SSL_use_RSAPrivateKey                   102    EXIST::FUNCTION:RSA
+SSL_use_RSAPrivateKey_ASN1              103    EXIST::FUNCTION:RSA
+SSL_use_RSAPrivateKey_file              104    EXIST::FUNCTION:RSA
+SSL_use_certificate                     105    EXIST::FUNCTION:
+SSL_use_certificate_ASN1                106    EXIST::FUNCTION:
+SSL_use_certificate_file                107    EXIST::FUNCTION:
+SSL_write                               108    EXIST::FUNCTION:
+SSLeay_add_ssl_algorithms               109    NOEXIST::FUNCTION:
+SSLv23_client_method                    110    EXIST::FUNCTION:RSA
+SSLv23_method                           111    EXIST::FUNCTION:RSA
+SSLv23_server_method                    112    EXIST::FUNCTION:RSA
+SSLv2_client_method                     113    EXIST::FUNCTION:RSA
+SSLv2_method                            114    EXIST::FUNCTION:RSA
+SSLv2_server_method                     115    EXIST::FUNCTION:RSA
+SSLv3_client_method                     116    EXIST::FUNCTION:
+SSLv3_method                            117    EXIST::FUNCTION:
+SSLv3_server_method                     118    EXIST::FUNCTION:
+d2i_SSL_SESSION                         119    EXIST::FUNCTION:
+i2d_SSL_SESSION                         120    EXIST::FUNCTION:
+BIO_f_ssl                               121    EXIST::FUNCTION:
+BIO_new_ssl                             122    EXIST::FUNCTION:
+BIO_proxy_ssl_copy_session_id           123    NOEXIST::FUNCTION:
+BIO_ssl_copy_session_id                 124    EXIST::FUNCTION:
+SSL_do_handshake                        125    EXIST::FUNCTION:
+SSL_get_privatekey                      126    EXIST::FUNCTION:
+SSL_get_current_cipher                  127    EXIST::FUNCTION:
+SSL_CIPHER_get_bits                     128    EXIST::FUNCTION:
+SSL_CIPHER_get_version                  129    EXIST::FUNCTION:
+SSL_CIPHER_get_name                     130    EXIST::FUNCTION:
+BIO_ssl_shutdown                        131    EXIST::FUNCTION:
+SSL_SESSION_cmp                         132    EXIST::FUNCTION:
+SSL_SESSION_hash                        133    EXIST::FUNCTION:
+SSL_SESSION_get_time                    134    EXIST::FUNCTION:
+SSL_SESSION_set_time                    135    EXIST::FUNCTION:
+SSL_SESSION_get_timeout                 136    EXIST::FUNCTION:
+SSL_SESSION_set_timeout                 137    EXIST::FUNCTION:
+SSL_CTX_get_ex_data                     138    EXIST::FUNCTION:
+SSL_CTX_get_quiet_shutdown              140    EXIST::FUNCTION:
+SSL_CTX_load_verify_locations           141    EXIST::FUNCTION:
+SSL_CTX_set_default_verify_paths        142    EXIST::FUNCTION:
+SSL_CTX_set_ex_data                     143    EXIST::FUNCTION:
+SSL_CTX_set_quiet_shutdown              145    EXIST::FUNCTION:
+SSL_SESSION_get_ex_data                 146    EXIST::FUNCTION:
+SSL_SESSION_set_ex_data                 148    EXIST::FUNCTION:
+SSL_get_SSL_CTX                         150    EXIST::FUNCTION:
+SSL_get_ex_data                         151    EXIST::FUNCTION:
+SSL_get_quiet_shutdown                  153    EXIST::FUNCTION:
+SSL_get_session                         154    EXIST::FUNCTION:
+SSL_get_shutdown                        155    EXIST::FUNCTION:
+SSL_get_verify_result                   157    EXIST::FUNCTION:
+SSL_set_ex_data                         158    EXIST::FUNCTION:
+SSL_set_info_callback                   160    EXIST::FUNCTION:
+SSL_set_quiet_shutdown                  161    EXIST::FUNCTION:
+SSL_set_shutdown                        162    EXIST::FUNCTION:
+SSL_set_verify_result                   163    EXIST::FUNCTION:
+SSL_version                             164    EXIST::FUNCTION:
+SSL_get_info_callback                   165    EXIST::FUNCTION:
+SSL_state                               166    EXIST::FUNCTION:
+SSL_CTX_get_ex_new_index                167    EXIST::FUNCTION:
+SSL_SESSION_get_ex_new_index            168    EXIST::FUNCTION:
+SSL_get_ex_new_index                    169    EXIST::FUNCTION:
+TLSv1_method                            170    EXIST::FUNCTION:
+TLSv1_server_method                     171    EXIST::FUNCTION:
+TLSv1_client_method                     172    EXIST::FUNCTION:
+BIO_new_buffer_ssl_connect              173    EXIST::FUNCTION:
+BIO_new_ssl_connect                     174    EXIST::FUNCTION:
+SSL_get_ex_data_X509_STORE_CTX_idx      175    EXIST::FUNCTION:
+SSL_CTX_set_tmp_dh_callback             176    EXIST::FUNCTION:DH
+SSL_CTX_set_tmp_rsa_callback            177    EXIST::FUNCTION:RSA
+SSL_CTX_set_timeout                     178    EXIST::FUNCTION:
+SSL_CTX_get_timeout                     179    EXIST::FUNCTION:
+SSL_CTX_get_cert_store                  180    EXIST::FUNCTION:
+SSL_CTX_set_cert_store                  181    EXIST::FUNCTION:
+SSL_want                                182    EXIST::FUNCTION:
+SSL_library_init                        183    EXIST::FUNCTION:
+SSL_COMP_add_compression_method         184    EXIST::FUNCTION:
+SSL_add_file_cert_subjects_to_stack     185    EXIST::FUNCTION:
+SSL_set_tmp_rsa_callback                186    EXIST::FUNCTION:RSA
+SSL_set_tmp_dh_callback                 187    EXIST::FUNCTION:DH
+SSL_add_dir_cert_subjects_to_stack      188    NOEXIST::FUNCTION:
+SSL_set_session_id_context              189    EXIST::FUNCTION:
+SSL_CTX_use_certificate_chain_file      222    EXIST::FUNCTION:
+SSL_CTX_set_verify_depth                225    EXIST::FUNCTION:
+SSL_set_verify_depth                    226    EXIST::FUNCTION:
+SSL_CTX_get_verify_depth                228    EXIST::FUNCTION:
+SSL_get_verify_depth                    229    EXIST::FUNCTION:
+SSL_CTX_set_session_id_context          231    EXIST::FUNCTION:
+SSL_CTX_set_cert_verify_callback        232    EXIST::FUNCTION:
+SSL_CTX_set_default_passwd_cb_userdata  235    EXIST::FUNCTION:
+SSL_set_purpose                         236    EXIST::FUNCTION:
+SSL_CTX_set_trust                       237    EXIST::FUNCTION:
+SSL_CTX_set_purpose                     238    EXIST::FUNCTION:
+SSL_set_trust                           239    EXIST::FUNCTION:
+SSL_get_finished                        240    EXIST::FUNCTION:
+SSL_get_peer_finished                   241    EXIST::FUNCTION:
+SSL_get1_session                        242    EXIST::FUNCTION:
+SSL_CTX_callback_ctrl                   243    EXIST::FUNCTION:
+SSL_callback_ctrl                       244    EXIST::FUNCTION:
+SSL_CTX_sessions                        245    EXIST::FUNCTION: