users/jgh/exim.git
3 years agoavoid changing deliver_homw appendfile_safe_path
Jeremy Harris [Sat, 29 Aug 2020 23:12:49 +0000 (00:12 +0100)]
avoid changing deliver_homw

3 years agode-taint any passing belowhome
Jeremy Harris [Sat, 29 Aug 2020 19:26:14 +0000 (20:26 +0100)]
de-taint any passing belowhome

3 years agotaint: allow appenfile create_file option to specify a de-tainting safe path
Jeremy Harris [Sat, 29 Aug 2020 19:02:19 +0000 (20:02 +0100)]
taint: allow appenfile create_file option to specify a de-tainting safe path

3 years agoTaint: enforce checking of directory creates
Jeremy Harris [Sat, 29 Aug 2020 18:18:35 +0000 (19:18 +0100)]
Taint: enforce checking of directory creates

3 years agoadd an internal error code definition
Jeremy Harris [Sat, 29 Aug 2020 16:39:51 +0000 (17:39 +0100)]
add an internal error code definition

3 years agoTestsuite: separate cases for TLS resumption with/out OCSP
Jeremy Harris [Sun, 2 Aug 2020 22:56:58 +0000 (23:56 +0100)]
Testsuite: separate cases for TLS resumption with/out OCSP

3 years agoFix lsearch ret=full
Jeremy Harris [Sun, 2 Aug 2020 14:25:43 +0000 (15:25 +0100)]
Fix lsearch ret=full

3 years agoEnforce STARTTLS sync point, client side
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

3 years agoSPF: enhance A-R result
Jeremy Harris [Sat, 1 Aug 2020 20:16:19 +0000 (21:16 +0100)]
SPF: enhance A-R result

3 years agoTestsuite: add EAI local-part testcase
Jeremy Harris [Sat, 1 Aug 2020 16:22:48 +0000 (17:22 +0100)]
Testsuite: add EAI local-part testcase

3 years agoGnuTLS: in server, detect TCP RST from client after QUIT under SSL,
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)

3 years ago OpenSSL: in server, detect TCP RST from client after QUIT under SSL,
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)

3 years agodebug_print_socket(): output formatting
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)

3 years agoFix debug_print_socket()
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)

3 years agoDocs: typos and clarification of DMARC sender
Heiko Schlittermann (HS12-RIPE) [Thu, 11 Jun 2020 09:42:10 +0000 (11:42 +0200)]
Docs: typos and clarification of DMARC sender

3 years agoTaint: fix ACL "spam" condition, to permit tainted name arguments
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

3 years agoDocs: add note on non-functionality of "exists" for de-tainting
Jeremy Harris [Sun, 12 Jul 2020 12:36:10 +0000 (13:36 +0100)]
Docs: add note on non-functionality of "exists" for de-tainting

3 years agoRelease unused memory in parse_quote_2047()
Jeremy Harris [Fri, 10 Jul 2020 21:49:56 +0000 (22:49 +0100)]
Release unused memory in parse_quote_2047()

3 years agoCommand-line option for no notifier socket. Bug 2616
Jeremy Harris [Fri, 10 Jul 2020 12:55:25 +0000 (13:55 +0100)]
Command-line option for no notifier socket.  Bug 2616

3 years agoFix taint trap in parse_fix_phrase(). Bug 2617
Jeremy Harris [Thu, 9 Jul 2020 14:30:55 +0000 (15:30 +0100)]
Fix taint trap in parse_fix_phrase().  Bug 2617

3 years agotidying
Jeremy Harris [Thu, 9 Jul 2020 11:27:12 +0000 (12:27 +0100)]
tidying

3 years agoFix DKIM signing to always ;-terminate. Bug 2295
Guillaume Outters [Mon, 6 Jul 2020 21:31:51 +0000 (22:31 +0100)]
Fix DKIM signing to always ;-terminate.  Bug 2295

3 years agoSupport ret-full on lsearch. Bug 2611
Jeremy Harris [Sun, 5 Jul 2020 15:32:27 +0000 (16:32 +0100)]
Support ret-full on lsearch.  Bug 2611

3 years agoMove errno-protection into string_open_failed()
Jeremy Harris [Sun, 5 Jul 2020 12:15:00 +0000 (13:15 +0100)]
Move errno-protection into string_open_failed()

3 years agotypoes
Jeremy Harris [Fri, 3 Jul 2020 19:34:37 +0000 (20:34 +0100)]
typoes

3 years agoFix message-reception clock usage. Bug 2615
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)
3 years agoTaint: fix ACL "spam" condition, to permit tainted name arguments.
Jeremy Harris [Mon, 29 Jun 2020 16:14:07 +0000 (17:14 +0100)]
Taint: fix ACL "spam" condition, to permit tainted name arguments.

3 years agoSqlite: fix segfault on bad/missing sqlite_dbfile. Bug 2606
Jeremy Harris [Sun, 28 Jun 2020 14:24:21 +0000 (15:24 +0100)]
Sqlite: fix segfault on bad/missing sqlite_dbfile.  Bug 2606

3 years agoTestsuite: output changes resulting
Jeremy Harris [Sun, 28 Jun 2020 13:59:44 +0000 (14:59 +0100)]
Testsuite: output changes resulting

3 years ago Remove attempts to quieten compiler static-checking (more)
Jeremy Harris [Sun, 28 Jun 2020 13:16:20 +0000 (14:16 +0100)]
Remove attempts to quieten compiler static-checking (more)

3 years agoTestsuite: munging
Jeremy Harris [Sat, 27 Jun 2020 13:11:10 +0000 (14:11 +0100)]
Testsuite: munging

3 years agoRemove attempts to quieten compiler static-checking
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

3 years agoBuild: separate guard for futimens()
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()

3 years agotypo
Jeremy Harris [Sat, 27 Jun 2020 11:24:24 +0000 (12:24 +0100)]
typo

3 years agoFix build for non-Linux platforms having openat.
Jeremy Harris [Sat, 27 Jun 2020 10:27:59 +0000 (11:27 +0100)]
Fix build for non-Linux platforms having openat.

Broken-by: 1077d3c3f9
3 years agoDocs: list further ways $domain_data &c may be filled in
Jeremy Harris [Thu, 25 Jun 2020 20:30:43 +0000 (21:30 +0100)]
Docs: list further ways $domain_data &c may be filled in

3 years agoLookups: Fix "subdir" filter on a dsearch.
Jeremy Harris [Thu, 25 Jun 2020 10:16:54 +0000 (11:16 +0100)]
Lookups: Fix "subdir" filter on a dsearch.

3 years agoBuild: guards on openat()
Jeremy Harris [Thu, 25 Jun 2020 09:41:49 +0000 (10:41 +0100)]
Build: guards on openat()

3 years agoHandle quoted local_part input to ${srs_encode }. Bug 2607
Jeremy Harris [Tue, 23 Jun 2020 23:04:13 +0000 (00:04 +0100)]
Handle quoted local_part input to ${srs_encode }.  Bug 2607

3 years agoCutthrough: handle request when a callout-hold is active. Bug 2604
Jeremy Harris [Mon, 22 Jun 2020 16:27:18 +0000 (17:27 +0100)]
Cutthrough: handle request when a callout-hold is active.  Bug 2604

3 years agoTestsuite: the munge for SRS must accept a variable-length timestamp element
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

3 years agoFix string_copy() macro to not multiple-eval args. Bug 2603
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
3 years agoDocs: tidy more uses of tainted variables
Jeremy Harris [Thu, 18 Jun 2020 19:27:52 +0000 (20:27 +0100)]
Docs: tidy more uses of tainted variables

3 years agoDocs: more indexing for SNI
Jeremy Harris [Wed, 17 Jun 2020 20:37:55 +0000 (21:37 +0100)]
Docs: more indexing for SNI

3 years agoTaint: treat $message_body & $message_body_end as tainted
Jeremy Harris [Wed, 17 Jun 2020 15:14:16 +0000 (16:14 +0100)]
Taint: treat $message_body & $message_body_end as tainted

3 years agoDocs: minor tweaks
Jeremy Harris [Thu, 11 Jun 2020 19:40:08 +0000 (20:40 +0100)]
Docs: minor tweaks

3 years agoRelax restrictions on which ACLs verify conditions may be used
Jeremy Harris [Sun, 14 Jun 2020 20:29:08 +0000 (21:29 +0100)]
Relax restrictions on which ACLs verify conditions may be used

3 years agoTaint: fix verify. Bug 2598
Jeremy Harris [Sun, 14 Jun 2020 19:43:06 +0000 (20:43 +0100)]
Taint: fix verify.  Bug 2598

3 years agosmtp_accept_map_per_host: call search_tidyup in fail path. Bug 2597
Jeremy Harris [Fri, 12 Jun 2020 19:17:56 +0000 (20:17 +0100)]
smtp_accept_map_per_host: call search_tidyup in fail path.  Bug 2597

3 years agoTaint: fix radius expansion condition
Jeremy Harris [Thu, 11 Jun 2020 23:46:34 +0000 (00:46 +0100)]
Taint: fix radius expansion condition

3 years agoGnuTLS: fix build on older library versions
Jeremy Harris [Thu, 11 Jun 2020 20:52:28 +0000 (21:52 +0100)]
GnuTLS: fix build on older library versions

3 years agoGnuTLS: more info on accept zero-error
Jeremy Harris [Mon, 8 Jun 2020 10:09:44 +0000 (11:09 +0100)]
GnuTLS: more info on accept zero-error

3 years agoTLS: use RFC 6125 rules for certifucate name checks when CNAMES are present. Bug...
Jeremy Harris [Thu, 11 Jun 2020 19:21:38 +0000 (20:21 +0100)]
TLS: use RFC 6125 rules for certifucate name checks when CNAMES are present. Bug 2594

3 years agoDocs: typo
Heiko Schlittermann (HS12-RIPE) [Thu, 11 Jun 2020 09:37:45 +0000 (11:37 +0200)]
Docs: typo

3 years agoTestsuite: missing file update for 59eee1bc90
Jeremy Harris [Mon, 8 Jun 2020 13:24:53 +0000 (14:24 +0100)]
Testsuite: missing file update for 59eee1bc90

3 years agoFilters: fix "vacation" in Exim filter. Bug 2593
Jeremy Harris [Mon, 8 Jun 2020 12:00:55 +0000 (13:00 +0100)]
Filters: fix "vacation" in Exim filter.  Bug 2593

Broken-by: cfb9cf20cb (4.90)
3 years agowip
Jeremy Harris [Mon, 8 Jun 2020 10:50:37 +0000 (11:50 +0100)]
wip

3 years agoOpenSSL: more info on accept zero-error
Jeremy Harris [Sun, 7 Jun 2020 15:38:28 +0000 (16:38 +0100)]
OpenSSL: more info on accept zero-error

3 years agoTestsuite: tidy debug
Jeremy Harris [Sun, 7 Jun 2020 14:27:12 +0000 (15:27 +0100)]
Testsuite: tidy debug

3 years agoDocs: typoes
Jeremy Harris [Sun, 7 Jun 2020 14:26:17 +0000 (15:26 +0100)]
Docs: typoes

3 years agoCopyright year. Bug 2592
Jeremy Harris [Sun, 7 Jun 2020 13:06:27 +0000 (14:06 +0100)]
Copyright year.  Bug 2592

3 years agoSqlite: new-style option to specify db file
Jeremy Harris [Sat, 6 Jun 2020 17:04:36 +0000 (18:04 +0100)]
Sqlite: new-style option to specify db file

3 years agoRefactor lookup argument shuffling
Jeremy Harris [Sat, 6 Jun 2020 13:45:47 +0000 (14:45 +0100)]
Refactor lookup argument shuffling

3 years agoDocs: more info on taint
Jeremy Harris [Fri, 5 Jun 2020 09:37:57 +0000 (10:37 +0100)]
Docs: more info on taint

3 years agoFix -bi. Bug 2590
Jeremy Harris [Thu, 4 Jun 2020 12:54:55 +0000 (13:54 +0100)]
Fix -bi.  Bug 2590

Actual fix from pierre.labastie@neuf.fr ; additional coding and testcase bu jgh
Broken-by: bdcc6f2bd5
3 years agotidying
Jeremy Harris [Wed, 3 Jun 2020 11:59:18 +0000 (12:59 +0100)]
tidying

3 years agoTaint: fix multiple ACL actions to properly manage tainted argument data
Jeremy Harris [Wed, 3 Jun 2020 10:40:17 +0000 (11:40 +0100)]
Taint: fix multiple ACL actions to properly manage tainted argument data

3 years agoDocs: typoes
Jeremy Harris [Tue, 2 Jun 2020 15:35:08 +0000 (16:35 +0100)]
Docs: typoes

3 years agoDocs: fix layout
Jeremy Harris [Tue, 2 Jun 2020 14:39:27 +0000 (15:39 +0100)]
Docs: fix layout

3 years agoDocs: fix mistaken variable name
Patrick Boutilier [Tue, 2 Jun 2020 14:16:10 +0000 (15:16 +0100)]
Docs: fix mistaken variable name

3 years agoTaint: fix listcount expansion operator. Bug 2586
Jeremy Harris [Tue, 2 Jun 2020 14:03:36 +0000 (15:03 +0100)]
Taint: fix listcount expansion operator.  Bug 2586

3 years agotidying
Jeremy Harris [Tue, 2 Jun 2020 13:59:16 +0000 (14:59 +0100)]
tidying

3 years agoTaint: fix pam expansion condition. Bug 2587
Jeremy Harris [Tue, 2 Jun 2020 13:50:31 +0000 (14:50 +0100)]
Taint: fix pam expansion condition.  Bug 2587

3 years agoDocs: ${listitem }
Jeremy Harris [Tue, 2 Jun 2020 12:35:06 +0000 (13:35 +0100)]
Docs: ${listitem }

3 years agoMerge branch '4.next'
Jeremy Harris [Mon, 1 Jun 2020 16:07:44 +0000 (17:07 +0100)]
Merge branch '4.next'

3 years agoDocs: tidy for next release
Jeremy Harris [Mon, 1 Jun 2020 15:48:32 +0000 (16:48 +0100)]
Docs: tidy for next release

3 years agoTestsuite: munge for Postgres version
Jeremy Harris [Sat, 30 May 2020 20:35:38 +0000 (21:35 +0100)]
Testsuite: munge for Postgres version

3 years agoTestsuite: MySQL: use password on account used for test access
Jeremy Harris [Sat, 30 May 2020 20:05:25 +0000 (21:05 +0100)]
Testsuite: MySQL: use password on account used for test access

Forced on us by security tightning in Mariadb 10.4

3 years agoFix format of maildir filenames. Bug 1329
Andreas Metzler [Fri, 29 May 2020 21:50:16 +0000 (22:50 +0100)]
Fix format of maildir filenames.  Bug 1329

3 years agoMake def:<var> compatible between "static" and "dynamic" vars.
Heiko Schlittermann (HS12-RIPE) [Tue, 26 May 2020 10:28:43 +0000 (12:28 +0200)]
Make def:<var> compatible between "static" and "dynamic" vars.

Some variables are simple pointers to internal memory (e.g.
vtype_stringptr), other variables are dynamically filled with content
(e.g. vtype_string_func).

The static variables contain "" if they're not defined yet.
At least on dynamic variable (recipients, backed by fn_recipients())
returned NULL instead of "", which lead to unexpected results on
def:recipients.

To keep the functions usable in places where it makes sense to return
NULL and "" as distinct values, I didn't touch the functions, but the
evaluation logic in find_variable().

3 years agoQuota checking during reception. Bug 163
Jeremy Harris [Mon, 25 May 2020 21:57:57 +0000 (22:57 +0100)]
Quota checking during reception.  Bug 163

3 years agoDebug: indentation
Jeremy Harris [Mon, 25 May 2020 23:07:34 +0000 (00:07 +0100)]
Debug: indentation

3 years agotidying
Jeremy Harris [Mon, 25 May 2020 22:08:53 +0000 (23:08 +0100)]
tidying

3 years agoTestsuite: avoid fail on non-TLS bulid
Jeremy Harris [Mon, 25 May 2020 11:41:20 +0000 (12:41 +0100)]
Testsuite: avoid fail on non-TLS bulid

3 years agoFix listquote expansion item to handle empty-string input
Jeremy Harris [Mon, 25 May 2020 10:38:25 +0000 (11:38 +0100)]
Fix listquote expansion item to handle empty-string input

3 years agoEDITME: Shorten the explanation of <osname> and <build>
Heiko Schlittermann (HS12-RIPE) [Sun, 24 May 2020 20:53:01 +0000 (22:53 +0200)]
EDITME: Shorten the explanation of <osname> and <build>

3 years agoDocs: SPF options
Jeremy Harris [Sun, 24 May 2020 18:17:59 +0000 (19:17 +0100)]
Docs: SPF options

3 years agoDoc: Clarify variables for spf_smtp_comment_template
Heiko Schlittermann (HS12-RIPE) [Sat, 23 May 2020 13:50:23 +0000 (15:50 +0200)]
Doc: Clarify variables for spf_smtp_comment_template

3 years agoSPF: Add main config option "spf_smtp_comment_template
Heiko Schlittermann (HS12-RIPE) [Fri, 22 May 2020 15:32:33 +0000 (17:32 +0200)]
SPF: Add main config option "spf_smtp_comment_template

3 years agoSPF: Remove the parameters of the broken explanation link
Heiko Schlittermann (HS12-RIPE) [Mon, 18 May 2020 20:40:24 +0000 (22:40 +0200)]
SPF: Remove the parameters of the broken explanation link

The complete www.open-spf.org is a static copy of the formerly working
openspf.org page. The explanation form doesn't work anymore.

3 years agoOpenSSL: clear error stack before avery I/O operation
Jeremy Harris [Wed, 20 May 2020 21:14:59 +0000 (22:14 +0100)]
OpenSSL: clear error stack before avery I/O operation

3 years agobetter guards
Jeremy Harris [Tue, 19 May 2020 00:28:29 +0000 (01:28 +0100)]
better guards

3 years agoDocs: remove reduundant transport configu lines
Jeremy Harris [Tue, 19 May 2020 00:14:55 +0000 (01:14 +0100)]
Docs: remove reduundant transport configu lines

3 years agoLookups: cache=no_rd option. Bug 1751
Jeremy Harris [Sat, 16 May 2020 18:30:37 +0000 (19:30 +0100)]
Lookups: cache=no_rd option.  Bug 1751

3 years agoDocs: options on lookups
Jeremy Harris [Sat, 16 May 2020 18:38:59 +0000 (19:38 +0100)]
Docs: options on lookups

3 years agoLog additional command-history on too-many-syntax-errors
Jeremy Harris [Sat, 16 May 2020 15:36:08 +0000 (16:36 +0100)]
Log additional command-history on too-many-syntax-errors

3 years agoDocs: DMARC options
Jeremy Harris [Sat, 16 May 2020 12:27:43 +0000 (13:27 +0100)]
Docs: DMARC options

3 years agoDocs: chapter title
Jeremy Harris [Sat, 16 May 2020 12:13:39 +0000 (13:13 +0100)]
Docs: chapter title

Broken-by: 7adc9ca07a
3 years agoDocs: another mention of $local_part_verified
Andreas Metzler [Sat, 16 May 2020 12:02:17 +0000 (13:02 +0100)]
Docs: another mention of $local_part_verified

Broken-by: d8024efa36
3 years agoAdd debug for lookup ret=key
Jeremy Harris [Fri, 15 May 2020 13:15:10 +0000 (14:15 +0100)]
Add debug for lookup ret=key