summaryrefslogtreecommitdiff
path: root/source4/dsdb/schema/schema_convert_to_ol.c
diff options
context:
space:
mode:
authorAndrew Bartlett <abartlet@samba.org>2009-08-05 08:53:11 +1000
committerAndrew Bartlett <abartlet@samba.org>2009-08-05 08:56:06 +1000
commit43aa546ecc3f05845793b1a7354685d50a77c170 (patch)
tree282c318ee900ba81ee91fe95328871d175b24cd6 /source4/dsdb/schema/schema_convert_to_ol.c
parent25a65d604676b25f97ca427b805d151c1a40a07e (diff)
downloadsamba-43aa546ecc3f05845793b1a7354685d50a77c170.tar.gz
samba-43aa546ecc3f05845793b1a7354685d50a77c170.tar.bz2
samba-43aa546ecc3f05845793b1a7354685d50a77c170.zip
s4:dsdb Don't cast an ldb_val into a const char * for schema lookups
This removes a number of cases where we did a cast into a const char * of an ldb_val. While convention is to alway have an extra \0 at data[length] in the ldb_val, this is not required, and does not occour at least on build farm host 'svart'. Andrew Bartlett
Diffstat (limited to 'source4/dsdb/schema/schema_convert_to_ol.c')
-rw-r--r--source4/dsdb/schema/schema_convert_to_ol.c12
1 files changed, 7 insertions, 5 deletions
diff --git a/source4/dsdb/schema/schema_convert_to_ol.c b/source4/dsdb/schema/schema_convert_to_ol.c
index ebcb7ade59..c0ab5c2af8 100644
--- a/source4/dsdb/schema/schema_convert_to_ol.c
+++ b/source4/dsdb/schema/schema_convert_to_ol.c
@@ -56,9 +56,11 @@ static char *print_schema_recursive(char *append_to_string, struct dsdb_schema *
const char **must;
const char **may;
char *schema_entry = NULL;
- const char *objectclass_name_as_list[] = {
- objectclass->lDAPDisplayName,
- NULL
+ struct ldb_val objectclass_name_as_ldb_val = data_blob_string_const(objectclass->lDAPDisplayName);
+ struct ldb_message_element objectclass_name_as_el = {
+ .name = "objectClass",
+ .num_values = 1,
+ .values = &objectclass_name_as_ldb_val
};
int j;
int attr_idx;
@@ -89,7 +91,7 @@ static char *print_schema_recursive(char *append_to_string, struct dsdb_schema *
}
}
- may = dsdb_full_attribute_list(mem_ctx, schema, objectclass_name_as_list, DSDB_SCHEMA_ALL_MAY);
+ may = dsdb_full_attribute_list(mem_ctx, schema, &objectclass_name_as_el, DSDB_SCHEMA_ALL_MAY);
for (j=0; may && may[j]; j++) {
/* We might have been asked to remap this name, due to a conflict */
@@ -101,7 +103,7 @@ static char *print_schema_recursive(char *append_to_string, struct dsdb_schema *
}
}
- must = dsdb_full_attribute_list(mem_ctx, schema, objectclass_name_as_list, DSDB_SCHEMA_ALL_MUST);
+ must = dsdb_full_attribute_list(mem_ctx, schema, &objectclass_name_as_el, DSDB_SCHEMA_ALL_MUST);
for (j=0; must && must[j]; j++) {
/* We might have been asked to remap this name, due to a conflict */