From 52a5fe70a2c77935afe807fb6e904e512ddd894e Mon Sep 17 00:00:00 2001 From: Adhemerval Zanella Date: Tue, 2 Mar 2021 17:06:02 -0300 Subject: Use 64 bit time_t stat internally For the legacy ABI with supports 32-bit time_t it calls the 64-bit time directly, since the LFS symbols calls the 64-bit time_t ones internally. Checked on i686-linux-gnu and x86_64-linux-gnu. Reviewed-by: Lukasz Majewski --- libio/filedoalloc.c | 2 +- libio/fileops.c | 8 ++++---- libio/oldfileops.c | 2 +- libio/wfileops.c | 2 +- 4 files changed, 7 insertions(+), 7 deletions(-) (limited to 'libio') diff --git a/libio/filedoalloc.c b/libio/filedoalloc.c index 7afa3cb..c792eec 100644 --- a/libio/filedoalloc.c +++ b/libio/filedoalloc.c @@ -78,7 +78,7 @@ _IO_file_doallocate (FILE *fp) { size_t size; char *p; - struct stat64 st; + struct __stat64_t64 st; size = BUFSIZ; if (fp->_fileno >= 0 && __builtin_expect (_IO_SYSSTAT (fp, &st), 0) >= 0) diff --git a/libio/fileops.c b/libio/fileops.c index a71a567..e8ee374 100644 --- a/libio/fileops.c +++ b/libio/fileops.c @@ -545,7 +545,7 @@ libc_hidden_ver (_IO_new_file_underflow, _IO_file_underflow) static int mmap_remap_check (FILE *fp) { - struct stat64 st; + struct __stat64_t64 st; if (_IO_SYSSTAT (fp, &st) == 0 && S_ISREG (st.st_mode) && st.st_size != 0 @@ -663,7 +663,7 @@ decide_maybe_mmap (FILE *fp) file descriptors are for mmap-able objects and on 32-bit machines we don't want to map files which are too large since this would require too much virtual memory. */ - struct stat64 st; + struct __stat64_t64 st; if (_IO_SYSSTAT (fp, &st) == 0 && S_ISREG (st.st_mode) && st.st_size != 0 @@ -962,7 +962,7 @@ _IO_new_file_seekoff (FILE *fp, off64_t offset, int dir, int mode) break; case _IO_seek_end: { - struct stat64 st; + struct __stat64_t64 st; if (_IO_SYSSTAT (fp, &st) == 0 && S_ISREG (st.st_mode)) { offset += st.st_size; @@ -1145,7 +1145,7 @@ libc_hidden_def (_IO_file_seek) int _IO_file_stat (FILE *fp, void *st) { - return __fstat64 (fp->_fileno, (struct stat64 *) st); + return __fstat64_time64 (fp->_fileno, (struct __stat64_t64 *) st); } libc_hidden_def (_IO_file_stat) diff --git a/libio/oldfileops.c b/libio/oldfileops.c index ed23536..ed3c98b 100644 --- a/libio/oldfileops.c +++ b/libio/oldfileops.c @@ -487,7 +487,7 @@ _IO_old_file_seekoff (FILE *fp, off64_t offset, int dir, int mode) break; case _IO_seek_end: { - struct stat64 st; + struct __stat64_t64 st; if (_IO_SYSSTAT (fp, &st) == 0 && S_ISREG (st.st_mode)) { offset += st.st_size; diff --git a/libio/wfileops.c b/libio/wfileops.c index 5d23566..37f4478 100644 --- a/libio/wfileops.c +++ b/libio/wfileops.c @@ -840,7 +840,7 @@ _IO_wfile_seekoff (FILE *fp, off64_t offset, int dir, int mode) break; case _IO_seek_end: { - struct stat64 st; + struct __stat64_t64 st; if (_IO_SYSSTAT (fp, &st) == 0 && S_ISREG (st.st_mode)) { offset += st.st_size; -- cgit v1.1