diff options
author | Günther Deschner <gd@samba.org> | 2004-12-20 18:42:58 +0000 |
---|---|---|
committer | Gerald (Jerry) Carter <jerry@samba.org> | 2007-10-10 10:53:42 -0500 |
commit | ac8032bacff10451fa03f155d43f0d20389512fa (patch) | |
tree | 201c0303b6ed4a6d0b5492028d0c7427f40b5361 /source/lib/smbldap.c | |
parent | 721bf50d7446b8ce18bc1d45e17d4214d5a43d26 (diff) | |
download | samba-ac8032bacff10451fa03f155d43f0d20389512fa.tar.gz samba-ac8032bacff10451fa03f155d43f0d20389512fa.tar.xz samba-ac8032bacff10451fa03f155d43f0d20389512fa.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
Diffstat (limited to 'source/lib/smbldap.c')
-rw-r--r-- | source/lib/smbldap.c | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/source/lib/smbldap.c b/source/lib/smbldap.c index 7e485457b08..4afafde9bb6 100644 --- a/source/lib/smbldap.c +++ b/source/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) { |