@@ -74,6 +74,11 @@ Deprecated and removed features, and other changes affecting compatibility:
and could not usefully be used with the GNU C Library on systems with
version 3.1 or later of the Linux kernel.
+* The obsolete function name llseek is no longer available to newly linked
+ binaries. This function was specific to systems using the Linux kernel
+ and was not declared in a header. Programs should use the lseek64 name
+ for this function instead.
+
Changes to build and runtime requirements:
[Add changes to build and runtime requirements here]
@@ -103,7 +103,7 @@ emit_weak_aliases()
fi
echo " echo 'versioned_symbol (libc, $source, $base, $ver)'; \\"
echo " echo '#else'; \\"
- echo " echo 'strong_alias ($strong, $base)'; \\"
+ echo " echo 'weak_alias ($strong, $base)'; \\"
echo " echo '#endif'; \\"
;;
*@*)
@@ -21,6 +21,7 @@
#include <sys/types.h>
#include <sysdep.h>
#include <errno.h>
+#include <shlib-compat.h>
off64_t
__lseek64 (int fd, off64_t offset, int whence)
@@ -46,9 +47,7 @@ libc_hidden_def (__lseek)
strong_alias (__lseek64, __libc_lseek64)
weak_alias (__lseek64, lseek64)
-/* llseek doesn't have a prototype. Since the second parameter is a
- 64bit type, this results in wrong behaviour if no prototype is
- provided. */
-weak_alias (__lseek64, llseek)
-link_warning (llseek, "\
-the `llseek' function may be dangerous; use `lseek64' instead.")
+#if SHLIB_COMPAT (libc, GLIBC_2_0, GLIBC_2_28)
+strong_alias (__lseek64, __compat_llseek)
+compat_symbol (libc, __compat_llseek, llseek, GLIBC_2_0);
+#endif
@@ -2,7 +2,7 @@
# C syscall macros cannot be used because this syscall has a 64-bit
# return value.
-lseek64 - lseek i:iii __lseek64 __libc_lseek64 lseek64 llseek
+lseek64 - lseek i:iii __lseek64 __libc_lseek64 lseek64@@GLIBC_2.2 llseek@GLIBC_2.0:GLIBC_2.28
prlimit64 EXTRA prlimit64 i:iipp prlimit64
deleted file mode 100644
@@ -1 +0,0 @@
-/* No llseek for x32. */