summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMichal Židek <mzidek@redhat.com>2016-09-12 19:22:56 +0200
committerLukas Slebodnik <lslebodn@redhat.com>2016-09-13 14:00:15 +0200
commit812bed08943df8bf3fd1ff9eabcaf5bedc635c92 (patch)
tree98b0ad58c2d447fb2c6b1689d457d18b72408935
parent1c72723cde8bea0d390b928c7cd29e48e7a7deab (diff)
downloadsssd-812bed08943df8bf3fd1ff9eabcaf5bedc635c92.tar.gz
sssd-812bed08943df8bf3fd1ff9eabcaf5bedc635c92.tar.xz
sssd-812bed08943df8bf3fd1ff9eabcaf5bedc635c92.zip
TOOLS: sss_groupshow fails to show MPG
The MPG search uses it's own search function that used sysdb operation with shortname, but it expects internal fqname. Resolves: https://fedorahosted.org/sssd/ticket/3184 Reviewed-by: Lukáš Slebodník <lslebodn@redhat.com>
-rw-r--r--src/tools/sss_groupshow.c12
1 files changed, 10 insertions, 2 deletions
diff --git a/src/tools/sss_groupshow.c b/src/tools/sss_groupshow.c
index 5870cc802..00f6f1293 100644
--- a/src/tools/sss_groupshow.c
+++ b/src/tools/sss_groupshow.c
@@ -553,13 +553,14 @@ int group_show_recurse(TALLOC_CTX *mem_ctx,
static int group_show_mpg(TALLOC_CTX *mem_ctx,
struct sss_domain_info *domain,
- const char *name,
+ const char *shortname,
struct group_info **res)
{
const char *attrs[] = GROUP_SHOW_MPG_ATTRS;
struct ldb_message *msg;
struct group_info *info;
int ret;
+ char *sysdb_fqname;
info = talloc_zero(mem_ctx, struct group_info);
if (!info) {
@@ -567,7 +568,14 @@ static int group_show_mpg(TALLOC_CTX *mem_ctx,
goto fail;
}
- ret = sysdb_search_user_by_name(info, domain, name, attrs, &msg);
+ sysdb_fqname = sss_create_internal_fqname(mem_ctx,
+ shortname,
+ domain->name);
+ if (sysdb_fqname == NULL) {
+ return ENOMEM;
+ }
+
+ ret = sysdb_search_user_by_name(info, domain, sysdb_fqname, attrs, &msg);
if (ret) {
DEBUG(SSSDBG_OP_FAILURE,
"Search failed: %s (%d)\n", strerror(ret), ret);