Re: [exim] exim child dies when calling out

Startseite
Nachricht löschen
Nachricht beantworten
Autor: Heiko Schlittermann
Datum:  
To: exim-users
Betreff: Re: [exim] exim child dies when calling out
Hi,

Franz-Werner Gergen <gergen@???> (Di 18 Feb 2014 17:32:45 CET):
> Hello,
>
> the call out is done by the first exim instance because it has to
> accept the incoming mail.
>
>    outside -> exim1
>                 \> child handling the incoming connection
>                      \acl> -> calling to mail server of relayed domain
>                      \transport> -> pipe to spamd/amavisd -> exim2

>
> It is a problem of exim 4.82. The child daemon dies using the
> minimal configuration of Heiko Schlittermann and "sending" an email
> to nobody@??? (this is not a problem calling out to
> mail.is.mpg.de). I think, the call out code was changed so that it
> uses the routers and transports of the configuration file. When I'm
> using the configuration file


I tracked it down a bit further. Compiled Exim 4.82 with -ggdb and
enabled core dumps

Just for the records: about "ulimit -c" I knew, but I learned, that
core dumps are still supressed because the binary is setuid,
fs.suid_dumpable had to be set to 1 (valid for Linux).

Here is the stack backtrace...
May be somebody who is more comfortable with this part of Exim may jump in :)

#0  0x00007f75f0e39b2f in ?? () from /lib/x86_64-linux-gnu/libc.so.6
#1  0x0000000000434d3b in expand_string (string=0x6d742f3e20746163 <Address 0x6d742f3e20746163 out of bounds>) at expand.c:6459
#2  0x0000000000444db8 in match_check_list (listptr=0x226c880, sep=0, anchorptr=0x6ea870, cache_ptr=0x7fff0a9d8858, func=0x483b34 <check_host>, arg=0x7fff0a9d8830, type=2, 
    name=0x2271248 "212.80.235.130", valueptr=0x0) at match.c:495
#3  0x000000000048468b in verify_check_this_host (listptr=0x226c880, cache_bits=0x0, host_name=0x2271198 "ssl.schlittermann.de", host_address=0x2271248 "212.80.235.130", valueptr=0x0)
    at verify.c:3006
#4  0x0000000000480061 in do_callout (addr=0x7fff0a9db430, host_list=0x22712b8, tf=0x7fff0a9db260, callout=30, callout_overall=120, callout_connect=30, options=2, se_mailfrom=0x0, 
    pm_mailfrom=0x0) at verify.c:543
#5  0x00000000004820b8 in verify_address (vaddr=0x7fff0a9db430, f=0x0, options=2, callout=30, callout_overall=-1, callout_connect=-1, se_mailfrom=0x0, pm_mailfrom=0x0, routed=0x0)
    at verify.c:1748
#6  0x00000000004066a5 in acl_verify (where=0, addr=0x7fff0a9db930, arg=0x2271158 "recipient/callout", user_msgptr=0x7fff0a9dbc40, log_msgptr=0x7fff0a9dbc50, basic_errno=0x7fff0a9db8a0)
    at acl.c:2142
#7  0x0000000000409546 in acl_check_condition (verb=0, cb=0x2271138, where=0, addr=0x7fff0a9db930, level=0, epp=0x7fff0a9db89c, user_msgptr=0x7fff0a9dbc40, log_msgptr=0x7fff0a9dbc50, 
    basic_errno=0x7fff0a9db8a0) at acl.c:3666
#8  0x000000000040a08a in acl_check_internal (where=0, addr=0x7fff0a9db930, s=0x226c480 "accept verify = recipient/callout", level=0, user_msgptr=0x7fff0a9dbc40, log_msgptr=0x7fff0a9dbc50)
    at acl.c:4049
#9  0x000000000040aa01 in acl_check (where=0, recipient=0x22710e0 "info@???", s=0x226c480 "accept verify = recipient/callout", user_msgptr=0x7fff0a9dbc40, 
    log_msgptr=0x7fff0a9dbc50) at acl.c:4316
#10 0x0000000000472578 in smtp_setup_msg () at smtp_in.c:3737
#11 0x00000000004284a7 in main (argc=5, cargv=0x7fff0aa1c558) at exim.c:4952


    Best regards from Dresden/Germany
    Viele Grüße aus Dresden
    Heiko Schlittermann
-- 
 SCHLITTERMANN.de ---------------------------- internet & unix support -
 Heiko Schlittermann, Dipl.-Ing. (TU) - {fon,fax}: +49.351.802998{1,3} -
 gnupg encrypted messages are welcome --------------- key ID: 7CBF764A -
 gnupg fingerprint: 9288 F17D BBF9 9625 5ABC  285C 26A9 687E 7CBF 764A -
(gnupg fingerprint: 3061 CFBF 2D88 F034 E8D2  7E92 EE4E AC98 48D0 359B)-