diff options
author | Ulrich Drepper <drepper@redhat.com> | 1996-12-15 02:15:29 +0000 |
---|---|---|
committer | Ulrich Drepper <drepper@redhat.com> | 1996-12-15 02:15:29 +0000 |
commit | 68dbb3a69e78e24a778c6602c8cc91d715839d08 (patch) | |
tree | 2201a2cfe38cf2817b6dfd37415dac21c7a41b2f /libio/fileops.c | |
parent | f8b87ef0d47ea0db7304a9c59d5479aebdaea347 (diff) | |
download | glibc-68dbb3a69e78e24a778c6602c8cc91d715839d08.tar glibc-68dbb3a69e78e24a778c6602c8cc91d715839d08.tar.gz glibc-68dbb3a69e78e24a778c6602c8cc91d715839d08.tar.bz2 glibc-68dbb3a69e78e24a778c6602c8cc91d715839d08.zip |
update from main archive 961214cvs/libc-961215
Sun Dec 15 01:53:20 1996 Ulrich Drepper <drepper@cygnus.com>
* Makefile (subdirs): Change crypt to md5-crypt.
* crypt/Makefile, crypt/md5-crypt.c, crypt/md5.c, crypt/md5.h,
crypt/md5c-test.c, crypt/md5test.c: Move to new directory
md5-crypt.
* sysdeps/unix/sysv/linux/configure.in: Refer to linuxthreads and
crypt instead of LinuxThreads and des-crypt.
* Makefile (subdirs): Add nss back.
* sysdeps/unix/inet/Subdirs: Move nis to end of file to fulfill
dependencies.
* libio/iofclose.c: Implement fclose(NULL) as closing all streams.
* stdio-common/Makefile (routines): Add fcloseall.
* stdio-common/fcloseall.c: New file.
* sysdeps/generic/abort.c: Make implementation POSIX.1 compatible.
* sysdeps/mach/libc-lock.h: Add definition of __libc_lock_trylock.
* sysdeps/stub/libc-lock.h: Define __libc_lock_trylock to always
return 0.
* stdio-common/printf.h: Define MIN and MAX only if not already
defined.
* stdio-common/vfprintf.c: Set errno to EBADF if stream does not
allow writing. Required by POSIX.1.
* libio/libioP.h (CHECK_FILE): Use MAYBE_SET_EINVAL instead of
assignment.
* interp.c: Update copyright.
* libio/clearerr.c: Likewise.
* libio/ioseekoff.c: Likewise.
* libio/ioseekpos.c: Likewise.
* stdio/fclose.c: Likewise.
* stdio/fflus.c: Likewise.
* libio/libio.h [!_IO_MTSAFE_IO]: Define _IO_cleanup_region_start
and _IO_cleanup_region_end as empty.
* libio/fgetc.c: Use _IO_cleanup_region_start and
_IO_cleanup_region_end instead of __libc_cleanup_region_start and
__libc_cleanup_region_end.
* libio/fputc.c: Likewise.
* libio/freopen.c: Likewise.
* libio/fseek.c: Likewise.
* libio/getc.c: Likewise.
* libio/getchar.c: Likewise.
* libio/iofclose.c: Likewise.
* libio/iofflush.c: Likewise.
* libio/iofgetpos.c: Likewise.
* libio/iofgets.c: Likewise.
* libio/iofputs.c: Likewise.
* libio/iofread.c: Likewise.
* libio/iofsetpos.c: Likewise.
* libio/ioftell.c: Likewise.
* libio/iofwrite.c: Likewise.
* libio/iogetdelim.c: Likewise.
* libio/iogets.c: Likewise.
* libio/ioputs.c: Likewise.
* libio/iosetbuffer.c: Likewise.
* libio/iosetvbuf.c: Likewise.
* libio/ioungetc.c: Likewise.
* libio/iovspintf.c: Use cleanup handler to make sure no dangling
locks can stay over.
* libio/iovsscanf.c: Likewise.
* libio/genops.c: Use _IO_lock_init_recursive and _IO_lock_fini
instead of __libc_lock_init_recursive and __libc_lock_fini.
* libio/filedoalloc.c: Only use __isatty when compiling GNU libc.
Otherwise use isatty.
* libio/fileops.c: Likewise for __open and open.
* login/utmp_file.c (getutent_r_file): Use fcntl instead of
flock.
* nis/ypclnt.h: Add more casts to prevent warnings.
* nss/Makefile (services): Remove dns.
(libnss_dns, libnss_dns-inhibit-o): Remove definition.
($(objpfx)libnss_dns.so): Removed.
* nss/nss_dns/dns-host.c, nss/nss_dns/dns-network.c: Moved to...
* resolv/nss_dns: ...here.
* resolv/Makefile (extra-libs): Add libnss_dns.
(libnss_dns-routines, libnss_dns-inhibit-o): Define as in
nss/Makefile.
* nss/XXX-lookup.c: Call __nss_database_lookup with new argument
specifying alternate name for entry in /etc/nsswitch.conf
* nss/nsswitch.c: If no entry with primary name is found in
/etc/nsswitch.conf try alternate name if given.
* nss/nsswitch.h: Add new parameter in prototype for
__nss_database_lookup.
* nss/spwd-lookup.c: Provide alternative entry name to look for.
This makes our NSS compatible with Solaris' nsswitch.conf files.
* string/tst-strlen.c: Change all counting variables to type size_t
to prevent warnings.
* sysdeps/posix/fpathconf.c: Update copyright.
* sysdeps/posix/pathconf.c: Don't call fpathconf to do the work.
Opening the file at this path may fail if it is a FIFO or pipe.
These changes make the time implementation POSIX.1 compliant.
* time/localtime.c (__localtime_r): Always call __tzset not only
if __tzset_run is zero.
* time/strftime.c: Add definition of memset_space to help to
reduce for systems which have memset.
(strftime): Don't use tm_zone member of argument for zone name.
Instead always use tzname[].
Call tzset() as required by POSIX.1 before any action.
* time/tzset.c (tzset): Set tzname[] as required by POSIX.1.
Remove global variable __tzset_run. __tzset is now called always
when a dependent function is used.
(__tzset): Caching happens based on the contents of the
environment variable TZ.
Fri Dec 13 01:06:52 1996 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
* sysdeps/unix/sysv/linux/paths.h: Add _PATH_KLOG.
Thu Dec 12 09:16:35 1996 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
* rellns-sh: Correctly handle a relative source file name.
Wed Dec 11 19:18:40 1996 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
* login/utmp_file.c (setutent_file): Seek back to beginning of the
file if resetting.
Thu Dec 12 16:39:12 1996 Thomas Bushnell, n/BSG <thomas@gnu.ai.mit.edu>
* hurd/hurdinit.c (map0): Delete function. Don't do this on
_hurd_preinit_hook.
* hurd/hurdstartup.c (_hurd_startup): Map page zero redzone here.
Diffstat (limited to 'libio/fileops.c')
-rw-r--r-- | libio/fileops.c | 17 |
1 files changed, 15 insertions, 2 deletions
diff --git a/libio/fileops.c b/libio/fileops.c index 3294befbd2..dd1f573400 100644 --- a/libio/fileops.c +++ b/libio/fileops.c @@ -37,6 +37,11 @@ the executable file might be covered by the GNU General Public License. */ extern int errno; #endif + +#ifdef _LIBC +# define open(Name, Flags, Prot) __open ((Name), (Flags), (Prot)) +#endif + /* An fstream can be in at most one of put mode, get mode, or putback mode. Putback mode is a variant of get mode. @@ -177,7 +182,7 @@ DEFUN(_IO_file_fopen, (fp, filename, mode), omode = O_RDWR; read_write &= _IO_IS_APPENDING; } - fdesc = __open (filename, omode|oflags, oprot); + fdesc = open(filename, omode|oflags, oprot); if (fdesc < 0) return NULL; fp->_fileno = fdesc; @@ -223,7 +228,7 @@ DEFUN(_IO_file_setbuf, (fp, p, len), } /* Write TO_DO bytes from DATA to FP. - Then mark FP has having empty buffers. */ + Then mark FP as having empty buffers. */ int DEFUN(_IO_do_write, (fp, data, to_do), @@ -548,6 +553,10 @@ DEFUN(_IO_file_read, (fp, buf, size), { _IO_ssize_t count = _IO_read(fp->_fileno, buf, size); #if 0 && defined EINTR + /* We must not do this optimization since POSIX.1 explicitly + requests that the stream operations must return with the + error EINTR if this happens. There must be the possibility + that stream operations time out. --drepper */ if (count == -1 && errno == EINTR) continue; #endif @@ -587,6 +596,10 @@ DEFUN(_IO_file_write, (f, data, n), if (count == EOF) { #if 0 && defined EINTR + /* We must not do this optimization since POSIX.1 explicitly + requests that the stream operations must return with the + error EINTR if this happens. There must be the + possibility that stream operations time out. --drepper */ if (errno == EINTR) continue; else |