Blame SOURCES/0139-TOOLS-sss_override-without-name-override.patch

b2d430
From e56e1396bab69d9498f4ec6a36e9e228ded90116 Mon Sep 17 00:00:00 2001
b2d430
From: =?UTF-8?q?Michal=20=C5=BDidek?= <mzidek@redhat.com>
b2d430
Date: Wed, 7 Sep 2016 17:09:53 +0200
b2d430
Subject: [PATCH 139/140] TOOLS: sss_override without name override
b2d430
MIME-Version: 1.0
b2d430
Content-Type: text/plain; charset=UTF-8
b2d430
Content-Transfer-Encoding: 8bit
b2d430
b2d430
sss_override failed to export user/group overrides
b2d430
if user had no overrides for name.
b2d430
b2d430
Resolves:
b2d430
https://fedorahosted.org/sssd/ticket/3179
b2d430
b2d430
Reviewed-by: Pavel Březina <pbrezina@redhat.com>
b2d430
(cherry picked from commit 07e7683f5a86991feaa764e2055116554ada1b93)
b2d430
---
b2d430
 src/tools/sss_override.c | 24 ++++++++++++++----------
b2d430
 1 file changed, 14 insertions(+), 10 deletions(-)
b2d430
b2d430
diff --git a/src/tools/sss_override.c b/src/tools/sss_override.c
b2d430
index d41da52e69acdb67b5a6d624254e3b89a8aa27b8..212bf9ab84b20d4777fc2601359fad58596bb7c4 100644
b2d430
--- a/src/tools/sss_override.c
b2d430
+++ b/src/tools/sss_override.c
b2d430
@@ -1159,12 +1159,14 @@ list_user_overrides(TALLOC_CTX *mem_ctx,
b2d430
         }
b2d430
 
b2d430
         fqname = ldb_msg_find_attr_as_string(msgs[i], SYSDB_NAME, NULL);
b2d430
-        ret = sss_parse_internal_fqname(tmp_ctx, fqname, &name, NULL);
b2d430
-        if (ret != EOK) {
b2d430
-            ret = ERR_WRONG_NAME_FORMAT;
b2d430
-            goto done;
b2d430
+        if (fqname != NULL) {
b2d430
+            ret = sss_parse_internal_fqname(tmp_ctx, fqname, &name, NULL);
b2d430
+            if (ret != EOK) {
b2d430
+                ret = ERR_WRONG_NAME_FORMAT;
b2d430
+                goto done;
b2d430
+            }
b2d430
+            objs[i].name = talloc_steal(objs, name);
b2d430
         }
b2d430
-        objs[i].name = talloc_steal(objs, name);
b2d430
 
b2d430
         objs[i].uid = ldb_msg_find_attr_as_uint(msgs[i], SYSDB_UIDNUM, 0);
b2d430
         objs[i].gid = ldb_msg_find_attr_as_uint(msgs[i], SYSDB_GIDNUM, 0);
b2d430
@@ -1248,12 +1250,14 @@ list_group_overrides(TALLOC_CTX *mem_ctx,
b2d430
         talloc_steal(objs, objs[i].orig_name);
b2d430
 
b2d430
         fqname = ldb_msg_find_attr_as_string(msgs[i], SYSDB_NAME, NULL);
b2d430
-        ret = sss_parse_internal_fqname(tmp_ctx, fqname, &name, NULL);
b2d430
-        if (ret != EOK) {
b2d430
-            ret = ERR_WRONG_NAME_FORMAT;
b2d430
-            goto done;
b2d430
+        if (fqname != NULL) {
b2d430
+            ret = sss_parse_internal_fqname(tmp_ctx, fqname, &name, NULL);
b2d430
+            if (ret != EOK) {
b2d430
+                ret = ERR_WRONG_NAME_FORMAT;
b2d430
+                goto done;
b2d430
+            }
b2d430
+            objs[i].name = talloc_steal(objs, name);
b2d430
         }
b2d430
-        objs[i].name = talloc_steal(objs, name);
b2d430
 
b2d430
         objs[i].gid = ldb_msg_find_attr_as_uint(msgs[i], SYSDB_GIDNUM, 0);
b2d430
     }
b2d430
-- 
b2d430
2.7.4
b2d430