diff options
author | Shane Lontis <shane.lontis@oracle.com> | 2020-04-09 04:47:46 +0200 |
---|---|---|
committer | Shane Lontis <shane.lontis@oracle.com> | 2020-04-09 04:47:46 +0200 |
commit | f5056577ba08b3694aab2722eae1c97bf00acc80 (patch) | |
tree | 00492b31c1e6b69164d5a3be50557bac18cdcd2e /crypto | |
parent | Document the new X509_STORE_CTX_new_with_libctx() function (diff) | |
download | openssl-f5056577ba08b3694aab2722eae1c97bf00acc80.tar.xz openssl-f5056577ba08b3694aab2722eae1c97bf00acc80.zip |
Move legacy ciphers into the legacy provider
DES, idea, seed, rc2, rc4, rc5, cast and blowfish have been moved out of the default provider.
Code shared between desx and tdes has been moved into a seperate file (cipher_tdes_common.c).
3 test recipes failed due to using app/openssl calls that used legacy ciphers.
These calls have been updated to supply both the default and legacy providers.
Fixed openssl app '-provider' memory leak
Reviewed-by: Richard Levitte <levitte@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/11419)
Diffstat (limited to 'crypto')
-rw-r--r-- | crypto/bf/build.info | 10 | ||||
-rw-r--r-- | crypto/cast/build.info | 10 | ||||
-rw-r--r-- | crypto/des/build.info | 17 | ||||
-rw-r--r-- | crypto/idea/build.info | 11 | ||||
-rw-r--r-- | crypto/rc2/build.info | 12 | ||||
-rw-r--r-- | crypto/rc4/build.info | 6 | ||||
-rw-r--r-- | crypto/rc5/build.info | 11 | ||||
-rw-r--r-- | crypto/seed/build.info | 10 |
8 files changed, 71 insertions, 16 deletions
diff --git a/crypto/bf/build.info b/crypto/bf/build.info index 59d5bbcfe3..9fa8187818 100644 --- a/crypto/bf/build.info +++ b/crypto/bf/build.info @@ -11,7 +11,15 @@ IF[{- !$disabled{asm} -}] ENDIF ENDIF -SOURCE[../../libcrypto]=bf_skey.c bf_ecb.c bf_cfb64.c bf_ofb64.c $BFASM +$ALL=bf_skey.c bf_ecb.c bf_cfb64.c bf_ofb64.c $BFASM + +SOURCE[../../libcrypto]=$ALL + +# When all deprecated symbols are removed, libcrypto doesn't export the +# blowfish functions, so we must include them directly in liblegacy.a +IF[{- $disabled{'deprecated-3.0'} -}] + SOURCE[../../providers/liblegacy.a]=$ALL +ENDIF GENERATE[bf-586.s]=asm/bf-586.pl DEPEND[bf-586.s]=../perlasm/x86asm.pl ../perlasm/cbc.pl diff --git a/crypto/cast/build.info b/crypto/cast/build.info index e21e6d55ee..8763f22405 100644 --- a/crypto/cast/build.info +++ b/crypto/cast/build.info @@ -12,7 +12,15 @@ IF[{- !$disabled{asm} && !$disabled{pic} -}] ENDIF ENDIF -SOURCE[../../libcrypto]=c_skey.c c_ecb.c $CASTASM c_cfb64.c c_ofb64.c +$ALL=c_skey.c c_ecb.c $CASTASM c_cfb64.c c_ofb64.c + +SOURCE[../../libcrypto]=$ALL + +# When all deprecated symbols are removed, libcrypto doesn't export the +# cast functions, so we must include them directly in liblegacy.a +IF[{- $disabled{'deprecated-3.0'} -}] + SOURCE[../../providers/liblegacy.a]=$ALL +ENDIF GENERATE[cast-586.s]=asm/cast-586.pl DEPEND[cast-586.s]=../perlasm/x86asm.pl ../perlasm/cbc.pl diff --git a/crypto/des/build.info b/crypto/des/build.info index 1fbbcdf2f9..0e5fd171e2 100644 --- a/crypto/des/build.info +++ b/crypto/des/build.info @@ -15,20 +15,23 @@ ENDIF LIBS=../../libcrypto $COMMON=set_key.c ecb3_enc.c $DESASM -SOURCE[../../libcrypto]=$COMMON\ - ecb_enc.c cbc_enc.c \ - cfb64enc.c cfb64ede.c cfb_enc.c \ - ofb64ede.c ofb64enc.c ofb_enc.c \ - str2key.c pcbc_enc.c qud_cksm.c rand_key.c \ - fcrypt.c xcbc_enc.c cbc_cksm.c +$ALL=$COMMON\ + ecb_enc.c cbc_enc.c \ + cfb64enc.c cfb64ede.c cfb_enc.c \ + ofb64ede.c ofb64enc.c ofb_enc.c \ + str2key.c pcbc_enc.c qud_cksm.c rand_key.c \ + fcrypt.c xcbc_enc.c cbc_cksm.c + +SOURCE[../../libcrypto]=$ALL SOURCE[../../providers/libfips.a]=$COMMON DEFINE[../../libcrypto]=$DESDEF DEFINE[../../providers/libfips.a]=$DESDEF +DEFINE[../../providers/liblegacy.a]=$DESDEF # When all deprecated symbols are removed, libcrypto doesn't export the # DES functions, so we must include them directly in liblegacy.a IF[{- $disabled{'deprecated-3.0'} && !$disabled{"mdc2"} -}] - SOURCE[../../providers/liblegacy.a]=set_key.c $DESASM + SOURCE[../../providers/liblegacy.a]=$ALL DEFINE[../../providers/liblegacy.a]=$DESDEF ENDIF diff --git a/crypto/idea/build.info b/crypto/idea/build.info index 2326123797..5441351b9c 100644 --- a/crypto/idea/build.info +++ b/crypto/idea/build.info @@ -1,3 +1,10 @@ LIBS=../../libcrypto -SOURCE[../../libcrypto]=\ - i_cbc.c i_cfb64.c i_ofb64.c i_ecb.c i_skey.c +$ALL=i_cbc.c i_cfb64.c i_ofb64.c i_ecb.c i_skey.c + +SOURCE[../../libcrypto]=$ALL + +# When all deprecated symbols are removed, libcrypto doesn't export the +# idea functions, so we must include them directly in liblegacy.a +IF[{- $disabled{'deprecated-3.0'} -}] + SOURCE[../../providers/liblegacy.a]=$ALL +ENDIF diff --git a/crypto/rc2/build.info b/crypto/rc2/build.info index 47a3fd0d4e..b6d60d6ee3 100644 --- a/crypto/rc2/build.info +++ b/crypto/rc2/build.info @@ -1,3 +1,11 @@ LIBS=../../libcrypto -SOURCE[../../libcrypto]=\ - rc2_ecb.c rc2_skey.c rc2_cbc.c rc2cfb64.c rc2ofb64.c + +$ALL=rc2_ecb.c rc2_skey.c rc2_cbc.c rc2cfb64.c rc2ofb64.c + +SOURCE[../../libcrypto]=$ALL + +# When all deprecated symbols are removed, libcrypto doesn't export the +# rc2 functions, so we must include them directly in liblegacy.a +IF[{- $disabled{'deprecated-3.0'} -}] + SOURCE[../../providers/liblegacy.a]=$ALL +ENDIF diff --git a/crypto/rc4/build.info b/crypto/rc4/build.info index abc0c52d0c..c7f17ca5f5 100644 --- a/crypto/rc4/build.info +++ b/crypto/rc4/build.info @@ -19,6 +19,12 @@ ENDIF SOURCE[../../libcrypto]=$RC4ASM +# When all deprecated symbols are removed, libcrypto doesn't export the +# rc4 functions, so we must include them directly in liblegacy.a +IF[{- $disabled{'deprecated-3.0'} -}] + SOURCE[../../providers/liblegacy.a]=$RC4ASM +ENDIF + GENERATE[rc4-586.s]=asm/rc4-586.pl DEPEND[rc4-586.s]=../perlasm/x86asm.pl diff --git a/crypto/rc5/build.info b/crypto/rc5/build.info index c684d1ee2e..3e2def8a65 100644 --- a/crypto/rc5/build.info +++ b/crypto/rc5/build.info @@ -12,8 +12,15 @@ IF[{- !$disabled{asm} -}] ENDIF ENDIF -SOURCE[../../libcrypto]=\ - rc5_skey.c rc5_ecb.c $RC5ASM rc5cfb64.c rc5ofb64.c +$ALL=rc5_skey.c rc5_ecb.c $RC5ASM rc5cfb64.c rc5ofb64.c + +SOURCE[../../libcrypto]=$ALL + +# When all deprecated symbols are removed, libcrypto doesn't export the +# rc5 functions, so we must include them directly in liblegacy.a +IF[{- $disabled{'deprecated-3.0'} -}] + SOURCE[../../providers/liblegacy.a]=$ALL +ENDIF GENERATE[rc5-586.s]=asm/rc5-586.pl DEPEND[rc5-586.s]=../perlasm/x86asm.pl ../perlasm/cbc.pl diff --git a/crypto/seed/build.info b/crypto/seed/build.info index abdcbcaa94..5336f0399c 100644 --- a/crypto/seed/build.info +++ b/crypto/seed/build.info @@ -1,2 +1,10 @@ LIBS=../../libcrypto -SOURCE[../../libcrypto]=seed.c seed_ecb.c seed_cbc.c seed_cfb.c seed_ofb.c +$ALL=seed.c seed_ecb.c seed_cbc.c seed_cfb.c seed_ofb.c + +SOURCE[../../libcrypto]=$ALL + +# When all deprecated symbols are removed, libcrypto doesn't export the +# seed functions, so we must include them directly in liblegacy.a +IF[{- $disabled{'deprecated-3.0'} -}] + SOURCE[../../providers/liblegacy.a]=$ALL +ENDIF |