about summary refs log tree commit diff
path: root/io/fstatat.c
diff options
context:
space:
mode:
authorAdhemerval Zanella <adhemerval.zanella@linaro.org>2020-10-23 16:40:06 -0300
committerAdhemerval Zanella <adhemerval.zanella@linaro.org>2020-12-29 16:44:05 -0300
commit4d97cc8cf3da925fd06fc37d4daebafce3247719 (patch)
treea8f43be6e51ce7e87c773622403f742dc55a387e /io/fstatat.c
parent69fda43b8dd795c3658869633ca0708ed3134006 (diff)
downloadglibc-4d97cc8cf3da925fd06fc37d4daebafce3247719.tar.gz
glibc-4d97cc8cf3da925fd06fc37d4daebafce3247719.tar.xz
glibc-4d97cc8cf3da925fd06fc37d4daebafce3247719.zip
io: Remove xstat implementations
With xstat wrapper functions removed (8ed005daf0), the stat functions
are now properly exported, and version is done using symbols versioning
instead of the extra _STAT_* argument.

Reviewed-by: Lukasz Majewski <lukma@denx.de>
Diffstat (limited to 'io/fstatat.c')
-rw-r--r--io/fstatat.c18
1 files changed, 16 insertions, 2 deletions
diff --git a/io/fstatat.c b/io/fstatat.c
index 19242b7d5d..07f4afb996 100644
--- a/io/fstatat.c
+++ b/io/fstatat.c
@@ -16,12 +16,26 @@
    <https://www.gnu.org/licenses/>.  */
 
 #include <sys/stat.h>
+#include <errno.h>
 
-#undef __fstatat
 int
 __fstatat (int fd, const char *file, struct stat *buf, int flag)
 {
-  return __fxstatat (_STAT_VER, fd, file, buf, flag);
+  if (fd < 0 && fd != AT_FDCWD)
+    {
+      __set_errno (EBADF);
+      return -1;
+    }
+  if (buf == NULL || (flag & ~AT_SYMLINK_NOFOLLOW) != 0)
+    {
+      __set_errno (EINVAL);
+      return -1;
+    }
+
+  __set_errno (ENOSYS);
+  return -1;
 }
 
 weak_alias (__fstatat, fstatat)
+
+stub_warning (fstatat)