Annotation of coherent/d/bin/mail/smail/docs/aliases.8, revision 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.