summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMichal Židek <mzidek@redhat.com>2016-09-06 13:46:53 +0200
committerLukas Slebodnik <lslebodn@redhat.com>2016-09-07 20:38:54 +0200
commit5210c5d3a5a83b5d08396ee23d88f6ba0994097d (patch)
tree3e7cf79050609a4ae37b9dfe55178ce66b68b1ef
parent6be723a089a1e07a1cd19b4fa53fd142c13f0c69 (diff)
downloadsssd-5210c5d3a5a83b5d08396ee23d88f6ba0994097d.tar.gz
sssd-5210c5d3a5a83b5d08396ee23d88f6ba0994097d.tar.xz
sssd-5210c5d3a5a83b5d08396ee23d88f6ba0994097d.zip
TOOLS: sss_groupshow did not work
sss_groupshow used shortname to search in sysdb database. We have to u e sysdb_fqname (aka internal_fqname) format for all sysdb oprations. Resolves: https://fedorahosted.org/sssd/ticket/3175 Reviewed-by: Lukáš Slebodník <lslebodn@redhat.com>
-rw-r--r--src/tools/sss_groupshow.c13
1 files changed, 11 insertions, 2 deletions
diff --git a/src/tools/sss_groupshow.c b/src/tools/sss_groupshow.c
index 41d7475ce..5870cc802 100644
--- a/src/tools/sss_groupshow.c
+++ b/src/tools/sss_groupshow.c
@@ -318,7 +318,7 @@ int group_show(TALLOC_CTX *mem_ctx,
struct sysdb_ctx *sysdb,
struct sss_domain_info *domain,
bool recursive,
- const char *name,
+ const char *shortname,
struct group_info **res)
{
struct group_info *root;
@@ -326,11 +326,20 @@ int group_show(TALLOC_CTX *mem_ctx,
struct ldb_message *msg = NULL;
const char **group_members = NULL;
int nmembers = 0;
+ char *sysdb_fqname = NULL;
int ret;
int i;
+ sysdb_fqname = sss_create_internal_fqname(mem_ctx,
+ shortname,
+ domain->name);
+ if (sysdb_fqname == NULL) {
+ return ENOMEM;
+ }
+
/* First, search for the root group */
- ret = sysdb_search_group_by_name(mem_ctx, domain, name, attrs, &msg);
+ ret = sysdb_search_group_by_name(mem_ctx, domain, sysdb_fqname, attrs,
+ &msg);
if (ret) {
DEBUG(SSSDBG_OP_FAILURE,
"Search failed: %s (%d)\n", strerror(ret), ret);