From 723344e43485c105fe79d21e2ba4c0dcd3dd0ca7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tobias=20=C3=96hrstr=C3=B6m?= Date: Tue, 17 Nov 2020 10:54:37 +0100 Subject: Add message length check MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Adds message length check to android-logd-converter handle malformed message. Signed-off-by: Tobias Öhrström --- src/android/dlt-logd-converter.cpp | 12 +++++++++--- 1 file changed, 9 insertions(+), 3 deletions(-) diff --git a/src/android/dlt-logd-converter.cpp b/src/android/dlt-logd-converter.cpp index 250d562..77e37a8 100644 --- a/src/android/dlt-logd-converter.cpp +++ b/src/android/dlt-logd-converter.cpp @@ -167,9 +167,15 @@ static int logd_parser_loop(struct logger_list *logger_list) DltLogLevelType log_level; log_level = get_log_level_from_log_msg(&log_msg); - /* Look into system/core/liblog/logprint.c for buffer format */ - auto tag = log_msg.msg()+1; - auto message = tag+strlen(tag)+1; + /* Look into system/core/liblog/logprint.c for buffer format. + "\0\0" */ + const char *tag = ""; + const char *message= ""; + if(log_msg.entry.len > 1) + tag = log_msg.msg() + 1; + if (log_msg.entry.len > 1 + strlen(tag) + 1) + message = tag + strlen(tag) + 1; + uint32_t ts; ts = get_timestamp_from_log_msg(&log_msg); -- cgit v1.2.1