These were unmatched, because the "-ENCRYPTED" suffix is new. One
regular expression and a dictionary have been updated to catch those
lines and dump them into the "unchecked" bin with the rest of the
UNCHECKED lines.
were previously unmatched because of the relatively-new "UTF8SMTP".
Similar lines that have "ESMTP" instead of "UTF8SMTP" are already
ignored, so it makes sense to ignore the "UTF8SMTP" lines too.
Michael Orlitzky [Thu, 24 Aug 2017 12:20:59 +0000 (08:20 -0400)]
Fix redundant argument to sprintf warning.
Perl 5.22 now warns about redundant (i.e. extra) arguments to the
sprintf function. If your format string only has two place-holders but
you pass three place-fillers, you get warned:
Redundant argument in sprintf at ./amavis-logwatch line 1338...
The issue there was that the format string passed to sprintf was
constructed dynamically; sometimes it would contain two place-holders,
and sometimes three. Three place-fillers were always passed, so when
only two place-holders were used, the warning would be thrown. This was
fixed by testing whether or not there are two or three place-holders,
and passing the appropriate number of place-fillers.
Michael Orlitzky [Thu, 24 Aug 2017 12:16:05 +0000 (08:16 -0400)]
Fix unescaped left brace warning in monster regex.
New versions of Perl are starting to complain about unescaped braces
in regular expressions, and supposedly the warning will become a fatal
error in Perl 5.30. This particular warning is,
Unescaped left brace in regex is deprecated, passed through in regex;
marked by <-- HERE in m/^(CLEAN|SPAM(?:MY)?|INFECTED \(.*?\)|BANNED \(.*?\)
|BAD-HEADER(?:-\d)?|UNCHECKED|MTA-BLOCKED|OVERSIZED|OTHER|TEMPFAIL)(?:
{ <-- HERE [^}]+})?, ([^[]+ )?(?:([^<]+) )?[<(](.*?)[>)] -> ([(<].*?[)>]),
(?:.*Hits: ([-+.\d]+))(?:.* size: (\d+))?(?:.* autolearn=(\w+))?/ at
/usr/bin/amavis-logwatch line 2286.
and it was fixed by going to line 2286 and putting a backslash before
the left brace.