From 4b68d1c21b415129adfa0097882e4368a33d0594 Mon Sep 17 00:00:00 2001 From: hpi1 Date: Wed, 13 Mar 2013 10:51:46 +0200 Subject: [PATCH] Fix stack corruption with long log strings. Extend max log string length to 4096 bytes. --- src/util/logging.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/util/logging.c b/src/util/logging.c index 306f5d4c..c8aa4886 100644 --- a/src/util/logging.c +++ b/src/util/logging.c @@ -80,13 +80,13 @@ void bd_debug(const char *file, int line, uint32_t mask, const char *format, ... } if (mask & debug_mask) { - char buffer[512], *pt = buffer; + char buffer[4096], *pt = buffer; va_list args; pt += sprintf(buffer, "%s:%d: ", file, line); va_start(args, format); - vsprintf(pt, format, args); + vsnprintf(pt, sizeof(buffer) - (size_t)(intptr_t)(pt - buffer) - 1, format, args); va_end(args); if (log_func) { -- 2.26.0