Re: [EXIM] v2.10: Crash bug in appendfile.c mailstore_format…

Top Page
Delete this message
Reply to this message
Author: Philip Hazel
Date:  
To: Bart Schaefer
CC: exim-users
Subject: Re: [EXIM] v2.10: Crash bug in appendfile.c mailstore_format delivery
On Wed, 20 Jan 1999, Bart Schaefer wrote:

> A brief search of the mailing list archives on findmail.com didn't turn up
> anything about this, so here's a bug report and potential fix for a crash
> I got when attempting to use mailstore_format.


Thanks for the report. I will study it and fix the code as necessary.

Mailstore format was implemented for one particular user who wanted it
for non-Linux hosts; I tested it on a Solaris system, but I doubt very
much whether it has ever been tested by anybody else.

> I found it rather difficult to debug this problem because there's no way
> (except by editing the code) to stop exim from forking before delivery,
> and there's no way (again other than editing to remove the setrlimit()
> call) to cause it to generate a core dump. It would be nice if both of
> these were controllable by debug settings.


The "fork before local delivery" is inherent in the design of Exim. It
forks so that it can then call setuid() to become the local user.
Stopping the forking would lose the privilege in the main process, which
would then be unable to write to the log, etc.

There are problems with getting dumps because of the setuid nature of
Exim.

Maybe I'm too old fashioned. I tend to debug Exim by inserting
debug_printf() calls. Occasionally I have compiled it with -g. I should
perhaps spend some time thinking about ways of improving things.

Philip

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



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