The logic was reversed on a couple of places. It was faster to just
write a patch than report the bug :-)
From 44450656ebdb3ed4a6c1d5b37554f64386dfac43 Mon Sep 17 00:00:00 2001
From: Jakub Hrozek <[email protected]>
Date: Fri, 17 Feb 2012 11:12:10 +0100
Subject: [PATCH] Fix case insensitive service lookups

---
 src/responder/nss/nsssrv_services.c |   12 ++++++------
 1 files changed, 6 insertions(+), 6 deletions(-)

diff --git a/src/responder/nss/nsssrv_services.c 
b/src/responder/nss/nsssrv_services.c
index 
13d142e44b2bc149f80f8d5ead6a768f44169689..872b0701fc9cafc2482c7e832fb773429f33fa62
 100644
--- a/src/responder/nss/nsssrv_services.c
+++ b/src/responder/nss/nsssrv_services.c
@@ -51,10 +51,10 @@ struct getserv_ctx {
 static errno_t lookup_service_step(struct tevent_req *req);
 static void lookup_service_done(struct tevent_req *req);
 
-#define SVC_NAME_CASED (dom->case_sensitive ? state->cased_name \
-                                           : state->name)
-#define SVC_PROTO_CASED (dom->case_sensitive ? state->cased_proto \
-                                            : state->proto)
+#define SVC_NAME_CASED (dom->case_sensitive ? state->name \
+                                           : state->cased_name)
+#define SVC_PROTO_CASED (dom->case_sensitive ? state->proto \
+                                            : state->cased_proto)
 
 /* Provider Lookup Logic:
  * Iterate through the available caches. If the cached entry is
@@ -125,7 +125,7 @@ getserv_send(TALLOC_CTX *mem_ctx,
             goto immediate;
         }
         state->cased_proto = sss_get_cased_name(state, service_protocol,
-                                                true);
+                                                false);
         if (!state->cased_proto) {
             ret = ENOMEM;
             goto immediate;
@@ -148,7 +148,7 @@ getserv_send(TALLOC_CTX *mem_ctx,
         }
 
         state->cased_name = sss_get_cased_name(state, service_name,
-                                               true);
+                                               false);
         if (!state->cased_name) {
             ret = ENOMEM;
             goto immediate;
-- 
1.7.7.6

_______________________________________________
sssd-devel mailing list
[email protected]
https://fedorahosted.org/mailman/listinfo/sssd-devel

Reply via email to