exim.git
3 years agotestsuite: provide cp() if File::Copy is too old.
Heiko Schlittermann (HS12-RIPE) [Thu, 1 Apr 2021 09:33:01 +0000 (11:33 +0200)]
testsuite: provide cp() if File::Copy is too old.

3 years agotestsuite: use File::Copy "cp" to copy the permissions (x-bit)
Heiko Schlittermann (HS12-RIPE) [Wed, 31 Mar 2021 20:46:27 +0000 (22:46 +0200)]
testsuite: use File::Copy "cp" to copy the permissions (x-bit)

3 years agotestsuite: add --fail-any option to runtest
Heiko Schlittermann (HS12-RIPE) [Sun, 28 Mar 2021 17:05:10 +0000 (19:05 +0200)]
testsuite: add --fail-any option to runtest

This option makes runtest's exit status !0 on any failure in any test.
(Useful in -c mode and git-bisect)

3 years agoMemory handling: fix size backoff on store-reset
Jeremy Harris [Sun, 28 Mar 2021 00:56:14 +0000 (00:56 +0000)]
Memory handling: fix size backoff on store-reset

3 years agoMemory debug: do not try to save allocation bytes used for debug as ACL can modify...
Jeremy Harris [Sat, 27 Mar 2021 23:49:50 +0000 (23:49 +0000)]
Memory debug: do not try to save allocation bytes used for debug as ACL can modify debugging status

3 years agotestsuite: make runtest exit(!0) on failure in continue mode
Heiko Schlittermann (HS12-RIPE) [Sat, 27 Mar 2021 11:52:18 +0000 (12:52 +0100)]
testsuite: make runtest exit(!0) on failure in continue mode

This makes it possible to use `runtest -c <xx>` for `git bisect run …`

3 years agotestsuite: tidy runtest
Heiko Schlittermann (HS12-RIPE) [Sat, 27 Mar 2021 11:51:40 +0000 (12:51 +0100)]
testsuite: tidy runtest

3 years agoGnuTLS: use a less bogus-looking temporary filename for DH-parameters
Jeremy Harris [Sat, 27 Mar 2021 17:00:13 +0000 (17:00 +0000)]
GnuTLS: use a less bogus-looking temporary filename for DH-parameters

3 years agoAvoid all tail-end pipelining on retries
Jeremy Harris [Tue, 23 Mar 2021 19:43:43 +0000 (19:43 +0000)]
Avoid all tail-end pipelining on retries

3 years agoBuild: use PHDRS set in the toplevel Makefile
Heiko Schlittermann (HS12-RIPE) [Thu, 25 Mar 2021 11:58:50 +0000 (12:58 +0100)]
Build: use PHDRS set in the toplevel Makefile

They're passed as HDRS, but the lookups/Makefile referenced the PHDRS
(which was empty)

E.g. touch src/functions.h didn't force a rebuild of the lookups.a

3 years agoAvoid building routines calling other not incuded in utilities link stage
Jeremy Harris [Tue, 23 Mar 2021 00:39:54 +0000 (00:39 +0000)]
Avoid building routines calling other not incuded in utilities link stage

This should fix a Solaris build error probably inserted by 92583637b2

3 years agoAvoid clearing first_delivery flag on the initial half of a 2-phase queue run
Jeremy Harris [Mon, 22 Mar 2021 21:47:42 +0000 (21:47 +0000)]
Avoid clearing first_delivery flag on the initial half of a 2-phase queue run

3 years agoBuiltin macros for Experimental features
Jeremy Harris [Fri, 19 Mar 2021 00:44:58 +0000 (00:44 +0000)]
Builtin macros for Experimental features

3 years agoDNS: explicit alloc/free of workspace
Jeremy Harris [Sun, 21 Mar 2021 00:02:07 +0000 (00:02 +0000)]
DNS: explicit alloc/free of workspace

3 years agoMemory debug: track max pool order, fix nonpool accounting
Jeremy Harris [Sat, 20 Mar 2021 22:41:50 +0000 (22:41 +0000)]
Memory debug: track max pool order, fix nonpool accounting

3 years agoMemory handling: exponentially-increasing alloc size
Jeremy Harris [Sun, 14 Mar 2021 17:45:27 +0000 (17:45 +0000)]
Memory handling: exponentially-increasing alloc size

3 years agoDKIM: Force use of tainted mem for headers
Jeremy Harris [Sun, 14 Mar 2021 17:37:11 +0000 (17:37 +0000)]
DKIM: Force use of tainted mem for headers

3 years agoAvoid needless alloc for null header
Jeremy Harris [Sun, 14 Mar 2021 15:51:18 +0000 (15:51 +0000)]
Avoid needless alloc for null header

3 years agoDKIM: verify using separate pool-pair, reset per message
Jeremy Harris [Sun, 14 Mar 2021 17:25:11 +0000 (17:25 +0000)]
DKIM: verify using separate pool-pair, reset per message

3 years agotestsuite output changes resulting
Jeremy Harris [Fri, 19 Mar 2021 16:13:51 +0000 (16:13 +0000)]
testsuite output changes resulting

Broken-by: 649c209e19
3 years ago Linux and the BSDs have getifaddrs(). Use it and save a bunch of complex coding.
Jeremy Harris [Wed, 17 Mar 2021 14:33:46 +0000 (14:33 +0000)]
Linux and the BSDs have getifaddrs().  Use it and save a bunch of complex coding.

3 years agotestsuite output changes resulting
Jeremy Harris [Wed, 17 Mar 2021 00:03:50 +0000 (00:03 +0000)]
testsuite output changes resulting

Broken-by: 649c209e19
3 years agoPipeline QUIT after data
Jeremy Harris [Sun, 14 Mar 2021 20:39:03 +0000 (20:39 +0000)]
Pipeline QUIT after data

3 years agoDebug: tag client SMTP output with buffering qualifier
Jeremy Harris [Thu, 11 Mar 2021 22:44:27 +0000 (22:44 +0000)]
Debug: tag client SMTP output with buffering qualifier

3 years agoFix error messages in dbfn_open
Heiko Schlittermann (HS12-RIPE) [Sun, 14 Mar 2021 11:16:57 +0000 (12:16 +0100)]
Fix error messages in dbfn_open

3 years agoDoc: more explicit hinting on tls_try_verify_hosts.
Jeremy Harris [Wed, 17 Feb 2021 12:40:02 +0000 (13:40 +0100)]
Doc: more explicit hinting on tls_try_verify_hosts.

3 years agoFix uClibc build
Bernd Kuhls [Mon, 8 Mar 2021 12:04:34 +0000 (13:04 +0100)]
Fix uClibc build

structs.h:757:18: error: ‘NS_MAXMSG’ undeclared here (not in a function); did you mean ‘N_MASC’?
   uschar  answer[NS_MAXMSG];      /* the answer itself */

3 years agowip
Jeremy Harris [Wed, 17 Feb 2021 20:00:27 +0000 (20:00 +0000)]
wip

3 years agoRevert "Docs: typos"
Jeremy Harris [Sun, 7 Mar 2021 00:07:24 +0000 (00:07 +0000)]
Revert "Docs: typos"

This reverts commit 1ad20e19a669731c19852c865facabe4816ae4f9.
These are not typos; "provably" is a real word and accurate in context.

3 years agoDocs: typos
Jim Pazarena [Sat, 6 Mar 2021 23:36:27 +0000 (00:36 +0100)]
Docs: typos

3 years agoDocs: fix description of hosts_try_dane. Bug 2704
Jeremy Harris [Sat, 27 Feb 2021 19:01:07 +0000 (19:01 +0000)]
Docs: fix description of hosts_try_dane.  Bug 2704

3 years agoQueryprogram router: call extract fn directly rather than via string-expansion
Jeremy Harris [Wed, 24 Feb 2021 19:31:48 +0000 (19:31 +0000)]
Queryprogram router: call extract fn directly rather than via string-expansion

This is not only safer (vs. unexpected expansions), but more efficient

3 years agoBulid: fix DISABLE_PIPE_CONNECT build. Bug 270333
Jeremy Harris [Tue, 23 Feb 2021 17:32:04 +0000 (17:32 +0000)]
Bulid: fix DISABLE_PIPE_CONNECT build.  Bug 270333

3 years agoFix list-expansion for various domainlists, having included sublist elements. Bug...
Jeremy Harris [Mon, 22 Feb 2021 21:24:01 +0000 (21:24 +0000)]
Fix list-expansion for various domainlists, having included sublist elements.  Bug 2701

3 years agoTestsuite: fix error message. Bug 2700
Jasen Betts [Mon, 22 Feb 2021 13:37:24 +0000 (13:37 +0000)]
Testsuite: fix error message.  Bug 2700

3 years agospamd: Use macro for default priority. Bug 2694
Heiko Schlichting [Fri, 19 Feb 2021 11:18:04 +0000 (11:18 +0000)]
spamd: Use macro for default priority.  Bug 2694

3 years agoUse random_number rather than random, for external server distribution. Bug 2694
Heiko Schlichting [Fri, 19 Feb 2021 11:16:10 +0000 (11:16 +0000)]
Use random_number rather than random, for external server distribution.  Bug 2694

3 years agoFix weight calculation for socks_proxy. Bug 2694
Heiko Schlichting [Fri, 19 Feb 2021 11:14:36 +0000 (11:14 +0000)]
Fix weight calculation for socks_proxy.  Bug 2694

3 years agoFix weight calculation for spamd_address. Bug 2694
Heiko Schlichting [Fri, 19 Feb 2021 11:11:51 +0000 (11:11 +0000)]
Fix weight calculation for spamd_address.  Bug 2694

3 years agoDocs: yet more on $domain_data
Jeremy Harris [Thu, 18 Feb 2021 22:00:46 +0000 (22:00 +0000)]
Docs: yet more on $domain_data

3 years agoDocs: typo
Jim Pazarena [Thu, 18 Feb 2021 21:23:08 +0000 (21:23 +0000)]
Docs: typo

3 years agoDebugging: avoid expansion problem with foolish-length list output
Jeremy Harris [Thu, 18 Feb 2021 21:17:40 +0000 (21:17 +0000)]
Debugging: avoid expansion problem with foolish-length list output

3 years agoTestsuite: when generating a bounce message, allow time for exec to run before before...
Jeremy Harris [Sat, 13 Feb 2021 20:31:44 +0000 (20:31 +0000)]
Testsuite: when generating a bounce message, allow time for exec to run before before feeding the message

This is to keep debug output in similar order on different platforms

3 years agoFix build for platforms not having ulong
Jeremy Harris [Sat, 13 Feb 2021 17:26:14 +0000 (17:26 +0000)]
Fix build for platforms not having ulong

3 years agowip
Jeremy Harris [Mon, 1 Feb 2021 12:51:24 +0000 (12:51 +0000)]
wip

3 years agoDocs: more notes on dnslists
Jeremy Harris [Sat, 13 Feb 2021 15:16:47 +0000 (15:16 +0000)]
Docs: more notes on dnslists

3 years agoFix error codes in ACL-time quota checking
Jeremy Harris [Fri, 12 Feb 2021 17:48:11 +0000 (17:48 +0000)]
Fix error codes in ACL-time quota checking

3 years agoFix FreeBSD 13 build
Jeremy Harris [Fri, 12 Feb 2021 17:40:28 +0000 (17:40 +0000)]
Fix FreeBSD 13 build

3 years agoTestsuite: expand testcase. Bug 2693
Simon Arlott [Mon, 8 Feb 2021 19:04:30 +0000 (19:04 +0000)]
Testsuite: expand testcase.  Bug 2693

3 years agoTestsuite: missing file
Jeremy Harris [Sun, 7 Feb 2021 01:19:24 +0000 (01:19 +0000)]
Testsuite: missing file

Broken-by: d6870e76cf
3 years agoDocs: fix bug reference
Jeremy Harris [Sat, 6 Feb 2021 22:35:01 +0000 (22:35 +0000)]
Docs: fix bug reference

3 years agoFix handling of server which follows a RCPT 452 with a 250. Bug 26092
Jeremy Harris [Sat, 6 Feb 2021 21:46:15 +0000 (21:46 +0000)]
Fix handling of server which follows a RCPT 452 with a 250.  Bug 26092

3 years agoFix daemon-SIGHUP on FreeBSD
Jeremy Harris [Sat, 6 Feb 2021 16:04:24 +0000 (16:04 +0000)]
Fix daemon-SIGHUP on FreeBSD

3 years agoTestsuite: fix testcase for SPF empty-mailfrom-use-helo. Bug 467
Jeremy Harris [Tue, 2 Feb 2021 21:30:56 +0000 (21:30 +0000)]
Testsuite: fix testcase for SPF empty-mailfrom-use-helo.  Bug 467

3 years agogsasl authenticator: support client salted-password caching
Jeremy Harris [Sat, 30 Jan 2021 23:59:18 +0000 (23:59 +0000)]
gsasl authenticator: support client salted-password caching

3 years agoFix Freebsd TFO build
Jeremy Harris [Sun, 31 Jan 2021 13:58:26 +0000 (13:58 +0000)]
Fix Freebsd TFO build

Broken-by: 3eb0bcd7a1
3 years agotidying
Jeremy Harris [Sun, 8 Nov 2020 18:11:56 +0000 (18:11 +0000)]
tidying

3 years agoLookups: fix $local_part_data for a match on a filename list element. Bug 2691
Jeremy Harris [Fri, 29 Jan 2021 16:34:27 +0000 (16:34 +0000)]
Lookups: fix $local_part_data for a match on a filename list element.  Bug 2691

3 years agoAUTH: avoid logging creds on ACL denial
Jeremy Harris [Mon, 25 Jan 2021 14:55:06 +0000 (14:55 +0000)]
AUTH: avoid logging creds on ACL denial

3 years agoTFO: cleanup the TCP pure ack of SMTP banner
Jeremy Harris [Sat, 23 Jan 2021 23:15:58 +0000 (23:15 +0000)]
TFO: cleanup the TCP pure ack of SMTP banner

3 years agoMove QUICKACK disable as early as possible in server handling
Jeremy Harris [Sat, 23 Jan 2021 21:28:28 +0000 (21:28 +0000)]
Move QUICKACK disable as early as possible in server handling

3 years agoFix getting non-TLS QUIT in FIN segment
Jeremy Harris [Fri, 22 Jan 2021 19:58:54 +0000 (19:58 +0000)]
Fix getting non-TLS QUIT in FIN segment

Linux was behaving oddly with the TCP_CORK method, and using MSG_MORE
is one fewer syscall.

3 years agoTLS: on Linux when sockopt TCP_FASTOPEN_CONNECT is available, use TFO for TLS-on...
Jeremy Harris [Thu, 21 Jan 2021 22:02:18 +0000 (22:02 +0000)]
TLS: on Linux when sockopt TCP_FASTOPEN_CONNECT is available, use TFO for TLS-on-connect client connections

3 years ago Avoid bare TCP ACKs during TLS-on-connect startup.
Jeremy Harris [Thu, 21 Jan 2021 17:34:55 +0000 (17:34 +0000)]
Avoid bare TCP ACKs during TLS-on-connect startup.

    We can't get the QUICKACK turned off on the accepted socket fast enough to
    stop the ACK for the ClientHello - but we get the rest, under OpenSSL.

3 years agoTestsuite: TLS server testcase consolidation
Jeremy Harris [Thu, 21 Jan 2021 13:06:31 +0000 (13:06 +0000)]
Testsuite: TLS server testcase consolidation

3 years agoTestsuite: shuffling
Jeremy Harris [Thu, 21 Jan 2021 12:23:41 +0000 (12:23 +0000)]
Testsuite: shuffling

3 years agoTestsuite: TLS client testcase consolidation
Jeremy Harris [Wed, 20 Jan 2021 20:44:21 +0000 (20:44 +0000)]
Testsuite: TLS client testcase consolidation

3 years agoTestsuite: case for TLS client tls-on-connect
Jeremy Harris [Tue, 19 Jan 2021 22:12:16 +0000 (22:12 +0000)]
Testsuite: case for TLS client tls-on-connect

3 years agomalware: use sendfile for ClamAV TCP
Jeremy Harris [Sun, 17 Jan 2021 20:42:10 +0000 (20:42 +0000)]
malware: use sendfile for ClamAV TCP

3 years agoTestsuite: testcase for ClamAV over TCP
Jeremy Harris [Sun, 17 Jan 2021 19:59:51 +0000 (19:59 +0000)]
Testsuite: testcase for ClamAV over TCP

3 years agomalware: fix ClamAV file send corking
Jeremy Harris [Sat, 16 Jan 2021 21:00:34 +0000 (21:00 +0000)]
malware: fix ClamAV file send corking

3 years agodocs infrastructure notes
Jeremy Harris [Sat, 16 Jan 2021 12:59:19 +0000 (12:59 +0000)]
docs infrastructure notes

3 years agoDocs: indexing
Jeremy Harris [Sat, 16 Jan 2021 11:46:56 +0000 (11:46 +0000)]
Docs: indexing

3 years agoHints DB: harden against corrupt files by ignoring unexpected size records
Jeremy Harris [Mon, 11 Jan 2021 19:48:12 +0000 (19:48 +0000)]
Hints DB: harden against corrupt files by ignoring unexpected size records

3 years agoAuths: in plaintext authenticator, fix parsing of consecutive circuflex. Bug 2687
Jeremy Harris [Tue, 12 Jan 2021 15:36:09 +0000 (15:36 +0000)]
Auths: in plaintext authenticator, fix parsing of consecutive circuflex.  Bug 2687

3 years agoDocs: change note
Jeremy Harris [Tue, 12 Jan 2021 15:33:54 +0000 (15:33 +0000)]
Docs: change note

3 years agochannel binding notes
Jeremy Harris [Sun, 10 Jan 2021 20:10:21 +0000 (20:10 +0000)]
channel binding notes

3 years agoUtilities: harden exim_tidydb against corrupt wait-records. Bug 2343
Jeremy Harris [Sat, 9 Jan 2021 13:08:35 +0000 (13:08 +0000)]
Utilities: harden exim_tidydb against corrupt wait-records.  Bug 2343

3 years agoBSD: avoid delay on continued-connection
Jeremy Harris [Mon, 4 Jan 2021 17:59:23 +0000 (17:59 +0000)]
BSD: avoid delay on continued-connection

Broken-by: 6454662ecb
3 years agoAuthenticators: feature handling for upcoming GSASL version
Jeremy Harris [Fri, 1 Jan 2021 17:31:04 +0000 (17:31 +0000)]
Authenticators: feature handling for upcoming GSASL version

3 years agoFreeBSD: packet coalescing
Jeremy Harris [Fri, 1 Jan 2021 14:43:04 +0000 (14:43 +0000)]
FreeBSD: packet coalescing

3 years agomalware: avoid partial packets, sending to ClamAV
Jeremy Harris [Fri, 1 Jan 2021 14:31:14 +0000 (14:31 +0000)]
malware: avoid partial packets, sending to ClamAV

3 years agoFreeBSD: harden against ClamAV connection errors
Jeremy Harris [Fri, 1 Jan 2021 13:25:29 +0000 (13:25 +0000)]
FreeBSD: harden against ClamAV connection errors

3 years agoAvoid needless socket close
Jeremy Harris [Fri, 1 Jan 2021 12:09:37 +0000 (12:09 +0000)]
Avoid needless socket close

3 years agomalware: avoid slurping entire spoolfile for sending to ClamAV
Jeremy Harris [Thu, 31 Dec 2020 22:18:30 +0000 (22:18 +0000)]
malware: avoid slurping entire spoolfile for sending to ClamAV

3 years agoTFO: better observability (slightly) on FreeBSD
Jeremy Harris [Thu, 31 Dec 2020 21:52:02 +0000 (21:52 +0000)]
TFO: better observability (slightly) on FreeBSD

3 years agotypo
Jeremy Harris [Mon, 28 Dec 2020 20:20:44 +0000 (20:20 +0000)]
typo

3 years agoLogging: make placement of continued-delivery asterisk consistent
Jeremy Harris [Mon, 28 Dec 2020 18:31:24 +0000 (18:31 +0000)]
Logging: make placement of continued-delivery asterisk consistent

3 years agoGSASL: More recent versions of the library no longer need a hack for channel-binding
Jeremy Harris [Sun, 27 Dec 2020 20:51:42 +0000 (20:51 +0000)]
GSASL: More recent versions of the library no longer need a hack for channel-binding

3 years agoFix build on GNU/Hurd [supports openat()]. Bug 2608
Jeremy Harris [Sat, 26 Dec 2020 18:55:29 +0000 (18:55 +0000)]
Fix build on GNU/Hurd [supports openat()].  Bug 2608

3 years agoFix build warning on 32-bit int platfowms. Bug 2678
Jeremy Harris [Sat, 26 Dec 2020 18:18:33 +0000 (18:18 +0000)]
Fix build warning on 32-bit int platfowms.  Bug 2678

3 years agoExpansions: Reduce memory use of ${listcount }
Jeremy Harris [Thu, 24 Dec 2020 21:05:40 +0000 (21:05 +0000)]
Expansions: Reduce memory use of ${listcount }

3 years agoReplace internal string-expansion call with a direct recursion
Jeremy Harris [Thu, 24 Dec 2020 21:04:34 +0000 (21:04 +0000)]
Replace internal string-expansion call with a direct recursion

3 years agoConvert more cases of list-walking to use self-assigned memory for the list-item
Jeremy Harris [Thu, 24 Dec 2020 20:59:29 +0000 (20:59 +0000)]
Convert more cases of list-walking to use self-assigned memory for the list-item

3 years agoFix ${listextract } from a tainted list
Jeremy Harris [Wed, 23 Dec 2020 22:35:04 +0000 (22:35 +0000)]
Fix ${listextract } from a tainted list

3 years agoFix local delivery delay when combined with remote callout/hold. Bug 2599
Jeremy Harris [Sun, 20 Dec 2020 15:49:39 +0000 (15:49 +0000)]
Fix local delivery delay when combined with remote callout/hold.  Bug 2599

4 years agoFix the PIPE_CONNECT feature control in the template Makefile, the
Jeremy Harris [Thu, 17 Dec 2020 09:59:23 +0000 (09:59 +0000)]
Fix the PIPE_CONNECT feature control in the template Makefile, the
default having changed to "included" for 4.93

Broken-by: 81344b40e3
4 years agoRemove the X_ prefix from the PIPE_CONNECT SMTP service extension keyword.
Jeremy Harris [Thu, 17 Dec 2020 09:39:59 +0000 (09:39 +0000)]
Remove the X_ prefix from the PIPE_CONNECT SMTP service extension keyword.

4 years agoFix matching of long addresses. Bug 2677
Jeremy Harris [Wed, 16 Dec 2020 19:07:51 +0000 (19:07 +0000)]
Fix matching of long addresses.  Bug 2677

4 years agoDocs: add info on router variable evaluation order
Jeremy Harris [Wed, 2 Dec 2020 10:14:23 +0000 (10:14 +0000)]
Docs: add info on router variable evaluation order