Article View: gnu.emacs.vm.bug
Article #9501Re: Fix for SunOS 4.1.1 Sendmail
From: Per Hedeland
Date: Thu, 04 Jul 1991 22:24
Date: Thu, 04 Jul 1991 22:24
83 lines
5032 bytes
5032 bytes
In article <GAMIN.91Jul4131814@pellan.ireq-robot.hydro.qc.ca> gamin@ireq-robot.hydro.qc.ca (Martin Boyer) writes: >A while ago, I complained (in gnu.emacs.bugs) about mail errors when >sending messages to global NIS aliases from VM, on a Sun client >machine running SunOS 4.1.1. > >Well, I narrowed it down to a bug in SunOS 4.1.1 sendmail [description deleted] Note however that the bug only occurs if you use the OR option in sendmail.cf, to forward mail to a common server (OR is in the default sendmail.cf's delivered with SunOS). Below is the current version of my list-of-bugs-and-problems that OR causes - I believe this is #10 (yes, the last one, but I did add it before reading the above article:-) - unfortunately my reading of gnu.emacs.bugs is rather sporadic). --Per Hedeland per@erix.ericsson.se or per%erix.ericsson.se@sunic.sunet.se or ...uunet!erix.ericsson.se!per -------------- Here is a list of the bugs/problems with Sun's braindead OR sendmail.cf option that I've found to date: 1. If the connection between client and server sendmail is broken during the DATA phase (i.e when the actual letter is transferred), the letter is lost, without any information to user or Postmaster, the only trace is a "SYSERR: net hang reading from..." type of message in syslog. (In addition, it appears that the connection breaking like this happens rather more than would be expected due to "natural" causes.) 2. Anyone can fake sender addresses with sendmail -f. 3. Sendmail -t forgets to remove temp file (fixed post-4.0.3, I believe). 4. Sendmail -t called from emacs (actually whenever it can't do a getlogin()) with a local recipient address will put the *recipient* address in the From: line. 5. If a sendmail deamon is run (e.g. if you want to be kind enough to handle the occasional mail mis-addressed to user@client rather than having it sit in some queue for several days before being bounced), it will ignore the OR option, and happily do local delivery causing /bin/mail to write /var/spool/mail via NFS, or send directly to hosts in the YP map while setting the sender address to user@client. In addition, the local delivery is somehow half-baked, ignoring e.g. .forward files. 6. Since (in the normal non-deamon case) the sendmail.cf apart from OR is essentially ignored, it isn't possible to do *any* host-specific handling, e.g. splitting up mail to root depending on which client generated it. 7. If the mailhost isn't reachable, each letter sent will cause the corresponding sendmail process to sit in a loop doing repeated attempts - apart from the load, this means that if the client is shut down or rebooted before successful delivery, the mail is lost. 8. It doesn't work at all if /var/spool/mail is auto-mounted. 9. Sendmail -t will remove one empty line between header and body, with the effect that initial body lines that have leading whitespace, or that start with <word>:, are moved to the header. 10. Sendmail -t where the destination is a local alias will generate a "User unknown" error message (although the letter will be delivered correctly) - if PostmasterCopy is in effect, there will (of course) be an additional "User unknown" for Postmaster. I realize that 6 and 7 are consequences of intentional design decisions, and that 5 might be considered operator error; I still consider them deficiencies. I definitely recommend using one of the minimalist sendmail.cf's for this purpose that has been floating around the net instead of the OR option. The only inconveniences with this are that you have to actually spell out the name of the mailhost, and that you have to make sure the client's queue is checked - if you don't want to run a deamon (which I think is the best solution - the load from this should be neglible), you can have sendmail -q run from crontab e.g. hourly. On the other hand, you can use the same sendmail.cf on non-Sun mail clients. I have done just this, using essentially the version that Rich Salz sent out on comp.mail.sendmail a while back (the smallest one I've seen so far:-), and all of the problems went away.
Technical Details
Message-ID:
<1991Jul4.222454.13579@eua.ericsson.se>Path:
arc1-ca.pugleaf.net!gmdzi!unido!mcsun!news.funet.fi!sunic!ericom!eua.ericsson.se!erix.ericsson.se!perReferences:
<GAMIN.91Jul4131814@pellan.ireq-robot.hydro.qc.ca>Show Full Headers
Complete Article Headers
X-Google-Language: ENGLISH,ASCII-7-bit X-Google-Thread: f88e1,f736ae48553f2811 X-Google-Attributes: gidf88e1,public X-Google-Thread: f6829,f736ae48553f2811 X-Google-Attributes: gidf6829,public X-Google-ArrivalTime: 1991-07-05 00:15:15 PST Path: arc1-ca.pugleaf.net!gmdzi!unido!mcsun!news.funet.fi!sunic!ericom!eua.ericsson.se!erix.ericsson.se!per From: per@erix.ericsson.se (Per Hedeland) Newsgroups: gnu.emacs.vm.bug,alt.sys.sun Subject: Re: Fix for SunOS 4.1.1 Sendmail Message-ID: <1991Jul4.222454.13579@eua.ericsson.se> Date: 4 Jul 91 22:24:54 GMT References: <GAMIN.91Jul4131814@pellan.ireq-robot.hydro.qc.ca> Sender: news@eua.ericsson.se Distribution: gnu Organization: Ellemtel Telecom Systems Labs, Stockholm, Sweden Lines: 83 Nntp-Posting-Host: super.eua.ericsson.se