From: Pierangelo Masarati Date: Tue, 2 Oct 2001 10:44:14 +0000 (+0000) Subject: forward porting of empty parent dn checks from back-ldbm X-Git-Tag: LDBM_PRE_GIANT_RWLOCK~1015 X-Git-Url: https://git.sur5r.net/?a=commitdiff_plain;h=4ac9b37db72baf7dcfb8c8d39f7320d897b4054c;p=openldap forward porting of empty parent dn checks from back-ldbm --- diff --git a/servers/slapd/back-bdb/modrdn.c b/servers/slapd/back-bdb/modrdn.c index a3216c6dd3..aedcfa3312 100644 --- a/servers/slapd/back-bdb/modrdn.c +++ b/servers/slapd/back-bdb/modrdn.c @@ -156,7 +156,7 @@ retry: /* transaction retry */ } p_ndn = dn_parent( be, e->e_ndn ); - if ( p_ndn != NULL ) { + if ( p_ndn != NULL && p_ndn[ 0 ] != '\0' ) { /* Make sure parent entry exist and we can write its * children. */ @@ -206,9 +206,10 @@ retry: /* transaction retry */ } else { /* no parent, modrdn entry directly under root */ - if( ! be_isroot( be, op->o_ndn ) ) { + if( ! be_isroot( be, op->o_ndn ) && !be_issuffix( be, "" ) ) { Debug( LDAP_DEBUG_TRACE, - "bdb_modrdn: no parent & not root\n", + "bdb_modrdn: no parent, not root " + "& \"\" is not suffix\n", 0, 0, 0); rc = LDAP_INSUFFICIENT_ACCESS; goto return_results;