summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSimo Sorce <idra@samba.org>2006-02-04 05:59:48 +0000
committerGerald (Jerry) Carter <jerry@samba.org>2007-10-10 13:51:44 -0500
commit88279373abc07fa50a969135eb5ecf58d6c40cc7 (patch)
treeab1a73694d18f5d5d96892122cba5a4cfcc85b40
parent48d8eee7522e1c1c45a9353ab77c96c20321f143 (diff)
downloadsamba-88279373abc07fa50a969135eb5ecf58d6c40cc7.tar.gz
samba-88279373abc07fa50a969135eb5ecf58d6c40cc7.tar.bz2
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)
-rw-r--r--source4/lib/db_wrap.c9
-rw-r--r--source4/lib/ldb/common/ldb_dn.c5
-rw-r--r--source4/lib/ldb/common/ldb_utf8.c20
-rw-r--r--source4/lib/ldb/include/ldb.h17
-rw-r--r--source4/lib/ldb/tools/cmdline.c1
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",