* sysdeps/mach/hurd/read.c: Include <hurd/fd.h>. (__libc_read): Don't call __pread...
authorMark Kettenis <kettenis@gnu.org>
Wed, 27 Jun 2001 23:35:23 +0000 (23:35 +0000)
committerMark Kettenis <kettenis@gnu.org>
Wed, 27 Jun 2001 23:35:23 +0000 (23:35 +0000)
* sysdeps/mach/hurd/read.c: Include <hurd/fd.h>.
(__libc_read): Don't call __pread.  Use _hurd_fd_read directly
instead.
* sysdeps/mach/hurd/write.c: Include <hurd/fd.h>.
(__libc_write): Don't call __pwrite.  Use _hurd_fd_write directly
instead.

ChangeLog
sysdeps/mach/hurd/read.c
sysdeps/mach/hurd/write.c

index 197e18f..c795869 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,12 @@
 2001-06-28  Mark Kettenis  <kettenis@gnu.org>
 
+       * sysdeps/mach/hurd/read.c: Include <hurd/fd.h>.
+       (__libc_read): Don't call __pread.  Use _hurd_fd_read directly
+       instead.
+       * sysdeps/mach/hurd/write.c: Include <hurd/fd.h>.
+       (__libc_write): Don't call __pwrite.  Use _hurd_fd_write directly
+       instead.
+
        * sysdeps/mach/hurd/Makefile ($(link-rpcuserlibs)): Add back
        -Wl,-soname option lost in 2001-06-16 change.
 
index 2d50496..dd723af 100644 (file)
@@ -1,4 +1,4 @@
-/* Copyright (C) 1993,94,95,97,98,99 Free Software Foundation, Inc.
+/* Copyright (C) 1993,94,95,97,98,99,2001 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
 
 #include <errno.h>
 #include <unistd.h>
+#include <hurd/fd.h>
 
 /* Read NBYTES into BUF from FD.  Return the number read or -1.  */
 ssize_t
 __libc_read (int fd, void *buf, size_t nbytes)
 {
-  return __pread (fd, buf, nbytes, (off_t) -1);
+  error_t err = HURD_FD_USE (fd, _hurd_fd_read (descriptor, buf, &nbytes, -1));
+  return err ? __hurd_dfail (fd, err) : nbytes;
 }
 
 weak_alias (__libc_read, __read)
index e9d8c9d..14c4522 100644 (file)
@@ -1,4 +1,4 @@
-/* Copyright (C) 1991,92,93,94,95,97,98,99 Free Software Foundation, Inc.
+/* Copyright (C) 1991,92,93,94,95,97,98,99,2001 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
 
 #include <errno.h>
 #include <unistd.h>
+#include <hurd/fd.h>
 
 ssize_t
 __libc_write (int fd, const void *buf, size_t nbytes)
 {
-  return __pwrite (fd, buf, nbytes, (off_t) -1);
+  error_t err = HURD_FD_USE (fd, _hurd_fd_write (descriptor,
+                                                buf, &nbytes, -1));
+  return err ? __hurd_dfail (fd, err) : nbytes;
 }
 
 weak_alias (__libc_write, __write)