--- a/Config.h
+++ b/Config.h
@@ -50,6 +50,14 @@
    binkd loads it for tray icon */
 #define BINKD_ICON_FILE "binkd.ico"
 
+/* for the benefit of Hurd systems, which are too good to have static limits */
+#ifndef _MAX_PATH
+#  define _MAX_PATH 512
+#endif
+#ifndef MAXPATHLEN
+#  define MAXPATHLEN _MAX_PATH
+#endif
+
 /* Please, no spaces here! */
 #define PRTCLNAME "binkp"
 #define PRTCLVER "1.1"
--- a/md5b.c
+++ b/md5b.c
@@ -94,8 +94,7 @@ Rotation is separate from addition to pr
 
 /* MD5 initialization. Begins an MD5 operation, writing a new context.
  */
-static void MD5Init (context)
-MD5_CTX *context;                                        /* context */
+static void MD5Init (MD5_CTX *context)
 {
   context->count[0] = context->count[1] = 0;
   /* Load magic initialization constants.
@@ -110,10 +109,7 @@ MD5_CTX *context;
   operation, processing another message block, and updating the
   context.
  */
-static void MD5Update (context, input, inputLen)
-MD5_CTX *context;                                        /* context */
-unsigned char *input;                                /* input block */
-unsigned int inputLen;                     /* length of input block */
+static void MD5Update (MD5_CTX *context, unsigned char *input, unsigned int inputLen)
 {
   unsigned int i, index, partLen;
 
@@ -151,9 +147,7 @@ unsigned int inputLen;
 /* MD5 finalization. Ends an MD5 message-digest operation, writing the
   the message digest and zeroizing the context.
  */
-static void MD5Final (digest, context)
-unsigned char digest[16];                         /* message digest */
-MD5_CTX *context;                                       /* context */
+static void MD5Final (unsigned char digest[16], MD5_CTX *context)
 {
   unsigned char bits[8];
   unsigned int index, padLen;
@@ -180,9 +174,7 @@ MD5_CTX *context;
 
 /* MD5 basic transformation. Transforms state based on block.
  */
-static void MD5Transform (state, block)
-UINT4 state[4];
-unsigned char block[64];
+static void MD5Transform (UINT4 state[4], unsigned char block[64])
 {
   UINT4 a = state[0], b = state[1], c = state[2], d = state[3], x[16];
 
@@ -273,10 +265,7 @@ unsigned char block[64];
 /* Encodes input (UINT4) into output (unsigned char). Assumes len is
   a multiple of 4.
  */
-static void Encode (output, input, len)
-unsigned char *output;
-UINT4 *input;
-unsigned int len;
+static void Encode (unsigned char *output, UINT4 *input, unsigned int len)
 {
   unsigned int i, j;
 
@@ -291,10 +280,7 @@ unsigned int len;
 /* Decodes input (unsigned char) into output (UINT4). Assumes len is
   a multiple of 4.
  */
-static void Decode (output, input, len)
-UINT4 *output;
-unsigned char *input;
-unsigned int len;
+static void Decode (UINT4 *output, unsigned char *input, unsigned int len)
 {
   unsigned int i, j;
 
@@ -306,10 +292,7 @@ unsigned int len;
 /* Note: Replace "for loop" with standard memcpy if possible.
  */
 
-static void MD5_memcpy (output, input, len)
-POINTER output;
-POINTER input;
-unsigned int len;
+static void MD5_memcpy (POINTER output, POINTER input, unsigned int len)
 {
   unsigned int i;
 
@@ -319,10 +302,7 @@ unsigned int len;
 
 /* Note: Replace "for loop" with standard memset if possible.
  */
-static void MD5_memset (output, value, len)
-POINTER output;
-int value;
-unsigned int len;
+static void MD5_memset (POINTER output, int value, unsigned int len)
 {
   unsigned int i;
 
@@ -332,13 +312,7 @@ unsigned int len;
 
 /* ---------------------------------------------------------- */
 static void
-hmac_md5(text, text_len, key, key_len, digest)
-unsigned char*  text;                /* pointer to data stream */
-int             text_len;            /* length of data stream */
-unsigned char*  key;                 /* pointer to authentication key */
-int             key_len;             /* length of authentication key */
-MDcaddr_t         digest;              /* caller digest to be filled in */
-
+hmac_md5(unsigned char *text, int text_len, unsigned char *key, int key_len, MDcaddr_t digest)
 {
         MD5_CTX context;
         unsigned char k_ipad[65];    /* inner padding -
--- a/md5b.h
+++ b/md5b.h
@@ -34,7 +34,7 @@ documentation and/or software.
   been defined with C compiler flags.
  */
 #ifndef PROTOTYPES
-#define PROTOTYPES 0
+#define PROTOTYPES 1
 #endif
 
 /* POINTER defines a generic pointer type */
--- a/unix/setpttl.c
+++ b/unix/setpttl.c
@@ -115,10 +115,7 @@ char		**Argv = NULL;		/* pointer to argu
 char		*LastArgv = NULL;	/* end of argv */
 
 void
-initsetproctitle(argc, argv, envp)
-	int argc;
-	char **argv;
-	char **envp;
+initsetproctitle(int argc, char **argv, char **envp)
 {
 	register int i, envpsize = 0;
 	extern char **environ;
