|
|
f92ce9 |
From fa5ccbb5f5b730122b624b31c0225762492797d7 Mon Sep 17 00:00:00 2001
|
|
|
f92ce9 |
From: Noriko Hosoi <nhosoi@redhat.com>
|
|
|
f92ce9 |
Date: Mon, 10 Nov 2014 13:12:48 -0800
|
|
|
f92ce9 |
Subject: [PATCH 28/28] Ticket #47948 - ldap_sasl_bind fails assertion (ld !=
|
|
|
f92ce9 |
NULL) if it is called from chainingdb_bind over SSL/startTLS
|
|
|
f92ce9 |
|
|
|
f92ce9 |
Bug Description: In case startTLS, if ldap_start_tls_s called from
|
|
|
f92ce9 |
cb_get_connection failed and it returned non LDAP_SUCCESS return
|
|
|
f92ce9 |
code, the code was stored in the local variable just in the error
|
|
|
f92ce9 |
case, used only for error logging and abandoned in the scope; the
|
|
|
f92ce9 |
caller cb_get_connection returned LDAP_SUCCESS even if the connection
|
|
|
f92ce9 |
was not established. That confuses the caller of cb_get_connection
|
|
|
f92ce9 |
and let it call ldap_sasl_bind with NULL ld and it causes the assertion
|
|
|
f92ce9 |
failure.
|
|
|
f92ce9 |
|
|
|
f92ce9 |
Fix Description: remove the local variable declaration in the scope.
|
|
|
f92ce9 |
|
|
|
f92ce9 |
https://fedorahosted.org/389/ticket/47948
|
|
|
f92ce9 |
|
|
|
f92ce9 |
Reviewed by rmeggins@redhat.com (Thank you, Rich!!)
|
|
|
f92ce9 |
|
|
|
f92ce9 |
(cherry picked from commit 47868d3e5278d425abe5e8325f2965de66c10cff)
|
|
|
f92ce9 |
(cherry picked from commit cb4f0cb2d120bc899bfb68dfe134ec3a26f3f334)
|
|
|
f92ce9 |
---
|
|
|
f92ce9 |
ldap/servers/plugins/chainingdb/cb_conn_stateless.c | 1 -
|
|
|
f92ce9 |
1 file changed, 1 deletion(-)
|
|
|
f92ce9 |
|
|
|
f92ce9 |
diff --git a/ldap/servers/plugins/chainingdb/cb_conn_stateless.c b/ldap/servers/plugins/chainingdb/cb_conn_stateless.c
|
|
|
f92ce9 |
index a85b392..4b323b1 100644
|
|
|
f92ce9 |
--- a/ldap/servers/plugins/chainingdb/cb_conn_stateless.c
|
|
|
f92ce9 |
+++ b/ldap/servers/plugins/chainingdb/cb_conn_stateless.c
|
|
|
f92ce9 |
@@ -463,7 +463,6 @@ cb_get_connection(cb_conn_pool * pool,
|
|
|
f92ce9 |
ldap_controls_free(serverctrls);
|
|
|
f92ce9 |
}
|
|
|
f92ce9 |
} else if (secure == 2) {
|
|
|
f92ce9 |
- int rc;
|
|
|
f92ce9 |
/* the start_tls operation is usually performed in slapi_ldap_bind, but
|
|
|
f92ce9 |
since we are not binding we still need to start_tls */
|
|
|
f92ce9 |
if (cb_debug_on()) {
|
|
|
f92ce9 |
--
|
|
|
f92ce9 |
1.9.3
|
|
|
f92ce9 |
|