s4-dsdb: use a common method for finding a link pair
authorAndrew Tridgell <tridge@samba.org>
Sun, 20 Dec 2009 00:53:09 +0000 (11:53 +1100)
committerAndrew Tridgell <tridge@samba.org>
Fri, 1 Jan 2010 21:16:51 +0000 (08:16 +1100)
Use ^1 everywhere, to ensure it works for both forward and backward
links

source4/dsdb/samdb/ldb_modules/repl_meta_data.c

index bf4a55054a079766f2d4c455b01d846da32c2f4f..87868354a92fcc0f5a2aa020919b78bb0b1c8448 100644 (file)
@@ -216,7 +216,7 @@ static int replmd_add_backlink(struct ldb_module *module, const struct dsdb_sche
        struct replmd_private *replmd_private =
                talloc_get_type_abort(ldb_module_get_private(module), struct replmd_private);
 
-       target_attr = dsdb_attribute_by_linkID(schema, schema_attr->linkID + 1);
+       target_attr = dsdb_attribute_by_linkID(schema, schema_attr->linkID ^ 1);
        if (!target_attr) {
                /*
                 * windows 2003 has a broken schema where the