OLD | NEW |
1 #include "pwf.h" | 1 #include "pwf.h" |
2 | 2 |
3 static FILE *f; | 3 static FILE* f; |
4 static char *line; | 4 static char* line; |
5 static struct passwd pw; | 5 static struct passwd pw; |
6 static size_t size; | 6 static size_t size; |
7 | 7 |
8 void setpwent() | 8 void setpwent() { |
9 { | 9 if (f) |
10 » if (f) fclose(f); | 10 fclose(f); |
11 » f = 0; | 11 f = 0; |
12 } | 12 } |
13 | 13 |
14 weak_alias(setpwent, endpwent); | 14 weak_alias(setpwent, endpwent); |
15 | 15 |
16 struct passwd *getpwent() | 16 struct passwd* getpwent() { |
17 { | 17 struct passwd* res; |
18 » struct passwd *res; | 18 if (!f) |
19 » if (!f) f = fopen("/etc/passwd", "rbe"); | 19 f = fopen("/etc/passwd", "rbe"); |
20 » if (!f) return 0; | 20 if (!f) |
21 » __getpwent_a(f, &pw, &line, &size, &res); | 21 return 0; |
22 » return res; | 22 __getpwent_a(f, &pw, &line, &size, &res); |
| 23 return res; |
23 } | 24 } |
24 | 25 |
25 struct passwd *getpwuid(uid_t uid) | 26 struct passwd* getpwuid(uid_t uid) { |
26 { | 27 struct passwd* res; |
27 » struct passwd *res; | 28 __getpw_a(0, uid, &pw, &line, &size, &res); |
28 » __getpw_a(0, uid, &pw, &line, &size, &res); | 29 return res; |
29 » return res; | |
30 } | 30 } |
31 | 31 |
32 struct passwd *getpwnam(const char *name) | 32 struct passwd* getpwnam(const char* name) { |
33 { | 33 struct passwd* res; |
34 » struct passwd *res; | 34 __getpw_a(name, 0, &pw, &line, &size, &res); |
35 » __getpw_a(name, 0, &pw, &line, &size, &res); | 35 return res; |
36 » return res; | |
37 } | 36 } |
OLD | NEW |