Merge in changes from the 0.9.6-stable branch.

This commit is contained in:
Richard Levitte
2001-04-05 10:55:19 +00:00
parent 9aef355cf0
commit d69d8b5ffa
4 changed files with 35 additions and 31 deletions

View File

@@ -4,6 +4,9 @@
Changes between 0.9.6 and 0.9.6a [xx XXX 2001] Changes between 0.9.6 and 0.9.6a [xx XXX 2001]
*) Fix a couple of memory leaks in PKCS7_dataDecode()
[Steve Henson, reported by Heyun Zheng <hzheng@atdsprint.com>]
*) Change Configure and Makefiles to provide EXE_EXT, which will contain *) Change Configure and Makefiles to provide EXE_EXT, which will contain
the default extension for executables, if any. Also, make the perl the default extension for executables, if any. Also, make the perl
scripts that use symlink() to test if it really exists and use "cp" scripts that use symlink() to test if it really exists and use "cp"
@@ -19,6 +22,8 @@
*) Change bctest to avoid here-documents inside command substitution *) Change bctest to avoid here-documents inside command substitution
(workaround for FreeBSD /bin/sh bug). (workaround for FreeBSD /bin/sh bug).
For compatibility with Ultrix, avoid shell functions (introduced
in the bctest version that searches along $PATH).
[Bodo Moeller] [Bodo Moeller]
*) Rename 'des_encrypt' to 'des_encrypt1'. This avoids the clashes *) Rename 'des_encrypt' to 'des_encrypt1'. This avoids the clashes

View File

@@ -333,7 +333,7 @@ my %table=(
# UnixWare 2.0x fails destest with -O # UnixWare 2.0x fails destest with -O
"unixware-2.0","cc:-DFILIO_H::-Kthread:-lsocket -lnsl -lx:${x86_gcc_des} ${x86_gcc_opts}:::", "unixware-2.0","cc:-DFILIO_H::-Kthread:-lsocket -lnsl -lx:${x86_gcc_des} ${x86_gcc_opts}:::",
"unixware-2.0-pentium","cc:-DFILIO_H -Kpentium:-Kthread:-lsocket -lnsl -lx:MD2_CHAR RC4_INDEX ${x86_gcc_des}::", "unixware-2.0-pentium","cc:-DFILIO_H -Kpentium::-Kthread:-lsocket -lnsl -lx:MD2_CHAR RC4_INDEX ${x86_gcc_des}::",
# UnixWare 2.1 # UnixWare 2.1
"unixware-2.1","cc:-O -DFILIO_H::-Kthread:-lsocket -lnsl -lx:${x86_gcc_des} ${x86_gcc_opts}:::", "unixware-2.1","cc:-O -DFILIO_H::-Kthread:-lsocket -lnsl -lx:${x86_gcc_des} ${x86_gcc_opts}:::",
@@ -341,7 +341,9 @@ my %table=(
"unixware-2.1-p6","cc:-O -DFILIO_H -Kp6::-Kthread:-lsocket -lnsl -lx:MD2_CHAR RC4_INDEX ${x86_gcc_des}::", "unixware-2.1-p6","cc:-O -DFILIO_H -Kp6::-Kthread:-lsocket -lnsl -lx:MD2_CHAR RC4_INDEX ${x86_gcc_des}::",
# UnixWare 7 # UnixWare 7
"unixware-7","cc:-O -DFILIO_H -Kalloca::-Kthread:-lsocket -lnsl:MD2_CHAR RC4_INDEX ${x86_gcc_des}::", "unixware-7","cc:-O -DFILIO_H -Kalloca::-Kthread:-lsocket -lnsl:BN_LLONG MD2_CHAR RC4_INDEX ${x86_gcc_des}::",
"unixware-7-pentium","cc:-O -DFILIO_H -Kalloca -Kpentium::-Kthread:-lsocket -lnsl:BN_LLONG MD2_CHAR RC4_INDEX ${x86_gcc_des}::",
"unixware-7-pentium_pro","cc:-O -DFILIO_H -Kalloca -Kpentium_pro::-Kthread:-lsocket -lnsl:BN_LLONG MD2_CHAR RC4_INDEX ${x86_gcc_des}::",
# IBM's AIX. # IBM's AIX.
"aix-cc", "cc:-O -DAIX -DB_ENDIAN -qmaxmem=16384::(unknown)::BN_LLONG RC4_CHAR:::", "aix-cc", "cc:-O -DAIX -DB_ENDIAN -qmaxmem=16384::(unknown)::BN_LLONG RC4_CHAR:::",
@@ -378,7 +380,7 @@ my %table=(
"dgux-R4-x86-gcc", "gcc:-O3 -fomit-frame-pointer -DL_ENDIAN::(unknown):-lnsl -lsocket:BN_LLONG ${x86_gcc_des} ${x86_gcc_opts}:${x86_elf_asm}", "dgux-R4-x86-gcc", "gcc:-O3 -fomit-frame-pointer -DL_ENDIAN::(unknown):-lnsl -lsocket:BN_LLONG ${x86_gcc_des} ${x86_gcc_opts}:${x86_elf_asm}",
# SCO 3 - Tim Rice <tim@multitalents.net> # SCO 3 - Tim Rice <tim@multitalents.net>
"sco3-gcc", "gcc:-O3 -fomit-frame-pointer -Dssize_t=int -DNO_SYS_UN_H::(unknown)::-lsocket:BN_LLONG ${x86_gcc_des} ${x86_gcc_opts}:::", # the SCO assembler doesn't seem to like our assembler files ... "sco3-gcc", "gcc:-O3 -fomit-frame-pointer -Dssize_t=int -DNO_SYS_UN_H::(unknown):-lsocket:BN_LLONG ${x86_gcc_des} ${x86_gcc_opts}:::", # the SCO assembler doesn't seem to like our assembler files ...
# SCO 5 - Ben Laurie <ben@algroup.co.uk> says the -O breaks the # SCO 5 - Ben Laurie <ben@algroup.co.uk> says the -O breaks the
# SCO cc. # SCO cc.

View File

@@ -370,7 +370,7 @@ BIO *PKCS7_dataDecode(PKCS7 *p7, EVP_PKEY *pkey, BIO *in_bio, X509 *pcert)
if (ri == NULL) { if (ri == NULL) {
PKCS7err(PKCS7_F_PKCS7_DATADECODE, PKCS7err(PKCS7_F_PKCS7_DATADECODE,
PKCS7_R_NO_RECIPIENT_MATCHES_CERTIFICATE); PKCS7_R_NO_RECIPIENT_MATCHES_CERTIFICATE);
return(NULL); goto err;
} }
jj=EVP_PKEY_size(pkey); jj=EVP_PKEY_size(pkey);
@@ -393,7 +393,7 @@ BIO *PKCS7_dataDecode(PKCS7 *p7, EVP_PKEY *pkey, BIO *in_bio, X509 *pcert)
BIO_get_cipher_ctx(etmp,&evp_ctx); BIO_get_cipher_ctx(etmp,&evp_ctx);
EVP_CipherInit(evp_ctx,evp_cipher,NULL,NULL,0); EVP_CipherInit(evp_ctx,evp_cipher,NULL,NULL,0);
if (EVP_CIPHER_asn1_to_param(evp_ctx,enc_alg->parameter) < 0) if (EVP_CIPHER_asn1_to_param(evp_ctx,enc_alg->parameter) < 0)
return(NULL); goto err;
if (jj != EVP_CIPHER_CTX_key_length(evp_ctx)) { if (jj != EVP_CIPHER_CTX_key_length(evp_ctx)) {
/* Some S/MIME clients don't use the same key /* Some S/MIME clients don't use the same key

View File

@@ -11,9 +11,16 @@
# running) bc. # running) bc.
# Test for SunOS 5.[78] bc bug IFS=:
SunOStest() { for dir in $PATH; do
${1} >tmp.bctest <<\EOF bc="$dir/bc"
if [ -x "$bc" -a ! -d "$bc" ]; then
failure=none
# Test for SunOS 5.[78] bc bug
"$bc" >tmp.bctest <<\EOF
obase=16 obase=16
ibase=16 ibase=16
a=AD88C418F31B3FC712D0425001D522B3AE9134FF3A98C13C1FCC1682211195406C1A6C66C6A\ a=AD88C418F31B3FC712D0425001D522B3AE9134FF3A98C13C1FCC1682211195406C1A6C66C6A\
@@ -28,17 +35,14 @@ b=DCE91E7D120B983EA9A104B5A96D634DD644C37657B1C7860B45E6838999B3DCE5A555583C6\
3ED0E2017D60A68775B75481449 3ED0E2017D60A68775B75481449
(a/b)*b + (a%b) - a (a/b)*b + (a%b) - a
EOF EOF
if [ 0 != "`cat tmp.bctest`" ] if [ 0 != "`cat tmp.bctest`" ]; then
then failure=SunOStest
# failure fi
return 1
fi
}
# Test for SCO bc bug. if [ "$failure" = none ]; then
SCOtest() { # Test for SCO bc bug.
${1} >tmp.bctest <<\EOF "$bc" >tmp.bctest <<\EOF
obase=16 obase=16
ibase=16 ibase=16
-FFDD63BA1A4648F0D804F8A1C66C53F0D2110590E8A3907EC73B4AEC6F15AC177F176F2274D2\ -FFDD63BA1A4648F0D804F8A1C66C53F0D2110590E8A3907EC73B4AEC6F15AC177F176F2274D2\
@@ -65,21 +69,14 @@ F617E3145BBFBE9AFD0D6E437EA4FF6F04BC67C4F1458B4F0F47B64 - 1C2BBBB19B74E86FD32\
D97935A7E1A14AD209D6CF811F55C6DB83AA9E6DFECFCD6669DED7171EE22A40C6181615CAF3F\ D97935A7E1A14AD209D6CF811F55C6DB83AA9E6DFECFCD6669DED7171EE22A40C6181615CAF3F\
5296964 5296964
EOF EOF
if [ "0 if [ "0
0" != "`cat tmp.bctest`" ] 0" != "`cat tmp.bctest`" ]; then
then failure=SCOtest
# failure fi
return 1 fi
fi
}
IFS=: if [ "$failure" = none ]; then
for dir in $PATH; do
bc="$dir/bc"
if [ -x "$bc" -a ! -d "$bc" ]; then
if SunOStest "$bc" && SCOtest "$bc"; then
# bc works; now check if it knows the 'print' command. # bc works; now check if it knows the 'print' command.
if [ "OK" = "`echo 'print \"OK\"' | $bc 2>/dev/null`" ] if [ "OK" = "`echo 'print \"OK\"' | $bc 2>/dev/null`" ]
then then
@@ -90,7 +87,7 @@ for dir in $PATH; do
exit 0 exit 0
fi fi
echo "$bc does not work properly. Looking for another bc ..." >&2 echo "$bc does not work properly ('$failure' failed). Looking for another bc ..." >&2
fi fi
done done