[Raw Msg Headers][Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Router SIGSEGV



On Thu, Jul 08, 2004 at 12:45:56PM -0300, Mariano Absatz wrote:
> El 6 Jul 2004 a las 8:10, Matti Aarnio escribió:
> > On Mon, Jul 05, 2004 at 11:57:50AM -0300, zmailer wrote:
> > > Hi,
....
> > > the router dies with a SIGSEV whitout removing
> > > the message, so it keeps processing it whit the same
> > > result....
> > 
> > Let me guess, you are running this in a Linux system with newish glibc ?
> > (it blows up to my face as well...)
>
> Mmmhhh... well the server in which this happened originally, yes, it's a 
> Fedora Core 1 with glibc 2.3.2...
> 
> However, all the testing and debugging was done in an older RedHat Linux 
> 7.2 with glibc 2.2.4...

Actually any  glibc-2.* has the same problem, I think.
(Deep details of how FILE* object is created in that.)

> > It stems from  libsh/execute.c:1072  PRESUMING, that "FILE f" is
> > stack allocated instance of FILE object..  which in glibc  does not
> > happen :-(  Why does it break only in this ONE instance, I am not so
> > sure..
> > 
> > Aargh...  Now I know ...  Millions of letters, and never used that
> > one buggy (and obsolete and now removed) code-path.
> > 
> > I fixed the beast to survive crossbar rewrite in this form.
>
> Mmmhh... I just updated from CVS... and I see quite a few changes these 
> days... and I'm using older versions in several production servers that 
> I'm a little scared to completely upgrade...
> 
> That is, I intentionally stopped updating since you started fiddling with 
> the smtpserver architecture, since I'm using zmscanner and specialized 
> 'router-like' processes.

The  zmscanner  should be pluggable just fine, at least I use unmodified
instance of  smtp-contentfilter  scripts.  They will have long lifetimes,
which MAY result in e.g. memory leaks accumulating, et.al., but that is
usual stuff.

But I don't know of your 'router-like' processes, what they are.

> I have a few servers 'freezed' at CVS 2003-11-29 and quite a lot at 2004-
> 03-11.
> 
> Was this fixed only by modifying libsh/execute.c? or was it 
> libsh/execute.c AND libsh/listutils.c? or maybe more files?

This is the actual armouring:
 http://www.zmailer.org/cgi-bin/cvsweb.cgi/zmailer/libsh/execute.c.diff?r1=1.12;r2=1.13
I don't think it affects really anything...

The listutils patch is just to please some compiler.

What I do strongly suggest is using lattest router scripts in any case.
There is a way (rather convoluted one, though), until very recently, that
an internal user can get the ZMailer to execute something that it shouldn't.

> I intend to obtain a patch to the relevant files from the CVS commit at 
> 2004/07/06 05:19:42 and try to apply to my older (but not years old) 
> versions...
> 
> Do you think that would do?

It should succeed.

> TIA
> --
> Mariano Absatz
> El Baby
-- 
/Matti Aarnio	<mea@nic.funet.fi>
-
To unsubscribe from this list: send the line "unsubscribe zmailer" in
the body of a message to majordomo@nic.funet.fi