home *** CD-ROM | disk | FTP | other *** search
- Path: sparky!uunet!mcsun!sun4nl!nikhefh!e07
- From: e07@nikhefh.nikhef.nl (Eric Wassenaar)
- Newsgroups: comp.mail.sendmail
- Subject: Re: Sendmail dumps core during transaction
- Message-ID: <2119@nikhefh.nikhef.nl>
- Date: 16 Dec 92 09:55:53 GMT
- References: <Bz9uyD.585@bunyip.cc.uq.oz.au> <1992Dec15.173135.21061@hubcap.clemson.edu>
- Organization: Nikhef-H, Amsterdam (the Netherlands).
- Lines: 37
-
- In article <1992Dec15.173135.21061@hubcap.clemson.edu>, hubcap@hubcap.clemson.edu (System Janitor) writes:
-
- > sammut@durian.citr.uq.oz.au (David Sammut) writes:
- > >I am running Sendmail 5.65 with IDA on a VaxStation II (fairly slow
- > >a mail message. It cores after the mail transaction has been processed
- > >but before the mail message has been taken out of the queue. This causes
- > >multiple transmissions of the same message until I delete the message from
- > >the queue manually. This problem only seems to occur when the number of
- > >recipients is 45 or more.
- >
- > I had the same problem here with vanilla sendmail 5.64. I posted the
- > problem here and no one (not even neil!) posted a reply. I fixed it
- > by upgrading to vanilla 5.65. Are you sure you have IDA 5.65? Is whoever
- > IDA'ed the 5.65 you're using sure they used 5.65 sources :-) ?
-
- There used to be (and still *is* in the SUN sendmail) a bug in the
- module deliver(), at the point where recipient addresses are
- concatenated in 'tobuf'. The incorrect test for buffer overflow was:
-
- if (sizeof tobuf - (strlen(to->q_paddr) + strlen(tobuf) + 2) < 0)
- break;
-
- which casts to 'unsigned', and the test will never be true, thereby
- overflowing tobuf if there are many recipients.
- The test should read:
-
- if ((strlen(to->q_paddr) + strlen(tobuf) + 2) > sizeof tobuf)
- break;
-
- It was fixed in 5.65. Also in the IDA versions.
-
- Eric Wassenaar
- --
- Organization: NIKHEF-H, National Institute for Nuclear and High-Energy Physics
- Address: Kruislaan 409, P.O. Box 41882, 1009 DB Amsterdam, the Netherlands
- Phone: +31 20 592 5012, Home: +31 20 6909449, Telefax: +31 20 592 5155
- Internet: e07@nikhef.nl
-