exim.git
5 months agoMerge branch '4.next' 4.next github/4.next
Jeremy Harris [Sat, 4 Nov 2023 14:20:45 +0000 (14:20 +0000)]
Merge branch '4.next'

5 months agoDocs: tidy for next release
Jeremy Harris [Sat, 4 Nov 2023 14:19:05 +0000 (14:19 +0000)]
Docs: tidy for next release

5 months agoCopyright updates: exim-4.97
Jeremy Harris [Sat, 4 Nov 2023 12:55:05 +0000 (12:55 +0000)]
Copyright updates:

vi $(git log --name-status --grep=SPDX: --invert-grep exim-4.96..master | awk '/^M/{print $2}' | grep -v '^test/' | sort -u)

6 months agoDocs: try to be even more clear on the ${run...} expansion
Jeremy Harris [Thu, 5 Oct 2023 12:26:13 +0000 (13:26 +0100)]
Docs: try to be even more clear on the ${run...} expansion

6 months agoFix exipick for new message-id format
Wolfgang Breyha [Fri, 20 Oct 2023 14:02:38 +0000 (15:02 +0100)]
Fix exipick for new message-id format

Broken-by: 46a36afae41f
6 months agofix: typo
Lutz Pressler [Fri, 20 Oct 2023 19:34:02 +0000 (21:34 +0200)]
fix: typo

6 months agoDNS: more hardening against crafted responses
Jeremy Harris [Sun, 15 Oct 2023 11:15:06 +0000 (12:15 +0100)]
DNS: more hardening against crafted responses

6 months agoAdd systemd units (examples)
Heiko Schlittermann (HS12-RIPE) [Sat, 22 Oct 2022 21:15:44 +0000 (23:15 +0200)]
Add systemd units (examples)

- daemon
- socket activation
- socket activation (inetd mode)
- queuerunner
- maintainance

6 months agotidy: remove unused variables
Heiko Schlittermann (HS12-RIPE) [Tue, 17 Oct 2023 10:53:44 +0000 (12:53 +0200)]
tidy: remove unused variables

6 months agoTidying: massage to project coding style
Jeremy Harris [Mon, 16 Oct 2023 11:17:53 +0000 (12:17 +0100)]
Tidying: massage to project coding style

6 months agoUse project-standard memory management rather than alloca()
Jeremy Harris [Mon, 16 Oct 2023 10:54:50 +0000 (11:54 +0100)]
Use project-standard memory management rather than alloca()

6 months agoMerge branch 'exim-4.96+security' into master+security
Heiko Schlittermann (HS12-RIPE) [Sun, 15 Oct 2023 17:53:25 +0000 (19:53 +0200)]
Merge branch 'exim-4.96+security' into master+security

* exim-4.96+security:
  docs: Changelog
  Harden dnsdb against crafted DNS responses.  Bug 3033
  SPF: harden against crafted DNS responses
  fix: string_is_ip_address (CVE-2023-42117) Bug 3031
  Testsuite: Add testcases for string_is_ip_address (CVE-2023-42117)

6 months agodocs: Changelog exim-4.96+security github/exim-4.96+security exim-4.96.2
Heiko Schlittermann (HS12-RIPE) [Sat, 14 Oct 2023 21:55:23 +0000 (23:55 +0200)]
docs: Changelog

6 months agoHarden dnsdb against crafted DNS responses. Bug 3033
Jeremy Harris [Tue, 10 Oct 2023 22:03:28 +0000 (23:03 +0100)]
Harden dnsdb against crafted DNS responses.  Bug 3033

(cherry picked from commit 8787c8994f07c23c3664d76926e02f07314d699d)

6 months agoSPF: harden against crafted DNS responses
Jeremy Harris [Tue, 10 Oct 2023 11:45:27 +0000 (12:45 +0100)]
SPF: harden against crafted DNS responses

(cherry picked from commit 4f07f38374f8662c318699fb30432273ffcfe0d3)

6 months agofix: proxy-protocol (CVE-2023-41227) Bug 3031
Heiko Schlittermann (HS12-RIPE) [Sat, 14 Oct 2023 21:33:07 +0000 (23:33 +0200)]
fix: proxy-protocol (CVE-2023-41227) Bug 3031

* fix-CVE-2023-42117:
  fix: string_is_ip_address (CVE-2023-42117) (closes 3031)
  Testsuite: Add testcases for string_is_ip_address (CVE-2023-42117)

6 months agofix: string_is_ip_address (CVE-2023-42117) Bug 3031
Heiko Schlittermann (HS12-RIPE) [Thu, 5 Oct 2023 20:49:57 +0000 (22:49 +0200)]
fix: string_is_ip_address (CVE-2023-42117) Bug 3031

6 months agoTestsuite: Add testcases for string_is_ip_address (CVE-2023-42117)
Heiko Schlittermann (HS12-RIPE) [Sat, 7 Oct 2023 11:07:59 +0000 (13:07 +0200)]
Testsuite: Add testcases for string_is_ip_address (CVE-2023-42117)

6 months agoHandle error on close of spool data file
Jeremy Harris [Sat, 14 Oct 2023 21:29:08 +0000 (22:29 +0100)]
Handle error on close of spool data file

6 months agoTidying: readability defines
Jeremy Harris [Sat, 14 Oct 2023 21:27:41 +0000 (22:27 +0100)]
Tidying: readability defines

6 months agoTestsuite: output changes resulting
Jeremy Harris [Sat, 14 Oct 2023 21:26:50 +0000 (22:26 +0100)]
Testsuite: output changes resulting

Broken-by: 06175ac09a1e
6 months agoSPF: harden against crafted DNS responses
Jeremy Harris [Tue, 10 Oct 2023 11:45:27 +0000 (12:45 +0100)]
SPF: harden against crafted DNS responses

6 months agoFix crash in SPF DNS usage
Simon Arlott [Tue, 10 Oct 2023 11:31:58 +0000 (12:31 +0100)]
Fix crash in SPF DNS usage

Broken-by: 8ab9474f0355
6 months agoTestsuite: retire perl smartmatch use exim-4.97-RC2
Bernard Quatermass [Thu, 5 Oct 2023 20:35:12 +0000 (21:35 +0100)]
Testsuite: retire perl smartmatch use

Recent perl versions whine that smartmatch is deprecated

6 months agoSPF: fix looking at RRs when dns lookup does not return success
Jeremy Harris [Thu, 5 Oct 2023 16:43:45 +0000 (17:43 +0100)]
SPF: fix looking at RRs when dns lookup does not return success

6 months agoDocs: Fix variable name,. Bug 3034
Jeremy Harris [Thu, 5 Oct 2023 12:25:01 +0000 (13:25 +0100)]
Docs: Fix variable name,.  Bug 3034

Broken-by: 8c226c7c8917
6 months agodoc: markup improvement for tcp:connect (closes 3034)
Heiko Schlittermann (HS12-RIPE) [Tue, 3 Oct 2023 22:33:22 +0000 (00:33 +0200)]
doc: markup improvement for tcp:connect (closes 3034)

suggested by: u34@net9.cf

6 months agomailmap: real name for bes-internal
Heiko Schlittermann (HS12-RIPE) [Tue, 3 Oct 2023 22:17:47 +0000 (00:17 +0200)]
mailmap: real name for bes-internal

6 months agofix spec typo
Vladimir Varlamov [Tue, 3 Oct 2023 22:15:09 +0000 (00:15 +0200)]
fix spec typo

6 months agoMerge branch 'exim-4.96+security'
Jeremy Harris [Mon, 2 Oct 2023 12:24:29 +0000 (13:24 +0100)]
Merge branch 'exim-4.96+security'

6 months agoDebug: more detail for ${reduce...} ${map...} ${filter...}
Jeremy Harris [Tue, 12 Sep 2023 19:52:35 +0000 (20:52 +0100)]
Debug: more detail for ${reduce...} ${map...} ${filter...}

6 months agoupdate Changelog about security fixes exim-4.96.1
Heiko Schlittermann (HS12-RIPE) [Sat, 30 Sep 2023 20:52:59 +0000 (22:52 +0200)]
update Changelog about security fixes

6 months agoAuths: fix possible OOB read in SPA authenticator. Bug 3001
Jeremy Harris [Thu, 11 May 2023 20:08:08 +0000 (21:08 +0100)]
Auths: fix possible OOB read in SPA authenticator.  Bug 3001

(cherry picked from commit 04107e98d58efb69f7e2d7b81176e5374c7098a3)

6 months agoAuths: fix possible OOB write in SPA authenticator. Bug 3000
Jeremy Harris [Thu, 11 May 2023 18:31:54 +0000 (19:31 +0100)]
Auths: fix possible OOB write in SPA authenticator.  Bug 3000

(cherry picked from commit e17b8b0f19b25a223b0cc41933b881c3a1073e61)

6 months agoAuths: use uschar more in spa authenticator
Jeremy Harris [Thu, 11 May 2023 17:53:25 +0000 (18:53 +0100)]
Auths: use uschar more in spa authenticator

(cherry picked from commit 0519dcfb5f149154a416b54865fd8026abb57791)

6 months agoAuths: fix possible OOB write in external authenticator. Bug 2999
Jeremy Harris [Thu, 11 May 2023 17:02:43 +0000 (18:02 +0100)]
Auths: fix possible OOB write in external authenticator.  Bug 2999

(cherry picked from commit 7bb5bc2c6592e062bf0b514cc71afd2d93e2e0dd)

6 months agoDocs: tidying
Hendrik Jäger [Fri, 29 Sep 2023 12:47:36 +0000 (13:47 +0100)]
Docs: tidying

7 months agoTestsute: output changes resulting
Jeremy Harris [Wed, 27 Sep 2023 09:44:10 +0000 (10:44 +0100)]
Testsute: output changes resulting

Broken-by: 06175ac09a1e
7 months agoDKIM: support list-version of $dkim_verify_status, and data ACL
Jeremy Harris [Mon, 25 Sep 2023 08:48:00 +0000 (09:48 +0100)]
DKIM: support list-version of $dkim_verify_status, and data ACL

7 months agotypo
Kurt Jaeger [Tue, 26 Sep 2023 20:13:39 +0000 (21:13 +0100)]
typo

7 months agoDocs: more detail for DKIM exim-4.97-RC1
Jeremy Harris [Tue, 26 Sep 2023 17:07:58 +0000 (18:07 +0100)]
Docs: more detail for DKIM

7 months agoTestsuite: munge for EXPERIMENTAL_DSN_INFO
Jeremy Harris [Sun, 24 Sep 2023 20:05:44 +0000 (21:05 +0100)]
Testsuite: munge for EXPERIMENTAL_DSN_INFO

Broken-by: e2fe20104068
7 months agomore detail in error messages
Jeremy Harris [Sun, 24 Sep 2023 19:50:26 +0000 (20:50 +0100)]
more detail in error messages

7 months agoTestsuite: use actual hostname in SRS testcase
Jeremy Harris [Sun, 24 Sep 2023 18:41:05 +0000 (19:41 +0100)]
Testsuite: use actual hostname in SRS testcase

7 months agoDocs: inbound_srs behavior for empty secret. Bug 3025
Dean Brooks [Sun, 24 Sep 2023 18:24:38 +0000 (19:24 +0100)]
Docs: inbound_srs behavior for empty secret.  Bug 3025

Additional docs commentary and code-tidying by committer

7 months agoDocs: remove claim that -Mg causes specific wording in bounce. Bug 3026
Jeremy Harris [Sun, 24 Sep 2023 16:02:52 +0000 (17:02 +0100)]
Docs: remove claim that -Mg causes specific wording in bounce.  Bug 3026

While investigating, ensure EXPERIMENTAL_DSN_INFO matches

7 months agoDocs: note that the match_ip condition sets $value
Jeremy Harris [Thu, 14 Sep 2023 17:46:15 +0000 (18:46 +0100)]
Docs: note that the match_ip condition sets $value

7 months agoFix ${tr...} and empty-strings. Bug 3023
Jeremy Harris [Mon, 11 Sep 2023 14:50:35 +0000 (15:50 +0100)]
Fix ${tr...} and empty-strings.  Bug 3023

7 months agotypo
Andreas Metzler [Sun, 10 Sep 2023 15:50:36 +0000 (16:50 +0100)]
typo

7 months agoFeature advertisements for radius and pwcheck
Jeremy Harris [Sun, 10 Sep 2023 09:06:56 +0000 (10:06 +0100)]
Feature advertisements for radius and pwcheck

7 months agoTestsuite: (Build) bring the autconf path up to current
Jeremy Harris [Fri, 8 Sep 2023 10:40:55 +0000 (11:40 +0100)]
Testsuite: (Build) bring the autconf path up to current

7 months agoTestsuite: add command cat2
Jeremy Harris [Fri, 8 Sep 2023 08:59:52 +0000 (09:59 +0100)]
Testsuite: add command cat2

The /dev/stderr trick manages to fail on Gnu HURD

7 months agotidying exim-4.97-RC0
Jeremy Harris [Thu, 7 Sep 2023 21:02:59 +0000 (22:02 +0100)]
tidying

7 months agoTestsuite: output changes resulting
Jeremy Harris [Thu, 7 Sep 2023 18:33:07 +0000 (19:33 +0100)]
Testsuite: output changes resulting

Broken-by: 7616c28d51aa
7 months agoDocs: example complex expansion for router domains condition
Jeremy Harris [Thu, 7 Sep 2023 15:40:39 +0000 (16:40 +0100)]
Docs: example complex expansion for router domains condition

7 months agoDocs: typo in comment in example config. Bug 3022
u34 [Thu, 7 Sep 2023 15:14:55 +0000 (16:14 +0100)]
Docs: typo in comment in example config.  Bug 3022

7 months agoBuild: check during make for perl script library requirements
Jeremy Harris [Thu, 7 Sep 2023 15:02:03 +0000 (16:02 +0100)]
Build: check during make for perl script library requirements

7 months agoTestsuite: munge for FreeBSD
Jeremy Harris [Wed, 6 Sep 2023 15:10:58 +0000 (16:10 +0100)]
Testsuite: munge for FreeBSD

7 months agoTestsuite: typo
Jeremy Harris [Wed, 6 Sep 2023 12:44:24 +0000 (13:44 +0100)]
Testsuite: typo

7 months agoTestsuite: unbreak use of explicit stderr on BSDs, redux
Jeremy Harris [Wed, 6 Sep 2023 08:55:30 +0000 (09:55 +0100)]
Testsuite: unbreak use of explicit stderr on BSDs, redux

7 months agoTestsuite: unbreak use of explicit stderr on BSDs
Jeremy Harris [Tue, 5 Sep 2023 20:46:17 +0000 (21:46 +0100)]
Testsuite: unbreak use of explicit stderr on BSDs

Broken-by: 09b9a4dfe0e5
7 months agoTestsuite: support "anything but" returncode script lines
Jeremy Harris [Tue, 5 Sep 2023 13:01:10 +0000 (14:01 +0100)]
Testsuite: support "anything but" returncode script lines

7 months agoTestsuite: try workaround for missing /dev/stderr symlink on Alpine
Jeremy Harris [Mon, 4 Sep 2023 09:47:35 +0000 (10:47 +0100)]
Testsuite: try workaround for missing /dev/stderr symlink on Alpine

7 months agoTestsuite: more munging for Alpine Linux
Jeremy Harris [Sun, 3 Sep 2023 14:48:54 +0000 (15:48 +0100)]
Testsuite: more munging for Alpine Linux

7 months agoTestsuite: add stderr file for one testcase.
Jeremy Harris [Sun, 3 Sep 2023 14:47:22 +0000 (15:47 +0100)]
Testsuite: add stderr file for one testcase.
THis is just so that perl "die" is visible from buildfarm animals.

7 months agoTestsuite: hunt harder for more DB utility binaries
Jeremy Harris [Sun, 3 Sep 2023 13:56:56 +0000 (14:56 +0100)]
Testsuite: hunt harder for more DB utility binaries

7 months agoDocs: typo. Bug 3019
Jeremy Harris [Sun, 3 Sep 2023 12:50:04 +0000 (13:50 +0100)]
Docs: typo.  Bug 3019

See also 578c0ad36e07

7 months agoTaint: track SASL auth intermediate inputs
Jeremy Harris [Fri, 1 Sep 2023 10:44:32 +0000 (11:44 +0100)]
Taint: track SASL auth intermediate inputs

7 months agoTestsuite: munging for Alpine Linux
Jeremy Harris [Thu, 31 Aug 2023 19:11:48 +0000 (20:11 +0100)]
Testsuite: munging for Alpine Linux

7 months agoTaint: de-taint $2 (fixed part of key) from a matching partial-search
Jeremy Harris [Thu, 31 Aug 2023 18:06:05 +0000 (19:06 +0100)]
Taint: de-taint $2 (fixed part of key) from a matching partial-search

7 months agoAvoid sending DSN when message was accepted under fakereject or fakedefer. Bug 3016
Jeremy Harris [Thu, 31 Aug 2023 14:16:09 +0000 (15:16 +0100)]
Avoid sending DSN when message was accepted under fakereject or fakedefer.  Bug 3016

7 months agoDocs: typoes
u34 [Tue, 29 Aug 2023 18:15:09 +0000 (19:15 +0100)]
Docs: typoes

7 months agoDocs: tweak description of message-id. Bug 3020
Arkadiusz Miśkiewicz [Tue, 29 Aug 2023 18:05:44 +0000 (19:05 +0100)]
Docs: tweak description of message-id.  Bug 3020

8 months agoDMARC: add ARC info to history records
Jeremy Harris [Thu, 24 Aug 2023 19:22:43 +0000 (20:22 +0100)]
DMARC: add ARC info to history records

8 months agoRe-fix live variable $value free. The inital fix resulted in $value from ${run....
Jeremy Harris [Thu, 24 Aug 2023 14:51:21 +0000 (15:51 +0100)]
Re-fix live variable $value free.  The inital fix resulted in $value from ${run...} not
being available later, which is a documented feature.

Broken=by: cf3fecb9e873

8 months agoRevert "Fix free of $value after ${run...}"
Jeremy Harris [Thu, 24 Aug 2023 14:44:31 +0000 (15:44 +0100)]
Revert "Fix free of $value after ${run...}"

This reverts commit cf3fecb9e873df38a9245775a3887e73a8716083.

8 months agotidying: specified-initializers
Jeremy Harris [Tue, 22 Aug 2023 14:26:04 +0000 (15:26 +0100)]
tidying: specified-initializers

8 months agotidying
Jeremy Harris [Thu, 17 Aug 2023 16:02:18 +0000 (17:02 +0100)]
tidying

8 months agoDMARC: for version 1.4.x libraries, add selector to dkim lines in history file
Victor Ustugov [Sat, 19 Aug 2023 22:08:58 +0000 (23:08 +0100)]
DMARC: for version 1.4.x libraries, add selector to dkim lines in history file

8 months ago Testsuite: add with-dkim case to DMARC testcase
Jeremy Harris [Sun, 20 Aug 2023 12:12:26 +0000 (13:12 +0100)]
Testsuite: add with-dkim case to DMARC testcase

8 months agoDMARC: write history file even under testsuite
Jeremy Harris [Sat, 19 Aug 2023 21:52:27 +0000 (22:52 +0100)]
DMARC: write history file even under testsuite

8 months agoTestsuite: DMARC history-file
Jeremy Harris [Sat, 19 Aug 2023 21:37:25 +0000 (22:37 +0100)]
Testsuite: DMARC history-file

8 months agoTestsuite: tweak domain in DKIM testcase
Jeremy Harris [Sun, 20 Aug 2023 11:42:21 +0000 (12:42 +0100)]
Testsuite: tweak domain in DKIM testcase

8 months agoDocs: add note for experimental LIMITS extension
Jeremy Harris [Fri, 4 Aug 2023 20:33:12 +0000 (21:33 +0100)]
Docs: add note for experimental LIMITS extension

8 months agoGnuTLS: fix autogen cert expiry date. Bug 3014
Andreas Metzler [Mon, 14 Aug 2023 16:27:16 +0000 (17:27 +0100)]
GnuTLS: fix autogen cert expiry date.  Bug 3014

Broken-by: 48e9099006
8 months agoDocs: combine option definitions
Jeremy Harris [Sat, 4 Jun 2022 21:02:40 +0000 (22:02 +0100)]
Docs: combine option definitions

8 months agoMake printf of gstring null-safe
Jeremy Harris [Fri, 11 Aug 2023 12:24:57 +0000 (13:24 +0100)]
Make printf of gstring null-safe

Broken-by: 00392be0e7cf
8 months agotypoes
Jeremy Harris [Wed, 9 Aug 2023 13:43:34 +0000 (14:43 +0100)]
typoes

Broken-by: 3b6774c818ba
8 months agotypoes
Jeremy Harris [Wed, 9 Aug 2023 13:03:38 +0000 (14:03 +0100)]
typoes

Briken-by: 3b6774c818ba
8 months agoUnbreak FreeBSD buld
Jeremy Harris [Wed, 9 Aug 2023 12:08:50 +0000 (13:08 +0100)]
Unbreak FreeBSD buld

Broken-by: 4e871f9b28df
8 months agoTestsuite: support TLS cross-library testing
Jeremy Harris [Fri, 20 Jan 2023 17:41:14 +0000 (17:41 +0000)]
Testsuite: support TLS cross-library testing

8 months agoLogging: connection_id
Jeremy Harris [Tue, 8 Aug 2023 22:33:41 +0000 (23:33 +0100)]
Logging: connection_id

8 months agoNew $recipients_list. Bug 2726
Jeremy Harris [Sun, 6 Aug 2023 13:50:36 +0000 (14:50 +0100)]
New $recipients_list.  Bug 2726

8 months agoLogging: convert an internal element from static to allocated buffer
Jeremy Harris [Mon, 7 Aug 2023 14:51:38 +0000 (15:51 +0100)]
Logging: convert an internal element from static to allocated buffer

8 months agoFix $recipients expansion when used within ${run...}. Bug 3013
Jeremy Harris [Thu, 3 Aug 2023 17:40:42 +0000 (18:40 +0100)]
Fix $recipients expansion when used within ${run...}.  Bug 3013

Broken-by: cfe6acff2ddc
8 months agoFix free of $value after ${run...}
Jeremy Harris [Thu, 3 Aug 2023 17:34:06 +0000 (18:34 +0100)]
Fix free of $value after ${run...}

8 months agoTestsuite: testcase for 3013
Jeremy Harris [Thu, 3 Aug 2023 19:52:15 +0000 (20:52 +0100)]
Testsuite: testcase for 3013

8 months agoDocs: typoes
Jeremy Harris [Mon, 24 Jul 2023 20:01:22 +0000 (21:01 +0100)]
Docs: typoes

9 months agoFix DYNLOOKUP build for lsearch. Bug 3012
Jeremy Harris [Mon, 24 Jul 2023 14:05:35 +0000 (15:05 +0100)]
Fix DYNLOOKUP build for lsearch.  Bug 3012

9 months agoDocs: tidying
Jeremy Harris [Mon, 12 Jun 2023 19:53:15 +0000 (20:53 +0100)]
Docs: tidying