著者: Stefan Kaltenbrunner 日付: To: Jeremy Harris CC: exim-dev 題目: Re: [exim-dev] local_scan timeout with troublesome dns
On 03/27/2013 10:18 PM, Jeremy Harris wrote: > On 03/27/2013 07:53 PM, Todd Lyons wrote:
>> #12 0x0000000000487edb in smtp_notquit_exit ()
>> #13 0x0000000000474b87 in receive_bomb_out ()
>> #14 0x0000000000474bdf in ?? ()
>> #15 <signal handler called>
>> #16 0x00007f2fb03a4bd8 in *__GI___poll (fds=0x7fff2f62b540, nfds=1,
>> timeout=<value optimized out>) at ../sysdeps/unix/sysv/linux/poll.c:83
>> #17 0x00007f2fb1d7f8de in send_dg (statp=0x7f2fb0640300, buf=<value
>> optimized out>, buflen=<value optimized out>, buf2=0x0, buflen2=<value
>> optimized out>,
>> ans=0x7fff2f62c110 "?큂", anssiz=1024, ansp=0x7fff2f62c970, ansp2=0x0,
>> nansp2=0x0, resplen2=0x0) at res_send.c:1062
>> #18 __libc_res_nsend (statp=0x7f2fb0640300, buf=<value optimized out>,
>> buflen=<value optimized out>, buf2=0x0, buflen2=<value optimized out>,
>> ans=0x7fff2f62c110 "?큂",
>> anssiz=1024, ansp=0x7fff2f62c970, ansp2=0x0, nansp2=0x0, resplen2=0x0)
>> at res_send.c:553
>> #19 0x00007f2fb1d7da95 in *__GI___libc_res_nquery
>> (statp=0x7f2fb0640300, name=<value optimized out>, class=<value
>> optimized out>, type=<value optimized out>,
>
>> Thoughts? Am I missing a bigger picture?
>
> Traditionally (and I'm talking about the 1980's here) about the *only*
> thing one could portably do in a signal-handler was to set an int-sized
> flag and return. Things may have progressed a little since then but
> attempting a dns-lookup does seem a trifle unwise...
well I don't think the rules have changed in reality - imho doing
anything non-trivial from a signal handler (and a dns lookup is very far
from trivial) is doomed and simply won't work.