1
0
mirror of https://sourceware.org/git/glibc.git synced 2025-08-08 17:42:12 +03:00

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 <lukma@denx.de>
This commit is contained in:
Adhemerval Zanella
2021-03-02 17:06:02 -03:00
parent a318262bc0
commit 52a5fe70a2
35 changed files with 106 additions and 109 deletions

View File

@@ -468,14 +468,14 @@ ruserok (const char *rhost, int superuser, const char *ruser,
static FILE *
iruserfopen (const char *file, uid_t okuser)
{
struct stat64 st;
struct __stat64_t64 st;
char *cp = NULL;
FILE *res = NULL;
/* If not a regular file, if owned by someone other than user or
root, if writeable by anyone but the owner, or if hardlinked
anywhere, quit. */
if (__lstat64 (file, &st))
if (__lstat64_time64 (file, &st))
cp = _("lstat failed");
else if (!S_ISREG (st.st_mode))
cp = _("not regular file");
@@ -484,7 +484,7 @@ iruserfopen (const char *file, uid_t okuser)
res = fopen (file, "rce");
if (!res)
cp = _("cannot open");
else if (__fstat64 (fileno (res), &st) < 0)
else if (__fstat64_time64 (fileno (res), &st) < 0)
cp = _("fstat failed");
else if (st.st_uid && st.st_uid != okuser)
cp = _("bad owner");