diff options
author | Gerald Carter <jerry@samba.org> | 2004-01-14 17:56:05 +0000 |
---|---|---|
committer | Gerald Carter <jerry@samba.org> | 2004-01-14 17:56:05 +0000 |
commit | 8f6fe5bce39378a059a374461f2a4fd32f4cd3b1 (patch) | |
tree | bc9e2230934bc2801dbd1ebc80bc2dfafd23b1c1 | |
parent | 84b24610e5940fcf9e4a2f1813790b131dc7fbe7 (diff) | |
download | samba-8f6fe5bce39378a059a374461f2a4fd32f4cd3b1.tar.gz samba-8f6fe5bce39378a059a374461f2a4fd32f4cd3b1.tar.bz2 samba-8f6fe5bce39378a059a374461f2a4fd32f4cd3b1.zip |
syncing abartlet's cracklib tests from 3.0
(This used to be commit 64c1db9bce27bbe5bc28acb631b265419d6d6286)
-rw-r--r-- | source3/configure.in | 58 | ||||
-rw-r--r-- | source3/tests/crack.c | 7 |
2 files changed, 65 insertions, 0 deletions
diff --git a/source3/configure.in b/source3/configure.in index 821ab3a1ea..07e4f3476f 100644 --- a/source3/configure.in +++ b/source3/configure.in @@ -2966,6 +2966,64 @@ if test x"$samba_cv_HAVE_TRUNCATED_SALT" = x"yes"; then fi fi + +dictpath="/usr/lib/cracklib_dict" + +############################################### +# test for where we get FaciestCheck from +AC_MSG_CHECKING(where to use cracklib from (default=$dictpath)) +AC_ARG_WITH(cracklib, +[ --with-cracklib[=DIR] Look for cracklib dictionary in this location ], +[ case "$withval" in + yes) + AC_MSG_RESULT(${dictpath}) + ;; + no) + AC_MSG_RESULT(no) + dictpath="" + ;; + *) + dictpath="$withval" + AC_MSG_RESULT(${dictpath}) + ;; + esac ], + dictpath="" + AC_MSG_RESULT(no) +) + +if test x$dictpath != x""; then + AC_SEARCH_LIBS(FascistCheck, [crack], + [test "$ac_cv_search_crack" = "none required" || samba_cv_found_crack="yes" + AC_DEFINE(HAVE_CRACK,1,[Whether the system has the FaciestCheck function from cracklib])]) + + crack_saved_libs=$LIBS; + + if test x$samba_cv_found_crack=x"yes"; then + AC_SEARCH_LIBS(CRACKLIB_DICTPATH, [crypt], + AC_DEFINE(HAVE_CRACKLIB_DICTPATH, 1, [Whether we have given a CRACKLIB_DICTPATH in our headers]) + ) + + AC_DEFINE_UNQUOTED(SAMBA_CRACKLIB_DICTPATH, "$dictpath", [Where the cracklib dictionay is]) + AC_MSG_CHECKING(Whether we have a working cracklib) + AC_TRY_RUN([ + #include "${srcdir-.}/tests/crack.c"], + AC_MSG_RESULT(yes) + AC_DEFINE(HAVE_WORKING_CRACKLIB,1,[Whether we have a working cracklib]) + AUTH_LIBS="-lcrack $AUTH_LIBS", + + AC_MSG_RESULT(no) + AC_MSG_WARN(cracklib exists - but does not function correctly), + + AC_MSG_RESULT(no) + AC_MSG_WARN(cannot test-run when cross-compiling) + ) + else + AC_MSG_CHECKING(Whether we have cracklib) + AC_MSG_RESULT(no) + fi + LIBS=$crack_saved_libs +fi + ######################################################################################## ## ## TESTS FOR SAM BACKENDS. KEEP THESE GROUPED TOGETHER diff --git a/source3/tests/crack.c b/source3/tests/crack.c index 1342887852..36119b3bbc 100644 --- a/source3/tests/crack.c +++ b/source3/tests/crack.c @@ -1,3 +1,10 @@ +#include <crack.h> + +#ifndef HAVE_CRACKLIB_DICTPATH +#ifndef CRACKLIB_DICTPATH +#define CRACKLIB_DICTPATH SAMBA_CRACKLIB_DICTPATH +#endif +#endif int main(int argc, char **argv) { FascistCheck("Foo", CRACKLIB_DICTPATH); |