fix: Re-binding to a failed connection can segfault

Resolves: #784989
(cherry picked from commit 0992cf19a9)
This commit is contained in:
Jan Synacek 2012-03-26 13:41:40 +02:00
parent a4d33565bb
commit 8453acdae3
2 changed files with 25 additions and 1 deletions

View File

@ -0,0 +1,19 @@
commit dcf94e25f57c2f24936c3ce66d2350c391354da1
Author: Howard Chu <hyc@openldap.org>
Date: Mon Mar 26 03:32:11 2012 -0700
ITS#7207 check for ld->ld_defconn
diff --git a/libraries/libldap/cyrus.c b/libraries/libldap/cyrus.c
index 0248101..2475a87 100644
--- a/libraries/libldap/cyrus.c
+++ b/libraries/libldap/cyrus.c
@@ -419,7 +419,7 @@ ldap_int_sasl_bind(
LDAP_MUTEX_LOCK( &ld->ld_conn_mutex );
ber_sockbuf_ctrl( ld->ld_sb, LBER_SB_OPT_GET_FD, &sd );
- if ( sd == AC_SOCKET_INVALID ) {
+ if ( sd == AC_SOCKET_INVALID || !ld->ld_defconn ) {
/* not connected yet */
rc = ldap_open_defconn( ld );

View File

@ -8,7 +8,7 @@
Name: openldap
Version: 2.4.30
Release: 1%{?dist}
Release: 2%{?dist}
Summary: LDAP support libraries
Group: System Environment/Daemons
License: OpenLDAP
@ -39,6 +39,7 @@ Patch7: openldap-dns-priority.patch
Patch8: openldap-syncrepl-unset-tls-options.patch
Patch9: openldap-constraint-count.patch
Patch10: openldap-man-sasl-nocanon.patch
Patch11: openldap-ld_defconn-rebind.patch
# Fedora specific patches
Patch100: openldap-fedora-systemd.patch
@ -144,6 +145,7 @@ pushd openldap-%{version}
%patch8 -p1
%patch9 -p1
%patch10 -p1
%patch11 -p1
%patch100 -p1
@ -655,6 +657,9 @@ exit 0
%{evolution_connector_prefix}/
%changelog
* Mon Mar 26 2012 Jan Synáček <jsynacek@redhat.com> 2.4.30-2
- fix: Re-binding to a failed connection can segfault (#784989)
* Thu Mar 01 2012 Jan Vcelak <jvcelak@redhat.com> 2.4.30-1
- new upstream release
+ server: fixes in mdb backend