From 5196aed006d1cd68b6fd2e11be28fcb3d451610e Mon Sep 17 00:00:00 2001 From: Maciej Slodczyk Date: Fri, 23 Mar 2018 12:42:49 +0100 Subject: [PATCH] util: fix possible buffer overflows Change-Id: I3f6b411fa03e9301f627e19f36c72546b58a7ab0 --- src/shared/logprint.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/shared/logprint.c b/src/shared/logprint.c index 1c2272c..e2e07c1 100644 --- a/src/shared/logprint.c +++ b/src/shared/logprint.c @@ -560,7 +560,7 @@ int log_process_log_buffer(const struct logger_entry *entry_raw, log_entry *entr //TODO: remove and make log_format_log_line just use raw entry directly int i, start = -1, end = -1; - if (entry_raw->len < 3) { + if (entry_raw->len - sizeof(struct logger_entry) < 3) { fprintf(stderr, "Entry too small\n"); return -1; } @@ -829,7 +829,7 @@ char *log_format_log_line( strncat(p, suffixBuf, suffixLen); p += suffixLen; - if (*pm == '\n') + if (pm < (entry->message + entry->messageLen) && *pm == '\n') pm++; } } -- 2.7.4