diff options
author | Andrew Bartlett <abartlet@samba.org> | 2013-09-21 14:33:21 -0700 |
---|---|---|
committer | Andrew Bartlett <abartlet@samba.org> | 2013-09-22 11:24:31 -0700 |
commit | 25d4bafca7245e3f8291e5f0f304b1b4f8ce5600 (patch) | |
tree | 0f8c4f1513dc891481859e49a1e0120bca69f213 | |
parent | 274b899095645550e263564ae4e03b4f0d6bdbea (diff) | |
download | samba-25d4bafca7245e3f8291e5f0f304b1b4f8ce5600.tar.gz samba-25d4bafca7245e3f8291e5f0f304b1b4f8ce5600.tar.bz2 samba-25d4bafca7245e3f8291e5f0f304b1b4f8ce5600.zip |
dsdb: Refuse to replicate an all-zero invocationID GUID in replPropertyMetaData
This matches Windows 2008R2.
Andrew Bartlett
Signed-off-by: Andrew Bartlett <abartlet@samba.org>
Reviewed-by: Stefan Metzmacher <metze@samba.org>
Reviewed-by: Michael Adam <obnox@samba.org>
-rw-r--r-- | source4/dsdb/repl/replicated_objects.c | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/source4/dsdb/repl/replicated_objects.c b/source4/dsdb/repl/replicated_objects.c index e018aa4e77..d1d69fa8f8 100644 --- a/source4/dsdb/repl/replicated_objects.c +++ b/source4/dsdb/repl/replicated_objects.c @@ -427,6 +427,15 @@ WERROR dsdb_convert_object_ex(struct ldb_context *ldb, continue; } + if (GUID_all_zero(&d->originating_invocation_id)) { + status = WERR_DS_SRC_GUID_MISMATCH; + DEBUG(0, ("Refusing replication of object containing invalid zero invocationID on attribute %d of %s: %s\n", + a->attid, + ldb_dn_get_linearized(msg->dn), + win_errstr(status))); + return status; + } + if (a->attid == DRSUAPI_ATTID_instanceType) { if (instanceType_e != NULL) { return WERR_FOOBAR; |