mirror of
https://git.openldap.org/openldap/openldap.git
synced 2026-01-01 12:39:35 -05:00
updatedn can add '' rooted entries (according to ACLs)
This commit is contained in:
parent
7793ece6ce
commit
616d409817
3 changed files with 8 additions and 4 deletions
|
|
@ -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;
|
||||
|
||||
|
|
|
|||
|
|
@ -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;
|
||||
|
||||
|
|
|
|||
|
|
@ -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;
|
||||
|
||||
|
|
|
|||
Loading…
Reference in a new issue