MMDFTAILOR(F) UNIX System V
Name mmdftailor - provides run-time tailoring for the MMDF mail
router
Description
The MMDF mail router reads site-dependent information from
the ASCII file /usr/mmdf/mmdftailor
each time it starts up.
Keywords in the tailor file are not case-sensitive; however,
case is important for filenames and similar values. Use
quotation marks to delimit strings to prevent them from
being parsed into separate words accidentally.
The following alphabetical list describes most of the
information you can set in the mmdftailor file. For
information about additional channel-specific settings,
refer to the documentation about the particular channel.
ALIAS defines an alias table. The following parameters can
be used:
table specifies the name of the table to be
associated with this alias entry
trusted allows the entries in the table to cause
delivery to files and pipes
nobypass does not allow the ~address alias bypass mecha-
nism to work on this file
Here is an example:
ALIAS table=sysaliases, trusted, nobypass
AUTHLOG controls authorization information. See MCHANLOG
and MLOGDIR.
AUTHREQUEST is the address to which users should mail if
they have questions about why a message was not authorized for
delivery. It is also used as the sender of authorization
warning messages. It is not used if authorization is not
enabled on some channel. See the auth parameter under MCHN.
MADDID controls whether submit adds Message-ID: header lines
if they are missing from messages. It takes a number as an
argument. If the number is 0, no action is taken. If the
number is non-zero, then submit adds Message-ID: header lines
if they are missing from messages.
MADDRQ is the address files directory. If it is not a full
pathname, it is taken relative to MQUEDIR.
MCHANLOG controls MMDF logging, except for authorization
information and information produced by deliver and submit.
See also MMSGLOG, AUTHLOG, and MLOGDIR.
Logging files and levels can also be specified in the channel
descriptions. The logging file, if specified there, overrides
the MCHANLOG definition. The logging level for the channel is
set to the maximum of the MCHANLOG level and the channel
description's level. The MCHANLOG level can therefore be used
to increase logging on all channels at once.
Here is an example:
MCHANLOG /tmp/mmdfchan.log, level=FST, size=40,
stat=SOME
An argument without an equal sign is taken as the name of the
log. Logging levels are:
FAT logs fatal errors only
TMP logs temporary errors and fatal errors
GEN saves the generally interesting diagnostics
BST shows some basic statistics
FST gives full statistics
PTR shows a program trace listing of what is happening
BTR shows more detailed tracing
FTR saves every possible diagnostic
The BTR and FTR conditions are enabled only if you have
compiled the MMDF system with DEBUG #define'd. This amount of
tracing can quickly fill up log files. During normal
operation, the logging level should be set somewhere between
GEN and FST.
The size parameter is the number of 25-block units you will
allow your log file to grow to. When a log file reaches that
size, that logging either stops or cycles around overwriting
old data (see cycle).
The stat parameter sets up various status flags for logging:
close closes the log after each entry; this allows other
processes to write to it as well
wait if the log is busy, waits a while for it to free
cycle if the log is at the maximum length specified with
the size parameter, then cycles to the beginning
some sets the values close and wait (the most common
setting)
timed opens the log and, after the timeout period (e.g.,
5 minutes), closes the log and reopens it; this
option overrides all other options (used to reduce
the overhead of re-opening the log for every entry
while still retaining the ability to move the log
file out from under a running process and have the
process begin logging in the new log file soon
thereafter)
Tailoring of the log files is generally done at the end of the
tailor file to prevent logging the tailoring action itself,
thereby needlessly filling the log files when higher tracing
levels are enabled. If you have bugs in the tailoring, you
can move the log-file tailoring closer to the top of the
tailor file.
MCHN defines a channel. The following parameters can be
used:
name the name of the channel
show a display line, which is used for pretty
printing purposes to explain what the channel is
all about
que the queue directory into which messages for this
channel should be queued
tbl the associated table entry of hosts that are
accessible on this channel; if the specified
table has not been previously defined, it will
be defined with the same name, file, and show
parameters as for this channel (do not define
two channels that process the same queue, but
use different tables because it will cause queue
structure problems)
pgm the channel program to invoke for this channel
mod the mode in which this channel works; if several
values are selected, they are cumulative:
reg regular mode (the default); the
channel must be explicitly invoked by
running deliver
host same as reg, but causes deliver to
sort by host after sorting by
channel, which allows as many mail
messages as possible to get sent to a
particular host before the connection
is broken
bak channel can be invoked only by the
background deliver daemon
psv channel is passive; it is a pickup-
type channel (e.g., pobox)
imm channel can be invoked immediately;
no need to batch up mail
pick channel can pick up mail from the
remote host
send channel can send mail to the remote
host
ap the address-parser type to be used for
reformatting headers on messages going out on
this channel; if several values are selected,
they are cumulative:
same does not reformat headers
822 selects RFC822-style source routes
(e.g., @A:B@C)
733 selects %-style (JNT) source routes
(e.g., B%C@A)
big selects NRS hierarchy ordering (for
the UK)
nodots selects output of leftmost part of
domain names (e.g., A in A.B.C) for
sites that cannot handle domains
(usually used in conjunction with
the known= parameter to hide domain
names behind a smart relay)
jnt is equivalent to 733 combined with
big
lname a name overriding the default MLNAME value for
this channel (used when the channel should have
non-standard values for the local domain)
ldomain a name overriding the default MLDOMAIN value for
this channel
host the name of the host that is being contacted by
this channel, usually used in the phone and
pobox channels, or the name of the relay host
when all mail to hosts in this channel's table
gets relayed to one host (this is required on
the badusers and badhosts pseudo-channels; it
must be set to the local host for the list
channel)
poll the frequency of polling the remote machine (0
disables polling, -1 requests polling to be done
every time the channel is started up, any other
value is the number of 15-minute intervals to
wait between polls); if any mail is waiting to
be sent, this value is ignored because a
connection is always attempted
insrc a table of hosts controlling message flow
outsrc see insrc
indest see insrc
outdest see insrc
known a table of hosts that are known on this channel;
be sure that the table contains your own fully
specified host name
confstr a string used by some channels for specifying
the invocation of another program
auth specifies the authorization tests that are made
on this channel:
free default, no checking takes place
inlog log information for incoming
messages
outlog log information for outgoing
messages
inwarn warn sender of incoming message
if authorization is inadequate
(the message still goes through)
outwarn as inwarn, but for outgoing
messages
inblock reject incoming messages that
have inadequate authorization
outblock as inblock, but for outgoing
messages
hau host and user authorizations are
required
dho (direct host only) when applying
host controls, the message must
be associated with a user local
to that host (i.e., no source
routes)
ttl (time-to-live) specifies the number of minutes
for which retries to a host are blocked when
deliver detects a connection failure to that
host; this value can be overridden on the
deliver command line (default is 2 hours)
log the name of the channel log file to be used
instead of the default MCHANLOG
level the logging level for this channel (see also
MCHANLOG)
Here is a simple example:
MCHNname=local, que=local, tbl=local,
show="Local Delivery", pgm=local,
poll=0, mod=imm, ap=822, level=BST
If the first argument does not have an equal sign, the values
of the name, que, tbl, pgm, and show parameters take on this
value.
MCHNDIR is where the channel programs are to be found.
MCMDDIR is the default commands directory where the various
MMDF commands are located. Any command that does not have a
full pathname is taken relative to this directory.
MDBM tells MMDF where to find the database file containing
the associative store. DBM-style databases get their speed
and flexibility by dynamic hashing and can get quite large.
By default, the file is located in the MTBLDIR directory, but
it might need to be relocated due to its size.
MDFLCHAN sets the default channel to something other than
local.
MDLV is the name of the file used for tailoring the delivery
for each user.
MDLVRDIR is the directory in which to deliver mail. If this
is null, then the user's home directory is used. See also
MMBXNAME and MMBXPROT.
MDMN defines a domain. The following parameters can be
used:
name an abbreviated name for the domain
show a display line, which is used for pretty printing
purposes to explain what the domain is all about
dmn the full name (x.y.z...) of this domain
table the associated table entry of known sites in this
domain; if the specified table has not been
previously defined, it will be defined with the
same name, file, and show parameters as for this
domain
Here is an example:
MDMNname="Root", dmn="", show="Root Domain",
table=rootdomain
If the first argument does not have an equal sign, the values
of the name, dmn, and show parameters take on this value. If
no table parameter is specified, it defaults to the value of
the name parameter.
MFAILTIME is the time a message can remain in a queue before
a failed-mail message is sent to the sender and the message is
purged from the queue. See also MWARNTIME.
MLCKDIR is the directory where the locking of files takes
place, this is dependent on what style of locking you are
doing.
MLDOMAIN gives your full local domain (this, combined with
the MLNAME, and possibly the MLOCMACHINE, gives the full
network address).
MLISTSIZE specifies the maximum number of addresses in a
message before it is considered to have a ``big'' list. If
there are more than the maximum number of addresses, then MMDF
does not send a warning message for waiting mail and only
returns a ``citation'' for failed mail. A citation consists
of the entire header plus the first few lines of the message
body.
MLNAME is the name of your machine or site as you wish it to
be known throughout the network, which can be a generic host
name used to hide a number of local hosts. If it is a generic
host name, internal hosts are differentiated by MLOCMACHINE.
See also MLDOMAIN.
MLOCMACHINE is the local name of the machine. It is used by
a site that has several machines, but wants the machines
themselves to appear as one address. See also MLNAME and
MLDOMAIN.
MLOGDIR is the default directory in which the log files are
kept. See also MMSGLOG, AUTHLOG, and MCHANLOG.
MLOGIN is the user who owns the MMDF transport system.
MMAXHOPS specifies the maximum number of Received: or Via:
lines in a message before it is considered to be looping and
is rejected.
MMAXSORT controls sorting of messages based on the number of
messages in the queue. If the number of messages in the queue
is less then MMAXSORT, the messages are sorted by arrival time
and are dispatched in that order; otherwise, a message is
dispatched as it is found during the directory search.
MMBXNAME is the name of the mailbox. If this is null, then
the user's login name is used. See also MDLVRDIR and
MMBXPROT.
MMBXPREF is a string written before the message is written
into the mailbox. It is usually set to a sequence of CTRL-A
characters. See also MMBXSUFF.
MMBXPROT gives the protection mode in octal for the user's
mailbox. See also MDLVRDIR and MMBXNAME.
MMBXSUFF is a string written after the message is written
into the mailbox. It is usually set to a sequence of CTRL-A
characters. See also MMBXPREF.
MMSGLOG controls the logging information produced by deliver
and submit. See also MCHANLOG, AUTHLOG, and MLOGDIR.
MMSGQ is the directory for the files of message text. If it
is not a full pathname, it is taken relative to MQUEDIR.
MPHSDIR is the directory in which the timestamps for the
channels are made, showing what phase of activity they are in.
MQUEDIR is the parent directory for the various queues and
address directories.
MQUEPROT gives the protection mode in octal that the parent
of the MQUEDIR directory should have.
MSIG is the signature that MMDF uses when notifying senders
of mail delivery problems.
MSLEEP is the length of time in seconds that the background
delivery daemon sleeps between queue scans.
MSUPPORT is the address to which to send mail that MMDF
cannot cope with (i.e., that MMDF cannot deliver or return to
its sender).
MTBL defines an alias, domain, or channel table. The
following parameters can be used:
name a short name by which the table can be referred to
later in the file
file the file from which the contents of the table are
built
show a display line, which is used for pretty printing
purposes to explain what the table is all about
A typical example might be:
MTBLname=aliases, file=aliases,
show="User & list aliases"
If the first argument does not have an equal sign, the values
of the other parameters take on this value. The following
example sets the name, file, and show parameters to the string
``aliases'', then resets the show parameter to the string
``Alias table''.
MTBLaliases, show="Alias table"
MTBLDIR is the default directory for the table files.
MTEMPT is the temporary files directory. If it is not a
full pathname, it is taken relative to MQUEDIR.
MWARNTIME specifies the time in hours that a message can
remain in a queue before a warning message about delayed
delivery is sent to the sender. See also MFAILTIME.
UUname defines the UUCP sitename (short form, not full path)
and is used only by the UUCP channel. See also MLNAME.
See Also dbmbuild(ADM), mmdf(ADM), tables(F), ``Setting Up
Electronic Mail'' in the System Administrator's Guide
Value Added mmdftailor is an extension of AT&T System V
provided by the Santa Cruz Operation.
(printed 2/15/90) MMDFTAILOR(F)