From 419a5ae8c9f0348b3a745a5a77039d78cc093404 Mon Sep 17 00:00:00 2001 From: Pierangelo Masarati Date: Tue, 31 Jul 2001 10:54:39 +0000 Subject: [PATCH] fix typo; try to delete dn2id in case of late failure --- servers/slapd/back-ldbm/modrdn.c | 14 ++++++++++---- 1 file changed, 10 insertions(+), 4 deletions(-) diff --git a/servers/slapd/back-ldbm/modrdn.c b/servers/slapd/back-ldbm/modrdn.c index a523dc5504..4800e62d8a 100644 --- a/servers/slapd/back-ldbm/modrdn.c +++ b/servers/slapd/back-ldbm/modrdn.c @@ -587,7 +587,7 @@ ldbm_back_modrdn( goto return_results; } - val.bv_val = old_rdn_vals[a_cnt]; + val.bv_val = old_rdn_vals[d_cnt]; val.bv_len = strlen( val.bv_val ); if ( ! access_allowed( be, conn, op, p, mod_tmp->sml_desc, &val, ACL_WRITE ) ) { @@ -595,12 +595,12 @@ ldbm_back_modrdn( LDAP_LOG(( "backend", LDAP_LEVEL_INFO, "ldbm_back_modrdn: access " "not allowed to attr \"%s\"\n", - old_rdn_types[a_cnt] )); + old_rdn_types[d_cnt] )); #else Debug( LDAP_DEBUG_TRACE, "ldbm_back_modrdn: access not allowed " "to attr \"%s\"\n%s%s", - old_rdn_types[a_cnt], "", "" ); + old_rdn_types[d_cnt], "", "" ); #endif send_ldap_result( conn, op, LDAP_INSUFFICIENT_ACCESS, @@ -672,8 +672,14 @@ ldbm_back_modrdn( send_ldap_result( conn, op, rc, NULL, text, NULL, NULL ); } + + /* here we may try to delete the newly added dn */ + if ( dn2id_delete( be, e->e_ndn, e->e_id ) != 0 ) { + /* we already are in trouble ... */ + ; + } - goto return_results; + goto return_results; } (void) cache_update_entry( &li->li_cache, e ); -- 2.39.5