From a56c7ffc5e57f394ba60de307fd1cf25d3c1bdbf Mon Sep 17 00:00:00 2001 From: Quanah Gibson-Mount <quanah@openldap.org> Date: Thu, 13 Aug 2009 02:02:36 +0000 Subject: [PATCH] ITS#6101 --- CHANGES | 1 + servers/slapd/result.c | 1 + servers/slapd/sasl.c | 2 +- servers/slapd/slap.h | 2 +- 4 files changed, 4 insertions(+), 2 deletions(-) diff --git a/CHANGES b/CHANGES index aae961cf45..93fc93b701 100644 --- a/CHANGES +++ b/CHANGES @@ -10,6 +10,7 @@ OpenLDAP 2.4.18 Engineering Fixed slapd server URL matching (ITS#5942) Fixed slapd subordinate needs a suffix (ITS#6216) Fixed slapd tools to properly close database (ITS#6214) + Fixed slapd uninitialized SlapReply components (ITS#6101) Fixed slapd-ndb startup (ITS#6203) Fixed slapd-relay various issues (ITS#6133) Fixed slapd-relay response/cleanup callback mismatch (ITS#6154) diff --git a/servers/slapd/result.c b/servers/slapd/result.c index 16b87b40c1..353edc9982 100644 --- a/servers/slapd/result.c +++ b/servers/slapd/result.c @@ -616,6 +616,7 @@ send_ldap_disconnect( Operation *op, SlapReply *rs ) assert( LDAP_UNSOLICITED_ERROR( rs->sr_err ) ); rs->sr_type = REP_EXTENDED; + rs->sr_rspdata = NULL; Debug( LDAP_DEBUG_TRACE, "send_ldap_disconnect %d:%s\n", diff --git a/servers/slapd/sasl.c b/servers/slapd/sasl.c index 14e3d25b6e..e12a82946f 100644 --- a/servers/slapd/sasl.c +++ b/servers/slapd/sasl.c @@ -1540,7 +1540,7 @@ int slap_sasl_bind( Operation *op, SlapReply *rs ) } /* Must send response using old security layer */ - if (response.bv_len) rs->sr_sasldata = &response; + rs->sr_sasldata = (response.bv_len ? &response : NULL); send_ldap_sasl( op, rs ); /* Now dispose of the old security layer. diff --git a/servers/slapd/slap.h b/servers/slapd/slap.h index 288d18f3de..65716aabcb 100644 --- a/servers/slapd/slap.h +++ b/servers/slapd/slap.h @@ -2064,9 +2064,9 @@ struct SlapReply { BerVarray sr_ref; LDAPControl **sr_ctrls; union sr_u { + rep_search_s sru_search; rep_sasl_s sru_sasl; rep_extended_s sru_extended; - rep_search_s sru_search; } sr_un; slap_mask_t sr_flags; #define REP_ENTRY_MODIFIABLE 0x0001U -- GitLab