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.
This commit is contained in:
Ulrich Drepper 1999-12-19 05:29:07 +00:00
parent 43f94f913e
commit 778c59c850
28 changed files with 197 additions and 82 deletions

View File

@ -1,3 +1,36 @@
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.
1999-12-11 H.J. Lu <hjl@gnu.org>
* sysdeps/generic/libc-start.c (check_one_fd): Use __libc_fcntl

View File

@ -9,6 +9,7 @@ release = @RELEASE@
install_root =
prefix = @prefix@
exec_prefix = @exec_prefix@
datadir = @datadir@
libdir = @libdir@
slibdir = @libc_cv_slibdir@
sysconfdir = @libc_cv_sysconfdir@

View File

@ -4,11 +4,21 @@
/* Now define the internal interfaces. */
extern int __access (__const char *__name, int __type);
extern int __euidaccess (__const char *__name, int __type);
extern int __libc_open64 (const char *file, int oflag, ...);
extern __off64_t __lseek64 (int __fd, __off64_t __offset, int __whence);
extern __off64_t __libc_lseek64 (int __fd, __off64_t __offset, int __whence);
extern ssize_t __pread (int __fd, void *__buf, size_t __nbytes,
__off_t __offset);
extern ssize_t __libc_pread (int __fd, void *__buf, size_t __nbytes,
__off_t __offset);
extern ssize_t __libc_pread64 (int __fd, void *__buf, size_t __nbytes,
__off64_t __offset);
extern ssize_t __pwrite (int __fd, __const void *__buf, size_t __n,
__off_t __offset);
extern ssize_t __libc_pwrite (int __fd, __const void *__buf, size_t __n,
__off_t __offset);
extern ssize_t __libc_pwrite64 (int __fd, __const void *__buf, size_t __n,
__off64_t __offset);
extern int __pipe (int __pipedes[2]);
extern unsigned int __sleep (unsigned int __seconds);
extern int __chown (__const char *__file,

View File

@ -87,4 +87,8 @@ libc {
# l*
lockf64;
}
GLIBC_2.1.3 {
# For the cancelation wrappers.
__libc_open64; __libc_lseek64;
}
}

View File

@ -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.

View File

@ -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;
}

View File

@ -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))

View File

@ -88,4 +88,8 @@ libc {
# functions used in other libraries
__libc_fork; __vfork;
}
GLIBC_2.1.3 {
# For the cancelation wrappers.
__libc_pread; __libc_pread64; __libc_pwrite; __libc_pwrite64;
}
}

View File

@ -26,6 +26,7 @@
extern void __libc_init_first (int argc, char **argv, char **envp);
extern int __libc_fcntl (int fd, int cmd, ...);
extern int __libc_open (const char *pathname, int flags, ...);
extern int _dl_starting_up;
weak_extern (_dl_starting_up)
@ -102,7 +103,7 @@ check_one_fd (int fd, int mode)
/* Something is wrong with this descriptor, it's probably not
opened. Open /dev/null so that the SUID program we are
about to start does not accidently use this descriptor. */
int nullfd = __open (_PATH_DEVNULL, mode);
int nullfd = __libc_open (_PATH_DEVNULL, mode);
if (nullfd == -1)
/* We cannot even given an error message here since it would
run into the same problems. */

View File

@ -1,4 +1,4 @@
/* Copyright (C) 1991, 1995, 1996, 1997 Free Software Foundation, Inc.
/* Copyright (C) 1991, 1995, 1996, 1997, 1999 Free Software Foundation, Inc.
This file is part of the GNU C Library.
The GNU C Library is free software; you can redistribute it and/or
@ -24,7 +24,7 @@
/* Open FILE with access OFLAG. If OFLAG includes O_CREAT,
a third argument is the file protection. */
int
__open64 (file, oflag)
__libc_open64 (file, oflag)
const char *file;
int oflag;
{
@ -47,7 +47,8 @@ __open64 (file, oflag)
__set_errno (ENOSYS);
return -1;
}
weak_alias (__open64, open64)
strong_alias (__libc_open64, __open64)
weak_alias (__libc_open64, open64)
stub_warning (open64)
#include <stub-tag.h>

View File

@ -1,4 +1,4 @@
/* Copyright (C) 1991, 1995, 1996, 1997 Free Software Foundation, Inc.
/* Copyright (C) 1991, 1995, 1996, 1997, 1999 Free Software Foundation, Inc.
This file is part of the GNU C Library.
The GNU C Library is free software; you can redistribute it and/or
@ -22,7 +22,7 @@
/* Read NBYTES into BUF from FD at the given position OFFSET without
changing the file pointer. Return the number read or -1. */
ssize_t
__pread (int fd, void *buf, size_t nbytes, off_t offset)
__libc_pread (int fd, void *buf, size_t nbytes, off_t offset)
{
if (nbytes == 0)
return 0;
@ -40,6 +40,7 @@ __pread (int fd, void *buf, size_t nbytes, off_t offset)
__set_errno (ENOSYS);
return -1;
}
weak_alias (__pread, pread)
strong_alias (__libc_pread, __pread)
weak_alias (__libc_pread, pread)
stub_warning (pread)
#include <stub-tag.h>

View File

@ -1,4 +1,4 @@
/* Copyright (C) 1991, 1995, 1996, 1997 Free Software Foundation, Inc.
/* Copyright (C) 1991, 1995, 1996, 1997, 1999 Free Software Foundation, Inc.
This file is part of the GNU C Library.
The GNU C Library is free software; you can redistribute it and/or
@ -22,7 +22,7 @@
/* Read NBYTES into BUF from FD at the given position OFFSET without
changing the file pointer. Return the number read or -1. */
ssize_t
__pread64 (int fd, void *buf, size_t nbytes, off64_t offset)
__libc_pread64 (int fd, void *buf, size_t nbytes, off64_t offset)
{
if (nbytes == 0)
return 0;
@ -40,6 +40,7 @@ __pread64 (int fd, void *buf, size_t nbytes, off64_t offset)
__set_errno (ENOSYS);
return -1;
}
weak_alias (__pread64, pread64)
strong_alias (__libc_pread64, __pread64)
weak_alias (__libc_pread64, pread64)
stub_warning (pread64)
#include <stub-tag.h>

View File

@ -1,4 +1,4 @@
/* Copyright (C) 1991, 1995, 1996, 1997 Free Software Foundation, Inc.
/* Copyright (C) 1991, 1995, 1996, 1997, 1999 Free Software Foundation, Inc.
This file is part of the GNU C Library.
The GNU C Library is free software; you can redistribute it and/or
@ -22,7 +22,7 @@
/* Write NBYTES of BUF to FD at given position OFFSET without changing
the file position. Return the number written, or -1. */
ssize_t
__pwrite (int fd, const void *buf, size_t nbytes, off_t offset)
__libc_pwrite (int fd, const void *buf, size_t nbytes, off_t offset)
{
if (nbytes == 0)
return 0;
@ -40,6 +40,7 @@ __pwrite (int fd, const void *buf, size_t nbytes, off_t offset)
__set_errno (ENOSYS);
return -1;
}
weak_alias (__pwrite, pwrite)
strong_alias (__libc_pwrite, __pwrite)
weak_alias (__libc_pwrite, pwrite)
stub_warning (pwrite)
#include <stub-tag.h>

View File

@ -1,4 +1,4 @@
/* Copyright (C) 1991, 1995, 1996, 1997 Free Software Foundation, Inc.
/* Copyright (C) 1991, 1995, 1996, 1997, 1999 Free Software Foundation, Inc.
This file is part of the GNU C Library.
The GNU C Library is free software; you can redistribute it and/or
@ -22,7 +22,7 @@
/* Write NBYTES of BUF to FD at given position OFFSET without changing
the file position. Return the number written, or -1. */
ssize_t
__pwrite64 (int fd, const void *buf, size_t nbytes, off64_t offset)
__libc_pwrite64 (int fd, const void *buf, size_t nbytes, off64_t offset)
{
if (nbytes == 0)
return 0;
@ -40,6 +40,7 @@ __pwrite64 (int fd, const void *buf, size_t nbytes, off64_t offset)
__set_errno (ENOSYS);
return -1;
}
weak_alias (__pwrite64, pwrite64)
strong_alias (__libc_pwrite64, __pwrite64)
weak_alias (__libc_pwrite64, pwrite64)
stub_warning (pwrite64)
#include <stub-tag.h>

View File

@ -1,4 +1,4 @@
/* Copyright (C) 1991, 1995, 1996, 1997 Free Software Foundation, Inc.
/* Copyright (C) 1991, 1995, 1996, 1997, 1999 Free Software Foundation, Inc.
This file is part of the GNU C Library.
The GNU C Library is free software; you can redistribute it and/or
@ -22,11 +22,9 @@
/* Open FILE with access OFLAG. If OFLAG includes O_CREAT,
a third argument is the file protection. */
int
__open64 (file, oflag)
const char *file;
int oflag;
__libc_open64 (const char *file, int oflag, ...)
{
int mode;
int mode = 0;
if (oflag & O_CREAT)
{
@ -35,9 +33,8 @@ __open64 (file, oflag)
mode = va_arg (arg, int);
va_end (arg);
}
else
mode = 0;
return __open (file, oflag | O_LARGEFILE, mode);
return __libc_open (file, oflag | O_LARGEFILE, mode);
}
weak_alias (__open64, open64)
strong_alias (__libc_open64, __open64)
weak_alias (__libc_open64, open64)

View File

@ -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 <drepper@cygnus.com>, 1997.
@ -23,28 +23,28 @@
#include <unistd.h>
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

View File

@ -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 <drepper@cygnus.com>, 1997.
@ -23,28 +23,28 @@
#include <unistd.h>
ssize_t
__pread64 (int fd, void *buf, size_t nbyte, off64_t offset)
__libc_pread64 (int fd, void *buf, size_t nbyte, off64_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;
off64_t old_offset = __lseek64 (fd, 0, SEEK_CUR);
off64_t old_offset = __libc_lseek64 (fd, 0, SEEK_CUR);
if (old_offset == (off64_t) -1)
return -1;
/* Set to wanted position. */
if (__lseek64 (fd, offset, SEEK_SET) == (off64_t) -1)
if (__libc_lseek64 (fd, offset, SEEK_SET) == (off64_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 (__lseek64 (fd, old_offset, SEEK_SET) == (off64_t) -1)
if (__libc_lseek64 (fd, old_offset, SEEK_SET) == (off64_t) -1)
{
if (result == -1)
__set_errno (save_errno);
@ -55,6 +55,7 @@ __pread64 (int fd, void *buf, size_t nbyte, off64_t offset)
return result;
}
#ifndef __pread64
weak_alias (__pread64, pread64)
#ifndef __libc_pread64
strong_alias (__libc_pread64, __pread64)
weak_alias (__libc_pread64, pread64)
#endif

View File

@ -1,6 +1,6 @@
/* Write block to 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 <drepper@cygnus.com>, 1997.
@ -23,28 +23,28 @@
#include <unistd.h>
ssize_t
__pwrite (int fd, const void *buf, size_t nbyte, off_t offset)
__libc_pwrite (int fd, const 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 = __write (fd, buf, nbyte);
result = __libc_write (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 @@ __pwrite (int fd, const void *buf, size_t nbyte, off_t offset)
return result;
}
#ifndef __pwrite
weak_alias (__pwrite, pwrite)
#ifndef __libc_pwrite
strong_alias (__libc_pwrite, __pwrite)
weak_alias (__libc_pwrite, pwrite)
#endif

View File

@ -1,6 +1,6 @@
/* Write block to 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 <drepper@cygnus.com>, 1997.
@ -23,28 +23,28 @@
#include <unistd.h>
ssize_t
__pwrite64 (int fd, const void *buf, size_t nbyte, off64_t offset)
__libc_pwrite64 (int fd, const void *buf, size_t nbyte, off64_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;
off64_t old_offset = __lseek64 (fd, 0, SEEK_CUR);
off64_t old_offset = __libc_lseek64 (fd, 0, SEEK_CUR);
if (old_offset == (off64_t) -1)
return -1;
/* Set to wanted position. */
if (__lseek64 (fd, offset, SEEK_SET) == (off64_t) -1)
if (__libc_lseek64 (fd, offset, SEEK_SET) == (off64_t) -1)
return -1;
/* Write out the data. */
result = __write (fd, buf, nbyte);
result = __libc_write (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 (__lseek64 (fd, old_offset, SEEK_SET) == (off64_t) -1)
if (__libc_lseek64 (fd, old_offset, SEEK_SET) == (off64_t) -1)
{
if (result == -1)
__set_errno (save_errno);
@ -54,6 +54,7 @@ __pwrite64 (int fd, const void *buf, size_t nbyte, off64_t offset)
return result;
}
#ifndef __pwrite64
weak_alias (__pwrite64, pwrite64)
#ifndef __libc_pwrite64
strong_alias (__libc_pwrite64, __pwrite64)
weak_alias (__libc_pwrite64, pwrite64)
#endif

View File

@ -34,7 +34,7 @@ static ssize_t __emulate_pread (int fd, void *buf, size_t count,
ssize_t
__pread (fd, buf, count, offset)
__libc_pread (fd, buf, count, offset)
int fd;
void *buf;
size_t count;
@ -53,9 +53,10 @@ __pread (fd, buf, count, offset)
return result;
}
weak_alias (__pread, pread)
strong_alias (__libc_pread, __pread)
weak_alias (__libc_pread, pread)
# define __pread(fd, buf, count, offset) \
# define __libc_pread(fd, buf, count, offset) \
static internal_function __emulate_pread (fd, buf, count, offset)
#endif

View File

@ -34,7 +34,7 @@ static ssize_t __emulate_pread64 (int fd, void *buf, size_t count,
ssize_t
__pread64 (fd, buf, count, offset)
__libc_pread64 (fd, buf, count, offset)
int fd;
void *buf;
size_t count;
@ -55,9 +55,10 @@ __pread64 (fd, buf, count, offset)
return result;
}
weak_alias (__pread64, pread64)
strong_alias (__libc_pread64, __pread64)
weak_alias (__libc_pread64, pread64)
# define __pread64(fd, buf, count, offset) \
# define __libc_pread64(fd, buf, count, offset) \
static internal_function __emulate_pread64 (fd, buf, count, offset)
#endif

View File

@ -34,7 +34,7 @@ static ssize_t __emulate_pwrite (int fd, const void *buf, size_t count,
ssize_t
__pwrite (fd, buf, count, offset)
__libc_pwrite (fd, buf, count, offset)
int fd;
const void *buf;
size_t count;
@ -53,9 +53,10 @@ __pwrite (fd, buf, count, offset)
return result;
}
weak_alias (__pwrite, pwrite)
strong_alias (__libc_pwrite, __pwrite)
weak_alias (__libc_pwrite, pwrite)
# define __pwrite(fd, buf, count, offset) \
# define __libc_pwrite(fd, buf, count, offset) \
static internal_function __emulate_pwrite (fd, buf, count, offset)
#endif

View File

@ -34,7 +34,7 @@ static ssize_t __emulate_pwrite64 (int fd, const void *buf, size_t count,
ssize_t
__pwrite64 (fd, buf, count, offset)
__libc_pwrite64 (fd, buf, count, offset)
int fd;
const void *buf;
size_t count;
@ -55,9 +55,10 @@ __pwrite64 (fd, buf, count, offset)
return result;
}
weak_alias (__pwrite64, pwrite64)
strong_alias (__libc_pwrite64, __pwrite64)
weak_alias (__libc_pwrite64, pwrite64)
# define __pwrite64(fd, buf, count, offset) \
# define __libc_pwrite64(fd, buf, count, offset) \
static internal_function __emulate_pwrite64 (fd, buf, count, offset)
#endif

View File

@ -37,5 +37,6 @@ __llseek (int fd, loff_t offset, int whence)
&result, whence) ?: result);
}
weak_alias (__llseek, llseek)
strong_alias (__llseek, __libc_lseek64)
strong_alias (__llseek, __lseek64)
weak_alias (__llseek, lseek64)

View File

@ -37,7 +37,7 @@ static ssize_t __emulate_pread (int fd, void *buf, size_t count,
ssize_t
__pread (fd, buf, count, offset)
__libc_pread (fd, buf, count, offset)
int fd;
void *buf;
size_t count;
@ -56,9 +56,10 @@ __pread (fd, buf, count, offset)
return result;
}
weak_alias (__pread, pread)
strong_alias (__libc_pread, pread)
weak_alias (__libc_pread, pread)
# define __pread(fd, buf, count, offset) \
# define __libc_pread(fd, buf, count, offset) \
static internal_function __emulate_pread (fd, buf, count, offset)
#endif

View File

@ -37,7 +37,7 @@ static ssize_t __emulate_pread64 (int fd, void *buf, size_t count,
ssize_t
__pread64 (fd, buf, count, offset)
__libc_pread64 (fd, buf, count, offset)
int fd;
void *buf;
size_t count;
@ -57,9 +57,10 @@ __pread64 (fd, buf, count, offset)
return result;
}
weak_alias (__pread64, pread64)
strong_alias (__libc_pread64, __pread64)
weak_alias (__libc_pread64, pread64)
# define __pread64(fd, buf, count, offset) \
# define __libc_pread64(fd, buf, count, offset) \
static internal_function __emulate_pread64 (fd, buf, count, offset)
#endif

View File

@ -37,7 +37,7 @@ static ssize_t __emulate_pwrite (int fd, const void *buf, size_t count,
ssize_t
__pwrite (fd, buf, count, offset)
__libc_pwrite (fd, buf, count, offset)
int fd;
const void *buf;
size_t count;
@ -56,9 +56,10 @@ __pwrite (fd, buf, count, offset)
return result;
}
weak_alias (__pwrite, pwrite)
strong_alias (__libc_pwrite, __pwrite)
weak_alias (__libc_pwrite, pwrite)
# define __pwrite(fd, buf, count, offset) \
# define __libc_pwrite(fd, buf, count, offset) \
static internal_function __emulate_pwrite (fd, buf, count, offset)
#endif

View File

@ -37,7 +37,7 @@ static ssize_t __emulate_pwrite64 (int fd, const void *buf, size_t count,
ssize_t
__pwrite64 (fd, buf, count, offset)
__libc_pwrite64 (fd, buf, count, offset)
int fd;
const void *buf;
size_t count;
@ -57,9 +57,10 @@ __pwrite64 (fd, buf, count, offset)
return result;
}
weak_alias (__pwrite64, pwrite64)
strong_alias (__libc_pwrite64, __pwrite64)
weak_alias (__libc_pwrite64, pwrite64)
# define __pwrite64(fd, buf, count, offset) \
# define __libc_pwrite64(fd, buf, count, offset) \
static internal_function __emulate_pwrite64 (fd, buf, count, offset)
#endif