aboutsummaryrefslogtreecommitdiff
path: root/sysklogd
diff options
context:
space:
mode:
Diffstat (limited to 'sysklogd')
-rw-r--r--sysklogd/logger.c15
1 files changed, 12 insertions, 3 deletions
diff --git a/sysklogd/logger.c b/sysklogd/logger.c
index 1ed6dc639..1c454e5af 100644
--- a/sysklogd/logger.c
+++ b/sysklogd/logger.c
@@ -149,10 +149,19 @@ extern int logger_main(int argc, char **argv)
149 } 149 }
150 message = buf; 150 message = buf;
151 } else { 151 } else {
152 if (argc >= 1) 152 if (argc >= 1) {
153 message = *argv; 153 int len = 1; /* for the '\0' */
154 else 154 for (; *argv != NULL; argv++) {
155 len += strlen(*argv);
156 len += 1; /* for the space between the args */
157 message = xrealloc(message, len);
158 strcat(message, *argv);
159 strcat(message, " ");
160 }
161 message[strlen(message)-1] = '\0';
162 } else {
155 error_msg_and_die("No message\n"); 163 error_msg_and_die("No message\n");
164 }
156 } 165 }
157 166
158 openlog(name, option, (pri | LOG_FACMASK)); 167 openlog(name, option, (pri | LOG_FACMASK));