diff options
author | Andrew Bartlett <abartlet@samba.org> | 2002-03-23 08:28:19 +0000 |
---|---|---|
committer | Andrew Bartlett <abartlet@samba.org> | 2002-03-23 08:28:19 +0000 |
commit | 657a24f476c90e0ffa8171f78b35a449171f54e1 (patch) | |
tree | 35da20fdef21bef1d7c1c7087846db078e088d31 | |
parent | 26588248cda26c6c8216a9b49008cb6d0e7f3bce (diff) | |
download | samba-657a24f476c90e0ffa8171f78b35a449171f54e1.tar.gz samba-657a24f476c90e0ffa8171f78b35a449171f54e1.tar.bz2 samba-657a24f476c90e0ffa8171f78b35a449171f54e1.zip |
Various winbind updates:
- pam_winbind updates from vance, fixing a typo and making some the options
work properly.
- Extra parinoia in the winbind connection loop
- Allow pam_winbind to compile on HP-UX (Don Mcall, more work to do).
- Fix up configure.in to use the same method for building the test .so
as the Makefile uses.
Andrew Bartlett
(This used to be commit 8e705dd9215b1cb3f44d6348094679d7dc6a7fbd)
-rw-r--r-- | source3/configure.in | 7 | ||||
-rw-r--r-- | source3/nsswitch/pam_winbind.c | 6 | ||||
-rw-r--r-- | source3/nsswitch/pam_winbind.h | 2 | ||||
-rw-r--r-- | source3/nsswitch/winbindd_cm.c | 3 | ||||
-rw-r--r-- | source3/nsswitch/winbindd_pam.c | 2 |
5 files changed, 11 insertions, 9 deletions
diff --git a/source3/configure.in b/source3/configure.in index 3610b37b25..59df6e8099 100644 --- a/source3/configure.in +++ b/source3/configure.in @@ -763,8 +763,9 @@ case "$host_os" in SHLIBEXT="sl" # Use special PIC flags for the native HP-UX compiler. if test $ac_cv_prog_cc_Ae = yes; then - #BLDSHARED="true" - LDSHFLAGS="-b -z +h \$@" + SHLD="/usr/bin/ld" + BLDSHARED="true" + LDSHFLAGS="-B symbolic -b -z +h \$@" PICFLAG="+z" fi DYNEXP="-Wl,-E" @@ -823,7 +824,7 @@ AC_CACHE_CHECK([whether building shared libraries actually works], ac_cv_shlib_works=no # try building a trivial shared library $CC $CPPFLAGS $CFLAGS $PICFLAG -c -o shlib.po ${srcdir-.}/tests/shlib.c && - $CC $CPPFLAGS $CFLAGS $LDSHFLAGS -o shlib.so shlib.po && + $SHLD $CPPFLAGS $CFLAGS $LDSHFLAGS -o shlib.so shlib.po && ac_cv_shlib_works=yes rm -f shlib.so shlib.po ]) diff --git a/source3/nsswitch/pam_winbind.c b/source3/nsswitch/pam_winbind.c index 42cc29f320..cad75f7907 100644 --- a/source3/nsswitch/pam_winbind.c +++ b/source3/nsswitch/pam_winbind.c @@ -45,9 +45,9 @@ static int _pam_parse(int argc, const char **argv) else if (!strcasecmp(*argv, "use_authtok")) ctrl |= WINBIND_USE_AUTHTOK_ARG; else if (!strcasecmp(*argv, "use_first_pass")) - ctrl |= WINBIND_TRY_FIRST_PASS_ARG; - else if (!strcasecmp(*argv, "try_first_pass")) ctrl |= WINBIND_USE_FIRST_PASS_ARG; + else if (!strcasecmp(*argv, "try_first_pass")) + ctrl |= WINBIND_TRY_FIRST_PASS_ARG; else if (!strcasecmp(*argv, "unknown_ok")) ctrl |= WINBIND_UNKNOWN_OK_ARG; else { @@ -405,7 +405,7 @@ int pam_sm_authenticate(pam_handle_t *pamh, int flags, &password); if (retval != PAM_SUCCESS) { - _pam_log(LOG_ERR, "Could not retrive user's password"); + _pam_log(LOG_ERR, "Could not retrieve user's password"); return PAM_AUTHTOK_ERR; } diff --git a/source3/nsswitch/pam_winbind.h b/source3/nsswitch/pam_winbind.h index 93d9ec9e73..9897249e16 100644 --- a/source3/nsswitch/pam_winbind.h +++ b/source3/nsswitch/pam_winbind.h @@ -25,7 +25,7 @@ #define PAM_SM_ACCOUNT #define PAM_SM_PASSWORD -#if defined(SUNOS5) || defined(SUNOS4) +#if defined(SUNOS5) || defined(SUNOS4) || defined(HPUX) /* Solaris always uses dynamic pam modules */ #define PAM_EXTERN extern diff --git a/source3/nsswitch/winbindd_cm.c b/source3/nsswitch/winbindd_cm.c index 03a8e3cdd1..f4abf86c47 100644 --- a/source3/nsswitch/winbindd_cm.c +++ b/source3/nsswitch/winbindd_cm.c @@ -415,6 +415,7 @@ static NTSTATUS get_connection_from_cache(const char *domain, const char *pipe_n if (conn->cli) { cli_shutdown(conn->cli); } + ZERO_STRUCT(conn_temp); conn_temp.next = conn->next; DLIST_REMOVE(cm_conns, conn); SAFE_FREE(conn); @@ -426,7 +427,7 @@ static NTSTATUS get_connection_from_cache(const char *domain, const char *pipe_n } if (!conn) { - if (!(conn = (struct winbindd_cm_conn *) malloc(sizeof(struct winbindd_cm_conn)))) + if (!(conn = malloc(sizeof(*conn)))) return NT_STATUS_NO_MEMORY; ZERO_STRUCTP(conn); diff --git a/source3/nsswitch/winbindd_pam.c b/source3/nsswitch/winbindd_pam.c index 6a7afd2b3b..2fa346151e 100644 --- a/source3/nsswitch/winbindd_pam.c +++ b/source3/nsswitch/winbindd_pam.c @@ -189,7 +189,7 @@ enum winbindd_result winbindd_pam_auth_crap(struct winbindd_cli_state *state) result = cm_get_netlogon_cli(lp_workgroup(), trust_passwd, &cli); if (!NT_STATUS_IS_OK(result)) { - DEBUG(3, ("could not open handle to NETLOGON pipe\n")); + DEBUG(3, ("could not open handle to NETLOGON pipe (error: %s)\n", nt_errstr(result))); goto done; } |