home *** CD-ROM | disk | FTP | other *** search
-
-
-
- SMAIL(8)
-
-
-
- NAME
- smail, rmail - UUCP mailer with routing
-
- SYNOPSIS
- smail [ options ] address ...
- rmail [ options ] address ...
-
- DESCRIPTION
- The _s_m_a_i_l/_r_m_a_i_l program replaces /_b_i_n/_r_m_a_i_l(1) to become the
- UUCP mail transport mechanism. They are links to the same
- executable. _r_m_a_i_l receives mail from UUCP, _s_m_a_i_l introduces
- mail into UUCP.
-
- _s_m_a_i_l/_r_m_a_i_l can work with or without _s_e_n_d_m_a_i_l(8), or another
- intelligent mail system. For hosts with just /_b_i_n/_m_a_i_l(1),
- _s_m_a_i_l/_r_m_a_i_l subsumes some of the functions of _s_e_n_d_m_a_i_l, and
- hands only local mail to /_b_i_n/_m_a_i_l. For hosts with _s_e_n_d_m_a_i_l,
- _s_m_a_i_l/_r_m_a_i_l can act as UUCP front and back ends to _s_e_n_d_m_a_i_l,
- allowing _s_e_n_d_m_a_i_l to process all mail through the host. As
- distributed, 'bang' mail that is not bound for a local reci-
- pient will be passed directly to _u_u_x without calling _s_e_n_d_-
- _m_a_i_l.
-
- To varying degrees, _s_m_a_i_l/_r_m_a_i_l automatically routes the
- addresses it processes. _s_m_a_i_l/_r_m_a_i_l most often routes
- domain style addresses (i.e. user@domain), producing a UUCP
- path (i.e. host!address) or a local address (i.e. user), but
- it can also reroute explicit UUCP paths.
-
- OPTIONS
- -A Print the resolved addresses. Don't collect a message
- or invoke a mailer.
-
- -d Be verbose and don't invoke other mailers.
-
- -v Be verbose, but still invoke other mailers.
-
- -h _h_o_s_t_n_a_m_e
- Set hostname. The default is configuration dependent,
- but usually provided by a system call such as _g_e_t_h_o_s_t_-
- _n_a_m_e(2) or _u_n_a_m_e(2).
-
- -H _h_o_s_t_d_o_m_a_i_n
- set hostdomain. The default is configuration depen-
- dent.
-
- -F _a_d_d_r_e_s_s
- use _a_d_d_r_e_s_s on the From: line in locally generated
- mail.
-
- -p _p_a_t_h_f_i_l_e
- Set path database file name if not /usr/lib/uucp/paths.
-
-
-
- 1
-
-
-
-
-
-
- SMAIL(8)
-
-
-
- -a _a_l_i_a_s_f_i_l_e
- For sites without sendmail, set alias database file
- name if not in the place defined at compile time (see
- ALIASES in defs.h). This is usually /_u_s_r/_l_i_b/_a_l_i_a_s_e_s
-
- -n _n_a_m_e_l_i_s_t
- _s_m_a_i_l supports another type of aliasing intended for
- full name resolution using a sorted file, _n_a_m_e_l_i_s_t, of
- name/address pairs. This allows mail to
- George.P.Burdell@gatech.edu to be delivered appropri-
- ately. These aliases are by their nature very simple
- since they are not composed of long lists of recipients
- for each alias. They are also numerous, since mail to
- George.P.Burdell may be addressed to Burdell,
- G.Burdell, George.Burdell, P.Burdell, G.P.Burdell, or
- George.P.Burdell. This simpler form of aliasing uses
- the same fast searching algorithm that is used for the
- paths file, so it keeps resolution time manageable.
-
- -q _n_u_m_b_e_r
- Take _n_u_m_b_e_r as the queueing threshold. When routing
- mail ( -_r, -_R, or domain addressed mail ) to a given
- host, if the cost listed in the _p_a_t_h_s file is less than
- the queueing threshold, then the mail will be sent
- immediately. This overrides the default threshold (see
- QUEUECOST in defs.h) of DEDICATED+LOW.
-
- -m _n_u_m_b_e_r
- At most _n_u_m_b_e_r jobs will be handed to uux for immediate
- delivery by a single invocation of _s_m_a_i_l (see MAXNO-
- QUEUE in defs.h).
-
- -u _u_u_x_f_l_a_g_s
- Use _u_u_x_f_l_a_g_s as the flags passed to uux for remote
- mail. This overrides any of the default values and
- other queueing strategies.
-
- -c Consult the paths file for the cost of the path even
- when not routing the mail. This makes it possible to
- use the cost information when sending pure UUCP path
- mail without rerouting it.
-
- -r Route the first component of a UUCP path (host!address)
- in addition to routing domain addresses (user@domain).
-
- -R Reroute UUCP paths, trying successively larger right-
- hand substrings of a path until a component is recog-
- nized.
-
- -l Instead of routing a domain address, send it to the
- local mailer for processing. Normally, only local
- addresses go to the local mailer.
-
-
-
- 2
-
-
-
-
-
-
- SMAIL(8)
-
-
-
- -L Send all addresses to the local mailer for processing,
- including UUCP paths.
-
- Most of the flags are also compile time options, since _u_u_x
- does not normally invoke _r_m_a_i_l with the desired flags.
- _s_m_a_i_l resets any preset -l or -L flags. -l flag causes
- rmail to send all domain addresses through the local mailer,
- to process addresses for non UUCP domains. The -L flag
- causes rmail to send even explicit UUCP paths through the
- local mailer, presumably to make use of other transport
- mechanisms. In both cases, rmail defers any routing until
- smail gets hold it.
-
- ADDRESSES
- _s_m_a_i_l/_r_m_a_i_l understands "user@domain" to be a domain
- address, "host!address" to be a UUCP path, and anything else
- to be a local address.
-
- Because hostile _r_m_a_i_l'_s unpredictably interpret mixed
- UUCP/domain addresses, _s_m_a_i_l/_r_m_a_i_l understands "domain!user"
- to be a domain address, and generates "path!domain!user"
- when mailing to a cognate _s_m_a_i_l/_r_m_a_i_l host. To distinguish
- domain "domain!user" from UUCP "host!address", "domain" con-
- tains at least one (1) period. Unlike the old /_b_i_n/_r_m_a_i_l,
- _s_m_a_i_l/_r_m_a_i_l gives precedence to @ over ! when parsing mixed
- addresses, thus a!b@c is parsed as (a!b)@c, rather than
- a!(b@c).
-
- ROUTING
- Because _s_m_a_i_l/_r_m_a_i_l is the UUCP transport mechanism, it can
- only effect delivery on UUCP paths and local addresses;
- domain addresses require resolution into UUCP paths or local
- addresses. To resolve a domain address, _s_m_a_i_l/_r_m_a_i_l finds a
- route to the most specific part of the domain specification
- listed in the routing table. Two degrees of resolution can
- occur:
-
- Full resolution: _s_m_a_i_l/_r_m_a_i_l finds a route for the
- entire domain specification, and tacks the user specif-
- ication onto the end of the UUCP path. The address can
- also fully resolve to a local address (the UUCP path is
- null).
-
- Partial resolution: _s_m_a_i_l/_r_m_a_i_l finds a route for only
- righthand part of the domain specification, so it tacks
- the complete address (in the form domain!user) onto the
- end of the UUCP path. Since this syntax is not widely
- understood, UUCP gateways listed in the path database
- must install new UUCP software, either _s_m_a_i_l/_r_m_a_i_l or
- new _s_e_n_d_m_a_i_l configuration files (or both).
-
-
-
-
-
- 3
-
-
-
-
-
-
- SMAIL(8)
-
-
-
- It is an error if a partially resolved address routes to the
- local host (a null UUCP path), since according to the rout-
- ing table, the local host is responsible for resolving the
- address more fully.
-
- The -r flag causes _s_m_a_i_l/_r_m_a_i_l to attempt to route the first
- component of a UUCP path, probably so it can impress people
- with how many UUCP hosts it knows. If this fails, it passes
- the unrouted address to _u_u_x, in case the path database is
- not complete. The -R flag causes _s_m_a_i_l/_r_m_a_i_l to take a UUCP
- path and route the rightmost component of the path (save the
- user name) possible. This is mostly for hosts that have
- very up-to-date routing tables.
-
- If a route cannot be discerned from the available routing
- database, then one more attempt to route the mail is made by
- searching for an entry in the database for a route to a
- _s_m_a_r_t-_h_o_s_t. If this entry exists, then the mail will be for-
- warded along that route to be delivered. This allows a host
- to depend on another, presumably better informed, host for
- delivering its mail. This kind of arrangement should be
- worked out, _i_n _a_d_v_a_n_c_e, with the _s_m_a_r_t-_h_o_s_t's administrator.
-
- After _s_m_a_i_l/_r_m_a_i_l resolves an address, it reparses it to see
- if it is now a UUCP path or local address. If the new
- address turns out to be another domain address, smail com-
- plains because we don't like to resolve more than once.
- This error occurs when an address partially resolves the
- local host.
-
- By default, _s_m_a_i_l will not alter the explicit bang path
- routing of any mail message. If the stated path is unuse-
- able, (i.e., the next hop host is unknown) then smail will
- apply ALWAYS routing, and attempt to deliver the mail to the
- potentially new address. If this fails too, then REROUTE
- routing will be applied to the address, and another attempt
- to deliver is made. Lastly, an attempt to find a path to a
- better informed host _s_m_a_r_t-_h_o_s_t will be made and the mail
- passed to that host.
-
- FROMMING
- _s_m_a_i_l/_r_m_a_i_l collapses From_ and >From_ lines to generate a
- simple from argument, which it can pass to _s_e_n_d_m_a_i_l or use
- to create its own "From" line. The rule for fromming is:
- concatenate each "remote from" host (separating them by
- !'s), and tack on the address on the last From_ line; if
- that address is in user@domain format, rewrite it as
- domain!user; ignore host or domain if either is simply the
- local hostname. It also removes redundant information from
- the From_ line. For instance:
-
- ...!myhost!myhost.mydomain!...
-
-
-
- 4
-
-
-
-
-
-
- SMAIL(8)
-
-
-
- becomes
-
- ...!myhost!...
-
- Leading occurrences of the local host name are elided as
- well.
-
- _s_m_a_i_l/_r_m_a_i_l generates it own From_ line, unless it is feed-
- ing _s_e_n_d_m_a_i_l, which is happy with the -f_f_r_o_m argument. For
- UUCP bound mail, _s_m_a_i_l/_r_m_a_i_l generates a "remote from host-
- name", where hostname is the UUCP hostname (not the domain
- name), so that From_ can indicate a valid UUCP path, leaving
- the sender's domain address in From:.
-
- HEADERS
- Certain headers, To:, From:, Date, etc., are required by
- RFC822. If these headers are absent in locally generated
- mail, they will be inserted by smail. Also, a line of trace
- information, called a Received: line, will be inserted at
- the top of each message.
-
- UNDELIVERABLE MAIL"
- Although nobody likes to have a mail message fail to reach
- its intended destination, it somtimes happens that way.
- Mail that is found to be undeliverable (i.e., unknown user
- or unknown host) will be returned to the sender.
-
- FILES
- /usr/lib/uucp/paths ascii path database
- /usr/lib/aliases ascii alias database
- /usr/spool/uucp/mail.log log of mail
- /tmp/mail.log record of mail
-
- SUPPORT
- Enhancements, enhancement requests, trouble reports, etc.,
- should be sent to
-
- uucp-problem@Stargate.COM.
-
-
- SEE ALSO
- _u_u_x(1), _p_a_t_h_s(8), _a_l_i_a_s_e_s(8)
- _s_e_n_d_m_a_i_l(8)
- _b_i_n_m_a_i_l(1) on BSD systems only
- _m_a_i_l(1) on System V systems
-
- VERSION
- @(#)smail.8 2.5 (smail) 9/15/87
-
-
-
-
-
-
-
- 5
-
-
-