diff options
-rw-r--r-- | source4/torture/nbt/winsreplication.c | 14 | ||||
-rw-r--r-- | source4/wrepl_server/wrepl_apply_records.c | 3 |
2 files changed, 15 insertions, 2 deletions
diff --git a/source4/torture/nbt/winsreplication.c b/source4/torture/nbt/winsreplication.c index 257a786f2a..d3bd609096 100644 --- a/source4/torture/nbt/winsreplication.c +++ b/source4/torture/nbt/winsreplication.c @@ -676,6 +676,20 @@ static BOOL test_conflict_same_owner(struct test_wrepl_conflict_conn *ctx) .num_ips = ARRAY_SIZE(addresses_A_1), .ips = addresses_A_1, },{ + .type = WREPL_TYPE_SGROUP, + .state = WREPL_STATE_ACTIVE, + .node = WREPL_NODE_B, + .is_static = False, + .num_ips = ARRAY_SIZE(addresses_A_3_4), + .ips = addresses_A_3_4, + },{ + .type = WREPL_TYPE_SGROUP, + .state = WREPL_STATE_TOMBSTONE, + .node = WREPL_NODE_B, + .is_static = False, + .num_ips = ARRAY_SIZE(addresses_B_3_4), + .ips = addresses_B_3_4, + },{ /* the last one should always be a unique,tomstone record! */ .type = WREPL_TYPE_UNIQUE, .state = WREPL_STATE_TOMBSTONE, diff --git a/source4/wrepl_server/wrepl_apply_records.c b/source4/wrepl_server/wrepl_apply_records.c index 55b8a6e387..e86750b3fa 100644 --- a/source4/wrepl_server/wrepl_apply_records.c +++ b/source4/wrepl_server/wrepl_apply_records.c @@ -63,10 +63,9 @@ static const char *_R_ACTION_enum_string(enum _R_ACTION action) #define R_IS_SGROUP(r) ((r)->type == WREPL_TYPE_SGROUP) #define R_IS_MHOMED(r) ((r)->type == WREPL_TYPE_MHOMED) +/* blindly overwrite records from the same owner in all cases */ static enum _R_ACTION replace_same_owner(struct winsdb_record *r1, struct wrepl_name *r2) { - /* TODO: we need to look closer at how special groups are handled */ - /* REPLACE */ return R_DO_REPLACE; } |