|
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 |
0ef264 |
{void(*p)(void) = endgrent;}
|
|
nsz |
0ef264 |
{struct group*(*p)(void) = getgrent;}
|
|
nsz |
0ef264 |
{struct group*(*p)(gid_t) = getgrgid;}
|
|
nsz |
0ef264 |
{int(*p)(gid_t,struct group*,char*,size_t,struct group**) = getgrgid_r;}
|
|
nsz |
0ef264 |
{struct group*(*p)(const char*) = getgrnam;}
|
|
nsz |
0ef264 |
{int(*p)(const char*,struct group*,char*,size_t,struct group**) = getgrnam_r;}
|
|
nsz |
e19254 |
#ifdef _XOPEN_SOURCE
|
|
nsz |
0ef264 |
{void(*p)(void) = setgrent;}
|
|
nsz |
e19254 |
#endif
|
|
nsz |
e19254 |
}
|