summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLuke Howard <lukeh@padl.com>2005-07-17 11:11:34 +0000
committerLuke Howard <lukeh@padl.com>2005-07-17 11:11:34 +0000
commit30d637629461c0dd453cede1d3d988e9965f09e6 (patch)
treeeca6450cc4e106ca99be25c9046dffbf1980805a
parent31e935699736a4bc101682b6a4565152f669076a (diff)
BUG#210
-rw-r--r--ChangeLog7
-rw-r--r--Makefile.am1
-rw-r--r--pam_ldap.c12
3 files changed, 19 insertions, 1 deletions
diff --git a/ChangeLog b/ChangeLog
index f47fadd..71bf0ec 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,6 +1,13 @@
$Id$
===============================================================
+180 Luke Howard <lukeh@padl.com>
+
+ * from Peter Marschall <peter@adpm.de>:
+ manual page installation fix
+ * fix for BUG#210: use start_tls on referrals if
+ configured to do so
+
179 Luke Howard <lukeh@padl.com>
* more manual page updates
diff --git a/Makefile.am b/Makefile.am
index fcd2496..ca53682 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -39,7 +39,6 @@ install-data-local:
$(mkinstalldirs) $(DESTDIR)$(sysconfdir); \
$(INSTALL_DATA) -o root -g root $(srcdir)/ldap.conf $(DESTDIR)$(sysconfdir)/ldap.conf; \
fi
- $(INSTALL_DATA) -o root -g root $(srcdir)/pam_ldap.5 $(DESTDIR)$(mandir)/man5/pam_ldap.5
uninstall-local:
@$(NORMAL_UNINSTALL)
diff --git a/pam_ldap.c b/pam_ldap.c
index 4349551..122349d 100644
--- a/pam_ldap.c
+++ b/pam_ldap.c
@@ -1587,6 +1587,7 @@ _rebind_proc (LDAP * ld, LDAP_CONST char *url, int request, ber_int_t msgid)
pam_ldap_session_t *session = global_session;
#endif
char *who, *cred;
+ int rc;
if (session->info != NULL && session->info->bound_as_user == 1)
{
@@ -1607,6 +1608,17 @@ _rebind_proc (LDAP * ld, LDAP_CONST char *url, int request, ber_int_t msgid)
}
}
+ if (session->conf->ssl_on == SSL_START_TLS)
+ {
+ rc = ldap_start_tls_s (session->ld, NULL, NULL);
+ if (rc != LDAP_SUCCESS)
+ {
+ syslog (LOG_ERR, "pam_ldap: ldap_starttls_s: %s",
+ ldap_err2string (rc));
+ return PAM_SERVICE_ERR;
+ }
+ }
+
return ldap_simple_bind_s (ld, who, cred);
}
#else