The faccessat (..., AT_EACCESS) on Linux fallback will either use
__NR_faccessat for __libc_enable_secure or LFS  fstatat call.  Neither
fallbacks returns EOVERFLOW in failure case.

Checked on x86_64-linux-gnu.
---
 stdlib/canonicalize.c | 12 ++----------
 1 file changed, 2 insertions(+), 10 deletions(-)

diff --git a/stdlib/canonicalize.c b/stdlib/canonicalize.c
index 69f978da78..5aac8d457c 100644
--- a/stdlib/canonicalize.c
+++ b/stdlib/canonicalize.c
@@ -44,15 +44,10 @@
 
 #ifdef _LIBC
 # include <shlib-compat.h>
-# include <sysdep.h>
-# ifdef __ASSUME_FACCESSAT2
-#  define FACCESSAT_NEVER_EOVERFLOWS __ASSUME_FACCESSAT2
-# else
-#  define FACCESSAT_NEVER_EOVERFLOWS true
-# endif
 # define GCC_LINT 1
 # define _GL_ATTRIBUTE_PURE __attribute__ ((__pure__))
 # define FUNC_REALPATH_WORKS 1
+# define FACCESSAT_NEVER_EOVERFLOWS true
 #else
 # define __canonicalize_file_name canonicalize_file_name
 # define __realpath realpath
@@ -82,7 +77,7 @@
 # define __pathconf pathconf
 # define __rawmemchr rawmemchr
 # define __readlink readlink
-# define __stat stat
+# define FACCESSAT_NEVER_EOVERFLOWS false
 #endif
 
 /* Suppress bogus GCC -Wmaybe-uninitialized warnings.  */
@@ -95,9 +90,6 @@
 #ifndef DOUBLE_SLASH_IS_DISTINCT_ROOT
 # define DOUBLE_SLASH_IS_DISTINCT_ROOT false
 #endif
-#ifndef FACCESSAT_NEVER_EOVERFLOWS
-# define FACCESSAT_NEVER_EOVERFLOWS false
-#endif
 
 #if !FUNC_REALPATH_WORKS || defined _LIBC
 
-- 
2.25.1


Reply via email to