r13328: After the attribute name check cleanup it turned up ldb_caseless_cmp()
authorSimo Sorce <idra@samba.org>
Sat, 4 Feb 2006 05:59:48 +0000 (05:59 +0000)
committerGerald (Jerry) Carter <jerry@samba.org>
Wed, 10 Oct 2007 18:51:44 +0000 (13:51 -0500)
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.

source/lib/db_wrap.c
source/lib/ldb/common/ldb_dn.c
source/lib/ldb/common/ldb_utf8.c
source/lib/ldb/include/ldb.h
source/lib/ldb/tools/cmdline.c

index f3358bff98bbdee279cc1966afcab727eb2fadfd..4223d19b3fa4ce5e8bcdbac88196e76b4b8515dc 100644 (file)
@@ -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;
 }
index c2212fd6fe66001233b2bd4432194a02967e5cd2..bcd5a067a6366ef600d4239b97f6c9adcc855802 100644 (file)
@@ -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;
                }
index 4735b35af6d6452f60bfb1112c438fa761debda3..1b7319915b60c07064fac0911dfa88af8b367fc5 100644 (file)
  */
 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
index 7c39aeeeb9569bc97ed5afbdd67b5f0bbf8943b3..0e192c2e31635cb989d959e6ed6a8ab0845fd8a4 100644 (file)
@@ -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);
 };
 
@@ -748,21 +747,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 *));
 
 /**
index df8d94d1f04b62f9de08594856b7457464d97c29..232cfcbb16dcdfcabc3a76949f8f13369c70a98c 100644 (file)
@@ -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",