about summary refs log tree commit diff
path: root/sysdeps/posix/open64.c
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 /sysdeps/posix/open64.c
parent43f94f913e1078818bd09d426756ba4377f12517 (diff)
downloadglibc-778c59c850879b2ffc7a396cecfa5a5ad68a40e6.tar.gz
glibc-778c59c850879b2ffc7a396cecfa5a5ad68a40e6.tar.xz
glibc-778c59c850879b2ffc7a396cecfa5a5ad68a40e6.zip
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 'sysdeps/posix/open64.c')
-rw-r--r--sysdeps/posix/open64.c15
1 files changed, 6 insertions, 9 deletions
diff --git a/sysdeps/posix/open64.c b/sysdeps/posix/open64.c
index e409891980..fba30a6ff7 100644
--- a/sysdeps/posix/open64.c
+++ b/sysdeps/posix/open64.c
@@ -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)