aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRichard Levitte <levitte@openssl.org>2020-01-08 11:52:38 +0100
committerPauli <paul.dale@oracle.com>2020-01-12 12:05:04 +1000
commit42b3f10b5e461496aab1f74d24103d6902ebfcd5 (patch)
tree1515dc571227a93e5a7c831dbc3059e072904923
parent7c3aa39fe38a70450b5bf3665ca48be80c5ff287 (diff)
downloadopenssl-42b3f10b5e461496aab1f74d24103d6902ebfcd5.zip
openssl-42b3f10b5e461496aab1f74d24103d6902ebfcd5.tar.gz
openssl-42b3f10b5e461496aab1f74d24103d6902ebfcd5.tar.bz2
When deprecated symbols are removed, ensure liblegacy has WHIRLPOOL
The legacy module implements WHIRLPOOL, so we must ensure it has the full functionality, even when libcrypto stops exporting the symbols. Reviewed-by: Matt Caswell <matt@openssl.org> Reviewed-by: Tomas Mraz <tmraz@fedoraproject.org> Reviewed-by: Paul Dale <paul.dale@oracle.com> (Merged from https://github.com/openssl/openssl/pull/10779)
-rw-r--r--crypto/whrlpool/build.info14
1 files changed, 11 insertions, 3 deletions
diff --git a/crypto/whrlpool/build.info b/crypto/whrlpool/build.info
index 6630a77..c489718 100644
--- a/crypto/whrlpool/build.info
+++ b/crypto/whrlpool/build.info
@@ -17,13 +17,21 @@ IF[{- !$disabled{asm} -}]
ENDIF
ENDIF
-SOURCE[../../libcrypto]=wp_dgst.c $WPASM
-
# Implementations are now spread across several libraries, so the defines
# need to be applied to all affected libraries and modules.
-DEFINE[../../libcrypto]=$WPDEF
DEFINE[../../providers/libimplementations.a]=$WPDEF
+SOURCE[../../libcrypto]=wp_dgst.c $WPASM
+DEFINE[../../libcrypto]=$WPDEF
+
+# When all deprecated symbols are removed, libcrypto doesn't export the
+# WHIRLPOOL functions, so we must include them directly in liblegacy.a
+IF[{- $disabled{"deprecated"}
+ && (defined $config{"api"} && $config{"api"} >= 30000) -}]
+ SOURCE[../../providers/liblegacy.a]=wp_dgst.c $WPASM
+ DEFINE[../../providers/liblegacy.a]=$WPDEF
+ENDIF
+
GENERATE[wp-mmx.s]=asm/wp-mmx.pl
DEPEND[wp-mmx.s]=../perlasm/x86asm.pl