Index: util-hurd-20170102/mboxfs/netfs.c
===================================================================
--- util-hurd-20170102.orig/mboxfs/netfs.c
+++ util-hurd-20170102/mboxfs/netfs.c
@@ -357,7 +357,7 @@ netfs_attempt_syncfs (struct iouser *cre
    CRED. NP is locked.  */
 error_t
 netfs_set_translator (struct iouser *cred, struct node *np,
-    const char *argz, size_t argzlen)
+    const char *argz, mach_msg_type_number_t argzlen)
 {
   return EROFS;
 }
@@ -369,7 +369,7 @@ netfs_set_translator (struct iouser *cre
    *ARGZ_LEN to the total length.  */
 error_t
 netfs_get_translator (struct node *node, char **argz,
-			      size_t *argz_len)
+			      mach_msg_type_number_t *argz_len)
 {
   *argz_len = 0;
   *argz = (char*)malloc (sizeof (char));
@@ -521,7 +521,7 @@ netfs_attempt_create_file (struct iouser
    list of the arguments to this translator.  The default definition of this
    routine simply calls netfs_append_std_options.  */
 error_t
-netfs_append_args (char **argz, unsigned *argz_len)
+netfs_append_args (char **argz, size_t *argz_len)
 {
   error_t err = 0;
   if (backend.get_args)
Index: util-hurd-20170102/mboxfs/backend.h
===================================================================
--- util-hurd-20170102.orig/mboxfs/backend.h
+++ util-hurd-20170102/mboxfs/backend.h
@@ -60,7 +60,7 @@ struct fs_backend
   void (* get_argp)(struct argp *s);
 
   /* Get arguments (see netfs_append_args()). */
-  error_t (*get_args)(char **argz, unsigned *argz_len);
+  error_t (*get_args)(char **argz, size_t *argz_len);
 
   /* Set options (see netfs_set_options()). */
   error_t (*set_options)(const char *argz, size_t argz_len);
Index: util-hurd-20170102/mboxfs/mboxfs.c
===================================================================
--- util-hurd-20170102.orig/mboxfs/mboxfs.c
+++ util-hurd-20170102/mboxfs/mboxfs.c
@@ -122,7 +122,7 @@ mboxfs_get_argp (struct argp *a)
  * of arguments.
  */
 error_t
-mboxfs_get_args (char **argz, unsigned *argz_len)
+mboxfs_get_args (char **argz, size_t *argz_len)
 {
   error_t err = 0;
 
@@ -905,23 +905,26 @@ mboxfs_read_text_node (struct node *np,
   else
   {
     void* d = data;
+    mach_msg_type_number_t num = *len;
 
     if (mbox == MACH_PORT_NULL)
       mbox = file_name_lookup (main_context.path, O_READ, 0);
 
     assert (mbox != MACH_PORT_NULL);
     size = end - start - offset;
-    size = (size > *len)?(*len):size;
-    *len = size;
-    err  = io_read (mbox, (data_t*)&data, len, start + offset, size);
-    assert (*len <= size);
+    size = (size > num)?(num):size;
+    num = size;
+    err  = io_read (mbox, (data_t*)&data, &num, start + offset, size);
+    assert (num <= size);
 
     /* Checks whether io_read() has allocated a new buffer. */
     if (data != d)	// this shouldn't happen
     {
-      memcpy (d, data, *len);
-      munmap (data, *len);
+      memcpy (d, data, num);
+      munmap (data, num);
     }
+
+    *len = num;
   }
   return err;
 }
--- util-hurd-20170102.orig/mboxfs/mutt/mbox.c
+++ util-hurd-20170102/mboxfs/mutt/mbox.c
@@ -103,6 +103,10 @@ int mmdf_parse_mailbox (CONTEXT *ctx)
 
   buf[sizeof (buf) - 1] = 0;
   
+  /* precompute the local timezone to speed up calculation of the
+     date received */
+  tz = mutt_local_tz (0);
+
   for (;;)
   {
     if (fgets (buf, sizeof (buf) - 1, ctx->fp) == NULL)
Index: util-hurd-20170102/memfs/memfs.c
===================================================================
--- util-hurd-20170102.orig/memfs/memfs.c
+++ util-hurd-20170102/memfs/memfs.c
@@ -281,7 +281,7 @@ kern_return_t
 trivfs_S_io_write (struct trivfs_protid *cred,
 		   mach_port_t reply, mach_msg_type_name_t reply_type,
 		   const_data_t data, mach_msg_type_number_t data_len,
-		   off_t offs, mach_msg_type_number_t *amount)
+		   off_t offs, vm_size_t *amount)
 {
   struct open *op;
 
@@ -481,7 +481,7 @@ trivfs_append_args (struct trivfs_contro
   debuglog (DEBUG_TRACE, __FUNCTION__);
 
   pthread_rwlock_rdlock (&contents_lock);
-  err = asprintf (&opt, "--size=%ud", contents_len) < 0 ? ENOMEM : 0;
+  err = asprintf (&opt, "--size=%zud", contents_len) < 0 ? ENOMEM : 0;
   pthread_rwlock_unlock (&contents_lock);
 
   if (!err)
Index: util-hurd-20170102/socketio/socketio.c
===================================================================
--- util-hurd-20170102.orig/socketio/socketio.c
+++ util-hurd-20170102/socketio/socketio.c
@@ -847,7 +847,7 @@ netfs_attempt_mkdev (struct iouser *cred
    length ARGZLEN) for user CRED. NP is locked.  */
 error_t
 netfs_set_translator (struct iouser *cred, struct node *np,
-		      const char *argz, size_t argzlen)
+		      const char *argz, mach_msg_type_number_t argzlen)
 {
   return EOPNOTSUPP;
 }
@@ -858,7 +858,7 @@ netfs_set_translator (struct iouser *cre
    storage, and return it in *ARGZ; set *ARGZ_LEN to the total length.  */
 error_t
 netfs_get_translator (struct node *node, char **argz,
-		      size_t *argz_len)
+		      mach_msg_type_number_t *argz_len)
 {
   return EOPNOTSUPP;
 }
Index: util-hurd-20170102/run/run.c
===================================================================
--- util-hurd-20170102.orig/run/run.c
+++ util-hurd-20170102/run/run.c
@@ -207,7 +207,7 @@ kern_return_t
 trivfs_S_io_read (struct trivfs_protid *cred,
                   mach_port_t reply, mach_msg_type_name_t reply_type,
                   data_t *data, mach_msg_type_number_t *data_len,
-                  off_t offs, mach_msg_type_number_t amount)
+                  off_t offs, vm_size_t amount)
 {
   struct open *op;
 
Index: util-hurd-20170102/smbfs/smbnetfs.c
===================================================================
--- util-hurd-20170102.orig/smbfs/smbnetfs.c
+++ util-hurd-20170102/smbfs/smbnetfs.c
@@ -282,13 +282,13 @@ netfs_attempt_mkdev (struct iouser * cre
 }
 
 error_t
-netfs_set_translator (struct iouser * cred, struct node * np, const char *argz,size_t argzlen)
+netfs_set_translator (struct iouser * cred, struct node * np, const char *argz, mach_msg_type_number_t argzlen)
 {
   return 0;
 }
 
 error_t
-netfs_get_translator (struct node * node, char **argz, size_t * argz_len)
+netfs_get_translator (struct node * node, char **argz, mach_msg_type_number_t * argz_len)
 {
   return 0;
 }
Index: util-hurd-20170102/tarfs/netfs.c
===================================================================
--- util-hurd-20170102.orig/tarfs/netfs.c
+++ util-hurd-20170102/tarfs/netfs.c
@@ -440,7 +440,7 @@ netfs_attempt_syncfs (struct iouser *cre
    CRED. NP is locked.  */
 error_t
 netfs_set_translator (struct iouser *cred, struct node *np,
-    const char *argz, size_t argzlen)
+    const char *argz, mach_msg_type_number_t argzlen)
 {
   return EOPNOTSUPP;
 }
@@ -452,7 +452,7 @@ netfs_set_translator (struct iouser *cre
    *ARGZ_LEN to the total length.  */
 error_t
 netfs_get_translator (struct node *node, char **argz,
-			      size_t *argz_len)
+			      mach_msg_type_number_t *argz_len)
 {
   *argz_len = 0;
   *argz = (char*)malloc (sizeof (char));
@@ -778,7 +778,7 @@ netfs_attempt_create_file (struct iouser
    list of the arguments to this translator.  The default definition of this
    routine simply calls netfs_append_std_options.  */
 error_t
-netfs_append_args (char **argz, unsigned *argz_len)
+netfs_append_args (char **argz, size_t *argz_len)
 {
   error_t err = 0;
 
Index: util-hurd-20170102/tarfs/backend.h
===================================================================
--- util-hurd-20170102.orig/tarfs/backend.h
+++ util-hurd-20170102/tarfs/backend.h
@@ -58,7 +58,7 @@ struct fs_backend
   void (* get_argp)(struct argp *s);
 
   /* Get arguments (see netfs_append_args()). */
-  error_t (*get_args)(char **argz, unsigned *argz_len);
+  error_t (*get_args)(char **argz, size_t *argz_len);
 
   /* Set options (see netfs_set_options()). */
   error_t (*set_options)(const char *argz, size_t argz_len);
Index: util-hurd-20170102/tarfs/tarfs.c
===================================================================
--- util-hurd-20170102.orig/tarfs/tarfs.c
+++ util-hurd-20170102/tarfs/tarfs.c
@@ -231,7 +231,7 @@ tarfs_get_argp (struct argp *a)
 /* Append to the malloced string *ARGZ of len *ARGZ_LEN a NULL-separated list
    of arguments.  */
 error_t
-tarfs_get_args (char **argz, unsigned *argz_len)
+tarfs_get_args (char **argz, size_t *argz_len)
 {
   error_t err = 0;
   
Index: util-hurd-20170102/tarfs/tar.c
===================================================================
--- util-hurd-20170102.orig/tarfs/tar.c
+++ util-hurd-20170102/tarfs/tar.c
@@ -22,6 +22,7 @@
 
 #include <stdlib.h>
 #include <stdio.h>
+#include <stdarg.h>
 #include <unistd.h>
 #include <sys/types.h>
 #include <sys/stat.h>
Index: util-hurd-20170102/tarfs/zipstores.c
===================================================================
--- util-hurd-20170102.orig/tarfs/zipstores.c
+++ util-hurd-20170102/tarfs/zipstores.c
@@ -191,7 +191,7 @@ store_simple_write (struct store *store,
     err = store_set_size (store, newsize);
     if (err)
     {
-      error (0, err, "Unable to set store size to %u", newsize);
+      error (0, err, "Unable to set store size to %zu", newsize);
       return err;
     }
   }
Index: util-hurd-20170102/xmlfs/netfs.c
===================================================================
--- util-hurd-20170102.orig/xmlfs/netfs.c
+++ util-hurd-20170102/xmlfs/netfs.c
@@ -311,7 +311,7 @@ error_t netfs_attempt_read (struct iouse
   size_t size = -1;
   error_t err;
 
-  DEBUG ("NOTICE: %s (node: %s, offset: %lld, len: %d)\n", 
+  DEBUG ("NOTICE: %s (node: %s, offset: %lld, len: %zd)\n", 
 	 __PRETTY_FUNCTION__, node->nn->name, offset, *len);
 
   cur = xml_find_node (node->nn->pathname);
@@ -358,7 +358,7 @@ error_t netfs_attempt_read (struct iouse
   /* Free nodes... */
   xml_find_node (NULL);
 
-  DEBUG ("NOTICE: read %d bytes of %s successfully\n", *len, node->nn->pathname);
+  DEBUG ("NOTICE: read %zd bytes of %s successfully\n", *len, node->nn->pathname);
 
   return 0;
 }
Index: util-hurd-20170102/cvsfs/netfs.c
===================================================================
--- util-hurd-20170102.orig/cvsfs/netfs.c
+++ util-hurd-20170102/cvsfs/netfs.c
@@ -749,7 +749,7 @@ netfs_get_dirents (struct iouser *cred,
   *data_entries = count;
 
   fshelp_touch (&dir->nn_stat, TOUCH_ATIME, cvsfs_maptime);
-  FUNC_EPILOGUE_FMT(err, "wrote %d entries to %d bytes.", count, size);
+  FUNC_EPILOGUE_FMT(err, "wrote %d entries to %zd bytes.", count, size);
 }
 
 
Index: util-hurd-20170102/filter/filter.c
===================================================================
--- util-hurd-20170102.orig/filter/filter.c
+++ util-hurd-20170102/filter/filter.c
@@ -343,7 +343,7 @@ error_t
 /*Attempts to set the passive translator record for `file` passing `argz`*/
 error_t
   netfs_set_translator
-  (struct iouser * cred, struct node * node, const char *argz, size_t arglen)
+  (struct iouser * cred, struct node * node, const char *argz, mach_msg_type_number_t arglen)
 {
   LOG_MSG ("netfs_set_translator");
 
@@ -450,17 +450,19 @@ error_t
   char *buf = data;
 
   /*Try to read the requested information from the file */
-  err = io_read (np->nn->port, &buf, len, offset, *len);
+  mach_msg_type_number_t num = *len;
+  err = io_read (np->nn->port, &buf, &num, offset, num);
+  *len = num;
 
   /*If some data has been read successfully */
   if (!err && (buf != data))
     {
       /*copy the data from the buffer into which it has just been read into
          the supplied receiver */
-      memcpy (data, buf, *len);
+      memcpy (data, buf, num);
 
       /*unmap the new buffer */
-      munmap (buf, *len);
+      munmap (buf, num);
     }
 
   /*Return the result of reading */
Index: util-hurd-20170102/filter/filter.h
===================================================================
--- util-hurd-20170102.orig/filter/filter.h
+++ util-hurd-20170102/filter/filter.h
@@ -154,7 +154,7 @@ error_t
 /*Attempts to set the passive translator record for `file` passing `argz`*/
 error_t
   netfs_set_translator
-  (struct iouser *cred, struct node *node, const char *argz, size_t arglen);
+  (struct iouser *cred, struct node *node, const char *argz, mach_msg_type_number_t arglen);
 /*---------------------------------------------------------------------------*/
 /*Attempts to call chflags for `node`*/
 error_t
Index: util-hurd-20170102/filter/trace.c
===================================================================
--- util-hurd-20170102.orig/filter/trace.c
+++ util-hurd-20170102/filter/trace.c
@@ -54,7 +54,7 @@ error_t
 
   /*The name and arguments of the translator being passed now */
   char *argz = NULL;
-  size_t argz_len = 0;
+  mach_msg_type_number_t argz_len = 0;
 
   /*The current working directory */
   char *cwd = NULL;
@@ -155,7 +155,7 @@ error_t
 
   char buf[256];
   char *_buf = buf;
-  size_t len = 256;
+  mach_msg_type_number_t len = 256;
   io_read (node, &_buf, &len, 0, len);
   LOG_MSG ("trace_find: Read from underlying: '%s'", buf);
 
Index: util-hurd-20170102/httpfs/netfs.c
===================================================================
--- util-hurd-20170102.orig/httpfs/netfs.c
+++ util-hurd-20170102/httpfs/netfs.c
@@ -382,7 +382,7 @@ error_t netfs_attempt_mkdev (struct ious
 /* Attempt to set the passive translator record for FILE to ARGZ (of length
    ARGZLEN) for user CRED. */
 error_t netfs_set_translator (struct iouser *cred, struct node *node,
-			const char *argz, size_t argzlen)
+			const char *argz, mach_msg_type_number_t argzlen)
 {
 	return EROFS;
 }
Index: util-hurd-20170102/nsmux/nsmux.c
===================================================================
--- util-hurd-20170102.orig/nsmux/nsmux.c
+++ util-hurd-20170102/nsmux/nsmux.c
@@ -1095,7 +1095,7 @@ error_t
 	     S_ISLNK and S_IFSOCK are handled elsewhere. */
 	  error_t short_circuited_callback1 (void *cookie1, void *cookie2,
 					     uid_t * uid, gid_t * gid,
-					     char **argz, size_t * argz_len)
+					     char **argz, mach_msg_type_name_t * argz_len)
 	  {
 	    struct node *np = cookie1;
 	    error_t err;
@@ -1449,7 +1449,7 @@ error_t
 /*Attempts to set the passive translator record for `file` passing `argz`*/
 error_t
   netfs_set_translator
-  (struct iouser * cred, struct node * node, const char *argz, size_t arglen)
+  (struct iouser * cred, struct node * node, const char *argz, mach_msg_type_number_t arglen)
 {
   LOG_MSG ("netfs_set_translator");
 
@@ -1556,17 +1556,19 @@ error_t
   char *buf = data;
 
   /*Try to read the requested information from the file */
-  err = io_read (np->nn->port, &buf, len, offset, *len);
+  mach_msg_type_number_t num = *len;
+  err = io_read (np->nn->port, &buf, &num, offset, num);
+  *len = num;
 
   /*If some data has been read successfully */
   if (!err && (buf != data))
     {
       /*copy the data from the buffer into which is has been read into the
          supplied receiver */
-      memcpy (data, buf, *len);
+      memcpy (data, buf, num);
 
       /*unmap the new buffer */
-      munmap (buf, *len);
+      munmap (buf, num);
     }
 
   /*Return the result of reading */
Index: util-hurd-20170102/nsmux/nsmux.h
===================================================================
--- util-hurd-20170102.orig/nsmux/nsmux.h
+++ util-hurd-20170102/nsmux/nsmux.h
@@ -183,7 +183,7 @@ error_t
 /*Attempts to set the passive translator record for `file` passing `argz`*/
 error_t
   netfs_set_translator
-  (struct iouser *cred, struct node *node, const char *argz, size_t arglen);
+  (struct iouser *cred, struct node *node, const char *argz, mach_msg_type_number_t arglen);
 /*---------------------------------------------------------------------------*/
 /*Attempts to call chflags for `node`*/
 error_t
Index: util-hurd-20170102/nsmux/lib.c
===================================================================
--- util-hurd-20170102.orig/nsmux/lib.c
+++ util-hurd-20170102/nsmux/lib.c
@@ -57,7 +57,7 @@ error_t dir_entries_get (file_t dir,
   char *data;
 
   /*The size of `data` */
-  size_t data_size;
+  mach_msg_type_name_t data_size;
 
   /*The number of entries in `data` */
   int entries_num;
Index: util-hurd-20170102/pptop/options.h
===================================================================
--- util-hurd-20170102.orig/pptop/options.h
+++ util-hurd-20170102/pptop/options.h
@@ -18,4 +18,5 @@
    along with this program; if not, write to the Free Software
    Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111, USA */
 
-int wait_and_check_for_quit ();
+int wait_and_check_for_quit (void);
+int get_lines (void);
Index: util-hurd-20170102/pptop/pptop.h
===================================================================
--- util-hurd-20170102.orig/pptop/pptop.h
+++ util-hurd-20170102/pptop/pptop.h
@@ -22,5 +22,6 @@
 
 int new_update(struct ps_stream *);
 int adjust_headers (int);
+int fix_head_count (void);
 
 #define MAXLINELENGTH 300	/* maximum length of a line in a terminal */
Index: util-hurd-20170102/pith/Hurd/Trivfs/Trivfs.xs
===================================================================
--- util-hurd-20170102.orig/pith/Hurd/Trivfs/Trivfs.xs
+++ util-hurd-20170102/pith/Hurd/Trivfs/Trivfs.xs
@@ -387,7 +387,7 @@ kern_return_t
 trivfs_S_io_write (struct trivfs_protid *cred,
 		   mach_port_t reply, mach_msg_type_name_t replytype,
 		   const_data_t data, mach_msg_type_number_t data_len,
-		   off_t offs, mach_msg_type_number_t *amount)
+		   off_t offs, vm_size_t *amount)
 {
   error_t ret;
   static struct cached_gv sub = { 0, "Hurd::Trivfs::_::io_write" };
@@ -412,7 +412,7 @@ trivfs_S_io_write (struct trivfs_protid
 
   error_t pull ()
     {
-      *amount = (mach_msg_type_number_t) SvIV (amountsv);
+      *amount = (vm_size_t) SvIV (amountsv);
       return 0;
     }
 
@@ -428,7 +428,7 @@ kern_return_t
 trivfs_S_io_read (struct trivfs_protid *cred,
 		  mach_port_t reply, mach_msg_type_name_t reply_type,
 		  data_t *data, mach_msg_type_number_t *data_len,
-		  off_t offs, mach_msg_type_number_t amount)
+		  off_t offs, vm_size_t amount)
 {
   error_t ret;
   static struct cached_gv sub = { 0, "Hurd::Trivfs::_::io_read" };
Index: util-hurd-20170102/pptop/options.c
===================================================================
--- util-hurd-20170102.orig/pptop/options.c
+++ util-hurd-20170102/pptop/options.c
@@ -35,6 +35,8 @@
 #include "pptop.h"
 #include "filter.h"
 #include "fields.h"
+#include "title.h"
+#include "help.h"
 
 #define _(STRING) gettext (STRING)
 #define gettext_noop(STRING) STRING
Index: util-hurd-20170102/clisp/libs/common.c
===================================================================
--- util-hurd-20170102.orig/clisp/libs/common.c
+++ util-hurd-20170102/clisp/libs/common.c
@@ -41,8 +41,8 @@ _get_module_info (void)
     {
       if (routines[i] != NULL)
 	{
-	  printf ("Routine #%d (%s): set to address %x\n", i,
-		  routine_to_str (i), (vm_size_t) routines[i]);
+	  printf ("Routine #%d (%s): set to address %p\n", i,
+		  routine_to_str (i), routines[i]);
 	}
     }
 }
