summaryrefslogtreecommitdiffstats
path: root/src/tools/sssctl
diff options
context:
space:
mode:
authorMichal Židek <mzidek@redhat.com>2016-12-01 15:22:42 +0100
committerJakub Hrozek <jhrozek@redhat.com>2016-12-15 10:43:32 +0100
commit715abb607540945cc82355e94712da7ac9746a67 (patch)
tree4c1ecbf6fdc9d5a9c6bce97fd4d04f36cba60bea /src/tools/sssctl
parentd6e875c49d6be650a03fc14f00a680734b23ef66 (diff)
downloadsssd-715abb607540945cc82355e94712da7ac9746a67.tar.gz
sssd-715abb607540945cc82355e94712da7ac9746a67.tar.xz
sssd-715abb607540945cc82355e94712da7ac9746a67.zip
sssctl: Case insensitive filters
Lowercase the filter in case insensitive domains. Resolves: https://fedorahosted.org/sssd/ticket/3235 Reviewed-by: Jakub Hrozek <jhrozek@redhat.com>
Diffstat (limited to 'src/tools/sssctl')
-rw-r--r--src/tools/sssctl/sssctl_cache.c8
1 files changed, 8 insertions, 0 deletions
diff --git a/src/tools/sssctl/sssctl_cache.c b/src/tools/sssctl/sssctl_cache.c
index 01fcf91e2..59c8cb473 100644
--- a/src/tools/sssctl/sssctl_cache.c
+++ b/src/tools/sssctl/sssctl_cache.c
@@ -327,6 +327,14 @@ static const char *sssctl_create_filter(TALLOC_CTX *mem_ctx,
return NULL;
}
+ if (dom->case_sensitive == false) {
+ char *filter_value_old;
+
+ filter_value_old = filter_value;
+ filter_value = sss_tc_utf8_str_tolower(mem_ctx, filter_value_old);
+ talloc_free(filter_value_old);
+ }
+
filter = talloc_asprintf(mem_ctx, "(&(objectClass=%s)(|(%s=%s)(%s=%s)))",
class, attr_name, filter_value,
SYSDB_NAME_ALIAS, filter_value);