glenda.party
term% ls -F
term% cat index.txt
UPASFS(4)                  Kernel Interfaces Manual                  UPASFS(4)



NAME
       upasfs, startupasfs - mail file server

SYNOPSIS
       upas/fs [ -f mailbox ] [ -bnps ] [ -m mntpoint ]

       startupasfs

DESCRIPTION
       Fs  is  a user level file system that reads mailboxes and presents them
       as a file system.  A user normally starts fs in his/her  profile  after
       starting plumber(4) and before starting a window system, such as rio(1)
       or acme(1).  The file system is used  by  nedmail  and  acme(1)'s  mail
       reader  to parse messages.  Fs also generates plumbing messages used by
       biff and faces(1) to provide mail announcements.

       Startupasfs is a shell script suitable for use in  one's  profile.   It
       runs fs -s for the invoking user if none is already running, and always
       mounts the user's posted fs on /mail/fs.

       The mailbox itself becomes a directory under /mail/fs.  Each message in
       the  mailbox becomes a numbered directory in the mailbox directory, and
       each attachment becomes a numbered directory in the message  directory.
       Since  an  attachment  may itself be a mail message, this structure can
       recurse ad nauseam.

       Each message and attachment directory contains the files:

       body          the message minus the RFC822 style headers
       cc            the address(es) from the CC: header
       date          the date in the message, or if none, the time of delivery
       digest        an SHA1 digest of the message contents
       disposition   inline or file
       filename      a name to use to file an attachment
       from          the from address in the From: header, or if none, the ad‐
                     dress on the envelope.
       header        the RFC822 headers
       info          described below, essentially a summary of the header info
       inreplyto     contents of the in-reply-to: header
       mimeheader    the mime headers
       raw           the undecoded MIME message
       rawbody       the undecoded message body
       rawheader     the undecoded message header
       replyto       the address to send any replies to.
       subject       the contents of the subject line
       to            the address(es) from the To: line.
       type          the MIME content type
       unixheader    the envelope header from the mailbox

       The  info  file  contains the following information, one item per line.
       Lists of addresses are single-space separated.

       sender address
       recipient addresses
       cc addresses
       reply address
       envelope date
       subject
       MIME content type
       MIME disposition
       filename
       SHA1 digest
       bcc addresses
       in-reply-to: contents
       RFC822 date
       message senders
       message id
       number of lines in body
       Deleting message directories causes the message to be removed from  the
       mailbox.

       The  mailbox  is  reread and the structure updated whenever the mailbox
       changes.  Message directories are not renumbered.

       The file /mail/fs/ctl is used to direct fs to open/close new  mailboxes
       or  to  delete groups of messages atomically.  The messages that can be
       written to this file are:

       open path mboxname
              opens a new mailbox.  path is the file to open, and mboxname  is
              the name that appears under /mail/fs.

       close mboxname
              close  mboxname.   The  close  takes affect only after all files
              open under /mail/fs/mboxname have been closed.

       delete mboxname number ...
              Delete the messages with the given numbers from mboxname.

       The options are:

       -ffile use file as the mailbox instead of the default,  /mail/box/user‐
              name/mbox.
       -b     stands  for  biffing.  Each time new mail is received, a message
              is printed to standard output  containing  the  sender  address,
              subject, and number of bytes.  It is intended for people telnet‐
              ting in who want mail announcements.
       -n     Don't open a mailbox initially.  Overridden by -f.
       -p     turn off plumbing.  Unless this is specified, fs sends a message
              to  the plumb port, seemail, from source mailfs for each message
              received  or  deleted.   The  message  contains  the  attributes
              sender=<contents  of from file>, filetype=mail, mailtype=deleted
              or new, and length=<message length in bytes>.  The  contents  of
              the  message is the full path name of the directory representing
              the message.
       -s     causes fs to post itself  in  /srv  with  a  name  of  the  form
              /srv/upasfs.user.
       -m     specifies a mount point other than /mail/fs.

       Fs will exit once all references to its directory have disappeared.

       Fs  interprets  mailbox file names of the form /proto/host/user to mean
       access an account on host using the given protocol.  Authentication  is
       delegated  to  factotum(4).   The  final /user may be omitted, in which
       case the user name is gleaned from the key held by factotum.  The  fol‐
       lowing protocols are supported:

       pop    cleartext POP with password authentication

       apop   cleartext POP with challenge-response (APOP) authentication

       pops

       poptls TLS-encrypted POP with password authentication

       apops

       apoptls
              TLS-encrypted POP with challenge-response (APOP) authentication

       imap   cleartext IMAP

       imaps  TLS-encrypted IMAP

       The  two  IMAP  protocols  allow  an optional fourth field specifying a
       mailbox name, for example /imap/server/user/stored.

       Poptls and apoptls connect to port 110 in plaintext and start TLS using
       the POP STLS command.  Pops and apops connect to port 995 and start TLS
       before initiating the POP conversation.  Imaps connects to port 993 and
       starts TLS before initiating the IMAP conversation.  There should prob‐
       ably be an imaptls protocol as well.  (Imaptls would  connect  to  port
       143  in  plaintext  and  start  TLS  using  the  IMAP STARTTLS command.
       (That's the nice  thing  about  standards—there's  so  many  to  choose
       from.))

FILES
       /mail/box/*
              mail directories

       /mail/box/*/mbox
              mailbox files

       /mail/box/*/L.reading
              mutual exclusion lock for multiple mbox readers

       /mail/box/*/L.mbox
              mutual exclusion lock for altering mbox

SOURCE
       /sys/src/cmd/upas/fs
       /rc/bin/startupasfs

SEE ALSO
       aliasmail(8),  faces(1), filter(1), mail(1), marshal(1), mlmgr(1), ned‐
       mail(1), qer(8), rewrite(6), send(8), upasfs(4)



                                                                     UPASFS(4)