mailwrapper - invoke appropriate MTA software based on configuration file
Special. See below.
At one time, the only Mail Transfer Agent (MTA) software
was sendmail(8). As a result of this, most Mail User Agents
as mail(1) had the path and calling conventions expected by
Times have changed, however. On a modern 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
front end message submission programs so that they use the
conventions as sendmail(8) and may be put into place instead
sendmail(8) in /usr/sbin/sendmail.
sendmail(8) also typically has aliases named mailq(8) and
linked to it. The program knows to behave differently when
is ``mailq'' or ``newaliases'' and behaves appropriately.
MTAs provide similar functionality, either through
that also switches behavior based on calling name, or
through a set of
programs that provide similar functionality.
Although having drop-in replacements for sendmail(8) helps
alternative MTAs, it essentially makes the configuration of
depend on hard installing new programs in /usr. This leads
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 instead of sendmail(8) based on
information placed in /etc/mailer.conf. This permits the
to configure which MTA is to be invoked on the system at run
Configuration for mailwrapper is kept in /etc/mailer.conf.
/usr/sbin/sendmail is typically set up as a symlink to
is not usually invoked on its own.
mailwrapper will return an error value and print a diagnostic if its configuration
file is missing or malformed, or does not contain
for the name under which mailwrapper was invoked.
mail(1), mailer.conf(5), mailq(8), newaliases(8), sendmail(8)
Perry E. Metzger <email@example.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
should go away.
OpenBSD 3.6 December 16, 1998
[ Back ]