From e8088e16f812d682e08ad558865d0cc6eab2ad9c Mon Sep 17 00:00:00 2001 From: Volker Lendecke Date: Sat, 8 Aug 2009 13:42:55 +0200 Subject: Make wbinfo also print the members when querying a group --- nsswitch/wbinfo.c | 20 ++++++++++++++++++-- 1 file changed, 18 insertions(+), 2 deletions(-) diff --git a/nsswitch/wbinfo.c b/nsswitch/wbinfo.c index 5dd96f9ac0..ac5b4c4395 100644 --- a/nsswitch/wbinfo.c +++ b/nsswitch/wbinfo.c @@ -233,17 +233,25 @@ static bool wbinfo_get_groupinfo(const char *group) { wbcErr wbc_status = WBC_ERR_UNKNOWN_FAILURE; struct group *grp; + char **mem; wbc_status = wbcGetgrnam(group, &grp); if (!WBC_ERROR_IS_OK(wbc_status)) { return false; } - d_printf("%s:%s:%u\n", + d_printf("%s:%s:%u:", grp->gr_name, grp->gr_passwd, (unsigned int)grp->gr_gid); + mem = grp->gr_mem; + while (*mem != NULL) { + d_printf("%s%s", *mem, *(mem+1) != NULL ? "," : ""); + mem += 1; + } + d_printf("\n"); + wbcFreeMemory(grp); return true; @@ -254,17 +262,25 @@ static bool wbinfo_get_gidinfo(int gid) { wbcErr wbc_status = WBC_ERR_UNKNOWN_FAILURE; struct group *grp; + char **mem; wbc_status = wbcGetgrgid(gid, &grp); if (!WBC_ERROR_IS_OK(wbc_status)) { return false; } - d_printf("%s:%s:%u\n", + d_printf("%s:%s:%u:", grp->gr_name, grp->gr_passwd, (unsigned int)grp->gr_gid); + mem = grp->gr_mem; + while (*mem != NULL) { + d_printf("%s%s", *mem, *(mem+1) != NULL ? "," : ""); + mem += 1; + } + d_printf("\n"); + wbcFreeMemory(grp); return true; -- cgit