1 .\" @(#)$Id: mh-changes.ms,v 1.33 1996/02/08 19:15:52 jromine Exp $
2 .\" Standard -ms macros
3 .\" with the following changes
6 .\" remember to update date in text below
13 .\" .EH ''Changes to MH 6.7'%'
14 .\" .OH ''Changes to MH 6.7'%'
15 .ds LH Changes to MH 6.8
21 The RAND MH Message Handling System:
27 Computing Support Group
28 Information and Computer Science
29 University of California, Irvine
30 Irvine, CA 92717\-3425
32 http://www.ics.uci.edu/~mh
35 This document describes the changes to the
36 UCI version of the RAND MH system from MH 6.6
37 to this release of MH 6.8.
38 This document is meant to supplement,
40 the standard MH User's manual and MH Administrator's manual.
42 Comments concerning this documentation should be addressed to the
43 mailbox \fBBug\-MH@ICS.UCI.EDU\fP.
44 Current information about MH can be obtained from the
45 \fBMH Home Page\fP on the World Wide Web at
46 \fBhttp://www.ics.uci.edu/~mh\fP.
51 The \fIMH\fP system described herein is
52 based on the original RAND \fIMH\fP system.
53 It has been extensively developed (perhaps too much so) by Marshall T. Rose
54 and John L. Romine at the University of California, Irvine.
55 Einar A. Stefferud, Jerry N. Sweet,
56 and Terry P. Domae provided numerous suggestions
57 to improve the UCI version of \fIMH\fP.
60 a large number of people have helped \fIMH\fP along.
61 The list of \*(lq\fIMH\fP immortals\*(rq is too long to list here.
62 For this release, numerous \fIMH\-Workers\fP sent in fixes and other
63 changes. A handful of courageous \fIMH\-Workers\fP volunteered
64 to beta-test these changes; their help is particularly appreciated.
69 The Regents of the University of California wish to make it known that:
71 Although each program has been tested by its contributor,
72 no warranty, express or implied,
73 is made by the contributor or the University of California,
74 as to the accuracy and functioning of the program
75 and related program material,
76 nor shall the fact of distribution constitute any such warranty,
77 and no responsibility is assumed by the contributor
78 or the University of California in connection herewith.
85 certain formatting conventions are adhered to:
89 commands, such as \fIcomp\fP
90 are presented in \fIitalics\fP.
92 Arguments to programs, such as `msgs' and `\-nobell' are
93 delimited by single-quotes.
95 Text that should be typed exactly as-is, such as
96 command lines (e.g., \*(lqfolder \-pack\*(rq),
97 are delimited by double-quotes.
100 pathnames and envariables,
101 such as \fB/usr/uci\fP and \fB$SIGNATURE\fP,
102 are presented in \fBbold font\fP.
104 .ds LH Changes for MH 6.8.4
109 The MH 6.8.4 release is a minor maintenance release,
110 and contains few user-visible changes.
111 The changes consist mostly of documentation improvements,
112 minor bug fixes, and some portability enhancements
113 for BSD 4.4 and Solaris 2.x
114 (contributed changes for HPUX and OSF1 have not yet
115 been integrated into this release).
116 This is the current version of MH as of February 8, 1996.
121 \fIpost\fP will now give the SMTP \fBHELO\fP command with
123 If you specify a hostname with the \fBclientname:\fP option
124 in the \fImtstailor\fP file,
125 \fIpost\fP will give the \fBHELO\fP command with that name instead.
126 If the argument to the \fBclientname:\fP option is empty,
127 no \fBHELO\fP command is given.
128 See \fImh-tailor\fP\|(5) for more details.
130 Multi-media Mail & Encryption
132 A few new PGP support programs can be found in
133 the \fBsupport/general\fP directory.
134 \fIrepl\fP supports the `\-[no]mime' option. See
135 \fIrepl\fP\|(1) for more details.
137 .ds LH Changes for MH 6.8.3
139 .ds CF December 1, 1993
143 The MH 6.8.3 maintenance release contains few user-visible
144 changes. Most of the changes are internal to the
145 multi-media display program \fImhn\fP to support
146 RFC 1521 (the new MIME standard).
147 This is the current version of MH as of December 1, 1993.
151 When posting mail using the SMTP,
152 \fIpost\fP did not normally send the \fBHELO\fP command.
153 This was because \fISendMail\fP would fail
154 if the host name given in the \fBHELO\fP command was the local host.
156 of \fISendMail\fP will now complain if you omit the \fBHELO\fP
159 User Interface Programs
160 .IP folder \w'msgchk'u+2n
161 The \fIfolder\fP command now has `\-create' and `\-nocreate'
162 options. See \fIfolder\fP\|(1) for details.
164 A bug where `\-host' would not override the \fBpophost\fP
165 as set in the \fImtstailor\fP file has been fixed.
166 This bug was also fixed in \fImsgchk\fP.
168 The \fImhn\fP command has several changes:
169 updates for conformance with RFC 1521,
170 addition of two caches: public and private,
171 addition of two caching policies: one for reading and one for writing,
172 support for storing multipart entities, and
173 a few bug fixes. See \fImhn\fP\|(1) for complete details.
177 The MH.6.8.2 patch release contains only
178 internal changes to support the BSD 4.4
179 and 386BSD versions of
183 This version of \fIMH\fP
184 was released August 25, 1993, but was not widely distributed.
188 The MH.6.8.1 patch release is a maintenance
190 This is the current released version of \fIMH\fP
191 as of August 20, 1993.
193 This release includes a small number
194 of bug fixes, a few minor enhancements, some changes
195 for the new MIME standard, and support for ESMTP (RFC 1425).
196 Support for BSD 4.4 and 386BSD is planned for the next
199 Many other fixes which have already been received
200 are still being merged.
201 If you've sent an update for MH 6.8 to \fBBug-MH@ics.uci.edu\fP
202 and it isn't in this release,
203 it'll probably appear in the next release.
205 Fixes and Enhancements
207 Many minor documentation corrections were made.
208 There are also a few program changes:
210 The `\-cache\0policy', `\-[no]check', and `\-[no]pause'
211 switches have been added. Some other minor changes have
212 been made to comply with the new MIME standard.
213 See \fImhn\fP\|(1) for complete details.
215 When posting mail with SendMail, \fIpost\fP will
216 not use the \fBONEX\fP command when it is posting
219 \fIscan\fP will now work with big width values.
223 One new function has been added:
224 .IP "%(profile arg)" \w'XXprofileXargX'u+2n
225 This function looks up a component in the
226 \fB\&.mh\(ruprofile\fR or \fBcontext\fP files
227 and returns the value of that component.
231 Two new configuration options are present:
232 .IP GCOS_HACK \w'NORUSERPASS'u+2n
233 The so-called \*(lqgcos\*(rq field of the password file is
234 used as a last resort
235 to find the user's full name (see \fImh-profile\fP\|(5) for details).
237 if your \fIpasswd\fP\|(5) man page notes that the `&'
238 character in the \*(lqgcos\*(rq field stands for the login name.
240 Tells \fIMH\fR that your system doesn't have the
241 \fIruserpass\fP\|(3) routine;
242 \fIMH\fR will include its own copy of this
243 routine in its library.
244 .ds LH Changes for MH 6.8
246 .ds CF December 14, 1992
250 This is the current released version of \fIMH\fP
251 as of December 14, 1992. This release includes a number
252 of bug fixes and internal changes to make the code more
254 Two new authentication methods are provided for the POP,
255 and support for SVR4 shared libraries is complete.
257 The major user-visible change in this release is the incorporation
258 of support for multi-media mail as specified by the
259 Multi-purpose Internet Mail Extensions (\fBMIME\fP)
261 This allows you to include things like audio,
262 graphics, and the like, in your mail messages.
263 A new command, \fImhn\fP,
264 has been provided to support \fBMIME\fP and
265 a detailed man page is provided in \fImhn\fP\|(1).
269 The documentation has some general improvements, and
270 the \fBREAD-ME\fP document has been re-organized
271 to help \fIMH\fP administrators find the appropriate
272 configuration options for their system.
273 The \fBMakefile\fPs in the \fBpapers/\fP hierarchy have
274 been changed to invoke \fITeX\fP as
275 \*(lqtex\*(rq (instead of \*(lqtex82\*(rq).
277 The following new man pages are also available:
278 .IP \fImhn\fP\|(1) \w'\fIpopauth\fP\|(8)'u+2n
279 \fImhn\fP helps the user process multi-media mail.
280 .IP \fImhparam\fP\|(1)
281 \fImhparam\fP lets the user extract information from
282 the \fIMH\fP profile.
283 .IP \fIpopauth\fP\|(8)
284 the APOP database administration program (see below).
286 the POP initiator (see below).
287 .IP \fIslocal\fP\|(1)
288 fully documents \fIslocal\fP. The \fImhook\fP(1) man page now
289 documents only the \fIMH\fP receive-mail hooks.
293 The \fIMH\fP source code is in the process of being
294 cleaned up to make pedantic ANSI C compilers happy.
295 Occurrences of \*(lqNULL\*(rq have been replaced by
296 \*(lq0\*(rq where appropriate.
297 Extra tokens after \*(lq#else\*(rq and \*(lq#endif\*(rq
298 have been put inside comments (this is still in progress).
299 The code should now compile cleanly on many more systems,
300 specifically, more variants of SVR4.
302 The version of \fBtws/dtimep.c\fP which was included in
303 MH 6.7.2 was incompatible with the \fIlex\fP library
304 on some systems, and has been removed.
306 A bug in the handling of blind lists inside alias
307 files has been fixed.
312 There were three new options added to the POP.
313 .IP APOP \w'APOP'u+2n
314 This option indicates that the POP daemon will
315 support the non-standard \fBAPOP\fP command which
316 provides a challenge-based authentication system using
317 the \fBMD5\fP message digest algorithm.
319 This option also causes the
320 \fIpopauth\fP program to be installed, which
321 allows the administrator to manipulate the \fBAPOP\fP
322 authorization database.
325 Support for KERBEROS with POP.
327 \fIpopd\fP, \fIinc\fP and \fImsgchk\fP to support only the
328 \*(lqkpop\*(rq protocol.
329 This code is still expiremental, but is available for
330 those sites wishing to test it.
332 This option indicates that the POP daemon will
333 support the non-standard
334 \fBXTND SCAN\fP command which provides performance
335 enhancements when using the POP over low-speed connections.
337 This option also causes an interactive POP
338 client program, \fIpopi\fP, to be compiled and installed.
339 A man page for the \fIpopi\fP program is also provided.
340 This option requires the configuration to
341 have \*(lqbboards: pop\*(rq.
343 The APOP and MPOP non-standard POP
344 facilities are documented in
345 \fIThe Internet Message\fR (ISBN 0\-13\-092941\-7),
346 a book by Marshall T. Rose.
347 For more details, see \fBsupport/pop/pop-more.txt\fR
348 and the \fIAdministrator's Guide\fP.
349 The APOP option peacefully co-exists with the standard POP,
350 KPOP completely replaces the standard POP, and
351 MPOP requires \*(lqbboards: pop\*(rq.
355 The file locking code has been cleaned up to support
356 three kinds of kernel-level file locking. As appropriate
357 for your system, include the
358 LOCKF, FCNTL or FLOCK option. For more
359 details, see \fImh-tailor\fP\|(5).
362 Configuration Directives
364 A number of new configuration directives have been added
365 or changed. The full details are given in the \fBREAD-ME\fP.
366 .IP cp: \w'MAILGROUP'u+2n
367 The command used to install new files if not \*(lqcp\*(rq.
369 The command used to link files together in the source tree
372 Full support for ZMAILER has been added.
374 The directory where \fIpopd\fP will be installed if not \fB/usr/etc\fP.
376 Set to \*(lqon\*(rq to prevent the hostname and compile
377 date from being included in \fIMH\fP binaries.
379 You may now specify \*(lqsun4\*(rq or \*(lqsys5\*(rq
380 (for SVR4) shared libraries.
382 Specifies the base type of the function returned by \fIsignal\fP\|().
383 This was previously defined with \*(lqoptions TYPESIG\*(rq.
386 Several `-D' options to \fIcc\fP have been added or changed:
387 .IP APOP \w'MAILGROUP'u+2n
388 Authenticated POP (see above).
390 Support for A/UX systems.
392 The DBM option has been renamed DBMPWD.
394 Support for the HESIOD name server.
396 KERBEROS POP (see above).
398 Support for local characters sets; uses the \fIsetlocal\fP\|() function.
400 Makes \fIinc\fP set-group-id.
401 You may need this option if your \fB/usr/spool/mail\fP
402 is not world-writeable.
406 Mobile POP (see above).
408 Enables \fIslocal\fP to detect and surpress duplicate messages.
410 Support for DEC OSF1 systems. May be incomplete.
412 Include this option if your system has a \fIrename\fP\|()
415 Support for System 5 Release 4 or newer systems.
417 This option has been dropped. See `signal' above.
419 Include this option if your system has the include
420 file \fB<unistd.h>\fP.
422 Include this option if your system has the \fIvsprintf\fP\|()
423 library routine; otherwise, \fI\(rudoprnt\fP\|() will be used.
425 Forces the \fImh-format\fP `year' function to
426 return 2-digit values.
427 Use this option during a brief transition period if
428 you have local \fImh-format\fP files which need to
429 be converted to support 4-digit years.
433 In addition to the configuration changes mentioned above,
434 a number of functional changes have been made to the system.
435 Many programs have new features added and a few new
436 programs have are provided.
437 Each command's manual page gives
438 complete information about the its operation.
439 Here is a short summary of the changes.
443 A larger number of user-defined sequences are available.
444 Previously, this number had been 10.
445 On 32-bit systems, 26 user-defined sequences are available.
449 \fIMH\fP programs will now complain if the
450 \fB\&.mh\(ruprofile\fR does not end in a newline.
451 Also, one enhancement and one new profile component are provided:
452 .IP Aliasfile: \w'AliasfileX'u+2n
453 Multiple filenames may now be given.
455 New; the default folder (for \fIinc\fP, etc.) if not \*(lqinbox\*(rq.
460 A few minor bugs were fixed in format string handling,
461 and a few new features were added. See \fImh-format\fP\|(5)
462 for complete details.
463 .IP Addresses \w'Xxyearxdatexx'u+2n
464 An attempt is made to decipher X\&.400 RFC\ 987-style addresses.
466 Comments may be added to \fImh-format\fP files; a comment
467 begins with the 2-character sequence \*(lq%;\*(rq,
468 and ends with an un-escaped newline.
470 The `modulo' function escape has been added.
472 The date parser has been enhanced to understand more
473 illegal date formats; `year' now returns a 4-digit number.
476 User Interface Programs
478 A number of \fIMH\fP commands have minor changes:
479 .IP ali \w'packmbox'u+2n
480 The output with `\-user\0\-list' was
481 changed to match the output with `\-nouser\0\-list'.
483 Will no longer drop the last message of a digest.
485 Accepts the `\-apop' switch for authenticated POP (see above);
486 will attempt to detect write
487 errors (e.g., no space left on device) when incorporating mail;
488 no longer replaces newline characters with NULLs.
490 The `\-noprint' option was broken and has been dropped.
492 Supports `\-mime' to use MIME-style multi-part messages.
494 Will no longer put an extra space at the end of the
495 `%{text}' in a formatfield.
497 New; manipulates multi-media (MIME) messages; a detailed
498 man page is provided.
500 New; reads the \fIMH\fP profile (and context)
501 and writes the values of the specified components on the
502 standard output; useful in programmatic constructs.
504 Supports `\-apop' (see above).
506 New; packs an \fIMH\fP folder into a UUCP-style mailbox.
508 New; a client-side POP initiator; available only if you
509 built \fIMH\fP with the MPOP option (see above).
511 A bug where the `rmmproc' did not remove all specified
512 message files has been fixed.
514 The `\-file' option is fully supported and will no longer
515 complain about empty folders.
517 Supports `\-mime' and `\-split' to split large messages
518 into multiple partial messages using MIME.
521 .IP fmtdump \w'packmbox'u+2n
522 Can now read a format file, or a format string given
525 New; manages the APOP authorization database (see above).
527 The \fIsendmail\fP replacement will be installed
528 only if your `mts' setting uses the `/smtp' option.
530 A new man page for \fIslocal\fP is available;
531 the new `mbox' action is available to write a file
532 in \fIpackf\fP format;
533 a bug where extra `>' characters were written to MMDF-style
534 maildrops has been fixed;
535 if compiled with the MSGID option, can detect and suppress
536 reception of duplicate messages.
538 New; bundles a directory (like \fIshar\fP\|) and
539 sends it through multi-media mail.
541 .ds LH Changes for MH 6.7.2
547 The MH.6.7.2 patch release is a maintenance
550 current released version of \fIMH\fP as of February 1, 1992.
552 This release now supports the NCR Tower running SYS5R4.
553 The WP changes installed in MH.6.7.0 have been removed.
557 Support for SYS 5 shared libraries is in progress.
559 Support for Sun OS 4.0 shared libraries had been improved.
560 The \fIMH\fP library has been modified to move initialized
561 data into a data definition file. The shared library will
562 now consist of a \fBlibmh.so\fP and \fBlibmh.sa\fP file.
563 The shared library version number will no longer track the
564 \fIMH\fP patch release number, and its numbering begins with
565 version `1.1' with this release.
569 Since many standard system programs expect to post mail by
570 invoking \fB/usr/lib/sendmail\fP,
571 a minimal replacement \fISendMail\fP is provided in
572 this release. This replacement is meant to be installed
573 on (e.g., diskless) client workstations which post mail
574 using SMTP, and do not run a message transport system.
575 It will call \fIpost\fP to post mail; be sure you have
576 configured \fIMH\fP with the `/smtp' mts option.
577 This sendmail replacement is installed in your
578 \fIMH\fP etc directory, and you should link
579 \fB/usr/lib/sendmail\fP
585 A manual page for the \fIfmtdump\fP format string disassembler
586 is supplied, and some new format functions were added:
587 .IP folder \w'%getenv'u+2n
588 In \fIscan\fP, this component escape
589 contains the name of the current folder.
590 It is not defined for other \fIMH\fP commands.
592 This function escape returns the value of an environment variable.
595 There will be some additional changes in these routines in the
599 Other Bug Fixes and Enhancements
601 In addition to some other minor enhancements,
602 some bugs were fixed which in general were not user\-visible:
603 .IP "Blind lists" \w'datexparsing'u+2n
604 Users may now specify RFC822 address groups in their
605 alias files. These groups are implemented by \fIMH\fP
608 A number of sites have brain-damaged versions of \fBlex\fP.
609 \fIMH\fP will now come with the date parser already run
612 A bug dealing with \fImark\fP and the sequence named `cur'
613 is fixed. This was previously a problem for mh-e users.
615 The \fIMH\fP nroff version of the manual no longer contains
616 teletype escape sequences.
618 Can now handle headers as long as 512 bytes.
620 \fIMH\fP programs will no longer catch the \fBHUP\fP
621 and \fBTERM\fP signals while waiting for a sub-process.
622 This was causing hung processes when your terminal line was
623 was dropped unexpectedly.
625 If your signature is not defined, \fIMH\fP will
626 use the value of the gecos field of your \fB/etc/passwd\fP
627 entry as your signature.
629 A bug in the \fBawk\fP script in \fBconfig/version.sh\fP
632 .ds LH Changes for MH 6.7.1a
634 .ds CF January 25, 1991
636 CHANGES FOR MH 6.7.1a
638 The MH.6.7.1a patch was made available
639 on January 25, 1991 for limited distribution only.
640 (This release had some known bugs, and so was
641 not widely distributed.)
642 This release incorporates several new features
643 of particular note to users of sequences and format strings,
644 as well as some general documentation improvements.
645 There are a few minor enhancements and internal bug fixes also.
646 Complete documentation of these changes is given in
647 the individual manual pages, and the \fBREAD-ME\fP file.
651 A new manual page, \fImh\-sequence\0\fP(5), has been added.
652 This manual page attempts to completely document the
653 syntax and semantics of \fIMH\fP message sequence specifications.
655 A powerful new feature is the ability to specify message
656 ranges with user-defined sequences. The specification
657 \*(lqname:n\*(rq may be used, and it designates up to the
658 first `n' messages (or last `n' messages for `-n')
659 which are elements of the user-defined sequence `name'.
662 specifications \*(lqname:next\*(rq and \*(lqname:prev\*(rq
663 may also be used, and they
665 next or previous message (relative to the current message)
666 which is an element of the user-defined sequence `name'.
668 \*(lqname:first\*(rq and \*(lqname:last\*(rq are equivalent
669 to \*(lqname:1\*(rq and \*(lqname:\-1\*(rq, respectively.
670 The specification \*(lqname:cur\*(rq is not allowed
671 (use just \*(lqcur\*(rq instead).
673 These specifications allow the user to step through
674 a sequence with a command like \*(lqshow name:next\*(rq.
678 \fIMH\fP format strings now support an if-then-elseif-else
679 clause (the `elseif' is new). This will make
680 format strings with multi-case conditions somewhat less complex.
682 A new format function `addr' had been added. This function
683 takes an address header name as its argument, and returns
684 a rendering of the address contained in that header
685 as \*(lquser@host\*(rq or \*(lqhost!user\*(rq.
687 Format widths now may be specified as a negative number.
688 This causes the output to be right-justified
689 within the format width.
694 Along with a few minor enhancements,
695 some bugs were fixed which in general were not user-visible:
696 .IP "fmtdump" \w'whatnow'u+2n
698 produces an pseudo-language
699 representation of an \fIMH\fP format file, vaguely
700 reminiscent of assembly language. While this output format
701 is not explicitly documented,
702 it can still be useful when debugging \fIMH\fP format files.
704 Now takes a `\-[no]rmmproc' switch. This makes it
705 easier to avoid loops when your \*(lqrmmproc\*(rq calls \fIrefile\fP.
707 A problem with the UUCP-style mailboxes,
708 the `RPATHS' configuration option,
709 and the \*(lqReturn-Path:\*(rq header was fixed.
711 Will ensure that no messages are lost if it is interrupted.
713 Will now tell you where it is leaving the draft, when
714 interrupted in the initial edit. Previously the draft
720 .IP "LOCKF" \w'whatnow'u+2n
721 This option causes \fIMH\fP to use the \fBlockf()\fP
722 system call for locking (if available),
723 instead of \fBflock()\fP.
725 .ds LH Changes for MH 6.7.1
727 .ds CF December 14, 1990
731 The MH.6.7.1 patch release is a maintenance
732 release, and as such, provides few changes from
733 the previous release. This is the
734 current released version of \fIMH\fP as of December 14, 1990.
738 The major change in this release is to the
739 POP daemon (popd). In \fIMH\fP 6.7,
740 it was changed to be able to read both UUCP and
741 MMDF-style mailboxes. This did not work as reported. The
742 code has now been changed to parse MMDF-style mailboxes if
743 you are configuring MH to run with MMDF as your message
744 transport system. Otherwise, UUCP-style mailboxes are
747 Since there are number of client programs available for
748 only the POP2 protocol instead of POP3, popd has been
749 updated to support both protocols. This is a major
750 win. If you are compiling
751 with POP turned on, add the `POP2' option to
752 your \fIMH\fP config file, and the POP daemon
753 will respond to POP2 or POP3 commands. If you're using
754 POP, there's no reason not to include this option; it does
755 not affect the existing support for POP3.
760 Some bugs were fixed which in general were not user-visible:
761 .IP "context" \w'replnnetcn'u+2n
762 Errors when writing out sequences are detected correctly.
764 No longer inserts extra blank lines into messages.
766 A nil pointer bug in the address parser was fixed.
768 The malloc/free problem has been fixed.
770 A spelling error in the `\-nointeractive' switch has been corrected.
772 Will not print the message size if not available (i.e., zero).
774 Illegal signatures (those containing unquoted "."s) will be quoted.
776 .ds LH Changes for MH 6.7.0
778 .ds CF April 12, 1990
780 GENERAL CHANGES FOR MH 6.7.0
782 The author is pleased to announce that there are very few
784 changes to \fIMH\fP 6.7 from the previous \fIMH\fP 6.6 distribution.
785 The majority of development was in the form of bug fixes and
787 In addition, this release is slightly faster than the
789 With a few minor exceptions,
790 it is backward\-compatible with the previous release.
791 \fIMH\fP 6.7.0 is the current released version of \fIMH\fP
792 as of April 12, 1990.
794 The changes were made mainly to generalize the source code to
795 be compatible with a larger range of systems and compilers.
796 There were many small changes to add declarations for ANSI C compliance.
797 The System 5 support has been brought up to SYS5 R3, and there is
798 support for Sun OS 4.0.
800 User\-Visible Changes
802 Here a quick summary of the
803 changes that were made which are not backward\-compatible with the
804 previous release of \fIMH\fP:
805 .IP repl \w'sortm'u+2n
806 The `\-format' and `\-noformat' switches
807 have not been functional since \fIMH\fP 5, and have been removed.
808 Any users who have these switches in their \fB\&.mh\(ruprofile\fP,
809 will have to remove them.
811 Previously, in most cases \fIsortm\fP would fill\-in any
812 gaps in the numbering of a folder,
813 by renumbering the messages starting with `1'.
814 This will no longer occur; for this behavior,
815 use \*(lqfolder \-pack\*(rq.
820 A new profile entry `Aliasfile:' has been added. The
821 \fIali\fP\^, \fIsend\fP\^, and \fIwhom\fP programs will look for
822 this profile entry and treat it as they would an argument to
824 This should make it easier for novice \fIMH\fP users to begin
828 Reading Network News & BBoards
830 The UCI BBoards facility can read local BBoards, and if compiled
831 with the `bboards: pop' and `pop: on' options, can also read remote
832 BBoards using the Post Office Protocol (POP ver. 3).
834 \fIMH\fP can instead be compiled to read the Network News
835 (i.e., USENET) using the Network News Transfer Protocol (NNTP).
837 This capability is enabled by compiling \fIMH\fP with
838 the `bboards: nntp' and `pop: on' options.
839 Unfortunately, reading remote BBoards via the POP and reading the Network
840 News via the NNTP are mutually exclusive options.
843 a new module, \fBuip/pshsbr.c\fP, is compiled and loaded into
844 \fIbbc\fP and \fImsh\fP instead of \fBuip/popsbr.c\fP.
845 The default BBoard is changed from \*(lqsystem\*(rq to \*(lqgeneral\*(rq
848 When reading BBoards,
849 \fIbbc\fP will first look for local BBoards, and then contact the
850 NNTP server to read the Network News. The location of the
851 NNTP server should be specified with the `nntphost:'
852 entry in the \fBmtstailor\fP file
853 (see the \fIMH\fP Administrator's Guide for details),
854 or may be specified on
855 the command line with the `\-host' switch.
860 The manual page \fImh\-format\fP\0(5) has
861 been rewritten to give a better explanation of how to write format strings,
862 and how they are interpreted by \fIMH\fP.
865 default \fIrepl\fP form file (\fBreplcomps\fP)
866 is now included in that manual page.
869 Some new format functions were added, and others were augmented:
870 .IP trim \w'date2local'u+2n
871 Strips any leading and trailing white\-space from the current string value.
873 Will coerce the date to the local timezone.
875 Will coerce the date to GMT.
877 Divides the current numeric value by its argument.
878 This could be useful for
879 building \fIscan\fP format strings which print large
880 message sizes in \*(lqKb\*(rq or \*(lqMb\*(rq.
882 If the address field cannot be parsed,
883 this function will return the text of the address header,
884 instead of a null string.
886 A flag indicating whether the timezone was explicit
892 In addition to the general changes mentioned above,
893 many programs have specific new features added,
894 either by new switches or by expanded functionality.
895 Each command's manual page gives complete information about
896 its new options. Here is a short summary.
898 User Interface Programs
899 .IP anno \w'prompter'u+2n
900 Accepts a `\-nodate' switch which inhibits the date annotation,
901 leaving only the body annotation.
903 When invoked with the `\-pack' switch
904 and the new `\-verbose' switch, \fIfolder\fP will
905 give information about the actions taken to renumber the folder.
907 On most systems, \fIfolder\fP can now create any non\-existing
908 parent folders of a new sub\-folder.
910 When making digests, \fIforw\fP\^
911 will put the issue and volume numbers
912 in addition to the digest list name, in the digest trailer.
914 Detects NFS write failures, and will
915 not zero your maildrop in that event.
917 Supports a variant of the new \fIsortm\fP\^.
919 Considers a period on a line by itself to signify end\-of\-file
920 when the `\-doteof' switch is specified.
922 The `\-[no]format' switches
923 have not been used since \fIMH\fP 5 and have been deleted. \fIrepl\fP
924 will now find filter files in the \fIMH\fP library area.
926 With the `\-file msgbox' switch, \fIscan\fP\^
927 can list a \fIpackf\fP\|'d\-format file directly
928 (without using \fImsh\fP\^).
930 Lists messages in reverse order with the `\-reverse' switch.
931 This should be considered a bug.
934 `\-textfield field', `\-notextfield',
935 `\-limit days', and `\-nolimit'.
937 With these options, \fIsortm\fP can be instructed to sort a
938 folder based on the contents of an arbitrary header such
939 as \*(lqsubject\*(rq.
941 \fIsortm\fP minimizes renaming messages, and
942 will no longer arbitrarily pack folders; for this behavior,
943 use \*(lqfolder \-pack\*(rq.
945 Deletes the draft by renaming it with leading comma, instead
948 \fIMH\fP Support Programs
951 The following support programs also have changes or enhancements:
952 .IP mhl \w'rcvtty'u+2n
953 Will now accept a format string on any component, not just on
957 Will use \fIshadow\fP passwords if compiled with the
958 \fBSHADOW\fP option. It can now also
959 read UUCP\-style maildrops directly.
961 If given no arguments, \fIrcvtty\fP will produce a \fBscan\fP
962 listing as specified by a format string or file; a default
963 format string is used if one is not specified.
965 Before the listing is written to the users terminal, the
966 terminal's bell is rung and a newline is output.
967 The `\-nobell' and the `\-nonewline' options
968 inhibit these functions.
970 \fIrcvtty\fP will obey terminal write
971 notification set by \fImesg\fP.
972 With the `\-biff' switch, \fIrcvtty\fP will
973 also obey the mail notification status set by
976 On \fBBSD43\fP systems, as with \fIwrite\fP,
977 \fIrcvtty\fP will be installed set\-group\-id to the group \*(lqtty\*(rq.
979 Understands UUCP\-style \*(lqFrom \*(rq lines and will write
980 output files using this format if appropriate.
981 Before invoking a delivery program, \fIslocal\fP will strip
982 such lines unless compiled with the \fBRPATHS\fP option,
983 in which case it will will convert such lines into
984 \*(lqReturn\-Path:\*(rq headers.
986 \fIslocal\fP has a new result code \*(lqN\*(rq,
987 for use in \fB.maildelivery\fP files.
988 With this result code,
990 perform the action only if the message has not been delivered
991 and the previous action succeeded. This allows for performing
992 an action only if multiple conditions are true.
996 Several of the older \fIMH\fP papers have been difficult to format
997 because they depended on an older version of
999 not supplied. These papers have been updated, and some TeX
1000 library files are supplied in \fBpapers/doclib/\fP, so that
1001 these papers may be generated on any system with TeX.
1003 Many of the manual pages have been revised to include documentation
1004 of new command options, and some have been expanded to give more detail.
1005 All are now slightly reformatted at installation time
1006 to make them more compatible with programs like \fImakewhatis\fP\^.
1009 \fIMH\fP ADMINISTRATION
1011 This section describes changes in configuring, compiling and
1012 installing \fIMH\fP 6.7 and should not
1013 be of interest to casual \fIMH\fP users.
1014 The \fBREAD\-ME\fP file has been
1015 considerably revised and expanded to give more detail
1016 about the configuration and compilation options which
1017 have been included in this release. Some compilation options
1018 have been removed, and many new options have been added.
1020 All \fIMH\fP \fBMakefile\fPs have been updated to work around some
1021 incompatibilities introduced in newer versions of \fImake\fP\^.
1022 \fIMH\fP programs will no longer be installed with the sticky\-bit
1025 Reading this section not a substitute for carefully
1026 reading the \fBREAD\-ME\fP file before attempting to compile \fIMH\fP
1032 Some bugs were fixed which in general were not user\-visible:
1033 .IP "address parser" \w'dynamicnmemory'u+2n
1034 Fixed to allow use of the \*(lqAT\*(rq domain, and some
1035 minor bugs were fixed pertaining to address groups.
1037 Improved to accept more forms of illegal dates. Military
1038 timezones were removed.
1039 .IP "dynamic memory"
1040 Many problems with corruption of the dynamic memory pool
1043 Will open files for write, if necessary to enable locking.
1045 All reported nil pointer problems have been fixed.
1047 The \*(lqIn\-Reply\-To:\*(rq header had quotes added
1048 around the date field to comply with RFC822.
1053 If \fIMH\fP is compiled with the \fBWP\fP option,
1054 \fIsend\fP recognizes an address between \*(lq<<\*(rq and \*(lq>>\*(rq characters
1057 To: << rose \-org psi >>
1059 to be a name meaningful to a whitepages service. In order to expand the
1060 name, \fIsend\fP must be invoked interactively
1061 (i.e., not from \fIpush\fP\^). For each
1062 name, \fIsend\fP will invoke a command called \fIfred\fP\^
1063 in a special mode asking to expand the name.
1065 To get a copy of the white pages service, contact wpp\-manager@psi.com.
1067 Configuration Options
1069 Some configuration options have been added or changed:
1070 .IP cc \w'bbdelivery'u+2n
1071 To specify an alternate C compiler.
1075 May now be defined as \*(lqon\*(rq,
1076 \*(lqoff\*(rq, \*(lqpop\*(rq, or \*(lqnntp\*(rq.
1078 Determines whether the bboard delivery agent
1079 and library files should be installed.
1081 To specify an alternate version of \fIlex\fP\^.
1083 If defined, \fIinc\fP will be made set\-group\-id to this group.
1085 For \fBSUN40\fP systems; if \*(lqon\*(rq, makes \fBlibmh.a\fP
1086 into a shared library.
1088 The directory where the above shared library should be installed.
1090 Set this to \*(lqint\*(rq if that's what your \fIsprintf\fP\0(3) library
1095 For different configurations,
1096 several `\-D' options to \fIcc\fP have been added or changed:
1097 .IP BERK \w'SENDMAILBUG'u+1n
1098 This disables the address and date parsing routines. If you
1099 want to do much with \fImh\-format\fP\0(5), don't enable this.
1101 Will make \fIrcvtty\fP set\-group\-id to the group \*(lqtty\*(rq.
1103 For sites with a dbm\-style password file (such as with Yellow
1104 Pages), \fIMH\fP will not read the entire passwd file into a cache.
1105 At one site that runs YP on a large passwd file, using this
1106 showed a 6:1 performance improvement.
1108 This option has been deleted. See \fBSOCKETS\fP.
1110 Tells \fIMH\fP not to include the file \fBsys/ioctl.h\fP. Use this
1111 if this file is not present on your system.
1113 On systems with TCP/IP networking,
1114 \fImsh\fP will try to use the \fBntohl()\fP macro from the
1115 file \fBnetinet/in.h\fP to byte\-swap the binary map files
1118 Some versions of \fIsendmail\fP return a \fB451\fP (failure) reply code
1119 when they don't mean to indicate failure. This option considers
1120 that code to be equivalent to \fB250\fP (OK).
1122 Causes \fIpopd\fP to read the file \fB/etc/shadow\fP for
1123 encrypted passwords instead of \fB/etc/passwd\fP. Use this if you
1124 have a shadow password file (such as on newer versions of SYSTEM 5).
1126 Enable this if you are on a non\-BSD system with a
1127 socket interface for TCP/IP networking compatible with 4.2BSD
1132 Use on Suns running Sun OS 4.0 and later.
1134 This option has been updated to refer to SYS5 R3 and later systems.
1136 Use this if your system uses \*(lqstruct dirent\*(rq instead of
1137 \*(lqstruct direct\*(rq. This should be true for systems based
1138 on SYS5 R3 and later.
1140 Defines the base type for the \fIsignal\fP system call. This
1141 defaults to \*(lqint\*(rq, but should be defined as \*(lqvoid\*(rq
1142 if appropriate for your system.
1144 Enables support for the White Pages service.
1149 explicitly set the protection mode on every file it installs.
1151 Previously any existing file installed by \fIMH\fP
1152 would be backed up into
1153 the source tree, and then overwritten.
1154 Now, a few system\-dependent files will not be overwritten, and your
1155 changes will have to be merged in by hand.
1156 See the \fBREAD\-ME\fP file for more details.