From: Rohan McLure Date: Fri, 23 Jun 2023 06:41:48 +0000 (+1000) Subject: ec: Use static linkage on nistp521 felem_{square,mul} wrappers X-Git-Tag: openssl-3.2.0-alpha1~297 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=3e47a286dc3274bda72a196c3a4030a1fc8302f1;p=thirdparty%2Fopenssl.git ec: Use static linkage on nistp521 felem_{square,mul} wrappers Runtime selection of implementations for felem_{square,mul} depends on felem_{square,mul}_wrapper functions, which overwrite function points in a similar design to that of .plt.got sections used by program loaders during dynamic linking. There's no reason why these functions need to have external linkage. Mark static. Signed-off-by: Rohan McLure Reviewed-by: Paul Dale Reviewed-by: Shane Lontis Reviewed-by: Dmitry Belyavskiy Reviewed-by: Todd Short (Merged from https://github.com/openssl/openssl/pull/21471) --- diff --git a/crypto/ec/ecp_nistp521.c b/crypto/ec/ecp_nistp521.c index 97815cac1f1..32a9268ecf1 100644 --- a/crypto/ec/ecp_nistp521.c +++ b/crypto/ec/ecp_nistp521.c @@ -676,8 +676,8 @@ static void felem_reduce(felem out, const largefelem in) } #if defined(ECP_NISTP521_ASM) -void felem_square_wrapper(largefelem out, const felem in); -void felem_mul_wrapper(largefelem out, const felem in1, const felem in2); +static void felem_square_wrapper(largefelem out, const felem in); +static void felem_mul_wrapper(largefelem out, const felem in1, const felem in2); static void (*felem_square_p)(largefelem out, const felem in) = felem_square_wrapper; @@ -691,7 +691,7 @@ void p521_felem_mul(largefelem out, const felem in1, const felem in2); # include "crypto/ppc_arch.h" # endif -void felem_select(void) +static void felem_select(void) { # if defined(_ARCH_PPC64) if ((OPENSSL_ppccap_P & PPC_MADD300) && (OPENSSL_ppccap_P & PPC_ALTIVEC)) { @@ -707,13 +707,13 @@ void felem_select(void) felem_mul_p = felem_mul_ref; } -void felem_square_wrapper(largefelem out, const felem in) +static void felem_square_wrapper(largefelem out, const felem in) { felem_select(); felem_square_p(out, in); } -void felem_mul_wrapper(largefelem out, const felem in1, const felem in2) +static void felem_mul_wrapper(largefelem out, const felem in1, const felem in2) { felem_select(); felem_mul_p(out, in1, in2);