Annotation of coherent/d/bin/mail/smail/docs/aliases.8, revision 1.1.1.1

1.1       root        1: .TH ALIASES 8
                      2: .tr ~
                      3: .SH NAME
                      4: aliases \- alias file for smail
                      5: .SH DESCRIPTION
                      6: This file is used by
                      7: .I smail
                      8: only if
                      9: .I SENDMAIL
                     10: is
                     11: .I not defined.
                     12: If
                     13: .I SENDMAIL
                     14: is defined, then
                     15: .I sendmail
                     16: does all of the aliasing for the host.
                     17: .PP
                     18: This file contains a list of aliases for
                     19: local users or mailing lists.
                     20: The format of each alias is
                     21: .sp
                     22: .ce
                     23: alias_name~recip_name1~recip_name2~...
                     24: .sp
                     25: An attempt has been made to remain compatible with
                     26: .I sendmail
                     27: alias file format, though the syntax is much more format free than
                     28: .I sendmail.
                     29: As distributed,
                     30: .I case differences are ignored
                     31: when comparing names to aliases.
                     32: Only alias names which resolve to the local host are recognized, and are
                     33: stored in their local form.
                     34: Lines which start with a white~space are continuation lines.
                     35: Parenthesised strings are taken as comments (no nesting),
                     36: as is anything after a '#' (as in
                     37: .IR /bin/sh ).
                     38: Here are some examples:
                     39: .sp
                     40: .nf
                     41: # this whole line is a comment
                     42: #
                     43: # These are equivalent definitions
                     44: 
                     45: alias_name      recip1 recip2 recip3
                     46: 
                     47: alias_name:     recip1, recip2 , recip3
                     48: 
                     49: alias_name      recip1 recip2
                     50:                 recip3
                     51: 
                     52: alias_name      recip1  # Recip1's name
                     53:                 recip2  # Recip2's name
                     54:                 recip3  # Recip3's name
                     55: 
                     56: alias_name      recip1 (Recp1's name) recip2 (Recp2's name)
                     57:                 recip3 (Recp3's name)
                     58: 
                     59: alias_name@thishost     recip1 recip2 recip3
                     60: 
                     61: alias_name@thisdomain   recip1 recip2 recip3
                     62: 
                     63: thishost!alias_name     recip1 recip2 recip3
                     64: 
                     65: thisdomain!alias_name   recip1 recip2 recip3
                     66: .fi
                     67: .PP
                     68: Mailing lists are easily handled by two forms of file inclusion.
                     69: The first form is the same as is supported by
                     70: .I sendmail
                     71: .sp
                     72: .ce
                     73: mylist :include:/usr/lib/ml/mylist
                     74: .sp
                     75: In this example, each entry in
                     76: .I /usr/lib/ml/mylist
                     77: would be added to the alias for
                     78: .I mylist.
                     79: The second form is unique to
                     80: .I smail.
                     81: It allows the
                     82: .I aliases
                     83: file to include other
                     84: .I aliases
                     85: files.
                     86: .sp
                     87: .ce
                     88: :include:/usr/lib/ml/more-aliases
                     89: .sp
                     90: This would include the file
                     91: .I /usr/lib/ml/more-aliases
                     92: as a regular alias file.
                     93: This makes it easier to maintain groups of aliases that
                     94: change frequently, such as the list of netnews moderators.
                     95: .PP
                     96: All aliases are recursive, so care
                     97: must be taken in their definition.
                     98: .I smail
                     99: aliasing attempts to prevent infinite loops, and to
                    100: do what was intended by the user.  For example, the alias:
                    101: .sp
                    102: .ce
                    103: mylogin~mypc!mylogin~mylogin
                    104: .sp
                    105: Expands to
                    106: .sp
                    107: .ce
                    108: mypc!mylogin mylogin
                    109: .sp
                    110: even though the second occurrence of
                    111: .I mylogin
                    112: matches the alias name.
                    113: .sp
                    114: Both forms of file inclusion are recursive, too,
                    115: so watch out for nesting include files.  They
                    116: may lead to infinite loops.
                    117: .PP
                    118: While the cost of parsing an alias file is usually negligible,
                    119: it's wise to take savings anywhere savings
                    120: can be found.  Therefore, it's worth mentioning
                    121: .IR smail 's
                    122: parsing strategy.
                    123: .I smail
                    124: will try to get by with doing as little work
                    125: as possible when aliasing.  If on a particular
                    126: invocation of
                    127: .I smail,
                    128: none of the recipent addresses are local,
                    129: (i.e., not potential aliases)
                    130: then the
                    131: .I aliases
                    132: file won't even be read.  Similarly,
                    133: when an
                    134: .I aliases
                    135: file is read, it does not expand any of the :include: files
                    136: until they are referenced.  Thus, in the alias (above) for
                    137: .I mylist,
                    138: the file
                    139: .I :include:/usr/lib/ml/mylist
                    140: would not be opened and read (parsed) unless
                    141: mail was sent to
                    142: .I mylist.
                    143: Wise use of :include: files can greatly
                    144: increase the efficiency of the alias utility.
                    145: It's not clear exactly where the
                    146: .I break-even
                    147: point is when deciding to use an  :include: file in an alias,
                    148: versus having all of the recipents listed on the line;
                    149: but if a mailing list is large (whatever that means)
                    150: it is wise to use the :include: feature to save on
                    151: parsing costs.  Note that this discussion only applies to the
                    152: first form of file inclusion, since reading an
                    153: .I aliases
                    154: file constitutes a reference to :include: files of the second form.
                    155: .PP
                    156: There is another form of aliasing which works with the alias capability.
                    157: This is called
                    158: .I per user forwarding.
                    159: For a given user name, if there is no alias for the user
                    160: then, if the file
                    161: .I ~user/.forward
                    162: exists, then its contents will be treated as an alias for
                    163: the user.  The syntax is the same as that of the
                    164: recipient lists in the alias file described above.
                    165: .PP
                    166: One difference between
                    167: .I smail
                    168: and
                    169: .I sendmail
                    170: is that
                    171: .I smail
                    172: doesn't handle stuff like mail to files
                    173: or command execution.
                    174: .SH SEE ALSO
                    175: smail(8), paths(8), pathproc(8)
                    176: .SH VERSION
                    177: @(#)aliases.8  2.5 (smail) 9/15/87

unix.superglobalmegacorp.com

This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.