Prevent conflicts between Solaris SHA2 and OpenSSL.

We used to prevent conflicts between native SHA2 headers and OpenSSL's
by setting OPENSSL_NO_SHA but that was removed prior to OpenSSL 1.1.0
This commit is contained in:
Darren Tucker 2023-03-28 18:06:42 +11:00
parent 46db8e14b7
commit 727560e601
No known key found for this signature in database
1 changed files with 23 additions and 1 deletions

View File

@ -36,9 +36,31 @@
#endif #endif
#ifdef WITH_OPENSSL #ifdef WITH_OPENSSL
/* We don't use sha2 from OpenSSL and they can conflict with system sha2.h */ /*
* We use native (or compat) SHA2, but some bits of OpenSSL conflict with
* some native sha2 implementations. SHA2 is no longer optional in OpenSSL,
* so prevent conflicts as best we can.
*/
#define USE_LIBC_SHA2 /* NetBSD 9 */ #define USE_LIBC_SHA2 /* NetBSD 9 */
#define SHA256_CTX openssl_SHA256_CTX
#define SHA512_CTX openssl_SHA512_CTX
#ifdef SHA1
# undef SHA1
#endif
#ifdef SHA224
# undef SHA224
#endif
#ifdef SHA256
# undef SHA256
#endif
#ifdef SHA384
# undef SHA384
#endif
#ifdef SHA512
# undef SHA512
#endif
#include <openssl/opensslv.h> #include <openssl/opensslv.h>
#include <openssl/sha.h>
#include <openssl/crypto.h> #include <openssl/crypto.h>
#include <openssl/evp.h> #include <openssl/evp.h>
#include <openssl/bn.h> #include <openssl/bn.h>