X-Git-Url: https://git.exim.org/exim.git/blobdiff_plain/22ed7a5295f196fce32563f6e9c669110dd36f4d..15a68d6eb3fb6f20f8ee0a7bf97e665d6c952a60:/src/exim_monitor/em_log.c?ds=sidebyside diff --git a/src/exim_monitor/em_log.c b/src/exim_monitor/em_log.c index 662595b12..49f649d7e 100644 --- a/src/exim_monitor/em_log.c +++ b/src/exim_monitor/em_log.c @@ -3,7 +3,9 @@ *************************************************/ /* Copyright (c) University of Cambridge 1995 - 2018 */ +/* Copyright (c) The Exim Maintainters 2021 - 2022 */ /* See the file NOTICE for conditions of use and distribution. */ +/* SPDX-License-Identifier: GPL-2.0-or-later */ /* This module contains code for scanning the main log, extracting information from it, and displaying a "tail". */ @@ -106,7 +108,9 @@ length = Ustrlen(buffer); #ifdef ANONYMIZE { uschar *p = buffer + 9; - if (p[6] == '-' && p[13] == '-') p += 17; + if ( p[MESSAGE_ID_TIME_LEN] == '-' + && p[MESSAGE_ID_TIME_LEN + MESSAGE_ID_PID_LEN + 1] == '-') + p += MESSAGE_ID_LENGTH + 1; while (p < buffer + length) { @@ -290,22 +294,20 @@ if (LOG != NULL) if ((p = Ustrstr(buffer, "==")) != NULL) { - queue_item *qq = find_queue(id, queue_noop, 0); - if (qq != NULL) + queue_item * qq = find_queue(id, queue_noop, 0); + if (qq) { dest_item *d; uschar *q, *r; p += 2; while (isspace(*p)) p++; q = p; - while (*p != 0 && !isspace(*p)) + while (*p && !isspace(*p)) { if (*p++ != '\"') continue; - while (*p != 0) - { + while (*p) if (*p == '\\') p += 2; - else if (*p++ == '\"') break; - } + else if (*p++ == '\"') break; } *p++ = 0; if ((r = strstric(q, qualify_domain, FALSE)) != NULL &&