aboutsummaryrefslogtreecommitdiff
path: root/linuxthreads
diff options
context:
space:
mode:
authorUlrich Drepper <drepper@redhat.com>1999-12-19 05:29:07 +0000
committerUlrich Drepper <drepper@redhat.com>1999-12-19 05:29:07 +0000
commit778c59c850879b2ffc7a396cecfa5a5ad68a40e6 (patch)
tree2c6a5cf63ec64f5563730a9790e3a69f63f0268e /linuxthreads
parent43f94f913e1078818bd09d426756ba4377f12517 (diff)
downloadglibc-778c59c850879b2ffc7a396cecfa5a5ad68a40e6.zip
glibc-778c59c850879b2ffc7a396cecfa5a5ad68a40e6.tar.gz
glibc-778c59c850879b2ffc7a396cecfa5a5ad68a40e6.tar.bz2
Update.
1999-12-18 Ulrich Drepper <drepper@cygnus.com> * include/unistd.h: Declare __libc_open64, __libc_lseek64, __libc_pread, __libc_pread64, __libc_pwrite, and __libc_pwrite64. * io/Versions: Export __libc_open64 and __libc_lseek64. * posix/Versions: Export __libc_pread, __libc_pread64, __libc_pwrite, and __libc_pwrite64. * sysdeps/generic/open64.c: Define __libc_* variant for cancelation wrapper. * sysdeps/generic/pread.c: Likewise. * sysdeps/generic/pread64.c: Likewise. * sysdeps/generic/pwrite.c: Likewise. * sysdeps/generic/pwrite64.c: Likewise. * sysdeps/posix/open64.c: Likewise. * sysdeps/posix/pread.c: Likewise. * sysdeps/posix/pread64.c: Likewise. * sysdeps/posix/pwrite.c: Likewise. * sysdeps/posix/pwrite64.c: Likewise. * sysdeps/unix/sysv/linux/llseek.c: Likewise. * sysdeps/unix/sysv/linux/pread.c: Likewise. * sysdeps/unix/sysv/linux/pread64.c: Likewise. * sysdeps/unix/sysv/linux/pwrite.c: Likewise. * sysdeps/unix/sysv/linux/pwrite64.c: Likewise. * sysdeps/unix/sysv/linux/i386/pread.c: Likewise. * sysdeps/unix/sysv/linux/i386/pread64.c: Likewise. * sysdeps/unix/sysv/linux/i386/pwrite.c: Likewise. * sysdeps/unix/sysv/linux/i386/pwrite64.c: Likewise. * sysdeps/posix/open64.c: Help gcc generating better code. * sysdeps/generic/libc-start.c (check_one_fd): Use __libc_open instead of __open.
Diffstat (limited to 'linuxthreads')
-rw-r--r--linuxthreads/ChangeLog5
-rw-r--r--linuxthreads/Versions5
-rw-r--r--linuxthreads/wrapsyscall.c39
3 files changed, 48 insertions, 1 deletions
diff --git a/linuxthreads/ChangeLog b/linuxthreads/ChangeLog
index 9bdf83e..867e5e3 100644
--- a/linuxthreads/ChangeLog
+++ b/linuxthreads/ChangeLog
@@ -1,5 +1,10 @@
1999-12-18 Ulrich Drepper <drepper@cygnus.com>
+ * Versions: Export pread, __pread64, pread64, pwrite, __pwrite64,
+ pwrite64, lseek64, open64, and __open64.
+ * wrapsyscall.c: Define pread, __pread64, pread64, pwrite, __pwrite64,
+ pwrite64, lseek64, open64, and __open64.
+
* manager.c (pthread_allocate_stack): Correct computation of
new_thread_bottom. Correct handling of stack size and when the
rlimit method to guard for stack growth is used.
diff --git a/linuxthreads/Versions b/linuxthreads/Versions
index ab4dce5..0b21abb 100644
--- a/linuxthreads/Versions
+++ b/linuxthreads/Versions
@@ -118,6 +118,11 @@ libpthread {
__pthread_kill_other_threads_np;
__vfork;
}
+ GLIBC_2.1.3 {
+ # For the cancelation wrappers.
+ pread; __pread64; pread64; pwrite; __pwrite64; pwrite64; lseek64;
+ open64; __open64;
+ }
GLIBC_2.2 {
__res_state;
}
diff --git a/linuxthreads/wrapsyscall.c b/linuxthreads/wrapsyscall.c
index d55e6cc..a8ab857 100644
--- a/linuxthreads/wrapsyscall.c
+++ b/linuxthreads/wrapsyscall.c
@@ -1,5 +1,5 @@
/* Wrapper arpund system calls to provide cancelation points.
- Copyright (C) 1996, 1997, 1998 Free Software Foundation, Inc.
+ Copyright (C) 1996, 1997, 1998, 1999 Free Software Foundation, Inc.
This file is part of the GNU C Library.
Contributed by Ulrich Drepper <drepper@cygnus.com>, 1996.
@@ -89,6 +89,11 @@ CANCELABLE_SYSCALL (off_t, lseek, (int fd, off_t offset, int whence),
strong_alias (lseek, __lseek)
+/* lseek64(2). */
+CANCELABLE_SYSCALL (off64_t, lseek64, (int fd, off64_t offset, int whence),
+ (fd, offset, whence))
+
+
/* msync(2). */
CANCELABLE_SYSCALL (int, msync, (__ptr_t addr, size_t length, int flags),
(addr, length, flags))
@@ -106,10 +111,42 @@ CANCELABLE_SYSCALL_VA (int, open, (const char *pathname, int flags, ...),
strong_alias (open, __open)
+/* open64(3). */
+CANCELABLE_SYSCALL_VA (int, open64, (const char *pathname, int flags, ...),
+ (pathname, flags, va_arg (ap, mode_t)), flags)
+strong_alias (open64, __open64)
+
+
/* pause(2). */
CANCELABLE_SYSCALL (int, pause, (void), ())
+/* pread(3). */
+CANCELABLE_SYSCALL (ssize_t, pread, (int fd, void *buf, size_t count,
+ off_t offset),
+ (fd, buf, count, offset))
+
+
+/* pread64(3). */
+CANCELABLE_SYSCALL (ssize_t, pread64, (int fd, void *buf, size_t count,
+ off64_t offset),
+ (fd, buf, count, offset))
+strong_alias (pread64, __pread64)
+
+
+/* pwrite(3). */
+CANCELABLE_SYSCALL (ssize_t, pwrite, (int fd, const void *buf, size_t n,
+ off_t offset),
+ (fd, buf, n, offset))
+
+
+/* pwrite64(3). */
+CANCELABLE_SYSCALL (ssize_t, pwrite64, (int fd, const void *buf, size_t n,
+ off64_t offset),
+ (fd, buf, n, offset))
+strong_alias (pwrite64, __pwrite64)
+
+
/* read(2). */
CANCELABLE_SYSCALL (ssize_t, read, (int fd, void *buf, size_t count),
(fd, buf, count))