Fix build with opaque HMAC_CTX and DH in LibreSSL 3.5. Index: src/std/crypto/libcrypto.scm --- src/std/crypto/libcrypto.scm.orig +++ src/std/crypto/libcrypto.scm @@ -426,7 +426,7 @@ static int ffi_EVP_DecryptFinal (EVP_CIPHER_CTX *ctx, static HMAC_CTX *ffi_create_HMAC_CTX () { -#if OPENSSL_VERSION_NUMBER < 0x10100000L || defined (LIBRESSL_VERSION_NUMBER) +#if OPENSSL_VERSION_NUMBER < 0x10100000L HMAC_CTX *ctx = (HMAC_CTX*)malloc (sizeof (HMAC_CTX)); if (ctx) { HMAC_CTX_init (ctx); @@ -439,7 +439,7 @@ static HMAC_CTX *ffi_create_HMAC_CTX () static ___SCMOBJ ffi_release_HMAC_CTX (void *ptr) { -#if OPENSSL_VERSION_NUMBER < 0x10100000L || defined (LIBRESSL_VERSION_NUMBER) +#if OPENSSL_VERSION_NUMBER < 0x10100000L HMAC_CTX_cleanup ((HMAC_CTX*) ptr); free (ptr); #else @@ -493,7 +493,7 @@ static ___SCMOBJ ffi_DH_free (void *dh) static BIGNUM *ffi_DH_pub_key (DH *dh) { -#if OPENSSL_VERSION_NUMBER < 0x10100000L || defined (LIBRESSL_VERSION_NUMBER) +#if OPENSSL_VERSION_NUMBER < 0x10100000L return dh->pub_key; #else BIGNUM const *pub;