Patch from Matt Kraai to make logger log all arguments.
diff --git a/Changelog b/Changelog
index 9021211..3095c95 100644
--- a/Changelog
+++ b/Changelog
@@ -45,6 +45,7 @@
 	* Mark Whitley -- remix of xargs
 	* Jim Gleason <jimg@lineo.com> -- fixed tar so it no longer breaks 
 	    hard links.
+	* Matt Kraai -- logger now logs all arguments, not just the first
 
 
 	 -Erik Andersen
diff --git a/logger.c b/logger.c
index 1ed6dc6..1c454e5 100644
--- a/logger.c
+++ b/logger.c
@@ -149,10 +149,19 @@
 		}
 		message = buf;
 	} else {
-		if (argc >= 1)
-			message = *argv;
-		else
+		if (argc >= 1) {
+			int len = 1; /* for the '\0' */
+			for (; *argv != NULL; argv++) {
+				len += strlen(*argv);
+				len += 1;  /* for the space between the args */
+				message = xrealloc(message, len);
+				strcat(message, *argv);
+				strcat(message, " ");
+			}
+			message[strlen(message)-1] = '\0';
+		} else {
 			error_msg_and_die("No message\n");
+		}
 	}
 
 	openlog(name, option, (pri | LOG_FACMASK));
diff --git a/sysklogd/logger.c b/sysklogd/logger.c
index 1ed6dc6..1c454e5 100644
--- a/sysklogd/logger.c
+++ b/sysklogd/logger.c
@@ -149,10 +149,19 @@
 		}
 		message = buf;
 	} else {
-		if (argc >= 1)
-			message = *argv;
-		else
+		if (argc >= 1) {
+			int len = 1; /* for the '\0' */
+			for (; *argv != NULL; argv++) {
+				len += strlen(*argv);
+				len += 1;  /* for the space between the args */
+				message = xrealloc(message, len);
+				strcat(message, *argv);
+				strcat(message, " ");
+			}
+			message[strlen(message)-1] = '\0';
+		} else {
 			error_msg_and_die("No message\n");
+		}
 	}
 
 	openlog(name, option, (pri | LOG_FACMASK));