3 upasfs, startupasfs \- mail file server
19 is a user level file system that reads mailboxes and presents them as a file
21 A user normally starts
23 in his/her profile after starting
26 a window system, such as
30 The file system is used by
34 mail reader to parse messages.
36 also generates plumbing messages used by
40 to provide mail announcements.
43 is a shell script suitable for use in one's profile.
46 for the invoking user if none is already running,
47 and always mounts the user's posted
52 The mailbox itself becomes a directory under
54 Each message in the mailbox becomes a numbered directory in the
55 mailbox directory, and each attachment becomes a numbered directory
56 in the message directory. Since an attachment may itself be a mail message,
57 this structure can recurse ad nauseam.
59 Each message and attachment directory contains the files:
63 the message minus the RFC822 style headers
66 the address(es) from the CC: header
69 the date in the message, or if none, the time of delivery
72 an SHA1 digest of the message contents
80 a name to use to file an attachment
83 the from address in the From: header, or if none,
84 the address on the envelope.
90 described below, essentially a summary of the header info
101 the undecoded MIME message
104 the undecoded message body
107 the undecoded message header
110 the address to send any replies to.
113 the contents of the subject line
116 the address(es) from the To: line.
119 the MIME content type
122 the envelope header from the mailbox
127 file contains the following information, one item per line. Lists
128 of addresses are single-space separated.
136 .I "recipient addresses
146 .I "MIME content type
156 .I "in-reply-to: contents
164 .I "number of lines in body
169 Deleting message directories causes the message to be removed from
172 The mailbox is reread and the structure updated
173 whenever the mailbox changes. Message directories are
180 to open/close new mailboxes or to delete groups of messages atomically.
181 The messages that can be written to this file are:
182 .TF "delete\fI mboxname number ...\fP
184 .BI open " path mboxname"
187 is the file to open, and
189 is the name that appears under
192 .BI close " mboxname"
195 The close takes affect only after all files open under
196 .BI /mail/fs/ mboxname
199 .BI delete " mboxname number ..."
200 Delete the messages with the given numbers from
210 as the mailbox instead of the default,
211 .BI /mail/box/ username /mbox.
215 stands for biffing. Each time new mail
216 is received, a message is printed to standard
217 output containing the sender address, subject,
218 and number of bytes. It is intended for
219 people telnetting in who want mail announcements.
222 Don't open a mailbox initially. Overridden by -f.
225 turn off plumbing. Unless this is specified,
227 sends a message to the plumb port,
231 for each message received or deleted.
232 The message contains the attributes
233 .BI sender= "<contents of " from " file>,"
235 .BR "mailtype=deleted\fI or \fPnew" ,
237 .BI length= "<message length in bytes>."
238 The contents of the message is the full path
239 name of the directory representing the message.
246 with a name of the form
247 .BI /srv/upasfs. user.
250 specifies a mount point other than
255 will exit once all references to its directory
259 interprets mailbox file names of the form
260 .BI / proto / host / user
261 to mean access an account on
263 using the given protocol.
264 Authentication is delegated to
268 may be omitted, in which case
269 the user name is gleaned from the key held by
271 The following protocols are supported:
276 cleartext POP with password authentication
279 cleartext POP with challenge-response (APOP) authentication
284 TLS-encrypted POP with password authentication
289 TLS-encrypted POP with challenge-response (APOP) authentication
298 The two IMAP protocols allow an optional fourth field
299 specifying a mailbox name, for example
300 .BR /imap/server/user/stored .
305 connect to port 110 in plaintext and start TLS using the POP
310 connect to port 995 and start TLS before initiating the POP conversation.
312 connects to port 993 and starts TLS before initiating the IMAP conversation.
313 There should probably be an
317 would connect to port 143 in plaintext and start TLS using the IMAP
319 (That's the nice thing about standards\(emthere's so many to choose from.))
321 .TF /mail/box/*/dead.letter
329 .B /mail/box/*/L.reading
330 mutual exclusion lock for multiple mbox readers
332 .B /mail/box/*/L.mbox
333 mutual exclusion lock for altering mbox
337 .B /sys/src/cmd/upas/fs
339 .B /rc/bin/startupasfs