crypto.m4 revision 90926
1dnl $Id: crypto.m4,v 1.7 2001/08/29 17:02:48 assar Exp $ 2dnl 3dnl test for crypto libraries: 4dnl - libcrypto (from openssl) 5dnl - libdes (from krb4) 6dnl - own-built libdes 7 8AC_DEFUN([KRB_CRYPTO],[ 9crypto_lib=unknown 10AC_WITH_ALL([openssl]) 11 12DIR_des= 13 14AC_MSG_CHECKING([for crypto library]) 15 16if test "$crypto_lib" = "unknown" -a "$with_openssl" != "no"; then 17 18 save_CPPFLAGS="$CPPFLAGS" 19 save_LIBS="$LIBS" 20 INCLUDE_des= 21 LIB_des= 22 if test "$with_openssl_include" != ""; then 23 INCLUDE_des="-I${with_openssl}/include" 24 fi 25 if test "$with_openssl_lib" != ""; then 26 LIB_des="-L${with_openssl}/lib" 27 fi 28 CPPFLAGS="${INCLUDE_des} ${CPPFLAGS}" 29 LIB_des="${LIB_des} -lcrypto" 30 LIB_des_a="$LIB_des" 31 LIB_des_so="$LIB_des" 32 LIB_des_appl="$LIB_des" 33 LIBS="${LIBS} ${LIB_des}" 34 AC_TRY_LINK([ 35 #include <openssl/md4.h> 36 #include <openssl/md5.h> 37 #include <openssl/sha.h> 38 #include <openssl/des.h> 39 #include <openssl/rc4.h> 40 ], 41 [ 42 MD4_CTX md4; 43 MD5_CTX md5; 44 SHA_CTX sha1; 45 46 MD4_Init(&md4); 47 MD5_Init(&md5); 48 SHA1_Init(&sha1); 49 50 des_cbc_encrypt(0, 0, 0, 0, 0, 0); 51 RC4(0, 0, 0, 0); 52 ], [ 53 crypto_lib=libcrypto 54 AC_DEFINE([HAVE_OPENSSL], 1, [define to use openssl's libcrypto]) 55 AC_MSG_RESULT([libcrypto])]) 56 CPPFLAGS="$save_CPPFLAGS" 57 LIBS="$save_LIBS" 58fi 59 60if test "$crypto_lib" = "unknown" -a "$with_krb4" != "no"; then 61 62 save_CPPFLAGS="$CPPFLAGS" 63 save_LIBS="$LIBS" 64 INCLUDE_des="${INCLUDE_krb4}" 65 LIB_des= 66 if test "$krb4_libdir"; then 67 LIB_des="-L${krb4_libdir}" 68 fi 69 LIB_des="${LIB_des} -ldes" 70 CPPFLAGS="${CPPFLAGS} ${INCLUDE_des}" 71 LIBS="${LIBS} ${LIB_des}" 72 LIB_des_a="$LIB_des" 73 LIB_des_so="$LIB_des" 74 LIB_des_appl="$LIB_des" 75 LIBS="${LIBS} ${LIB_des}" 76 AC_TRY_LINK([ 77 #undef KRB5 /* makes md4.h et al unhappy */ 78 #define KRB4 79 #include <md4.h> 80 #include <md5.h> 81 #include <sha.h> 82 #include <des.h> 83 #include <rc4.h> 84 ], 85 [ 86 MD4_CTX md4; 87 MD5_CTX md5; 88 SHA_CTX sha1; 89 90 MD4_Init(&md4); 91 MD5_Init(&md5); 92 SHA1_Init(&sha1); 93 94 des_cbc_encrypt(0, 0, 0, 0, 0, 0); 95 RC4(0, 0, 0, 0); 96 ], [crypto_lib=krb4; AC_MSG_RESULT([krb4's libdes])]) 97 CPPFLAGS="$save_CPPFLAGS" 98 LIBS="$save_LIBS" 99fi 100 101if test "$crypto_lib" = "unknown"; then 102 103 DIR_des='des' 104 LIB_des='$(top_builddir)/lib/des/libdes.la' 105 LIB_des_a='$(top_builddir)/lib/des/.libs/libdes.a' 106 LIB_des_so='$(top_builddir)/lib/des/.libs/libdes.so' 107 LIB_des_appl="-ldes" 108 109 AC_MSG_RESULT([included libdes]) 110 111fi 112 113AC_SUBST(DIR_des) 114AC_SUBST(INCLUDE_des) 115AC_SUBST(LIB_des) 116AC_SUBST(LIB_des_a) 117AC_SUBST(LIB_des_so) 118AC_SUBST(LIB_des_appl) 119]) 120