Annotation of 43BSDReno/contrib/mh/papers/mh6/mh6.tex, revision 1.1.1.1

1.1       root        1: % run this through LaTeX
                      2: 
                      3: \input lcustom
                      4: \input version
                      5: 
                      6: \documentstyle[12pt,DScustom,sfwmac]{article}
                      7: \setcounter{page}{0}
                      8: \pagestyle{empty}
                      9: 
                     10: \begin{document}
                     11: 
                     12: \title{Changes to\\ The Rand MH Message Handling System:\\ MH.6}
                     13: \author{Marshall T.~Rose\\
                     14:        Northrop Research and Technology Center\\
                     15:        One~Research Park\\
                     16:        Palos Verdes Peninsula, CA  90274}
                     17: \date{\ifdraft \versiondate/\\ Version \versiontag/\else \today\fi}
                     18: \maketitle
                     19: \footnotetext[0]{\hskip -\parindent
                     20: This document (version \versiontag/)
                     21: was \LaTeX set \today\ with \fmtname\ v\fmtversion.}%
                     22: 
                     23: \begin{abstract}
                     24: \noindent This document describes the user-visible change to the
                     25: UCI version of the Rand \MH/ system that were made from \mh5 to \mh6.
                     26: This document does not describe bug-fixes, per se,
                     27: or internal changes,
                     28: unless these activities resulted in a visible change for the \MH/ user.
                     29: 
                     30: This document is meant to supplement,
                     31: not supersede, the standard \MH/ User's manual\cite{MH}.
                     32: 
                     33: Comments concerning this documentation should be addressed to the Internet
                     34: mailbox {\sf [email protected]}.
                     35: \end{abstract}
                     36: 
                     37: \bop\pagestyle{plain}\pagenumbering{arabic}
                     38: 
                     39: \section*     {Acknowledgements}
                     40: The \MH/ system described herein is based on the original Rand \MH/ system.
                     41: It has been extensively developed (perhaps too much so) by Marshall T.~Rose
                     42: and John L.~Romine at the University of California, Irvine.
                     43: Einar A.~Stefferud, Jerry N.~Sweet,
                     44: and Terry P.~Domae provided numerous suggestions
                     45: to improve the UCI version of \MH/.
                     46: Of course,
                     47: a large number of people have helped \MH/ along.
                     48: The list of ``\MH/~immortals'' is too long to list here.
                     49: 
                     50: \section*     {Disclaimer}
                     51: The Regents of the University of California wish to make it known that:
                     52: \begin{quote}
                     53: Although each program has been tested by its contributor,
                     54: no warranty, express or implied,
                     55: is made by the contributor or the University of California,
                     56: as to the accuracy and functioning of the program
                     57: and related program material,
                     58: nor shall the fact of distribution constitute any such warranty,
                     59: and no responsibility is assumed by the contributor
                     60: or the University of California in connection herewith.
                     61: \end{quote}
                     62: 
                     63: \bop
                     64: 
                     65: \section*     {Conventions}
                     66: In this document,
                     67: certain \LaTeX -formatting conventions are adhered to:
                     68: \begin{enumerate}
                     69: \item  The names of \unix/ commands, such as \pgm{comp},
                     70: are presented in {\it text italics}.
                     71: 
                     72: \item  Arguments to programs, such as \arg{msgs},
                     73: are presented in {\tt typewriter style} and delimited by single-quotes.
                     74: 
                     75: \item  \unix/ pathnames and envariables,
                     76: such as $$\file{/usr/uci/}\hbox{\qquad and\qquad}\file{\$SIGNATURE},$$
                     77: are presented in {\sl slanted roman}.
                     78: 
                     79: \item  Text presenting an example, such as
                     80: \example comp\ -editor\ zz\endexample
                     81: is presented in {\tt typewriter style}.
                     82: \end{enumerate}
                     83: 
                     84: \bop
                     85: 
                     86: \section*     {General Changes}
                     87: Unlike the changes between \mh4 and \mh5,
                     88: a large number of user-visible changes have been made in \mh6.
                     89: These changes have been in the form of bug fixes and several generalizations.
                     90: The majority of these will not affect novice users.
                     91: In addition, \mh6 is a great deal faster than \mh5:
                     92: all programs have been speeded-up significantly,
                     93: thanks to work done by Van Jacobson as part of the process of including \mh5
                     94: in the 4.3\bsd/~\unix/ distribution.
                     95: 
                     96: This document describes all user-visible changes to \mh5 from it's initial
                     97: release to the initial release of \mh6.
                     98: 
                     99: \subsection*   {System-5 Support}
                    100: In addition to support for \bsd/~\unix/, V7~\unix/ and \xenix/ variants of
                    101: \unix/,
                    102: \MH/ finally has support for the AT\&T variant of \unix/, System~5.
                    103: Hopefully this will greatly expand the number of system which can run \MH/.
                    104: Ironically,
                    105: it appears that five ports of earlier versions of \MH/ (including \mh5)
                    106: were done,
                    107: but news of the work was not widespread.%
                    108: \nfootnote{In fact,
                    109: three groups in one large organization ported \MH/ independently,
                    110: each without knowledge of the others' work.}
                    111: 
                    112: \subsection*   {Documentation}
                    113: Several new documents have been included in the \mh6 distribution:
                    114: The paper {\em MH.5: How to process 200 messages a day and still get some
                    115: real work done}
                    116: was presented at the 1985 Summer Usenix Conference and Exhibition in
                    117: Portland, Orgeon.
                    118: Another paper, {\em MH: A Multifarious User Agent},
                    119: has been accepted for publication by Computer Networks.
                    120: Both describe \MH/,
                    121: the former from a more technical and somewhat humorous perspective,
                    122: the latter from a more serious and research-oriented perspective.
                    123: In addition,
                    124: a third paper has been included,
                    125: {\em Design of the TTI Prototype Trusted Mail Agent},
                    126: which describes a so-called ``trusted'' mail agent built on top of \MH/.
                    127: This paper was presented at the Second International Symposium on
                    128: Computer Message Systems in Washington, D.C.
                    129: A fourth paper,
                    130: {\em MZnet: Mail Service for Personal Micro-Computer Systems},
                    131: is also included.
                    132: This paper,
                    133: which was presented at the First International Symposium on Computer Message
                    134: Systems in Nottingham, U.K.,
                    135: describes a \cpm/-based version of \MH/.
                    136: 
                    137: In addition,
                    138: the \MH/ tutorial, {\em The Rand MH Message Handling System: Tutorial},
                    139: and,
                    140: {\em The Rand MH Message Handling System: The UCI BBoards Facility},
                    141: have both been updated by Jerry N.~Sweet.
                    142: 
                    143: For \MH/ administrators (PostMasters and the like),
                    144: there's an entirely new document,
                    145: {\em The Rand MH Message Handling System: Administrator's Guide}.
                    146: It explains most of the ``ins and outs'' of maintaining an \MH/ system.
                    147: 
                    148: Finally, all of the manual entries and the \MH/ manual have had a thorough
                    149: working over.
                    150: The documentation is expanded, more accurate, and more detailed.
                    151: 
                    152: \subsection*   {Help Listings}
                    153: When any \MH/ command is invoked with the \switch{help} switch,
                    154: in addition to listing the syntax of the command and version information,
                    155: the \MH/ configuration options will be listed.
                    156: \MH/ has so many configuration options,
                    157: that when debugging problems, this information is invaluable.
                    158: 
                    159: \subsection*   {The \MH/ Profile}
                    160: There are two new profile entries worth noting:
                    161: \eg{MH-Sequences} tells \MH/ the name of the file to record public
                    162: sequences in.
                    163: Users of \pgm{vm}, a proprietary, visual front-end to \MH/,
                    164: make use of this to disable the public sequences feature of \MH/.
                    165: 
                    166: The profile entry \eg{Unseen-Sequence} names those sequences which should be
                    167: defined as those messages recently incorporated by \pgm{inc}.
                    168: The \pgm{show} program knows to remove messages from this sequence once it
                    169: thinks they have been seen.
                    170: If this profile entry is not present, or is empty, then no sequences are
                    171: defined.
                    172: Otherwise, for each name given, the sequence is first zero'd and then each
                    173: message incorporated is added to the sequence.
                    174: As such, this profile entry is rather analogous to the
                    175: \eg{Previous-Sequence} entry in the user's \MH/ profile.
                    176: 
                    177: In addition, the \eg{Alternate-Mailboxes} entry in the profile has been
                    178: expanded to support simple wild-carding.
                    179: Also, the default for this profile entry is now the user's mail-id at any host.
                    180: This change was made since \MH/ can no longer reliably figure out what
                    181: the user's real outgoing address looks like.
                    182: 
                    183: Finally,
                    184: when the \pgm{install-mh} program is automatically invoked by \MH/,
                    185: it won't prompt the user for information.
                    186: Instead, it notes that it's setting up the default environment.
                    187: In addition,
                    188: the \MH/ administrator may set-up a file called \file{mh.profile} in the \MH/
                    189: library area which is consulted by \pgm{install-mh} when initializing the
                    190: user's \profile/.
                    191: 
                    192: \subsection*   {The \MH/ Context}
                    193: The \pgm{folder}, \pgm{scan}, and \pgm{show} programs have been modified to
                    194: update the user's \MH/ context prior to writing to the user's terminal.
                    195: This allows the \MH/ user interrupt output to the terminal and still have the
                    196: expected context.
                    197: This is especially useful to interrupt long \pgm{scan} listings.
                    198: This change also introduces a subtle bug between \pgm{show} and messages
                    199: denoted by the \eg{Unseen-Sequence}.
                    200: See \man show(1) for the details.
                    201: 
                    202: \subsection*   {Addresses and 822 support}
                    203: \MH/ now fully supports the RFC-822 routing syntax for addresses
                    204: (it used to recognize the syntax, but ignore the information present).
                    205: In addition,
                    206: there are three major modes for support of non-822 addressing in \MH/:
                    207: \begin{itemize}
                    208: \item  BERK\hbreak
                    209: This is useful on sites running \SendMail/.
                    210: It doesn't support full 822--style addressing,
                    211: in favor of recognizing such formats as ACSnet, and so on.
                    212: For sites that can't run in an 822--compliant environment,
                    213: this is the option to use
                    214: (at the price of sacrificing some of the power of 822--style addressing).
                    215: 
                    216: \item  DUMB\hbreak
                    217: Although not as liberal as BERK,
                    218: the DUMB option is useful on sites in which the message transport system
                    219: conforms to the 822 standard,
                    220: but wants to do all the defaulting itself.
                    221: 
                    222: \item  BANG\hbreak
                    223: From out in left field,
                    224: the BANG option favors \UUCP/-style addressing over 822--style addressing.
                    225: Hopefully when all the \UUCP/ sites around get around to adopting domain-style
                    226: addresses, this option won't be needed.
                    227: \end{itemize}
                    228: 
                    229: The \pgm{ap} program (mentioned momentarily) and the \pgm{ali} program
                    230: both support a \switch{normalize} switch indicate if addresses should be
                    231: resolved to their ``official'' hostnames.
                    232: 
                    233: \subsection*   {New Programs}
                    234: There are five new programs available:
                    235: The \pgm{ap} program is the \MH/ stand-alone address parser.
                    236: It's useful for printing address in various formats
                    237: (and for debugging address strings).
                    238: The \pgm{dp} program is similar, but works on dates instead of addresses.
                    239: 
                    240: The \pgm{msgchk} program checks for new mail,
                    241: possibly using the Post Office Protocol, POP, described below.
                    242: 
                    243: A new receive mail hook,
                    244: the \pgm{rcvstore} program,
                    245: which was written by Julian L.~Onions is available.
                    246: 
                    247: Finally, a visual front-end to \pgm{msh} called \pgm{vmh} has been included.
                    248: (This program is discussed in greater detail later on.)
                    249: 
                    250: \subsection*   {Message Numbering}
                    251: \MH/ now no longer restricts the number of messages which may reside in a
                    252: folder
                    253: (beyond that of system memory constraints).
                    254: This means that message numbers larger than 2000 are permissible.
                    255: Hopefully this will make life easier for people reading the network news
                    256: using \MH/.
                    257: 
                    258: \section*     {The WhatNow Shell}
                    259: In \mh6,
                    260: there is now the concept of a unified \whatnow/ processor that
                    261: the four composition programs, \pgm{comp}, \pgm{dist}, \pgm{forw},
                    262: and \pgm{repl} all invoke.
                    263: This permits a greater flexibility in building mail applications with \MH/.
                    264: As a result, there's a new program, \pgm{whatnow}, which acts as the default
                    265: \whatnow/ program.
                    266: Consult the \man whatnow(1) manual entry for all the details.
                    267: 
                    268: The only other thing worth noting is that unless \MH/ has been compiled with
                    269: the UCI option,
                    270: the user's \file{\$HOME/.signature} file is not consulted for the user's
                    271: personal name.
                    272: 
                    273: \section*     {Format Strings}
                    274: A general format string facility has been added to allow \MH/ users to tailor
                    275: the output of certain commands.
                    276: 
                    277: The \pgm{inc}, \pgm{scan}, \pgm{ap}, and \pgm{dp} programs all consult a
                    278: file containing format strings.
                    279: Format strings,
                    280: which look a lot like \man printf(3) strings,
                    281: give these \MH/ commands precise instructions on how to format their output.
                    282: 
                    283: As a result,
                    284: the \pgm{inc} and \pgm{scan} programs no longer have the
                    285: \switch{size}, \switch{nosize},
                    286: \switch{time}, \switch{notime},
                    287: \switch{numdate}, and \switch{nonumdate}
                    288: switches.
                    289: These switches have been replaced with the
                    290: \switch{form~formatfile} switch and the \switch{format~string} switch.
                    291: The former directs the program to consult the named file for the format
                    292: strings.
                    293: The latter directs the program to use the named string as the format.
                    294: To get the behavior of the old \switch{time} option,
                    295: use the \switch{form~scan.time} option.
                    296: Similarly,
                    297: to get the effect of \switch{size},
                    298: use \switch{form~scan.size}.
                    299: 
                    300: The \pgm{repl} command uses a file containing format files to
                    301: indicate how the reply draft should be constructed.
                    302: Note that reply templates prior to \mh6 are incompatible with \mh5.
                    303: Don't worry though,
                    304: it's quite easy to convert the templates by hand.
                    305: (Those clever enough to have written a reply template to begin with won't
                    306: have {\em any\/} problem.)
                    307: 
                    308: Similarly, when the \pgm{forw} program is constructing a digest,
                    309: it uses a file containing format strings to indicate how to build the
                    310: encapsulating draft.
                    311: 
                    312: \section*     {News}
                    313: The depreciated \MH/ news system (from \mh1) is now de-supported.
                    314: Use the ``hoopy'' BBoards facility instead.
                    315: 
                    316: \section*     {BBoards}
                    317: \MH/ maintainers take note:
                    318: the default home directory for the bboards login has changed from
                    319: \file{/usr/bboards/} to \file{/usr/spool/bboards/}.
                    320: Use the \eg{bbhome} directive in your \MH/ configuration file to set
                    321: it back to the old value if you wish.
                    322: 
                    323: In addition, the aliases field for a BBoard in the BBoards file is now
                    324: deemed useful only for addressing, not for user input to \pgm{bbc}.
                    325: This means when giving the name of a BBoard to \pgm{bbc},
                    326: only the official name should be used.
                    327: 
                    328: A final note for mailsystem maintainers:
                    329: the \MMDFII/ BBoards channel and the \SendMail/ BBoards mailer have been
                    330: modified to use the standard message encapsulation format when returning
                    331: failed messages to the list maintainer.
                    332: This means that the failure notices that the maintainer receives can
                    333: simply be \pgm{burst}.
                    334: 
                    335: \subsection*   {New Switches in bbc}
                    336: The \pgm{bbc} program permits you to specify the \eg{mshproc} to use on the
                    337: command line by using the \switch{mshproc~program} option.
                    338: In addition, options which aren't understood by \pgm{bbc} are passed along to
                    339: the \eg{mshproc}.
                    340: 
                    341: In addition, the following commands
                    342: pass any unrecognized switches on to the program that they invoke:
                    343: \pgm{bbc}, \pgm{next}, \pgm{show}, \pgm{prev}, and \pgm{vmh}.
                    344: 
                    345: \subsection*   {Distributed BBoards}
                    346: If both BBoards and POP (see the next section) are enabled,
                    347: then distributed BBoards can be supported on top of the POP service.
                    348: This allows the \MH/ user to read BBoards on a server machine
                    349: instead of the local host
                    350: (which saves a lot of wasted disk space when the same BBoards are replicated
                    351: several times at a site with several hosts).
                    352: See the {\em Administrator's Guide\/} for information on how this can be made
                    353: completely transparent to the \MH/ user.
                    354: 
                    355: If you have several machines at your site running 4.2\bsd/~\unix/
                    356: and connected by an \ethernet/ (or other high-speed LAN),
                    357: you {\em want\/} this software.
                    358: 
                    359: \subsection*   {Visual Front-End to msh}
                    360: A simple window management protocol has been implemented for \MH/ programs
                    361: that might wish to act as a back-end to a sophisticated visual front-end.
                    362: 
                    363: The first implementation of a server side (front-end) program is \pgm{vmh},
                    364: which uses \man curses(3) to maintain a split-screen interface.
                    365: Perhaps look for a \pgm{mhtool} program for the SUN next!
                    366: 
                    367: The \pgm{msh} program has been modified to speak the client side (back-end)
                    368: of this protocol, if so directed.
                    369: At present, \pgm{msh} is the only program in the \MH/ distribution which
                    370: implements the client side of the window management protocol.
                    371: 
                    372: \subsection*   {Updates in msh}
                    373: Prior to quitting,
                    374: the \pgm{msh} command now asks if the \pgm{packf\/}'d file you've been
                    375: perusing should be updated if you've modified it and the file is writable by
                    376: you.
                    377: The file can be modified by using \pgm{burst}, \pgm{rmm}, \pgm{rmm},
                    378: or \pgm{sortm} commands.
                    379: The file can also be modified by using the \pgm{refile} command without the
                    380: \switch{link} option.
                    381: (Or course,
                    382: the \switch{link} option doesn't actually link anything to the file.)
                    383: 
                    384: \section*     {Distributed Mail}
                    385: \MH/ now contains a powerful facility for doing distributed mail
                    386: (having \MH/ reside on a host different than the message transport agent).
                    387: For general information,
                    388: consult either the 
                    389: {\em MH.5: How to process 200 messages a day and still get some real work
                    390: done} paper,
                    391: or the {\em MH: A Multifarious User Agent} paper.
                    392: For specific information,
                    393: consult the {\em Administrator's Guide}.
                    394: Here's a brief synopsis:
                    395: 
                    396: This POP facility in \MH/ is based on a modification of the ARPA Post
                    397: Office Protocol (POP).
                    398: A POP {\em subscriber\/} is a remote user,
                    399: on a POP {\em client host},
                    400: that wishes to pick-up mail on a POP {\em service host}.
                    401: 
                    402: There are two ways to administer POP:
                    403: \begin{itemize}
                    404: \item  Naive Mode\hbreak
                    405: Each user-id in the \man passwd(5) file is considered a POP subscriber.
                    406: No changes are required for the mailsystem on the POP service host.
                    407: However,
                    408: this method requires that each POP subscriber have an entry in the password
                    409: file.
                    410: The POP server will fetch the user's mail from wherever maildrops are kept on
                    411: the POP service host.
                    412: This means that if maildrops are kept in the user's home directory,
                    413: then each POP subscriber must have a home directory.
                    414: 
                    415: \item  Smart Mode\hbreak
                    416: This is based on the notion that the list of POP subscribers and the list of
                    417: login users are completely separate name spaces.
                    418: A separate database (similar to the \man BBoards(5) file)
                    419: is used to record information about each POP subscriber.
                    420: Unfortunately,
                    421: the local mailsystem must be changed to reflect this.
                    422: This requires two changes (both of which are simple):
                    423: \begin{enumerate}
                    424: \item  Aliasing\hbreak
                    425:        The aliasing mechanism is augmented so that POP subscriber addresses
                    426:        are diverted to a special delivery mechanism.
                    427:        \MH/ comes with a program, \man popaka(8), which generates the
                    428:        additional information to be put in the mailsystem's alias file.
                    429: \item  Delivery\hbreak
                    430:        A special POP channel (for \MMDFII/) or POP mailer (for \SendMail/)
                    431:        performs the actual delivery (\mh6 supplies both).
                    432:        All it really does is just place the mail in the POP spool area.
                    433: \end{enumerate}
                    434: Clever mailsystem people will note that
                    435: the POP mechanism is really a special case of the more general
                    436: BBoards mechanism.
                    437: \end{itemize}
                    438: These two different philosophies are not compatible on the same POP service
                    439: host: one or the other, but not both, may be run.
                    440: 
                    441: In addition, there is one user-visible difference,
                    442: which the administrator controls the availability of.
                    443: The difference is whether the POP subscriber must supply a password to the POP
                    444: server:
                    445: \begin{itemize}
                    446: \item  ARPA standard method\hbreak
                    447: This uses the standard ARPA technique of sending a username and a password.
                    448: The appropriate programs (\pgm{inc}, \pgm{msgchk}, and possibly \pgm{bbc\/})
                    449: will prompt the user for this information.
                    450: 
                    451: \item  \unix/ remote method\hbreak
                    452: This uses the Berkeley \unix/ reserved port method for authentication.
                    453: This requires that the two or three mentioned above programs be {\em setuid\/}
                    454: to root.
                    455: (There are no known holes in any of these programs.)
                    456: \end{itemize}
                    457: These two different philosophies are compatible on the same POP service host:
                    458: to selectively disable RPOP for hosts which aren't trusted,
                    459: either modify the \file{.rhosts} file in the case of POP subscribers being
                    460: \unix/ logins,
                    461: or zero the contents of network address field of the \man pop(5) file for the
                    462: desired POP subscribers.
                    463: 
                    464: The \pgm{inc} command also has two other switches when \MH/ is enabled for
                    465: POP:
                    466: \switch{pack~file} and \switch{nopack}.
                    467: Normally,
                    468: \pgm{inc} will use the POP to incorporate mail from a POP service host into
                    469: an \MH/ folder (\eg{+inbox}).
                    470: However,
                    471: there are some misguided individuals who prefer to \pgm{msh} to read their
                    472: maildrop.
                    473: By using the \switch{pack~file} option,
                    474: these individuals can direct \pgm{inc} to fetch their maildrop from the POP
                    475: service host and store it locally in the named file.
                    476: As expected, \pgm{inc} will treat the local file as a maildrop,
                    477: performing the appropriate locking protocols.
                    478: 
                    479: \section*     {Rcvmail hooks}
                    480: In order to offer users of \MH/ increated rcvmail hook functionality,
                    481: the \pgm{slocal} program has been upgraded to support the semantics of
                    482: the \MMDFII/ mail-delivery mechanism.
                    483: This means that users of \mh6 can maintain identical \file{.maildelivery}
                    484: files regardless of the underlying transport system.
                    485: See \man mhook(1) for all the details.
                    486: 
                    487: \subsection*   {Field change in rcvpack}
                    488: The \pgm{rcvpack} rcvmail hook now adds the field name \eg{Delivery-Date:}
                    489: instead of \eg{Cron-Date:} to messages it \pgm{pack\/}s.
                    490: 
                    491: \section*     {Other Changes}
                    492: Here's the miscellany:
                    493: 
                    494: \subsection*   {Continuation Lines}
                    495: Alias files used by \MH/,
                    496: display templates used by \pgm{mhl},
                    497: and format files used by \pgm{forw}, \pgm{repl}, and \pgm{scan} all support
                    498: a standard continuation line syntax.
                    499: To continue a line in one of these files,
                    500: simply end the line with the backslash character (`$\backslash$').
                    501: All the other files used by \MH/ are in 822--format,
                    502: so the 822--continuation mechanism is used.%
                    503: \nfootnote{Looking back,
                    504: it would have been best had all files in \MH/ used the 822--format.}
                    505: 
                    506: \subsection*   {Modifications to show}
                    507: The \switch{format}, \switch{noformat}, \switch{pr}, and \switch{nopr}
                    508: options to \pgm{show} have gone away in favor of a more general mechanism.
                    509: The \switch{showproc~program} option tells \pgm{show}
                    510: (or \pgm{next} or \pgm{prev\/}) to use the named program as the \eg{showproc}.
                    511: The \switch{noshowproc} option tells \pgm{show}, et. al.,
                    512: to use the \man cat(1) program instead of a \eg{showproc}.
                    513: As a result, the profile entry \eg{prproc} is no longer used.
                    514: 
                    515: \subsection*   {Front-End to mhl}
                    516: When outputting to a terminal,
                    517: the \pgm{mhl} program now runs the program denoted by the profile entry
                    518: \eg{moreproc}.
                    519: If this entry is not present,
                    520: the default is the UCB \pgm{more} program.
                    521: If the entry is non-empty,
                    522: then that program is spliced between \pgm{mhl} and the user's terminal.
                    523: The author uses the \pgm{less} program as his \eg{moreproc}.
                    524: 
                    525: Of course,
                    526: if \pgm{mhl} isn't outputting to a terminal,
                    527: then \eg{moreproc} is not invoked.
                    528: 
                    529: \subsection*   {Switch change in inc}
                    530: The \switch{ms~ms-file} switch in \pgm{inc} has been changed to
                    531: \switch{file~name} to be more consistent.
                    532: 
                    533: \subsection*   {Complex Expressions in pick}
                    534: The \pgm{pick} command now handles complex boolean expressions.
                    535: 
                    536: \subsection*   {Defaults change in prompter and burst}
                    537: The \switch{prepend} option is now the default in \pgm{prompter}.
                    538: The \switch{noinplace} option is now the default in \pgm{burst}.
                    539: 
                    540: \subsection*   {Interactive option in rmf}
                    541: The \pgm{rmf} program has been changed to support an \switch{interactive}
                    542: switch.
                    543: If given,
                    544: then the user is prompted regarding whether the folder should be deleted.
                    545: If the folder to be removed is not given by the user,
                    546: this switch is defaulted to on.
                    547: 
                    548: \subsection*   {Trusted Mail Interface}
                    549: \MH/ now has an interface for so-called ``trusted mail'' applications.
                    550: Although the modifications to \MH/ to support this are in the public domain,
                    551: the actual library that \MH/ uses is not.
                    552: Contact Professor David J.~Farber ({\sf Farber@UDel\/}) for more information.
                    553: 
                    554: \bibliography{mh6}
                    555: 
                    556: \showsummary
                    557: 
                    558: \end{document}

unix.superglobalmegacorp.com

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