[EXIM] several messages

Top Page
Delete this message
Reply to this message
Author: Philip Hazel
Date:  
To: Matthew Frost, Matthew Frost, Lutz Pressler, Peter Bowyer, Nigel Metheringham, Malcolm Ray
CC: exim-users
Old-Topics: Re: [EXIM] BUG: exim 2.04 (2.03) quitting with inconsistant DNS
Subject: [EXIM] several messages
On Tue, 29 Sep 1998, Matthew Frost wrote:

> Program terminated with signal 11, Segmentation fault.
> #0 0x371c8 in host_scan_for_local_hosts ()


> Configured local interface address is 127.0.0.1
> Segmentation fault


On Thu, 1 Oct 1998, Lutz Pressler wrote:

> The daemon silently quits (yielding "connection closed" on the
> initiating side) if it gets an SMTP connect from a system with incorrectly
> configured DNS. In detail:


On Fri, 2 Oct 1998, Peter Bowyer wrote:

> I've not tracked it down properly yet - but I'm getting reports of
> 'Connection reset by peer' from sites trying to send us mail since we
> upgraded from 2.01 to 2.04 last week.


On Fri, 2 Oct 1998, Matthew Frost wrote:

> Your workaround described above explains why I don't see this
> behaviour on certain machines (they never do lookups as you say)...


And that's why I haven't seen the problem here...

On Fri, 2 Oct 1998, Malcolm Ray wrote:

> Right. The problem lies in host_find_byaddr(). host_find_byname()
> assumes that the 'address' field of its first arg will be NULL, but
> host_find_byaddr() forgets to clear it. Suggested but totally
> unofficial patch attached.



These all appear to be the same problem. My thanks to Malcolm for
chasing it down. The suggested patch (below, in case anyone missed it)
is fine. I will include it in a 2.05 release shortly, since it really
needs to be fixed asap.


-- 
Philip Hazel            University of Cambridge Computing Service,
ph10@???      Cambridge, England. Phone: +44 1223 334714.



*** exim-2.04/src/host.c.dist   Fri Oct  2 18:23:39 1998
--- exim-2.04/src/host.c        Fri Oct  2 18:24:05 1998
***************
*** 1090,1095 ****                                                    
--- 1090,1096 ----
  happened to own a reverse zone could set it to point to any names at all. */


  h.name = yield;
+ h.address = NULL;    
  h.next = NULL;


if (host_find_byname(&h, NULL, FALSE) == HOST_FIND_FAILED)



--
*** Exim information can be found at http://www.exim.org/ ***