diff --git a/hadoop-common-project/hadoop-common/src/main/native/src/org/apache/hadoop/crypto/OpensslCipher.c b/hadoop-common-project/hadoop-common/src/main/native/src/org/apache/hadoop/crypto/OpensslCipher.c index 7c4c27998a6..c44f1ef22db 100644 --- a/hadoop-common-project/hadoop-common/src/main/native/src/org/apache/hadoop/crypto/OpensslCipher.c +++ b/hadoop-common-project/hadoop-common/src/main/native/src/org/apache/hadoop/crypto/OpensslCipher.c @@ -35,16 +35,8 @@ static void (*dlsym_EVP_CIPHER_CTX_init)(EVP_CIPHER_CTX *); #endif static int (*dlsym_EVP_CIPHER_CTX_set_padding)(EVP_CIPHER_CTX *, int); static int (*dlsym_EVP_CIPHER_CTX_test_flags)(const EVP_CIPHER_CTX *, int); -// name changed in OpenSSL 3 ABI - see History section in EVP_EncryptInit(3) -#if OPENSSL_VERSION_NUMBER >= 0x30000000L -static int (*dlsym_EVP_CIPHER_CTX_get_block_size)(const EVP_CIPHER_CTX *); -#else static int (*dlsym_EVP_CIPHER_CTX_block_size)(const EVP_CIPHER_CTX *); -#endif -// name changed in OpenSSL 3 ABI - see History section in EVP_EncryptInit(3) -#if OPENSSL_VERSION_NUMBER >= 0x30000000L -static int (*dlsym_EVP_CIPHER_CTX_is_encrypting)(const EVP_CIPHER_CTX *); -#elif OPENSSL_VERSION_NUMBER >= 0x10100000L +#if OPENSSL_VERSION_NUMBER >= 0x10100000L static int (*dlsym_EVP_CIPHER_CTX_encrypting)(const EVP_CIPHER_CTX *); #endif static int (*dlsym_EVP_CipherInit_ex)(EVP_CIPHER_CTX *, const EVP_CIPHER *, \ @@ -71,16 +63,8 @@ typedef int (__cdecl *__dlsym_EVP_CIPHER_CTX_cleanup)(EVP_CIPHER_CTX *); typedef void (__cdecl *__dlsym_EVP_CIPHER_CTX_init)(EVP_CIPHER_CTX *); typedef int (__cdecl *__dlsym_EVP_CIPHER_CTX_set_padding)(EVP_CIPHER_CTX *, int); typedef int (__cdecl *__dlsym_EVP_CIPHER_CTX_test_flags)(const EVP_CIPHER_CTX *, int); -// name changed in OpenSSL 3 ABI - see History section in EVP_EncryptInit(3) -#if OPENSSL_VERSION_NUMBER >= 0x30000000L -typedef int (__cdecl *__dlsym_EVP_CIPHER_CTX_get_block_size)(const EVP_CIPHER_CTX *); -#else typedef int (__cdecl *__dlsym_EVP_CIPHER_CTX_block_size)(const EVP_CIPHER_CTX *); -#endif -// name changed in OpenSSL 3 ABI - see History section in EVP_EncryptInit(3) -#if OPENSSL_VERSION_NUMBER >= 0x30000000L -typedef int (__cdecl *__dlsym_EVP_CIPHER_CTX_is_encrypting)(const EVP_CIPHER_CTX *); -#elif OPENSSL_VERSION_NUMBER >= 0x10100000L +#if OPENSSL_VERSION_NUMBER >= 0x10100000L typedef int (__cdecl *__dlsym_EVP_CIPHER_CTX_encrypting)(const EVP_CIPHER_CTX *); #endif typedef int (__cdecl *__dlsym_EVP_CipherInit_ex)(EVP_CIPHER_CTX *, \ @@ -98,14 +82,8 @@ static __dlsym_EVP_CIPHER_CTX_cleanup dlsym_EVP_CIPHER_CTX_cleanup; static __dlsym_EVP_CIPHER_CTX_init dlsym_EVP_CIPHER_CTX_init; static __dlsym_EVP_CIPHER_CTX_set_padding dlsym_EVP_CIPHER_CTX_set_padding; static __dlsym_EVP_CIPHER_CTX_test_flags dlsym_EVP_CIPHER_CTX_test_flags; -#if OPENSSL_VERSION_NUMBER >= 0x30000000L -static __dlsym_EVP_CIPHER_CTX_get_block_size dlsym_EVP_CIPHER_CTX_get_block_size; -#else static __dlsym_EVP_CIPHER_CTX_block_size dlsym_EVP_CIPHER_CTX_block_size; -#endif -#if OPENSSL_VERSION_NUMBER >= 0x30000000L -static __dlsym_EVP_CIPHER_CTX_is_encrypting dlsym_EVP_CIPHER_CTX_is_encrypting; -#elif OPENSSL_VERSION_NUMBER >= 0x10100000L +#if OPENSSL_VERSION_NUMBER >= 0x10100000L static __dlsym_EVP_CIPHER_CTX_encrypting dlsym_EVP_CIPHER_CTX_encrypting; #endif static __dlsym_EVP_CipherInit_ex dlsym_EVP_CipherInit_ex; @@ -191,15 +169,17 @@ JNIEXPORT void JNICALL Java_org_apache_hadoop_crypto_OpensslCipher_initIDs "EVP_CIPHER_CTX_set_padding"); LOAD_DYNAMIC_SYMBOL(dlsym_EVP_CIPHER_CTX_test_flags, env, openssl, \ "EVP_CIPHER_CTX_test_flags"); +// name changed in OpenSSL 3 ABI - see History section in EVP_EncryptInit(3) #if OPENSSL_VERSION_NUMBER >= 0x30000000L - LOAD_DYNAMIC_SYMBOL(dlsym_EVP_CIPHER_CTX_get_block_size, env, openssl, \ + LOAD_DYNAMIC_SYMBOL(dlsym_EVP_CIPHER_CTX_block_size, env, openssl, \ "EVP_CIPHER_CTX_get_block_size"); #else LOAD_DYNAMIC_SYMBOL(dlsym_EVP_CIPHER_CTX_block_size, env, openssl, \ "EVP_CIPHER_CTX_block_size"); #endif +// name changed in OpenSSL 3 ABI - see History section in EVP_EncryptInit(3) #if OPENSSL_VERSION_NUMBER >= 0x30000000L - LOAD_DYNAMIC_SYMBOL(dlsym_EVP_CIPHER_CTX_is_encrypting, env, openssl, \ + LOAD_DYNAMIC_SYMBOL(dlsym_EVP_CIPHER_CTX_encrypting, env, openssl, \ "EVP_CIPHER_CTX_is_encrypting"); #elif OPENSSL_VERSION_NUMBER >= 0x10100000L LOAD_DYNAMIC_SYMBOL(dlsym_EVP_CIPHER_CTX_encrypting, env, openssl, \ @@ -237,18 +217,20 @@ JNIEXPORT void JNICALL Java_org_apache_hadoop_crypto_OpensslCipher_initIDs LOAD_DYNAMIC_SYMBOL(__dlsym_EVP_CIPHER_CTX_test_flags, \ dlsym_EVP_CIPHER_CTX_test_flags, env, \ openssl, "EVP_CIPHER_CTX_test_flags"); +// name changed in OpenSSL 3 ABI - see History section in EVP_EncryptInit(3) #if OPENSSL_VERSION_NUMBER >= 0x30000000L - LOAD_DYNAMIC_SYMBOL(__dlsym_EVP_CIPHER_CTX_get_block_size, \ - dlsym_EVP_CIPHER_CTX_get_block_size, env, \ + LOAD_DYNAMIC_SYMBOL(__dlsym_EVP_CIPHER_CTX_block_size, \ + dlsym_EVP_CIPHER_CTX_block_size, env, \ openssl, "EVP_CIPHER_CTX_get_block_size"); #else LOAD_DYNAMIC_SYMBOL(__dlsym_EVP_CIPHER_CTX_block_size, \ dlsym_EVP_CIPHER_CTX_block_size, env, \ openssl, "EVP_CIPHER_CTX_block_size"); #endif +// name changed in OpenSSL 3 ABI - see History section in EVP_EncryptInit(3) #if OPENSSL_VERSION_NUMBER >= 0x30000000L - LOAD_DYNAMIC_SYMBOL(__dlsym_EVP_CIPHER_CTX_is_encrypting, \ - dlsym_EVP_CIPHER_CTX_is_encrypting, env, \ + LOAD_DYNAMIC_SYMBOL(__dlsym_EVP_CIPHER_CTX_encrypting, \ + dlsym_EVP_CIPHER_CTX_encrypting, env, \ openssl, "EVP_CIPHER_CTX_is_encrypting"); #elif OPENSSL_VERSION_NUMBER >= 0x10100000L LOAD_DYNAMIC_SYMBOL(__dlsym_EVP_CIPHER_CTX_encrypting, \ @@ -445,17 +427,11 @@ static int check_update_max_output_len(EVP_CIPHER_CTX *context, int input_len, } return 0; } else { -#if OPENSSL_VERSION_NUMBER < 0x30000000L int b = dlsym_EVP_CIPHER_CTX_block_size(context); -#else - int b = dlsym_EVP_CIPHER_CTX_get_block_size(context); -#endif #if OPENSSL_VERSION_NUMBER < 0x10100000L if (context->encrypt) { -#elif OPENSSL_VERSION_NUMBER < 0x30000000L - if (dlsym_EVP_CIPHER_CTX_encrypting(context)) { #else - if (dlsym_EVP_CIPHER_CTX_is_encrypting(context)) { + if (dlsym_EVP_CIPHER_CTX_encrypting(context)) { #endif if (max_output_len >= input_len + b - 1) { return 1; @@ -510,11 +486,7 @@ static int check_doFinal_max_output_len(EVP_CIPHER_CTX *context, if ( dlsym_EVP_CIPHER_CTX_test_flags(context, EVP_CIPH_NO_PADDING) ) { return 1; } else { -#if OPENSSL_VERSION_NUMBER < 0x30000000L int b = dlsym_EVP_CIPHER_CTX_block_size(context); -#else - int b = dlsym_EVP_CIPHER_CTX_get_block_size(context); -#endif if (max_output_len >= b) { return 1; }