dsdb: Do not check isDeleted as a possible link
authorAndrew Bartlett <abartlet@samba.org>
Thu, 1 Sep 2016 02:17:27 +0000 (14:17 +1200)
committerGarming Sam <garming@samba.org>
Thu, 1 Sep 2016 03:49:15 +0000 (05:49 +0200)
Signed-off-by: Andrew Bartlett <abartlet@samba.org>
Reviewed-by: Garming Sam <garming@catalyst.net.nz>
source4/dsdb/kcc/garbage_collect_tombstones.c

index 49d3325a64ec9b033c97a431dd6d39d2ac4203bd..fee56d9bbd7873e021c5b46a320a4eb4dde7b613 100644 (file)
@@ -202,6 +202,11 @@ NTSTATUS dsdb_garbage_collect_tombstones(TALLOC_CTX *mem_ctx,
                                const struct dsdb_attribute *attrib
                                        = dsdb_attribute_by_lDAPDisplayName(schema, element->name);
 
+                               /* This avoids parsing isDeleted as a link */
+                               if (attrib->linkID == 0 || ((attrib->linkID & 1) == 1)) {
+                                       continue;
+                               }
+
                                for (k = 0; k < element->num_values; k++) {
                                        struct ldb_val *value = &element->values[k];
                                        uint64_t whenChanged = 0;