diff options
author | Matthias Dieter Wallnöfer <mdw@samba.org> | 2012-03-25 23:25:01 +0200 |
---|---|---|
committer | Andrew Bartlett <abartlet@samba.org> | 2012-03-26 00:57:29 +0200 |
commit | 206421c8fd28ca4bb6375b97e106d3531f1a5559 (patch) | |
tree | 2fc4076ec37cc15e916801aa1873f09f22187a75 /source4/dsdb/samdb/ldb_modules/descriptor.c | |
parent | 0f8ffa9ce1777d0b368eb765a7f69f93e68118bd (diff) | |
download | samba-206421c8fd28ca4bb6375b97e106d3531f1a5559.tar.gz samba-206421c8fd28ca4bb6375b97e106d3531f1a5559.tar.bz2 samba-206421c8fd28ca4bb6375b97e106d3531f1a5559.zip |
s4:dsdb - enhance "get_last_structural_class()" for optimisations
If the objectclass entry has been sorted before we are able to determine
the (last) structural or 88 object class in constant time.
Reviewed-by: Andrew Bartlett <abartlet@samba.org>
Signed-off-by: Andrew Bartlett <abartlet@samba.org>
Diffstat (limited to 'source4/dsdb/samdb/ldb_modules/descriptor.c')
-rw-r--r-- | source4/dsdb/samdb/ldb_modules/descriptor.c | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/source4/dsdb/samdb/ldb_modules/descriptor.c b/source4/dsdb/samdb/ldb_modules/descriptor.c index 409d08dea9..47207db201 100644 --- a/source4/dsdb/samdb/ldb_modules/descriptor.c +++ b/source4/dsdb/samdb/ldb_modules/descriptor.c @@ -542,7 +542,8 @@ static int descriptor_add(struct ldb_module *module, struct ldb_request *req) return ldb_operr(ldb); } - objectclass = get_last_structural_class(schema, objectclass_element, req); + objectclass = get_last_structural_class(schema, objectclass_element, + false); if (objectclass == NULL) { return ldb_operr(ldb); } @@ -660,7 +661,8 @@ static int descriptor_modify(struct ldb_module *module, struct ldb_request *req) return ldb_operr(ldb); } - objectclass = get_last_structural_class(schema, objectclass_element, req); + objectclass = get_last_structural_class(schema, objectclass_element, + false); if (objectclass == NULL) { return ldb_operr(ldb); } |