From 778c59c850879b2ffc7a396cecfa5a5ad68a40e6 Mon Sep 17 00:00:00 2001 From: Ulrich Drepper Date: Sun, 19 Dec 1999 05:29:07 +0000 Subject: Update. 1999-12-18 Ulrich Drepper * 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. --- sysdeps/posix/pread.c | 17 +++++++++-------- 1 file changed, 9 insertions(+), 8 deletions(-) (limited to 'sysdeps/posix/pread.c') diff --git a/sysdeps/posix/pread.c b/sysdeps/posix/pread.c index 5ad5acbd2a..7ecc99e0f7 100644 --- a/sysdeps/posix/pread.c +++ b/sysdeps/posix/pread.c @@ -1,6 +1,6 @@ /* Read block from given position in file without changing file pointer. POSIX version. - Copyright (C) 1997, 1998 Free Software Foundation, Inc. + Copyright (C) 1997, 1998, 1999 Free Software Foundation, Inc. This file is part of the GNU C Library. Contributed by Ulrich Drepper , 1997. @@ -23,28 +23,28 @@ #include ssize_t -__pread (int fd, void *buf, size_t nbyte, off_t offset) +__libc_pread (int fd, void *buf, size_t nbyte, off_t offset) { /* Since we must not change the file pointer preserve the value so that we can restore it later. */ int save_errno; ssize_t result; - off_t old_offset = __lseek (fd, 0, SEEK_CUR); + off_t old_offset = __libc_lseek (fd, 0, SEEK_CUR); if (old_offset == (off_t) -1) return -1; /* Set to wanted position. */ - if (__lseek (fd, offset, SEEK_SET) == (off_t) -1) + if (__libc_lseek (fd, offset, SEEK_SET) == (off_t) -1) return -1; /* Write out the data. */ - result = __read (fd, buf, nbyte); + result = __libc_read (fd, buf, nbyte); /* Now we have to restore the position. If this fails we have to return this as an error. But if the writing also failed we return this error. */ save_errno = errno; - if (__lseek (fd, old_offset, SEEK_SET) == (off_t) -1) + if (__libc_lseek (fd, old_offset, SEEK_SET) == (off_t) -1) { if (result == -1) __set_errno (save_errno); @@ -55,6 +55,7 @@ __pread (int fd, void *buf, size_t nbyte, off_t offset) return result; } -#ifndef __pread -weak_alias (__pread, pread) +#ifndef __libc_pread +strong_alias (__libc_pread, __pread) +weak_alias (__libc_pread, pread) #endif -- cgit v1.2.3