/*
build a new extended DN, including all meta data fields
- DELETED = 1 or missing
- RMD_ADDTIME = originating_add_time
- RMD_INVOCID = originating_invocation_id
- RMD_CHANGETIME = originating_change_time
- RMD_USN = originating_usn
- RMD_VERSION = version
+ DELETED = 1 or missing
+ RMD_ADDTIME = originating_add_time
+ RMD_INVOCID = originating_invocation_id
+ RMD_CHANGETIME = originating_change_time
+ RMD_ORIGINATING_USN = originating_usn
+ RMD_LOCAL_USN = local_usn
+ RMD_VERSION = version
*/
static int replmd_build_la_val(TALLOC_CTX *mem_ctx, struct ldb_val *v, struct dsdb_dn *dsdb_dn,
const struct GUID *invocation_id, uint64_t seq_num, time_t t)
if (ret != LDB_SUCCESS) return ret;
ret = ldb_dn_set_extended_component(dn, "RMD_CHANGETIME", &tval);
if (ret != LDB_SUCCESS) return ret;
- ret = ldb_dn_set_extended_component(dn, "RMD_USN", &usnv);
+ ret = ldb_dn_set_extended_component(dn, "RMD_LOCAL_USN", &usnv);
+ if (ret != LDB_SUCCESS) return ret;
+ ret = ldb_dn_set_extended_component(dn, "RMD_ORIGINATING_USN", &usnv);
if (ret != LDB_SUCCESS) return ret;
ret = ldb_dn_set_extended_component(dn, "RMD_VERSION", &vers);
if (ret != LDB_SUCCESS) return ret;
if (ret != LDB_SUCCESS) return ret;
/* update the USN */
- ret = ldb_dn_set_extended_component(dn, "RMD_USN", &usnv);
+ ret = ldb_dn_set_extended_component(dn, "RMD_ORIGINATING_USN", &usnv);
+ if (ret != LDB_SUCCESS) return ret;
+
+ ret = ldb_dn_set_extended_component(dn, "RMD_LOCAL_USN", &usnv);
if (ret != LDB_SUCCESS) return ret;
/* increase the version by 1 */
.write_clear_fn = ldb_handler_copy,
.write_hex_fn = ldb_handler_copy
},{
- .name = "RMD_USN",
+ .name = "RMD_LOCAL_USN",
+ .read_fn = ldb_handler_copy,
+ .write_clear_fn = ldb_handler_copy,
+ .write_hex_fn = ldb_handler_copy
+ },{
+ .name = "RMD_ORIGINATING_USN",
.read_fn = ldb_handler_copy,
.write_clear_fn = ldb_handler_copy,
.write_hex_fn = ldb_handler_copy