newinclude(1) General Commands Manual newinclude(1)NAME
newinclude - create a binary mailing list from an :include: file
SYNOPSIS
newinclude list
DESCRIPTION
newinclude reads a sendmail-style :include: file, list, and converts it into a binary format in list.bin for use by fastforward.
newinclude first writes the mailing list to list.tmp, and then moves it to list.bin. If there is any problem creating list.tmp, newinclude
leaves list.bin alone.
newinclude always creates list.bin world-readable.
COMPATIBILITY WARNING: sendmail reads list directly; fastforward needs list.bin. sendmail's strategy is a disaster if you save list to
disk at the same moment that sendmail reads it; the list will be truncated at a random spot, perhaps in the middle of an address. Further-
more, if the system crashes while you are writing list, list could be filled with all sorts of garbage.
LIST FORMAT
list may contain any number of lines; each line may contain any number of addresses or further :include: files. See newaliases(1) for
details on the address format. Any line in file beginning with # is ignored.
COMPATIBILITY WARNING: newinclude does not support file or program deliveries in :include: files. You can use the secure delivery mecha-
nisms described in dot-qmail(5) instead.
COMPATIBILITY WARNING: Versions of sendmail before V8 did not allow comments in :include: files.
SEE ALSO fastforward(1), newaliases(1), setmaillist(1), dot-qmail(5)newinclude(1)
Check Out this Related Man Page
setforward(1) General Commands Manual setforward(1)NAME
setforward - create a forwarding database
SYNOPSIS
setforward cdb tmp
DESCRIPTION
setforward reads a table of forwarding instructions from its standard input. It converts the table into a forwarding database. The for-
warding database can be used by fastforward.
setforward writes the forwarding database to tmp; it then moves tmp to cdb. tmp and cdb must be on the same filesystem.
If there is a problem creating tmp, setforward complains and leaves cdb alone.
The forwarding database format is portable across machines.
INSTRUCTION FORMAT
A forwarding instruction contains a target, a colon, a series of commands, and a semicolon. Each command is a recipient address, owner
address, external mailing list, or program. Commands are separated by commas.
For example,
root@yp.to: god@heaven.af.mil, staff@af.mil;
says that mail for root@yp.to should be forwarded to the recipient addresses god@heaven.af.mil and staff@af.mil.
When setforward sees # it ignores all text from # to the end of the line:
# this is a comment
setforward ignores all other line endings, so you can split a forwarding instruction across lines. It also ignores spaces and tabs.
Exception: you can put a space (or tab or comma or whatever) into a target or command by putting a backslash in front of it. (However, NUL
bytes are not permitted anywhere.)
TARGETS
When fastforward sees the incoming address user@host.dom, it tries three targets: user@host.dom, @host.dom, and user@. It obeys the com-
mands for the first target that it finds. Target names are interpreted without regard to case.
All the commands for a single target must be listed in a single instruction. Exception: an owner address can be listed in a separate
instruction.
RECIPIENT ADDRESSES
If a command begins with an ampersand, setforward takes the remaining bytes in the command as a recipient address:
boss@yp.to: &god@heaven.af.mil;
fastforward sends each incoming mail message to the recipient address. The recipient address must include a fully qualified domain name.
It cannot be longer than 800 bytes.
If a recipient address is itself a target in the forwarding table, fastforward will recursively handle the instructions for that target.
Note that @host.dom and user@ wildcards do not apply here; they apply only to the incoming address.
If a command begins with a letter or number, setforward takes the entire command as a recipient address:
boss@yp.to: god@heaven.af.mil;
OWNER ADDRESSES
If a command begins with a question mark, setforward takes the remaining bytes in the command as an owner address:
sos@heaven.af.mil: ?owner-sos@heaven.af.mil;
fastforward uses that address as the envelope sender for forwarded mail, so bounces will go back to that address. (Normally, if a message
is forwarded to a bad address, it will bounce back to the original envelope sender.)
EXTERNAL MAILING LISTS
If a command begins with a dot or slash, setforward takes the entire command as the name of a binary mailing list file created by setmail-
list:
sos@heaven.af.mil: /etc/lists/sos.bin;
fastforward will read and obey the commands in that file. The file must be world-readable and accessible to fastforward.
PROGRAMS
If a command begins with a vertical bar or exclamation point, setforward takes the rest of the command as the name of a program to run:
dew@: |dew-monitor;
For a vertical bar, fastforward feeds the message to that program. An exclamation point works the same way except that fastforward inserts
$UFLINE, $RPLINE, and $DTLINE in front of the message.
DUPLICATES
When fastforward is building the recipient list for a message, it keeps track of the recipient addresses and external mailing lists it has
used. If the same command shows up again, it skips it. For example:
everybody@yp.to: programmers@yp.to, testers@yp.to;
programmers@yp.to: joe@yp.to, bob@yp.to;
testers@yp.to: joe@yp.to, fred@yp.to;
A message to everybody@yp.to will be sent to joe@yp.to only once. (This also means that addresses in an internal forwarding loop are dis-
carded.)
Exception: If a target has an owner address, commands for that target are considered different from commands for ``outside'' targets.
SEE ALSO newaliases(1), preline(1), printforward(1), setmaillist(1)setforward(1)