commit-hurd
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[hurd] 04/13: New upstream snapshot


From: Samuel Thibault
Subject: [hurd] 04/13: New upstream snapshot
Date: Tue, 24 Sep 2013 12:29:35 +0000

This is an automated email from the git hooks/post-receive script.

sthibault pushed a commit to branch master
in repository hurd.

commit 8b7cb9465b62a9058878f16e3181014e9d74dbb8
Author: Samuel Thibault <address@hidden>
Date:   Mon Sep 23 22:36:18 2013 +0000

    New upstream snapshot
---
 Makefile                      |    4 ++--
 NEWS                          |   16 ++--------------
 TODO                          |   17 +----------------
 configure.ac                  |   15 +++++++++++----
 console-client/pc-kbd.c       |    2 ++
 console-client/pc-mouse.c     |    2 ++
 console-client/vga-dynafont.c |    4 ++--
 console-client/xkb/kstoucs.c  |    1 +
 daemons/runsystem.sh          |   15 +++++++++++----
 devnode/devnode.c             |    1 +
 doc/hurd.texi                 |   11 ++---------
 doc/navigating                |    6 +++---
 eth-filter/filter.c           |    9 ++++++---
 eth-multiplexer/device_impl.c |    4 ++--
 exec/hostarch.c               |    2 +-
 ext2fs/dir.c                  |    4 ++--
 hurd/fsys_reply.defs          |    4 ++--
 hurd/process_reply.defs       |   42 ++++++++++++++++++++---------------------
 include/pids.h                |    2 +-
 isofs/inode.c                 |    2 +-
 isofs/lookup.c                |    2 +-
 isofs/pager.c                 |    3 +++
 libdiskfs/peropen-make.c      |   14 +++++++-------
 libfshelp/fshelp.h            |    2 +-
 libfshelp/set-options.c       |    2 +-
 libfshelp/translator-list.c   |    1 +
 libmachdev/ds_routines.c      |    2 +-
 libnetfs/make-peropen.c       |   21 +++++++++++++--------
 libpipe/pipe.c                |    1 +
 libps/write.c                 |    2 +-
 libtrivfs/io-restrict-auth.c  |    4 ++--
 pflocal/io.c                  |   20 ++++++++++----------
 pflocal/sock.c                |   28 +++++++++++++--------------
 pflocal/sock.h                |   10 +++++-----
 pflocal/socket.c              |   16 ++++++++--------
 proc/mgt.c                    |    2 +-
 sutils/MAKEDEV.sh             |    2 +-
 term/hurdio.c                 |    2 +-
 term/users.c                  |    6 +++---
 trans/Makefile                |    2 +-
 utils/Makefile                |    2 +-
 utils/rpctrace.c              |    2 +-
 utils/storeinfo.c             |    1 -
 43 files changed, 154 insertions(+), 156 deletions(-)

diff --git a/Makefile b/Makefile
index 4a87461..818826f 100644
--- a/Makefile
+++ b/Makefile
@@ -32,11 +32,11 @@ lib-subdirs = libshouldbeinlibc libihash libiohelp libports 
libthreads \
 
 # Hurd programs
 prog-subdirs = auth proc exec init term \
-              ufs ext2fs isofs tmpfs fatfs \
+              ext2fs isofs tmpfs fatfs \
               storeio pflocal pfinet defpager mach-defpager \
               login daemons boot console \
               hostmux usermux ftpfs trans \
-              console-client utils sutils ufs-fsck ufs-utils \
+              console-client utils sutils \
               benchmarks fstests
 
 ifeq ($(HAVE_SUN_RPC),yes)
diff --git a/NEWS b/NEWS
index ea994a8..703106b 100644
--- a/NEWS
+++ b/NEWS
@@ -226,29 +226,17 @@ on an ext2fs filesystem.
 Bugs in term and libtrivfs have been fixed, allowing emacs shell mode
 to work cleanly.  Other minor bugs have also been fixed.
 
-ufs and ext2fs now do directory search rotoring to speed repeated and
+ext2fs now does directory search rotoring to speed repeated and
 sequential directory lookups.
 
-ufs now notes correctly if a disk cannot be written to and turns on
-the readonly flag automatically in this case.  (Useful for floppies.)
-
-ufs statfs information (printed by df) should now be correct.
-
-A serious bug in ufs fsck when dealing with large directories has been
-fixed.
-
 A new program `vminfo' prints the virtual memory map of task.
 
-All disk filesystems (ufs and ext2fs) now do directory name caching of
+All disk filesystems (ext2fs) now do directory name caching of
 `..' which was not previously done.  In addition, you can now set the
 cache size to be large, and then do experiments and see what the cache
 hit rate would have been for various smaller sizes.  This should help
 in optimizing the size of the cache.
 
-A port leak in the pager library has been fixed; previously ufs leaked
-two ports per file used until the kernel's limit (about 30,000) was
-reached.
-
 
 6 August 1996
 Version 0.0
diff --git a/TODO b/TODO
index bf37fb2..d2500dc 100644
--- a/TODO
+++ b/TODO
@@ -121,13 +121,12 @@ See `tasks', the exported task list.
 *** Implement async I/O. !
 *** Think of a way to have when-to-sync-nodes be more flexible so it can
     be done right for each format.
-*** Check when-to-sync-nodes carefully against BSD 4.4 ufs implementation. !
 *** Provide for MNT_NODEV, etc. !
 *** Implement io_restrict_auth correctly. !
 *** Use off_t correctly. !!
 *** Add a consistent message printing facility for filesystems to use
     (syslog, but takes special care when the root file system?). !!
-*** Some of diskfs_readonly_changed in ufs/ext2fs should be in generic
+*** Some of diskfs_readonly_changed in ext2fs should be in generic
     routines. !
 
 ** libfshelp
@@ -205,20 +204,6 @@ See `tasks', the exported task list.
 *** Serverify, ala new-fifo.
 *** implement io_revoke !
 
-** ufs:
-*** Implement clustering, a la 4.4-lite sys/kern/vfs_cluster.c.
-*** Make file_get_storage_info work for files with indirect blocks. !!
-*** Optimizations:
-    pager.c/inode.c/libdiskfs count pager refs separately and then
-      save mappings in _diskfs_rdwr_internal and dir.c !
-*** Problems with DT_* hack: !
-****   Fix multiple-links DT_* bug.
-****   Deal with change of type which should update directory.
-****   Type is also wrong for translated nodes...
-*** Roland sez: ENOSPC detection flaky in ufs.  Try write of >page,
-    non-page-multiple, when free space allows write size but not
-    round_page (write size).
-
 ** ext2fs
 *** Try to write directories with 512-byte record boundaries. !!
 *** Maybe file_pager_write_page should be able to accurately reproduce holes
diff --git a/configure.ac b/configure.ac
index 5340b50..a505b1d 100644
--- a/configure.ac
+++ b/configure.ac
@@ -59,7 +59,7 @@ AC_ARG_ENABLE(profile,
 [  --disable-profile     do not build profiled libraries and programs])
 AC_SUBST(enable_profile)
 
-define([default_static],['ext2fs,ufs'])dnl
+define([default_static],['ext2fs'])dnl
 AC_ARG_ENABLE(static-progs,
 [  --enable-static-progs=PROGRAMS...
                           build statically-linked PROGRAM.static versions
@@ -297,9 +297,16 @@ else
                            echo ${file}:build.mk.in; done`"
 fi
 
-PKG_CHECK_MODULES([libdaemon], [libdaemon],
-  [AC_DEFINE([HAVE_DAEMON], [1], [Use libdaemon])],
-  [true])
+AC_ARG_WITH([libdaemon],
+  [AS_HELP_STRING([--without-libdaemon], [disable libdaemon use in console 
client])],
+  [],
+  [with_libdaemon=yes])
+
+AS_IF([test "x$with_libdaemon" != xno], [
+  PKG_CHECK_MODULES([libdaemon], [libdaemon],
+    [AC_DEFINE([HAVE_DAEMON], [1], [Use libdaemon])],
+    [true])
+])
 AC_SUBST([libdaemon_LIBS])
 AC_SUBST([libdaemon_CFLAGS])
 
diff --git a/console-client/pc-kbd.c b/console-client/pc-kbd.c
index c6eda86..21c0987 100644
--- a/console-client/pc-kbd.c
+++ b/console-client/pc-kbd.c
@@ -591,8 +591,10 @@ static enum scancode
 gnumach_v1_input_next ()
 {
   kd_event data_buf;
+#ifndef XKB_SUPPORT
   int up;
   enum scancode sc;
+#endif /* not XKB_SUPPORT */
 
   do
     {
diff --git a/console-client/pc-mouse.c b/console-client/pc-mouse.c
index 8be7ff1..abdb602 100644
--- a/console-client/pc-mouse.c
+++ b/console-client/pc-mouse.c
@@ -291,6 +291,8 @@ input_loop (void *unused)
       console_move_mouse (&evt);
       vm_deallocate (mach_task_self(), buf, buf_size);
     }
+
+  return NULL;
 }
 
 
diff --git a/console-client/vga-dynafont.c b/console-client/vga-dynafont.c
index 834d0ac..6745e88 100644
--- a/console-client/vga-dynafont.c
+++ b/console-client/vga-dynafont.c
@@ -964,9 +964,9 @@ dynafont_set_cursor (dynafont_t df, int standout)
   if (df == active_dynafont)
     {
       if (standout)
-       vga_set_cursor_size (1, -1);
+       vga_set_cursor_size (1, height - 1);
       else
-       vga_set_cursor_size ((height >= 2) ? height - 2 : 0, -1);
+       vga_set_cursor_size ((height >= 2) ? height - 2 : 0, height - 1);
     }
 }
 
diff --git a/console-client/xkb/kstoucs.c b/console-client/xkb/kstoucs.c
index e93cc85..0211e9e 100644
--- a/console-client/xkb/kstoucs.c
+++ b/console-client/xkb/kstoucs.c
@@ -37,6 +37,7 @@ unsigned int doit (int keysym)
       return find_ucs (keysym, middle+1, last);
     else if (middle->keysym > keysym)
       return find_ucs (keysym, first, middle-1);
+    return 0;
   }
 
   #define NUM_KEYSYMS (sizeof kstoucs_map / sizeof(struct ksmap))
diff --git a/daemons/runsystem.sh b/daemons/runsystem.sh
index 4b9334e..f4f2771 100644
--- a/daemons/runsystem.sh
+++ b/daemons/runsystem.sh
@@ -55,10 +55,17 @@ function singleuser ()
 }
 
 
-# See whether pflocal is setup already, and do so if not (install case)
-
-if ! test -e /servers/socket/1 && which settrans >/dev/null ; then
-  settrans -c /servers/socket/1 /hurd/pflocal
+# See whether pflocal is set up already, and do so if not (install case)
+#
+# Normally this should be the case, but we better make sure since
+# without the pflocal server, pipe(2) does not work.
+if ! test -e /servers/socket/1 ; then
+  # The root filesystem should be read-only at this point.
+  if fsysopts / --update --writable ; then
+    settrans -c /servers/socket/1 /hurd/pflocal
+  else
+    singleuser "Failed to create /servers/socket/1."
+  fi
 fi
 
 # We expect to be started by console-run, which gives us no arguments and
diff --git a/devnode/devnode.c b/devnode/devnode.c
index 218b308..947d31b 100644
--- a/devnode/devnode.c
+++ b/devnode/devnode.c
@@ -24,6 +24,7 @@
  */
 
 #include <argp.h>
+#include <argz.h>
 #include <errno.h>
 #include <error.h>
 #include <stddef.h>
diff --git a/doc/hurd.texi b/doc/hurd.texi
index 070daed..ae47868 100644
--- a/doc/hurd.texi
+++ b/doc/hurd.texi
@@ -1912,7 +1912,7 @@ existing translators:
 
 @itemize @bullet
 @item
-Disk-based filesystem formats, such as @code{ext2fs}, @code{ufs}, and
+Disk-based filesystem formats, such as @code{ext2fs} and
 @code{iso9660fs} (@pxref{Stored Filesystems}).
 
 @item
@@ -2619,7 +2619,7 @@ an RPC.  If @var{len} is greater than zero, @var{buf} is 
freed,
 regardless of whether an error is returned or not.
 @end deftypefun
 
address@hidden error_t fshelp_set_options (@w{struct argp address@hidden, 
@w{int @var{flags}}, @w{char address@hidden, @w{size_t @var{argz_len}}, @w{void 
address@hidden)
address@hidden error_t fshelp_set_options (@w{const struct argp address@hidden, 
@w{int @var{flags}}, @w{char address@hidden, @w{size_t @var{argz_len}}, @w{void 
address@hidden)
 Invoke @code{argp_parse} in the standard way, with data from @var{argz}
 and @var{argz_len}.
 @end deftypefun
@@ -3572,13 +3572,6 @@ FIXME: finish
 FIXME: finish
 
 
address@hidden BSD Unix FS
address@hidden BSD Unix FS
address@hidden ufs
-
-FIXME: finish
-
-
 @node ISO-9660 CD-ROM FS
 @section ISO-9660 CD-ROM FS
 @pindex iso9660fs
diff --git a/doc/navigating b/doc/navigating
index 2d83625..c000c56 100644
--- a/doc/navigating
+++ b/doc/navigating
@@ -27,9 +27,9 @@ Most trivfs filesystems don't even do any filesystem stuff at 
all.
 See, for example, the null translator (trans/null.c) for a simple
 example of using trivfs.  
 
-diskfs is used for disk-based filesystems, with two in existence now:
-ext2fs and ufs.  If you write another diskfs-based filesystem, you
-should DEFINITELY imitate the algorithms found in ext2fs and ufs; this
+diskfs is used for disk-based filesystems, with one in existence now:
+ext2fs.  If you write another diskfs-based filesystem, you
+should DEFINITELY imitate the algorithms found in ext2fs; this
 is crucial to getting locking right.
 
 netfs is used for nfs and other such things: with directories, and all
diff --git a/eth-filter/filter.c b/eth-filter/filter.c
index 7720b0c..d2b1e39 100644
--- a/eth-filter/filter.c
+++ b/eth-filter/filter.c
@@ -26,6 +26,7 @@
  */
 
 #include <argp.h>
+#include <argz.h>
 #include <errno.h>
 #include <error.h>
 #include <stddef.h>
@@ -37,6 +38,7 @@
 #include <hurd/trivfs.h>
 #include <hurd/ports.h>
 #include <hurd/ihash.h>
+#include <hurd/fshelp.h>
 
 #include "ourdevice_S.h"
 #include "notify_S.h"
@@ -379,7 +381,7 @@ ds_device_write (device_t device, mach_port_t reply_port,
   user = ports_lookup_port (port_bucket, device, user_portclass);
   if (user == NULL)
     {
-      vm_deallocate (mach_task_self (), data, datalen);
+      vm_deallocate (mach_task_self (), (vm_address_t) data, datalen);
       return D_INVALID_OPERATION;
     }
   proxy = user->proxy;
@@ -414,7 +416,7 @@ ds_device_write (device_t device, mach_port_t reply_port,
       *bytes_written = datalen;
       err = 0;
     }
-  vm_deallocate (mach_task_self (), data, datalen);
+  vm_deallocate (mach_task_self (), (vm_address_t) data, datalen);
   return err;
 }
 
@@ -734,7 +736,6 @@ error_t
 trivfs_append_args (struct trivfs_control *fsys,
                    char **argz, size_t *argz_len)
 {
-  error_t err;
   char *opt;
 
   if (device_file)
@@ -779,6 +780,8 @@ trivfs_set_options (struct trivfs_control *fsys, char 
*argz, size_t argz_len)
                        rcv_filter_length);
   if (err)
     return err;
+
+  return 0;
 }
 
 int
diff --git a/eth-multiplexer/device_impl.c b/eth-multiplexer/device_impl.c
index 953fca7..459d9c4 100644
--- a/eth-multiplexer/device_impl.c
+++ b/eth-multiplexer/device_impl.c
@@ -156,7 +156,7 @@ ds_device_write (device_t device, mach_port_t reply_port,
                                                  vdev_portclass);
   if (vdev == NULL)
     {
-      vm_deallocate (mach_task_self (), data, datalen);
+      vm_deallocate (mach_task_self (), (vm_address_t) data, datalen);
       return D_NO_SUCH_DEVICE;
     }
   /* The packet is forwarded to all virtual interfaces and
@@ -168,7 +168,7 @@ ds_device_write (device_t device, mach_port_t reply_port,
                        data, datalen, bytes_written);
   /* The data in device_write() is transmifered out of line,
    * so the server-side function has to deallocate it. */
-  vm_deallocate (mach_task_self (), data, datalen);
+  vm_deallocate (mach_task_self (), (vm_address_t) data, datalen);
   ports_port_deref (vdev);
   return ret;
 }
diff --git a/exec/hostarch.c b/exec/hostarch.c
index ec59a41..b37adb9 100644
--- a/exec/hostarch.c
+++ b/exec/hostarch.c
@@ -39,7 +39,7 @@ elf_machine_matches_host (ElfW(Half) e_machine)
       mach_msg_type_number_t hostinfocnt = HOST_BASIC_INFO_COUNT;
 
       err = host_info (mach_host_self (), HOST_BASIC_INFO,
-                      (natural_t *) &hostinfo, &hostinfocnt);
+                      (host_info_t) &hostinfo, &hostinfocnt);
       if (err)
        return err;
       assert (hostinfocnt == HOST_BASIC_INFO_COUNT);
diff --git a/ext2fs/dir.c b/ext2fs/dir.c
index 3a3e648..c075246 100644
--- a/ext2fs/dir.c
+++ b/ext2fs/dir.c
@@ -465,8 +465,8 @@ dirscanblock (vm_address_t blockaddr, struct node *dp, int 
idx,
     }
 
   if (consider_compress
-      && (ds->type == LOOKING
-         || (ds->type == COMPRESS && ds->nbytes > nbytes)))
+      && (ds->stat == LOOKING
+         || (ds->stat == COMPRESS && ds->nbytes > nbytes)))
     {
       ds->type = CREATE;
       ds->stat = COMPRESS;
diff --git a/hurd/fsys_reply.defs b/hurd/fsys_reply.defs
index 2f5b035..89fb3a4 100644
--- a/hurd/fsys_reply.defs
+++ b/hurd/fsys_reply.defs
@@ -77,12 +77,12 @@ simpleroutine fsys_get_options_reply (
        RETURN_CODE_ARG;
        options: data_t);
 
-simpleroutine fsys_get_children (
+simpleroutine fsys_get_children_reply (
        server: fsys_t;
        RETURN_CODE_ARG;
        children: data_t);
 
-simpleroutine fsys_get_source (
+simpleroutine fsys_get_source_reply (
        server: fsys_t;
        RETURN_CODE_ARG;
        source: string_t);
diff --git a/hurd/process_reply.defs b/hurd/process_reply.defs
index 66a7551..ed46d55 100644
--- a/hurd/process_reply.defs
+++ b/hurd/process_reply.defs
@@ -70,107 +70,107 @@ skip; /* proc_mark_exec */
 skip; /* proc_mark_traced */
 skip; /* proc_mod_stopchild */
 
-simpleroutine proc_pid2task (
+simpleroutine proc_pid2task_reply (
        reply_port: reply_port_t;
        RETURN_CODE_ARG;
        task: task_t);
 
-simpleroutine proc_task2pid (
+simpleroutine proc_task2pid_reply (
        reply_port: reply_port_t;
        RETURN_CODE_ARG;
        pid: pid_t);
 
-simpleroutine proc_task2proc (
+simpleroutine proc_task2proc_reply (
        reply_port: reply_port_t;
        RETURN_CODE_ARG;
        proc: mach_port_make_send_t);
 
-simpleroutine proc_proc2task (
+simpleroutine proc_proc2task_reply (
        reply_port: reply_port_t;
        RETURN_CODE_ARG;
        task: task_t);
 
-simpleroutine proc_pid2proc (
+simpleroutine proc_pid2proc_reply (
        reply_port: reply_port_t;
        RETURN_CODE_ARG;
        proc: mach_port_make_send_t);
 
-simpleroutine proc_getprocinfo (
+simpleroutine proc_getprocinfo_reply (
        reply_port: reply_port_t;
        RETURN_CODE_ARG;
        flags: int;
        procinfo: procinfo_t, dealloc;
        threadwaits: data_t, dealloc);
 
-simpleroutine proc_getprocargs (
+simpleroutine proc_getprocargs_reply (
        reply_port: reply_port_t;
        RETURN_CODE_ARG;
        procargs: data_t, dealloc);
 
-simpleroutine proc_getprocenv (
+simpleroutine proc_getprocenv_reply (
        reply_port: reply_port_t;
        RETURN_CODE_ARG;
        procenv: data_t, dealloc);
 
 skip; /* proc_make_login_coll */
 
-simpleroutine proc_getloginid (
+simpleroutine proc_getloginid_reply (
        reply_port: reply_port_t;
        RETURN_CODE_ARG;
        login_id: pid_t);
 
-simpleroutine proc_getloginpids (
+simpleroutine proc_getloginpids_reply (
        reply_port: reply_port_t;
        RETURN_CODE_ARG;
        pids: pidarray_t, dealloc);
 
 skip; /* proc_setlogin */
 
-simpleroutine proc_getlogin (
+simpleroutine proc_getlogin_reply (
        reply_port: reply_port_t;
        RETURN_CODE_ARG;
        logname: string_t);
 
 skip; /* proc_setsid */
 
-simpleroutine proc_getsid (
+simpleroutine proc_getsid_reply (
        reply_port: reply_port_t;
        RETURN_CODE_ARG;
        sid: pid_t);
 
-simpleroutine proc_getsessionpgids (
+simpleroutine proc_getsessionpgids_reply (
        reply_port: reply_port_t;
        RETURN_CODE_ARG;
        pgidset: pidarray_t, dealloc);
 
-simpleroutine proc_getsessionpids (
+simpleroutine proc_getsessionpids_reply (
        reply_port: reply_port_t;
        RETURN_CODE_ARG;
        pidset: pidarray_t, dealloc);
 
-simpleroutine proc_getsidport (
+simpleroutine proc_getsidport_reply (
        reply_port: reply_port_t;
        RETURN_CODE_ARG;
        sessport: mach_port_send_t);
 
 skip; /* proc_setpgrp */
 
-simpleroutine proc_getpgrp (
+simpleroutine proc_getpgrp_reply (
        reply_port: reply_port_t;
        RETURN_CODE_ARG;
        pgrp: pid_t);
 
-simpleroutine proc_getpgrppids (
+simpleroutine proc_getpgrppids_reply (
        reply_port: reply_port_t;
        RETURN_CODE_ARG;
        pidset: pidarray_t, dealloc);
 
-simpleroutine proc_get_tty (
+simpleroutine proc_get_tty_reply (
        reply_port: reply_port_t;
        RETURN_CODE_ARG;
        tty: mach_port_send_t);
 
-simpleroutine proc_getnports (
+simpleroutine proc_getnports_reply (
        reply_port: reply_port_t;
        RETURN_CODE_ARG;
        nports: mach_msg_type_number_t);
@@ -180,14 +180,14 @@ simpleroutine proc_getnports (
 skip;  /* Reserved for proc_set_init_task */
 skip; /* proc_mark_important */
 
-simpleroutine proc_is_important (
+simpleroutine proc_is_important_reply (
        reply_port: reply_port_t;
        RETURN_CODE_ARG;
        essential: boolean_t);
 
 skip; /* proc_set_code */
 
-simpleroutine proc_get_code (
+simpleroutine proc_get_code_reply (
        reply_port: reply_port_t;
        RETURN_CODE_ARG;
        start_code: vm_address_t;
diff --git a/include/pids.h b/include/pids.h
index 485916b..22415f4 100644
--- a/include/pids.h
+++ b/include/pids.h
@@ -22,8 +22,8 @@
 #ifndef _HURD_PROCESSES_H
 #define _HURD_PROCESSES_H
 
-#define HURD_PID_PROC          0
 #define HURD_PID_STARTUP       1
 #define HURD_PID_KERNEL                2
+#define HURD_PID_PROC          3
 
 #endif  /* _HURD_PROCESSES_H */
diff --git a/isofs/inode.c b/isofs/inode.c
index d848908..f9d4c41 100644
--- a/isofs/inode.c
+++ b/isofs/inode.c
@@ -430,7 +430,7 @@ read_disknode (struct node *np, struct dirrect *dr,
          != (TF_CREATION|TF_ACCESS|TF_MODIFY)))
     {
       struct timespec ts;
-      isodate_915 (dr->date, &ts);
+      isodate_915 ((char *) dr->date, &ts);
       st->st_ctim = st->st_mtim = st->st_atim = ts;
     }
 
diff --git a/isofs/lookup.c b/isofs/lookup.c
index 2ff3049..b5b814d 100644
--- a/isofs/lookup.c
+++ b/isofs/lookup.c
@@ -184,7 +184,7 @@ dirscanblock (void *blkaddr, const char *name, size_t 
namelen,
        break;
 
       /* Check to see if the name matches the directory entry. */
-      if (isonamematch (entry->name, entry_namelen, name, namelen))
+      if (isonamematch ((const char *) entry->name, entry_namelen, name, 
namelen))
        matchnormal = 1;
       else
        matchnormal = 0;
diff --git a/isofs/pager.c b/isofs/pager.c
index 7a38ba3..d72a514 100644
--- a/isofs/pager.c
+++ b/isofs/pager.c
@@ -68,6 +68,9 @@ pager_read_page (struct user_pager_info *upi,
     }
 
   err = store_read (store, addr, vm_page_size, (void **) buf, &read);
+  if (err)
+    return err;
+
   if (read != vm_page_size)
     return EIO;
 
diff --git a/libdiskfs/peropen-make.c b/libdiskfs/peropen-make.c
index b11b2ad..eba037f 100644
--- a/libdiskfs/peropen-make.c
+++ b/libdiskfs/peropen-make.c
@@ -38,6 +38,13 @@ diskfs_make_peropen (struct node *np, int flags, struct 
peropen *context,
 
   if (context)
     {
+      if (context->path)
+       {
+         po->path = strdup (context->path);
+         if (! po->path)
+           return ENOMEM;
+       }
+
       po->root_parent = context->root_parent;
       if (po->root_parent != MACH_PORT_NULL)
        mach_port_mod_refs (mach_task_self (), po->root_parent, 
@@ -51,13 +58,6 @@ diskfs_make_peropen (struct node *np, int flags, struct 
peropen *context,
       if (po->shadow_root_parent != MACH_PORT_NULL)
        mach_port_mod_refs (mach_task_self (), po->shadow_root_parent, 
                            MACH_PORT_RIGHT_SEND, 1);
-
-      if (context->path)
-       {
-         po->path = strdup (context->path);
-         if (! po->path)
-           return ENOMEM;
-       }
     }
   else
     {
diff --git a/libfshelp/fshelp.h b/libfshelp/fshelp.h
index 43fbcd7..a7702ca 100644
--- a/libfshelp/fshelp.h
+++ b/libfshelp/fshelp.h
@@ -258,7 +258,7 @@ fshelp_exec_reauth (int suid, uid_t uid, int sgid, gid_t 
gid,
 struct argp;                   /* Include <argp.h> to get the real thing.  */
 
 /* Invoke ARGP with data from DATA & LEN, in the standard way.  */
-error_t fshelp_set_options (struct argp *argp, int flags,
+error_t fshelp_set_options (const struct argp *argp, int flags,
                            const char *argz, size_t argz_len, void *input);
 
 
diff --git a/libfshelp/set-options.c b/libfshelp/set-options.c
index 77cdba1..a627b84 100644
--- a/libfshelp/set-options.c
+++ b/libfshelp/set-options.c
@@ -32,7 +32,7 @@
 
 /* Invoke ARGP with data from DATA & LEN, in the standard way.  */
 error_t
-fshelp_set_options (struct argp *argp, int flags,
+fshelp_set_options (const struct argp *argp, int flags,
                    const char *argz, size_t argz_len, void *input)
 {
   int argc = argz_count (argz, argz_len);
diff --git a/libfshelp/translator-list.c b/libfshelp/translator-list.c
index a24d976..99a858f 100644
--- a/libfshelp/translator-list.c
+++ b/libfshelp/translator-list.c
@@ -27,6 +27,7 @@
 #include <pthread.h>
 #include <stdlib.h>
 #include <string.h>
+#include <libgen.h>
 
 #include "fshelp.h"
 
diff --git a/libmachdev/ds_routines.c b/libmachdev/ds_routines.c
index 6345755..d22fb2f 100644
--- a/libmachdev/ds_routines.c
+++ b/libmachdev/ds_routines.c
@@ -166,7 +166,7 @@ ds_device_open (mach_port_t open_port, mach_port_t 
reply_port,
                char *name, device_t *devp, mach_msg_type_name_t *devicePoly)
 {
   int i;
-  io_return_t err;
+  io_return_t err = D_NO_SUCH_DEVICE;
 
   /* Open must be called on the master device port.  */
   if (!is_master_device (open_port))
diff --git a/libnetfs/make-peropen.c b/libnetfs/make-peropen.c
index 733bfdc..7f2df05 100644
--- a/libnetfs/make-peropen.c
+++ b/libnetfs/make-peropen.c
@@ -25,7 +25,10 @@ struct peropen *
 netfs_make_peropen (struct node *np, int flags, struct peropen *context)
 {
   struct peropen *po = malloc (sizeof (struct peropen));
-  
+
+  if (!po)
+    return NULL;
+
   po->filepointer = 0;
   po->lock_status = LOCK_UN;
   po->refcnt = 0;
@@ -35,6 +38,15 @@ netfs_make_peropen (struct node *np, int flags, struct 
peropen *context)
 
   if (context)
     {
+      if (context->path)
+       {
+         po->path = strdup (context->path);
+         if (! po->path) {
+           free(po);
+           return NULL;
+         }
+       }
+
       po->root_parent = context->root_parent;
       if (po->root_parent != MACH_PORT_NULL)
        mach_port_mod_refs (mach_task_self (), po->root_parent,
@@ -48,13 +60,6 @@ netfs_make_peropen (struct node *np, int flags, struct 
peropen *context)
       if (po->shadow_root_parent != MACH_PORT_NULL)
        mach_port_mod_refs (mach_task_self (), po->shadow_root_parent,
                            MACH_PORT_RIGHT_SEND, 1);
-
-      if (context->path)
-       {
-         po->path = strdup (context->path);
-         if (! po->path)
-           return ENOMEM;
-       }
     }
 
   netfs_nref (np);
diff --git a/libpipe/pipe.c b/libpipe/pipe.c
index 1ddaf12..1080b5d 100644
--- a/libpipe/pipe.c
+++ b/libpipe/pipe.c
@@ -20,6 +20,7 @@
 
 #include <string.h>            /* For bzero() */
 #include <assert.h>
+#include <stdlib.h>
 
 #include <mach/time_value.h>
 #include <mach/mach_host.h>
diff --git a/libps/write.c b/libps/write.c
index 83be42a..1f7f52c 100644
--- a/libps/write.c
+++ b/libps/write.c
@@ -52,7 +52,7 @@ flush (const char **beg, const char *new, FILE *s)
 /* Write T to S, up to MAX characters (unless MAX == 0), making sure not to
    write any unprintable characters.  */ 
 error_t
-noise_write (const unsigned char *t, ssize_t max, FILE *s)
+noise_write (const char *t, ssize_t max, FILE *s)
 {
   int ch;
   const char *ok = t;
diff --git a/libtrivfs/io-restrict-auth.c b/libtrivfs/io-restrict-auth.c
index 61c0772..db3c99a 100644
--- a/libtrivfs/io-restrict-auth.c
+++ b/libtrivfs/io-restrict-auth.c
@@ -24,7 +24,7 @@ the Free Software Foundation, 675 Mass Ave, Cambridge, MA 
02139, USA.  */
 
 /* Tell if the array LIST (of size N) contains a member equal to QUERY. */
 static inline int
-listmember (int *list, int query, int n)
+listmember (const uid_t *list, uid_t query, int n)
 {
   int i;
   for (i = 0; i < n; i++)
@@ -42,7 +42,7 @@ trivfs_S_io_restrict_auth (struct trivfs_protid *cred,
                           uid_t *uids, size_t nuids,
                           uid_t *gids, size_t ngids)
 {
-  int i;
+  unsigned int i;
   error_t err;
   struct trivfs_protid *newcred;
   struct idvec *uvec, *gvec;
diff --git a/pflocal/io.c b/pflocal/io.c
index 0dec56e..00e859a 100644
--- a/pflocal/io.c
+++ b/pflocal/io.c
@@ -63,7 +63,7 @@ S_io_read (struct sock_user *user,
   else if (!err)
     {
       err =
-       pipe_read (pipe, user->sock->flags & SOCK_NONBLOCK, NULL,
+       pipe_read (pipe, user->sock->flags & PFLOCAL_SOCK_NONBLOCK, NULL,
                   data, data_len, amount);
       pipe_release_reader (pipe);
     }
@@ -104,7 +104,7 @@ S_io_write (struct sock_user *user,
 
       if (!err)
        {
-         err = pipe_write (pipe, user->sock->flags & SOCK_NONBLOCK,
+         err = pipe_write (pipe, user->sock->flags & PFLOCAL_SOCK_NONBLOCK,
                            source_addr, data, data_len, amount);
          if (err && source_addr)
            ports_port_deref (source_addr);
@@ -308,7 +308,7 @@ S_io_stat (struct sock_user *user, struct stat *st)
   struct sock *sock;
   struct pipe *rpipe, *wpipe;
 
-  void copy_time (time_value_t *from, time_t *to_sec, unsigned long *to_nsec)
+  void copy_time (time_value_t *from, time_t *to_sec, long *to_nsec)
     {
       *to_sec = from->seconds;
       *to_nsec = from->microseconds * 1000;
@@ -365,9 +365,9 @@ S_io_get_openmodes (struct sock_user *user, int *bits)
   flags = user->sock->flags;
   *bits =
       O_APPEND                 /* pipes always append */
-    | (flags & SOCK_NONBLOCK ? O_NONBLOCK : 0)
-    | (flags & SOCK_SHUTDOWN_READ ? 0 : O_READ)
-    | (flags & SOCK_SHUTDOWN_WRITE ? 0 : O_WRITE);
+    | (flags & PFLOCAL_SOCK_NONBLOCK ? O_NONBLOCK : 0)
+    | (flags & PFLOCAL_SOCK_SHUTDOWN_READ ? 0 : O_READ)
+    | (flags & PFLOCAL_SOCK_SHUTDOWN_WRITE ? 0 : O_WRITE);
   return 0;
 }
 
@@ -379,9 +379,9 @@ S_io_set_all_openmodes (struct sock_user *user, int bits)
 
   pthread_mutex_lock (&user->sock->lock);
   if (bits & O_NONBLOCK)
-    user->sock->flags |= SOCK_NONBLOCK;
+    user->sock->flags |= PFLOCAL_SOCK_NONBLOCK;
   else
-    user->sock->flags &= ~SOCK_NONBLOCK;
+    user->sock->flags &= ~PFLOCAL_SOCK_NONBLOCK;
   pthread_mutex_unlock (&user->sock->lock);
 
   return 0;
@@ -395,7 +395,7 @@ S_io_set_some_openmodes (struct sock_user *user, int bits)
 
   pthread_mutex_lock (&user->sock->lock);
   if (bits & O_NONBLOCK)
-    user->sock->flags |= SOCK_NONBLOCK;
+    user->sock->flags |= PFLOCAL_SOCK_NONBLOCK;
   pthread_mutex_unlock (&user->sock->lock);
 
   return 0;
@@ -409,7 +409,7 @@ S_io_clear_some_openmodes (struct sock_user *user, int bits)
 
   pthread_mutex_lock (&user->sock->lock);
   if (bits & O_NONBLOCK)
-    user->sock->flags &= ~SOCK_NONBLOCK;
+    user->sock->flags &= ~PFLOCAL_SOCK_NONBLOCK;
   pthread_mutex_unlock (&user->sock->lock);
 
   return 0;
diff --git a/pflocal/sock.c b/pflocal/sock.c
index ac66eac..442205a 100644
--- a/pflocal/sock.c
+++ b/pflocal/sock.c
@@ -45,11 +45,11 @@ sock_acquire_read_pipe (struct sock *sock, struct pipe 
**pipe)
     /* SOCK may have a read pipe even before it's connected, so make
        sure it really is.  */
     if (   !(sock->pipe_class->flags & PIPE_CLASS_CONNECTIONLESS)
-       && !(sock->flags & SOCK_CONNECTED))
+       && !(sock->flags & PFLOCAL_SOCK_CONNECTED))
       err = ENOTCONN;
     else
       pipe_acquire_reader (*pipe);
-  else if (sock->flags & SOCK_SHUTDOWN_READ)
+  else if (sock->flags & PFLOCAL_SOCK_SHUTDOWN_READ)
     /* Reading on a socket with the read-half shutdown always acts as if the
        pipe were at eof, even if the socket isn't connected yet [at least in
        netbsd].  */
@@ -74,7 +74,7 @@ sock_acquire_write_pipe (struct sock *sock, struct pipe 
**pipe)
   *pipe = sock->write_pipe;
   if (*pipe != NULL)
     pipe_acquire_writer (*pipe); /* Do this before unlocking the sock!  */
-  else if (sock->flags & SOCK_SHUTDOWN_WRITE)
+  else if (sock->flags & PFLOCAL_SOCK_SHUTDOWN_WRITE)
     /* Writing on a socket with the write-half shutdown always acts as if the
        pipe were broken, even if the socket isn't connected yet [at least in
        netbsd].  */
@@ -133,7 +133,7 @@ sock_create (struct pipe_class *pipe_class, mode_t mode, 
struct sock **sock)
 void
 sock_free (struct sock *sock)
 {
-  sock_shutdown (sock, SOCK_SHUTDOWN_READ | SOCK_SHUTDOWN_WRITE);
+  sock_shutdown (sock, PFLOCAL_SOCK_SHUTDOWN_READ | 
PFLOCAL_SOCK_SHUTDOWN_WRITE);
   if (sock->id != MACH_PORT_NULL)
     mach_port_destroy (mach_task_self (), sock->id);
   if (sock->listen_queue)
@@ -164,7 +164,7 @@ sock_clone (struct sock *template, struct sock **sock)
     return err;
 
   /* Copy some properties from TEMPLATE.  */
-  (*sock)->flags = template->flags & ~SOCK_CONNECTED;
+  (*sock)->flags = template->flags & ~PFLOCAL_SOCK_CONNECTED;
 
   return 0;
 }
@@ -382,11 +382,11 @@ sock_connect (struct sock *sock1, struct sock *sock2)
 
   void connect (struct sock *wr, struct sock *rd)
     {
-      if (!(   (wr->flags & SOCK_SHUTDOWN_WRITE)
-           || (rd->flags & SOCK_SHUTDOWN_READ)))
+      if (!(   (wr->flags & PFLOCAL_SOCK_SHUTDOWN_WRITE)
+           || (rd->flags & PFLOCAL_SOCK_SHUTDOWN_READ)))
        {
          struct pipe *pipe = rd->read_pipe;
-         assert (pipe);        /* Since SOCK_SHUTDOWN_READ isn't set.  */
+         assert (pipe);        /* Since PFLOCAL_SOCK_SHUTDOWN_READ isn't set.  
*/
          pipe_add_writer (pipe);
          wr->write_pipe = pipe;
        }
@@ -402,7 +402,7 @@ sock_connect (struct sock *sock1, struct sock *sock2)
     /* If SOCK1 == SOCK2, then we get a fifo!  */
     pthread_mutex_lock (&sock2->lock);
 
-  if ((sock1->flags & SOCK_CONNECTED) || (sock2->flags & SOCK_CONNECTED))
+  if ((sock1->flags & PFLOCAL_SOCK_CONNECTED) || (sock2->flags & 
SOCK_CONNECTED))
     /* An already-connected socket.  */
     err = EISCONN;
   else
@@ -416,11 +416,11 @@ sock_connect (struct sock *sock1, struct sock *sock2)
       /* Only make the reverse for connection-oriented protocols.  */
       if (! (sock1->pipe_class->flags & PIPE_CLASS_CONNECTIONLESS))
        {
-         sock1->flags |= SOCK_CONNECTED;
+         sock1->flags |= PFLOCAL_SOCK_CONNECTED;
          if (sock1 != sock2)
            {
              connect (sock2, sock1);
-             sock2->flags |= SOCK_CONNECTED;
+             sock2->flags |= PFLOCAL_SOCK_CONNECTED;
            }
        }
     }
@@ -442,7 +442,7 @@ sock_connect (struct sock *sock1, struct sock *sock2)
 /* ---------------------------------------------------------------- */
 
 /* Shutdown either the read or write halves of SOCK, depending on whether the
-   SOCK_SHUTDOWN_READ or SOCK_SHUTDOWN_WRITE flags are set in FLAGS.  */
+   PFLOCAL_SOCK_SHUTDOWN_READ or PFLOCAL_SOCK_SHUTDOWN_WRITE flags are set in 
FLAGS.  */
 void
 sock_shutdown (struct sock *sock, unsigned flags)
 {
@@ -455,13 +455,13 @@ sock_shutdown (struct sock *sock, unsigned flags)
   old_flags = sock->flags;
   sock->flags |= flags;
 
-  if (flags & SOCK_SHUTDOWN_READ && !(old_flags & SOCK_SHUTDOWN_READ))
+  if (flags & PFLOCAL_SOCK_SHUTDOWN_READ && !(old_flags & SOCK_SHUTDOWN_READ))
     {
       /* Shutdown the read half.  */
       read_pipe = sock->read_pipe;
       sock->read_pipe = NULL;
     }
-  if (flags & SOCK_SHUTDOWN_WRITE && !(old_flags & SOCK_SHUTDOWN_WRITE))
+  if (flags & PFLOCAL_SOCK_SHUTDOWN_WRITE && !(old_flags & 
SOCK_SHUTDOWN_WRITE))
     {
       /* Shutdown the write half.  */
       write_pipe = sock->write_pipe;
diff --git a/pflocal/sock.h b/pflocal/sock.h
index fb2db5a..5800420 100644
--- a/pflocal/sock.h
+++ b/pflocal/sock.h
@@ -85,10 +85,10 @@ struct sock
 };
 
 /* Socket flags */
-#define SOCK_CONNECTED         0x1 /* A connected connection-oriented sock. */
-#define SOCK_NONBLOCK          0x2 /* Don't block on I/O.  */
-#define SOCK_SHUTDOWN_READ     0x4 /* The read-half has been shutdown.  */
-#define SOCK_SHUTDOWN_WRITE    0x8 /* The write-half has been shutdown.  */
+#define PFLOCAL_SOCK_CONNECTED         0x1 /* A connected connection-oriented 
sock. */
+#define PFLOCAL_SOCK_NONBLOCK          0x2 /* Don't block on I/O.  */
+#define PFLOCAL_SOCK_SHUTDOWN_READ     0x4 /* The read-half has been shutdown. 
 */
+#define PFLOCAL_SOCK_SHUTDOWN_WRITE    0x8 /* The write-half has been 
shutdown.  */
 
 /* Returns the pipe that SOCK is reading from in PIPE, locked and with an
    additional reference, or an error saying why it's not possible.  NULL may
@@ -143,7 +143,7 @@ error_t sock_get_addr (struct sock *sock, struct addr 
**addr);
 error_t sock_get_write_addr_port (struct sock *sock, mach_port_t *addr_port);
 
 /* Shutdown either the read or write halves of SOCK, depending on whether the
-   SOCK_SHUTDOWN_READ or SOCK_SHUTDOWN_WRITE flags are set in FLAGS.  */
+   PFLOCAL_SOCK_SHUTDOWN_READ or PFLOCAL_SOCK_SHUTDOWN_WRITE flags are set in 
FLAGS.  */
 void sock_shutdown (struct sock *sock, unsigned flags);
 
 /* Return a new address, not connected to any socket yet, ADDR.  */
diff --git a/pflocal/socket.c b/pflocal/socket.c
index ce1edd8..6723734 100644
--- a/pflocal/socket.c
+++ b/pflocal/socket.c
@@ -109,8 +109,8 @@ S_socket_connect (struct sock_user *user, struct addr *addr)
          if (sock->connect_queue)
            /* SOCK is already doing a connect.  */
            err = EALREADY;
-         else if (sock->flags & SOCK_CONNECTED)
-           /* SOCK_CONNECTED is only set for connection-oriented sockets,
+         else if (sock->flags & PFLOCAL_SOCK_CONNECTED)
+           /* PFLOCAL_SOCK_CONNECTED is only set for connection-oriented 
sockets,
               which can only ever connect once.  [If we didn't do this test
               here, it would eventually fail when the listening socket
               tried to accept our connection request.]  */
@@ -124,7 +124,7 @@ S_socket_connect (struct sock_user *user, struct addr *addr)
              pthread_mutex_unlock (&sock->lock);
 
              err = connq_connect (peer->listen_queue,
-                                  sock->flags & SOCK_NONBLOCK);
+                                  sock->flags & PFLOCAL_SOCK_NONBLOCK);
              if (!err)
                {
                  struct sock *server;
@@ -182,7 +182,7 @@ S_socket_accept (struct sock_user *user,
       struct sock *peer_sock;
 
       err = connq_listen (sock->listen_queue,
-                         (sock->flags & SOCK_NONBLOCK) ? &noblock : NULL,
+                         (sock->flags & PFLOCAL_SOCK_NONBLOCK) ? &noblock : 
NULL,
                          &peer_sock);
       if (!err)
        {
@@ -229,8 +229,8 @@ S_socket_shutdown (struct sock_user *user, int what)
   if (! user)
     return EOPNOTSUPP;
   sock_shutdown (user->sock,
-                  (what != 1 ? SOCK_SHUTDOWN_READ : 0)
-                | (what != 0 ? SOCK_SHUTDOWN_WRITE : 0));
+                  (what != 1 ? PFLOCAL_SOCK_SHUTDOWN_READ : 0)
+                | (what != 0 ? PFLOCAL_SOCK_SHUTDOWN_WRITE : 0));
   return 0;
 }
 
@@ -325,7 +325,7 @@ S_socket_send (struct sock_user *user, struct addr 
*dest_addr, int flags,
        
       if (!err)
        {
-         err = pipe_send (pipe, sock->flags & SOCK_NONBLOCK,
+         err = pipe_send (pipe, sock->flags & PFLOCAL_SOCK_NONBLOCK,
                           source_addr, data, data_len,
                           control, control_len, ports, num_ports,
                           amount);
@@ -391,7 +391,7 @@ S_socket_recv (struct sock_user *user,
   else if (!err)
     {
       err =
-       pipe_recv (pipe, user->sock->flags & SOCK_NONBLOCK, &flags,
+       pipe_recv (pipe, user->sock->flags & PFLOCAL_SOCK_NONBLOCK, &flags,
                   &source_addr, data, data_len, amount,
                   control, control_len, ports, num_ports);
       pipe_release_reader (pipe);
diff --git a/proc/mgt.c b/proc/mgt.c
index c093b8f..d7ad296 100644
--- a/proc/mgt.c
+++ b/proc/mgt.c
@@ -862,7 +862,7 @@ genpid ()
 {
 #define WRAP_AROUND 30000
 #define START_OVER 100
-  static int nextpid = 0;
+  static int nextpid = 1;
   static int wrap = WRAP_AROUND;
 
   while (nextpid < wrap && !pidfree (nextpid))
diff --git a/sutils/MAKEDEV.sh b/sutils/MAKEDEV.sh
index 1d164c7..0a8f514 100644
--- a/sutils/MAKEDEV.sh
+++ b/sutils/MAKEDEV.sh
@@ -116,7 +116,7 @@ mkdev() {
       full)
        st $I root 666 /hurd/null --full;;
       zero)
-       st $I root 666 /hurd/storeio -Tzero;;
+       st $I root 666 /bin/nullauth -- /hurd/storeio -Tzero;;
       tty)
        st $I root 666 /hurd/magic tty;;
       fd)
diff --git a/term/hurdio.c b/term/hurdio.c
index dfade0e..357ab38 100644
--- a/term/hurdio.c
+++ b/term/hurdio.c
@@ -598,7 +598,7 @@ hurdio_mdmctl (int how, int bits)
       else
        newbits = bits;
 
-      err = tioctl_tiocmods (ioport, oldbits);
+      err = tioctl_tiocmods (ioport, newbits);
       if (err && (err == EMIG_BAD_ID || err == EOPNOTSUPP))
        tioc_caps &= ~TIOC_CAP_MODS;
       else if (err)
diff --git a/term/users.c b/term/users.c
index 529693e..9d745c6 100644
--- a/term/users.c
+++ b/term/users.c
@@ -438,7 +438,7 @@ S_term_open_ctty (mach_port_t arg,
 
   pthread_mutex_lock (&global_lock);
 
-  if (!cred->po->openmodes & (O_READ|O_WRITE))
+  if (!(cred->po->openmodes & (O_READ|O_WRITE)))
     {
       pthread_mutex_unlock (&global_lock);
       err = EBADF;
@@ -679,7 +679,7 @@ trivfs_S_io_read (struct trivfs_protid *cred,
 
   while (!qsize (inputq))
     {
-      if ((termflags & NO_CARRIER) && !(termstate.c_cflag & CLOCAL) || !amount)
+      if (((termflags & NO_CARRIER) && !(termstate.c_cflag & CLOCAL)) || 
!amount)
        {
          /* Return EOF, Posix.1 7.1.1.10. */
          pthread_mutex_unlock (&global_lock);
@@ -1269,7 +1269,7 @@ S_tioctl_tiocsetd (io_t port,
     err = 0;
 
   ports_port_deref (cred);
-  return 0;
+  return err;
 }
 
 /* TIOCDRAIN -- Wait for output to drain */
diff --git a/trans/Makefile b/trans/Makefile
index 6eb51d0..291df2f 100644
--- a/trans/Makefile
+++ b/trans/Makefile
@@ -28,7 +28,7 @@ SRCS = ifsock.c symlink.c magic.c null.c fifo.c new-fifo.c 
fwd.c \
 OBJS = $(SRCS:.c=.o) fsysServer.o ifsockServer.o passwordServer.o \
        crashServer.o crash_replyUser.o msgServer.o \
        default_pagerServer.o default_pagerUser.o \
-       device_replyServer.o elfcore.o fsysUser.o
+       device_replyServer.o elfcore.o
 HURDLIBS = ports netfs trivfs iohelp fshelp pipe ihash shouldbeinlibc
 LDLIBS += -lpthread
 password-LDLIBS = $(LIBCRYPT)
diff --git a/utils/Makefile b/utils/Makefile
index c079016..46abf2a 100644
--- a/utils/Makefile
+++ b/utils/Makefile
@@ -31,7 +31,7 @@ SRCS = shd.c ps.c settrans.c syncfs.c showtrans.c addauth.c 
rmauth.c \
        parse.c frobauth.c frobauth-mod.c setauth.c pids.c nonsugid.c \
        unsu.c ftpcp.c ftpdir.c storeread.c storecat.c msgport.c \
        rpctrace.c mount.c gcore.c fakeauth.c fakeroot.sh remap.sh \
-       nullauth.c
+       nullauth.c match-options.c
 
 OBJS = $(filter-out %.sh,$(SRCS:.c=.o))
 HURDLIBS = ps ihash store fshelp ports ftpconn shouldbeinlibc
diff --git a/utils/rpctrace.c b/utils/rpctrace.c
index 281991c..ef7ab53 100644
--- a/utils/rpctrace.c
+++ b/utils/rpctrace.c
@@ -152,7 +152,7 @@ parse_msgid_list (const char *filename)
       ++lineno;
       if (buffer[0] == '#' || buffer[0] == '\0')
        continue;
-      if (sscanf (buffer, "%as %*u %as %*u %u %*u\n",
+      if (sscanf (buffer, "%ms %*u %ms %*u %u %*u\n",
                  &subsystem, &name, &msgid) != 3)
        error (0, 0, "%s:%u: invalid format in RPC list file",
               filename, lineno);
diff --git a/utils/storeinfo.c b/utils/storeinfo.c
index a738d50..8a9567e 100644
--- a/utils/storeinfo.c
+++ b/utils/storeinfo.c
@@ -251,7 +251,6 @@ main (int argc, char *argv[])
            {
              file_t file = file_name_lookup (arg, deref ? 0 : O_NOLINK, 0);
              info (file, arg, errno);
-             mach_port_deallocate (mach_task_self (), file);
            }
          break;
 

-- 
Alioth's /usr/local/bin/git-commit-notice on 
/srv/git.debian.org/git/pkg-hurd/hurd.git



reply via email to

[Prev in Thread] Current Thread [Next in Thread]