- update to 4.98 (bsc#1227423, CVE-2024-39929):
* The dkim_status ACL condition may now be used in data ACLs
* The dkim_verbose logging control also enables logging of signing
* The dkim_timestamps signing option now accepts zero to include
a current timestamp but no expiry timestamp.
* The recipients_max main option is now expanded.
* Setting variables for "exim -be" can set a tainted value.
* A dns:fail event.
* The dsearch lookup supports search for a sub-path.
* Include mailtest utility for simple connection checking.
* Add SMTP WELLKNOWN extension.
OBS-URL: https://build.opensuse.org/request/show/1187596
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/exim?expand=0&rev=81
* The dkim_status ACL condition may now be used in data ACLs
* The dkim_verbose logging control also enables logging of signing
* The dkim_timestamps signing option now accepts zero to include
a current timestamp but no expiry timestamp.
* The recipients_max main option is now expanded.
* Setting variables for "exim -be" can set a tainted value.
* A dns:fail event.
* The dsearch lookup supports search for a sub-path.
* Include mailtest utility for simple connection checking.
* Add SMTP WELLKNOWN extension.
OBS-URL: https://build.opensuse.org/package/show/server:mail/exim?expand=0&rev=290
- update to 4.97.1 (bsc#1218387, CVE-2023-51766):
* Fixes for the smtp protocol smuggling (CVE-2023-51766)
passed over a connection could use BDAT; any further ones using DATA.
proxy.
- Update eximstats-html-update.py to run under Python 3.
* CVE-2019-13917: Fixed an issue with ${sort} expansion which could
allow remote attackers to execute other programs with root privileges
- Replace xorg-x11-devel by individual pkgconfig() buildrequires.
- Replace references to /var/adm/fillup-templates with new
+ fix CVE-2016-1531
argument.
OBS-URL: https://build.opensuse.org/request/show/1135763
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/exim?expand=0&rev=79
* Fixes for the smtp protocol smuggling (CVE-2023-51766)
passed over a connection could use BDAT; any further ones using DATA.
proxy.
- Update eximstats-html-update.py to run under Python 3.
* CVE-2019-13917: Fixed an issue with ${sort} expansion which could
allow remote attackers to execute other programs with root privileges
- Replace xorg-x11-devel by individual pkgconfig() buildrequires.
- Replace references to /var/adm/fillup-templates with new
+ fix CVE-2016-1531
argument.
OBS-URL: https://build.opensuse.org/package/show/server:mail/exim?expand=0&rev=285
- update to exim 4.96
* Move from using the pcre library to pcre2.
* Constification work in the filters module required a major version
bump for the local-scan API. Specifically, the "headers_charset"
global which is visible via the API is now const and may therefore
not be modified by local-scan code.
* Bug 2819: speed up command-line messages being read in. Previously a
time check was being done for every character; replace that with one
per buffer.
* Bug 2815: Fix ALPN sent by server under OpenSSL. Previously the string
sent was prefixed with a length byte.
* Change the SMTP feature name for pipelining connect to be compliant with
RFC 5321. Previously Dovecot (at least) would log errors during
submission.
* Fix macro-definition during "-be" expansion testing. The move to
write-protected store for macros had not accounted for these runtime
additions; fix by removing this protection for "-be" mode.
* Convert all uses of select() to poll().
* Fix use of $sender_host_name in daemon process. When used in certain
main-section options or in a connect ACL, the value from the first ever
connection was never replaced for subsequent connections.
* Bug 2838: Fix for i32lp64 hard-align platforms
* Bug 2845: Fix handling of tls_require_ciphers for OpenSSL when a value
with underbars is given.
* Bug 1895: TLS: Deprecate RFC 5114 Diffie-Hellman parameters.
* Debugging initiated by an ACL control now continues through into routing
and transport processes.
* The "expand" debug selector now gives more detail, specifically on the
result of expansion operators and items.
* Bug 2751: Fix include_directory in redirect routers. Previously a
bad comparison between the option value and the name of the file to
be included was done, and a mismatch was wrongly identified.
* Support for Berkeley DB versions 1 and 2 is withdrawn.
* When built with NDBM for hints DB's check for nonexistence of a name
supplied as the db file-pair basename.
* Remove the "allow_insecure_tainted_data" main config option and the
"taint" log_selector.
* Fix static address-list lookups to properly return the matched item.
Previously only the domain part was returned.
* The ${run} expansion item now expands its command string elements after
splitting. Previously it was before; the new ordering makes handling
zero-length arguments simpler.
* Taint-check exec arguments for transport-initiated external processes.
Previously, tainted values could be used. This affects "pipe", "lmtp" and
"queryprogram" transport, transport-filter, and ETRN commands.
The ${run} expansion is also affected: in "preexpand" mode no part of
the command line may be tainted, in default mode the executable name
may not be tainted.
* Fix CHUNKING on a continued-transport. Previously the usabilility of
the facility was not passed across execs, and only the first message
passed over a connection could use BDAT; any further ones using DATA.
* Support the PIPECONNECT facility in the smtp transport when the helo_data
uses $sending_ip_address and an interface is specified.
* OpenSSL: fix transport-required OCSP stapling verification under session
resumption.
* TLS resumption: the key for session lookup in the client now includes
more info that a server could potentially use in configuring a TLS
session, avoiding oferring mismatching sessions to such a server.
* Fix string_copyn() for limit greater than actual string length.
* Bug 2886: GnuTLS: Do not free the cached creds on transport connection
close; it may be needed for a subsequent connection.
* Fix CHUNKING for a second message on a connection when the first was
rejected.
* Fix ${srs_encode ...} to handle an empty sender address, now returning
an empty address.
* Bug 2855: Handle a v4mapped sender address given us by a frontending
proxy.
OBS-URL: https://build.opensuse.org/request/show/985275
OBS-URL: https://build.opensuse.org/package/show/server:mail/exim?expand=0&rev=260
- update to exim-4.94.2
security update
* CVE-2020-28007: Link attack in Exim's log directory
* CVE-2020-28008: Assorted attacks in Exim's spool directory
* CVE-2020-28014: Arbitrary PID file creation
* CVE-2020-28011: Heap buffer overflow in queue_run()
* CVE-2020-28010: Heap out-of-bounds write in main()
* CVE-2020-28013: Heap buffer overflow in parse_fix_phrase()
* CVE-2020-28016: Heap out-of-bounds write in parse_fix_phrase()
* CVE-2020-28015: New-line injection into spool header file (local)
* CVE-2020-28012: Missing close-on-exec flag for privileged pipe
* CVE-2020-28009: Integer overflow in get_stdinput()
* CVE-2020-28017: Integer overflow in receive_add_recipient()
* CVE-2020-28020: Integer overflow in receive_msg()
* CVE-2020-28023: Out-of-bounds read in smtp_setup_msg()
* CVE-2020-28021: New-line injection into spool header file (remote)
* CVE-2020-28022: Heap out-of-bounds read and write in extract_option()
* CVE-2020-28026: Line truncation and injection in spool_read_header()
* CVE-2020-28019: Failure to reset function pointer after BDAT error
* CVE-2020-28024: Heap buffer underflow in smtp_ungetc()
* CVE-2020-28018: Use-after-free in tls-openssl.c
* CVE-2020-28025: Heap out-of-bounds read in pdkim_finish_bodyhash()
- update to exim-4.94.1
* Fix security issue in BDAT state confusion.
Ensure we reset known-good where we know we need to not be reading BDAT
data, as a general case fix, and move the places where we switch to BDAT
mode until after various protocol state checks.
Fixes CVE-2020-BDATA reported by Qualys.
* Fix security issue in SMTP verb option parsing (CVE-2020-EXOPT)
* Fix security issue with too many recipients on a message (to remove a
known security problem if someone does set recipients_max to unlimited,
or if local additions add to the recipient list).
Fixes CVE-2020-RCPTL reported by Qualys.
* Fix CVE-2020-28016 (PFPZA): Heap out-of-bounds write in parse_fix_phrase()
* Fix security issue CVE-2020-PFPSN and guard against cmdline invoker
providing a particularly obnoxious sender full name.
* Fix Linux security issue CVE-2020-SLCWD and guard against PATH_MAX
better.
OBS-URL: https://build.opensuse.org/request/show/890519
OBS-URL: https://build.opensuse.org/package/show/server:mail/exim?expand=0&rev=248
- bring in changes from current +fixes (lots of taint check fixes)
* Bug 1329: Fix format of Maildir-format filenames to match other mail-
related applications. Previously an "H" was used where available info
says that "M" should be, so change to match.
* Bug 2587: Fix pam expansion condition. Tainted values are commonly used
as arguments, so an implementation trying to copy these into a local
buffer was taking a taint-enforcement trap. Fix by using dynamically
created buffers.
* Bug 2586: Fix listcount expansion operator. Using tainted arguments is
reasonable, eg. to count headers. Fix by using dynamically created
buffers rather than a local. Do similar fixes for ACL actions "dcc",
"log_reject_target", "malware" and "spam"; the arguments are expanded
so could be handling tainted values.
* Bug 2590: Fix -bi (newaliases). A previous code rearrangement had
broken the (no-op) support for this sendmail command. Restore it
to doing nothing, silently, and returning good status.
OBS-URL: https://build.opensuse.org/request/show/812518
OBS-URL: https://build.opensuse.org/package/show/server:mail/exim?expand=0&rev=243
- update to exim 4.94
* some transports now refuse to use tainted data in constructing their delivery
location
this WILL BREAK configurations which are not updated accordingly.
In particular: any Transport use of $local_user which has been relying upon
check_local_user far away in the Router to make it safe, should be updated to
replace $local_user with $local_part_data.
* Attempting to remove, in router or transport, a header name that ends with
an asterisk (which is a standards-legal name) will now result in all headers
named starting with the string before the asterisk being removed.
OBS-URL: https://build.opensuse.org/request/show/810991
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/exim?expand=0&rev=62
- update to exim 4.94
* some transports now refuse to use tainted data in constructing their delivery
location
this WILL BREAK configurations which are not updated accordingly.
In particular: any Transport use of $local_user which has been relying upon
check_local_user far away in the Router to make it safe, should be updated to
replace $local_user with $local_part_data.
* Attempting to remove, in router or transport, a header name that ends with
an asterisk (which is a standards-legal name) will now result in all headers
named starting with the string before the asterisk being removed.
OBS-URL: https://build.opensuse.org/request/show/810989
OBS-URL: https://build.opensuse.org/package/show/server:mail/exim?expand=0&rev=240
- bring changes from current in +fixes branch
(patch-exim-fixes-ee83de04d3087efaf808d1f2235a988275c2ee94)
* fixes CVE-2020-12783 (bsc#1171490)
* Regard command-line recipients as tainted.
* Bug 2489: Fix crash in the "pam" expansion condition.
* Use tainted buffers for the transport smtp context.
* Bug 2493: Harden ARC verify against Outlook, which has been seen to mix
the ordering of its ARC headers. This caused a crash.
* Bug 2492: Use tainted memory for retry record when needed. Previously when
a new record was being constructed with information from the peer, a trap
was taken.
* Bug 2494: Unset the default for dmarc_tld_file.
* Fix an uninitialised flag in early-pipelining. Previously connections
could, depending on the platform, hang at the STARTTLS response.
* Bug 2498: Reset a counter used for ARC verify before handling another
message on a connection. Previously if one message had ARC headers and
the following one did not, a crash could result when adding an
Authentication-Results: header.
* Bug 2500: Rewind some of the common-coding in string handling between the
Exim main code and Exim-related utities.
* Fix the variables set by the gsasl authenticator.
* Bug 2507: Modules: on handling a dynamic-module (lookups) open failure,
only retrieve the errormessage once.
* Bug 2501: Fix init call in the heimdal authenticator. Previously it
adjusted the size of a major service buffer; this failed because the
buffer was in use at the time. Change to a compile-time increase in the
buffer size, when this authenticator is compiled into exim.
OBS-URL: https://build.opensuse.org/request/show/802873
OBS-URL: https://build.opensuse.org/package/show/server:mail/exim?expand=0&rev=234
- update to exim 4.93.0.4 (+fixes release)
* Avoid costly startup code when not strictly needed. This reduces time
for some exim process initialisations. It does mean that the logging
of TLS configuration problems is only done for the daemon startup.
* Early-pipelining support code is now included unless disabled in Makefile.
* DKIM verification defaults no long accept sha1 hashes, to conform to
RFC 8301. They can still be enabled, using the dkim_verify_hashes main
option.
* Support CHUNKING from an smtp transport using a transport_filter, when
DKIM signing is being done. Previously a transport_filter would always
disable CHUNKING, falling back to traditional DATA.
* Regard command-line receipients as tainted.
* Bug 340: Remove the daemon pid file on exit, whe due to SIGTERM.
* Bug 2489: Fix crash in the "pam" expansion condition. It seems that the
PAM library frees one of the arguments given to it, despite the
documentation. Therefore a plain malloc must be used.
* Bug 2491: Use tainted buffers for the transport smtp context. Previously
on-stack buffers were used, resulting in a taint trap when DSN information
copied from a received message was written into the buffer.
* Bug 2493: Harden ARC verify against Outlook, whick has been seen to mix
the ordering of its ARC headers. This caused a crash.
* Bug 2492: Use tainted memory for retry record when needed. Previously when
a new record was being constructed with information from the peer, a trap
was taken.
* Bug 2494: Unset the default for dmarc_tld_file. Previously a naiive
installation would get error messages from DMARC verify, when it hit the
nonexistent file indicated by the default. Distros wanting DMARC enabled
should both provide the file and set the option.
Also enforce no DMARC verification for command-line sourced messages.
* Fix an uninitialised flag in early-pipelining. Previously connections
could, depending on the platform, hang at the STARTTLS response.
* Bug 2498: Reset a counter used for ARC verify before handling another
message on a connection. Previously if one message had ARC headers and
the following one did not, a crash could result when adding an
Authentication-Results: header.
* Bug 2500: Rewind some of the common-coding in string handling between the
Exim main code and Exim-related utities. The introduction of taint
tracking also did many adjustments to string handling. Since then, eximon
frequently terminated with an assert failure.
* When PIPELINING, synch after every hundred or so RCPT commands sent and
check for 452 responses. This slightly helps the inefficieny of doing
a large alias-expansion into a recipient-limited target. The max_rcpt
transport option still applies (and at the current default, will override
the new feature). The check is done for either cause of synch, and forces
a fast-retry of all 452'd recipients using a new MAIL FROM on the same
connection. The new facility is not tunable at this time.
* Fix the variables set by the gsasl authenticator. Previously a pointer to
library live data was being used, so the results became garbage. Make
copies while it is still usable.
* Logging: when the deliver_time selector ise set, include the DT= field
on delivery deferred (==) and failed (**) lines (if a delivery was
attemtped). Previously it was only on completion (=>) lines.
* Authentication: the gsasl driver not provides the $authN variables in time
for the expansion of the server_scram_iter and server_scram_salt options.
OBS-URL: https://build.opensuse.org/request/show/761343
OBS-URL: https://build.opensuse.org/package/show/server:mail/exim?expand=0&rev=225
- update to exim 4.93
* SUPPORT_DMARC replaces EXPERIMENTAL_DMARC
* DISABLE_TLS replaces SUPPORT_TLS
* Bump the version for the local_scan API.
* smtp transport option hosts_try_fastopen defaults to "*".
* DNSSec is requested (not required) for all queries. (This seemes to
ask for trouble if your resolver is a systemd-resolved.)
* Generic router option retry_use_local_part defaults to "true" under specific
pre-conditions.
* Introduce a tainting mechanism for values read from untrusted sources.
* Use longer file names for temporary spool files (this avoids
name conflicts with spool on a shared file system).
* Use dsn_from main config option (was ignored previously).
OBS-URL: https://build.opensuse.org/request/show/756081
OBS-URL: https://build.opensuse.org/package/show/server:mail/exim?expand=0&rev=219
- update to exim 4.92
* ${l_header:<name>} expansion
* ${readsocket} now supports TLS
* "utf8_downconvert" option (if built with SUPPORT_I18N)
* "pipelining" log_selector
* JSON variants for ${extract } expansion
* "noutf8" debug option
* TCP Fast Open support on MacOS
- add workaround patch for compile time error on missing printf
format annotation (gnu_printf.patch)
OBS-URL: https://build.opensuse.org/request/show/675339
OBS-URL: https://build.opensuse.org/package/show/server:mail/exim?expand=0&rev=205
- update to 4.90.1
* Allow PKG_CONFIG_PATH to be set in Local/Makefile and use it correctly
during configuration. Wildcards are allowed and expanded.
* Shorten the log line for daemon startup by collapsing adjacent sets of
identical IP addresses on different listening ports. Will also affect
"exiwhat" output.
* Tighten up the checking in isip4 (et al): dotted-quad components larger
than 255 are no longer allowed.
* Default openssl_options to include +no_ticket, to reduce load on peers.
Disable the session-cache too, which might reduce our load. Since we
currrectly use a new context for every connection, both as server and
client, there is no benefit for these.
* Add $SOURCE_DATE_EPOCH support for reproducible builds, per spec at
<https://reproducible-builds.org/specs/source-date-epoch/>.
* Fix smtp transport use of limited max_rcpt under mua_wrapper. Previously
the check for any unsuccessful recipients did not notice the limit, and
erroneously found still-pending ones.
* Pipeline CHUNKING command and data together, on kernels that support
MSG_MORE. Only in-clear (not on TLS connections).
* Avoid using a temporary file during transport using dkim. Unless a
transport-filter is involved we can buffer the headers in memory for
creating the signature, and read the spool data file once for the
signature and again for transmission.
* Enable use of sendfile in Linux builds as default. It was disabled in
4.77 as the kernel support then wasn't solid, having issues in 64bit
mode. Now, it's been long enough. Add support for FreeBSD also.
* Add commandline_checks_require_admin option.
* Do pipelining under TLS.
* For the "sock" variant of the malware scanner interface, accept an empty
cmdline element to get the documented default one. Previously it was
inaccessible.
* Prevent repeated use of -p/-oMr
* DKIM: enforce the DNS pubkey record "h" permitted-hashes optional field,
if present.
* DKIM: when a message has multiple signatures matching an identity given
in dkim_verify_signers, run the dkim acl once for each.
* Support IDNA2008.
* The path option on a pipe transport is now expanded before use
* Have the EHLO response advertise VRFY, if there is a vrfy ACL defined.
- Several bug fixes
- Fix for buffer overflow in base64decode() (bsc#1079832 CVE-2018-6789)
- removed patches (included upstream now):
* exim-CVE-2017-1000369.patch
* exim-CVE-2017-16943.patch
* exim-CVE-2017-16944.patch
* exim-4.86.2-mariadb_102_compile_fix.patch
old: server:mail/exim
new: home:kbabioch:branches:server:mail/exim rev None
Index: exim.changes
===================================================================
--- exim.changes (revision 200)
+++ exim.changes (revision 4)
@@ -1,4 +1,54 @@
-------------------------------------------------------------------
+Tue Feb 13 13:39:34 UTC 2018 - kbabioch@suse.com
+
+- update to 4.90.1
+ * Allow PKG_CONFIG_PATH to be set in Local/Makefile and use it correctly
+ during configuration. Wildcards are allowed and expanded.
+ * Shorten the log line for daemon startup by collapsing adjacent sets of
+ identical IP addresses on different listening ports. Will also affect
+ "exiwhat" output.
+ * Tighten up the checking in isip4 (et al): dotted-quad components larger
+ than 255 are no longer allowed.
+ * Default openssl_options to include +no_ticket, to reduce load on peers.
+ Disable the session-cache too, which might reduce our load. Since we
+ currrectly use a new context for every connection, both as server and
+ client, there is no benefit for these.
+ * Add $SOURCE_DATE_EPOCH support for reproducible builds, per spec at
+ <https://reproducible-builds.org/specs/source-date-epoch/>.
+ * Fix smtp transport use of limited max_rcpt under mua_wrapper. Previously
+ the check for any unsuccessful recipients did not notice the limit, and
+ erroneously found still-pending ones.
+ * Pipeline CHUNKING command and data together, on kernels that support
+ MSG_MORE. Only in-clear (not on TLS connections).
+ * Avoid using a temporary file during transport using dkim. Unless a
+ transport-filter is involved we can buffer the headers in memory for
+ creating the signature, and read the spool data file once for the
+ signature and again for transmission.
+ * Enable use of sendfile in Linux builds as default. It was disabled in
+ 4.77 as the kernel support then wasn't solid, having issues in 64bit
+ mode. Now, it's been long enough. Add support for FreeBSD also.
+ * Add commandline_checks_require_admin option.
+ * Do pipelining under TLS.
+ * For the "sock" variant of the malware scanner interface, accept an empty
+ cmdline element to get the documented default one. Previously it was
+ inaccessible.
+ * Prevent repeated use of -p/-oMr
+ * DKIM: enforce the DNS pubkey record "h" permitted-hashes optional field,
+ if present.
+ * DKIM: when a message has multiple signatures matching an identity given
+ in dkim_verify_signers, run the dkim acl once for each.
+ * Support IDNA2008.
+ * The path option on a pipe transport is now expanded before use
+ * Have the EHLO response advertise VRFY, if there is a vrfy ACL defined.
+- Several bug fixes
+- Fix for buffer overflow in base64decode() (bsc#1079832 CVE-2018-6789)
+- removed patches (included upstream now):
+ * exim-CVE-2017-1000369.patch
+ * exim-CVE-2017-16943.patch
+ * exim-CVE-2017-16944.patch
+ * exim-4.86.2-mariadb_102_compile_fix.patch
+
+-------------------------------------------------------------------
Thu Nov 30 08:32:50 UTC 2017 - wullinger@rz.uni-kiel.de
- add exim-CVE-2017-16944.patch:
Index: exim.spec
===================================================================
--- exim.spec (revision 200)
+++ exim.spec (revision 4)
@@ -1,7 +1,7 @@
#
# spec file for package exim
#
-# Copyright (c) 2017 SUSE LINUX GmbH, Nuernberg, Germany.
+# Copyright (c) 2018 SUSE LINUX GmbH, Nuernberg, Germany.
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
@@ -78,7 +78,7 @@
%endif
Requires(pre): fileutils textutils
%endif
-Version: 4.88
+Version: 4.90.1
Release: 0
%if %{with_mysql}
BuildRequires: mysql-devel
@@ -93,8 +93,8 @@
License: GPL-2.0+
Group: Productivity/Networking/Email/Servers
BuildRoot: %{_tmppath}/%{name}-%{version}-build
-Source: http://ftp.exim.org/pub/exim/exim4/old/exim-%{version}.tar.bz2
-Source3: http://ftp.exim.org/pub/exim/exim4/old/exim-%{version}.tar.bz2.asc
+Source: http://ftp.exim.org/pub/exim/exim4/exim-%{version}.tar.bz2
+Source3: http://ftp.exim.org/pub/exim/exim4/exim-%{version}.tar.bz2.asc
# http://ftp.exim.org/pub/exim/Exim-Maintainers-Keyring.asc
Source4: exim.keyring
Source1: sysconfig.exim
@@ -107,10 +107,6 @@
Source32: eximstats.conf-2.2
Source40: exim.service
Patch0: exim-tail.patch
-Patch3: exim-CVE-2017-1000369.patch
-Patch4: exim-CVE-2017-16943.patch
-Patch5: exim-CVE-2017-16944.patch
-Patch6: exim-4.86.2-mariadb_102_compile_fix.patch
%package -n eximon
Summary: Eximon, an graphical frontend to administer Exim's mail queue
@@ -153,10 +149,6 @@
%prep
%setup -q -n exim-%{version}
%patch0
-%patch3 -p 1
-%patch4 -p 1
-%patch5 -p 1
-%patch6 -p 1
# build with fPIE/pie on SUSE 10.0 or newer, or on any other platform
%if %{?suse_version:%suse_version}%{?!suse_version:99999} > 930
fPIE="-fPIE"
@@ -328,7 +320,7 @@
inst_info=$RPM_BUILD_ROOT/%{_infodir} \
INSTALL_ARG=-no_chown install
#mv $RPM_BUILD_ROOT/usr/sbin/exim-%{version}* $RPM_BUILD_ROOT/usr/sbin/exim
-mv $RPM_BUILD_ROOT/usr/sbin/exim-4.8* $RPM_BUILD_ROOT/usr/sbin/exim
+mv $RPM_BUILD_ROOT/usr/sbin/exim-4.9* $RPM_BUILD_ROOT/usr/sbin/exim
mv $RPM_BUILD_ROOT/etc/exim/exim.conf src/configure.default # with all substitutions done
%if 0%{?suse_version} > 1220
install -m 0644 %{S:40} $RPM_BUILD_ROOT/%{_unitdir}/exim.service
Index: exim-4.90.1.tar.bz2
===================================================================
Binary file exim-4.90.1.tar.bz2 (revision 4) added
Index: exim-4.90.1.tar.bz2.asc
===================================================================
--- exim-4.90.1.tar.bz2.asc (added)
+++ exim-4.90.1.tar.bz2.asc (revision 4)
@@ -0,0 +1,11 @@
+-----BEGIN PGP SIGNATURE-----
+
+iQEzBAABCgAdFiEE0L/WueylaUpvFJ3Or0zGdqa2wUIFAlp8U0MACgkQr0zGdqa2
+wUKEiwf9GmNYK5sbmpi/c2TdfPqsqU1o76l3PoTt+kxSQi5t4j30dsqZdWvzvkuj
+k+/x1SsDRg44+wv19ynnYH4tSCZ3QSwTevyfXvR7bSGpSTCN0tTnaWm/AuBXNC8D
+9lukQckwdZckVNciRriVCLi9VTymV/tdnIxowQu/WfdEzFTXDeYzu3KoioG+jKAV
+MWhnyUDfhPYPYs+u8IKdFDE3Z9bO/I/EbgTHiR6PetLWusSugrp/MyJjICp8HsvI
+f/pMj+rytJo2hOnI9x/wpUiXb7XnnQnph3mic5BQU4DF+tI6dK1zTS66PyTYAoNI
+p6Po3uLY/umKYT+W6jxURPfC2TH1+A==
+=k4cD
+-----END PGP SIGNATURE-----
Index: exim-4.86.2-mariadb_102_compile_fix.patch
===================================================================
--- exim-4.86.2-mariadb_102_compile_fix.patch (revision 200)
+++ exim-4.86.2-mariadb_102_compile_fix.patch (deleted)
@@ -1,94 +0,0 @@
-Index: exim-4.86.2/src/lookups/mysql.c
-===================================================================
---- exim-4.86.2.orig/src/lookups/mysql.c
-+++ exim-4.86.2/src/lookups/mysql.c
-@@ -14,6 +14,53 @@ functions. */
-
- #include <mysql.h> /* The system header */
-
-+/* We define symbols for *_VERSION_ID (numeric), *_VERSION_STR (char*)
-+and *_BASE_STR (char*). It's a bit of guesswork. Especially for mariadb
-+with versions before 10.2, as they do not define there there specific symbols.
-+*/
-+
-+// Newer (>= 10.2) MariaDB
-+#if defined MARIADB_VERSION_ID
-+#define EXIM_MxSQL_VERSION_ID MARIADB_VERSION_ID
-+
-+// MySQL defines MYSQL_VERSION_ID, and MariaDB does so
-+// https://dev.mysql.com/doc/refman/5.7/en/c-api-server-client-versions.html
-+#elif defined LIBMYSQL_VERSION_ID
-+#define EXIM_MxSQL_VERSION_ID LIBMYSQL_VERSION_ID
-+#elif defined MYSQL_VERSION_ID
-+#define EXIM_MxSQL_VERSION_ID MYSQL_VERSION_ID
-+
-+#else
-+#define EXIM_MYSQL_VERSION_ID 0
-+#endif
-+
-+// Newer (>= 10.2) MariaDB
-+#ifdef MARIADB_CLIENT_VERSION_STR
-+#define EXIM_MxSQL_VERSION_STR MARIADB_CLIENT_VERSION_STR
-+
-+// Mysql uses MYSQL_SERVER_VERSION
-+#elif defined LIBMYSQL_VERSION
-+#define EXIM_MxSQL_VERSION_STR LIBMYSQL_VERSION
-+#elif defined MYSQL_SERVER_VERSION
-+#define EXIM_MxSQL_VERSION_STR MYSQL_SERVER_VERSION
-+
-+#else
-+#define EXIM_MxSQL_VERSION_STR "N.A."
-+#endif
-+
-+#if defined MARIADB_BASE_VERSION
-+#define EXIM_MxSQL_BASE_STR MARIADB_BASE_VERSION
-+
-+#elif defined MARIADB_PACKAGE_VERSION
-+#define EXIM_MxSQL_BASE_STR "mariadb"
-+
-+#elif defined MYSQL_BASE_VERSION
-+#define EXIM_MxSQL_BASE_STR MYSQL_BASE_VERSION
-+
-+#else
-+#define EXIM_MxSQL_BASE_STR "n.A."
-+#endif
-+
-
- /* Structure and anchor for caching connections. */
-
-@@ -423,10 +470,10 @@ return quoted;
- void
- mysql_version_report(FILE *f)
- {
--fprintf(f, "Library version: MySQL: Compile: %s [%s]\n"
-- " Runtime: %s\n",
-- MYSQL_SERVER_VERSION, MYSQL_COMPILATION_COMMENT,
-- mysql_get_client_info());
-+fprintf(f, "Library version: MySQL: Compile: %lu %s [%s]\n"
-+ " Runtime: %lu %s\n",
-+ (long)EXIM_MxSQL_VERSION_ID, EXIM_MxSQL_VERSION_STR, EXIM_MxSQL_BASE_STR,
-+ mysql_get_client_version(), mysql_get_client_info());
- #ifdef DYNLOOKUP
- fprintf(f, " Exim version %s\n", EXIM_VERSION_STR);
- #endif
-Index: exim-4.86.2/src/EDITME
-===================================================================
---- exim-4.86.2.orig/src/EDITME
-+++ exim-4.86.2/src/EDITME
-@@ -253,7 +253,7 @@ TRANSPORT_SMTP=yes
- # you perform upgrades and revert them. You should consider the benefit of
- # embedding the Exim version number into LOOKUP_MODULE_DIR, so that you can
- # maintain two concurrent sets of modules.
--#
-+#
- # *BEWARE*: ability to modify the files in LOOKUP_MODULE_DIR is equivalent to
- # the ability to modify the Exim binary, which is often setuid root! The Exim
- # developers only intend this functionality be used by OS software packagers
-@@ -301,6 +301,7 @@ LOOKUP_DNSDB=yes
- # LOOKUP_IBASE=yes
- # LOOKUP_LDAP=yes
- # LOOKUP_MYSQL=yes
-+# LOOKUP_MYSQL_PC=mariadb
- # LOOKUP_NIS=yes
- # LOOKUP_NISPLUS=yes
- # LOOKUP_ORACLE=yes
Index: exim-4.88.tar.bz2
===================================================================
Binary file exim-4.88.tar.bz2 (revision 200) deleted
Index: exim-4.88.tar.bz2.asc
===================================================================
--- exim-4.88.tar.bz2.asc (revision 200)
+++ exim-4.88.tar.bz2.asc (deleted)
@@ -1,10 +0,0 @@
------BEGIN PGP SIGNATURE-----
-
-iQEcBAABAgAGBQJYVqBoAAoJELzljIzkHzLf5vIH/R4gcGqdEwGkFDRwQA5ImNif
-USPeSli63U2tL2YRpf8E/sMWlf2ywZl9vGkVWhvYFvMWI4gn+hNAh0jUj2BakCdI
-aEjUk0KSA0nXHzIGmNyf0lAcC1VONRq0KLxfQvlGF8RrKnBL7urg46EVFagmU8g9
-m3KVHPjv1cUIICZdJVWICUChjjm23pBvtqr1M9TgUAhWQU0FaG9dmgY2Kh4s2pnG
-0o+llbQdU1hvtk0lTMzZYmYTtS3totoyR3aKYdws/epOnE1MgVOIlnp2q5R9FMO1
-RE5bHa2Qg5UCf5wwAKSOxIDLPEVUoX6qkbP7inByuGKZ5dSvBQwUGPAt+b2Lb38=
-=jgHZ
------END PGP SIGNATURE-----
Index: exim-CVE-2017-1000369.patch
===================================================================
--- exim-CVE-2017-1000369.patch (revision 200)
+++ exim-CVE-2017-1000369.patch (deleted)
@@ -1,43 +0,0 @@
-commit 65e061b76867a9ea7aeeb535341b790b90ae6c21
-Author: Heiko Schlittermann (HS12-RIPE) <hs@schlittermann.de>
-Date: Wed May 31 23:08:56 2017 +0200
-
- Cleanup (prevent repeated use of -p/-oMr to avoid mem leak)
-
-diff --git a/src/exim.c b/src/src/exim.c
-index 67583e58..88e11977 100644
---- a/src/exim.c
-+++ b/src/exim.c
-@@ -3106,7 +3106,14 @@ for (i = 1; i < argc; i++)
-
- /* -oMr: Received protocol */
-
-- else if (Ustrcmp(argrest, "Mr") == 0) received_protocol = argv[++i];
-+ else if (Ustrcmp(argrest, "Mr") == 0)
-+
-+ if (received_protocol)
-+ {
-+ fprintf(stderr, "received_protocol is set already\n");
-+ exit(EXIT_FAILURE);
-+ }
-+ else received_protocol = argv[++i];
-
- /* -oMs: Set sender host name */
-
-@@ -3202,7 +3209,15 @@ for (i = 1; i < argc; i++)
-
- if (*argrest != 0)
- {
-- uschar *hn = Ustrchr(argrest, ':');
-+ uschar *hn;
-+
-+ if (received_protocol)
-+ {
-+ fprintf(stderr, "received_protocol is set already\n");
-+ exit(EXIT_FAILURE);
-+ }
-+
-+ hn = Ustrchr(argrest, ':');
- if (hn == NULL)
- {
- received_protocol = argrest;
Index: exim-CVE-2017-16943.patch
===================================================================
--- exim-CVE-2017-16943.patch (revision 200)
+++ exim-CVE-2017-16943.patch (deleted)
@@ -1,40 +0,0 @@
-From 4e6ae6235c68de243b1c2419027472d7659aa2b4 Mon Sep 17 00:00:00 2001
-From: Jeremy Harris <jgh146exb@wizmail.org>
-Date: Fri, 24 Nov 2017 20:22:33 +0000
-Subject: [PATCH] Avoid release of store if there have been later allocations.
- Bug 2199
-
----
- src/src/receive.c | 7 ++++---
- 1 file changed, 4 insertions(+), 3 deletions(-)
-
-diff --git a/src/src/receive.c b/src/src/receive.c
-index e7e518a..d9b5001 100644
---- a/src/receive.c
-+++ b/src/receive.c
-@@ -1810,8 +1810,8 @@ for (;;)
- (and sometimes lunatic messages can have ones that are 100s of K long) we
- call store_release() for strings that have been copied - if the string is at
- the start of a block (and therefore the only thing in it, because we aren't
-- doing any other gets), the block gets freed. We can only do this because we
-- know there are no other calls to store_get() going on. */
-+ doing any other gets), the block gets freed. We can only do this release if
-+ there were no allocations since the once that we want to free. */
-
- if (ptr >= header_size - 4)
- {
-@@ -1820,9 +1820,10 @@ for (;;)
- header_size *= 2;
- if (!store_extend(next->text, oldsize, header_size))
- {
-+ BOOL release_ok = store_last_get[store_pool] == next->text;
- uschar *newtext = store_get(header_size);
- memcpy(newtext, next->text, ptr);
-- store_release(next->text);
-+ if (release_ok) store_release(next->text);
- next->text = newtext;
- }
- }
---
-1.9.1
-
Index: exim-CVE-2017-16944.patch
===================================================================
--- exim-CVE-2017-16944.patch (revision 200)
+++ exim-CVE-2017-16944.patch (deleted)
@@ -1,41 +0,0 @@
-diff -ru a/src/receive.c b/src/receive.c
---- a/src/receive.c 2017-11-30 09:15:29.593364805 +0100
-+++ b/src/receive.c 2017-11-30 09:17:32.026970431 +0100
-@@ -1759,7 +1759,7 @@
- prevent further reading), and break out of the loop, having freed the
- empty header, and set next = NULL to indicate no data line. */
-
-- if (ptr == 0 && ch == '.' && (smtp_input || dot_ends))
-+ if (ptr == 0 && ch == '.' && dot_ends)
- {
- ch = (receive_getc)();
- if (ch == '\r')
-diff -ru a/src/smtp_in.c b/src/smtp_in.c
---- a/src/smtp_in.c 2017-11-30 09:15:29.593364805 +0100
-+++ b/src/smtp_in.c 2017-11-30 09:41:47.270055566 +0100
-@@ -4751,11 +4751,17 @@
- ? CHUNKING_LAST : CHUNKING_ACTIVE;
- chunking_data_left = chunking_datasize;
-
-+ /* push the current receive_* function on the "stack", and
-+ replace them by bdat_getc(), which in turn will use the lwr_receive_*
-+ functions to do the dirty work. */
- lwr_receive_getc = receive_getc;
- lwr_receive_ungetc = receive_ungetc;
-+
- receive_getc = bdat_getc;
- receive_ungetc = bdat_ungetc;
-
-+ dot_ends = FALSE;
-+
- DEBUG(D_any)
- debug_printf("chunking state %d\n", (int)chunking_state);
- goto DATA_BDAT;
-@@ -4763,6 +4769,7 @@
-
- case DATA_CMD:
- HAD(SCH_DATA);
-+ dot_ends = TRUE;
-
- DATA_BDAT: /* Common code for DATA and BDAT */
- if (!discarded && recipients_count <= 0)
OBS-URL: https://build.opensuse.org/request/show/576288
OBS-URL: https://build.opensuse.org/package/show/server:mail/exim?expand=0&rev=201
- update to 4.88:
drops fix-CVE-2016-9963-31c02defdc5118834e801d4fe8f11c1d9b5ebadf.patch,
exim-4.86.2+fixes-867e8fe25dbfb1e31493488ad695bde55b890397.patch
- remove exim4-manpages.tar.bz2: upstream does not exist anymore
- update keyring
- add exim-4.86.2-mariadb_102_compile_fix.patch to fix compilation
with the mariadb 10.2 (in our case the build with libmariadb
library from the mariadb-connector-c package)
* upstream commits: a12400fd4493b676e71613ab429e731f777ebd1e and
31beb7972466a33a88770eacbce13490f2ddadc2
- exim-CVE-2017-16943.patch: fixed possible code execution (CVE-2017-16943 bsc#1069857)
OBS-URL: https://build.opensuse.org/request/show/545933
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/exim?expand=0&rev=46
Corrections for inverted bcond
import exim-4_86_2+fixes branch
+ fix CVE-2016-1531
when installed setuid root, allows local users to gain privileges via the perl_startup
argument.
+ fix Bug 1805: store the initial working directory, expand $initial_cwd
+ fix Bug 1671: segfault after delivery (https://bugs.exim.org/show_bug.cgi?id=1671)
+ Don't issue env warning if env is empty
- fix CVE-2016-9963: DKIM information leakage
- conditionally disable DANE on SuSE versions with OpenSSL < 1.0
- disable i18n by default, utf8_downconvert seems to cause crashes
OBS-URL: https://build.opensuse.org/request/show/490905
OBS-URL: https://build.opensuse.org/package/show/server:mail/exim?expand=0&rev=183
- Update the Exim Maintainers Keyring file 'exim.keyring'.
- Use URL for the source line of the main tar ball.
- Update to 4.86
* Support for using the system standard CA bundle.
* New expansion items $config_file, $config_dir, containing the file
and directory name of the main configuration file. Also $exim_version.
* New "malware=" support for Avast.
* New "spam=" variant option for Rspamd.
* Assorted options on malware= and spam= scanners.
* A commandline option to write a comment into the logfile.
* If built with EXPERIMENTAL_SOCKS feature enabled, the smtp transport can
be configured to make connections via socks5 proxies.
* If built with EXPERIMENTAL_INTERNATIONAL, support is included for
the transmission of UTF-8 envelope addresses.
* If built with EXPERIMENTAL_INTERNATIONAL, an expansion item for a commonly
used encoding of Maildir folder names.
* A logging option for slow DNS lookups.
* New ${env {<variable>}} expansion.
* A non-SMTP authenticator using information from TLS client certificates.
* Main option "tls_eccurve" for selecting an Elliptic Curve for TLS.
Patch originally by Wolfgang Breyha.
* Main option "dns_trust_aa" for trusting your local nameserver at the
same level as DNSSEC.
- Dropped exim-enable_ecdh_openssl.patch as included in upstream
OBS-URL: https://build.opensuse.org/request/show/348366
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/exim?expand=0&rev=38
- Update to 4.86
* Support for using the system standard CA bundle.
* New expansion items $config_file, $config_dir, containing the file
and directory name of the main configuration file. Also $exim_version.
* New "malware=" support for Avast.
* New "spam=" variant option for Rspamd.
* Assorted options on malware= and spam= scanners.
* A commandline option to write a comment into the logfile.
* If built with EXPERIMENTAL_SOCKS feature enabled, the smtp transport can
be configured to make connections via socks5 proxies.
* If built with EXPERIMENTAL_INTERNATIONAL, support is included for
the transmission of UTF-8 envelope addresses.
* If built with EXPERIMENTAL_INTERNATIONAL, an expansion item for a commonly
used encoding of Maildir folder names.
* A logging option for slow DNS lookups.
* New ${env {<variable>}} expansion.
* A non-SMTP authenticator using information from TLS client certificates.
* Main option "tls_eccurve" for selecting an Elliptic Curve for TLS.
Patch originally by Wolfgang Breyha.
* Main option "dns_trust_aa" for trusting your local nameserver at the
same level as DNSSEC.
- Dropped exim-enable_ecdh_openssl.patch as included in upstream
OBS-URL: https://build.opensuse.org/request/show/335998
OBS-URL: https://build.opensuse.org/package/show/server:mail/exim?expand=0&rev=171
- Set CFLAGS_OPT_WERROR only on post-5 CentOS and RHEL systems.
- Drop BuildRequires xorg-x11-server-sdk for non SUSE systems in particular to
build on RHEL 6 again.
- Let ld know the path to mysqlclient.
- update to 4.85
See doc/ChangeLog from the main tar ball or the exim file for
more details.
- Enable SPF
- Fix service file
- Using bcond for mysql, pgsql and ldap
- mysql, pgsql and ldap enabled by default
OBS-URL: https://build.opensuse.org/request/show/282706
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/exim?expand=0&rev=33
- Remove dependency on gpg-offline as signature checking is implemented in the
source validator.
- update to 4.84
+ Re-add a 'return NULL' to silence complaints from static checkers that
were complaining about end of non-void function with no return;
(beo#1506); obsoletes silence-static-checkers.patch.
+ Fix parsing of quoted parameter values in MIME headers.
This was a regression intruduced in 4.83 by another bugfix; (beo#1513).
+ Fix broken compilation when EXPERIMENTAL_DSN is enabled.
+ Fix exipick for enhanced spoolfile specification used when
EXPERIMENTAL_DNS is enabled; (beo#1509).
OBS-URL: https://build.opensuse.org/request/show/263136
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/exim?expand=0&rev=31
+ Re-add a 'return NULL' to silence complaints from static checkers that
were complaining about end of non-void function with no return;
(beo#1506); obsoletes silence-static-checkers.patch.
+ Fix parsing of quoted parameter values in MIME headers.
This was a regression intruduced in 4.83 by another bugfix; (beo#1513).
+ Fix broken compilation when EXPERIMENTAL_DSN is enabled.
+ Fix exipick for enhanced spoolfile specification used when
EXPERIMENTAL_DNS is enabled; (beo#1509).
OBS-URL: https://build.opensuse.org/package/show/server:mail/exim?expand=0&rev=151
- Add silence-static-checkers.patch; (beo#1506).
- update to 4.83
This release of Exim includes one incompatible fix:
+ the behavior of expansion of arguments to math comparison functions
(<, <=, =, =>, >) was unexpected, expanding the values twice;
CVE-2014-2972; (bnc#888520)
This release contains the following enhancements and bugfixes:
+ PRDR was promoted from Experimental to mainline
+ OCSP Stapling was promoted from Experimental to mainline
+ new Experimental feature Proxy Protocol
+ new Experimental feature DSN (Delivery Status Notifications)
+ TLS session improvements
+ TLS SNI fixes
+ LDAP enhancements
+ DMARC fixes (previous CVE-2014-2957) and new $dmarc_domain_policy
+ several new operations (listextract, utf8clean, md5, sha1)
+ enforce header formatting with verify=header_names_ascii
+ new commandline option -oMm
+ new TLSA dns lookup
+ new malware "sock" type
+ cutthrough routing enhancements
+ logging enhancements
+ DNSSEC enhancements
+ exiqgrep enhancements
+ deprecating non-standard SPF results
+ build and portability fixes
+ documentation fixes and enhancements
- Verify source tar ball gpg signature.
- Refresh exim-enable_ecdh_openssl.patch and strip version number from the
patch filename.
The next two are a change log merge only. These two references got
somehow lost in the past.
- Fixed another remote code execution issue (CVE-2011-1407 / bnc#694798)
- Fixed STARTTLS command injection (bnc#695144)
OBS-URL: https://build.opensuse.org/request/show/242388
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/exim?expand=0&rev=28
This release of Exim includes one incompatible fix:
+ the behavior of expansion of arguments to math comparison functions
(<, <=, =, =>, >) was unexpected, expanding the values twice;
CVE-2014-2972; (bnc#888520)
This release contains the following enhancements and bugfixes:
+ PRDR was promoted from Experimental to mainline
+ OCSP Stapling was promoted from Experimental to mainline
+ new Experimental feature Proxy Protocol
+ new Experimental feature DSN (Delivery Status Notifications)
+ TLS session improvements
+ TLS SNI fixes
+ LDAP enhancements
+ DMARC fixes (previous CVE-2014-2957) and new $dmarc_domain_policy
+ several new operations (listextract, utf8clean, md5, sha1)
+ enforce header formatting with verify=header_names_ascii
+ new commandline option -oMm
+ new TLSA dns lookup
+ new malware "sock" type
+ cutthrough routing enhancements
+ logging enhancements
+ DNSSEC enhancements
+ exiqgrep enhancements
+ deprecating non-standard SPF results
+ build and portability fixes
+ documentation fixes and enhancements
- Verify source tar ball gpg signature.
- Refresh exim-enable_ecdh_openssl.patch and strip version number from the
patch filename.
OBS-URL: https://build.opensuse.org/package/show/server:mail/exim?expand=0&rev=140
- update to 4.80
- Bugzilla 949 - Documentation tweak.
- Bugzilla 1093 - eximstats DATA reject detection regexps improved.
- Bugzilla 1169 - primary_hostname spelling was incorrect in docs.
- Implemented gsasl authenticator.
- Implemented heimdal_gssapi authenticator with "server_keytab" option.
- Local/Makefile support for (AUTH|LOOKUP)_*_PC=foo to use
`pkg-config foo` for cflags/libs.
- Swapped $auth1/$auth2 for gsasl GSSAPI mechanism, to be more consistent
with rest of GSASL and with heimdal_gssapi.
- Local/Makefile support for USE_(GNUTLS|OPENSSL)_PC=foo to use
`pkg-config foo` for cflags/libs for the TLS implementation.
- New expansion variable $tls_bits; Cyrus SASL server connection
properties get this fed in as external SSF. A number of robustness
and debugging improvements to the cyrus_sasl authenticator.
- cyrus_sasl server now expands the server_realm option.
- Bugzilla 1214 - Log authentication information in reject log.
- Added dbmjz lookup type.
- Let heimdal_gssapi authenticator take a SASL message without an authzid.
- MAIL args handles TAB as well as SP, for better interop with
non-compliant senders.
- Bugzilla 1237 - fix cases where printf format usage not indicated.
- tls_peerdn now print-escaped for spool files.
Observed some $tls_peerdn in wild which contained \n, which resulted
in spool file corruption.
- TLS fixes for OpenSSL: support TLS 1.1 & 1.2; new "openssl_options"
values; set SSL_MODE_AUTO_RETRY so that OpenSSL will retry a read
or write after TLS renegotiation, which otherwise led to messages
"Got SSL error 2".
- Bugzilla 1239 - fix DKIM verification when signature was not inserted
as a tracking header (ie: a signed header comes before the signature).
- Bugzilla 660 - Multi-valued attributes from ldap now parseable as a
comma-sep list; embedded commas doubled.
- Refactored ACL "verify =" logic to table-driven dispatch.
- LDAP: Check for errors of TLS initialisation, to give correct diagnostics.
- Removed "dont_insert_empty_fragments" fron "openssl_options".
Removed SSL_clear() after SSL_new() which led to protocol negotiation
failures. We appear to now support TLS1.1+ with Exim.
- OpenSSL: new expansion var $tls_sni, which if used in tls_certificate
lets Exim select keys and certificates based upon TLS SNI from client.
Also option tls_sni on SMTP Transports. Also clear $tls_bits correctly
before an outbound SMTP session. New log_selector, +tls_sni.
- Bugzilla 1122 - check localhost_number expansion for failure, avoid
NULL dereference.
- Revert part of NM/04, it broke log_path containing %D expansions.
Left warnings. Added "eximon gdb" invocation mode.
- Defaulting "accept_8bitmime" to true, not false.
- Added -bw for inetd wait mode support.
- Added PCRE_CONFIG=yes support to Makefile for using pcre-config to
locate the relevant includes and libraries. Made this the default.
- Fixed headers_only on smtp transports (was not sending trailing dot).
Bugzilla 1246, report and most of solution from Tomasz Kusy.
- ${eval } now uses 64-bit and supports a "g" suffix (like to "k" and "m").
This may cause build issues on older platforms.
- Revamped GnuTLS support, passing tls_require_ciphers to
gnutls_priority_init, ignoring Exim options gnutls_require_kx,
gnutls_require_mac & gnutls_require_protocols (no longer supported).
Added SNI support via GnuTLS too.
Made ${randint:..} supplier available, if using not-too-old GnuTLS.
- Added EXPERIMENTAL_OCSP for OpenSSL.
- Applied dnsdb SPF support patch from Janne Snabb.
Applied second patch from Janne, implementing suggestion to default
multiple-strings-in-record handling to match SPF spec.
- Added expansion variable $tod_epoch_l for a higher-precision time.
- Fix DCC dcc_header content corruption (stack memory referenced,
read-only, out of scope).
Patch from Wolfgang Breyha, report from Stuart Northfield.
- Fix three issues highlighted by clang analyser static analysis.
Only crash-plausible issue would require the Cambridge-specific
iplookup router and a misconfiguration.
Report from Marcin Mirosław.
- Another attempt to deal with PCRE_PRERELEASE, this one less buggy.
- %D in printf continues to cause issues (-Wformat=security), so for
now guard some of the printf checks behind WANT_DEEPER_PRINTF_CHECKS.
As part of this, removing so much warning spew let me fix some minor
real issues in debug logging.
- GnuTLS was always using default tls_require_ciphers, due to a missing
assignment on my part. Fixed.
- Added tls_dh_max_bits option, defaulting to current hard-coded limit
of NSS, for GnuTLS/NSS interop.
- Validate tls_require_ciphers on startup, since debugging an invalid
string otherwise requires a connection and a bunch more work and it's
relatively easy to get wrong. Should also expose TLS library linkage
problems.
- Pull in <features.h> on Linux, for some portability edge-cases of
64-bit ${eval} (JH/03).
- Define _GNU_SOURCE in exim.h; it's needed for some releases of
protection layer was required, which is not implemented. Bugzilla 1254
- Overhaul DH prime handling, supply RFC-specified DH primes as built
into Exim, default to IKE id 23 from RFC 5114 (2048 bit). Make
tls_dhparam take prime identifiers. Also unbreak combination of
OpenSSL+DH_params+TLSSNI.
- Disable SSLv2 by default in OpenSSL support.
OBS-URL: https://build.opensuse.org/request/show/131173
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/exim?expand=0&rev=19
- Bugzilla 949 - Documentation tweak.
- Bugzilla 1093 - eximstats DATA reject detection regexps improved.
- Bugzilla 1169 - primary_hostname spelling was incorrect in docs.
- Implemented gsasl authenticator.
- Implemented heimdal_gssapi authenticator with "server_keytab" option.
- Local/Makefile support for (AUTH|LOOKUP)_*_PC=foo to use
`pkg-config foo` for cflags/libs.
- Swapped $auth1/$auth2 for gsasl GSSAPI mechanism, to be more consistent
with rest of GSASL and with heimdal_gssapi.
- Local/Makefile support for USE_(GNUTLS|OPENSSL)_PC=foo to use
`pkg-config foo` for cflags/libs for the TLS implementation.
- New expansion variable $tls_bits; Cyrus SASL server connection
properties get this fed in as external SSF. A number of robustness
and debugging improvements to the cyrus_sasl authenticator.
- cyrus_sasl server now expands the server_realm option.
- Bugzilla 1214 - Log authentication information in reject log.
- Added dbmjz lookup type.
- Let heimdal_gssapi authenticator take a SASL message without an authzid.
- MAIL args handles TAB as well as SP, for better interop with
non-compliant senders.
- Bugzilla 1237 - fix cases where printf format usage not indicated.
- tls_peerdn now print-escaped for spool files.
Observed some $tls_peerdn in wild which contained \n, which resulted
in spool file corruption.
- TLS fixes for OpenSSL: support TLS 1.1 & 1.2; new "openssl_options"
values; set SSL_MODE_AUTO_RETRY so that OpenSSL will retry a read
or write after TLS renegotiation, which otherwise led to messages
"Got SSL error 2".
- Bugzilla 1239 - fix DKIM verification when signature was not inserted
as a tracking header (ie: a signed header comes before the signature).
- Bugzilla 660 - Multi-valued attributes from ldap now parseable as a
comma-sep list; embedded commas doubled.
- Refactored ACL "verify =" logic to table-driven dispatch.
- LDAP: Check for errors of TLS initialisation, to give correct diagnostics.
- Removed "dont_insert_empty_fragments" fron "openssl_options".
Removed SSL_clear() after SSL_new() which led to protocol negotiation
failures. We appear to now support TLS1.1+ with Exim.
- OpenSSL: new expansion var $tls_sni, which if used in tls_certificate
lets Exim select keys and certificates based upon TLS SNI from client.
Also option tls_sni on SMTP Transports. Also clear $tls_bits correctly
before an outbound SMTP session. New log_selector, +tls_sni.
- Bugzilla 1122 - check localhost_number expansion for failure, avoid
NULL dereference.
- Revert part of NM/04, it broke log_path containing %D expansions.
Left warnings. Added "eximon gdb" invocation mode.
- Defaulting "accept_8bitmime" to true, not false.
- Added -bw for inetd wait mode support.
- Added PCRE_CONFIG=yes support to Makefile for using pcre-config to
locate the relevant includes and libraries. Made this the default.
- Fixed headers_only on smtp transports (was not sending trailing dot).
Bugzilla 1246, report and most of solution from Tomasz Kusy.
- ${eval } now uses 64-bit and supports a "g" suffix (like to "k" and "m").
This may cause build issues on older platforms.
- Revamped GnuTLS support, passing tls_require_ciphers to
gnutls_priority_init, ignoring Exim options gnutls_require_kx,
gnutls_require_mac & gnutls_require_protocols (no longer supported).
Added SNI support via GnuTLS too.
Made ${randint:..} supplier available, if using not-too-old GnuTLS.
- Added EXPERIMENTAL_OCSP for OpenSSL.
- Applied dnsdb SPF support patch from Janne Snabb.
Applied second patch from Janne, implementing suggestion to default
multiple-strings-in-record handling to match SPF spec.
- Added expansion variable $tod_epoch_l for a higher-precision time.
- Fix DCC dcc_header content corruption (stack memory referenced,
read-only, out of scope).
Patch from Wolfgang Breyha, report from Stuart Northfield.
- Fix three issues highlighted by clang analyser static analysis.
Only crash-plausible issue would require the Cambridge-specific
iplookup router and a misconfiguration.
Report from Marcin Mirosław.
- Another attempt to deal with PCRE_PRERELEASE, this one less buggy.
- %D in printf continues to cause issues (-Wformat=security), so for
now guard some of the printf checks behind WANT_DEEPER_PRINTF_CHECKS.
As part of this, removing so much warning spew let me fix some minor
real issues in debug logging.
- GnuTLS was always using default tls_require_ciphers, due to a missing
assignment on my part. Fixed.
- Added tls_dh_max_bits option, defaulting to current hard-coded limit
of NSS, for GnuTLS/NSS interop.
- Validate tls_require_ciphers on startup, since debugging an invalid
string otherwise requires a connection and a bunch more work and it's
relatively easy to get wrong. Should also expose TLS library linkage
problems.
- Pull in <features.h> on Linux, for some portability edge-cases of
64-bit ${eval} (JH/03).
- Define _GNU_SOURCE in exim.h; it's needed for some releases of
protection layer was required, which is not implemented. Bugzilla 1254
- Overhaul DH prime handling, supply RFC-specified DH primes as built
into Exim, default to IKE id 23 from RFC 5114 (2048 bit). Make
tls_dhparam take prime identifiers. Also unbreak combination of
OpenSSL+DH_params+TLSSNI.
- Disable SSLv2 by default in OpenSSL support.
OBS-URL: https://build.opensuse.org/package/show/server:mail/exim?expand=0&rev=122
The reformating of the spec file was performed by osc build I guess.
Also the reordering some lines of the package definition.
As the removal of '# norootforbuild'.
- Disable format-security and missing-format-attribute warnings via CFLAGS on
pre-11.2 systems.
- Remove obsoleted Authors lines from spec file.
- update to 4.77
See the package changelog for the full history.
- update to 4.77
See the package changelog for the full history.
- Package /var/log/exim owned by user and group mail; (bnc#670711).
OBS-URL: https://build.opensuse.org/request/show/109834
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/exim?expand=0&rev=17
- Workround for PCRE version dependency in version reporting
Bugzilla 1073
- Permit LOOKUP_foo enabling on the make command-line.
Also via indented variable definition in the Makefile.
- Restore caching of spamd results with expanded spamd_address.
- Build issue: lookups-Makefile now exports LC_ALL=C
Improves build reliability.
- Fix wide character breakage in the rfc2047 coding; Fixes bug 1064.
- Allow underscore in dnslist lookups; Fixes bug 1026.
- Bugzilla 230: Support TLS-enabled LDAP (in addition to ldaps).
- Fixed exiqgrep to cope with mailq missing size issue
Fixes bug 943.
- Bugzilla 1083: when lookup expansion defers, escape the output which
is logged, to avoid truncation.
- Bugzilla 1042: implement freeze_signal on pipe transports.
- Bugzilla 1061: restrict error messages sent over SMTP to not reveal
SQL string expansion failure details.
- Bugzilla 486: implement %M datestamping in log filenames.
- New lookups functionality failed to compile on old gcc which rejects
extern declarations in function scope.
- Use sig_atomic_t for flags set from signal handlers.
Check getgroups() return and improve debugging.
Fixed developed for diagnosis in bug 927 (which turned out to be
a kernel bug).
- Bugzilla 1055: Update $message_linecount for maildir_tag.
- Bugzilla 1056: Improved spamd server selection.
- Bugzilla 1086: Deal with maildir quota file races.
- Bugzilla 1019: DKIM multiple signature generation fix.
OBS-URL: https://build.opensuse.org/package/show/server:mail/exim?expand=0&rev=106
- Failure to get a lock on a hints database can have serious
consequences so log it to the panic log.
- Log LMTP confirmation messages in the same way as SMTP,
controlled using the smtp_confirmation log selector.
- Include the error message when we fail to unlink a spool file.
- Bugzilla 139: Support dynamically loaded lookups as modules.
- Bugzilla 139: Documentation and portability issues.
Avoid GNU Makefile-isms, let Exim continue to build on BSD.
Handle per-OS dynamic-module compilation flags.
- Let /dev/null have normal permissions.
The 4.73 fixes were a little too stringent and complained about the
permissions on /dev/null. Exempt it from some checks.
- Report version information for many libraries, including
Exim version information for dynamically loaded libraries. Created
version.h, now support a version extension string for distributors
who patch heavily. Dynamic module ABI change.
- CVE-2011-0017 - check return value of setuid/setgid. This is a
privilege escalation vulnerability whereby the Exim run-time user
can cause root to append content of the attacker's choosing to
arbitrary files.
- Bugzilla 1041: merged DCC maintainer's fixes for return code.
- Bugzilla 1071: fix delivery logging with untrusted macros.
If dropping privileges for untrusted macros, we disabled normal logging
on the basis that it would fail; for the Exim run-time user, this is not
the case, and it resulted in successful deliveries going unlogged.
- update to 4.73
- Date: & Message-Id: revert to normally being appended to a message,
only prepend for the Resent-* case. Fixes regression introduced in
Exim 4.70 by NM/22 for Bugzilla 607.
- Include check_rfc2047_length in configure.default because we're seeing
increasing numbers of administrators be bitten by this.
- Added DISABLE_DKIM and comment to src/EDITME
- Bugzilla 994: added openssl_options main configuration option.
- Bugzilla 995: provide better SSL diagnostics on failed reads.
- Bugzilla 834: provide a permit_coredump option for pipe transports.
- Adjust NTLM authentication to handle SASL Initial Response.
- If TLS negotiated an anonymous cipher, we could end up with SSL but
without a peer certificate, leading to a segfault because of an
assumption that peers always have certificates. Be a little more
paranoid. Problem reported by Martin Tscholak.
- Bugzilla 926: switch ClamAV to use the new zINSTREAM API for content
filtering; old API available if built with WITH_OLD_CLAMAV_STREAM=yes
NB: ClamAV planning to remove STREAM in "middle of 2010".
CL also introduces -bmalware, various -d+acl logging additions and
more caution in buffer sizes.
- Implemented reverse_ip expansion operator.
- Bugzilla 937: provide a "debug" ACL control.
- Bugzilla 922: Documentation dusting, patch provided by John Horne.
- Bugzilla 973: Implement --version.
- Bugzilla 752: Refuse to build/run if Exim user is root/0.
- Build without WITH_CONTENT_SCAN. Path from Andreas Metzler.
- Bugzilla 816: support multiple condition rules on Routers.
- Add bool_lax{} expansion operator and use that for combining multiple
condition rules, instead of bool{}. Make both bool{} and bool_lax{}
ignore trailing whitespace.
- prevent non-panic DKIM error from being sent to paniclog
- added tcp_wrappers_daemon_name to allow host entries other than
"exim" to be used
- Fix malware regression for cmdline scanner introduced in PP/08.
Notification from Dr Andrew Aitchison.
- Change ClamAV response parsing to be more robust and to handle ClamAV's
ExtendedDetectionInfo response format.
Notification from John Horne.
- OpenSSL 1.0.0a compatibility const-ness change, should be backwards
compatible.
- Added a CONTRIBUTING file. Fixed the documentation build to use http:
XSL and documented dependency on system catalogs, with examples of how
it normally works.
- Added Valgrind hooks in store.c to help it capture out-of-bounds store
access.
- Bugzilla 1044: CVE-2010-4345 - partial fix: restrict default behaviour
of CONFIGURE_OWNER and CONFIGURE_GROUP options to no longer allow a
configuration file which is writeable by the Exim user or group.
- Bugzilla 1044: CVE-2010-4345 - part two: extend checks for writeability
of configuration files to cover files specified with the -C option if
they are going to be used with root privileges, not just the default
configuration file.
- Bugzilla 1044: CVE-2010-4345 - part three: remove ALT_CONFIG_ROOT_ONLY
option (effectively making it always true).
- Add TRUSTED_CONFIG_PREFIX_FILE option to allow alternative configuration
files to be used while preserving root privileges.
- Set FD_CLOEXEC on SMTP sockets after forking in the daemon, to ensure
that rogue child processes cannot use them.
- Bugzilla 1047: change the default for system_filter_user to be the Exim
run-time user, instead of root.
- Add WHITELIST_D_MACROS option to let some macros be overriden by the
Exim run-time user without dropping privileges.
- Remove use of va_copy() which breaks pre-C99 systems. Duplicate the
result string, instead of calling string_vformat() twice with the same
arguments.
- Allow TRUSTED_CONFIG_PREFIX_FILE only for Exim or CONFIGURE_OWNER, not
for other users. Others should always drop root privileges if they use
-C on the command line, even for a whitelisted configure file.
- Turn TRUSTED_CONFIG_PREFIX_FILE into TRUSTED_CONFIG_FILE. No prefixes.
- Fixed bug #1002 - Message loss when using multiple deliveries
OBS-URL: https://build.opensuse.org/package/show/server:mail/exim?expand=0&rev=98
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.