From: Howard Chu Date: Fri, 6 Feb 2026 19:52:38 +0000 (+0000) Subject: Revert "ITS#10448 slapo-syncprov: plug leak in syncprov_parseCtrl" X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=6603ce17d99f2af8968a58e67039309897c8e6dc;p=thirdparty%2Fopenldap.git Revert "ITS#10448 slapo-syncprov: plug leak in syncprov_parseCtrl" This reverts commit e9451873ae88fc97d001bc800d098e99eba49a65. Breaks all replication --- diff --git a/servers/slapd/overlays/syncprov.c b/servers/slapd/overlays/syncprov.c index 74d85b2117..faac81bc0b 100644 --- a/servers/slapd/overlays/syncprov.c +++ b/servers/slapd/overlays/syncprov.c @@ -4250,26 +4250,6 @@ syncprov_db_destroy( return 0; } -static int -syncprov_ctrl_cleanup( Operation *op, SlapReply *rs ) -{ - if ( op->o_controls[slap_cids.sc_LDAPsync] ) { - sync_control *sr = op->o_controls[slap_cids.sc_LDAPsync]; - op->o_controls[slap_cids.sc_LDAPsync] = NULL; - if ( sr->sr_state.ctxcsn ) { - ber_bvarray_free_x( sr->sr_state.ctxcsn, op->o_tmpmemctx ); - } - if ( sr->sr_state.sids ) { - op->o_tmpfree( sr->sr_state.sids, op->o_tmpmemctx ); - } - if ( sr->sr_state.octet_str.bv_val ) { - op->o_tmpfree( sr->sr_state.octet_str.bv_val, op->o_tmpmemctx ); - } - op->o_tmpfree( sr, op->o_tmpmemctx ); - } - return slap_freeself_cb( op, rs ); -} - static int syncprov_parseCtrl ( Operation *op, SlapReply *rs, @@ -4377,13 +4357,6 @@ static int syncprov_parseCtrl ( op->o_sync_mode |= mode; /* o_sync_mode shares o_sync */ - { - slap_callback *cb = op->o_tmpcalloc( 1, sizeof(slap_callback), op->o_tmpmemctx ); - cb->sc_cleanup = syncprov_ctrl_cleanup; - cb->sc_next = op->o_callback; - op->o_callback = cb; - } - return LDAP_SUCCESS; }