Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP Path: utzoo!mnetor!seismo!columbia!caip!pyrnj!mirror!gabriel!inmet!cball From: cball@inmet.UUCP Newsgroups: net.mail Subject: sendmail configurations Message-ID: <5600009@inmet> Date: Tue, 23-Sep-86 09:46:00 EDT Article-I.D.: inmet.5600009 Posted: Tue Sep 23 09:46:00 1986 Date-Received: Wed, 24-Sep-86 22:23:27 EDT Lines: 81 Nf-ID: #N:inmet:5600009:000:3791 Nf-From: inmet.UUCP!cball Sep 23 09:46:00 1986 I have a couple of comments/questions about sendmail configurations. I have solved them for our site with local modifications. However, the problems seem to be generic ones. The second one in particular must be handled by every gateway host, I'd like to find out how other sites handle this stuff. 1) Every configuration which I've seen has the following: > >##### RULESET ZERO PREAMBLE >##### >##### The beginning of ruleset zero is constant through all >##### configurations. >##### >############################################################ >############################################################ > >S0 > ># first make canonical >R$*<$*>$* $1$2$3 defocus >R$+ $:$>3$1 make canonical Am I missing something? My understanding is that sendmail invokes ruleset 3 automatically before invoking ruleset 0. The first line undoes everything that the automatic invocation accomplishes, and then reruns the address through ruleset 3! Since the distributed sendmail configurations do a significant amount of work in ruleset 3, this seems like a waste. In fact, I disabled these lines in our configuration about a year ago with no known ill effects. I have tested pretty thoroughly, and have always gotten the same results(only faster). Actually, sendmail seems to run significantly faster once berknet, old internet (RFC733), and some unneeded "boiler-plate" constructs are removed. I am posting this now to find out if this breaks something I don't have the wit to figure out. 2) The internet domain-style naming scheme inherently removes the notion of a hosts' network from its name. There are many positive aspects to this scheme. However, it means that sendmail on a gateway host or even a host with a simple, small lan in addition to uucp connections needs a mechanism to determine which network gets a given piece of mail. Up to now, our site has had atomic hostnames and has been able to use a sendmail class (pretty much) as follows: /* The class 'S' includes all primary host names from host table*/ CS/etc/hosts "%*s %s" /* rewriting rule */ R$*<@$*>$* $:$1<@$[$2$]>$3 # map aliases to primary names R$*<@$=S$*>$* $#tcp$@$2$:$1<@$2$3>$4 # deliver mail to primary hosts We have a couple of sun clusters and a milnet host(which can't act as a gateway) so our host tables are reasonably active and cannot reasonably be included directly in the configuration file. The above rules have allowed us to identify lan hosts correctly when the host table is accurate, no separately maintained list of hosts is necessary. The problem is that host names are no longer atomic since period('.') is both a sendmail operator and part of every domain-style hostname. How can I correctly identify tcp (or usenet) hosts in sendmail in order to select the correct network? I have solved the problem locally by modifying the sendmail routine maphostname() to append ".tcp" when the calls gethostbyname(3) or gethostbyaddr(3) indicate the host is reachable via TCP. The modified routine is invoked on
when the rhs(right hand side) construct $[$] is executed. This seems to be an appropriate solution, in fact, I'm tempted to extend it with a new "network" option: ON