summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--sysklogd/syslogd.c6
-rw-r--r--syslogd.c6
2 files changed, 8 insertions, 4 deletions
diff --git a/sysklogd/syslogd.c b/sysklogd/syslogd.c
index 14219eb..25bc68f 100644
--- a/sysklogd/syslogd.c
+++ b/sysklogd/syslogd.c
@@ -394,16 +394,17 @@ static int serveConnection (int conn)
{
RESERVE_BB_BUFFER(tmpbuf, BUFSIZE + 1);
int n_read;
+ char *p = tmpbuf;
n_read = read (conn, tmpbuf, BUFSIZE );
- if (n_read > 0) {
+ while (p < tmpbuf + n_read) {
int pri = (LOG_USER | LOG_NOTICE);
char line[ BUFSIZE + 1 ];
unsigned char c;
- char *p = tmpbuf, *q = line;
+ char *q = line;
tmpbuf[ n_read - 1 ] = '\0';
@@ -428,6 +429,7 @@ static int serveConnection (int conn)
p++;
}
*q = '\0';
+ p++;
/* Now log it */
logMessage (pri, line);
}
diff --git a/syslogd.c b/syslogd.c
index 14219eb..25bc68f 100644
--- a/syslogd.c
+++ b/syslogd.c
@@ -394,16 +394,17 @@ static int serveConnection (int conn)
{
RESERVE_BB_BUFFER(tmpbuf, BUFSIZE + 1);
int n_read;
+ char *p = tmpbuf;
n_read = read (conn, tmpbuf, BUFSIZE );
- if (n_read > 0) {
+ while (p < tmpbuf + n_read) {
int pri = (LOG_USER | LOG_NOTICE);
char line[ BUFSIZE + 1 ];
unsigned char c;
- char *p = tmpbuf, *q = line;
+ char *q = line;
tmpbuf[ n_read - 1 ] = '\0';
@@ -428,6 +429,7 @@ static int serveConnection (int conn)
p++;
}
*q = '\0';
+ p++;
/* Now log it */
logMessage (pri, line);
}