1 .\"     $OpenBSD: mailwrapper.8,v 1.10 2009/02/07 16:58:23 martynas Exp $
   2 .\"     $NetBSD: mailwrapper.8,v 1.11 2002/02/08 01:38:50 ross Exp $
   3 .\" $FreeBSD: releng/9.1/usr.sbin/mailwrapper/mailwrapper.8 205938 2010-03-30 21:54:25Z delphij $
   4 .\"
   5 .\" Copyright (c) 1998
   6 .\"     Perry E. Metzger.  All rights reserved.
   7 .\"
   8 .\" Redistribution and use in source and binary forms, with or without
   9 .\" modification, are permitted provided that the following conditions
  10 .\" are met:
  11 .\" 1. Redistributions of source code must retain the above copyright
  12 .\"    notice, this list of conditions and the following disclaimer.
  13 .\" 2. Redistributions in binary form must reproduce the above copyright
  14 .\"    notice, this list of conditions and the following disclaimer in the
  15 .\"    documentation and/or other materials provided with the distribution.
  16 .\" 3. All advertising materials mentioning features or use of this software
  17 .\"    must display the following acknowledgment:
  18 .\"     This product includes software developed for the NetBSD Project
  19 .\"     by Perry E. Metzger.
  20 .\" 4. The name of the author may not be used to endorse or promote products
  21 .\"    derived from this software without specific prior written permission.
  22 .\"
  23 .\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
  24 .\" IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
  25 .\" OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
  26 .\" IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT,
  27 .\" INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
  28 .\" NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
  29 .\" DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
  30 .\" THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  31 .\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
  32 .\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  33 .\"
  34 .Dd August 7, 2006
  35 .Dt MAILWRAPPER 1M
  36 .Os
  37 .Sh NAME
  38 .Nm \fB/usr/lib/mailwrapper\fR
  39 .Nd invoke appropriate MTA software based on configuration file
  40 .Sh SYNOPSIS
  41 Special.
  42 See below.
  43 .Sh DESCRIPTION
  44 At one time, the only Mail Transfer Agent (MTA) software easily available
  45 was
  46 .Xr sendmail 1M .
  47 As a result of this, most Mail User Agents (MUAs) such as
  48 .Xr mail 1
  49 had the path and calling conventions expected by
  50 .Xr sendmail 1M
  51 compiled in.
  52 .Pp
  53 Times have changed, however.
  54 On a modern
  55 .Ux
  56 system, the administrator may wish to use one of several
  57 available MTAs.
  58 .Pp
  59 It would be difficult to modify all MUA software typically available
  60 on a system, so most of the authors of alternative MTAs have written
  61 their front end message submission programs so that they use the same
  62 calling conventions as
  63 .Xr sendmail 1M
  64 and may be put into place instead of
  65 .Xr sendmail 1M
  66 in
  67 .Pa /usr/lib/sendmail .
  68 .Pp
  69 .Xr sendmail 1M
  70 also typically has aliases named
  71 .Xr mailq 1
  72 and
  73 .Xr newaliases 1M
  74 linked to it.
  75 The program knows to behave differently when its
  76 .Va argv[0]
  77 is
  78 .Dq mailq
  79 or
  80 .Dq newaliases
  81 and behaves appropriately.
  82 Typically, replacement MTAs provide similar
  83 functionality, either through a program that also switches behavior
  84 based on calling name, or through a set of programs that provide
  85 similar functionality.
  86 .Pp
  87 Although having drop-in replacements for
  88 .Xr sendmail 1M
  89 helps in installing alternative MTAs, it essentially makes the
  90 configuration of the system depend on hand installing new programs in
  91 .Pa /usr .
  92 This leads to configuration problems for many administrators, since
  93 they may wish to install a new MTA without altering the system
  94 provided
  95 .Pa /usr .
  96 (This may be, for example, to avoid having upgrade problems when a new
  97 version of the system is installed over the old.)
  98 They may also have a shared
  99 .Pa /usr
 100 among several
 101 machines, and may wish to avoid placing implicit configuration
 102 information in a read-only
 103 .Pa /usr .
 104 .Pp
 105 The
 106 .Nm
 107 utility is designed to replace
 108 .Pa /usr/lib/sendmail
 109 and to invoke an appropriate MTA instead of
 110 .Xr sendmail 1M
 111 based on configuration information placed in
 112 .Pa /etc/mailer.conf .
 113 This permits the administrator to configure which MTA is to be invoked on
 114 the system at run time.
 115 .Pp
 116 Other configuration files may need to be altered when replacing
 117 .Xr sendmail 1M .
 118 .Sh EXIT STATUS
 119 .Ex -std
 120 .Sh DIAGNOSTICS
 121 The
 122 .Nm
 123 will print a diagnostic if its configuration file is missing or malformed,
 124 or does not contain a mapping for the name under which it was invoked.
 125 .Sh SEE ALSO
 126 .Xr mail 1 ,
 127 .Xr mailq 1 ,
 128 .Xr newaliases 1M ,
 129 .Xr sendmail 1M ,
 130 .Xr mailer.conf 4