exim.git
5 years agoAvoid potential crash in close of a verify callout
Jeremy Harris [Thu, 9 May 2019 13:10:12 +0000 (14:10 +0100)]
Avoid potential crash in close of a verify callout

5 years agoDocs: add index entry for string-concatenation
Jeremy Harris [Thu, 9 May 2019 11:06:01 +0000 (12:06 +0100)]
Docs: add index entry for string-concatenation

5 years agoOpenSSL: fix build under older library version
Jeremy Harris [Wed, 8 May 2019 12:28:07 +0000 (13:28 +0100)]
OpenSSL: fix build under older library version

Broken-by: 4f1d23a1aa
5 years agoGnuTLS: fix $tls_out_ocsp under hosts_request_ocsp
Jeremy Harris [Tue, 7 May 2019 21:42:18 +0000 (22:42 +0100)]
GnuTLS: fix $tls_out_ocsp under hosts_request_ocsp

5 years agoOpenSSL: fix tls_out_ocsp under resumption
Jeremy Harris [Tue, 7 May 2019 21:17:28 +0000 (22:17 +0100)]
OpenSSL: fix tls_out_ocsp under resumption

5 years agoOpenSSL: fix tls_try_verify_hosts under resumption
Jeremy Harris [Mon, 6 May 2019 15:19:15 +0000 (16:19 +0100)]
OpenSSL: fix tls_try_verify_hosts under resumption

5 years agoTLS: increase resumption ticket lifetime to 2 hours
Jeremy Harris [Mon, 6 May 2019 12:34:18 +0000 (13:34 +0100)]
TLS: increase resumption ticket lifetime to 2 hours

5 years agoOpenSSL: discard expired resumption session in client
Jeremy Harris [Mon, 6 May 2019 11:28:14 +0000 (12:28 +0100)]
OpenSSL: discard expired resumption session in client

5 years agoAdd main option exim_version
Heiko Schlittermann (HS12-RIPE) [Tue, 7 May 2019 19:25:41 +0000 (21:25 +0200)]
Add main option exim_version

There might be reasons to cheat about the Exim version you're running.
(Think of stupid security scanners.)

5 years agoOpenSSL: better handling of $tls_{in,out}_certificate_verified under resumption
Jeremy Harris [Sun, 5 May 2019 18:23:37 +0000 (19:23 +0100)]
OpenSSL: better handling of $tls_{in,out}_certificate_verified under resumption

5 years agoTestsuite: check variables under resumption
Jeremy Harris [Sun, 5 May 2019 17:54:45 +0000 (18:54 +0100)]
Testsuite: check variables under resumption

5 years agoTLS: resumption notes
Jeremy Harris [Sun, 5 May 2019 16:57:42 +0000 (17:57 +0100)]
TLS: resumption notes

5 years agoOpenSSL: for older library (1.0.2) assume that a ticket callback in client only
Jeremy Harris [Sun, 5 May 2019 15:20:31 +0000 (16:20 +0100)]
OpenSSL: for older library (1.0.2) assume that a ticket callback in client only
happens for a resumable session

5 years agoOpenSSL: increase STEK strength to 256b
Jeremy Harris [Sat, 4 May 2019 15:53:57 +0000 (16:53 +0100)]
OpenSSL: increase STEK strength to 256b

5 years agoTLS: library version build-time checks for resumption support
Jeremy Harris [Thu, 2 May 2019 20:01:43 +0000 (21:01 +0100)]
TLS: library version build-time checks for resumption support

5 years agoFix build on older OpenSSL
Jeremy Harris [Thu, 2 May 2019 17:07:53 +0000 (18:07 +0100)]
Fix build on older OpenSSL

Broken-by: b10c87b38c
5 years agoFix build on older GnuTLS
Jeremy Harris [Thu, 2 May 2019 17:02:19 +0000 (18:02 +0100)]
Fix build on older GnuTLS

Broken-buy: b10c87b38c

5 years agoDebug: restore GnuTLS debug level.
Jeremy Harris [Thu, 2 May 2019 16:30:33 +0000 (17:30 +0100)]
Debug: restore GnuTLS debug level.

Broken-by: b10c87b38c
5 years agoTLS: Session resumption, under the EXPERIMENTAL_TLS_RESUME build option.
Jeremy Harris [Thu, 2 May 2019 16:16:05 +0000 (17:16 +0100)]
TLS: Session resumption, under the EXPERIMENTAL_TLS_RESUME build option.

5 years agoTestsuite: GnuTLS version variances
Jeremy Harris [Sat, 27 Apr 2019 16:40:48 +0000 (17:40 +0100)]
Testsuite: GnuTLS version variances

5 years agotidying
Jeremy Harris [Sat, 27 Apr 2019 13:52:03 +0000 (14:52 +0100)]
tidying

5 years agoARC: harden against malformed headers
Jeremy Harris [Sat, 27 Apr 2019 12:22:52 +0000 (13:22 +0100)]
ARC: harden against malformed headers

5 years agoBuild: move md5.c from auths library to main; exim_fixdb no longer depends on auths
Jeremy Harris [Fri, 26 Apr 2019 18:36:40 +0000 (19:36 +0100)]
Build: move md5.c from auths library to main; exim_fixdb no longer depends on auths

5 years agoTestsuite: GnuTLS version variances
Jeremy Harris [Fri, 26 Apr 2019 10:16:47 +0000 (11:16 +0100)]
Testsuite: GnuTLS version variances

5 years agoAvoid defining inlinable fn for utilities build
Jeremy Harris [Thu, 25 Apr 2019 19:03:34 +0000 (20:03 +0100)]
Avoid defining inlinable fn for utilities build

5 years agoFix build with older GnuTLS, redux
Jeremy Harris [Thu, 25 Apr 2019 18:37:31 +0000 (19:37 +0100)]
Fix build with older GnuTLS, redux

5 years agoFix build with older GnuTLS
Jeremy Harris [Thu, 25 Apr 2019 18:13:31 +0000 (19:13 +0100)]
Fix build with older GnuTLS

5 years agoTestsuite: avoid recent-perl feature use
Jeremy Harris [Thu, 25 Apr 2019 17:41:52 +0000 (18:41 +0100)]
Testsuite: avoid recent-perl feature use

5 years agoTestsuite: GnuTLS version variances
Jeremy Harris [Thu, 25 Apr 2019 16:36:06 +0000 (17:36 +0100)]
Testsuite: GnuTLS version variances

5 years agoGnuTLS 3.6.7 cipher strings
Jeremy Harris [Thu, 25 Apr 2019 16:07:35 +0000 (17:07 +0100)]
GnuTLS 3.6.7 cipher strings

5 years agoAvoid defining inlinable fn for MACRO_PREDEF build
Jeremy Harris [Thu, 25 Apr 2019 14:11:42 +0000 (15:11 +0100)]
Avoid defining inlinable fn for MACRO_PREDEF build
Some compilers include them even when unused, and the link stage fails

5 years agoTestsuite: output changes resulting
Jeremy Harris [Thu, 25 Apr 2019 09:35:18 +0000 (10:35 +0100)]
Testsuite: output changes resulting

Broken-by: 67ea939cf0
5 years agoUse unsigned when creating bitmasks in macros
Jeremy Harris [Thu, 25 Apr 2019 09:26:46 +0000 (10:26 +0100)]
Use unsigned when creating bitmasks in macros

5 years agoGnuTLS: debug output for how to get TLS 1.3 keying
Jeremy Harris [Tue, 23 Apr 2019 22:36:05 +0000 (23:36 +0100)]
GnuTLS: debug output for how to get TLS 1.3 keying

5 years agoDebug: output priv-gid drop
Jeremy Harris [Tue, 23 Apr 2019 23:35:09 +0000 (00:35 +0100)]
Debug: output priv-gid drop

5 years agoCompiler quietening
Jeremy Harris [Tue, 23 Apr 2019 10:40:14 +0000 (11:40 +0100)]
Compiler quietening

5 years agoFix missing return value from exim_chown_failure
Heiko Schlittermann (HS12-RIPE) [Mon, 22 Apr 2019 20:20:45 +0000 (22:20 +0200)]
Fix missing return value from exim_chown_failure

5 years agoCompiler quietening
Jeremy Harris [Mon, 22 Apr 2019 18:20:15 +0000 (19:20 +0100)]
Compiler quietening

5 years agoTestsuite: output changes resulting
Jeremy Harris [Mon, 22 Apr 2019 17:55:16 +0000 (18:55 +0100)]
Testsuite: output changes resulting

Broken-by: cb80814d14
5 years agoexigrep: do case sensitive option processing again. Closes 2392
Heiko Schlittermann (HS12-RIPE) [Wed, 17 Apr 2019 21:33:03 +0000 (23:33 +0200)]
exigrep: do case sensitive option processing again. Closes 2392

-M (--related) was hidden by -m (--man), because of case insensitive
option matching. (4.90 … 4.92 did case insensitive option processing)

Thanks to Andreas Metzler for reporting this issue.

5 years agoIntercept chown()/fchown() failure and emit a pointer to the bugreport. Closes 2391
Heiko Schlittermann (HS12-RIPE) [Mon, 4 Feb 2019 21:01:36 +0000 (22:01 +0100)]
Intercept chown()/fchown() failure and emit a pointer to the bugreport. Closes 2391

In a specific NFS setup we experienced a failing chown(). As it is not
clear, whether this was due to a misconfiguration or if this may happen in
other environments too, we behave as usual (abort the operation), but
issue a MAIN_LOG and PANIC_LOG entry pointing to this Bugreport.

You're encouraged to contact the developers, if you hit this issue.

5 years agoMerge branch 'bug/2390-tmpfile-race'
Heiko Schlittermann (HS12-RIPE) [Thu, 18 Apr 2019 10:30:56 +0000 (12:30 +0200)]
Merge branch 'bug/2390-tmpfile-race'

5 years agotestsuite: Update to match the new "hdr.$message_exim_id" tmp file name Bug 2390
Heiko Schlittermann (HS12-RIPE) [Thu, 18 Apr 2019 09:33:40 +0000 (11:33 +0200)]
testsuite: Update to match the new "hdr.$message_exim_id" tmp file name Bug 2390

5 years agoUse message_id for tempfile creation Closes 2390
Heiko Schlittermann (HS12-RIPE) [Wed, 17 Apr 2019 06:38:19 +0000 (08:38 +0200)]
Use message_id for tempfile creation Closes 2390

Make tempfile names unique across Exim instances running in a cluster on
a shared $spool_directory. (They need to set localhost_number to have
cluster-unique message_exim_ids.)

5 years agoTestsuite: better OpenBSD compatability for IPv6
Jeremy Harris [Mon, 15 Apr 2019 15:46:54 +0000 (16:46 +0100)]
Testsuite: better OpenBSD compatability for IPv6

5 years agotidying
Jeremy Harris [Sun, 7 Apr 2019 14:23:38 +0000 (15:23 +0100)]
tidying

5 years agoDocs: Remove GNUmake idioms from Makefile, give power to "mv"
Heiko Schlittermann (HS12-RIPE) [Fri, 12 Apr 2019 14:16:57 +0000 (16:16 +0200)]
Docs: Remove GNUmake idioms from Makefile, give power to "mv"

On at least one *BSD system, /tmp is owned by root:wheel and
files created there are owned by <creator>:wheel. The following
mv /tmp/<tmpfile> to an existing file with other permissions fails
for the non-privileged user.

5 years agotidying
Jeremy Harris [Fri, 5 Apr 2019 14:28:36 +0000 (15:28 +0100)]
tidying

5 years agoLogging: close logfile when non-smtp input is taking a long time. Bug 1891
Jeremy Harris [Fri, 5 Apr 2019 14:22:20 +0000 (15:22 +0100)]
Logging: close logfile when non-smtp input is taking a long time.  Bug 1891

5 years agoSPF: better buld compatibility with OpenBSD
Jeremy Harris [Thu, 4 Apr 2019 13:33:28 +0000 (14:33 +0100)]
SPF: better buld compatibility with OpenBSD

5 years agoOpenSSL: tidy options debug output
Jeremy Harris [Wed, 3 Apr 2019 19:29:15 +0000 (20:29 +0100)]
OpenSSL: tidy options debug output

5 years agoOpenSSL: tidy coding of session keys debug
Jeremy Harris [Wed, 3 Apr 2019 19:13:22 +0000 (20:13 +0100)]
OpenSSL: tidy coding of session keys debug

5 years agoMore fixes to build with DANE support with LibreSSL >= 2.9.0.
Kirill Miazine [Tue, 2 Apr 2019 12:29:39 +0000 (14:29 +0200)]
More fixes to build with DANE support with LibreSSL >= 2.9.0.

5 years agoFix build with recent LibreSSL, when including DANE. Bug 2386
Jeremy Harris [Mon, 1 Apr 2019 16:09:59 +0000 (17:09 +0100)]
Fix build with recent LibreSSL, when including DANE.  Bug 2386

5 years agoEDITME: Add comment about DMARC_TLD_FILE
Heiko Schlittermann (HS12-RIPE) [Sun, 31 Mar 2019 16:04:35 +0000 (18:04 +0200)]
EDITME: Add comment about DMARC_TLD_FILE

5 years agoDMARC: check for empty filename for TLD file. Patch testsuite to not break on missin...
Jeremy Harris [Sat, 30 Mar 2019 15:41:52 +0000 (15:41 +0000)]
DMARC: check for empty filename for TLD file.  Patch testsuite to not break on missing default TLD file.

5 years agoFix "-bP smtp_receive_timeout". Bug 2384
Jeremy Harris [Fri, 22 Mar 2019 15:00:23 +0000 (15:00 +0000)]
Fix "-bP smtp_receive_timeout".  Bug 2384

5 years agoUse the DMARC_TLD_FILE from config.h.defaults and Local/Makefile
Heiko Schlittermann (HS12-RIPE) [Thu, 21 Mar 2019 21:42:05 +0000 (22:42 +0100)]
Use the DMARC_TLD_FILE from config.h.defaults and Local/Makefile

5 years agoHarden plaintext authenticator
Jeremy Harris [Thu, 21 Mar 2019 19:54:31 +0000 (19:54 +0000)]
Harden plaintext authenticator

5 years agoTestsuite: tidy removed testcase files
Jeremy Harris [Wed, 20 Mar 2019 21:21:18 +0000 (21:21 +0000)]
Testsuite: tidy removed testcase files

5 years agoOpenSSL: Fix aggregation of messages.
Jeremy Harris [Tue, 19 Mar 2019 15:33:31 +0000 (15:33 +0000)]
OpenSSL: Fix aggregation of messages.

Broken-by: a5ffa9b475
5 years agoLogging: fix initial listening-on log line
Jeremy Harris [Mon, 18 Mar 2019 00:31:43 +0000 (00:31 +0000)]
Logging: fix initial listening-on log line

5 years agoAdd caseless option to verify=not_blind. Bug 2356
Simon Arlott [Sat, 16 Mar 2019 16:01:15 +0000 (16:01 +0000)]
Add caseless option to verify=not_blind.  Bug 2356

5 years agoRetire EXPERIMENTAL_REQUIRETLS
Jeremy Harris [Fri, 15 Mar 2019 22:01:07 +0000 (22:01 +0000)]
Retire EXPERIMENTAL_REQUIRETLS

5 years agoDocs: more indexing for daemon-reload
Jeremy Harris [Fri, 15 Mar 2019 18:28:23 +0000 (18:28 +0000)]
Docs: more indexing for daemon-reload

5 years agoFix crash from SRV lookup hitting a CNAME
Jeremy Harris [Thu, 14 Mar 2019 12:26:34 +0000 (12:26 +0000)]
Fix crash from SRV lookup hitting a CNAME

5 years agodoc: Clarify the IPv4-mapped IPv6 lookups.
Heiko Schlittermann (HS12-RIPE) [Wed, 13 Mar 2019 20:53:12 +0000 (21:53 +0100)]
doc: Clarify the IPv4-mapped IPv6 lookups.

Credits to Andreas Metzler <eximusers@bebt.de>.

5 years agoBuild process: Mention Local/Makefile-<buildname>
Heiko Schlittermann (HS12-RIPE) [Wed, 13 Mar 2019 20:43:52 +0000 (21:43 +0100)]
Build process: Mention Local/Makefile-<buildname>

5 years agoFix debug output of TLS keying info, client-side with OpenSSL
Jeremy Harris [Tue, 12 Mar 2019 23:30:03 +0000 (23:30 +0000)]
Fix debug output of TLS keying info, client-side  with OpenSSL

5 years agoTestsuite: add testcase showing outgoing-conn local interface
Jeremy Harris [Tue, 12 Mar 2019 22:50:10 +0000 (22:50 +0000)]
Testsuite: add testcase showing outgoing-conn local interface

5 years agoTestsuite: munge standard port numbers in logs
Jeremy Harris [Tue, 12 Mar 2019 20:17:22 +0000 (20:17 +0000)]
Testsuite: munge standard port numbers in logs

5 years agoAdd missing colon when logging outgoing I=
Heiko Schlittermann (HS12-RIPE) [Fri, 8 Mar 2019 17:29:20 +0000 (18:29 +0100)]
Add missing colon when logging outgoing I=

Credits to Larry Rosenman <ler@lerctr.org> for reporting this.

5 years agoDocs: Add note on lsearch for IPv4-mapped IPv6 addresses
Jeremy Harris [Tue, 26 Feb 2019 20:18:51 +0000 (20:18 +0000)]
Docs: Add note on lsearch for IPv4-mapped IPv6 addresses

5 years agoDocs: Add note on lsearch for IPv4-mapped IPv6 addresses
Jeremy Harris [Tue, 26 Feb 2019 18:10:12 +0000 (18:10 +0000)]
Docs: Add note on lsearch for IPv4-mapped IPv6 addresses

5 years agoTestsuite: fix version mismatch caused by new version scheme
Heiko Schlittermann (HS12-RIPE) [Sun, 24 Feb 2019 22:39:31 +0000 (23:39 +0100)]
Testsuite: fix version mismatch caused by new version scheme

5 years agoTestsuite: fix installation-error message
Jeremy Harris [Sun, 24 Feb 2019 01:49:43 +0000 (01:49 +0000)]
Testsuite: fix installation-error message

Broken-by: 01c5946016
5 years agoFix use of unintialized variable
Jeremy Harris [Wed, 20 Feb 2019 16:12:16 +0000 (16:12 +0000)]
Fix use of unintialized variable

Broken-by: c05bdbd6fc
5 years agoDo not output the version from reversion script run
Heiko Schlittermann (HS12-RIPE) [Wed, 20 Feb 2019 14:33:43 +0000 (15:33 +0100)]
Do not output the version from reversion script run

5 years agomk_exim_release: enable flexible compressor selection
Heiko Schlittermann (HS12-RIPE) [Wed, 20 Feb 2019 14:22:07 +0000 (15:22 +0100)]
mk_exim_release: enable flexible compressor selection

5 years agomk_exim_release: include *full* version in docs
Heiko Schlittermann (HS12-RIPE) [Wed, 20 Feb 2019 12:48:33 +0000 (13:48 +0100)]
mk_exim_release: include *full* version in docs

This matches the output from exim -bV

5 years agomk_exim_release: add --no-sizes option
Heiko Schlittermann (HS12-RIPE) [Wed, 20 Feb 2019 14:50:40 +0000 (15:50 +0100)]
mk_exim_release: add --no-sizes option

5 years agomk_exim_release: add --quick option
Heiko Schlittermann (HS12-RIPE) [Tue, 19 Feb 2019 20:20:36 +0000 (21:20 +0100)]
mk_exim_release: add --quick option

This allows to cut a "release" on any commit

5 years agoTLS: refactor client-start interface
Jeremy Harris [Fri, 28 Dec 2018 11:52:43 +0000 (11:52 +0000)]
TLS: refactor client-start interface

5 years agoFix expansions for RFC 822 addresses having comments in local-part and/or domain...
Jasen Betts [Mon, 18 Feb 2019 13:52:16 +0000 (13:52 +0000)]
Fix expansions for RFC 822 addresses having comments in local-part and/or domain.  Bug 2375

5 years agoGnuTLS: Fix client detection of server reject of client cert under TLS1.3
Jeremy Harris [Sat, 16 Feb 2019 12:59:23 +0000 (12:59 +0000)]
GnuTLS: Fix client detection of server reject of client cert under TLS1.3

5 years agoFix info on using local_scan() in the default Makefile
Jeremy Harris [Thu, 14 Feb 2019 17:14:34 +0000 (17:14 +0000)]
Fix info on using local_scan() in the default Makefile

Broken-by: 9723f96673
5 years agoDocs: update DKIM standards info
Jeremy Harris [Thu, 14 Feb 2019 16:44:46 +0000 (16:44 +0000)]
Docs: update DKIM standards info

5 years agoFix transport buffer size handling
Jeremy Harris [Tue, 12 Feb 2019 16:52:51 +0000 (16:52 +0000)]
Fix transport buffer size handling
Broken-by: 59932f7dcd
5 years agoTestsuite: output changes for OpenSSL versions
Jeremy Harris [Tue, 12 Feb 2019 16:06:46 +0000 (16:06 +0000)]
Testsuite: output changes for OpenSSL versions

5 years agoTestsuite: output changes arising
Jeremy Harris [Tue, 12 Feb 2019 15:53:11 +0000 (15:53 +0000)]
Testsuite: output changes arising

5 years agoLogging: created Message-IDs. Selectors for created and all IDs. Bugs 219, 1840...
Jeremy Harris [Tue, 1 Jan 2019 16:21:02 +0000 (16:21 +0000)]
Logging: created Message-IDs.  Selectors for created and all IDs.  Bugs 219, 1840, 2339

5 years agoMerge branch '4.next'
Jeremy Harris [Tue, 12 Feb 2019 11:32:08 +0000 (11:32 +0000)]
Merge branch '4.next'

5 years agoTestsuite: account for (now) properly working Perl locale
Jeremy Harris [Sun, 10 Feb 2019 20:25:59 +0000 (20:25 +0000)]
Testsuite: account for (now) properly working Perl locale

5 years agoGnuTLS: trim error messages
Jeremy Harris [Sun, 10 Feb 2019 19:48:57 +0000 (19:48 +0000)]
GnuTLS: trim error messages

5 years agoTestsuite: harden for TLS1.3 under GnuTLS
Jeremy Harris [Sun, 10 Feb 2019 19:15:43 +0000 (19:15 +0000)]
Testsuite: harden for TLS1.3 under GnuTLS

5 years agoTestsuite: For GnuTLS when we're testing authentications requested via pri-string...
Jeremy Harris [Sun, 10 Feb 2019 14:32:46 +0000 (14:32 +0000)]
Testsuite:  For GnuTLS when we're testing authentications requested via pri-string, disable TLS1.3

On GnuTLS 3.6.5 is appears to ignore the given priority, if it can use 1.3

5 years agoDKIM: ensure that dkim_domain elements are lowercased before use. Bug 2371
Jeremy Harris [Tue, 5 Feb 2019 23:19:00 +0000 (23:19 +0000)]
DKIM: ensure that dkim_domain elements are lowercased before use.  Bug 2371

(cherry picked from commit f3c73adaa541ae54092467a29668ac32894ef1dc)

5 years agoDocs: extra detail on proxy-protocol
Jeremy Harris [Tue, 5 Feb 2019 18:49:46 +0000 (18:49 +0000)]
Docs: extra detail on proxy-protocol

(cherry picked from commit 5376b7ca07e9b00e2552f33270e79c59840a9778)

5 years agoTLS: add variables for the IETF standard name for the connection ciphersuite
Jeremy Harris [Sun, 3 Feb 2019 22:12:48 +0000 (22:12 +0000)]
TLS: add variables for the IETF standard name for the connection ciphersuite

(cherry picked from commit ffc3d145e3819e1a3762caa1bbe8b07e723fbaf2)

5 years agoTestsuite: munge GnuTLS and OpenSSL ciphersuite strings to be more similar
Jeremy Harris [Sun, 3 Feb 2019 21:00:37 +0000 (21:00 +0000)]
Testsuite: munge GnuTLS and OpenSSL ciphersuite strings to be more similar

(cherry picked from commit 25d5d9f98ebb30acc8b269c6594f4bc1e1abe654)