From 504a3cc6b36056f8240dae70a2445be1ad8cc6de Mon Sep 17 00:00:00 2001 From: Andrew Tridgell Date: Thu, 13 Jan 2011 12:13:42 +1100 Subject: ldb: added ldb_dn_minimise() this removes any extraneous components from a DN. For an extended DN, this means removing the string DN and all but the first extended component. This is needed as AD returns "invalid syntax" if you don't use a minimal DN as the base DN for a search. A non-minimal DN also doesn't ever match in a search expression. Pair-Programmed-With: Andrew Bartlett --- source4/lib/ldb/include/ldb.h | 10 ++++++++++ 1 file changed, 10 insertions(+) (limited to 'source4/lib/ldb/include/ldb.h') diff --git a/source4/lib/ldb/include/ldb.h b/source4/lib/ldb/include/ldb.h index e7f7ebba46..4b1a5fb708 100644 --- a/source4/lib/ldb/include/ldb.h +++ b/source4/lib/ldb/include/ldb.h @@ -2172,4 +2172,14 @@ const char *ldb_req_location(struct ldb_request *req); /* set the location marker on a request handle - used for debugging */ #define LDB_REQ_SET_LOCATION(req) ldb_req_set_location(req, __location__) +/* + minimise a DN. The caller must pass in a validated DN. + + If the DN has an extended component then only the first extended + component is kept, the DN string is stripped. + + The existing dn is modified + */ +bool ldb_dn_minimise(struct ldb_dn *dn); + #endif -- cgit