From 804cf59a489dd41a83fda56acfec4e9f561b1245 Mon Sep 17 00:00:00 2001 From: Andrew Tridgell Date: Fri, 28 Oct 2005 07:05:32 +0000 Subject: r11364: added a ldb_attr_dn() function for testing if an attribute name is "dn" or "distinguishedName". This makes us a bit more consistent (This used to be commit b41b374b55f9a056c47ffa2ff88aa5272dbc42fc) --- source4/lib/ldb/common/ldb_match.c | 6 ++---- source4/lib/ldb/common/ldb_utf8.c | 12 ++++++++++++ 2 files changed, 14 insertions(+), 4 deletions(-) (limited to 'source4/lib/ldb/common') diff --git a/source4/lib/ldb/common/ldb_match.c b/source4/lib/ldb/common/ldb_match.c index 7573cfc808..84f051f497 100644 --- a/source4/lib/ldb/common/ldb_match.c +++ b/source4/lib/ldb/common/ldb_match.c @@ -87,8 +87,7 @@ static int ldb_match_present(struct ldb_context *ldb, struct ldb_parse_tree *tree, enum ldb_scope scope) { - - if (ldb_attr_cmp(tree->u.present.attr, "distinguishedName") == 0) { + if (ldb_attr_dn(tree->u.present.attr) == 0) { return 1; } @@ -151,8 +150,7 @@ static int ldb_match_equality(struct ldb_context *ldb, struct ldb_dn *valuedn; int ret; - if (ldb_attr_cmp(tree->u.equality.attr, "dn") == 0 || - ldb_attr_cmp(tree->u.equality.attr, "distinguishedName") == 0) { + if (ldb_attr_dn(tree->u.equality.attr) == 0) { valuedn = ldb_dn_explode_casefold(ldb, (char *)tree->u.equality.value.data); if (valuedn == NULL) { diff --git a/source4/lib/ldb/common/ldb_utf8.c b/source4/lib/ldb/common/ldb_utf8.c index 61334bce09..a0aad12658 100644 --- a/source4/lib/ldb/common/ldb_utf8.c +++ b/source4/lib/ldb/common/ldb_utf8.c @@ -80,3 +80,15 @@ int ldb_attr_cmp(const char *attr1, const char *attr2) { return ldb_caseless_cmp(attr1, attr2); } + +/* + we accept either 'dn' or 'distinguishedName' for a distinguishedName +*/ +int ldb_attr_dn(const char *attr) +{ + if (ldb_attr_cmp(attr, "dn") == 0 || + ldb_attr_cmp(attr, "distinguishedName") == 0) { + return 0; + } + return -1; +} -- cgit