From fcdbf9f79e41a1f799517c4f9c1b8fd26cbc5dff Mon Sep 17 00:00:00 2001 From: Quanah Gibson-Mount <quanah@openldap.org> Date: Wed, 14 Apr 2010 19:56:12 +0000 Subject: [PATCH] ITS#6459 --- CHANGES | 1 + servers/slapd/overlays/syncprov.c | 14 +++++++------- 2 files changed, 8 insertions(+), 7 deletions(-) diff --git a/CHANGES b/CHANGES index f6e4120a12..15d4896d1c 100644 --- a/CHANGES +++ b/CHANGES @@ -8,6 +8,7 @@ OpenLDAP 2.4.22 Engineering Fixed slapo-dynlist REP_ENTRY flag handling (ITS#5340,ITS#6423) Fixed slapo-rwm olcRwmMap handling (ITS#6436) Fixed slapo-rwm REP_ENTRY flag handling (ITS#5340,ITS#6423) + Fixed slapo-syncprov memory leak (ITS#6459) Fixed slapo-valsort REP_ENTRY flag handling (ITS#5340,ITS#6423) OpenLDAP 2.4.21 Release (2009/12/20) diff --git a/servers/slapd/overlays/syncprov.c b/servers/slapd/overlays/syncprov.c index d3584a2238..4ee8a23abc 100644 --- a/servers/slapd/overlays/syncprov.c +++ b/servers/slapd/overlays/syncprov.c @@ -931,9 +931,9 @@ syncprov_qplay( Operation *op, syncops *so ) ldap_pvt_thread_mutex_unlock( &so->s_mutex ); if ( sr->s_mode == LDAP_SYNC_NEW_COOKIE ) { - SlapReply rs = { REP_INTERMEDIATE }; + SlapReply rs = { REP_INTERMEDIATE }; - rc = syncprov_sendinfo( op, &rs, LDAP_TAG_SYNC_NEW_COOKIE, + rc = syncprov_sendinfo( op, &rs, LDAP_TAG_SYNC_NEW_COOKIE, &sr->s_csn, 0, NULL, 0 ); } else { opc.sdn = sr->s_dn; @@ -945,11 +945,11 @@ syncprov_qplay( Operation *op, syncops *so ) rc = syncprov_sendresp( op, &opc, so, sr->s_mode ); - if ( opc.se ) { - if ( !dec_mutexint( opc.se->e_private )) { - opc.se->e_private = NULL; - entry_free ( opc.se ); - } + } + if ( sr->s_e ) { + if ( !dec_mutexint( sr->s_e->e_private )) { + sr->s_e->e_private = NULL; + entry_free ( sr->s_e ); } } -- GitLab