Make wbinfo also print the members when querying a group
authorVolker Lendecke <vl@samba.org>
Sat, 8 Aug 2009 11:42:55 +0000 (13:42 +0200)
committerVolker Lendecke <vl@samba.org>
Sat, 8 Aug 2009 11:44:31 +0000 (13:44 +0200)
nsswitch/wbinfo.c

index 5dd96f9ac0a4b0bdec1401212a1319a369b2e7f9..ac5b4c43951cfe0aa4b6e916c0b57b65d13e1809 100644 (file)
@@ -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;