4 struct passwd *__getpwent_a(FILE *f, struct passwd *pw, char **line, size_t *size)
9 pthread_setcancelstate(PTHREAD_CANCEL_DISABLE, &cs);
11 if ((l=getline(line, size, f)) < 0) {
21 if (!(s = strchr(s, ':'))) continue;
23 *s++ = 0; pw->pw_passwd = s;
24 if (!(s = strchr(s, ':'))) continue;
26 *s++ = 0; pw->pw_uid = atoi(s);
27 if (!(s = strchr(s, ':'))) continue;
29 *s++ = 0; pw->pw_gid = atoi(s);
30 if (!(s = strchr(s, ':'))) continue;
32 *s++ = 0; pw->pw_gecos = s;
33 if (!(s = strchr(s, ':'))) continue;
35 *s++ = 0; pw->pw_dir = s;
36 if (!(s = strchr(s, ':'))) continue;
38 *s++ = 0; pw->pw_shell = s;
41 pthread_setcancelstate(cs, 0);