[Exim] [bug report] segfault with ACL

Top Page
Delete this message
Reply to this message
Author: Edouard Boucher
Date:  
To: exim-users
Subject: [Exim] [bug report] segfault with ACL
hi,

I have changed the default configuration file just a bit this way :
**in the main section:
  acl_smtp_etrn = foo
  acl_smtp_vrfy = foo
  acl_smtp_rcpt = foo
**in the acl section :
  foo:
    accept sender_domains = 127.0.0.1


exim segfault when I try to VRFY or ETRN, but not for RCPT.

I am using exim 4.10 #21,

it looks like in acl.c, on line 866, Ustrrchr(sender_address, '@') is called
with sender_address == NULL


Edouard Boucher



PS :
Here is a full output of my gdb session :

m216:~# gdb exim
GNU gdb 2002-08-18-cvs
Copyright 2002 Free Software Foundation, Inc.
GDB is free software, covered by the GNU General Public License, and you are
welcome to change it and/or distribute copies of it under certain conditions.
Type "show copying" to see the conditions.
There is absolutely no warranty for GDB. Type "show warranty" for details.
This GDB was configured as "i386-linux"...
(gdb) run -C /usr/local/etc/exim/test.conf -bh 127.0.0.1
Starting program: /usr/local/sbin/exim -C /usr/local/etc/exim/test.conf -bh 127.0.0.1
[New Thread 1024 (LWP 27175)]

**** SMTP testing session as if from host 127.0.0.1
**** but without any ident (RFC 1413) callback.
**** This is not for real!

>>> host in host_lookup? yes (matched "*")
>>> looking up host name for 127.0.0.1
>>> IP address lookup yielded comploteur
>>> alias localhost
>>> comploteur 127.0.0.1
>>> checking addresses for comploteur
>>> 127.0.0.1
>>> host in host_reject_connection? no (option unset)
>>> host in sender_unqualified_hosts? no (option unset)
>>> host in recipient_unqualified_hosts? no (option unset)
>>> host in helo_verify_hosts? no (option unset)
>>> host in helo_try_verify_hosts? no (option unset)
>>> host in helo_accept_junk_hosts? no (option unset)

220 m216.net195-132-203.noos.fr ESMTP Exim 4.10 Sat, 26 Oct 2002 04:44:53 +0200
HELO localhost
250 m216.net195-132-203.noos.fr Hello comploteur [127.0.0.1]
VRFY foo
>>> using ACL "foo"
>>> processing "accept"
>>> check sender_domains = 127.0.0.1


Program received signal SIGSEGV, Segmentation fault.
[Switching to Thread 1024 (LWP 27175)]
0x4039e4e3 in strrchr () from /lib/libc.so.6
(gdb) bt
#0  0x4039e4e3 in strrchr () from /lib/libc.so.6
#1  0x080c74cc in _IO_stdin_used ()
#2  0x0804de4d in acl_check_internal (where=5, addr=0x0, s=0x80dceb8 "foo",
    level=0, user_msgptr=0xbffff35c, log_msgptr=0xbffff358) at acl.c:1131
#3  0x0804e264 in acl_check (where=5, data_string=0x80dfe65 "foo",
    s=0x80dceb8 "foo", user_msgptr=0xbffff35c, log_msgptr=0xbffff358)
    at acl.c:1267
#4  0x0808e2de in smtp_setup_msg () at smtp_in.c:2488
#5  0x080638b7 in main (argc=5, cargv=0xbffffbc4) at exim.c:3200