From 39dbb990a06753c0ab74d56098218d41780a9053 Mon Sep 17 00:00:00 2001 From: Richard Levitte Date: Fri, 11 Mar 2016 11:38:14 +0100 Subject: Avoid getting unresolved referense to bn_expand2 in test/bntest.c Issue identified on Solaris by Erik Forsberg Reviewed-by: Rich Salz --- test/bntest.c | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/test/bntest.c b/test/bntest.c index 082cf4cba0..53769aad60 100644 --- a/test/bntest.c +++ b/test/bntest.c @@ -80,6 +80,19 @@ #include #include +/* + * In bn_lcl.h, bn_expand() is defined as a static ossl_inline function. + * This is fine in itself, it will end up as an unused static function in + * the worst case. However, it referenses bn_expand2(), which is a private + * function in libcrypto and therefore unavailable on some systems. This + * may result in a linker error because of unresolved symbols. + * + * To avoid this, we define a dummy variant of bn_expand2() here, and to + * avoid possible clashes with libcrypto, we rename it first, using a macro. + */ +#define bn_expand2 dummy_bn_expand2 +static BIGNUM *bn_expand2(BIGNUM *b, int words) { return NULL; } + #include "../crypto/bn/bn_lcl.h" static const int num0 = 100; /* number of tests */ -- cgit v1.2.3