1 /* groups.c 4.1 82/02/28 */ 2 3 /* 4 * groups 5 */ 6 7 #include <sys/param.h> 8 #include <grp.h> 9 #include <pwd.h> 10 11 int grps[NGRPS/(sizeof(int)*8)]; 12 struct group *gr, *getgrgid(); 13 14 main(argc, argv) 15 int argc; 16 char *argv[]; 17 { 18 char *sep = ""; 19 int i; 20 21 setgrp(0, grps); 22 for (i = 0; i < NGRPS; i++) 23 if (grps[i/(sizeof(int)*8)] & (1<<(i%(sizeof(int)*8)))) { 24 gr = getgrgid(i); 25 if (gr == NULL) 26 printf("%s%d", sep, i); 27 else 28 printf("%s%s", sep, gr->gr_name); 29 sep = " "; 30 } 31 printf("\n"); 32 exit(0); 33 } 34