exim.git
5 years agoTestsuite: switch ciphersuite use
Jeremy Harris [Tue, 27 Nov 2018 20:50:28 +0000 (20:50 +0000)]
Testsuite: switch ciphersuite use

This is to accomodate RHEL 7, where openssl seems to not support ECDHE Kx + CAMELIA
nor any of the CHACHA20s, but does support DHE Kx + CAMELIA.

All we really wanted was something distinguishable from default
(which is commonly ECDHE-RSA-AUE256-GCM-SHA).

6 years agoTestsuite: ignore OCSP option output; fixes runs on non-OCSP builds
Jeremy Harris [Sun, 25 Nov 2018 21:58:54 +0000 (21:58 +0000)]
Testsuite: ignore OCSP option output; fixes runs on non-OCSP builds

6 years agoFix AUTH_GSASL build
Jeremy Harris [Sat, 24 Nov 2018 15:37:54 +0000 (15:37 +0000)]
Fix AUTH_GSASL build

6 years agoAvoid leaving $domain live with bogus info, during server connection startup
Jeremy Harris [Fri, 23 Nov 2018 23:55:36 +0000 (23:55 +0000)]
Avoid leaving $domain live with bogus info, during server connection startup

Recent efforts to reduce string-copy ops while also avoiding using excessive memory
tripped a check on freeing the still-live variable.  It is unclear why the variable
was set anyway, even though commented.  The use was introduced between Exim 3.36 and 4.0

6 years agonit (typo fix; docs)
Phil Pennock [Thu, 22 Nov 2018 02:07:49 +0000 (21:07 -0500)]
nit (typo fix; docs)

6 years agoFix cyrus-sasl authenticator for $authenticated_fail_id. Bug 2338
Jeremy Harris [Wed, 21 Nov 2018 08:30:20 +0000 (08:30 +0000)]
Fix cyrus-sasl authenticator for $authenticated_fail_id.  Bug 2338

Relabel for commit c0fb53b74e which which had a typo in the commit message.

6 years agoFix cyrus-sasl authenticator for $authenticated_fail_id. Bug 2238
Jeremy Harris [Wed, 21 Nov 2018 00:50:38 +0000 (00:50 +0000)]
Fix cyrus-sasl authenticator for $authenticated_fail_id.  Bug 2238

6 years agoDocs: more on $authenticated_fail_id
Jeremy Harris [Tue, 20 Nov 2018 21:42:48 +0000 (21:42 +0000)]
Docs: more on $authenticated_fail_id

6 years agoTestsuite: document noisy-comment script commands
Jeremy Harris [Sun, 18 Nov 2018 22:11:35 +0000 (22:11 +0000)]
Testsuite: document noisy-comment script commands

6 years agoDocs: add note on manualroute route-lists
Jeremy Harris [Sun, 18 Nov 2018 17:27:38 +0000 (17:27 +0000)]
Docs: add note on manualroute route-lists

6 years agoDocs: indexing of retry final-cutoff
Jeremy Harris [Sun, 18 Nov 2018 16:45:44 +0000 (16:45 +0000)]
Docs: indexing of retry final-cutoff

6 years agotidying
Jeremy Harris [Thu, 15 Nov 2018 15:08:53 +0000 (15:08 +0000)]
tidying

6 years agoLose more string-copy operations
Jeremy Harris [Sat, 17 Nov 2018 19:40:01 +0000 (19:40 +0000)]
Lose more string-copy operations

6 years agoFix growable-string sprintf
Jeremy Harris [Thu, 15 Nov 2018 18:55:51 +0000 (18:55 +0000)]
Fix growable-string sprintf

Broken-by d12746bc15

6 years agoOpenBSD: bump dns-result buffer to 64kB
Jeremy Harris [Thu, 15 Nov 2018 17:21:45 +0000 (17:21 +0000)]
OpenBSD: bump dns-result buffer to 64kB

This just to take out a difference in testsuite behaviour.  Builds
for memory-constrained devices could legitimately use 16kB.

6 years agoRecast more internal string routines to use growable-strings
Jeremy Harris [Wed, 14 Nov 2018 22:32:58 +0000 (22:32 +0000)]
Recast more internal string routines to use growable-strings

6 years agotidying
Jeremy Harris [Wed, 14 Nov 2018 20:22:50 +0000 (20:22 +0000)]
tidying

6 years agoDocs: Add cross-refs for $h_<name>
Jeremy Harris [Tue, 13 Nov 2018 11:50:40 +0000 (11:50 +0000)]
Docs: Add cross-refs for $h_<name>

6 years agoTestsuite: account for hostname-dependent output in debug output
Jeremy Harris [Sun, 11 Nov 2018 18:30:22 +0000 (18:30 +0000)]
Testsuite: account for hostname-dependent output in debug output

6 years agoTestsuite: fix testcases for /etc/services not having smtps
Jeremy Harris [Sun, 11 Nov 2018 18:16:29 +0000 (18:16 +0000)]
Testsuite: fix testcases for /etc/services not having smtps

6 years agoDocs: add notes on smtps
Jeremy Harris [Sun, 11 Nov 2018 18:08:05 +0000 (18:08 +0000)]
Docs: add notes on smtps

6 years agoTestsuite: increase retry time (for really slow test host)
Jeremy Harris [Sat, 10 Nov 2018 20:37:31 +0000 (20:37 +0000)]
Testsuite: increase retry time (for really slow test host)

6 years agoTestsuite: avoid time-quantization issue
Jeremy Harris [Fri, 9 Nov 2018 19:56:32 +0000 (19:56 +0000)]
Testsuite: avoid time-quantization issue

6 years agoTestsuite: avoid time-quantization issue
Jeremy Harris [Fri, 9 Nov 2018 17:12:09 +0000 (17:12 +0000)]
Testsuite: avoid time-quantization issue

6 years agoTestsuite: check for conflicting host name
Jeremy Harris [Thu, 8 Nov 2018 12:58:27 +0000 (12:58 +0000)]
Testsuite: check for conflicting host name

6 years agotidying
Jeremy Harris [Sat, 27 Oct 2018 16:03:09 +0000 (17:03 +0100)]
tidying

6 years agoFix build on FreeBSD 11
Jeremy Harris [Tue, 6 Nov 2018 16:00:26 +0000 (16:00 +0000)]
Fix build on FreeBSD 11

6 years agoTestsuite: rework testcases for DSN RCPT options
Jeremy Harris [Tue, 6 Nov 2018 15:18:05 +0000 (15:18 +0000)]
Testsuite: rework testcases for DSN RCPT options

6 years agoMacOS: fix build
Jeremy Harris [Mon, 5 Nov 2018 18:51:16 +0000 (18:51 +0000)]
MacOS: fix build

Broken-by: ee8b809061
6 years agoFix mis-merge
Jeremy Harris [Mon, 5 Nov 2018 18:26:18 +0000 (18:26 +0000)]
Fix mis-merge

Broken-by ee8b809061

6 years agoUnbreak non-PIPE_CONNECT build
Jeremy Harris [Mon, 5 Nov 2018 17:11:27 +0000 (17:11 +0000)]
Unbreak non-PIPE_CONNECT build

Broken-by: ee8b809061
6 years agoSquashed commit of PIPE_CONNECT
Jeremy Harris [Sat, 3 Nov 2018 23:13:34 +0000 (23:13 +0000)]
Squashed commit of PIPE_CONNECT

6 years agoMacOS: TCP Fast Open
Jeremy Harris [Tue, 30 Oct 2018 22:09:15 +0000 (22:09 +0000)]
MacOS: TCP Fast Open

6 years agoTestsuite: adjust for 64b-int compatability
Jeremy Harris [Tue, 30 Oct 2018 18:43:34 +0000 (18:43 +0000)]
Testsuite: adjust for 64b-int compatability

6 years agoTestsuite: more detail in dsearch testcase output
Jeremy Harris [Tue, 30 Oct 2018 14:00:24 +0000 (14:00 +0000)]
Testsuite: more detail in dsearch testcase output

6 years agoTestsuite: ignore TCP Fast Open probe debug output
Jeremy Harris [Tue, 30 Oct 2018 13:59:18 +0000 (13:59 +0000)]
Testsuite: ignore TCP Fast Open probe debug output

6 years agoIncrease size of variables for check_spool_space and check_log_space
Jeremy Harris [Sun, 21 May 2017 13:09:43 +0000 (14:09 +0100)]
Increase size of variables for check_spool_space and check_log_space

6 years agoAvoid trying to talk TLS over a known-closed channel
Jeremy Harris [Sat, 27 Oct 2018 18:28:03 +0000 (19:28 +0100)]
Avoid trying to talk TLS over a known-closed channel

6 years agoTestsuite: fix cmdline option for test flavour
Jeremy Harris [Sat, 27 Oct 2018 17:06:42 +0000 (18:06 +0100)]
Testsuite: fix cmdline option for test flavour

6 years agoTestsuite: resulting output changes.
Jeremy Harris [Sat, 27 Oct 2018 15:04:43 +0000 (16:04 +0100)]
Testsuite: resulting output changes.

Broken-by: fd3cf78930
6 years agotestsuite: diet for aux-fixed/3000.pl
Heiko Schlittermann (HS12-RIPE) [Fri, 26 Oct 2018 20:04:24 +0000 (22:04 +0200)]
testsuite: diet for aux-fixed/3000.pl

6 years agoTestsuite: variances for OpenSSL 1.1.1
Jeremy Harris [Thu, 25 Oct 2018 23:41:36 +0000 (00:41 +0100)]
Testsuite: variances for OpenSSL 1.1.1

6 years agoTidying: char signedness
Jeremy Harris [Tue, 23 Oct 2018 22:45:30 +0000 (23:45 +0100)]
Tidying: char signedness

6 years agoBuild: probe for broken poll() timing implementation
Jeremy Harris [Tue, 23 Oct 2018 21:25:40 +0000 (22:25 +0100)]
Build: probe for broken poll() timing implementation

6 years agoMacOS: probe for a usable TFO system configuration
Jeremy Harris [Tue, 23 Oct 2018 21:23:56 +0000 (22:23 +0100)]
MacOS: probe for a usable TFO system configuration

6 years agoTestsuite: fix debug stream munging for non-autocreate DBM variants, and for no TFO...
Jeremy Harris [Sun, 21 Oct 2018 22:37:14 +0000 (23:37 +0100)]
Testsuite: fix debug stream munging for non-autocreate DBM variants, and for no TFO support

6 years agoMacOS: fix spurious "child process failure"
Jeremy Harris [Sun, 21 Oct 2018 20:59:47 +0000 (21:59 +0100)]
MacOS: fix spurious "child process failure"

6 years agoDebug: provide for SIGALRM tracking
Jeremy Harris [Sun, 21 Oct 2018 20:58:31 +0000 (21:58 +0100)]
Debug: provide for SIGALRM tracking

6 years agoFix bad use of library, copying string over itself
Jeremy Harris [Sat, 20 Oct 2018 20:03:30 +0000 (21:03 +0100)]
Fix bad use of library, copying string over itself

6 years agotidying
Jeremy Harris [Sat, 20 Oct 2018 20:03:22 +0000 (21:03 +0100)]
tidying

6 years agoEnsure unique message-id even for rejected messages
Jeremy Harris [Sat, 20 Oct 2018 19:07:21 +0000 (20:07 +0100)]
Ensure unique message-id even for rejected messages

6 years agoMacOS: fix egid problem
Jeremy Harris [Sun, 21 Oct 2018 13:01:57 +0000 (14:01 +0100)]
MacOS: fix egid problem

6 years agoMacOS: support large group-membership counts
Jeremy Harris [Sun, 14 Oct 2018 21:24:41 +0000 (22:24 +0100)]
MacOS: support large group-membership counts

6 years agoRefactor startup error exits
Jeremy Harris [Sat, 20 Oct 2018 15:21:44 +0000 (16:21 +0100)]
Refactor startup error exits

6 years agoTestsuite: force non-TLSv1.3 for (OpenSSL) cert-variable test
Jeremy Harris [Tue, 16 Oct 2018 22:54:28 +0000 (23:54 +0100)]
Testsuite: force non-TLSv1.3 for (OpenSSL) cert-variable test
This maintains visibility of the cert choice required by the auth-method configuration.

Leave the bogus results from pre-1.1.1 OpenSSL library bug while the fixed version is not in common use.

6 years agotidying
Jeremy Harris [Sun, 14 Oct 2018 20:37:49 +0000 (21:37 +0100)]
tidying

6 years agoTestsuite: client script faciility for handling optional reponses
Jeremy Harris [Sun, 14 Oct 2018 14:22:32 +0000 (15:22 +0100)]
Testsuite: client script faciility for handling optional reponses

Use this to deal with fallout from TLS negotiation failure, where the
server sees leftover encrypted data as garbage commands.

6 years agoOpenSSL: Enhance connect/accept-time debug
Jeremy Harris [Sun, 14 Oct 2018 14:21:08 +0000 (15:21 +0100)]
OpenSSL: Enhance connect/accept-time debug

Also, use safer interface for error-strings.

6 years agoTestsuite: tidying
Jeremy Harris [Sat, 13 Oct 2018 17:18:53 +0000 (18:18 +0100)]
Testsuite: tidying

6 years agoFix Mac build
Jeremy Harris [Fri, 12 Oct 2018 21:19:17 +0000 (22:19 +0100)]
Fix Mac build

Broken-by: 75c121f07a
6 years agoFix OpenBSD build.
Jeremy Harris [Fri, 12 Oct 2018 20:15:29 +0000 (21:15 +0100)]
Fix OpenBSD build.

Broken-by: 75c121f07a
6 years agoIncrease buffer size used for DNS responses. Bug 2329
Jeremy Harris [Fri, 12 Oct 2018 19:07:44 +0000 (20:07 +0100)]
Increase buffer size used for DNS responses.  Bug 2329

6 years agotidying
Jeremy Harris [Mon, 8 Oct 2018 13:23:38 +0000 (14:23 +0100)]
tidying

6 years agoRename smtp.client-ip to smtp.remote-ip
Phil Pennock [Fri, 12 Oct 2018 17:35:00 +0000 (13:35 -0400)]
Rename smtp.client-ip to smtp.remote-ip

This tracks changes in the ARC draft.

The Received-SPF headers remain unchanged.

6 years agoDebug: output GnuTLS verbose reason for certificate verify refusal
Jeremy Harris [Sun, 7 Oct 2018 23:12:08 +0000 (00:12 +0100)]
Debug: output GnuTLS verbose reason for certificate verify refusal

6 years agoTestsuite: more TLSv1.3 handling
Jeremy Harris [Sat, 6 Oct 2018 22:22:38 +0000 (23:22 +0100)]
Testsuite: more TLSv1.3 handling

6 years agoDocs: tweak ARC description
Jeremy Harris [Sat, 6 Oct 2018 22:20:07 +0000 (23:20 +0100)]
Docs: tweak ARC description

6 years agoTFO: use enum for client status
Jeremy Harris [Sat, 6 Oct 2018 14:32:14 +0000 (15:32 +0100)]
TFO: use enum for client status

6 years agoDebug: noutf8 selector. Bug 2324
Jeremy Harris [Tue, 2 Oct 2018 18:39:55 +0000 (19:39 +0100)]
Debug: noutf8 selector.  Bug 2324

6 years agoTestsuite: enhance json extract tests
Jeremy Harris [Sun, 30 Sep 2018 20:44:29 +0000 (21:44 +0100)]
Testsuite: enhance json extract tests

6 years agoExpansions: fix json extract for de-wrapping nested objects. Bug 2322
Jeremy Harris [Sun, 30 Sep 2018 20:42:40 +0000 (21:42 +0100)]
Expansions: fix json extract for de-wrapping nested objects.  Bug 2322

6 years agoExpansions: extract methods for JSON objects and arrays. Bug 2282
Jeremy Harris [Sun, 30 Sep 2018 00:08:51 +0000 (01:08 +0100)]
Expansions: extract methods for JSON objects and arrays.  Bug 2282

6 years agoEvents: tests. Bug 2322
Jeremy Harris [Sat, 29 Sep 2018 17:52:20 +0000 (18:52 +0100)]
Events: tests.  Bug 2322

6 years agoEvents: Fire msg:fail:internal for a non-system filter "fail" command. Bug 2322
Matthias Kurz [Fri, 28 Sep 2018 22:05:02 +0000 (23:05 +0100)]
Events:  Fire msg:fail:internal for a non-system filter "fail" command.  Bug 2322

6 years agoEvents: Fire msg:fail:delivery event even when error is being ignored. Bug 2314
Matthias Kurz [Fri, 28 Sep 2018 18:04:55 +0000 (19:04 +0100)]
Events:  Fire msg:fail:delivery event even when error is being ignored.  Bug 2314

6 years agoLogging: do not log a missing proxy address, on delivery non-proxied.
Jeremy Harris [Wed, 26 Sep 2018 09:59:05 +0000 (10:59 +0100)]
Logging: do not log a missing proxy address, on delivery non-proxied.

Broken-by: e6d2a9894d
6 years agoCheck return from asprintf()
Jeremy Harris [Sun, 23 Sep 2018 14:44:15 +0000 (15:44 +0100)]
Check return from asprintf()

6 years agoDSN: tescase for ESMTP DSN extension, RCPT options
Jeremy Harris [Sun, 23 Sep 2018 11:07:26 +0000 (12:07 +0100)]
DSN: tescase for ESMTP DSN extension, RCPT options

6 years agoOpenSSL: Check return value from X509_NAME_oneline(). Bug 2316
Jeremy Harris [Fri, 21 Sep 2018 17:01:57 +0000 (18:01 +0100)]
OpenSSL: Check return value from X509_NAME_oneline().  Bug 2316

It didn't used to be documented as possibly returning NULL, but now it is.

6 years agoDANE: ignore undersized TLSA records
Jeremy Harris [Fri, 21 Sep 2018 11:40:53 +0000 (12:40 +0100)]
DANE: ignore undersized TLSA records

6 years agoTestsuite: output changes resulting
Jeremy Harris [Fri, 21 Sep 2018 10:07:36 +0000 (11:07 +0100)]
Testsuite: output changes resulting

6 years agoTestsuite: timing change needed for debug changes
Jeremy Harris [Fri, 21 Sep 2018 09:14:49 +0000 (10:14 +0100)]
Testsuite: timing change needed for debug changes

Broken-by: 8008accd32
6 years agoTestsuite: handle OpenSSL 1.1.1
Jeremy Harris [Thu, 20 Sep 2018 17:31:36 +0000 (18:31 +0100)]
Testsuite: handle OpenSSL 1.1.1

6 years agoBuiltin macros for OpenSSL options
Jeremy Harris [Thu, 20 Sep 2018 17:19:33 +0000 (18:19 +0100)]
Builtin macros for OpenSSL options

6 years agoConstification
Jeremy Harris [Wed, 19 Sep 2018 11:26:47 +0000 (12:26 +0100)]
Constification

6 years agoTestsuite: output changes resulting from timing change.
Jeremy Harris [Wed, 19 Sep 2018 10:28:59 +0000 (11:28 +0100)]
Testsuite: output changes resulting from timing change.

Broken-by: 8008accd32
6 years agoTestsuite: track newer GnuTLS behaviour
Jeremy Harris [Tue, 18 Sep 2018 17:02:48 +0000 (18:02 +0100)]
Testsuite: track newer GnuTLS behaviour

We have lost one log line, for a ciphers-negotiation failure on an early
host in a list from routing.  We still get something indicative if the
last one fails, so I'm going to let this pass.
Test 2025 will fail on earlier GnuTLS library versions as a result.

NONE no longer works as documented, in priority string for GnuTLS.

6 years agoGnuTLS: simplify cert hostname checking
Jeremy Harris [Tue, 18 Sep 2018 14:05:59 +0000 (15:05 +0100)]
GnuTLS: simplify cert hostname checking

6 years agoConstification
Jeremy Harris [Mon, 17 Sep 2018 16:20:14 +0000 (17:20 +0100)]
Constification

6 years agoDANE: fix TA-mode verify under GnuTLS. Bug 2311
Jeremy Harris [Mon, 17 Sep 2018 15:28:58 +0000 (16:28 +0100)]
DANE: fix TA-mode verify under GnuTLS.  Bug 2311

6 years agoAvoid fixed-size buffers for file paths in DB open
Jeremy Harris [Sun, 16 Sep 2018 23:55:04 +0000 (00:55 +0100)]
Avoid fixed-size buffers for file paths in DB open

6 years agoEvents: raise msg:fail:internal & msg:complete for -Mrm. Bug 2310
Matthias Kurz [Sun, 16 Sep 2018 23:20:24 +0000 (00:20 +0100)]
Events: raise msg:fail:internal & msg:complete for -Mrm.  Bug 2310

6 years agotestsuite output changes
Jeremy Harris [Sun, 16 Sep 2018 21:40:22 +0000 (22:40 +0100)]
testsuite output changes

6 years agoFix filter noerror command. Bug 2318
Matthias Kurz [Sun, 16 Sep 2018 20:20:44 +0000 (21:20 +0100)]
Fix filter noerror command.  Bug 2318

6 years agoTidying and compiler-silencing
Jeremy Harris [Sun, 16 Sep 2018 19:50:04 +0000 (20:50 +0100)]
Tidying and compiler-silencing

6 years agotests: propagate CPPFLAGS into build invocations
Phil Pennock [Sat, 15 Sep 2018 00:55:33 +0000 (20:55 -0400)]
tests: propagate CPPFLAGS into build invocations

With openssl installed by brew on macOS, OpenSSL headers are not in a
normal place.  I can fiddle with LDFLAGS/CPPFLAGS to get them available,
but then the `./configure` step succeeds and build fails.

Propagating the CPPFLAGS into the generated Makefile lets the build
succeed and we get a `client-ssl` binary output.

6 years agoRestore Darwin OS configuration
Phil Pennock [Fri, 14 Sep 2018 17:43:02 +0000 (13:43 -0400)]
Restore Darwin OS configuration

MacStadium are providing us with free Mac Mini hosting as part of their
FOSS support.  I'm about to set it up.  Let's have out-of-repo tuning in
place before I begin.

6 years agoCheck returncode from SSL_CTX_set_cipher_list()
Jeremy Harris [Thu, 13 Sep 2018 16:17:22 +0000 (17:17 +0100)]
Check returncode from SSL_CTX_set_cipher_list()

6 years agoUnbreak test 0600 (copy/paste error)
Phil Pennock [Tue, 11 Sep 2018 00:28:34 +0000 (20:28 -0400)]
Unbreak test 0600 (copy/paste error)

6 years agoDocs: document ancillary info for more event types. Bug 2313
Matthias Kurz [Mon, 10 Sep 2018 13:40:38 +0000 (14:40 +0100)]
Docs: document ancillary info for more event types.  Bug 2313

Patch from Matthias, with additional code indentation tweaks from JGH