__readlink_chk: Remove micro-optimization
authorFlorian Weimer <fweimer@redhat.com>
Tue, 21 Aug 2018 09:24:12 +0000 (11:24 +0200)
committerFlorian Weimer <fweimer@redhat.com>
Tue, 21 Aug 2018 09:24:12 +0000 (11:24 +0200)
ChangeLog
debug/readlink_chk.c
sysdeps/unix/sysv/linux/generic/readlink_chk.c [deleted file]

index 3807de1..408d735 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,8 @@
+2018-08-21  Florian Weimer  <fweimer@redhat.com>
+
+       * debug/readlink_chk.c (__readlink_chk): Always call __readlink.
+       * sysdeps/unix/sysv/linux/generic/readlink_chk.c: Remove file.
+
 2018-08-20  Florian Weimer  <fweimer@redhat.com>
 
        * sysdeps/unix/sysv/linux/generic/readlink_chk.c: Remove
index c44d1d8..e320400 100644 (file)
@@ -29,9 +29,5 @@ __readlink_chk (const char *path, void *buf, size_t len, size_t buflen)
   if (len > buflen)
     __chk_fail ();
 
-#ifdef HAVE_INLINED_SYSCALLS
-  return INLINE_SYSCALL (readlink, 3, path, buf, len);
-#else
   return __readlink (path, buf, len);
-#endif
 }
diff --git a/sysdeps/unix/sysv/linux/generic/readlink_chk.c b/sysdeps/unix/sysv/linux/generic/readlink_chk.c
deleted file mode 100644 (file)
index 52d1f5b..0000000
+++ /dev/null
@@ -1,33 +0,0 @@
-/* Copyright (C) 2011-2018 Free Software Foundation, Inc.
-   This file is part of the GNU C Library.
-   Contributed by Chris Metcalf <cmetcalf@tilera.com>, 2011.
-
-   The GNU C Library is free software; you can redistribute it and/or
-   modify it under the terms of the GNU Lesser General Public
-   License as published by the Free Software Foundation; either
-   version 2.1 of the License, or (at your option) any later version.
-
-   The GNU C Library is distributed in the hope that it will be useful,
-   but WITHOUT ANY WARRANTY; without even the implied warranty of
-   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-   Lesser General Public License for more details.
-
-   You should have received a copy of the GNU Lesser General Public
-   License along with the GNU C Library.  If not, see
-   <http://www.gnu.org/licenses/>.  */
-
-#include <unistd.h>
-#include <fcntl.h>
-#include <sys/param.h>
-# include <errno.h>
-# include <sysdep.h>
-
-
-ssize_t
-__readlink_chk (const char *path, void *buf, size_t len, size_t buflen)
-{
-  if (len > buflen)
-    __chk_fail ();
-
-  return INLINE_SYSCALL_CALL (readlinkat, AT_FDCWD, path, buf, len);
-}