Update to 3.4.3. Fixes bug #1782611

This commit is contained in:
Kevin Fenzi 2019-12-12 21:18:35 -08:00
parent a5b10a41e6
commit 835fb61436
5 changed files with 8 additions and 102 deletions

View File

@ -1,2 +1,2 @@
SHA512 (Mail-SpamAssassin-3.4.2.tar.bz2) = fe3d9d1d7b9fed3063549afd071066729f1f4d998be91ded1e5afc29bb37c7a298dc5f8f99a282b75435d317b5b5072a81393134ccfe059a73d953e26a9c3885
SHA512 (Mail-SpamAssassin-rules-3.4.2.r1840640.tgz) = 38b5f4dc6e6776937e787123c265ecd9a0a2f60aca1b57d6ed4a8f78cf81550478eddd0829b1255e9e8ce64421e06cc13ae82f1a597e893b65f0d07ba8c53a7f
SHA512 (Mail-SpamAssassin-3.4.3.tar.bz2) = 4d50b30a42d318c3a4c868b4940d1f56c329cc501270df12e1a369dd7de670c30f328a5fbc37dbd3b0d06538b9500085e920939c62de80ad6d8740bc47162cb0
SHA512 (Mail-SpamAssassin-rules-3.4.3.r1871124.tgz) = 2089bd97798c64fec8dea127cc12fbd9d9647bfe42c056a7674c7e9f85bb9e29ad73f741317ec74824016192736d57f16f70ff9bfd1eac0a8de747e417e3175f

View File

@ -1,18 +0,0 @@
--- a/spamc/spamc.c 2018/10/02 16:54:17 1842644
+++ b/spamc/spamc.c 2018/10/02 17:40:43 1842645
@@ -616,6 +616,7 @@
fprintf(stderr,"Exceeded max line size (%d) in %s\n",
CONFIG_MAX_LINE_SIZE-2, config_file);
}
+ fclose(config);
return EX_CONFIG;
}
@@ -629,6 +630,7 @@
if (*combo_argc >= COMBO_ARGV_SIZE) {
fprintf(stderr,"Exceeded max number of arguments (%d) in %s\n",
COMBO_ARGV_SIZE, config_file);
+ fclose(config);
return EX_CONFIG;
}
combo_argv[*combo_argc] = strdup(tok);

View File

@ -1,63 +0,0 @@
--- a/lib/Mail/SpamAssassin/Conf.pm 2019/08/01 12:28:38 1864149
+++ b/lib/Mail/SpamAssassin/Conf.pm 2019/08/08 08:11:36 1864686
@@ -3066,12 +3066,19 @@
as per the header tests, C<#> must be escaped (C<\#>) or else it is considered
the beginning of a comment.
-The 'body' in this case is the textual parts of the message body;
-any non-text MIME parts are stripped, and the message decoded from
-Quoted-Printable or Base-64-encoded format if necessary. The message
-Subject header is considered part of the body and becomes the first
-paragraph when running the rules. All HTML tags and line breaks will
-be removed before matching.
+The 'body' in this case is the textual parts of the message body; any
+non-text MIME parts are stripped, and the message decoded from
+Quoted-Printable or Base-64-encoded format if necessary. Parts declared as
+text/html will be rendered from HTML to text.
+
+All body paragraphs (double-newline-separated blocks text) are turned into a
+line breaks removed, whitespace normalized single line. Any lines longer
+than 2kB are split into shorter separate lines (from a boundary when
+possible), this may unexpectedly prevent pattern from matching. Patterns
+are matched independently against each of these lines.
+
+Note that the message Subject header is considered part of the body and
+becomes the first line when running the rules.
=item body SYMBOLIC_TEST_NAME eval:name_of_eval_method([args])
@@ -3152,6 +3159,10 @@
tags and line breaks will still be present. Multiline expressions will
need to be used to match strings that are broken by line breaks.
+Note that the text is split into 2-4kB chunks (from a word boundary when
+possible), this may unexpectedly prevent pattern from matching. Patterns
+are matched independently against each of these chunks.
+
=item rawbody SYMBOLIC_TEST_NAME eval:name_of_eval_method([args])
Define a raw-body eval test. See above.
--- a/lib/Mail/SpamAssassin/PerMsgStatus.pm 2019/08/03 13:55:00 1864336
+++ b/lib/Mail/SpamAssassin/PerMsgStatus.pm 2019/08/08 08:11:36 1864686
@@ -1769,8 +1769,10 @@
Returns the message body, with B<base64> or B<quoted-printable> encodings
decoded, and non-text parts or non-inline attachments stripped.
-It is returned as an array of strings, with each string representing
-one newline-separated line of the body.
+This is the same result text as used in 'rawbody' rules.
+
+It is returned as an array of strings, with each string being a 2-4kB chunk
+of the body, split from boundaries if possible.
=cut
@@ -1784,6 +1786,8 @@
get_decoded_body_text_array()), with HTML rendered, and with whitespace
normalized.
+This is the same result text as used in 'body' rules.
+
It will always render text/html, and will use a heuristic to determine if other
text/* parts should be considered text/html.

View File

@ -1,10 +0,0 @@
--- a/spamc/getopt.c 2018/09/20 06:52:49 1841432
+++ b/spamc/getopt.c 2018/09/20 07:18:53 1841433
@@ -274,7 +274,6 @@
} else if(longopts[i].has_arg == optional_argument) {
if(((spamc_optind < argc) && (argv[spamc_optind]) && (argv[spamc_optind][0] != '-')) ||
(opt != NULL)) {
- free(opt);
if(opt != NULL) {
spamc_optarg = opt;
} else {

View File

@ -58,14 +58,14 @@
Summary: Spam filter for email which can be invoked from mail delivery agents
Name: spamassassin
Version: 3.4.2
Version: 3.4.3
#Release: 0.8.%%{prerev}%%{?dist}
Release: 8%{?dist}
Release: 1%{?dist}
License: ASL 2.0
URL: https://spamassassin.apache.org/
Source0: https://www.apache.org/dist/%{name}/source/%{real_name}-%{version}.tar.bz2
#Source0: %%{real_name}-%%{version}-%%{prerev}.tar.bz2
Source1: https://www.apache.org/dist/%{name}/source/%{real_name}-rules-%{version}.r1840640.tgz
Source1: https://www.apache.org/dist/%{name}/source/%{real_name}-rules-%{version}.r1871124.tgz
#Source1: %%{real_name}-rules-%%{version}.%%{prerev}.tgz
Source2: redhat_local.cf
Source3: spamassassin-default.rc
@ -91,9 +91,6 @@ Source17: sa-update.timer
Patch0: spamassassin-3.3.2-gnupg2.patch
Patch1: spamassassin-3.4.1-add-logfile-homedir-options.patch
# Patches 100+ are SVN backports (DO NOT REUSE!)
Patch100: spamassassin-3.4.2-fix-rawbody-rules-documentation.patch
Patch101: spamassassin-3.4.2-fix-file-handle-leaks.patch
Patch102: spamassassin-3.4.2-fix-use-after-free.patch
# end of patches
Requires: perl(:MODULE_COMPAT_%(eval "`%{__perl} -V:version`"; echo $version))
%if %{use_systemd} == 0
@ -213,9 +210,6 @@ To filter spam for all users, add that line to /etc/procmailrc
%patch0 -p1
%patch1 -p1
# Patches 100+ are SVN backports (DO NOT REUSE!)
%patch100 -p1
%patch101 -p1
%patch102 -p1
# end of patches
echo "RHEL=%{?rhel} FEDORA=%{?fedora}"
@ -395,6 +389,9 @@ exit 0
%endif
%changelog
* Thu Dec 12 2019 Kevin Fenzi <kevin@scrye.com> - 3.4.3-1
- Update to 3.4.3. Fixes bug #1782611
* Tue Oct 01 2019 Ondřej Lysoněk <olysonek@redhat.com> - 3.4.2-8
- Fix issues found by Coverity Scan