Jeremy Harris [Tue, 17 May 2016 20:07:39 +0000 (21:07 +0100)]
Delivery: clarify error log line. Bug 1782
"retry time not reached for any host after a long failure period"
has generated so many queries it plainly is not clear.
Replace with
"all hosts for 'dom.ain' have been failing for a long time (and retry time not reached)".
Jeremy Harris [Mon, 16 May 2016 18:58:20 +0000 (19:58 +0100)]
Logging: dnssec status on accept & delivery lines
Jeremy Harris [Thu, 12 May 2016 20:57:34 +0000 (21:57 +0100)]
DANE: for hosts_try_dane (but not _require), on dnssec but no TLSA returned, fallback to plain TLS
Jeremy Harris [Fri, 6 May 2016 12:07:18 +0000 (13:07 +0100)]
Avoid exposing passwords in log, on failing ldap lookup expansion. Bug 165
Jeremy Harris [Wed, 4 May 2016 15:09:52 +0000 (16:09 +0100)]
Avoid exposing passwords in log, on failing ldap lookup expansion. Bug 165
Jeremy Harris [Wed, 4 May 2016 15:32:30 +0000 (16:32 +0100)]
TLS: support older GnuTLS versions
Jeremy Harris [Wed, 4 May 2016 13:48:41 +0000 (14:48 +0100)]
TLS: when tls_certificates unset, generate a selfsigned cert
Jeremy Harris [Tue, 26 Apr 2016 23:34:11 +0000 (00:34 +0100)]
Delivery: quieten smtp transport conn reuse vs. delivery race. Bug 1810
The fix is in deliver.c only. The remainder is just tidying.
Jeremy Harris [Sun, 24 Apr 2016 20:34:08 +0000 (21:34 +0100)]
char signedness
Jeremy Harris [Sun, 24 Apr 2016 15:53:25 +0000 (16:53 +0100)]
DANE: Remove fallback from hosts_try_dane. If TLSA record not retrieved,
do not use this host.
Jeremy Harris [Mon, 18 Apr 2016 15:10:32 +0000 (16:10 +0100)]
DANE: treat "no action taken" response from library as a non-error
Heiko Schlittermann (HS12-RIPE) [Wed, 20 Apr 2016 21:36:20 +0000 (23:36 +0200)]
Doc: fix minor typos
Heiko Schlittermann (HS12-RIPE) [Fri, 15 Apr 2016 13:16:51 +0000 (15:16 +0200)]
configure.default: nice message for overlong lines (Bug 1817)
Jeremy Harris [Thu, 14 Apr 2016 16:36:16 +0000 (17:36 +0100)]
Tidying: coverity issues
Jeremy Harris [Thu, 14 Apr 2016 16:35:14 +0000 (17:35 +0100)]
Fix Solaris build
Jeremy Harris [Thu, 14 Apr 2016 13:06:10 +0000 (14:06 +0100)]
Tidying: coverity issues
Jeremy Harris [Thu, 14 Apr 2016 12:35:38 +0000 (13:35 +0100)]
Docs: add note on list-splitting
Jeremy Harris [Thu, 14 Apr 2016 12:31:20 +0000 (13:31 +0100)]
Expansions: fix forced-fail of extract. Bug 1815
Jeremy Harris [Wed, 13 Apr 2016 15:36:44 +0000 (16:36 +0100)]
Expansions: better error messages for parse errors, and better debug
Jeremy Harris [Sun, 10 Apr 2016 19:45:46 +0000 (20:45 +0100)]
tidying: char signedness
Jeremy Harris [Sun, 10 Apr 2016 19:24:06 +0000 (20:24 +0100)]
String-handling: rename string_cat() to string_catn() and intro a new string_cat()
to handle the common-use case of needing strlen() as the length
Jeremy Harris [Sat, 9 Apr 2016 20:26:45 +0000 (21:26 +0100)]
DKIM: use Exim native memoory management
Jeremy Harris [Sun, 10 Apr 2016 15:51:16 +0000 (16:51 +0100)]
tidying: char signedness
Jeremy Harris [Sun, 10 Apr 2016 12:00:08 +0000 (13:00 +0100)]
Docs: fix URL
Jeremy Harris [Wed, 23 Mar 2016 21:50:20 +0000 (21:50 +0000)]
Cleanup redundant definition of PATH_MAX
Jeremy Harris [Sat, 9 Apr 2016 14:46:12 +0000 (15:46 +0100)]
Tidying: coverity issues
Jeremy Harris [Fri, 8 Apr 2016 18:37:13 +0000 (19:37 +0100)]
Testsuite: 0322 (pipelining errors) avoid triggering SIGPIPE
This was timing-dependent; if the exim closed the connection before
the script wrote to it _after_ triggerring an error, EPIPE/SIGPIPE.
Unexplained as yet: why runtest (perl) saw this as a 141 server
returncode (NB: 141-128 = 13 = SIGPIPE, the shell behaviour) when
"perldoc -v '$?'" (which runtest is coded to) says that a signum
should be in the top nibble of 16b.
Andrew Colin Kissa [Fri, 8 Apr 2016 12:56:43 +0000 (14:56 +0200)]
Doc: change in proxy variable names. Bug 1813
Jeremy Harris [Thu, 7 Apr 2016 23:44:36 +0000 (00:44 +0100)]
Testsuite: ignore environment-stripping debug output
since different systems run different environments
Jeremy Harris [Thu, 7 Apr 2016 22:30:45 +0000 (23:30 +0100)]
Testsuite: account for
b25c9675b31b (-bV errors)
Andrew Colin Kissa [Thu, 7 Apr 2016 14:35:03 +0000 (15:35 +0100)]
DANE: fix build under GnuTLS to properly fail. Bug 1812
Heiko Schlittermann (HS12-RIPE) [Thu, 24 Mar 2016 15:01:15 +0000 (16:01 +0100)]
Init the resolver even in -be mode.
This gives us consistent behaviour if we use the resolver in -be and in
-bh, and probably other modes. (Perl uses the resolver library linked
into Exim and Perl's Socket6::getaddrinfo() returned different results
in -be and -bh mode.)
Heiko Schlittermann (HS12-RIPE) [Mon, 1 Feb 2016 12:13:27 +0000 (13:13 +0100)]
Add perl_taintmode option
Heiko Schlittermann (HS12-RIPE) [Thu, 7 Apr 2016 07:24:01 +0000 (09:24 +0200)]
Suppress tls_advertise_hosts warning during 'make install'
Heiko Schlittermann (HS12-RIPE) [Thu, 7 Apr 2016 07:05:06 +0000 (09:05 +0200)]
Log: -bV should send all output to stderr/stdout
Jeremy Harris [Thu, 7 Apr 2016 00:09:05 +0000 (01:09 +0100)]
Demime: cleanup after WITH_OLD_DEMIME removal
Jeremy Harris [Fri, 18 Dec 2015 16:05:37 +0000 (16:05 +0000)]
ACL: remove obsolete demime condition
Jeremy Harris [Wed, 9 Mar 2016 14:03:58 +0000 (14:03 +0000)]
nicer retry message
Renaud Allard [Mon, 7 Mar 2016 19:04:34 +0000 (19:04 +0000)]
TLS: Fix ECDH use under LibreSSL. Bug 1806
Jeremy Harris [Sun, 7 Feb 2016 12:10:14 +0000 (12:10 +0000)]
Avoid RE compile unneeded unless LOOKUP_MODULE_DIR defined
Jeremy Harris [Tue, 2 Feb 2016 21:49:02 +0000 (21:49 +0000)]
Pass on SIZE to cutthrough connection
Jeremy Harris [Wed, 6 Apr 2016 19:28:03 +0000 (20:28 +0100)]
Docs: Clean for next release
Jeremy Harris [Sat, 2 Apr 2016 19:22:00 +0000 (20:22 +0100)]
Fix build on systems where size_t is (non-long) uint
The exemplar was Ubuntu 14.04 LTS 32-bit - but probably many
32-bit systems would be affected
Jeremy Harris [Sat, 2 Apr 2016 17:02:54 +0000 (18:02 +0100)]
contstification
Jeremy Harris [Sat, 2 Apr 2016 14:53:53 +0000 (15:53 +0100)]
Copyright year updates (things touched in 2016)
Update current year in docs and banner copyright in src/src/globals.c
Rest of changes from:
vi $(git whatchanged --since=2016-01-01 | grep '^:100' | sed -n 's/^[^M]*M//p' | sort -u | fgrep -v test/)
Heiko Schlittermann (HS12-RIPE) [Fri, 1 Apr 2016 17:00:55 +0000 (19:00 +0200)]
Constify use of string_nextinlist()
Jeremy Harris [Thu, 31 Mar 2016 20:33:28 +0000 (21:33 +0100)]
Testsuite: move perl-dependent testcases
Heiko Schlittermann (HS12-RIPE) [Sat, 26 Mar 2016 00:13:29 +0000 (01:13 +0100)]
Supress TLS/Env warnings in checking and listing mode
Andreas Metzler [Tue, 29 Mar 2016 16:57:55 +0000 (18:57 +0200)]
Typo fix.
messsage -> message
receved -> received
Found/reported by Vincent Lefevre in <https://bugs.debian.org/819482>.
Heiko Schlittermann (HS12-RIPE) [Wed, 23 Mar 2016 21:53:27 +0000 (22:53 +0100)]
Provide getcwd(NULL, 0) for Solaris (SunOS5)
Heiko Schlittermann (HS12-RIPE) [Thu, 24 Mar 2016 09:28:46 +0000 (10:28 +0100)]
Doc: Improve clarity on -be
Heiko Schlittermann (HS12-RIPE) [Wed, 23 Mar 2016 20:19:56 +0000 (21:19 +0100)]
Add os_unsetenv()
BSDI: void unsetenv(const char*)
Other: int unsetenv(const char*)
Heiko Schlittermann (HS12-RIPE) [Thu, 17 Mar 2016 10:06:38 +0000 (11:06 +0100)]
Constify spf
Jeremy Harris [Wed, 16 Mar 2016 15:30:57 +0000 (15:30 +0000)]
tidying: coverity issues
Jeremy Harris [Tue, 15 Mar 2016 19:39:07 +0000 (19:39 +0000)]
tidying: coverity issues
Jeremy Harris [Tue, 15 Mar 2016 19:16:14 +0000 (19:16 +0000)]
Utilites: fix exim_lock
Unaccountable fails to lock, seen in testsuite
Fix appeared when tidying a Coverity "unchecked returncode" fault
Jeremy Harris [Mon, 14 Mar 2016 12:13:43 +0000 (12:13 +0000)]
Fix build for Solaris: "all" must be the first make target.
Broken-by: dfe7d917154a Bug 1578
Jeremy Harris [Mon, 14 Mar 2016 12:13:33 +0000 (12:13 +0000)]
Docs: cuttthrough logging
Heiko Schlittermann (HS12-RIPE) [Sat, 12 Mar 2016 21:41:19 +0000 (22:41 +0100)]
Doc: Minor clarifications about the environment
Jeremy Harris [Sat, 12 Mar 2016 21:01:26 +0000 (21:01 +0000)]
tidying: coverity issues
Heiko Schlittermann (HS12-RIPE) [Fri, 11 Mar 2016 23:44:41 +0000 (00:44 +0100)]
Testsuite: fix output for 615, missing spool dir
Heiko Schlittermann (HS12-RIPE) [Fri, 11 Mar 2016 22:44:53 +0000 (23:44 +0100)]
Don't issue env warning if env is empty
keep_environment needs to be mentioned in the runtime config.
Setting add_environment isn't enough to suppress the warning.
Heiko Schlittermann (HS12-RIPE) [Thu, 10 Mar 2016 22:48:48 +0000 (23:48 +0100)]
Honour the -n for -bP config
Heiko Schlittermann (HS12-RIPE) [Thu, 10 Mar 2016 15:49:43 +0000 (16:49 +0100)]
Fix typos.
Thanks to Sander Bos for pointing out.
Heiko Schlittermann (HS12-RIPE) [Thu, 10 Mar 2016 15:48:01 +0000 (16:48 +0100)]
Doc: clarify -n
Heiko Schlittermann (HS12-RIPE) [Wed, 9 Mar 2016 20:41:34 +0000 (21:41 +0100)]
Extend configure.sample and the relevant spec part
Jeremy Harris [Wed, 9 Mar 2016 17:40:48 +0000 (17:40 +0000)]
String expansions: fix ${extract }, for the numeric/3-string case. Bug 1807
Broken-by: 82dbd37
In "skipping" mode when parsing an expansion we want to avoid expanding
the arguments, as the data for expansion is not necessarily valid. This
bit us previously for an extract within an "if inlist". But the number of
args for ${extract } depends on the expanded value of the first arg.
Retreat from strict parsing and just line up the outer braces,
accepting any number of args while skipping. The separate
non-skipping execution will do the proper checking.
Heiko Schlittermann (HS12-RIPE) [Wed, 9 Mar 2016 10:51:31 +0000 (11:51 +0100)]
Test the return of getcwd()
Heiko Schlittermann (HS12-RIPE) [Wed, 9 Mar 2016 10:13:42 +0000 (11:13 +0100)]
Store the initial working directory, expand $initial_cwd. Bug 1805
Heiko Schlittermann (HS12-RIPE) [Mon, 7 Mar 2016 08:44:15 +0000 (09:44 +0100)]
Remove trailing \n from {keep,add}_environment config warning
Jeremy Harris [Tue, 8 Mar 2016 23:57:37 +0000 (23:57 +0000)]
Fix build for HP-UX and older Solaris: (un)setenv. Bug 1578
Broken-by: bc3c7bb7d4ab
Jeremy Harris [Mon, 7 Mar 2016 18:46:41 +0000 (18:46 +0000)]
tidying: coverity issues
Jeremy Harris [Mon, 7 Mar 2016 10:14:20 +0000 (10:14 +0000)]
Docs: typo
Jeremy Harris [Sun, 6 Mar 2016 23:47:26 +0000 (23:47 +0000)]
tidying: coverity issues
Jeremy Harris [Sun, 6 Mar 2016 19:30:17 +0000 (19:30 +0000)]
tidying: coverity issues
Jeremy Harris [Sat, 5 Mar 2016 18:39:14 +0000 (18:39 +0000)]
Coverity: attempt to quieten null-deref whines about stringhandling
Jeremy Harris [Sat, 5 Mar 2016 16:04:57 +0000 (16:04 +0000)]
tidying: coverity issues
Andreas Metzler [Sat, 5 Mar 2016 14:58:21 +0000 (14:58 +0000)]
typoes
Jeremy Harris [Fri, 4 Mar 2016 11:58:27 +0000 (11:58 +0000)]
tidying: coverity issues
Jeremy Harris [Thu, 3 Mar 2016 22:55:34 +0000 (22:55 +0000)]
tidying: coverity issues
Jeremy Harris [Thu, 3 Mar 2016 18:21:41 +0000 (18:21 +0000)]
tidying
Jeremy Harris [Tue, 1 Mar 2016 20:58:00 +0000 (20:58 +0000)]
Cutthrough: Reflect 5xx recipient reject from target to originator
When connection not opened by verify and target hard-rejects a RCPT,
the reject was not being passed to the originating system (just the
cutthrough connection was being dropped). Fix this.
Jeremy Harris [Tue, 1 Mar 2016 19:23:14 +0000 (19:23 +0000)]
Testsuite: testcases for rejected rcpt-callout-triggered cutthrough
Jeremy Harris [Wed, 24 Feb 2016 18:19:04 +0000 (18:19 +0000)]
Cutthrough: fix operation under -bhc to not actually deliver. Bug 1800
Heiko Schlittermann (HS12-RIPE) [Thu, 3 Mar 2016 13:16:39 +0000 (14:16 +0100)]
Solaris /bin/sh does not understand 'export LC_ALL=C'
Heiko Schlittermann (HS12-RIPE) [Wed, 2 Mar 2016 21:07:45 +0000 (22:07 +0100)]
Delay chdir(/) until we opened the main config
Jeremy Harris [Fri, 26 Feb 2016 16:14:04 +0000 (16:14 +0000)]
Tidying: Issues detected by gcc --fsanitize=undefined
Heiko Schlittermann (HS12-RIPE) [Wed, 2 Mar 2016 18:53:07 +0000 (19:53 +0100)]
Merge branch 'master'
Heiko Schlittermann (HS12-RIPE) [Wed, 2 Mar 2016 16:25:01 +0000 (17:25 +0100)]
Use right type casts in string_compare_by_pointer
Heiko Schlittermann (HS12-RIPE) [Wed, 2 Mar 2016 07:12:49 +0000 (08:12 +0100)]
Remove confusing #ifndef environ
Heiko Schlittermann (HS12-RIPE) [Wed, 2 Mar 2016 07:12:16 +0000 (08:12 +0100)]
Testsuite: Adapt to portability fix in environment.c
Heiko Schlittermann (HS12-RIPE) [Tue, 1 Mar 2016 23:14:28 +0000 (00:14 +0100)]
Make qsort() in readconf.c more portable
Heiko Schlittermann (HS12-RIPE) [Tue, 1 Mar 2016 20:11:42 +0000 (21:11 +0100)]
Make environment.c more portable
Heiko Schlittermann (HS12-RIPE) [Wed, 24 Feb 2016 22:59:26 +0000 (23:59 +0100)]
Release: fix release script
- accept minor version number
- allow to skip the build-of-documentation step
- allow release of "any" version from anywhere
- avoid calling "old" reversion scripts, create version.sh
Nigel Metheringham [Wed, 24 Feb 2016 16:44:59 +0000 (16:44 +0000)]
Removed doc references to relay-test.mail-abuse.org
As per github ticket #37 - https://github.com/Exim/exim/issues/37
relay-test.mail-abuse.org is no longer available so references to it have been removed from the documentation.
Heiko Schlittermann (HS12-RIPE) [Thu, 28 Jan 2016 21:20:33 +0000 (22:20 +0100)]
Fix CVE-2016-1531
Add keep_environment, add_environment.
Change the working directory to "/" during the early startup
phase.
(cherry picked from commit
2b92b67bfc33efe05e6ff2ea3852731ac2273832)
(cherry picked from commit
14b82c8b736c8ed24eda144f57703cb9feac6323)
(cherry picked from commit
9ca92d0c6e9c6f161bd8111366c6952d3a9315e2)
(cherry picked from commit
0020c6d9ecfd98ed7b2b337ed4f898fdc409784b)
(cherry picked from commit
e8f96966360ea8867ad6a8b5affda6c37fa4958c)
(cherry picked from commit
ef6fb807c1e1a665f444f644c60c77269f7c5209)
Jeremy Harris [Thu, 18 Feb 2016 14:20:43 +0000 (14:20 +0000)]
Docs: clarify unit of S= log line element
Jeremy Harris [Mon, 15 Feb 2016 18:03:04 +0000 (18:03 +0000)]
Compiler quietening
Jeremy Harris [Sun, 14 Feb 2016 23:04:08 +0000 (23:04 +0000)]
Malware: fix error logged on a scanner connect fail. Bug 1796
Jeremy Harris [Mon, 8 Feb 2016 22:43:54 +0000 (22:43 +0000)]
TLS: support build with OpenSSL 1.1.0 Bug 1771