[comp.mail.uucp] local addresses with smail 2.5

roy@sts.sts.COM (11/10/89)

/* Written 10:02 am  Nov  6, 1989 by roy@sts.sts.COM in sts:comp.mail.uucp */
/* ---------- "local addresses with smail 2.5" ---------- */
I have a strange problem with smail on local addresses.  We have a Sun
.
.
.
/* End of text from sts:comp.mail.uucp */

Ok, no takers on that one.  Another possibility I've heard of is
Smail3.  I've been told before that it's not been released yet, but I
keep seeing sites that are using it.  I can tell because it says
'smail3.xx.x' in the mail header.  Would smail3 solve 'user@sts.COM'
vs. 'user@workstation.sts.COM' addressing anomaly?  If it does, how
would I get smail3?  As far as I can tell, smail should be smart
enough to know those are in the same domain ... (it would be a shame
to have to go hacking around in the smail code if this 'feature' has
already been fixed!)  Thanks!

Roy Bixler
ASIX/STS
(415) 770-3507 x364
..!ames!claris!sts!asix!roy

lyndon@cs.AthabascaU.CA (Lyndon Nerenberg) (11/13/89)

In article <83800002@sts> roy@sts.sts.COM writes:
>Would smail3 solve 'user@sts.COM'
>vs. 'user@workstation.sts.COM' addressing anomaly?

If you want to hide several machines behind one logical name, yes
smail3 will do this. (As will sendmail, albeit nowhere near as easily).
We currently hide ~20 machines behind cs.AthabascaU.CA simply by adding
one line to the global config file.

>If it does, how
>would I get smail3?

(grr grumble mutter) a beta release will show up in the new year (?)
[don't anyone DARE quote me on that :-(]

-- 
Lyndon Nerenberg  VE6BBM / Computing Services / Athabasca University
  {alberta,decwrl,lsuc}!atha!lyndon || lyndon@cs.AthabascaU.CA

                  The Connector is the Notwork.

jv@mh.nl (Johan Vromans) (11/14/89)

In article <1236@atha.AthabascaU.CA> lyndon@cs.AthabascaU.CA (Lyndon Nerenberg) writes:

> In article <83800002@sts> roy@sts.sts.COM writes:
> >Would smail3 solve 'user@sts.COM'
> >vs. 'user@workstation.sts.COM' addressing anomaly?
> 
> If you want to hide several machines behind one logical name, yes
> smail3 will do this. (As will sendmail, albeit nowhere near as easily).

I use a shell script to do remote delivery with smail2.5. If a mail is
outbound, a nifty regexp reduces "user@bla.my.domain" to
"user@my.domain". Smail itself runs in gateway mode.
(I also use a private program to do local delivery, including handling
mail to pipes and files, and sending a mseeage to the user's terminal,
but that's another story...) 

Johan
--
Johan Vromans				       jv@mh.nl via internet backbones
Multihouse Automatisering bv		       uucp: ..!{uunet,hp4nl}!mh.nl!jv
Doesburgweg 7, 2803 PL Gouda, The Netherlands  phone/fax: +31 1820 62944/62500
------------------------ "Arms are made for hugging" -------------------------

roy@sts.sts.COM (11/14/89)

/* Written  2:25 pm  Nov 12, 1989 by lyndon@cs.AthabascaU.CA in sts:comp.mail.uucp */
In article <83800002@sts> roy@sts.sts.COM writes:
>Would smail3 solve 'user@sts.COM'
>vs. 'user@workstation.sts.COM' addressing anomaly?

If you want to hide several machines behind one logical name, yes
smail3 will do this. (As will sendmail, albeit nowhere near as easily).
We currently hide ~20 machines behind cs.AthabascaU.CA simply by adding
one line to the global config file.
/* End of text from sts:comp.mail.uucp */

Actually, what I want is for smail to hand anything local over to
sendmail (which, in our case, will look in /etc/hosts to deliver the
mail to the correct place over Ethernet).  As I mentioned before, it
will recognize 'user@sts.COM' as being local, but it will not
recognize 'user@workstation.sts.COM' as being anything (local or
otherwise).  Anything addressed this way to smail will be 'returned to
sender, address unknown'.  Actually, shouldn't smail recognize
'anything.sts.COM' as being local and hand it over to sendmail?  Of
course, I'm assuming there aren't any lines of the form
'wish.sts.COM = actual' ...  Since smail 2.5 apparently needs the type
of lines above, is smail3 smart enough to know that
'user@something.sts.COM' is a local address?

Roy Bixler
Asix/STS
Fremont, Cal.
roy@sts.COM -or- ...!ames!claris!sts!asix!roy

lyndon@cs.AthabascaU.CA (Lyndon Nerenberg) (11/20/89)

>Actually, what I want is for smail to hand anything local over to
>sendmail (which, in our case, will look in /etc/hosts to deliver the
>mail to the correct place over Ethernet).

I think we're getting our wires crossed here. Smail2.5 replaces
/bin/rmail in most cases, and can run in conjunction with things
like sendmail. Its main purpose in life is to deal with UUCP network
routing. Smail3 *replaces* sendmail on BSD machines, and provides
sendmail functionality on System V machines (regardless of whether
or not you have BSD style networking).

> As I mentioned before, it
>will recognize 'user@sts.COM' as being local, but it will not
>recognize 'user@workstation.sts.COM' as being anything (local or
>otherwise).  Anything addressed this way to smail will be 'returned to
>sender, address unknown'.  Actually, shouldn't smail recognize
>'anything.sts.COM' as being local and hand it over to sendmail?

This depends on your definition of "local." We have machines in our
domain that are 350 miles from "here." They are local in the sense
that they are part of our domain and route through one of the gateways,
but they're not local in the sense that delivery is handled by a
long distance UUCP call.

>Of
>course, I'm assuming there aren't any lines of the form
>'wish.sts.COM = actual' ...  Since smail 2.5 apparently needs the type
>of lines above, is smail3 smart enough to know that
>'user@something.sts.COM' is a local address?

Smail3 seperates the "router" from the transport. You can have it
run an address through a series of "routers" and pick the "best"
resulting transport for the actual deivery. You can also specify
that that a given address always route over a vertain transport,
even though there might be a "better" transport returned another
router. Explaining the flexibility of smail3 would involve re-
writing the smail3 configuration documentation. Rather than do
that, I'll e-mail a copy to anyone who is interested in reading
it.

To give you an idea of how the smail3 routing decisions can be made,
I'm appending an annotated copy of the 'routers' file that runs
on aurora.AthabascaU.CA (aka atha.uucp). This is our primary network
gateway, and "knows" about every machine in (our view of) the known
universe :-)

# @(#)routers	1.3 7/8/88 00:45:03

# This file defines the configuration of the router subsystem as
# compiled into the smail binary.  By modifying the source files
# conf/EDITME, src/config.h or src/default.c the actual internal
# configuration can be changed.  Thus, this should be matched up
# against thes files before assuming this is completely correct.

# inet_paths - This forces explicit routing over the ethernet.
# It overrides inet_addrs (needed because augeas has a broken SMTP
# and polls auvax via uucp for mail).

inet_paths:	driver = pathalias,		# general-use paths router
		always,				# Override any other routes.
		transport = smtp;

		file = /usr/local/smail/inet_paths,
		proto = lsearch,		# use a linear search
		optional,	# Don't complain if file doesn't exist
		domain = athabascau.ca	# Implicit domain

# uucp_paths - Same idea as inet_paths, but used to override routes
# generated from the maps where we have a preferred internal connection.

uucp_paths:	driver = pathalias,
		always,				# Override any other routes.
		transport = uux;

		file = /usr/local/smail/uucp_paths,
		proto = lsearch,
		optional,
		domain = uucp


# inet_addrs - match domain literals containing literal IP addresses
#
# For example, [128.103.1.1] will match harvard.harvard.edu on the internet.
# The library routine gethostbyaddr(3N) will be called to see if a reverse
# mapping to the cononical hostname is available.
inet_addrs:
	driver = gethostbyaddr,		# router to match IP domain literals
	transport = smtp;		# deliver using SMTP over TCP/IP

	fail_if_error,			# fail malformed domain literal addrs
	check_for_local			# see if this is really the local host

# inet_hosts - match hostnames with gethostbyname(3N)
inet_hosts:
	driver = gethostbyname,		# match hosts with the library function
	transport = smtp;

	domain = athabascau.ca		# Implicit domain for simple hostnames

# paths - route using a paths file. This file is generated automatically
#	  from the comp.mail.maps postings.

paths:	driver = pathalias,		# general-use paths router
	method = paths;			# for matches, deliver over UUCP

	file = /private/usr/lib/paths,	# file containing path info
	proto = bsearch,		# binary search (data sorted)
	optional,			# ignore if the file does not exist
	domain = uucp			# Implicit domain



-- 
Lyndon Nerenberg  VE6BBM / Computing Services / Athabasca University
  {alberta,decwrl,lsuc}!atha!lyndon || lyndon@cs.AthabascaU.CA

                  The Connector is the Notwork.