From: Yu Watanabe Date: Sun, 25 Nov 2018 19:41:53 +0000 (+0900) Subject: sysusers: use fgetgrent_sane() X-Git-Tag: v240~151^2~1 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=f030d36cd0a48856b6970541bd5baf74c2c06449;p=thirdparty%2Fsystemd.git sysusers: use fgetgrent_sane() --- diff --git a/src/sysusers/sysusers.c b/src/sysusers/sysusers.c index c2326ee9b81..3eb70f5e8fa 100644 --- a/src/sysusers/sysusers.c +++ b/src/sysusers/sysusers.c @@ -140,8 +140,7 @@ static int load_group_database(void) { if (r < 0) return r; - errno = 0; - while ((gr = fgetgrent(f))) { + while ((r = fgetgrent_sane(f, &gr)) > 0) { char *n; int k, q; @@ -164,13 +163,8 @@ static int load_group_database(void) { if (k <= 0 && q <= 0) free(n); - - errno = 0; } - if (!IN_SET(errno, 0, ENOENT)) - return -errno; - - return 0; + return r; } static int make_backup(const char *target, const char *x) {