https://bugs.exim.org/show_bug.cgi?id=1661
Bug ID: 1661
Summary: infinite loop in expand.c, tree structure loops back
on itself.
Product: Exim
Version: 4.85
Hardware: x86-64
OS: Linux
Status: NEW
Severity: bug
Priority: medium
Component: String expansion
Assignee: nigel@???
Reporter: jasen@???
CC: exim-dev@???
symptom: exim process hangs
during expansion it hit an infinite loop
(gdb) print *p
$3 = {left = 0x2249492d6f433130, right = 0x7fc03354f100, data = {ptr =
0x70726f6370746d73, val = 1886678387}, balance = 0 '\000', name = "e"}
(gdb) print p
$5 = (tree_node *) 0x7fc03354f100
note: p == p->right
I thinkk "msg:completed" is a home-grown delivery event patched into deliver.c,
but that shouldn't cause this, should it?
(gdb) where
#0 tree_search (p=0x7fc03354f100, name=0x7fffee4398e4 "m_xferred") at
tree.c:335
#1 0x00007fc03243a5d6 in find_variable (name=<optimized out>,
name@entry=0x7fffee4398e0 "acl_m_xferred", exists_only=exists_only@entry=1,
skipping=0,
newsize=newsize@entry=0x0) at expand.c:1687
#2 0x00007fc032445052 in eval_condition (s=0x7fc032e76d06 " }",
s@entry=0x7fc032e76cf5 "def:acl_m_xferred }",
resetok=resetok@entry=0x7fffee439b5c,
yield=yield@entry=0x7fffee439b98) at expand.c:2166
#3 0x00007fc03243c3eb in expand_string_internal (string=<optimized out>,
ket_ends=ket_ends@entry=0, left=left@entry=0x0, skipping=skipping@entry=0,
honour_dollar=honour_dollar@entry=1, resetok_p=resetok_p@entry=0x0) at
expand.c:4010
#4 0x00007fc03243b331 in expand_string (string=<optimized out>) at
expand.c:7017
#5 0x00007fc0324235e1 in acl_check_condition (basic_errno=0x7fffee43a8ac,
log_msgptr=0x7fffee43abd8, user_msgptr=0x7fffee43ad78, epp=<synthetic pointer>,
level=0, addr=0x0, where=19, cb=0x7fc032e76cd0, verb=0) at acl.c:3025
#6 acl_check_internal (log_msgptr=0x7fffee43abd8, user_msgptr=0x7fffee43ad78,
level=0, s=<optimized out>, addr=0x0, where=19) at acl.c:4077
#7 acl_check_internal (where=19, addr=0x0, s=<optimized out>, level=0,
user_msgptr=0x7fffee43ad78, log_msgptr=0x7fffee43abd8) at acl.c:3930
#8 0x00007fc03242511d in acl_eval (where=19, s=0x7fc03354f0c8
"foo_org_event_mux", user_msgptr=user_msgptr@entry=0x7fffee43ad78,
log_msgptr=log_msgptr@entry=0x7fffee43abd8) at acl.c:4308
#9 0x00007fc03243ae59 in eval_acl (sub=sub@entry=0x7fffee43aed0,
user_msgp=user_msgp@entry=0x7fffee43ad78, nsub=9) at expand.c:2046
#10 0x00007fc03243e2e4 in expand_string_internal (string=<optimized out>,
ket_ends=ket_ends@entry=0, left=left@entry=0x0, skipping=skipping@entry=0,
honour_dollar=honour_dollar@entry=1, resetok_p=resetok_p@entry=0x0) at
expand.c:3979
#11 0x00007fc03243b331 in expand_string (string=string@entry=0x7fc032e730b8
"${acl{foo_org_event_mux}}") at expand.c:7017
#12 0x00007fc03242d710 in event_raise (action=0x7fc032e730b8
"${acl{foo_org_event_mux}}", event=event@entry=0x7fc0324d700f "msg:complete",
ev_data=0x0,
ev_data@entry=0x7fc03271a110 "") at deliver.c:736
#13 0x00007fc032431a68 in deliver_message (id=0x7fffee47d8ed
"1ZDfSA-4gfFsc-Np", forced=forced@entry=0, give_up=846307600, give_up@entry=0)
at deliver.c:7465
#14 0x00007fc03241bb38 in main (argc=3, cargv=<optimized out>) at exim.c:4524
--
You are receiving this mail because:
You are on the CC list for the bug.