From: Tomas Mraz Date: Thu, 8 Jun 2023 08:50:52 +0000 (+0200) Subject: Set RC4 defines on libcrypto/liblegacy X-Git-Tag: openssl-3.1.2~71 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=0cfbef388f48e68172eff30ac6f7415330a6f051;p=thirdparty%2Fopenssl.git Set RC4 defines on libcrypto/liblegacy Also add missing prototype for rc4_md5_enc. Fixes #21150 Reviewed-by: Matt Caswell Reviewed-by: Paul Dale (Merged from https://github.com/openssl/openssl/pull/21153) (cherry picked from commit 58e8af4cecd23dbea2e6b061ab68190b38d64145) --- diff --git a/crypto/rc4/build.info b/crypto/rc4/build.info index 68b3c73f55b..c9c81f87dab 100644 --- a/crypto/rc4/build.info +++ b/crypto/rc4/build.info @@ -21,10 +21,15 @@ 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'} && !$disabled{module} && !$disabled{shared} -}] +IF[{- !$disabled{module} && !$disabled{shared} -}] SOURCE[../../providers/liblegacy.a]=$RC4ASM ENDIF +# Implementations are now spread across several libraries, so the defines +# need to be applied to all affected libraries and modules. +DEFINE[../../libcrypto]=$RC4DEF +DEFINE[../../providers/liblegacy.a]=$RC4DEF + GENERATE[rc4-586.S]=asm/rc4-586.pl DEPEND[rc4-586.S]=../perlasm/x86asm.pl diff --git a/providers/implementations/ciphers/cipher_rc4_hmac_md5.h b/providers/implementations/ciphers/cipher_rc4_hmac_md5.h index 1697aabbf39..c79e5ad6dfb 100644 --- a/providers/implementations/ciphers/cipher_rc4_hmac_md5.h +++ b/providers/implementations/ciphers/cipher_rc4_hmac_md5.h @@ -31,3 +31,6 @@ typedef struct prov_cipher_hw_rc4_hmac_md5_st { } PROV_CIPHER_HW_RC4_HMAC_MD5; const PROV_CIPHER_HW *ossl_prov_cipher_hw_rc4_hmac_md5(size_t keybits); + +void rc4_md5_enc(RC4_KEY *key, const void *in0, void *out, + MD5_CTX *ctx, const void *inp, size_t blocks);