| #if !defined ISO && !defined ISO99 && !defined ISO11 |
| #ifdef POSIX |
| # define gid_t __gid_t |
| #endif |
| |
| type {struct group} |
| element {struct group} {char*} gr_name |
| element {struct group} gid_t gr_gid |
| element {struct group} {char**} gr_mem |
| |
| # ifndef POSIX |
| type gid_t |
| # endif |
| # if defined XOPEN2K8 || defined POSIX2008 |
| type size_t |
| # endif |
| |
| function {struct group*} getgrgid (gid_t) |
| function {struct group*} getgrnam (const char*) |
| function int getgrgid_r (gid_t, struct group*, char *, size_t, struct group**) |
| function int getgrnam_r (const char *, struct group *, char *, size_t, struct group**) |
| # ifndef POSIX |
| function {struct group*} getgrent (void) |
| function void endgrent (void) |
| # ifndef POSIX2008 |
| function void setgrent (void) |
| # endif |
| # endif |
| |
| allow gr_* |
| allow *_t |
| #endif |