Package: l2tpns
Version: 2.2.1-1+b1
Severity: grave
Tags: patch
Justification: renders package unusable
Dear Maintainer,
Running l2tpns causes an instance crash as follows:
# l2tpns -v
*** buffer overflow detected ***: l2tpns terminated
(full trace removed as it doesn't help)
The problem exists in the ring buffer logging code. Specially the vsprintf
is called with a length of 4095 when the size of the buffer is MAX_LOG_LENGTH
(defined as 512 in l2tpns.h). The result is that as soon as the program is
executed it crashes as soon as a few log messages are printed. The following
patch resolves the problem.
I also have some more minor fixes, which resolve compiler warnings. I am happy
to share these if you let me know where to send them!
Dave
-- Begin patch
diff --git a/l2tpns.c b/l2tpns.c
index 41e12de..2680908 100644
--- a/l2tpns.c
+++ b/l2tpns.c
@@ -268,7 +268,7 @@ void _log(int level, sessionidt s, tunnelidt t, const char
*format, ...)
ringbuffer->buffer[ringbuffer->tail].session = s;
ringbuffer->buffer[ringbuffer->tail].tunnel = t;
va_start(ap, format);
- vsnprintf(ringbuffer->buffer[ringbuffer->tail].message, 4095,
format, ap);
+ vsnprintf(ringbuffer->buffer[ringbuffer->tail].message,
MAX_LOG_LENGTH-1, format, ap);
va_end(ap);
}
#endif
-- End patch
-- System Information:
Debian Release: 8.2
APT prefers stable-updates
APT policy: (500, 'stable-updates'), (500, 'stable')
Architecture: amd64 (x86_64)
Kernel: Linux 3.16.0-4-amd64 (SMP w/1 CPU core)
Locale: LANG=en_GB, LC_CTYPE=en_GB (charmap=ISO-8859-1)
Shell: /bin/sh linked to /bin/dash
Init: systemd (via /run/systemd/system)
Versions of packages l2tpns depends on:
ii libc6 2.19-18+deb8u3
ii libcli1.9 1.9.7-1
l2tpns recommends no packages.
l2tpns suggests no packages.
-- no debconf information