aboutsummaryrefslogtreecommitdiff
path: root/sysklogd
diff options
context:
space:
mode:
Diffstat (limited to 'sysklogd')
-rw-r--r--sysklogd/syslogd.c13
1 files changed, 8 insertions, 5 deletions
diff --git a/sysklogd/syslogd.c b/sysklogd/syslogd.c
index 3a8e519fe..e754806da 100644
--- a/sysklogd/syslogd.c
+++ b/sysklogd/syslogd.c
@@ -600,16 +600,19 @@ static void doSyslogd(void)
600 600
601 if (FD_ISSET(sock_fd, &fds)) { 601 if (FD_ISSET(sock_fd, &fds)) {
602 int i; 602 int i;
603#if MAXLINE > BUFSIZ
604# define TMP_BUF_SZ BUFSIZ
605#else
606# define TMP_BUF_SZ MAXLINE
607#endif
608#define tmpbuf bb_common_bufsiz1
603 609
604 RESERVE_CONFIG_BUFFER(tmpbuf, MAXLINE + 1); 610 if ((i = recv(sock_fd, tmpbuf, TMP_BUF_SZ, 0)) > 0) {
605 611 tmpbuf[i] = '\0';
606 memset(tmpbuf, '\0', MAXLINE + 1);
607 if ((i = recv(sock_fd, tmpbuf, MAXLINE, 0)) > 0) {
608 serveConnection(tmpbuf, i); 612 serveConnection(tmpbuf, i);
609 } else { 613 } else {
610 bb_perror_msg_and_die("UNIX socket error"); 614 bb_perror_msg_and_die("UNIX socket error");
611 } 615 }
612 RELEASE_CONFIG_BUFFER(tmpbuf);
613 } /* FD_ISSET() */ 616 } /* FD_ISSET() */
614 } /* for main loop */ 617 } /* for main loop */
615} 618}