mh-gen man page on 4.4BSD

Man page or keyword search:  
man Server   1065 pages
apropos Keyword Search (all sections)
Output format
4.4BSD logo
[printable version]

MH-GEN(8)							     MH-GEN(8)

NAME
       mh-gen - generating the MH system

READ THIS
       This documentation describes how to configure, generate, and install
       the UCI version of the RAND MH system.  Be certain to read this docu‐
       ment completely before you begin.  You probably will also want to
       familiarize yourself with the MH Administrator's Guide before you
       install MH.  A copy can be found in the file doc/ADMIN.doc is the MH
       sources.

DISCLAIMER
       Although the MH system was originally developed by the RAND Corpora‐
       tion, and is now in the public domain, the RAND Corporation assumes no
       responsibility for MH or this particular modification of MH.

       In addition, the Regents of the University of California issue the fol‐
       lowing disclaimer in regard to the UCI version of MH:
	    “Although each program has been tested by its contributor, no war‐
	    ranty, express or implied, is made by the contributor or the Uni‐
	    versity of California, as to the accuracy and functioning of the
	    program and related program material, nor shall the fact of dis‐
	    tribution constitute any such warranty, and no responsibility is
	    assumed by the contributor or the University of California in con‐
	    nection herewith.”

       This version of MH is in the public domain, and as such, there are no
       real restrictions on its use.  The MH source code and documentation
       have no licensing restrictions whatsoever.  As a courtesy, the authors
       ask only that you provide appropriate credit to the RAND Corporation
       and the University of California for having developed the software.

GETTING HELP
       MH is a software package that is neither supported by the RAND Corpora‐
       tion nor the University of California.  However, since we do use the
       software ourselves and plan to continue using (and improving) MH, bug
       reports and their associated fixes should be reported back to us so
       that we may include them in future releases.  The current computer
       mailbox for MH is Bug-MH@ICS.UCI.EDU (in the ARPA Internet), and
       ...!ucbvax!ucivax!bug-mh (UUCP).

       Presently, there are two Internet discussion groups,
       MH-Users@ICS.UCI.EDU and MH-Workers@ICS.UCI.EDU.	 MH-Workers is for
       people discussing code changes to MH.  MH-Users is for general discus‐
       sion about how to use MH.  MH-Users is bi-directionally gatewayed into
       USENET as comp.mail.mh.

HOW TO GET MH
       Since you probably already have MH, you may not need to read this
       unless you suspect you have an old version.  There are two ways to get
       the latest release:

       1.  If you can FTP to the ARPA Internet, use anonymous FTP to
       ftp.ics.uci.edu [128.195.1.1] and retrieve the file
       pub/mh/mh-6.8.tar.Z.  This is a tar image after being run through the
       compress program (approximately 1.8MB).	There should also be a README
       file in that directory which tells what the current release of MH is,
       and how to get updates.

       This tar file is also available on louie.udel.edu [128.175.1.3] in por‐
       tal/mh-6.8.tar.Z.  You may also find MH on various other hosts; to make
       sure you get the latest version and don't waste your time re-fixing
       bugs, it's best to get it from either ftp.ics.uci.edu or
       louie.udel.edu.

       2.  You can send $75 US to the address below.  This covers the cost of
       a 6250 BPI 9-track magtape, handling, and shipping.  In addition,
       you'll get a laser-printed hard-copy of the entire MH documentation
       set.  Be sure to include your USPS address with your check.  Checks
       must be drawn on U.S. funds and should be made payable to:

		 Regents of the University of California

       The distribution address is:

		 Univeristy of California at Irvine
		 Office of Academic Computing
		 360 Computer Science
		 Irvine, CA  92717  USA

		 +1 714 856 5153

       Sadly, if you just want the hard-copies of the documentation, you still
       have to pay the $75.  The tar image has the documentation source (the
       manual is in roff format, but the rest are in TeX format).  Postscript
       formatted versions of the TeX papers are available, as are crude tty-
       conversions of those papers.

SYNOPSIS
       MAKE

DESCRIPTION
       This is a description of how one can bring up an MH system.  It is
       assumed that you have super-user privileges in order to (re-)install
       MH.  Super-user privileges are not required to configure or generate
       MH.

       Become the super-user and cd to /usr/src/local/ (or whatever you keep
       your local sources).  The distribution tape contains the hierarchy for
       the mh.6-8/ directory.  Bring the sources on-line:

       # cd /usr/src/local
       % tar xv
       % cd mh-6.8

CONFIGURATION
       First, go to the conf/ directory.

       % cd conf/

       This directory contains files that will produce source files tailored
       for your choice of MH configuration.  You should edit only the file MH.
       This file contains configuration directives.  These configuration
       directives are read by the mhconfig program to produce customized
       files.

       For examples of various configurations, look in the directory
       conf/examples/.	The file MH provided in conf/ is a reasonable default.
       Lines beginning with `#' are comments, and are not otherwise inter‐
       preted.

       Here are the MH configuration directives available.  Be sure to read
       through this list completely before attempting to decide what direc‐
       tives are appropriate for your system.

       More information on some of these options is available in the the
       Administrator's Guide.  If you do not have a printed copy, you should
       configure your system with the default configuration file, MH, then
       generate and print a copy of the guide (as described below).

     Installation paths
       bin: /usr/local
	    The directory where user-invoked programs go (see manual section
	    1).

       etc: /usr/local/lib/mh
	    The directory where pgm-invoked programs go (see manual section
	    8).

       mail: /usr/spool/mail
	    The directory where the maildrops are stored.  If this pathname is
	    absolute (i.e., begins with a / ), then the user's maildrop is a
	    file called $USER in this directory.  If the pathname is not abso‐
	    lute, then the user's maildrop is in the user's home directory
	    under the given name.

       mandir: /usr/man
	    The parent directory of the manual entries.

       manuals: standard
	    Where manual entries should be installed, relative to the direc‐
	    tory given with “mandir”.  Either “local” to install manual
	    entries under manl/, or “new” to install manual entries under
	    mann/, or “old” to install manual entries under mano/, or “stan‐
	    dard” to install manual entries under man?/, or “bsd44” to install
	    manual entries as man?/page.0, or “gen” to generate but not
	    install them, or “none” to neither generate nor install them.

	    Any of these values may have the suffix “/cat” appended to it.
	    In that case, the manual entries will be formatted with “nroff
	    -man” and they will be installed in the corresponding “cat?”
	    directories.

	    For example, to install manual entries under /usr/man/u_man/man?,
	    use “standard” and /usr/man/u_man for “mandir”.  To install for‐
	    matted manual entires under /usr/contrib/man/cat?, use “stan‐
	    dard/cat” and /usr/contrib/man for “mandir”.  To install formatted
	    manual entries using the BSD44 convention, use “bsd44/cat”.

       chown: /etc/chown
	    The location of the chown(8) on your system.  If chown is in your
	    search path, just use the value of “chown”.	 On SYS5 systems, this
	    should probably be “/bin/chown”.

       cp: cp
	    The command to copy files when installing, if not “cp”.  (Some
	    sites use “cp -p”.)

       ln: ln
	    The command to link files together in the source tree, if not
	    “ln”.  If you're using something like lndir to keep your compile
	    tree separate from your source tree, set this to “ln -s” or “cp”.

       remove: mv -f
	    How MH should make backup copies of existing files when installing
	    new files.	To simply remove the old files, use “rm -f”.

     Compiler/loader
       cc: cc
	    The name of your C compiler, if not “cc”.

       ccoptions: -O
	    Options given directly to cc(1).  The most common is “-M” if
	    you're running MH on an ALTOS.  This defaults to “-O”.  If you
	    define this and want to keep “-O”, be sure to include it explic‐
	    itly.  If you're using the GNU C compiler, it should include
	    `-traditional'.  See “options:” for `-D' options.

       curses: -lcurses -ltermlib
	    This should be the loader option required to load the termcap(3)
	    and curses(3) libraries on your system.  On SYS5 systems, it prob‐
	    ably should be just “-lcurses”.  Some sites have reported that
	    both “-lcurses” and “-ltermlib” are necessary.

       ldoptions: -s
	    Options given directly to ld(1) (via cc) at the beginning of the
	    command line.  Useful for machines which require arguments to tell
	    ld to increase the stack space (e.g. the Gould, which uses
	    “-m 8”).  Usually, “-s” is a good choice in any event.

       ldoptlibs:
	    Options given directly to ld(1) (via cc) at the end of the command
	    line.  The two most common are: “-ldbm” if you're running MMDF
	    with the dbm package; and, “-lndir” if you are generating MH on a
	    system which does not load the new directory access mechanism by
	    default (e.g., 4.1BSD, SYS5).  If you don't have libndir on your
	    system, the sources are in miscellany/libndir/.

       lex: lex -nt
	    Alternative version of lex.	 Used in zotnet/tws/.

       oldload: off
	    This controls how MH will try to process library object files to
	    eliminate local symbols.  Support for the ALTOS loader if “on”.
	    Support for loaders not handling `-x -r' correctly if “none”.

       ranlib: on
	    Support for systems with ranlib(1).	 For SYSTEM 5 systems, this
	    should be “off” which tells MH to use lorder and tsort instead.
	    Some SYSTEM 5 sites reported that running this isn't always suffi‐
	    cient.  If this is the case, then you should edit conf/make‐
	    files/uip to include ../sbr/libmh.a and ../zotnet/libzot.a twice
	    in the LIBES variable.

     Message Transport System
       mts: sendmail
	    Which message transport system to use.  Either “mmdf” to use MMDF
	    as the transport system, “mmdf2” to use MMDF-II as the transport
	    system, “sendmail” to have SendMail as the transport system,
	    “zmailer” to have ZMAILER as the transport system, or, “mh” to
	    have MH as the transport system.

	    On UNIX systems supporting TCP/IP networking via sockets you can
	    add the suffix “/smtp” to the mts setting.	This often yields a
	    superior interface as MH will post mail with the local SMTP server
	    instead of interacting directly with MMDF or SendMail.  Hence, for
	    TCP/IP UNIX systems, the “/smtp” suffix to either “sendmail” or
	    “mmdf2” is the preferred MTS configuration.	 The “/smtp” suffix is
	    described in detail in the Administrator's Guide; be sure to set
	    “servers:” as described in mh-tailor(8) if you use this option.

       mf: off
	    Support for mail filtering on those systems in which the message
	    transport system isn't integrated with UUCP This option is
	    strictly for an MH system using either MMDF-I as its transport
	    system or one using “stand-alone delivery”.

     UCI BBoards Facility
       bboards: off
	    If “on”, include support for the UCI BBoards facility.  BBoards
	    may be enabled with any mts setting.  If “off”, the BBoard reading
	    program bbc will not be installed.	If “nntp”, include support for
	    the UCI BBoards facility to read the Network News via the NNTP.
	    If “pop” (formerly “popbboards: on”), include support for the UCI
	    BBoards facility via the POP3 service; this setting requires
	    “pop: on”.

       bbdelivery: off
	    If “off”, the BBoards delivery agent and library files will not be
	    installed.	If “on”, and you set “bboards:” to something besides
	    “off”, then the BBoards delivery agent and library files will be
	    installed in the bbhome directory (see below).  To read remote
	    BBoards, the usual configuration would have bbc talk to a POP3 or
	    NNTP server.  However, it may be useful to set this to “off” if
	    you NFS mount the bbhome directory from another host and want to
	    use bbc to read those files directly.

       bbhome: /usr/spool/bboards
	    The home directory for the BBoards user.

     Post Office Protocol
       pop: off
	    Support for POP service.  This allows local delivery for non-local
	    users (a major win).  See support/pop/pop.rfc for more information
	    on the POP.	 This option currently works only on UNIX systems with
	    TCP/IP sockets.  (It doesn't hurt to enable this option regardless
	    of whether or not you intend to use POP.)  See also “bboards: pop”
	    to enable reading bboards with the POP.

       popdir: /usr/etc
	    The directory where the POP daemon (popd) will be installed.

       options:
	    `-D' options to cc(1).

	 APOP='“/etc/pop.auth”'
	      This option indicates that the POP daemon will support the non-
	      standard APOP command, and specifies the name of APOP authoriza‐
	      tion database.  The APOP command provides a challenge-based
	      authentication system using the MD5 message digest algorithm.
	      This facility is documented in The Internet Message (ISBN
	      0-13-092941-7), a book by Marshall T. Rose.

	      This option also causes the popauth program to be installed,
	      which allows the administrator to manipulate the APOP authoriza‐
	      tion database.  For more details, see support/pop/pop-more.txt
	      and the Administrator's Guide.

	 DPOP
	      This option indicates that POP subscribers do not have entries
	      in the passwd(5) file, and instead have their own separate data‐
	      base (a win).

	 KPOP
	      Support for KERBEROS with POP.  This code builds popd, inc and
	      msgchk to support only the “kpop” protocol.  This code is still
	      experimental, but is available for those sites wishing to test
	      it.

	 MPOP
	      This option indicates that the POP daemon will support the non-
	      standard XTND SCAN command which provides performance enhance‐
	      ments when using the POP over low-speed connections.  This
	      option also causes an interactive POP client program, popi, to
	      be compiled and installed.  A man page for the popi program is
	      also provided.

	      These extensions are described in The Internet Message, a book
	      by Marshall T. Rose.  For more details, see support/pop/pop-
	      more.txt.	 Note: this option requires “bboards: pop”.

	 POP2
	      Have the POP daemon understand the older POP2 protocol as well
	      as the MH POP3 protocol - a major win.  The POP daemon auto-mag‐
	      ically determines which POP protocol your client is using.  If
	      you're enabling POP service, there's no reason not to enable
	      this option as well.  See also POPSERVICE.

	 POPSERVICE
	      The port name the MH POP will use.  For historical reasons, this
	      defaults to “pop”.

	      In 1987, the MH POP protocol (POP version 3) was published as
	      RFC1081 and was assigned its own port number (110), which dif‐
	      fers from the original POP (version 1 and 2) port number (109).

	      To have MH POP use the new assigned port number, set POPSER‐
	      VICE='“pop3”', and be sure that this service name is listed in
	      your /etc/services file on both POP client and server hosts as
	      “110/tcp”.  If you enable POP2, you can safely leave POPSERVICE
	      undefined unless you are using POP3 clients besides MH.

	 RPOP
	      This option indicates that support for the UNIX variant of POP,
	      RPOP, which uses privileged sockets for authentication be
	      enabled.	This peacefully co-exists with the standard POP.

	 SHADOW
	      Indicates that the popd POP server can find encrypted passwords
	      in the /etc/shadow file (and not in the /etc/passwd file).  It
	      should be used only for some (newer) SYSTEM 5 systems.

	    The “APOP” and “MPOP” non-standard POP facilities are documented
	    in The Internet Message (ISBN 0-13-092941-7), a book by Marshall
	    T. Rose.  For more details, see support/pop/pop-more.txt.  The
	    “APOP” option peacefully co-exists with the standard POP.  The
	    “MPOP” option requires “bboards: pop”.

     Shared libraries
       sharedlib: off
	    If “sun4”, makes libmh.a into a SunOS 4.0 (and later) shared
	    library.  If you enable this, be sure to also use “options SUN40”.
	    If “sys5”, makes libmh.a into a SYS5 R4 (and later) shared
	    library.  If you enable this, be sure to also use “options SVR4”.

       slflags: -pic
	    The compiler flags to produce position independent code.

       slibdir: /usr/local/lib
	    The directory where the MH shared library should go.

	  Under SunOS (sun4)
	    Since some MH programs are setuid, they'll only look for the
	    library in “trusted” locations.  Putting the library somewhere
	    besides /usr/lib or /usr/local/lib is not advisable.

	    If you must do this, be sure that you add the path given by slib‐
	    dir to the compiler's library search list (e.g., “ldop‐
	    tions: -L/usr/mh/lib”) and make sure the path starts with a lead‐
	    ing `/'.

	    You may need to run ldconfig(8) manually whenever a new shared
	    object is installed on the system.	See ld(1) for more information
	    about using shared libraries.

	  Under Solaris 2.0 (and newer)
	    The above instructions for SunOS apply, except you should set the
	    run-time library search path using `-R' instead of `-L' (e.g.,
	    “ldoptions: -R/usr/mh/lib”).

     General System Dependencies
       You should include the following directives which are appropriate for
       your version of UNIX.  If you don't know what an option does, it proba‐
       bly doesn't apply to you.

       mailgroup: off
	    If set, inc is made set-group-id to this group name.  Some SYS5
	    systems want this to be set to “mail”.  Set this if your
	    /usr/spool/mail is not world-writeable.

	    Note that slocal doesn't know how to deal with this, and will not
	    work under these systems; just making it set-group-id will open a
	    security hole.  If you're using “mailgroup”, you should remove
	    slocal (and its man page) from your system.

       signal: int
	    The base type (int or void) of the function parameter/return value
	    of signal(2).  The default is int.	Set “signal void” on systems
	    which use this type (e.g., SYSTEM 5 V3.0 and later or Sun OS 4.0
	    and later).

       sprintf: char *
	    The return value of the sprintf library routine.  This defaults to
	    “char *”.  Set this to “int” if you have an older version of SYS‐
	    TEM 5 which has this routine return an “int” type.

       options:
	    `-D' options to cc(1).

	 ALTOS
	      Use on XENIX/v7 systems.	Also, be sure to use “options V7”.

	 ATTVIBUG
	      This option causes MH to return to the “What now?”  prompt if
	      your initial editor is vi and it exits with non-zero status.
	      Use on Sun OS 4.1 and other systems where the /usr/ucb/vi editor
	      was changed to exit with its status equal to the number of
	      pseudo-“errors” encountered during the edit.  This causes a
	      problem for programs that test the exit status of their editor
	      and abort if the status is non-zero.  (This includes MH and pro‐
	      grams like /usr/etc/vipw).

	 AUX
	      Use with AUX systems.

	 BIND
	      If you are running with the BIND code on UNIX systems with
	      TCP/IP sockets (e.g. 4.{2,3}BSD), be sure to define this.

	 BSD41A
	      Use on 4.1a Berkeley UNIX systems.

	 BSD42
	      Use on Berkeley UNIX systems on or after 4.2BSD.

	 BSD43
	      Use on 4.3 Berkeley UNIX systems.	 Also, be sure to use “options
	      BSD42”.  If openlog(3) (see “man 3 syslog”) takes three argu‐
	      ments instead of two, and your write(1) command is set-group-id
	      to group “tty”, use this option.	If only one of these condi‐
	      tions is true, you lose.

	 BSD44
	      Use on Berkeley UNIX systems on or after 4.4BSD.	Also, be sure
	      to use “options BSD43” and “options BSD42”.

	 DBMPWD
	      Use this option if your getpwent(3) routines read a dbm database
	      (such as with Yellow Pages) instead of doing a sequential read
	      of /etc/passwd.  Without DBMPWD the entire passwd file is read
	      into memory one entry at a time for alias expansion.  This is a
	      performance improvement when reading a standard /etc/passwd
	      file, but is very slow on systems with a dbm database.  At one
	      site that runs YP on a large passwd file, it showed a 6:1 per‐
	      formance improvement.

	 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 mh-profile(5) for
	      details).	 Enable this option if your passwd(5) man page notes
	      that the `&' character in the “gcos” field stands for the login
	      name.

	 FCNTL
	      Directs MH to use the fcntl() system call for kernel-level lock‐
	      ing.  If you're using a SYS5 system, you may want this option.
	      (See also `FLOCK' and `LOCKF').

	 FLOCK
	      Directs MH to use the flock() system call for kernel-level lock‐
	      ing.  If you're on a BSD42 system, and you're not using NFS to
	      read or write maildrops, you should enable this option.  (See
	      also `FCNTL' and `LOCKF').

	 HESIOD
	      Support for HESIOD.  This code was contributed, and included no
	      documentation.

	 LOCKF
	      Directs MH to use the lockf() system call for kernel-level lock‐
	      ing.  If you're using NFS to read or write maildrops, you should
	      enable this option.  (See also `FLOCK' and `FCNTL').

	 locname
	      Hard-wires the local name for the host MH is running on.	For
	      example, locname='“PICKLE”'.  It's probably better to either let
	      UNIX tell MH this information, or to put the information in the
	      host specific mtstailor file.

	 MORE
	      Defines  the location of the more(1) program.  On ALTOS and DUAL
	      systems, set MORE='“/usr/bin/more”'.  The default is
	      “/usr/ucb/more”.

	 NDIR
	      For non-Berkeley UNIX systems, this MH will try to find the new
	      directory access mechanism by looking in <ndir.h> if this option
	      is given.	 Otherwise, MH will try <dir.h>.  If you still can't
	      get this to work on your system, edit h/local.h as appropriate.
	      (See also `SYS5DIR'.)

	 NFS
	      Tells MH to hack around a problem in the NFS C library.  If you
	      get an undefined symbol “ruserpass” when compiling MH, you prob‐
	      ably need this option.  If, however, you include this option and
	      get an undefined symbol “__ruserpass” when compiling, then you
	      should omit this option.	(See also `NORUSERPASS'.)

	 NOIOCTLH
	      Tells MH not to include the file <sys/ioctl.h>.  To be used on
	      systems where this file is not present.

	 NORUSERPASS
	      Tells MH that your system doesn't have the ruserpass(3) routine;
	      MH will include its own copy of this routine in its library.
	      (See also `NFS'.)

	 NTOHLSWAP
	      Tells MH to use the ntohl() macro when processing msh binary map
	      files.  MH can use this macro on systems with the include file
	      netinet/in.h, to byte-swap the binary information in these map
	      files.  If you're using the same map files on machines of dif‐
	      ferent architectures, enable this option.

	 RENAME
	      Include this option if your system has a rename() library call.
	      This is true on BSD42 and newer and some SYS5 systems.

	 SENDMAILBUG
	      Causes SMTP reply code 451 (failure) to be considered the same
	      as code 250 (OK).	 Since this might cause problems, only enable
	      this if you are certain that your SendMail will return this code
	      even when it doesn't mean to indicate a failure.

	 SOCKETS
	      Indicates the availability of a socket interface for TCP/IP net‐
	      working that is compatible with 4.{2,3}BSD UNIX.	It is not nec‐
	      essary to define this when BSD42 is already defined, but it
	      might be useful for SYSTEM 5 or HPUX systems with TCP/IP sock‐
	      ets.

	 SUN40
	      Use on Sun OS 4.0 (and later?) systems.  You also will need
	      “options BSD42”, “options BSD43”, and “signal void”.

	      If you're using Sun's brain-damaged approach to offering Domain
	      Name Service through NIS, be sure to include “options BIND” and
	      “ldoptions -lresolv” to work around some NIS/DNS bugs.

	 SYS5
	      Use on AT&T SYSTEM 5 R3 (and newer?) UNIX systems.  See also
	      mailgroup.

	 SYS5DIR
	      Define this if your system uses “struct dirent” instead of
	      “struct direct”.	This is true of System V Release 3.0 and
	      later.  Uses include file <dirent.h> and the routines mkdir,
	      rmdir and getcwd.

	 SVR4
	      Use on AT&T SYSTEM 5 R4 (and newer?) UNIX systems. You should
	      also include “options SYS5” and “options SYS5DIR”.  See also
	      mailgroup.  You will also need to include “oldload none” if your
	      ld doesn't handle `-x -r' correctly.

	 TERMINFO
	      Define TERMINFO if you have it.  You get it automatically if
	      you're running SYS5, and you don't get it if you're not.	(If
	      you're not SYS5, you probably have termcap.)

	 TZNAME
	      Use time zone names from the tzname variable, set via tzset.
	      Only applicable on SYSTEM 5 systems and only effective when you
	      have asked for alpha-timezones (see the ATZ option).  See also
	      ZONEINFO.

	 UNISTD
	      Include this option if your system has the file <unistd.h>.  If
	      not specified, the LOCKF option will include <sys/fcntl.h>.

	 V7
	      Use on V7 UNIX systems.  Also, be sure to use “options
	      void=int”.

	 VSPRINTF
	      Include this option if your system has the vsprintf(3) library
	      routine; otherwise, _doprnt(3) will be used.

	 WAITINT
	      BSD42 based systems call the wait(2) system routine with a
	      pointer to type union wait.  Include this option if you included
	      “options BSD42”, but your system calls the wait(2) system rou‐
	      tine with a pointer to type int (the non-BSD42 default).

	 ZONEINFO
	      Specify this if you have a BSD43 based system that keeps time
	      zone information /etc/zoneinfo or /usr/lib/zoneinfo (SunOS), and
	      where the struct tm returned by localtime(3) contains a
	      tm_gmtoff element (see /usr/include/time.h).  With this fix the
	      GMT offset specified in outgoing mail will be corrected when the
	      TZ enviornment variable is set to a different time zone.	See
	      also TZNAME.

     Site Preferences
       These options change the default behavior of MH or enable optional fea‐
       tures.  Add the options which are appropriate for your configuration or
       your site preferences.

       editor: prompter
	    The default editor for MH.

       options:
	    `-D' options to cc(1).

	 ATZ
	      Directs MH to use alpha-timezones whenever possible.  You should
	      not use this option if you are on the Internet, since it will
	      make your host non-compliant with RFC-1123 (Requirements for
	      Internet Hosts).

	 ATHENA
	      Makes repl `-nocc all' the default instead of `-cc all'.	You
	      may want to enable this if you're using xmh.

	 BANG
	      Directs MH to favor `!' over `@' in addressing.

	 BERK
	      Optional for for 4.{2,3}BSD sites running SendMail.  Disables
	      nearly all of the RFC822 address and header-parsing routines in
	      favor of recognizing such formats as ASCnet, and so on.  If you
	      don't need to disable the parser for this reason, you probably
	      want to use “options DUMB” instead.

	 COMPAT
	      If you previously ran a version of MH earlier than mh.4 use this
	      option.  After a short grace period, remove it and re-{config‐
	      ure,generate,install} everything.

	 DUMB
	      Directs MH not to try and rewrite addresses to their “official”
	      form.

	 FOLDPROT
	      Defines the octal value for default folder-protection.  For
	      example, FOLDPROT='“0700”'.  The default is “0711”.

	 ISI
	      When using “repl -ccme”, only “cc:” the first address found
	      which belongs to the user; any other Alternate-Mailboxes do not
	      receive “cc:”s.

	 LINK
	      Defines the filename for alternate file name for dist and repl.
	      For example, LINK='“\\043”' to use the pound-sign character.
	      The default is “@”.

	 MHE
	      Enables crude support for Brien Reid's MHE interface.  Recom‐
	      mended for use with the GNU Emacs mh-e package.

	 MHRC
	      Enables MH to recognize the CShell's `~'-construct.  This is
	      useful for sites that run with a ~/.mhrc for their users.

	 MIME
	      Enables support for multi-media messages, as specified in RFC
	      1341 -- a major win.  This allows you to include things like
	      audio, graphics, and the like, in your mail messages.  Several
	      MH commands are extended to support these multi-media messages,
	      and the mhn command is provided to encode and decode MIME mes‐
	      sages.  For more details, see miscellany/multi-media/READ-ME and
	      mhn(1).

	 MSGID
	      Enables slocal to detect and surpress duplicate messages
	      received.	 This code uses the <ndbm.h> library, and requires
	      “options BSD42” since it uses the flock(2) system call for lock‐
	      ing.  (Note that this means its database locking does not work
	      over NFS.)  It has only been tested under SUN40.

	 MSGPROT
	      Defines the octal value for default folder-protection.  For
	      example, MSGPROT='“0600”'.  The default is “0644”.

	 NOMHSEQ
	      Directs MH to make private sequences the default.

	 OVERHEAD
	      Enable MH commands to read profile/context from open fd:s with‐
	      out doing an open(); see mh-profile(5) for the details.

	 RPATHS
	      Directs inc to note UNIX “From ” lines as Return-Path: info.

	 SBACKUP
	      Defines the prefix string for backup file names.	For example,
	      SBACKUP='“\\043”'.  The default is “,”.

	 TMA
	      Support for the TTI trusted mail agent (TMA).  Although the TTI
	      TMA is not in the public domain, the MH support for the TTI TMA
	      is in the public domain.	You should enable this option only if
	      you are licensed to run the TMA software (otherwise, you don't
	      have the software in your MH source tree).

	 TTYD
	      Support for TTYD.	 This is no longer in wide use, and is not
	      recommended.

	 UCI
	      First, “_” and “#” are recognized as the prefixes for scratch
	      files.  Second, support for the UCI group-leadership mechanism
	      is enabled in conflict.  Third, the first line of the file file
	      $HOME/.signature is used as the Full Name part of your “From:”
	      header.  This may conflict with the interpretation of this file
	      by News.	If you're not at UCI, you probably don't want this
	      option.

	 UK
	      Directs the scan program to generate UK-style dates by default.

	 WHATNOW
	      Enable certain MH commands to act differently when $mhdraft set.

	 YEARMOD
	      This option makes the mh-format %(year) function always return a
	      value less than 100.  Enable this option if you have local mh-
	      format(5) files which cannot handle 4-digit years.  You should
	      convert these files to use a 4-character field width, or use the
	      %(modulo 100) function to obtain a 2-digit year value.  After a
	      short grace period, remove `YEARMOD' and re-{configure,gener‐
	      ate,install} everything.

     Testing/debugging
       debug: off
	    Support for debug mode of MH.  Don't use this unless you know what
	    you're doing, which isn't likely if you're reading this document!

       regtest: off
	    Set this to “on” if you are doing regression testing among differ‐
	    ent compilations of MH, and you do not want the hostname and com‐
	    pile date included in MH binaries.

       Now edit conf/config/mtstailor, depending on your choice of the setting
       for mts in the MH configuration file.  for an mts setting of “mh”, look
       at the file conf/tailor/mhmts; for an mts setting of “sendmail”, “send‐
       mail/smtp”, “mmdf/smtp”, or “mmdf2/smtp”, look at the file conf/tai‐
       lor/sendmts; and, for an mts setting of “mmdf”, or  “mmdf2”, look at
       the file conf/tailor/mmdf.

       Now install the configured files into the source areas.	(On SYS5 sys‐
       tems, or other systems where you get complaints about “_index” and
       “_rindex” being undefined, you should use “make sys5” to compile mhcon‐
       fig.)

       % make
       % ./mhconfig MH

       Before proceeding, you should familiarize yourself with the Administra‐
       tor's Guide.  To generate an nroff version, go to the doc/ directory
       and type:

       % (cd ../doc/; make ADMIN.doc)

       If you're already running MH at your site, you should also read the mh
       changes document CHANGES.  The source is in papers/changes/.

       After reading the Administrator's Guide, you may decide to change your
       MH configuration.  If so, cd back to the conf/ directory, re-edit the
       files MH and conf/config/mtstailor, and re-run mhconfig.

       You now proceed based on your choice of a transport system (the setting
       for mts above).	The best interface is achieved with “sendmail” fol‐
       lowed by “mmdf” or (“mmdf2”), and then “mh” (stand-alone delivery, not
       recommended).

   SENDMAIL
       If you have not enabled BBoards or POP then no further MTS-specific
       action is required on your part!

       If you have enabled POP, but you want to let SendMail deliver mail POP
       mail using its standard delivery program /bin/mail, then, again, no
       further MTS-specific action is required on your part!

       Otherwise, go to the mts/sendmail/ directory.

       % cd ../mts/sendmail/

       This directory contains files whose definitions correspond to the con‐
       figuration of your SendMail system.  If you have enabled BBoards or POP
       service, then you will need to re-configure SendMail.  First, in the
       “local info” section of your site's SendMail configuration file, choose
       a free macro/class (B is used in this distribution), and add these
       lines:

	    # BBoards support
	    DBbboards
	    CBbboards

       Second, immediately after the inclusion of the zerobase file, in the
       “machine dependent part of ruleset zero” section, add these lines:

	    # resolve names for the BBoards system
	    R$+<@$=B>	   $#bboards$@$2$:$1	    topic@bboards

       Be sure to use tabs when separating these fields.  Third, add the line

	    include(bboardsMH.m4)

       after the line

	    include(localm.m4)

       in your site's SendMail configuration file.  Finally, you should link
       the file mts/sendmail/bboardsMH.m4 into your SendMail cf/ directory and
       re-configure SendMail.

       If you have enabled POP service, a similar procedure must be used on
       the POP service host, to re-configure SendMail.	First, in the “local
       info” section of your site's SendMail configuration file, choose a free
       macro/class (P is used in this distribution), and add these lines:

	    # POP support
	    DPpop
	    CPpop

       Second, immediately after the inclusion of the zerobase file, in the
       “machine dependent part of ruleset zero” section, add these lines:

	    # resolve names for the POP system
	    R$+<@$=P>	   $#pop$@$2$:$1	    subscriber@pop

       Be sure to use tabs when separating these fields.  Third, add the line

	    include(popMH.m4)

       after the line

	    include(localm.m4)

       in your site's SendMail configuration file.  Finally, you should link
       the file mts/sendmail/popMH.m4 into your SendMail cf/ directory and
       re-configure SendMail.

   MMDF
       If you want MMDF to be your transport service, and have NOT specified
       “mmdf/smtp” (or “mmdf2/smtp”) as your mts setting, then go to the mmdf/
       directory.  (If you're using “mmdf/smtp” or “mmdf2/smtp” as your mts
       setting, then skip to the next section.)

       % cd ../mts/mmdf/

       This directory contains files whose definitions correspond to the con‐
       figuration of your MMDF system.

       If you're running MMDF-I, then copy the following files from wherever
       you keep the MMDF sources to this directory: mmdf/h/ch.h,
       mmdf/h/conf.h, utildir/conf_util.h, utildir/ll_log.h, mmdf/h/mmdf.h,
       utildir/util.h, mmdf/mmdf_lib.a, and utildir/util_lib.a.

       If you're running MMDF-II, then copy the following files from where you
       keep the MMDF sources to this directory: h/ch.h, h/conf.h, h/dm.h,
       h/ll_log.h, h/mmdf.h, h/util.h, and lib/libmmdf.a

       If you have enabled bboards, then the directories support/bboards/mmdfI
       and support/bboards/mmdfII contain information you'll need to put a UCI
       BBoards channel in your MMDF configuration.  Similarly, if you have
       enabled option “mf” and are running MMDF-I, then the zotnet/mf/mmdfI/
       directory contains information you'll need to put a UUCP channel in
       your MMDF-I configuration.  Finally, the directory support/pop/mmdfII
       contains information you'll need to put a POP channel in your MMDF-II
       configuration.

       Note that MMDF-II is distributed with the BBoards channel, although the
       version in the MH distribution might be more current, the version in
       the MMDF-II distribution has been tested with that revision of MMDF.

   MMDF/SMTP
       If you are using “mmdf/smtp” as your mts setting, then no further
       MTS-specific action is required on your part!

   MMDF2/SMTP
       If you are using “mmdf2/smtp” as your mts setting, then no further
       MTS-specific action is required on your part!

   STAND-ALONE DELIVERY
       If, instead, you want MH to handle its own mail delivery, then no fur‐
       ther MTS-specific action is required on your part!

GENERATION
       Go to the MH top-level directory and generate the system.

       % cd ../; make

       This will cause a complete generation of the MH system.	If all goes
       well, proceed with installation.	 If not, complain, as there “should be
       no problems” at this step.

INSTALLATION
       If the directories you chose for the user-programs, support-programs
       and manuals (“bin”, “etc”, “popdir”, “slibdir”, and “mandir” in the
       conf/MH file) don't exist, you should create them at this point.

       Next, if you enabled support for the UCI BBoards facility, then create
       a login called “bboards” with the following characteristics: home
       directory is /usr/spool/bboards/ with mode 755 (actually, use the value
       for “bbhome” given in the MH configuration file), login shell is
       /bin/csh (or /bin/sh), and, encrypted password field is “*”.  The
       “bboards” login should own the /usr/spool/bboards/ directory.  In addi‐
       tion to creating /usr/spool/bboards/, also create
       /usr/spool/bboards/etc/ and /usr/spool/bboards/archive/.	 These direc‐
       tories should also be owned by the “bboards” login.

       If you enabled support for POP, then on the POP service host, create a
       login called “pop” with the following characteristics: home directory
       is /usr/spool/pop/ with mode 755, login shell is /bin/csh, and,
       encrypted password field is “*”.	 If you don't have /bin/csh on your
       system (V7), then /bin/sh is just fine.	The “pop” login should own the
       /usr/spool/pop/ directory.  You'll also need to add a line to the
       /etc/services file and the /etc/rc.local file, see the Administrator's
       Guide  for more details.

       If this is not the first time you have installed MH, these files will
       need particular attention:

	    Directory		      Files
	    “etc/”		      MailAliases, BBoardAliases, mtstailor
	    /usr/spool/bboards/	      BBoards, .cshrc, .mh_profile
	    /usr/spool/bboards/etc/   *

       The MailAliases, BBoardAliases, mtstailor and BBoards files will NOT be
       installed over existing copies; you will need to edit these by hand and
       merge in any changes from your previous MH release.  The other files
       under /usr/spool/bboards/ will be overwritten if they exist.  You may
       wish to preserve your old versions of these before installing MH.

       As the super-user, and from the mh.6/ directory, install the system.

       # make inst-all

       This will cause the MH processes and files to be transferred to the
       appropriate areas with the appropriate attributes.

TAILORING
       See the Administrator's Guide for information on tailoring MH for the
       MTS, BBoards, and POP.

DOCUMENTATION
       In addition to this document, the Administrator's Guide, and the User's
       Manual, there are several documents referenced by the user's manual
       which may be useful.  The sources for all of these can be found under
       the papers/ directory.

OTHER THINGS
       Consult the directory miscellany/ for the sources to a number of things
       which aren't part of the mainstream MH distribution, but which are
       still quite useful.

FILES
       Too numerous to mention.	 Really.

SEE ALSO
       make(1)

BUGS
       The mhconfig program should be smarter.

       There's no way to print the Administrator's Guide until after you have
       configured the system; it is difficult to configure the system without
       the Administrator's Guide.

       The Makefiles should know when mhconfig has been run and force “make
       clean” behavior.

[mh.6]				   MH.6.8.3			     MH-GEN(8)
[top]

List of man pages available for 4.4BSD

Copyright (c) for man pages and the logo by the respective OS vendor.

For those who want to learn more, the polarhome community provides shell access and support.

[legal] [privacy] [GNU] [policy] [cookies] [netiquette] [sponsors] [FAQ]
Tweet
Polarhome, production since 1999.
Member of Polarhome portal.
Based on Fawad Halim's script.
....................................................................
Vote for polarhome
Free Shell Accounts :: the biggest list on the net