Skip to content

Commit

Permalink
Work around Red Hat 8 pooping the bed in OpenSSL's headers
Browse files Browse the repository at this point in the history
The openssl/kdf.h header on EL8 is invalid because someone backported
a work-in-progress feature to an older OpenSSL branch and did not
bother to backport the fixes that were added later.

Red Hat declined to fix their mess and helpfully suggested we do the
work instead in https://bugzilla.redhat.com/show_bug.cgi?id=2215856

(cherry picked from commit 3dabf2d)
  • Loading branch information
rgacogne authored and omoerbeek committed Jul 26, 2023
1 parent 21b255f commit 835d835
Showing 1 changed file with 9 additions and 1 deletion.
10 changes: 9 additions & 1 deletion m4/pdns_check_libcrypto.m4
Original file line number Diff line number Diff line change
Expand Up @@ -112,7 +112,15 @@ AC_DEFUN([PDNS_CHECK_LIBCRYPTO], [
[
AC_MSG_RESULT([yes])
AC_CHECK_FUNCS([RAND_bytes RAND_pseudo_bytes CRYPTO_memcmp OPENSSL_init_crypto EVP_MD_CTX_new EVP_MD_CTX_free RSA_get0_key])
AC_CHECK_DECL(EVP_PKEY_CTX_set1_scrypt_salt, [AC_DEFINE([HAVE_EVP_PKEY_CTX_SET1_SCRYPT_SALT], [1], [Define to 1 if you have EVP_PKEY_CTX_set1_scrypt_salt])], [], [#include <openssl/kdf.h>])
# you might be wondering why the stdarg.h and stddef.h includes,
# in which case please have a look at https://github.com/PowerDNS/pdns/issues/12926
# and weep, yelling at Red Hat
AC_CHECK_DECL(EVP_PKEY_CTX_set1_scrypt_salt,
[AC_DEFINE([HAVE_EVP_PKEY_CTX_SET1_SCRYPT_SALT], [1], [Define to 1 if you have EVP_PKEY_CTX_set1_scrypt_salt])],
[],
[#include <stdarg.h>
#include <stddef.h>
#include <openssl/kdf.h>])
$1
], [
AC_MSG_RESULT([no])
Expand Down

0 comments on commit 835d835

Please sign in to comment.