+++ /dev/null
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2//EN">
-<HTML>
-<HEAD><TITLE>MH Change Log</TITLE></HEAD>
-<BODY>
-<PRE>
-
- <B>Changes to</B>
- <B>The RAND MH Message Handling System:</B>
- <B>UCI version MH 6.8</B>
-
-
- John L. Romine
-
- Computing Support Group
- Information and Computer Science
- University of California, Irvine
- Irvine, CA 92717-3425
- Bug-MH@ICS.UCI.EDU
- <A HREF="http://www.ics.uci.edu/~mh/">http://www.ics.uci.edu/~mh/</A>
-
-
- <U>ABSTRACT</U>
-
-
- This document describes the changes to the
- UCI version of the RAND MH system from MH 6.6 to
- this release of MH 6.8. This document is meant to
- supplement, not supersede, the standard MH User's
- manual and MH Administrator's manual.
-
- Comments concerning this documentation should
- be addressed to the mailbox <B>Bug-MH@ICS.UCI.EDU</B>.
- Current information about MH can be obtained from
- the <B>MH Home Page</B> on the World Wide Web at
- <B><A HREF="http://www.ics.uci.edu/~mh/">http://www.ics.uci.edu/~mh/</A></B>.
-
-
-
- <U>ACKNOWLEDGEMENTS</U>
-
- The <U>MH</U> system described herein is based on the original RAND
- <U>MH</U> system. It has been extensively developed (perhaps too
- much so) by Marshall T. Rose and John L. Romine at the
- University of California, Irvine. Einar A. Stefferud, Jerry
- N. Sweet, and Terry P. Domae provided numerous suggestions
- to improve the UCI version of <U>MH</U>.
-
- Of course, a large number of people have helped <U>MH</U>
- along. The list of "<U>MH</U> immortals" is too long to list here.
- For this release, numerous <U>MH-Workers</U> sent in fixes and
- other changes. A handful of courageous <U>MH-Workers</U> volun-
- teered to beta-test these changes; their help is particu-
- larly appreciated.
-
- <U>DISCLAIMER</U>
-
- The Regents of the University of California wish to make it
- known that:
-
- Although each program has been tested by its
- contributor, no warranty, express or implied, is
- made by the contributor or the University of
- California, as to the accuracy and functioning of
- the program and related program material, nor
- shall the fact of distribution constitute any such
- warranty, and no responsibility is assumed by the
- contributor or the University of California in
- connection herewith.
-
- <U>CONVENTIONS</U>
-
- In this document, certain formatting conventions are adhered
- to:
-
- The names of UNIX commands, such as <U>comp</U> are presented
- in <U>italics</U>.
-
- Arguments to programs, such as `msgs' and `-nobell' are
- delimited by single-quotes.
-
- Text that should be typed exactly as-is, such as
- command lines (e.g., "folder -pack"), are delimited by
- double-quotes.
-
- UNIX pathnames and envariables, such as <B>/usr/uci</B> and
- <B>$SIGNATURE</B>, are presented in <B>bold font</B>.
-
-
- <U>CHANGES FOR MH 6.8.4</U>
-
- The MH 6.8.4 release is a minor maintenance release, and
- contains few user-visible changes. The changes consist
- mostly of documentation improvements, minor bug fixes, and
- some portability enhancements for BSD 4.4 and Solaris 2.x
- (contributed changes for HPUX and OSF1 have not yet been
- integrated into this release). This is the current version
- of MH as of February 8, 1996.
-
- <U>Runtime Tailoring</U>
-
- By default <U>post</U> will now give the SMTP <B>HELO</B> command with the
- local hostname. If you specify a hostname with the
- <B>clientname:</B> option in the <U>mtstailor</U> file, <U>post</U> will give the
- <B>HELO</B> command with that name instead. If the argument to the
- <B>clientname:</B> option is empty, no <B>HELO</B> command is given. See
- <U>mh-tailor</U>(5) for more details.
-
- <U>Multi-media Mail</U> & <U>Encryption</U>
-
- A few new PGP support programs can be found in the
- <B>support/general</B> directory. <U>repl</U> supports the `-[no]mime'
- option. See <U>repl</U>(1) for more details.
-
-
- <U>CHANGES FOR MH 6.8.3</U>
-
- The MH 6.8.3 maintenance release contains few user-visible
- changes. Most of the changes are internal to the multi-
- media display program <U>mhn</U> to support RFC 1521 (the new MIME
- standard). This is the current version of MH as of December
- 1, 1993.
-
- <U>Runtime Tailoring</U>
-
- When posting mail using the SMTP, <U>post</U> did not normally send
- the <B>HELO</B> command. This was because <U>SendMail</U> would fail if
- the host name given in the <B>HELO</B> command was the local host.
- Later versions of <U>SendMail</U> will now complain if you omit the
- <B>HELO</B> command.
-
- <U>User Interface Programs</U>
-
- folder The <U>folder</U> command now has `-create' and `-nocreate'
- options. See <U>folder</U>(1) for details.
-
- inc A bug where `-host' would not override the <B>pophost</B>
- as set in the <U>mtstailor</U> file has been fixed. This
- bug was also fixed in <U>msgchk</U>.
-
- mhn The <U>mhn</U> command has several changes: updates for
- conformance with RFC 1521, addition of two caches:
- public and private, addition of two caching poli-
- cies: one for reading and one for writing, support
- for storing multipart entities, and a few bug fixes.
- See <U>mhn</U>(1) for complete details.
-
- <U>CHANGES FOR MH 6.8.2</U>
-
- The MH.6.8.2 patch release contains only internal changes to
- support the BSD 4.4 and 386BSD versions of UNIX. This ver-
- sion of <U>MH</U> was released August 25, 1993, but was not widely
- distributed.
-
- <U>CHANGES FOR MH 6.8.1</U>
-
- The MH.6.8.1 patch release is a maintenance release. This
- is the current released version of <U>MH</U> as of August 20, 1993.
-
- This release includes a small number of bug fixes, a
- few minor enhancements, some changes for the new MIME stan-
- dard, and support for ESMTP (RFC 1425). Support for BSD 4.4
- and 386BSD is planned for the next release.
-
- Many other fixes which have already been received are
- still being merged. If you've sent an update for MH 6.8 to
- <B>Bug-MH@ics.uci.edu</B> and it isn't in this release, it'll prob-
- ably appear in the next release.
-
- <U>Fixes and Enhancements</U>
-
- Many minor documentation corrections were made. There are
- also a few program changes:
-
- mhn The `-cache policy', `-[no]check', and `-[no]pause'
- switches have been added. Some other minor changes
- have been made to comply with the new MIME standard.
- See <U>mhn</U>(1) for complete details.
-
- post When posting mail with SendMail, <U>post</U> will not use the
- <B>ONEX</B> command when it is posting a message with BCCs.
-
- scan <U>scan</U> will now work with big width values.
-
- <U>Format Strings</U>
-
- One new function has been added:
-
- %(profile arg) This function looks up a component in the
- <B>.mh_profile</B> or <B>context</B> files and returns the
- value of that component.
-
- <U>Configuration</U>
-
- Two new configuration options are present:
-
- GCOS_HACK The so-called "gcos" field of the password file
- is used as a last resort to find the user's
- full name (see <U>mh-profile</U>(5) for details).
- Enable this option if your <U>passwd</U>(5) man page
- notes that the `&' character in the "gcos"
- field stands for the login name.
-
- NORUSERPASS Tells <U>MH</U> that your system doesn't have the
- <U>ruserpass</U>(3) routine; <U>MH</U> will include its own
- copy of this routine in its library.
-
-
- <U>CHANGES FOR MH 6.8</U>
-
- This is the current released version of <U>MH</U> as of December
- 14, 1992. This release includes a number of bug fixes and
- internal changes to make the code more portable. Two new
- authentication methods are provided for the POP, and support
- for SVR4 shared libraries is complete.
-
- The major user-visible change in this release is the
- incorporation of support for multi-media mail as specified
- by the Multi-purpose Internet Mail Extensions (<B>MIME</B>)
- RFC 1341. This allows you to include things like audio,
- graphics, and the like, in your mail messages. A new com-
- mand, <U>mhn</U>, has been provided to support <B>MIME</B> and a detailed
- man page is provided in <U>mhn</U>(1).
-
- <U>Documentation</U>
-
- The documentation has some general improvements, and the
- <B>READ-ME</B> document has been re-organized to help <U>MH</U> adminis-
- trators find the appropriate configuration options for their
- system. The <B>Makefile</B>s in the <B>papers/</B> hierarchy have been
- changed to invoke <U>TeX</U> as "tex" (instead of "tex82").
-
- The following new man pages are also available:
-
- <U>mhn</U>(1) <U>mhn</U> helps the user process multi-media mail.
-
- <U>mhparam</U>(1) <U>mhparam</U> lets the user extract information from
- the <U>MH</U> profile.
-
- <U>popauth</U>(8) the APOP database administration program (see
- below).
-
- <U>popi</U>(1) the POP initiator (see below).
-
- <U>slocal</U>(1) fully documents <U>slocal</U>. The <U>mhook</U>(1) man page
- now documents only the <U>MH</U> receive-mail hooks.
-
- <U>Internal Changes</U>
-
- The <U>MH</U> source code is in the process of being cleaned up to
- make pedantic ANSI C compilers happy. Occurrences of "NULL"
- have been replaced by "0" where appropriate. Extra tokens
- after "#else" and "#endif" have been put inside comments
- (this is still in progress). The code should now compile
- cleanly on many more systems, specifically, more variants of
- SVR4.
-
- The version of <B>tws/dtimep.c</B> which was included in MH
- 6.7.2 was incompatible with the <U>lex</U> library on some systems,
- and has been removed.
-
- A bug in the handling of blind lists inside alias files
- has been fixed.
-
- <U>Post Office Protocol</U>
-
- There were three new options added to the POP.
-
- APOP This option indicates that the POP daemon will support
- the non-standard <B>APOP</B> command which provides a
- challenge-based authentication system using the <B>MD5</B>
- message digest algorithm.
-
- This option also causes the <U>popauth</U> program to be
- installed, which allows the administrator to
- manipulate the <B>APOP</B> authorization database.
-
- KPOP Support for KERBEROS with POP. This code builds <U>popd</U>,
- <U>inc</U> and <U>msgchk</U> to support only the "kpop" protocol.
- This code is still expiremental, but is available for
- those sites wishing to test it.
-
- MPOP This option indicates that the POP daemon will support
- the non-standard <B>XTND SCAN</B> command which provides per-
- formance enhancements when using the POP over low-
- speed connections.
-
- This option also causes an interactive POP client pro-
- gram, <U>popi</U>, to be compiled and installed. A man page
- for the <U>popi</U> program is also provided. This option
- requires the configuration to have "bboards: pop".
-
- The APOP and MPOP non-standard POP facilities are documented
- in <U>The Internet Message</U> (ISBN 0-13-092941-7), a book by
- Marshall T. Rose. For more details, see <B>support/pop/pop-</B>
- <B>more.txt</B> and the <U>Administrator's Guide</U>. The APOP option
- peacefully co-exists with the standard POP, KPOP completely
- replaces the standard POP, and MPOP requires "bboards: pop".
-
- <U>File Locking</U>
-
- The file locking code has been cleaned up to support three
- kinds of kernel-level file locking. As appropriate for your
- system, include the LOCKF, FCNTL or FLOCK option. For more
- details, see <U>mh-tailor</U>(5).
-
- Configuration Directives
-
- A number of new configuration directives have been added or
- changed. The full details are given in the <B>READ-ME</B>.
-
- cp: The command used to install new files if not
- "cp".
-
- ln: The command used to link files together in the
- source tree if not "ln".
-
- mts: Full support for ZMAILER has been added.
-
- popdir: The directory where <U>popd</U> will be installed if not
- <B>/usr/etc</B>.
-
- regtest: Set to "on" to prevent the hostname and compile
- date from being included in <U>MH</U> binaries.
-
- sharedlib: You may now specify "sun4" or "sys5" (for SVR4)
- shared libraries.
-
- signal: Specifies the base type of the function returned
- by <U>signal</U>(). This was previously defined with
- "options TYPESIG".
-
- Several `-D' options to <U>cc</U> have been added or changed:
-
- APOP Authenticated POP (see above).
-
- AUX Support for A/UX systems.
-
- DBMPWD The DBM option has been renamed DBMPWD.
-
- HESIOD Support for the HESIOD name server.
-
- KPOP KERBEROS POP (see above).
-
- LOCALE Support for local characters sets; uses the <U>set-</U>
- <U>local</U>() function.
-
- MAILGROUP Makes <U>inc</U> set-group-id. You may need this option
- if your <B>/usr/spool/mail</B> is not world-writeable.
-
- MIME Multi-media mail.
-
- MPOP Mobile POP (see above).
-
- MSGID Enables <U>slocal</U> to detect and surpress duplicate
- messages.
-
- OSF1 Support for DEC OSF1 systems. May be incomplete.
-
- RENAME Include this option if your system has a <U>rename</U>()
- system call.
-
- SVR4 Support for System 5 Release 4 or newer systems.
-
- TYPESIG This option has been dropped. See `signal'
- above.
-
- UNISTD Include this option if your system has the
- include file <B><unistd.h></B>.
-
- VSPRINTF Include this option if your system has the
- <U>vsprintf</U>() library routine; otherwise, _<U>doprnt</U>()
- will be used.
-
- YEARMOD Forces the <U>mh-format</U> `year' function to return
- 2-digit values. Use this option during a brief
- transition period if you have local <U>mh-format</U>
- files which need to be converted to support 4-
- digit years.
-
- <U>FUNCTIONAL CHANGES</U>
-
- In addition to the configuration changes mentioned above, a
- number of functional changes have been made to the system.
- Many programs have new features added and a few new programs
- have are provided. Each command's manual page gives complete
- information about the its operation. Here is a short sum-
- mary of the changes.
-
- <U>MH Sequences</U>
-
- A larger number of user-defined sequences are available.
- Previously, this number had been 10. On 32-bit systems, 26
- user-defined sequences are available.
-
- <U>Profile Components</U>
-
- <U>MH</U> programs will now complain if the <B>.mh_profile</B> does not
- end in a newline. Also, one enhancement and one new profile
- component are provided:
-
- Aliasfile: Multiple filenames may now be given.
-
- Inbox: New; the default folder (for <U>inc</U>, etc.) if not
- "inbox".
-
- <U>Format Strings</U>
-
- A few minor bugs were fixed in format string handling, and a
- few new features were added. See <U>mh-format</U>(5) for complete
- details.
-
- Addresses An attempt is made to decipher X.400
- RFC 987-style addresses.
-
- Comments Comments may be added to <U>mh-format</U> files; a
- comment begins with the 2-character sequence
- "%;", and ends with an un-escaped newline.
-
- %(modulo n) The `modulo' function escape has been added.
-
- %(year{date}) The date parser has been enhanced to
- understand more illegal date formats; `year'
- now returns a 4-digit number.
-
- <U>User Interface Programs</U>
-
- A number of <U>MH</U> commands have minor changes:
-
- ali The output with `-user -list' was changed to match
- the output with `-nouser -list'.
-
- burst Will no longer drop the last message of a digest.
-
- inc Accepts the `-apop' switch for authenticated POP
- (see above); will attempt to detect write errors
- (e.g., no space left on device) when incorporating
- mail; no longer replaces newline characters with
- NULLs.
-
- folder The `-noprint' option was broken and has been
- dropped.
-
- forw Supports `-mime' to use MIME-style multi-part mes-
- sages.
-
- mhl Will no longer put an extra space at the end of
- the `%{text}' in a formatfield.
-
- mhn New; manipulates multi-media (MIME) messages; a
- detailed man page is provided.
-
- mhparam New; reads the <U>MH</U> profile (and context) and writes
- the values of the specified components on the
- standard output; useful in programmatic con-
- structs.
-
- msgchk Supports `-apop' (see above).
-
- packmbox New; packs an <U>MH</U> folder into a UUCP-style mailbox.
-
- popi New; a client-side POP initiator; available only
- if you built <U>MH</U> with the MPOP option (see above).
-
- refile A bug where the `rmmproc' did not remove all
- specified message files has been fixed.
-
- scan The `-file' option is fully supported and will no
- longer complain about empty folders.
-
- send Supports `-mime' and `-split' to split large mes-
- sages into multiple partial messages using MIME.
-
- <U>Support Programs</U>
-
- fmtdump Can now read a format file, or a format string
- given on the command line.
-
- popauth New; manages the APOP authorization database (see
- above).
-
- sendmail The <U>sendmail</U> replacement will be installed only if
- your `mts' setting uses the `/smtp' option.
-
- slocal A new man page for <U>slocal</U> is available; the new
- `mbox' action is available to write a file in
- <U>packf</U> format; a bug where extra `>' characters
- were written to MMDF-style maildrops has been
- fixed; if compiled with the MSGID option, can
- detect and suppress reception of duplicate mes-
- sages.
-
- viamail New; bundles a directory (like <U>shar</U>) and sends it
- through multi-media mail.
-
-
- <U>CHANGES FOR MH 6.7.2</U>
-
- The MH.6.7.2 patch release is a maintenance release. This
- is the current released version of <U>MH</U> as of February 1,
- 1992.
-
- This release now supports the NCR Tower running SYS5R4.
- The WP changes installed in MH.6.7.0 have been removed.
-
- <U>Shared Libraries</U>
-
- Support for SYS 5 shared libraries is in progress.
-
- Support for Sun OS 4.0 shared libraries had been
- improved. The <U>MH</U> library has been modified to move initial-
- ized data into a data definition file. The shared library
- will now consist of a <B>libmh.so</B> and <B>libmh.sa</B> file. The
- shared library version number will no longer track the <U>MH</U>
- patch release number, and its numbering begins with version
- `1.1' with this release.
-
- <U>Replacement SendMail</U>
-
- Since many standard system programs expect to post mail by
- invoking <B>/usr/lib/sendmail</B>, a minimal replacement <U>SendMail</U>
- is provided in this release. This replacement is meant to
- be installed on (e.g., diskless) client workstations which
- post mail using SMTP, and do not run a message transport
- system. It will call <U>post</U> to post mail; be sure you have
- configured <U>MH</U> with the `/smtp' mts option. This sendmail
- replacement is installed in your <U>MH</U> etc directory, and you
- should link <B>/usr/lib/sendmail</B> to it.
-
- <U>Format Strings</U>
-
- A manual page for the <U>fmtdump</U> format string disassembler is
- supplied, and some new format functions were added:
-
- folder In <U>scan</U>, this component escape contains the name of
- the current folder. It is not defined for other <U>MH</U>
- commands.
-
- getenv This function escape returns the value of an
- environment variable.
-
- There will be some additional changes in these routines
- in the next patch release.
-
- <U>Other Bug Fixes and Enhancements</U>
-
- In addition to some other minor enhancements, some bugs were
- fixed which in general were not user-visible:
-
- Blind lists Users may now specify RFC822 address groups in
- their alias files. These groups are
- implemented by <U>MH</U> as blind lists.
-
- date parsing A number of sites have brain-damaged versions
- of <B>lex</B>. <U>MH</U> will now come with the date parser
- already run through lex.
-
- mark A bug dealing with <U>mark</U> and the sequence named
- `cur' is fixed. This was previously a problem
- for mh-e users.
-
- MH.doc The <U>MH</U> nroff version of the manual no longer
- contains teletype escape sequences.
-
- scan Can now handle headers as long as 512 bytes.
-
- Signals <U>MH</U> programs will no longer catch the <B>HUP</B> and
- <B>TERM</B> signals while waiting for a sub-process.
- This was causing hung processes when your
- terminal line was was dropped unexpectedly.
-
- Signature If your signature is not defined, <U>MH</U> will use
- the value of the gecos field of your
- <B>/etc/passwd</B> entry as your signature.
-
- version.sh A bug in the <B>awk</B> script in <B>config/version.sh</B>
- was fixed.
-
-
- <U>CHANGES FOR MH 6.7.1a</U>
-
- The MH.6.7.1a patch was made available on January 25, 1991
- for limited distribution only. (This release had some known
- bugs, and so was not widely distributed.) This release
- incorporates several new features of particular note to
- users of sequences and format strings, as well as some gen-
- eral documentation improvements. There are a few minor
- enhancements and internal bug fixes also. Complete documen-
- tation of these changes is given in the individual manual
- pages, and the <B>READ-ME</B> file.
-
- <U>Message Sequences</U>
-
- A new manual page, <U>mh-sequence</U> (5), has been added. This
- manual page attempts to completely document the syntax and
- semantics of <U>MH</U> message sequence specifications.
-
- A powerful new feature is the ability to specify mes-
- sage ranges with user-defined sequences. The specification
- "name:n" may be used, and it designates up to the first `n'
- messages (or last `n' messages for `-n') which are
- elements of the user-defined sequence `name'.
-
- The message specifications "name:next" and "name:prev"
- may also be used, and they designate the next or previous
- message (relative to the current message) which is an ele-
- ment of the user-defined sequence `name'. The specifica-
- tions "name:first" and "name:last" are equivalent to
- "name:1" and "name:-1", respectively. The specification
- "name:cur" is not allowed (use just "cur" instead).
-
- These specifications allow the user to step through a
- sequence with a command like "show name:next".
-
- <U>Format Strings</U>
-
- <U>MH</U> format strings now support an if-then-elseif-else clause
- (the `elseif' is new). This will make format strings with
- multi-case conditions somewhat less complex.
-
- A new format function `addr' had been added. This
- function takes an address header name as its argument, and
- returns a rendering of the address contained in that header
- as "user@host" or "host!user".
-
- Format widths now may be specified as a negative
- number. This causes the output to be right-justified within
- the format width.
-
- <U>Other Changes</U>
-
- Along with a few minor enhancements, some bugs were fixed
- which in general were not user-visible:
-
- fmtdump This new program produces an pseudo-language
- representation of an <U>MH</U> format file, vaguely
- reminiscent of assembly language. While this
- output format is not explicitly documented, it can
- still be useful when debugging <U>MH</U> format files.
-
- refile Now takes a `-[no]rmmproc' switch. This makes it
- easier to avoid loops when your "rmmproc" calls
- <U>refile</U>.
-
- slocal A problem with the UUCP-style mailboxes, the
- `RPATHS' configuration option, and the "Return-
- Path:" header was fixed.
-
- sortm Will ensure that no messages are lost if it is
- interrupted.
-
- whatnow Will now tell you where it is leaving the draft,
- when interrupted in the initial edit. Previously
- the draft was simply unlinked.
-
- <U>Compilation Options</U>
-
- LOCKF This option causes <U>MH</U> to use the <B>lockf()</B> system
- call for locking (if available), instead of
- <B>flock()</B>.
-
-
- <U>CHANGES FOR MH 6.7.1</U>
-
- The MH.6.7.1 patch release is a maintenance release, and as
- such, provides few changes from the previous release. This
- is the current released version of <U>MH</U> as of December 14,
- 1990.
-
- <U>User-Visible Changes</U>
-
- The major change in this release is to the POP daemon
- (popd). In <U>MH</U> 6.7, it was changed to be able to read both
- UUCP and MMDF-style mailboxes. This did not work as
- reported. The code has now been changed to parse MMDF-style
- mailboxes if you are configuring MH to run with MMDF as your
- message transport system. Otherwise, UUCP-style mailboxes
- are expected.
-
- Since there are number of client programs available for
- only the POP2 protocol instead of POP3, popd has been
- updated to support both protocols. This is a major win. If
- you are compiling with POP turned on, add the `POP2' option
- to your <U>MH</U> config file, and the POP daemon will respond to
- POP2 or POP3 commands. If you're using POP, there's no rea-
- son not to include this option; it does not affect the
- existing support for POP3.
-
- <U>Internal Changes</U>
-
- Some bugs were fixed which in general were not user-visible:
-
- context Errors when writing out sequences are detected
- correctly.
-
- inc No longer inserts extra blank lines into
- messages.
-
- mh-format A nil pointer bug in the address parser was
- fixed.
-
- repl, etc. The malloc/free problem has been fixed.
-
- rmf A spelling error in the `-nointeractive' switch
- has been corrected.
-
- rcvtty Will not print the message size if not available
- (i.e., zero).
-
- send/post Illegal signatures (those containing unquoted
- "."s) will be quoted.
-
-
- <U>GENERAL CHANGES FOR MH 6.7.0</U>
-
- The author is pleased to announce that there are very few
- user-visible changes to <U>MH</U> 6.7 from the previous <U>MH</U> 6.6 dis-
- tribution. The majority of development was in the form of
- bug fixes and slight enhancements. In addition, this
- release is slightly faster than the previous release. With
- a few minor exceptions, it is backward-compatible with the
- previous release. <U>MH</U> 6.7.0 is the current released version
- of <U>MH</U> as of April 12, 1990.
-
- The changes were made mainly to generalize the source
- code to be compatible with a larger range of systems and
- compilers. There were many small changes to add declara-
- tions for ANSI C compliance. The System 5 support has been
- brought up to SYS5 R3, and there is support for Sun OS 4.0.
-
- <U>User-Visible Changes</U>
-
- Here a quick summary of the changes that were made which are
- not backward-compatible with the previous release of <U>MH</U>:
-
- repl The `-format' and `-noformat' switches have not been
- functional since <U>MH</U> 5, and have been removed. Any
- users who have these switches in their <B>.mh_profile</B>,
- will have to remove them.
-
- sortm Previously, in most cases <U>sortm</U> would fill-in any
- gaps in the numbering of a folder, by renumbering the
- messages starting with `1'. This will no longer
- occur; for this behavior, use "folder -pack".
-
-
- <U>Using Aliases</U>
-
- A new profile entry `Aliasfile:' has been added. The <U>ali</U>,
- <U>send</U>, and <U>whom</U> programs will look for this profile entry and
- treat it as they would an argument to `-alias'. This should
- make it easier for novice <U>MH</U> users to begin using aliases.
-
-
- <U>Reading Network News</U> & <U>BBoards</U>
-
- The UCI BBoards facility can read local BBoards, and if com-
- piled with the `bboards: pop' and `pop: on' options, can
- also read remote BBoards using the Post Office Protocol (POP
- ver. 3). With this release, <U>MH</U> can instead be compiled to
- read the Network News (i.e., USENET) using the Network News
- Transfer Protocol (NNTP).
-
- This capability is enabled by compiling <U>MH</U> with the
- `bboards: nntp' and `pop: on' options. Unfortunately, read-
- ing remote BBoards via the POP and reading the Network News
- via the NNTP are mutually exclusive options.
-
- To support the NNTP, a new module, <B>uip/pshsbr.c</B>, is
- compiled and loaded into <U>bbc</U> and <U>msh</U> instead of
- <B>uip/popsbr.c</B>. The default BBoard is changed from "system"
- to "general" for the NNTP.
-
- When reading BBoards, <U>bbc</U> will first look for local
- BBoards, and then contact the NNTP server to read the Net-
- work News. The location of the NNTP server should be speci-
- fied with the `nntphost:' entry in the <B>mtstailor</B> file (see
- the <U>MH</U> Administrator's Guide for details), or may be speci-
- fied on the command line with the `-host' switch.
-
-
- <U>Format Strings</U>
-
- The manual page <U>mh-format</U> (5) has been rewritten to give a
- better explanation of how to write format strings, and how
- they are interpreted by <U>MH</U>. A line-by-line description of
- the default <U>repl</U> form file (<B>replcomps</B>) is now included in
- that manual page.
-
- Some new format functions were added, and others were
- augmented:
-
- trim Strips any leading and trailing white-space from
- the current string value.
-
- date2local Will coerce the date to the local timezone.
-
- date2gmt Will coerce the date to GMT.
-
- divide Divides the current numeric value by its
- argument. This could be useful for building
- <U>scan</U> format strings which print large message
- sizes in "Kb" or "Mb".
-
- friendly If the address field cannot be parsed, this
- function will return the text of the address
- header, instead of a null string.
-
- szone A flag indicating whether the timezone was
- explicit in the date string.
-
- <U>PROGRAM CHANGES</U>
-
- In addition to the general changes mentioned above, many
- programs have specific new features added, either by new
- switches or by expanded functionality. Each command's
- manual page gives complete information about its new
- options. Here is a short summary.
-
- <U>User Interface Programs</U>
-
- anno Accepts a `-nodate' switch which inhibits the date
- annotation, leaving only the body annotation.
-
- folder When invoked with the `-pack' switch and the new
- `-verbose' switch, <U>folder</U> will give information
- about the actions taken to renumber the folder.
-
- On most systems, <U>folder</U> can now create any
- non-existing parent folders of a new sub-folder.
-
- forw When making digests, <U>forw</U> will put the issue and
- volume numbers in addition to the digest list
- name, in the digest trailer.
-
- inc Detects NFS write failures, and will not zero your
- maildrop in that event.
-
- msh Supports a variant of the new <U>sortm</U>.
-
- prompter Considers a period on a line by itself to signify
- end-of-file when the `-doteof' switch is speci-
- fied.
-
- repl The `-[no]format' switches have not been used
- since <U>MH</U> 5 and have been deleted. <U>repl</U> will now
- find filter files in the <U>MH</U> library area.
-
- scan With the `-file msgbox' switch, <U>scan</U> can list a
- <U>packf</U>'d-format file directly (without using <U>msh</U>).
-
- Lists messages in reverse order with the
- `-reverse' switch. This should be considered a
- bug.
-
- sortm Now has the options: `-textfield field',
- `-notextfield', `-limit days', and `-nolimit'.
-
- With these options, <U>sortm</U> can be instructed to
- sort a folder based on the contents of an arbi-
- trary header such as "subject".
-
- <U>sortm</U> minimizes renaming messages, and will no
- longer arbitrarily pack folders; for this
- behavior, use "folder -pack".
-
- whatnow Deletes the draft by renaming it with leading
- comma, instead of unlinking it.
-
- <U>MH Support Programs</U>
-
- The following support programs also have changes or
- enhancements:
-
- mhl Will now accept a format string on any component,
- not just on addresses and dates.
-
- popd Will use <U>shadow</U> passwords if compiled with the <B>SHA-</B>
- <B>DOW</B> option. It can now also read UUCP-style mail-
- drops directly.
-
- rcvtty If given no arguments, <U>rcvtty</U> will produce a <B>scan</B>
- listing as specified by a format string or file; a
- default format string is used if one is not speci-
- fied.
-
- Before the listing is written to the users terminal,
- the terminal's bell is rung and a newline is output.
- The `-nobell' and the `-nonewline' options inhibit
- these functions.
-
- <U>rcvtty</U> will obey terminal write notification set by
- <U>mesg</U>. With the `-biff' switch, <U>rcvtty</U> will also
- obey the mail notification status set by <U>biff</U>.
-
- On <B>BSD43</B> systems, as with <U>write</U>, <U>rcvtty</U> will be
- installed set-group-id to the group "tty".
-
- slocal Understands UUCP-style "From " lines and will write
- output files using this format if appropriate.
- Before invoking a delivery program, <U>slocal</U> will
- strip such lines unless compiled with the <B>RPATHS</B>
- option, in which case it will will convert such
- lines into "Return-Path:" headers.
-
- <U>slocal</U> has a new result code "N", for use in <B>.mail-</B>
- <B>delivery</B> files. With this result code, <U>slocal</U> will
- perform the action only if the message has not been
- delivered and the previous action succeeded. This
- allows for performing an action only if multiple
- conditions are true.
-
- <U>DOCUMENTATION</U>
-
- Several of the older <U>MH</U> papers have been difficult to format
- because they depended on an older version of PhDTeX which
- was not supplied. These papers have been updated, and some
- TeX library files are supplied in <B>papers/doclib/</B>, so that
- these papers may be generated on any system with TeX.
-
- Many of the manual pages have been revised to include
- documentation of new command options, and some have been
- expanded to give more detail. All are now slightly refor-
- matted at installation time to make them more compatible
- with programs like <U>makewhatis</U>.
-
-
- <U>MH ADMINISTRATION</U>
-
- This section describes changes in configuring, compiling and
- installing <U>MH</U> 6.7 and should not be of interest to casual <U>MH</U>
- users. The <B>READ-ME</B> file has been considerably revised and
- expanded to give more detail about the configuration and
- compilation options which have been included in this
- release. Some compilation options have been removed, and
- many new options have been added.
-
- All <U>MH</U> <B>Makefile</B>s have been updated to work around some
- incompatibilities introduced in newer versions of <U>make</U>. <U>MH</U>
- programs will no longer be installed with the sticky-bit
- turned on.
-
- Reading this section not a substitute for carefully
- reading the <B>READ-ME</B> file before attempting to compile <U>MH</U>
-
-
- <U>Bug Fixes</U>
-
- Some bugs were fixed which in general were not user-visible:
-
- address parser Fixed to allow use of the "AT" domain, and
- some minor bugs were fixed pertaining to
- address groups.
-
- date parser Improved to accept more forms of illegal
- dates. Military timezones were removed.
-
- dynamic memory Many problems with corruption of the dynamic
- memory pool have been fixed.
-
- locking Will open files for write, if necessary to
- enable locking.
-
- nil pointers All reported nil pointer problems have been
- fixed.
-
- replcomps The "In-Reply-To:" header had quotes added
- around the date field to comply with RFC822.
-
- <U>White Pages</U>
-
- If <U>MH</U> is compiled with the <B>WP</B> option, <U>send</U> recognizes an
- address between "<<" and ">>" characters such as:
-
- To: << rose -org psi >>
-
- to be a name meaningful to a whitepages service. In order
- to expand the name, <U>send</U> must be invoked interactively
- (i.e., not from <U>push</U>). For each name, <U>send</U> will invoke a
- command called <U>fred</U> in a special mode asking to expand the
- name.
-
- To get a copy of the white pages service, contact
- wpp-manager@psi.com.
-
- <U>Configuration Options</U>
-
- Some configuration options have been added or changed:
-
- cc To specify an alternate C compiler.
-
- ccoptions Defaults to `-O'.
-
- bboards May now be defined as "on", "off", "pop", or
- "nntp".
-
- bbdelivery Determines whether the bboard delivery agent and
- library files should be installed.
-
- lex To specify an alternate version of <U>lex</U>.
-
- mailgroup If defined, <U>inc</U> will be made set-group-id to
- this group.
-
- sharedlib For <B>SUN40</B> systems; if "on", makes <B>libmh.a</B> into a
- shared library.
-
- slibdir The directory where the above shared library
- should be installed.
-
- sprintf Set this to "int" if that's what your
- <U>sprintf</U> (3) library routine returns.
-
- <U>Compilation Options</U>
-
- For different configurations, several `-D' options to <U>cc</U>
- have been added or changed:
-
- BERK This disables the address and date parsing rou-
- tines. If you want to do much with
- <U>mh-format</U> (5), don't enable this.
-
- BSD43 Will make <U>rcvtty</U> set-group-id to the group
- "tty".
-
- DBM For sites with a dbm-style password file (such
- as with Yellow Pages), <U>MH</U> will not read the
- entire passwd file into a cache. At one site
- that runs YP on a large passwd file, using this
- showed a 6:1 performance improvement.
-
- NETWORK This option has been deleted. See <B>SOCKETS</B>.
-
- NOIOCTLH Tells <U>MH</U> not to include the file <B>sys/ioctl.h</B>.
- Use this if this file is not present on your
- system.
-
- NTOHLSWAP On systems with TCP/IP networking, <U>msh</U> will try
- to use the <B>ntohl()</B> macro from the file
- <B>netinet/in.h</B> to byte-swap the binary map files
- it writes.
-
- SENDMAILBUG Some versions of <U>sendmail</U> return a <B>451</B> (failure)
- reply code when they don't mean to indicate
- failure. This option considers that code to be
- equivalent to <B>250</B> (OK).
-
- SHADOW Causes <U>popd</U> to read the file <B>/etc/shadow</B> for
- encrypted passwords instead of <B>/etc/passwd</B>. Use
- this if you have a shadow password file (such as
- on newer versions of SYSTEM 5).
-
- SOCKETS Enable this if you are on a non-BSD system with
- a socket interface for TCP/IP networking compa-
- tible with 4.2BSD UNIX.
-
- SUN40 Use on Suns running Sun OS 4.0 and later.
-
- SYS5 This option has been updated to refer to SYS5 R3
- and later systems.
-
- SYS5DIR Use this if your system uses "struct dirent"
- instead of "struct direct". This should be true
- for systems based on SYS5 R3 and later.
-
- TYPESIG Defines the base type for the <U>signal</U> system
- call. This defaults to "int", but should be
- defined as "void" if appropriate for your sys-
- tem.
-
- WP Enables support for the White Pages service.
-
- <U>Installation</U>
-
- <U>MH</U> will now explicitly set the protection mode on every file
- it installs.
-
- Previously any existing file installed by <U>MH</U> would be
- backed up into the source tree, and then overwritten. Now,
- a few system-dependent files will not be overwritten, and
- your changes will have to be merged in by hand. See the
- <B>READ-ME</B> file for more details.
-
-</PRE>
-</BODY>
-</HTML>