|
|
1.1 root 1:
2:
3: mail Overview mail
4:
5:
6:
7:
8: Electronic mail system
9:
10:
11: The COHERENT system includes a full-featured, UNIX-style mail
12: system. It consists of a number of commands and files through
13: which you can describe potential recipients of mail, either on
14: your system or other systems, and send mail to them either
15: directly or via UUCP. This article describes the design of the
16: COHERENT mail system, and introduces the commands and files that
17: compose it.
18:
19: ***** Structure of the COHERENT Mail System *****
20:
21: The COHERENT mail system has three major components: the _u_s_e_r
22: _a_g_e_n_t (i.e., mmaaiill); the _r_o_u_t_i_n_g _a_g_e_n_t (the commands ssmmaaiill and
23: rrmmaaiill); and the delivery agents (the commands llmmaaiill and uuuuxx).
24:
25: The user agent collects messages from the user and reads messages
26: from a user's mailbox. It hands to the routing agent for
27: delivery any messages it receives from the user.
28:
29: The routing agents decode addresses and decide how to deliver a
30: message. They are the only components of the mail system that
31: must run sseettuuiidd to assume the privilege of the superuser rroooott.
32:
33: The delivery agents move messages to their destination.
34:
35: The local delivery agent, llmmaaiill, places messages into users'
36: mailboxes. To discourage mail forging, llmmaaiill does not use
37: sseettuuiidd. It must be run by a privileged user (generally rroooott) to
38: write into all mail boxes. As a rule, llmmaaiill is invoked only by a
39: routing agent.
40:
41: The UUCP delivery agent, uuuuxx, queues messages for transmission to
42: remote systems. It uses sseettuuiidd to assume the identity of user
43: uuuuccpp in order to write into the necessary spool directories. It
44: has long been trivial to forge messages to remote systems with
45: uuuuxx; keep this in mind if you plan to use electronic mail for any
46: kind of authorization system.
47:
48: ssmmaaiill looks up each _u_s_e_r in file /uussrr/lliibb/mmaaiill/aalliiaasseess. If it
49: finds a match, it uses the matched name in place of _u_s_e_r. If _u_s_e_r
50: is of the form
51:
52:
53: _s_y_s!_u_s_e_r
54:
55:
56: or
57:
58:
59:
60:
61:
62:
63:
64: COHERENT Lexicon Page 1
65:
66:
67:
68:
69: mail Overview mail
70:
71:
72:
73: _s_y_s! ... !_u_s_e_r
74:
75:
76: or
77:
78:
79: _u_s_e_r@_s_y_s[._d_o_m_a_i_n]
80:
81:
82: it is treated as a remote destination. ssmmaaiill then invokes
83: command uuuuxx to pass the message to _s_y_s, whose responsibility it
84: becomes to pass the message to _u_s_e_r.
85:
86: If ssmmaaiill finds no match in /uussrr/lliibb/mmaaiill/aalliiaasseess, or
87: $HHOOMMEE/.aalliiaasseess, however, it attempts to look up each _u_s_e_r in file
88: /eettcc/ppaasssswwdd, to see if this is a local user. If it does not find
89: _u_s_e_r in this file, ssmmaaiill mails an error message back to the
90: sender. If, however, it does find _u_s_e_r in this file, ssmmaaiill
91: checks file $HHOOMMEE/.ffoorrwwaarrdd for any possible forwarding
92: instructions. If this file is absent, ssmmaaiill passes the message
93: to llmmaaiill. llmmaaiill writes the message into the file
94: /uussrr/ssppooooll/mmaaiill/_u_s_e_r. This file is called the user's
95: ``mailbox''. Note that _u_s_e_r owns this file, and can therefore
96: permit or deny access to her mail by other users.
97:
98: ***** Files *****
99:
100: $HHOOMMEE/ddeeaadd.lleetttteerr -- Message that mmaaiill could not send
101: $HHOOMMEE/.aalliiaasseess -- Personal mail alias file for outgoing mail
102: $HHOOMMEE/.ffoorrwwaarrdd -- Forwarding instructions for inbound mail
103: /eettcc/ppaasssswwdd -- User identities
104: /ttmmpp/mmaaiill* -- Temporary and lock files
105: /uussrr/lliibb/mmaaiill/aalliiaasseess -- Aliases of users
106: /uussrr/lliibb/mmaaiill/ffuullllnnaammeess -- Short full name aliases of users
107: /uussrr/lliibb/mmaaiill/ppaatthhss -- Mail routing control file
108: /uussrr/ssppooooll/mmaaiill -- Mailbox directory, filed by user name
109:
110: ***** See Also *****
111:
112: aalliiaasseess, ccoommmmaannddss, mmaaiill, mmkkffnnaammeess, mmssgg, nnppttxx, ppaatthhss, uuuuxx
113:
114: ***** Notes *****
115:
116: To mail a file to another user, use the shell's redirection
117: operator `<'. For example, the command
118:
119:
120: mail stephen <bug.report
121:
122:
123: mails file bbuugg.rreeppoorrtt to user sstteepphheenn. The file will be prefixed
124: with your address, and suffixed with your mail ``signature'',
125: should you have one.
126:
127:
128:
129:
130: COHERENT Lexicon Page 2
131:
132:
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.