mh-alias(4) Kernel Interfaces Manual mh-alias(4)
mh-alias - Alias file for MH message system
Aliasing allows you to send mail to a person or group of persons without typing their complete mail address. Both your MH personal alias
file and the system alias file for mail delivery, /usr/lib/mh/MailAliases, process aliases in the same way. You can specify the name of
your personal alias file in your .mh_profile.
A line of the alias file can have the following formats: alias : address-group alias ; address-group < alias-file
The first line of the example is the standard format. The alias appears at the start of the line, followed by a colon, followed by the
address or addresses that it represents.
If the alias is terminated with a semicolon (;) instead of a colon (:), the mail system outputs both the alias and the address-list in the
If the line starts with a <, the file named after the < is read for more alias definitions. The reading is done recursively, so a < can
occur in the beginning of an alias file with the expected results.
Addresses can be expressed in the following formats: alias: address1, address2, address3, ... alias: <file alias: =group alias: +group
Addresses are normally given in a list, separated by a comma and one or more spaces. If the list goes over one line, you can create a con-
tinuation line by placing a back-slash () immediately before the new-line character.
If the address-group begins with a <, the file named after the < is read and its contents added to the address list for the alias.
If the address-group starts with an =, then the file /etc/group is consulted for the group named after the =. Each login name occurring as
a member of the group is added to the address list for the alias.
If the address-group starts with a +, then the file /etc/group is consulted to determine the group-id of the group named after the +. Each
login name occurring in the /etc/passwd file whose group-id is indicated by this group is added to the address list for the alias.
If the address-group is simply *, then the file /etc/passwd is consulted and all login names with a user-id greater than a given number
(usually 200) are added to the address list for the alias.
Aliases are resolved at posting time in the following way. A list of all the addresses from the message is built and duplicate addresses
are eliminated. If the message originated on the local host, then alias resolution is performed for those addresses in the message that
have no host specified. For each line in the alias file, aliases are compared against all of the existing addresses. If there is a match,
the matched alias is removed from the address list, and each new address in the address-group is added to the address list, if it is not
already on the list.
The alias itself is not usually output; the address-group that the alias maps to is output instead. However, if the alias is terminated
with a semicolon (;) instead of a colon (:), both the alias and the address are output in the correct format. This makes replies possible,
because in MH aliases and personal aliases are unknown to the mail transport system.
MH alias files are expanded into the headers of messages posted. This aliasing occurs first, at posting time, without the knowledge of the
message transport system. In contrast, once the message transport system is given a message to deliver to a list of addresses, for each
address that appears to be local, a system-wide alias file is consulted. These aliases are not expanded into the headers of messages
An alias file must not reference itself directly, or indirectly through another alias file, using the <file construct.
To use aliasing in MH, you need to set up a personal alias file. It can have any name, but it is usually called aliases, and is usually
located in your Mail directory. To set up the file, you need to perform the following steps.
First, add the following line to your .mh_profile: Aliasfile: aliases If you have chosen a different name for your file, you should use
this instead of aliases. If your file is in a directory other than your Mail directory, you must supply the full pathname.
Next, create the file aliases in your Mail directory.
You can now start to add aliases to your aliases file.
This section gives an example of an alias file, followed by an explanation of the entries: sgroup: fred, fear, freida fred: frated@UCI
work-committee: <work.aliases staff: =staff wheels: +wheel everyone: *
On the first line of the example, sgroup is defined as an alias for the three names frated@UCI, fear, and freida. On the second line of the
example, fred is defined as an alias for frated@UCI. Next, the definition of work-committee is given by reading the file work.aliases in
your Mail directory. The alias staff is defined as all users who are listed as members of the group staff in the /etc/group file. The
alias wheels is defined as all users whose group-id in /etc/passwd is equal to the group wheel. Finally, the alias everyone is defined as
all users with a user-id in /etc/passwd greater than 200.
System alias file.
Your user profile.
ali(1), send(1), whom(1), group(4), passwd(4), mh_profile(4), mtstailor(4), conflict(8), post(8) delim off