From: Nikolai Kondrashov Date: Mon, 20 Feb 2017 13:40:52 +0000 (+0100) Subject: Check for EVP_CIPHER_CTX_new in rlm_eap_pwd X-Git-Tag: release_3_0_13~24^2 X-Git-Url: http://www.project-moonshot.org/gitweb/?p=freeradius.git;a=commitdiff_plain;h=7d08baf8476f85d3fadec7247b4ac6605fcb4648 Check for EVP_CIPHER_CTX_new in rlm_eap_pwd Switch to checking for EVP_CIPHER_CTX_new instead of EVP_cleanup to detect presence of libcrypto in rlm_eap_pwd configure.ac, because EVP_cleanup was removed as symbol from OpenSSL 1.1, and the check would always fail. Previously only rlm_eap_fast configure.ac was switched. --- diff --git a/src/modules/rlm_eap/types/rlm_eap_pwd/configure b/src/modules/rlm_eap/types/rlm_eap_pwd/configure index 14bdfde..6e535f2 100755 --- a/src/modules/rlm_eap/types/rlm_eap_pwd/configure +++ b/src/modules/rlm_eap/types/rlm_eap_pwd/configure @@ -2917,7 +2917,7 @@ smart_prefix= sm_lib_safe=`echo "crypto" | sed 'y%./+-%__p_%'` -sm_func_safe=`echo "EVP_cleanup" | sed 'y%./+-%__p_%'` +sm_func_safe=`echo "EVP_CIPHER_CTX_new" | sed 'y%./+-%__p_%'` old_LIBS="$LIBS" old_CPPFLAGS="$CPPFLAGS" @@ -2927,17 +2927,17 @@ smart_lib_dir= if test "x$smart_try_dir" != "x"; then for try in $smart_try_dir; do - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for EVP_cleanup in -lcrypto in $try" >&5 -$as_echo_n "checking for EVP_cleanup in -lcrypto in $try... " >&6; } + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for EVP_CIPHER_CTX_new in -lcrypto in $try" >&5 +$as_echo_n "checking for EVP_CIPHER_CTX_new in -lcrypto in $try... " >&6; } LIBS="-lcrypto $old_LIBS" CPPFLAGS="-L$try -Wl,-rpath,$try $old_CPPFLAGS" cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ -extern char EVP_cleanup(); +extern char EVP_CIPHER_CTX_new(); int main () { -EVP_cleanup() +EVP_CIPHER_CTX_new() ; return 0; } @@ -2962,16 +2962,16 @@ rm -f core conftest.err conftest.$ac_objext \ fi if test "x$smart_lib" = "x"; then - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for EVP_cleanup in -lcrypto" >&5 -$as_echo_n "checking for EVP_cleanup in -lcrypto... " >&6; } + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for EVP_CIPHER_CTX_new in -lcrypto" >&5 +$as_echo_n "checking for EVP_CIPHER_CTX_new in -lcrypto... " >&6; } LIBS="-lcrypto $old_LIBS" cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ -extern char EVP_cleanup(); +extern char EVP_CIPHER_CTX_new(); int main () { -EVP_cleanup() +EVP_CIPHER_CTX_new() ; return 0; } @@ -3048,17 +3048,17 @@ eval "smart_lib_dir=\"\$smart_lib_dir $DIRS\"" for try in $smart_lib_dir /usr/local/lib /opt/lib; do - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for EVP_cleanup in -lcrypto in $try" >&5 -$as_echo_n "checking for EVP_cleanup in -lcrypto in $try... " >&6; } + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for EVP_CIPHER_CTX_new in -lcrypto in $try" >&5 +$as_echo_n "checking for EVP_CIPHER_CTX_new in -lcrypto in $try... " >&6; } LIBS="-lcrypto $old_LIBS" CPPFLAGS="-L$try -Wl,-rpath,$try $old_CPPFLAGS" cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ -extern char EVP_cleanup(); +extern char EVP_CIPHER_CTX_new(); int main () { -EVP_cleanup() +EVP_CIPHER_CTX_new() ; return 0; } @@ -3088,7 +3088,7 @@ if test "x$smart_lib" != "x"; then SMART_LIBS="$smart_ldflags $smart_lib $SMART_LIBS" fi - if test "x$ac_cv_lib_crypto_EVP_cleanup" != "xyes"; then + if test "x$ac_cv_lib_crypto_EVP_CIPHER_CTX_new" != "xyes"; then fail="libssl" else for ac_func in EVP_sha256 diff --git a/src/modules/rlm_eap/types/rlm_eap_pwd/configure.ac b/src/modules/rlm_eap/types/rlm_eap_pwd/configure.ac index 7c1c7ab..34c2240 100644 --- a/src/modules/rlm_eap/types/rlm_eap_pwd/configure.ac +++ b/src/modules/rlm_eap/types/rlm_eap_pwd/configure.ac @@ -60,8 +60,8 @@ if test x$with_[]modname != xno; then fi smart_try_dir=$openssl_lib_dir - FR_SMART_CHECK_LIB(crypto, EVP_cleanup) - if test "x$ac_cv_lib_crypto_EVP_cleanup" != "xyes"; then + FR_SMART_CHECK_LIB(crypto, EVP_CIPHER_CTX_new) + if test "x$ac_cv_lib_crypto_EVP_CIPHER_CTX_new" != "xyes"; then fail="libssl" else AC_CHECK_FUNCS(EVP_sha256)