diff options
author | Douglas Bagnall <douglas.bagnall@catalyst.net.nz> | 2016-07-06 11:54:25 +1200 |
---|---|---|
committer | Garming Sam <garming@samba.org> | 2016-07-15 10:01:28 +0200 |
commit | 5ce969d0c70afc1f14a9b223edbaec7a847c64de (patch) | |
tree | 7780387d021ad953ecbbce1871f2968c75c65910 /source4/dsdb/common/util.c | |
parent | b7b229a424cfe6a2bbe7b091c93a6f09b2132975 (diff) | |
download | samba-5ce969d0c70afc1f14a9b223edbaec7a847c64de.tar.gz |
dsdb: add vanish links control
Normally linked attributes are deleted by marking them as with RMD flags,
but sometimes we want them to vanish without trace. At those times we
set the DSDB_CONTROL_REPLMD_VANISH_LINKS control.
Signed-off-by: Douglas Bagnall <douglas.bagnall@catalyst.net.nz>
Signed-off-by: Garming Sam <garming@catalyst.net.nz>
Signed-off-by: Bob Campbell <bobcampbell@catalyst.net.nz>
Reviewed-by: Andrew Bartlett <abartlet@samba.org>
Pair-programmed-with: Andrew Bartlett <abartlet@samba.org>
Diffstat (limited to 'source4/dsdb/common/util.c')
-rw-r--r-- | source4/dsdb/common/util.c | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/source4/dsdb/common/util.c b/source4/dsdb/common/util.c index bd0b5a33e19..0bbf4022523 100644 --- a/source4/dsdb/common/util.c +++ b/source4/dsdb/common/util.c @@ -4288,6 +4288,13 @@ int dsdb_request_add_controls(struct ldb_request *req, uint32_t dsdb_flags) } } + if (dsdb_flags & DSDB_REPLMD_VANISH_LINKS) { + ret = ldb_request_add_control(req, DSDB_CONTROL_REPLMD_VANISH_LINKS, true, NULL); + if (ret != LDB_SUCCESS) { + return ret; + } + } + if (dsdb_flags & DSDB_MODIFY_PARTIAL_REPLICA) { ret = ldb_request_add_control(req, DSDB_CONTROL_PARTIAL_REPLICA, false, NULL); if (ret != LDB_SUCCESS) { |