home *** CD-ROM | disk | FTP | other *** search
- Newsgroups: comp.mail.sendmail
- Path: sparky!uunet!mcsun!sunic!sics.se!eua.ericsson.se!erix.ericsson.se!per
- From: per@erix.ericsson.se (Per Hedeland)
- Subject: Re: OR (remote mode)?
- Message-ID: <1992Jul28.205339.25825@eua.ericsson.se>
- Sender: news@eua.ericsson.se
- Nntp-Posting-Host: super.eua.ericsson.se
- Organization: Ellemtel Telecom Systems Labs, Stockholm, Sweden
- References: <1992Jul24.115200.26786@mp.cs.niu.edu> <1992Jul28.155421.20972@newsgate.sps.mot.com>
- Date: Tue, 28 Jul 1992 20:53:39 GMT
- Lines: 86
-
- In article <1992Jul28.155421.20972@newsgate.sps.mot.com>
- embry@iam.unibe.ch (Mike Embry) writes:
- >> Many people consider 'OR' a bad idea, and comment out that line.
- >
- >Could you elucidate or otherwise illuminate the reasons why?
-
- Guess it's time for this list again... Btw, I personally think the
- *idea* is bad mainly because it violates the layering principles of
- sendmail - a normal sendmail doesn't know or care where the local mailer
- puts the mail - but some mechanism to find out if (e.g.)
- /var/spool/mail is NFS-mounted and if so from where might be a useful
- thing... Like, say, if 'OR/var/spool/mail' had the effect of putting the
- name of the exporting host, if any, into $R, to be used in normal .cf
- rules. However, the *implementation* of OR is utter disaster! Anyway,
- here goes...
-
- 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.
-
- 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.
-
- 11. If a letter without a terminating newline is sent (except when using
- sendmail -t), it will not be transferred to the server, instead the
- connection will time out, and the net result will be as for 1 above
- (this is presumably the major case where those symptoms are observed).
-
- 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.
-
- --Per Hedeland
- per@erix.ericsson.se or
- per%erix.ericsson.se@sunic.sunet.se or
- ...uunet!erix.ericsson.se!per
-