misc: Use 64 bit stat for getusershell (BZ# 29204)

This is a missing spot initially from 52a5fe70a2.

Checked on i686-linux-gnu.

(cherry picked from commit ec995fb215)
This commit is contained in:
Adhemerval Zanella 2022-05-31 11:51:46 -03:00
parent cb49c14183
commit 37c94dc999
2 changed files with 3 additions and 2 deletions

1
NEWS
View File

@ -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

View File

@ -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: