master
 1#include "pwf.h"
 2
 3static FILE *f;
 4static char *line, **mem;
 5static struct group gr;
 6
 7void setgrent()
 8{
 9	if (f) fclose(f);
10	f = 0;
11}
12
13weak_alias(setgrent, endgrent);
14
15struct group *getgrent()
16{
17	struct group *res;
18	size_t size=0, nmem=0;
19	if (!f) f = fopen("/etc/group", "rbe");
20	if (!f) return 0;
21	__getgrent_a(f, &gr, &line, &size, &mem, &nmem, &res);
22	return res;
23}
24
25struct group *getgrgid(gid_t gid)
26{
27	struct group *res;
28	size_t size=0, nmem=0;
29	__getgr_a(0, gid, &gr, &line, &size, &mem, &nmem, &res);
30	return res;
31}
32
33struct group *getgrnam(const char *name)
34{
35	struct group *res;
36	size_t size=0, nmem=0;
37	__getgr_a(name, 0, &gr, &line, &size, &mem, &nmem, &res);
38	return res;
39}