diff options
author | Simo Sorce <idra@samba.org> | 2006-02-04 05:59:48 +0000 |
---|---|---|
committer | Gerald (Jerry) Carter <jerry@samba.org> | 2007-10-10 13:51:44 -0500 |
commit | 88279373abc07fa50a969135eb5ecf58d6c40cc7 (patch) | |
tree | ab1a73694d18f5d5d96892122cba5a4cfcc85b40 /source4/lib | |
parent | 48d8eee7522e1c1c45a9353ab77c96c20321f143 (diff) | |
download | samba-88279373abc07fa50a969135eb5ecf58d6c40cc7.tar.gz samba-88279373abc07fa50a969135eb5ecf58d6c40cc7.tar.xz samba-88279373abc07fa50a969135eb5ecf58d6c40cc7.zip |
r13328: After the attribute name check cleanup it turned up ldb_caseless_cmp()
was used just in one places and by mistake, as there we should have
been using ldb_attr_cmp()
Remove ldb_caseless_cmp() ... going on with the cleanup and utf8 compliance
effort.
Simo.
(This used to be commit afda68d7bf655a9145648856d29e6e64b9f21aa3)
Diffstat (limited to 'source4/lib')
-rw-r--r-- | source4/lib/db_wrap.c | 9 | ||||
-rw-r--r-- | source4/lib/ldb/common/ldb_dn.c | 5 | ||||
-rw-r--r-- | source4/lib/ldb/common/ldb_utf8.c | 20 | ||||
-rw-r--r-- | source4/lib/ldb/include/ldb.h | 17 | ||||
-rw-r--r-- | source4/lib/ldb/tools/cmdline.c | 1 |
5 files changed, 6 insertions, 46 deletions
diff --git a/source4/lib/db_wrap.c b/source4/lib/db_wrap.c index f3358bff98..4223d19b3f 100644 --- a/source4/lib/db_wrap.c +++ b/source4/lib/db_wrap.c @@ -55,12 +55,7 @@ static void ldb_wrap_debug(void *context, enum ldb_debug_level level, free(s); } -static int wrap_caseless_cmp(void *context, const char *s1, const char *s2) -{ - return strcasecmp_m(s1, s2); -} - -static char *wrap_casefold(void *context, void *mem_ctx, const char *s) +char *wrap_casefold(void *context, void *mem_ctx, const char *s) { return strupper_talloc(mem_ctx, s); } @@ -133,7 +128,7 @@ struct ldb_context *ldb_wrap_connect(TALLOC_CTX *mem_ctx, ldb_set_debug(ldb, ldb_wrap_debug, NULL); - ldb_set_utf8_fns(ldb, NULL, wrap_caseless_cmp, wrap_casefold); + ldb_set_utf8_fns(ldb, NULL, wrap_casefold); return ldb; } diff --git a/source4/lib/ldb/common/ldb_dn.c b/source4/lib/ldb/common/ldb_dn.c index c2212fd6fe..bcd5a067a6 100644 --- a/source4/lib/ldb/common/ldb_dn.c +++ b/source4/lib/ldb/common/ldb_dn.c @@ -502,9 +502,8 @@ int ldb_dn_compare_base(struct ldb_context *ldb, const struct ldb_attrib_handler *h; /* compare names (attribute names are guaranteed to be ASCII only) */ - ret = ldb_caseless_cmp(ldb, - base->components[n0].name, - dn->components[n1].name); + ret = ldb_attr_cmp(base->components[n0].name, + dn->components[n1].name); if (ret) { return ret; } diff --git a/source4/lib/ldb/common/ldb_utf8.c b/source4/lib/ldb/common/ldb_utf8.c index 4735b35af6..1b7319915b 100644 --- a/source4/lib/ldb/common/ldb_utf8.c +++ b/source4/lib/ldb/common/ldb_utf8.c @@ -42,13 +42,10 @@ */ void ldb_set_utf8_fns(struct ldb_context *ldb, void *context, - int (*cmp)(void *, const char *, const char *), char *(*casefold)(void *, void *, const char *)) { if (context) ldb->utf8_fns.context = context; - if (cmp) - ldb->utf8_fns.caseless_cmp = cmp; if (casefold) ldb->utf8_fns.casefold = casefold; } @@ -71,19 +68,9 @@ char *ldb_casefold_default(void *context, void *mem_ctx, const char *s) return ret; } -/* - a caseless compare, optimised for 7 bit - NOTE: doesn't handle UTF8 -*/ - -int ldb_caseless_cmp_default(void *context, const char *s1, const char *s2) -{ - return strcasecmp(s1,s2); -} - void ldb_set_utf8_default(struct ldb_context *ldb) { - ldb_set_utf8_fns(ldb, NULL, ldb_caseless_cmp_default, ldb_casefold_default); + ldb_set_utf8_fns(ldb, NULL, ldb_casefold_default); } char *ldb_casefold(struct ldb_context *ldb, void *mem_ctx, const char *s) @@ -91,11 +78,6 @@ char *ldb_casefold(struct ldb_context *ldb, void *mem_ctx, const char *s) return ldb->utf8_fns.casefold(ldb->utf8_fns.context, mem_ctx, s); } -int ldb_caseless_cmp(struct ldb_context *ldb, const char *s1, const char *s2) -{ - return ldb->utf8_fns.caseless_cmp(ldb->utf8_fns.context, s1, s2); -} - /* check the attribute name is valid according to rfc2251 returns 1 if the name is ok diff --git a/source4/lib/ldb/include/ldb.h b/source4/lib/ldb/include/ldb.h index 7c39aeeeb9..0e192c2e31 100644 --- a/source4/lib/ldb/include/ldb.h +++ b/source4/lib/ldb/include/ldb.h @@ -214,7 +214,6 @@ struct ldb_debug_ops { */ struct ldb_utf8_fns { void *context; - int (*caseless_cmp)(void *context, const char *s1, const char *s2); char *(*casefold)(void *context, void *mem_ctx, const char *s); }; @@ -749,21 +748,6 @@ void ldb_set_utf8_default(struct ldb_context *ldb); char *ldb_casefold(struct ldb_context *ldb, void *mem_ctx, const char *s); /** - Compare two strings, without regard to case. - - \param ldb the ldb context - \param s1 the first string to compare - \param s2 the second string to compare - - \return 0 if the strings are the same, non-zero if there are any - differences except for case. - - \note The default function is not yet UTF8 aware. Provide your own - set of functions through ldb_set_utf8_fns() -*/ -int ldb_caseless_cmp(struct ldb_context *ldb, const char *s1, const char *s2); - -/** Check the attribute name is valid according to rfc2251 \param s tthe string to check @@ -1117,7 +1101,6 @@ int ldb_set_debug(struct ldb_context *ldb, */ void ldb_set_utf8_fns(struct ldb_context *ldb, void *context, - int (*cmp)(void *, const char *, const char *), char *(*casefold)(void *, void *, const char *)); /** diff --git a/source4/lib/ldb/tools/cmdline.c b/source4/lib/ldb/tools/cmdline.c index df8d94d1f0..232cfcbb16 100644 --- a/source4/lib/ldb/tools/cmdline.c +++ b/source4/lib/ldb/tools/cmdline.c @@ -204,6 +204,7 @@ struct ldb_cmdline *ldb_cmdline_process(struct ldb_context *ldb, int argc, const if (ldb_set_opaque(ldb, "credentials", cmdline_credentials)) { goto failed; } + ldb_set_utf8_fns(ldb, NULL, wrap_casefold); #endif if (ldb_connect(ldb, ret->url, flags, ret->options) != 0) { fprintf(stderr, "Failed to connect to %s - %s\n", |