summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGünther Deschner <gd@samba.org>2004-12-20 18:42:58 +0000
committerGerald (Jerry) Carter <jerry@samba.org>2007-10-10 10:53:42 -0500
commit84e0aafc78f9d91cde3a6b1c4a57d8ed3b6fd58c (patch)
treea1294bf12199d5da44ddbe13959c506a6b90d746
parent111f62c00c31ac98d50c0a01e31cb1d44082be29 (diff)
downloadsamba-84e0aafc78f9d91cde3a6b1c4a57d8ed3b6fd58c.tar.gz
samba-84e0aafc78f9d91cde3a6b1c4a57d8ed3b6fd58c.tar.bz2
samba-84e0aafc78f9d91cde3a6b1c4a57d8ed3b6fd58c.zip
r4289: Close LDAP-Connection before retrying to open a new connection in the
retry-loop. This fixes a deadlock-situation when ldapsam is used with the ldapi interface: getpeername won't fail while trying to detect dead connections on unix domain sockets. When the ldapi-connection was closed server-side (due to OpenLDAP's idletimeout) we *never* got a new LDAP connection. Guenther (This used to be commit ac8032bacff10451fa03f155d43f0d20389512fa)
-rw-r--r--source3/lib/smbldap.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/source3/lib/smbldap.c b/source3/lib/smbldap.c
index 7e485457b0..4afafde9bb 100644
--- a/source3/lib/smbldap.c
+++ b/source3/lib/smbldap.c
@@ -977,6 +977,7 @@ static int another_ldap_try(struct smbldap_state *ldap_state, int *rc,
*attempts += 1;
+ smbldap_close(ldap_state);
open_rc = smbldap_open(ldap_state);
if (open_rc == LDAP_SUCCESS) {