diff options
author | Andrew Bartlett <abartlet@samba.org> | 2007-09-18 22:43:06 +0000 |
---|---|---|
committer | Gerald (Jerry) Carter <jerry@samba.org> | 2007-10-10 15:06:56 -0500 |
commit | c64116e158080c7cd7304cdd3b80c8666f78c7c6 (patch) | |
tree | 085c09bd111eb1277e2d054b71042f7460fa44c5 /source4/lib/ldb/common/attrib_handlers.c | |
parent | 425cb6733cf25a79fae79744ddffe06ac1b11f6b (diff) | |
download | samba-c64116e158080c7cd7304cdd3b80c8666f78c7c6.tar.gz samba-c64116e158080c7cd7304cdd3b80c8666f78c7c6.tar.bz2 samba-c64116e158080c7cd7304cdd3b80c8666f78c7c6.zip |
r25218: After discussion with Simo, remove the subclass support from LDB.
Subclass support was designed to avoid needing to spell out the full
list of objectClasses that an entry was in. However, Samba4 now
enforces this restriction in the objectClass module, and the way
subclass matching was handled was complex and counter-intuitive in my
opinion (and did not match LDAP).
Andrew Bartlett
(This used to be commit f5ce04b904e14445a2a7e7f92e7e1f64b645c6f2)
Diffstat (limited to 'source4/lib/ldb/common/attrib_handlers.c')
-rw-r--r-- | source4/lib/ldb/common/attrib_handlers.c | 29 |
1 files changed, 1 insertions, 28 deletions
diff --git a/source4/lib/ldb/common/attrib_handlers.c b/source4/lib/ldb/common/attrib_handlers.c index b8747c3b95..8ed2763d4d 100644 --- a/source4/lib/ldb/common/attrib_handlers.c +++ b/source4/lib/ldb/common/attrib_handlers.c @@ -278,33 +278,6 @@ int ldb_comparison_dn(struct ldb_context *ldb, void *mem_ctx, } /* - compare two objectclasses, looking at subclasses -*/ -int ldb_comparison_objectclass(struct ldb_context *ldb, void *mem_ctx, - const struct ldb_val *v1, const struct ldb_val *v2) -{ - int ret, i; - const char **subclasses; - ret = ldb_comparison_fold(ldb, mem_ctx, v1, v2); - if (ret == 0) { - return 0; - } - subclasses = ldb_subclass_list(ldb, (char *)v1->data); - if (subclasses == NULL) { - return ret; - } - for (i=0;subclasses[i];i++) { - struct ldb_val vs; - vs.data = discard_const(subclasses[i]); - vs.length = strlen(subclasses[i]); - if (ldb_comparison_objectclass(ldb, mem_ctx, &vs, v2) == 0) { - return 0; - } - } - return ret; -} - -/* compare two utc time values. 1 second resolution */ int ldb_comparison_utctime(struct ldb_context *ldb, void *mem_ctx, @@ -368,7 +341,7 @@ static const struct ldb_schema_syntax ldb_standard_syntaxes[] = { .ldif_read_fn = ldb_handler_copy, .ldif_write_fn = ldb_handler_copy, .canonicalise_fn = ldb_handler_fold, - .comparison_fn = ldb_comparison_objectclass + .comparison_fn = ldb_comparison_fold }, { .name = LDB_SYNTAX_UTC_TIME, |