Mailing List Archive

[Bug 2747] New: segfault in smtp-receiving process after upgrading to 4.94.2
https://bugs.exim.org/show_bug.cgi?id=2747

Bug ID: 2747
Summary: segfault in smtp-receiving process after upgrading to
4.94.2
Product: Exim
Version: 4.93
Hardware: x86-64
OS: Linux
Status: NEW
Severity: bug
Priority: medium
Component: Mail Receipt
Assignee: unallocated@exim.org
Reporter: nrittner@layer23.de
CC: exim-dev@exim.org

Created attachment 1385
--> https://bugs.exim.org/attachment.cgi?id=1385&action=edit
debug log created with "exim -d+all -bd -C <configuration_file>"

after upgrading to version 4.94.2 the child-processes that handle
incoming smtp die with segfault when using the following configuration.
the configuration file below does not do anything useful with
email, but is the very simplified and stripped-down leftover
of my used configuration after a stepwise isolation of some elements
and keywords that always trigger the segfault.

this "mixture" of host-lookups, the usage of regular expressions
in hostlists and some nested acls seem to go crazy somehow.

some notes:
- these minor changes prevent segfaulting:
- commenting out one of
"message_size_limit ...",
"host_lookup ...",
"ratelimit ...",
"acl = acl_smtp_rcpt_nested",
"hosts = +hosts_test : *"

- using NO regex and NO wildcard in hostlist

dmesg reports:
[16164.258716] traps: exim4[2791] general protection fault ip:7f3c35db5846
sp:7ffea52966f8 error:0 in libc-2.31.so[7f3c35d3d000+14b000]

tested with version 4.94.2 of debian "bullseye" and gentoo's current 4.94.2
ebuild

the branch https://github.com/Exim/exim/tree/exim-4.92.3+fixes with recent
fixes works fine without problems.

#-------------------------------------------------------------------------
hostlist hosts_test = \N^some_regex$\N
message_size_limit = ${if
and{{def:sender_host_name}{exists{/some/file}}}{${lookup{${sender_host_name}}nwildlsearch{/some/file}{${value}}{32M}}}{32M}}
host_lookup = *
acl_smtp_connect = acl_smtp_connect
acl_smtp_rcpt = acl_smtp_rcpt
begin acl

acl_smtp_connect:

warn
ratelimit = 256 / 1m / per_conn / leaky / smtp/connect/abcdef
accept

acl_smtp_rcpt:

accept
acl = acl_smtp_rcpt_nested

acl_smtp_rcpt_nested:

accept
hosts = +hosts_test : *

begin routers

null:
driver = accept
transport = null

begin transports

null:
driver = appendfile
file = /dev/null
#-------------------------------------------------------------------------

--
You are receiving this mail because:
You are on the CC list for the bug.
--
## List details at https://lists.exim.org/mailman/listinfo/exim-dev Exim details at http://www.exim.org/ ##