From 07e7683f5a86991feaa764e2055116554ada1b93 Mon Sep 17 00:00:00 2001 From: Michal Židek Date: Sep 13 2016 11:48:33 +0000 Subject: TOOLS: sss_override without name override sss_override failed to export user/group overrides if user had no overrides for name. Resolves: https://fedorahosted.org/sssd/ticket/3179 Reviewed-by: Pavel Březina --- diff --git a/src/tools/sss_override.c b/src/tools/sss_override.c index d41da52..212bf9a 100644 --- a/src/tools/sss_override.c +++ b/src/tools/sss_override.c @@ -1159,12 +1159,14 @@ list_user_overrides(TALLOC_CTX *mem_ctx, } fqname = ldb_msg_find_attr_as_string(msgs[i], SYSDB_NAME, NULL); - ret = sss_parse_internal_fqname(tmp_ctx, fqname, &name, NULL); - if (ret != EOK) { - ret = ERR_WRONG_NAME_FORMAT; - goto done; + if (fqname != NULL) { + ret = sss_parse_internal_fqname(tmp_ctx, fqname, &name, NULL); + if (ret != EOK) { + ret = ERR_WRONG_NAME_FORMAT; + goto done; + } + objs[i].name = talloc_steal(objs, name); } - objs[i].name = talloc_steal(objs, name); objs[i].uid = ldb_msg_find_attr_as_uint(msgs[i], SYSDB_UIDNUM, 0); objs[i].gid = ldb_msg_find_attr_as_uint(msgs[i], SYSDB_GIDNUM, 0); @@ -1248,12 +1250,14 @@ list_group_overrides(TALLOC_CTX *mem_ctx, talloc_steal(objs, objs[i].orig_name); fqname = ldb_msg_find_attr_as_string(msgs[i], SYSDB_NAME, NULL); - ret = sss_parse_internal_fqname(tmp_ctx, fqname, &name, NULL); - if (ret != EOK) { - ret = ERR_WRONG_NAME_FORMAT; - goto done; + if (fqname != NULL) { + ret = sss_parse_internal_fqname(tmp_ctx, fqname, &name, NULL); + if (ret != EOK) { + ret = ERR_WRONG_NAME_FORMAT; + goto done; + } + objs[i].name = talloc_steal(objs, name); } - objs[i].name = talloc_steal(objs, name); objs[i].gid = ldb_msg_find_attr_as_uint(msgs[i], SYSDB_GIDNUM, 0); }