Updated: 2022/Sep/29

Please read Privacy Policy. It's for your privacy.

MAILWRAPPER(8)              System Manager's Manual             MAILWRAPPER(8)

     mailwrapper - invoke appropriate MTA software based on configuration file

     Special.  See below.

     Once upon time, the only Mail Transfer Agent (MTA) software easily
     available was "sendmail".  This famous MTA was written by Eric Allman and
     first appeared in 4.1BSD.  The legacy of this MTA affected most Mail User
     Agents (MUAs) such as mail(1); the path and calling conventions expected
     by "sendmail" were compiled in.

     But times changed.  On a modern NetBSD system, the administrator may wish
     to use one of several available MTAs.

     It would be difficult to modify all MUA software typically available on a
     system, so most of the authors of alternative MTAs have written their
     front end message submission programs that may appear in the place of
     /usr/sbin/sendmail, but still follow the same calling conventions as

     The "sendmail" MTA also typically has aliases named mailq(1) and
     newaliases(1) linked to it.  The program knows to behave differently when
     its argv[0] is "mailq" or "newaliases" and behaves appropriately.
     Typically, replacement MTAs provide similar functionality, either through
     a program that also switches behavior based on calling name, or through a
     set of programs that provide similar functionality.

     Although having replacement programs that plug replace "sendmail" helps
     in installing alternative MTAs, it essentially makes the configuration of
     the system depend on hand installing new programs in /usr.  This leads to
     configuration problems for many administrators, since they may wish to
     install a new MTA without altering the system provided /usr.  (This may
     be, for example, to avoid having upgrade problems when a new version of
     the system is installed over the old.)  They may also have a shared /usr
     among several machines, and may wish to avoid placing implicit
     configuration information in a read-only /usr.

     The mailwrapper program is designed to replace /usr/sbin/sendmail and to
     invoke an appropriate MTA based on configuration information placed in
     /etc/mailer.conf.  This permits the administrator to configure which MTA
     is to be invoked on the system at run time.

     Configuration for mailwrapper is kept in /etc/mailer.conf.
     /usr/sbin/sendmail is typically set up as a symlink to mailwrapper which
     is not usually invoked on its own.

     The mailwrapper utility exits 0 on success, and >0 if an error occurs.

     mailwrapper will print a diagnostic if its configuration file is missing
     or malformed, or does not contain a mapping for the name under which it
     was invoked.

     mail(1), mailq(1), newaliases(1), postfix(1), mailer.conf(5)

     The mailwrapper program appeared in NetBSD 1.4.

     Perry E. Metzger <perry@piermont.com>

     The entire reason this program exists is a crock.  Instead, a command for
     how to submit mail should be standardized, and all the "behave
     differently if invoked with a different name" behavior of things like
     mailq(1) should go away.

NetBSD 9.99                     April 10, 2010                     NetBSD 9.99