From c69717755abeaf8bf93e76255d0912e3a24b7cb0 Mon Sep 17 00:00:00 2001 From: Stefan Metzmacher Date: Fri, 15 Dec 2006 13:08:57 +0000 Subject: r20184: change ldb_attrib_handler into ldb_schema_attribute, which has a pointer to a ldb_schema_syntax struct. the default attribute handler is now registered dynamicly as "*" attribute, instead of having its own code path. ldb_schema_attribute's can be added to the ldb_schema given a ldb_schema_syntax struct or the syntax name we may also need to introduce a ldb_schema_matching_rule, and add a pointer to a default ldb_schema_matching_rule in the ldb_schema_syntax. metze (This used to be commit b97b8f5dcbce006f005e53ca79df3330e62f117b) --- source4/scripting/ejs/mprutil.c | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) (limited to 'source4/scripting') diff --git a/source4/scripting/ejs/mprutil.c b/source4/scripting/ejs/mprutil.c index 6c989807a6..cfed69dbe0 100644 --- a/source4/scripting/ejs/mprutil.c +++ b/source4/scripting/ejs/mprutil.c @@ -171,17 +171,17 @@ static struct MprVar mprLdbMessage(struct ldb_context *ldb, struct ldb_message * for (i=0;inum_elements;i++) { struct ldb_message_element *el = &msg->elements[i]; struct MprVar val; - const struct ldb_attrib_handler *attr; + const struct ldb_schema_attribute *a; struct ldb_val v; - attr = ldb_attrib_handler(ldb, el->name); - if (attr == NULL) { + a = ldb_schema_attribute_by_name(ldb, el->name); + if (a == NULL) { goto failed; } if (el->num_values == 1 && !str_list_check_ci(multivalued, el->name)) { - if (attr->ldif_write_fn(ldb, msg, &el->values[0], &v) != 0) { + if (a->syntax->ldif_write_fn(ldb, msg, &el->values[0], &v) != 0) { goto failed; } /* FIXME: nasty hack, remove me when ejs will support @@ -195,8 +195,8 @@ static struct MprVar mprLdbMessage(struct ldb_context *ldb, struct ldb_message * int j; val = mprArray(el->name); for (j=0;jnum_values;j++) { - if (attr->ldif_write_fn(ldb, msg, - &el->values[j], &v) != 0) { + if (a->syntax->ldif_write_fn(ldb, msg, + &el->values[j], &v) != 0) { goto failed; } /* FIXME: nasty hack, remove me when ejs will support -- cgit