|
nsz |
e19254 |
#include <grp.h>
|
|
nsz |
e19254 |
#define T(t) (t*)0;
|
|
nsz |
e19254 |
#define F(t,n) {t *y = &x.;;}
|
|
nsz |
e19254 |
static void f()
|
|
nsz |
e19254 |
{
|
|
nsz |
e19254 |
T(gid_t)
|
|
nsz |
e19254 |
T(size_t)
|
|
nsz |
e19254 |
{
|
|
nsz |
e19254 |
struct group x;
|
|
nsz |
e19254 |
F(char*, gr_name)
|
|
nsz |
e19254 |
F(gid_t, gr_gid)
|
|
nsz |
e19254 |
F(char**, gr_mem)
|
|
nsz |
e19254 |
}
|
|
nsz |
e19254 |
void(*p_endgrent)(void) = endgrent;
|
|
nsz |
e19254 |
struct group*(*p_getgrent)(void) = getgrent;
|
|
nsz |
e19254 |
struct group*(*p_getgrgid)(gid_t) = getgrgid;
|
|
nsz |
e19254 |
int(*p_getgrgid_r)(gid_t,struct group*,char*,size_t,struct group**) = getgrgid_r;
|
|
nsz |
e19254 |
struct group*(*p_getgrnam)(const char*) = getgrnam;
|
|
nsz |
e19254 |
int(*p_getgrnam_r)(const char*,struct group*,char*,size_t,struct group**) = getgrnam_r;
|
|
nsz |
e19254 |
#ifdef _XOPEN_SOURCE
|
|
nsz |
e19254 |
void(*p_setgrent)(void) = setgrent;
|
|
nsz |
e19254 |
#endif
|
|
nsz |
e19254 |
}
|