From 616d409817888294f748ea657b759edb5a30886a Mon Sep 17 00:00:00 2001 From: Pierangelo Masarati Date: Fri, 16 Nov 2001 14:08:17 +0000 Subject: [PATCH] updatedn can add '' rooted entries (according to ACLs) --- servers/slapd/back-ldbm/add.c | 3 ++- servers/slapd/back-ldbm/delete.c | 3 ++- servers/slapd/back-ldbm/modrdn.c | 6 ++++-- 3 files changed, 8 insertions(+), 4 deletions(-) diff --git a/servers/slapd/back-ldbm/add.c b/servers/slapd/back-ldbm/add.c index c09502b16b..f02429ba26 100644 --- a/servers/slapd/back-ldbm/add.c +++ b/servers/slapd/back-ldbm/add.c @@ -210,7 +210,8 @@ ldbm_back_add( /* no parent, must be adding entry to root */ if ( !be_isroot( be, op->o_ndn ) ) { - if ( be_issuffix( be, "" ) ) { + if ( be_issuffix( be, "" ) + || be_isupdate( be, op->o_ndn ) ) { static const Entry rootp = { NOID, "", "", NULL, NULL }; p = (Entry *)&rootp; diff --git a/servers/slapd/back-ldbm/delete.c b/servers/slapd/back-ldbm/delete.c index c2f4e3f378..c6e9a6c501 100644 --- a/servers/slapd/back-ldbm/delete.c +++ b/servers/slapd/back-ldbm/delete.c @@ -154,7 +154,8 @@ ldbm_back_delete( } else { /* no parent, must be root to delete */ if( ! be_isroot( be, op->o_ndn ) ) { - if ( be_issuffix( be, "" ) ) { + if ( be_issuffix( be, "" ) + || be_isupdate( be, op->o_ndn ) ) { static const Entry rootp = { NOID, "", "", NULL, NULL }; p = (Entry *)&rootp; diff --git a/servers/slapd/back-ldbm/modrdn.c b/servers/slapd/back-ldbm/modrdn.c index 2dad01e78e..6c30a2f5d8 100644 --- a/servers/slapd/back-ldbm/modrdn.c +++ b/servers/slapd/back-ldbm/modrdn.c @@ -208,7 +208,8 @@ ldbm_back_modrdn( /* no parent, must be root to modify rdn */ isroot = be_isroot( be, op->o_ndn ); if ( ! be_isroot ) { - if ( be_issuffix( be, "" ) ) { + if ( be_issuffix( be, "" ) + || be_isupdate( be, op->o_ndn ) ) { static const Entry rootp = { NOID, "", "", NULL, NULL }; p = (Entry *)&rootp; @@ -387,7 +388,8 @@ ldbm_back_modrdn( } if ( ! be_isroot ) { - if ( be_issuffix( be, "" ) ) { + if ( be_issuffix( be, "" ) + || be_isupdate( be, op->o_ndn ) ) { static const Entry rootp = { NOID, "", "", NULL, NULL }; np = (Entry *)&rootp; -- 2.39.5