Merge from vendor branch TNFTP:
[dragonfly.git] / usr.sbin / mailwrapper / mailwrapper.8
1 .\"     $NetBSD: mailwrapper.8,v 1.11 2002/02/08 01:38:50 ross Exp $
2 .\" $FreeBSD: src/usr.sbin/mailwrapper/mailwrapper.8,v 1.12 2004/07/02 23:12:48 ru Exp $
3 .\" $DragonFly: src/usr.sbin/mailwrapper/mailwrapper.8,v 1.3 2005/07/04 13:33:02 corecode Exp $
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 .\" The following requests are required for all man pages.
35 .Dd December 16, 1998
36 .Dt MAILWRAPPER 8
37 .Os
38 .Sh NAME
39 .Nm mailwrapper
40 .Nd invoke appropriate MTA software based on configuration file
41 .Sh SYNOPSIS
42 Special.
43 See below.
44 .Sh DESCRIPTION
45 At one time, the only Mail Transfer Agent (MTA) software easily available
46 was
47 .Xr sendmail 8 .
48 As a result of this, most Mail User Agents (MUAs) such as
49 .Xr mail 1
50 had the path and calling conventions expected by
51 .Xr sendmail 8
52 compiled in.
53 .Pp
54 Times have changed, however.
55 On a modern
56 .Ux
57 system, the administrator may wish to use one of several
58 available MTAs.
59 .Pp
60 It would be difficult to modify all MUA software typically available
61 on a system, so most of the authors of alternative MTAs have written
62 their front end message submission programs so that they use the same
63 calling conventions as
64 .Xr sendmail 8
65 and may be put into place instead of
66 .Xr sendmail 8
67 in
68 .Pa /usr/sbin/sendmail .
69 .Pp
70 .Xr sendmail 8
71 also typically has aliases named
72 .Xr mailq 1
73 and
74 .Xr newaliases 1
75 linked to it.
76 The program knows to behave differently when its
77 .Va argv[0]
78 is
79 .Dq mailq
80 or
81 .Dq newaliases
82 and behaves appropriately.
83 Typically, replacement MTAs provide similar
84 functionality, either through a program that also switches behavior
85 based on calling name, or through a set of programs that provide
86 similar functionality.
87 .Pp
88 Although having replacement programs that plug replace
89 .Xr sendmail 8
90 helps in installing alternative MTAs, it essentially makes the
91 configuration of the system depend on hand installing new programs in
92 .Pa /usr .
93 This leads to configuration problems for many administrators, since
94 they may wish to install a new MTA without altering the system
95 provided
96 .Pa /usr .
97 (This may be, for example, to avoid having upgrade problems when a new
98 version of the system is installed over the old.)
99 They may also have a shared
100 .Pa /usr
101 among several
102 machines, and may wish to avoid placing implicit configuration
103 information in a read-only
104 .Pa /usr .
105 .Pp
106 The
107 .Nm
108 utility is designed to replace
109 .Pa /usr/sbin/sendmail
110 and to invoke an appropriate MTA instead of
111 .Xr sendmail 8
112 based on configuration information placed in
113 .Pa /etc/mail/mailer.conf .
114 This permits the administrator to configure which MTA is to be invoked on
115 the system at run time.
116 .Pp
117 Other configuration files may need to be altered when replacing
118 .Xr sendmail 8 .
119 For example, if the replacement MTA does not support the
120 .Fl A
121 option with
122 .Xr mailq 1 ,
123 .Va daily_status_include_submit_mailq
124 should be turned off in
125 .Pa /etc/periodic.conf .
126 .Sh EXIT STATUS
127 .Nm
128 exits 0 on success, and \*[Gt]0 if an error occurs.
129 .Sh FILES
130 Configuration for
131 .Nm
132 is kept in
133 .Pa /etc/mail/mailer.conf .
134 .Pa /usr/sbin/sendmail
135 is typically set up as a symbolic link to
136 .Nm
137 which is not usually invoked on its own.
138 .Sh DIAGNOSTICS
139 The
140 .Nm
141 utility will print a diagnostic if its configuration file is malformed or does
142 not contain a mapping for the name under which
143 .Nm
144 was invoked.
145 In case the configuration file does not exist at all, a syslog event is being
146 generated and
147 .Nm
148 falls back to the default mailer, which is
149 .Xr sendmail 8 .
150 .Sh SEE ALSO
151 .Xr mail 1 ,
152 .Xr mailq 1 ,
153 .Xr newaliases 1 ,
154 .Xr mailer.conf 5 ,
155 .Xr periodic.conf 5 ,
156 .Xr sendmail 8
157 .Sh HISTORY
158 The
159 .Nm
160 utility first appeared in
161 .Nx 1.4
162 and then
163 .Fx 4.0 .
164 .Sh AUTHORS
165 .An Perry E. Metzger Aq perry@piermont.com
166 .Sh BUGS
167 The entire reason this program exists is a crock.
168 Instead, a command
169 for how to submit mail should be standardized, and all the "behave
170 differently if invoked with a different name" behavior of things like
171 .Xr mailq 1
172 should go away.