From: Adhemerval Zanella Date: Tue, 31 May 2022 14:51:46 +0000 (-0300) Subject: misc: Use 64 bit stat for getusershell (BZ# 29204) X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=37c94dc999dbd624cf6ecc3fd6e823cd442858d1;p=thirdparty%2Fglibc.git misc: Use 64 bit stat for getusershell (BZ# 29204) This is a missing spot initially from 52a5fe70a2c77935. Checked on i686-linux-gnu. (cherry picked from commit ec995fb2152f160f02bf695ff83c45df4a6cd868) --- diff --git a/NEWS b/NEWS index cbb3ac58275..ef700e0e2cc 100644 --- a/NEWS +++ b/NEWS @@ -33,6 +33,7 @@ The following bugs are resolved with this release: [29109] libc: posix_spawn() always returns 1 (EPERM) on clone() failure [29203] libc: daemon is not y2038 aware + [29204] libc: getusershell is not 2038 aware Version 2.35 diff --git a/misc/getusershell.c b/misc/getusershell.c index 11f5aa83f88..4221095dca7 100644 --- a/misc/getusershell.c +++ b/misc/getusershell.c @@ -97,7 +97,7 @@ initshells (void) { char **sp, *cp; FILE *fp; - struct stat64 statb; + struct __stat64_t64 statb; size_t flen; free(shells); @@ -106,7 +106,7 @@ initshells (void) strings = NULL; if ((fp = fopen(_PATH_SHELLS, "rce")) == NULL) goto init_okshells_noclose; - if (__fstat64(fileno(fp), &statb) == -1) { + if (__fstat64_time64(fileno(fp), &statb) == -1) { init_okshells: (void)fclose(fp); init_okshells_noclose: