Jeremy Harris [Sun, 4 Oct 2020 22:08:45 +0000 (23:08 +0100)]
GnuTLS: when library too old for system CA bundle support, do not default options to using it
Jeremy Harris [Mon, 5 Oct 2020 14:28:10 +0000 (15:28 +0100)]
Debug output: regularise host lookup tracing
Heiko Schlittermann (HS12-RIPE) [Sun, 4 Oct 2020 10:22:01 +0000 (12:22 +0200)]
Add proxy_protocol_timeout main config option.
Heiko Schlittermann (HS12-RIPE) [Mon, 5 Oct 2020 06:59:25 +0000 (08:59 +0200)]
Testsuite: Allow input lines starting with ":<cmd>:", like ":sleep:".
This somehow mimics the behaviour of the client tool, but works for
*any* input line that is sent to the application. This reverts the
unfortunate take abusing the client's special notation '>>> '.
Currently implemented:
- :eval:
- :neol:
- :sleep:
Heiko Schlittermann (HS12-RIPE) [Mon, 5 Oct 2020 06:59:16 +0000 (08:59 +0200)]
Testsuite: README: improve searchability of ">>> ", "??? ", …
Jeremy Harris [Sun, 4 Oct 2020 16:16:37 +0000 (17:16 +0100)]
Testsuite: missing stdout file
Testsuite: library version variances
Broken-by: 6a9cf7f890
Jeremy Harris [Sun, 4 Oct 2020 14:34:29 +0000 (15:34 +0100)]
Unbreak build on non-inotify platforms
Broken-by: 6a9cf7f890
Jeremy Harris [Sun, 4 Oct 2020 13:15:09 +0000 (14:15 +0100)]
Fix build on earlier library version
Broken-by: 6a9cf7f890
Jeremy Harris [Sun, 4 Oct 2020 11:48:33 +0000 (12:48 +0100)]
Testsuite: missing log file
Broken-by: 6a9cf7f890
Jeremy Harris [Sun, 4 Oct 2020 11:37:12 +0000 (12:37 +0100)]
Fix non-OCSP build
Broken-by: 6a9cf7f890
Jeremy Harris [Sun, 4 Oct 2020 11:00:00 +0000 (12:00 +0100)]
Testsuite: TLS system CA dirs vary across platforms
Broken-by: 6a9cf7f890
Jeremy Harris [Sun, 4 Oct 2020 10:43:04 +0000 (11:43 +0100)]
GnuTLS: fix build on earlier library version.
Broken-by: 6a9cf7f890
Heiko Schlittermann (HS12-RIPE) [Sun, 4 Oct 2020 10:33:18 +0000 (12:33 +0200)]
Merge branch 'hs/fix-proxy-bh' (Closes 2656)
Heiko Schlittermann (HS12-RIPE) [Sat, 3 Oct 2020 16:58:11 +0000 (18:58 +0200)]
Testsuite: Add test for proxy and -bh (Bug 2656)
Heiko Schlittermann (HS12-RIPE) [Fri, 2 Oct 2020 06:19:12 +0000 (08:19 +0200)]
Use ALARM() to set deadline on reading the proxy header (Bug 2656)
Heiko Schlittermann (HS12-RIPE) [Fri, 2 Oct 2020 06:17:39 +0000 (08:17 +0200)]
Replace recv() by read() (Bug 2656)
Heiko Schlittermann (HS12-RIPE) [Sat, 3 Oct 2020 17:43:48 +0000 (19:43 +0200)]
Testsuite: Provide '>>> ' for script input to allow binary data (take 2)
This mimics the '>>> ' prefix known for the test client. Any line prefixed
with '>>> ' will be processed by Perl's string eval().
As '>>> ' is generic and documented, it replaces the (undocumented)
'\NONL\' tag.
The client input lines starting with '>>> ' are now changed to '\>>> '
to avoid evaluation by the runtest script. (Test 4030, 1101).
Heiko Schlittermann (HS12-RIPE) [Sat, 3 Oct 2020 21:32:56 +0000 (23:32 +0200)]
Testsuite: add .editorconfig to keep the trailing spaces
Jeremy Harris [Sat, 3 Oct 2020 19:59:15 +0000 (20:59 +0100)]
TLS: preload configuration items
Jeremy Harris [Mon, 7 Sep 2020 18:56:49 +0000 (19:56 +0100)]
tidying
Heiko Schlittermann (HS12-RIPE) [Sat, 3 Oct 2020 13:24:31 +0000 (15:24 +0200)]
Testsuite: Use 127.x.x.x for PROXY v2
This avoids depencies on DNS timeouts on the host running the testsuite.
Heiko Schlittermann (HS12-RIPE) [Sat, 3 Oct 2020 18:00:21 +0000 (20:00 +0200)]
Revert "Testsuite: Provide '>>> ' for script input to allow binary data"
This reverts commit
f7ec095232186edba2b7137594bfdd7d7b7f9504.
Heiko Schlittermann (HS12-RIPE) [Sat, 3 Oct 2020 17:43:48 +0000 (19:43 +0200)]
Testsuite: Provide '>>> ' for script input to allow binary data
This mimics the '>>> ' prefix for the test client. Any line prefixed
with '>>> ' will be processed by Perl's string eval().
As '>>> ' is generic and documented, it replaces the
(undocumented) '\NONL\' tag.
Jeremy Harris [Mon, 28 Sep 2020 21:41:10 +0000 (22:41 +0100)]
Docs: Add note regarding DANE vs. the smtp transport multi_domain option. Bug 2265
Jeremy Harris [Sat, 26 Sep 2020 14:35:58 +0000 (15:35 +0100)]
OpenSSL: Fix client-side tls_verify_cert_hostnames behaviour
Nicolas R [Thu, 24 Sep 2020 21:38:24 +0000 (15:38 -0600)]
Docs: Fix various typos (Closes 2650, 2651)
Jeremy Harris [Wed, 23 Sep 2020 19:14:53 +0000 (20:14 +0100)]
Docs: fix descriptions for dkim_domain, dkim_selector
Andreas Metzler [Fri, 25 Sep 2020 06:54:00 +0000 (08:54 +0200)]
Docs: Minor typos in spec and NewStuff (Closes 2649)
Nicolas R [Thu, 24 Sep 2020 21:26:48 +0000 (15:26 -0600)]
Doc: Fix a typo in NewStuff for 4.94 (Closes 2649)
Heiko Schlittermann (HS12-RIPE) [Fri, 25 Sep 2020 06:48:23 +0000 (08:48 +0200)]
Doc: remove trailing spaces
Jeremy Harris [Sun, 20 Sep 2020 22:40:40 +0000 (23:40 +0100)]
Testsuite: avoid cipher vs. cert validity problem
Jeremy Harris [Tue, 15 Sep 2020 13:48:49 +0000 (14:48 +0100)]
Docs: add crossref
Phil Pennock [Thu, 17 Sep 2020 20:44:52 +0000 (16:44 -0400)]
default DH prime choice consistency
A function returning a default and a list which defined the value of "default"
disagreed. Switch both to a macro to make it harder for them to fall out of
sync.
Jeremy Harris [Sat, 12 Sep 2020 21:11:00 +0000 (22:11 +0100)]
eximon: tidying
Richard Clayton [Sat, 12 Sep 2020 21:10:04 +0000 (22:10 +0100)]
eximon: fix FreeBSD build
Heiko Schlittermann (HS12-RIPE) [Fri, 11 Sep 2020 08:41:10 +0000 (10:41 +0200)]
Docs: fix typo.
Credits to u34@net9.ga
Jeremy Harris [Sun, 6 Sep 2020 11:15:10 +0000 (12:15 +0100)]
GnuTLS: clear errno before any data i/o op, so error logging does not see stale values
Jeremy Harris [Tue, 1 Sep 2020 15:17:42 +0000 (16:17 +0100)]
ARC: Add basic error-checking on permitted chars in admd & sel for signing. Bug 2639
Jeremy Harris [Sat, 29 Aug 2020 18:18:35 +0000 (19:18 +0100)]
Taint: enforce checking of directory creates
Jeremy Harris [Sat, 29 Aug 2020 16:39:51 +0000 (17:39 +0100)]
add an internal error code definition
Jeremy Harris [Thu, 27 Aug 2020 20:15:19 +0000 (21:15 +0100)]
Fix non-TLS build
Phil Pennock [Fri, 28 Aug 2020 23:58:36 +0000 (19:58 -0400)]
Fix utilities indexing
It looks like there used to be another level of hierarchy here, with all three
of the hints database commands described in one section. They're now distinct
sections in their own right, so fix how they're linked to.
Reported by: Peter Gervai
Fixes: 2637
Jeremy Harris [Thu, 27 Aug 2020 10:22:55 +0000 (11:22 +0100)]
Docs: add to A= log-line element description
Jeremy Harris [Wed, 26 Aug 2020 22:59:28 +0000 (23:59 +0100)]
Fix non-DANE build
Jeremy Harris [Wed, 26 Aug 2020 22:43:54 +0000 (23:43 +0100)]
DANE: Fix 2 messages from queue case
Jeremy Harris [Mon, 24 Aug 2020 19:15:48 +0000 (20:15 +0100)]
tidying
Jeremy Harris [Mon, 24 Aug 2020 19:14:34 +0000 (20:14 +0100)]
Build: ifdef guard for EXPERIMENTAL_QUEUEFILE
Jeremy Harris [Sun, 23 Aug 2020 16:27:30 +0000 (17:27 +0100)]
Fix non-DANE build
Jeremy Harris [Sun, 23 Aug 2020 14:32:48 +0000 (15:32 +0100)]
DANE: Fix 2-rcpt message, diff domins case. Bug 2265
Jeremy Harris [Sun, 23 Aug 2020 09:02:30 +0000 (10:02 +0100)]
tidying
Jeremy Harris [Sun, 23 Aug 2020 10:40:32 +0000 (11:40 +0100)]
Debug: minor updates
Gavan [Fri, 21 Aug 2020 14:46:01 +0000 (15:46 +0100)]
Taint: fix off-by-one in is_tainted(). Bug 2634
Jeremy Harris [Wed, 19 Aug 2020 20:09:04 +0000 (21:09 +0100)]
DANE: force SNI to use $domain. Bug 2265
Note: this is not a complete fix for the issue
Jeremy Harris [Fri, 14 Aug 2020 12:09:53 +0000 (13:09 +0100)]
Fix ${readsocket } eol-replacement. Bug 2630
Jeremy Harris [Mon, 10 Aug 2020 21:28:48 +0000 (22:28 +0100)]
dnslists: hardwired return value check. Bug 2631
Jeremy Harris [Mon, 10 Aug 2020 18:51:18 +0000 (19:51 +0100)]
Build: Split out dnsbl code
Jeremy Harris [Mon, 10 Aug 2020 19:19:39 +0000 (20:19 +0100)]
Constify
Jeremy Harris [Mon, 10 Aug 2020 19:17:06 +0000 (20:17 +0100)]
Build: tidying
Jeremy Harris [Sun, 9 Aug 2020 00:38:00 +0000 (01:38 +0100)]
Fix spelling of local_part_data in docs and debug output
Jeremy Harris [Sun, 2 Aug 2020 22:56:58 +0000 (23:56 +0100)]
Testsuite: separate cases for TLS resumption with/out OCSP
Jeremy Harris [Sun, 2 Aug 2020 14:25:43 +0000 (15:25 +0100)]
Fix lsearch ret=full
Jeremy Harris [Thu, 30 Jul 2020 19:16:01 +0000 (20:16 +0100)]
Enforce STARTTLS sync point, client side
Tested by appending to the "220 TLS go ahead\r\n" at src/tls-gnu.c line 2500
Testcase 2008, string "synch error before connect" becomes visible in log.
To get the debug output:
Testcase 2008, initial block; add -d+all to the exi -qf
Jeremy Harris [Sat, 1 Aug 2020 20:16:19 +0000 (21:16 +0100)]
SPF: enhance A-R result
Jeremy Harris [Sat, 1 Aug 2020 16:22:48 +0000 (17:22 +0100)]
Testsuite: add EAI local-part testcase
Jeremy Harris [Sat, 25 Jul 2020 22:58:32 +0000 (23:58 +0100)]
GnuTLS: in server, detect TCP RST from client after QUIT under SSL,
and log different message (under new log_selector)
Jeremy Harris [Thu, 23 Jul 2020 15:32:29 +0000 (16:32 +0100)]
OpenSSL: in server, detect TCP RST from client after QUIT under SSL,
and log different message (under new log_selector)
Heiko Schlittermann (HS12-RIPE) [Thu, 16 Jul 2020 21:53:27 +0000 (23:53 +0200)]
debug_print_socket(): output formatting
(cherry picked from exim-4.94+fixes, commit
73b748711caf8a4b18dd1c0d7c662b5d57798dfe)
Heiko Schlittermann (HS12-RIPE) [Thu, 16 Jul 2020 21:45:55 +0000 (23:45 +0200)]
Fix debug_print_socket()
debug_print_socket() crashed on AF_UNIX sockets
(cherry picked from exim-4.94+fixes, commit
81cc39a7f5c17099f93b5c611bde5f58daaab71b)
Heiko Schlittermann (HS12-RIPE) [Thu, 11 Jun 2020 09:42:10 +0000 (11:42 +0200)]
Docs: typos and clarification of DMARC sender
Jeremy Harris [Mon, 13 Jul 2020 12:46:14 +0000 (13:46 +0100)]
Taint: fix ACL "spam" condition, to permit tainted name arguments
Follow-on from:
62b2ccce05
Jeremy Harris [Sun, 12 Jul 2020 12:36:10 +0000 (13:36 +0100)]
Docs: add note on non-functionality of "exists" for de-tainting
Jeremy Harris [Fri, 10 Jul 2020 21:49:56 +0000 (22:49 +0100)]
Release unused memory in parse_quote_2047()
Jeremy Harris [Fri, 10 Jul 2020 12:55:25 +0000 (13:55 +0100)]
Command-line option for no notifier socket. Bug 2616
Jeremy Harris [Thu, 9 Jul 2020 14:30:55 +0000 (15:30 +0100)]
Fix taint trap in parse_fix_phrase(). Bug 2617
Jeremy Harris [Thu, 9 Jul 2020 11:27:12 +0000 (12:27 +0100)]
tidying
Guillaume Outters [Mon, 6 Jul 2020 21:31:51 +0000 (22:31 +0100)]
Fix DKIM signing to always ;-terminate. Bug 2295
Jeremy Harris [Sun, 5 Jul 2020 15:32:27 +0000 (16:32 +0100)]
Support ret-full on lsearch. Bug 2611
Jeremy Harris [Sun, 5 Jul 2020 12:15:00 +0000 (13:15 +0100)]
Move errno-protection into string_open_failed()
Jeremy Harris [Fri, 3 Jul 2020 19:34:37 +0000 (20:34 +0100)]
typoes
Jeremy Harris [Tue, 30 Jun 2020 20:16:42 +0000 (21:16 +0100)]
Fix message-reception clock usage. Bug 2615
Broken-by: 6906c131d1 (4.94)
Jeremy Harris [Mon, 29 Jun 2020 16:14:07 +0000 (17:14 +0100)]
Taint: fix ACL "spam" condition, to permit tainted name arguments.
Jeremy Harris [Sun, 28 Jun 2020 14:24:21 +0000 (15:24 +0100)]
Sqlite: fix segfault on bad/missing sqlite_dbfile. Bug 2606
Jeremy Harris [Sun, 28 Jun 2020 13:59:44 +0000 (14:59 +0100)]
Testsuite: output changes resulting
Jeremy Harris [Sun, 28 Jun 2020 13:16:20 +0000 (14:16 +0100)]
Remove attempts to quieten compiler static-checking (more)
Jeremy Harris [Sat, 27 Jun 2020 13:11:10 +0000 (14:11 +0100)]
Testsuite: munging
Jeremy Harris [Sat, 27 Jun 2020 12:21:59 +0000 (13:21 +0100)]
Remove attempts to quieten compiler static-checking
The rash of output from -Wself-assign on Darwin demonstrates just how pointless this war is
Jeremy Harris [Sat, 27 Jun 2020 11:41:21 +0000 (12:41 +0100)]
Build: separate guard for futimens()
Darwin does not have the data element we manipulate with futimens()
Jeremy Harris [Sat, 27 Jun 2020 11:24:24 +0000 (12:24 +0100)]
typo
Jeremy Harris [Sat, 27 Jun 2020 10:27:59 +0000 (11:27 +0100)]
Fix build for non-Linux platforms having openat.
Broken-by: 1077d3c3f9
Jeremy Harris [Thu, 25 Jun 2020 20:30:43 +0000 (21:30 +0100)]
Docs: list further ways $domain_data &c may be filled in
Jeremy Harris [Thu, 25 Jun 2020 10:16:54 +0000 (11:16 +0100)]
Lookups: Fix "subdir" filter on a dsearch.
Jeremy Harris [Thu, 25 Jun 2020 09:41:49 +0000 (10:41 +0100)]
Build: guards on openat()
Jeremy Harris [Tue, 23 Jun 2020 23:04:13 +0000 (00:04 +0100)]
Handle quoted local_part input to ${srs_encode }. Bug 2607
Jeremy Harris [Mon, 22 Jun 2020 16:27:18 +0000 (17:27 +0100)]
Cutthrough: handle request when a callout-hold is active. Bug 2604
Jeremy Harris [Sun, 21 Jun 2020 11:53:36 +0000 (12:53 +0100)]
Testsuite: the munge for SRS must accept a variable-length timestamp element
Jeremy Harris [Fri, 19 Jun 2020 23:54:05 +0000 (00:54 +0100)]
Fix string_copy() macro to not multiple-eval args. Bug 2603
Broken-by: a76d120aed
Jeremy Harris [Thu, 18 Jun 2020 19:27:52 +0000 (20:27 +0100)]
Docs: tidy more uses of tainted variables
Jeremy Harris [Wed, 17 Jun 2020 20:37:55 +0000 (21:37 +0100)]
Docs: more indexing for SNI
Jeremy Harris [Wed, 17 Jun 2020 15:14:16 +0000 (16:14 +0100)]
Taint: treat $message_body & $message_body_end as tainted
Jeremy Harris [Thu, 11 Jun 2020 19:40:08 +0000 (20:40 +0100)]
Docs: minor tweaks