busybox: 1.13.0 klogd fix
authorPeter Korsgaard <jacmet@sunsite.dk>
Thu, 20 Nov 2008 06:49:20 +0000 (06:49 -0000)
committerPeter Korsgaard <jacmet@sunsite.dk>
Thu, 20 Nov 2008 06:49:20 +0000 (06:49 -0000)
package/busybox/busybox-1.13.0-klogd.patch [new file with mode: 0644]

diff --git a/package/busybox/busybox-1.13.0-klogd.patch b/package/busybox/busybox-1.13.0-klogd.patch
new file mode 100644 (file)
index 0000000..e42abf1
--- /dev/null
@@ -0,0 +1,29 @@
+--- busybox-1.13.0/sysklogd/klogd.c    Thu Oct 30 08:41:28 2008
++++ busybox-1.13.0-klogd/sysklogd/klogd.c      Thu Nov 20 00:46:00 2008
+@@ -73,9 +73,6 @@
+       syslog(LOG_NOTICE, "klogd started: %s", bb_banner);
+-      /* Initially null terminate the buffer in case of a very long line */
+-      log_buffer[KLOGD_LOGBUF_SIZE - 1] = '\0';
+-
+       while (1) {
+               int n;
+               int priority;
+@@ -89,6 +86,7 @@
+                                       errno);
+                       break;
+               }
++              log_buffer[used + n] = '\0';
+               /* klogctl buffer parsing modelled after code in dmesg.c */
+               start = &log_buffer[0];
+@@ -101,7 +99,7 @@
+                               /* This line is incomplete... */
+                               if (start != log_buffer) {
+                                       /* move it to the front of the buffer */
+-                                      strcpy(log_buffer, start);
++                                      overlapping_strcpy(log_buffer, start);
+                                       /* don't log it yet */
+                                       used = strlen(log_buffer);
+                                       break;