diff options
author | Adhemerval Zanella <adhemerval.zanella@linaro.org> | 2020-07-15 19:35:58 +0000 |
---|---|---|
committer | Adhemerval Zanella <adhemerval.zanella@linaro.org> | 2020-09-11 14:35:32 -0300 |
commit | 04986243d1af37ac0177ed2f9db0a066ebd2b212 (patch) | |
tree | 87b9cebcc14f51dd0cf4103be16fc26542b65c69 /sysdeps/posix | |
parent | 23159962159038891d3211c5632c3900d465f0c7 (diff) | |
download | glibc-04986243d1af37ac0177ed2f9db0a066ebd2b212.tar.gz glibc-04986243d1af37ac0177ed2f9db0a066ebd2b212.tar.xz glibc-04986243d1af37ac0177ed2f9db0a066ebd2b212.zip |
Remove internal usage of extensible stat functions
It replaces the internal usage of __{f,l}xstat{at}{64} with the __{f,l}stat{at}{64}. It should not change the generate code since sys/stat.h explicit defines redirections to internal calls back to xstat* symbols. Checked with a build for all affected ABIs. I also check on x86_64-linux-gnu and i686-linux-gnu. Reviewed-by: Lukasz Majewski <lukma@denx.de>
Diffstat (limited to 'sysdeps/posix')
-rw-r--r-- | sysdeps/posix/dl-fileid.h | 2 | ||||
-rw-r--r-- | sysdeps/posix/euidaccess.c | 2 | ||||
-rw-r--r-- | sysdeps/posix/fdopendir.c | 2 | ||||
-rw-r--r-- | sysdeps/posix/fpathconf.c | 2 | ||||
-rw-r--r-- | sysdeps/posix/getaddrinfo.c | 4 | ||||
-rw-r--r-- | sysdeps/posix/isfdtype.c | 2 | ||||
-rw-r--r-- | sysdeps/posix/opendir.c | 2 | ||||
-rw-r--r-- | sysdeps/posix/pathconf.c | 2 | ||||
-rw-r--r-- | sysdeps/posix/posix_fallocate.c | 2 | ||||
-rw-r--r-- | sysdeps/posix/posix_fallocate64.c | 2 | ||||
-rw-r--r-- | sysdeps/posix/sysconf.c | 2 | ||||
-rw-r--r-- | sysdeps/posix/tempname.c | 7 |
12 files changed, 15 insertions, 16 deletions
diff --git a/sysdeps/posix/dl-fileid.h b/sysdeps/posix/dl-fileid.h index 7d1e9e4950..b3c8166701 100644 --- a/sysdeps/posix/dl-fileid.h +++ b/sysdeps/posix/dl-fileid.h @@ -34,7 +34,7 @@ _dl_get_file_id (int fd, struct r_file_id *id) { struct stat64 st; - if (__glibc_unlikely (__fxstat64 (_STAT_VER, fd, &st) < 0)) + if (__glibc_unlikely (__fstat64 (fd, &st) < 0)) return false; id->dev = st.st_dev; diff --git a/sysdeps/posix/euidaccess.c b/sysdeps/posix/euidaccess.c index 8a2776d502..050d370f4c 100644 --- a/sysdeps/posix/euidaccess.c +++ b/sysdeps/posix/euidaccess.c @@ -140,7 +140,7 @@ euidaccess (const char *path, int mode) return access (path, mode); #endif - if (stat64 (path, &stats)) + if (__stat64 (path, &stats)) return -1; mode &= (X_OK | W_OK | R_OK); /* Clear any bogus bits. */ diff --git a/sysdeps/posix/fdopendir.c b/sysdeps/posix/fdopendir.c index b690f7fc88..e424fbdaa2 100644 --- a/sysdeps/posix/fdopendir.c +++ b/sysdeps/posix/fdopendir.c @@ -29,7 +29,7 @@ __fdopendir (int fd) { struct stat64 statbuf; - if (__builtin_expect (__fxstat64 (_STAT_VER, fd, &statbuf), 0) < 0) + if (__builtin_expect (__fstat64 (fd, &statbuf), 0) < 0) return NULL; if (__glibc_unlikely (! S_ISDIR (statbuf.st_mode))) { diff --git a/sysdeps/posix/fpathconf.c b/sysdeps/posix/fpathconf.c index 1863be64e0..3a9fb1513f 100644 --- a/sysdeps/posix/fpathconf.c +++ b/sysdeps/posix/fpathconf.c @@ -133,7 +133,7 @@ __fpathconf (int fd, int name) /* AIO is only allowed on regular files and block devices. */ struct stat64 st; - if (__fxstat64 (_STAT_VER, fd, &st) < 0 + if (__fstat64 (fd, &st) < 0 || (! S_ISREG (st.st_mode) && ! S_ISBLK (st.st_mode))) return -1; else diff --git a/sysdeps/posix/getaddrinfo.c b/sysdeps/posix/getaddrinfo.c index ed04e564f9..82c898fe35 100644 --- a/sysdeps/posix/getaddrinfo.c +++ b/sysdeps/posix/getaddrinfo.c @@ -1785,7 +1785,7 @@ gaiconf_init (void) if (fp != NULL) { struct stat64 st; - if (__fxstat64 (_STAT_VER, fileno (fp), &st) != 0) + if (__fstat64 (fileno (fp), &st) != 0) { fclose (fp); goto no_file; @@ -2138,7 +2138,7 @@ static void gaiconf_reload (void) { struct stat64 st; - if (__xstat64 (_STAT_VER, GAICONF_FNAME, &st) != 0 + if (stat64 (GAICONF_FNAME, &st) != 0 || !check_gaiconf_mtime (&st)) gaiconf_init (); } diff --git a/sysdeps/posix/isfdtype.c b/sysdeps/posix/isfdtype.c index 20c6309220..3c63a33e88 100644 --- a/sysdeps/posix/isfdtype.c +++ b/sysdeps/posix/isfdtype.c @@ -29,7 +29,7 @@ isfdtype (int fildes, int fdtype) { int save_error = errno; - result = fstat64 (fildes, &st); + result = __fstat64 (fildes, &st); __set_errno (save_error); } diff --git a/sysdeps/posix/opendir.c b/sysdeps/posix/opendir.c index c6ab79246c..e89e09bfc7 100644 --- a/sysdeps/posix/opendir.c +++ b/sysdeps/posix/opendir.c @@ -56,7 +56,7 @@ opendir_tail (int fd) `stat' call. The S_ISDIR check is superfluous if O_DIRECTORY works, but it's cheap and we need the stat call for st_blksize anyway. */ struct stat64 statbuf; - if (__glibc_unlikely (__fxstat64 (_STAT_VER, fd, &statbuf) < 0)) + if (__glibc_unlikely (__fstat64 (fd, &statbuf) < 0)) goto lose; if (__glibc_unlikely (! S_ISDIR (statbuf.st_mode))) { diff --git a/sysdeps/posix/pathconf.c b/sysdeps/posix/pathconf.c index 5819f03aa7..084c5fab59 100644 --- a/sysdeps/posix/pathconf.c +++ b/sysdeps/posix/pathconf.c @@ -131,7 +131,7 @@ __pathconf (const char *path, int name) /* AIO is only allowed on regular files and block devices. */ struct stat64 st; - if (__xstat64 (_STAT_VER, path, &st) < 0 + if (__stat64 (path, &st) < 0 || (! S_ISREG (st.st_mode) && ! S_ISBLK (st.st_mode))) return -1; else diff --git a/sysdeps/posix/posix_fallocate.c b/sysdeps/posix/posix_fallocate.c index e7fccfc1c8..c9cf17bc7b 100644 --- a/sysdeps/posix/posix_fallocate.c +++ b/sysdeps/posix/posix_fallocate.c @@ -48,7 +48,7 @@ posix_fallocate (int fd, __off_t offset, __off_t len) } /* We have to make sure that this is really a regular file. */ - if (__fxstat64 (_STAT_VER, fd, &st) != 0) + if (__fstat64 (fd, &st) != 0) return EBADF; if (S_ISFIFO (st.st_mode)) return ESPIPE; diff --git a/sysdeps/posix/posix_fallocate64.c b/sysdeps/posix/posix_fallocate64.c index f9d4fe5ca3..4f8fe47b18 100644 --- a/sysdeps/posix/posix_fallocate64.c +++ b/sysdeps/posix/posix_fallocate64.c @@ -48,7 +48,7 @@ __posix_fallocate64_l64 (int fd, __off64_t offset, __off64_t len) } /* We have to make sure that this is really a regular file. */ - if (__fxstat64 (_STAT_VER, fd, &st) != 0) + if (__fstat64 (fd, &st) != 0) return EBADF; if (S_ISFIFO (st.st_mode)) return ESPIPE; diff --git a/sysdeps/posix/sysconf.c b/sysdeps/posix/sysconf.c index 35ba7f8103..8f7c4708df 100644 --- a/sysdeps/posix/sysconf.c +++ b/sysdeps/posix/sysconf.c @@ -1216,7 +1216,7 @@ __sysconf_check_spec (const char *spec) spec, speclen + 1); struct stat64 st; - long int ret = __xstat64 (_STAT_VER, name, &st) >= 0 ? 1 : -1; + long int ret = __stat64 (name, &st) >= 0 ? 1 : -1; __set_errno (save_errno); return ret; diff --git a/sysdeps/posix/tempname.c b/sysdeps/posix/tempname.c index cd48385a40..1864c860ad 100644 --- a/sysdeps/posix/tempname.c +++ b/sysdeps/posix/tempname.c @@ -65,7 +65,6 @@ # define __getpid getpid # define __mkdir mkdir # define __open open -# define __lxstat64(version, file, buf) lstat (file, buf) # define __secure_getenv secure_getenv #endif @@ -96,7 +95,7 @@ static int direxists (const char *dir) { struct_stat64 buf; - return __xstat64 (_STAT_VER, dir, &buf) == 0 && S_ISDIR (buf.st_mode); + return __stat64 (dir, &buf) == 0 && S_ISDIR (buf.st_mode); } /* Path search algorithm, for tmpnam, tmpfile, etc. If DIR is @@ -251,10 +250,10 @@ __gen_tempname (char *tmpl, int suffixlen, int flags, int kind) case __GT_NOCREATE: /* This case is backward from the other three. __gen_tempname - succeeds if __xstat fails because the name does not exist. + succeeds if lstat fails because the name does not exist. Note the continue to bypass the common logic at the bottom of the loop. */ - if (__lxstat64 (_STAT_VER, tmpl, &st) < 0) + if (__lstat64 (tmpl, &st) < 0) { if (errno == ENOENT) { |