From db29383797e10496dab16fc4729272dcfe090858 Mon Sep 17 00:00:00 2001 From: Andrew Bartlett Date: Wed, 8 Apr 2009 23:18:49 +1000 Subject: Make the schema_inferiors generation code to compile Sadly it still segfaults at this stage Andrew Bartlett --- source4/dsdb/schema/schema_set.c | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) (limited to 'source4/dsdb/schema/schema_set.c') diff --git a/source4/dsdb/schema/schema_set.c b/source4/dsdb/schema/schema_set.c index 725fe845ad..dcaeb4fc89 100644 --- a/source4/dsdb/schema/schema_set.c +++ b/source4/dsdb/schema/schema_set.c @@ -309,6 +309,23 @@ failed: return LDB_ERR_OPERATIONS_ERROR; } +int dsdb_setup_schema_inversion(struct ldb_context *ldb, struct dsdb_schema *schema) +{ + /* Walk the list of schema classes */ + + /* For each subClassOf, add us to subclasses of the parent */ + + /* collect these subclasses into a recursive list of total subclasses, preserving order */ + + /* For each subclass under 'top', write the index from it's + * order as an integer in the dsdb_class (for sorting + * objectClass lists efficiently) */ + + /* Walk the list of scheam classes */ + + /* Create a 'total possible superiors' on each class */ + return LDB_SUCCESS; +} /** * Attach the schema to an opaque pointer on the ldb, so ldb modules @@ -324,6 +341,8 @@ int dsdb_set_schema(struct ldb_context *ldb, struct dsdb_schema *schema) return ret; } + schema_fill_constructed(schema); + ret = ldb_set_opaque(ldb, "dsdb_schema", schema); if (ret != LDB_SUCCESS) { return ret; -- cgit