<?xml version="1.0" standalone='no'?>
<!DOCTYPE manpage SYSTEM "http://masqmail.cx/xmltoman/xmltoman.dtd">
<?xml-stylesheet type="text/xsl" href="http://masqmail.cx/xmltoman/xmltoman.xsl" ?>

<manpage name="masqmail" section="8" desc="An offline Mail Transfer Agent">

<synopsis>
<cmd>/usr/sbin/masqmail [-C <arg>file</arg>] [-odq] [-bd] [-q<arg>interval</arg>]</cmd>
<cmd>/usr/sbin/masqmail [-odq] [-bs]</cmd>
<cmd>/usr/sbin/masqmail [-bp]</cmd>
<cmd>/usr/sbin/masqmail [-q]</cmd>
<cmd>/usr/sbin/masqmail [-qo [<arg>name</arg>]]</cmd>
<cmd>/usr/sbin/masqmail [-odq] [-g [<arg>name</arg>]]</cmd>
<cmd>/usr/sbin/masqmail [-odq] [-go [<arg>name</arg>]]</cmd>
<cmd>/usr/sbin/masqmail [-t] [-oi] [-f <arg>address</arg>] [--] <arg>address...</arg></cmd>
<cmd>/usr/sbin/mailq</cmd>
</synopsis>

<description>
<p>MasqMail is a mail server designed for hosts that do
not have a permanent internet connection eg. a home network or a
single host at home. It has special support for connections to
different ISPs. It replaces sendmail or other MTAs such as qmail or
exim. It can also act as a pop3 client.</p>
</description>

<options>
<p>Since masqmail is intended to replace sendmail, it uses the same
command line options, but not all are implemented. There are also two
additional options, which are unique to masqmail (-qo <arg>connection</arg> and -g)
</p>

<option>
<p><opt>--</opt></p>
<optdesc><p>Not a 'real' option, it means that all following arguments are to
be understood as arguments and not as options even if they begin with a
leading dash '-'. Mutt is known to call sendmail with this option.</p></optdesc>
</option>

<option>
<p><opt>-bd</opt></p>
<optdesc><p>Run as daemon, accepting connections, usually on port 25 if not
configured differently. This is usually used in the startup script at system boot and
together with the -q option (see below).</p></optdesc>
</option>

<option>
<p><opt>-bi</opt></p>
<optdesc><p>Old sendmail rebuilds its alias database when invoked with this
option. Masqmail ignores it. Masqmail reads directly from the file
given with <b>alias_file</b> in the config file.</p></optdesc>
</option>

<option>
<p><opt>-bp</opt></p>
<optdesc><p>Show the messages in the queue. Same as calling masqmail as
'mailq'.</p></optdesc>
</option>

<option>
<p><opt>-bs</opt></p>
<optdesc><p>Accept SMTP commands from stdin. Some mailers (eg pine) use this
option as an interface. It can also be used to call masqmail from
inetd.</p></optdesc>
</option>

<option>
<p><opt>-B <arg>arg</arg></opt></p>
<optdesc><p><arg>arg</arg> is usually 8BITMIME. Some mailers use this
to indicate that the message contains characters &gt; 127. Masqmail is
8-bit clean and ignores this, so you do not have to recompile elm,
which is very painful ;-). Note though that this violates some
conventions: masqmail <em>does not</em> convert 8 bit messages to any
MIME format if it encounters a mail server which does not advertise
its 8BITMIME capability, masqmail does not advertise this itself. This
is the same practice as that of exim (but different to
sendmail).</p></optdesc></option>

<option>
<p><opt>-bV </opt></p>
<optdesc><p>Show version information.</p>
</optdesc>
</option>

<option>
<p><opt>-C </opt><arg>filename</arg></p>
<optdesc><p>Use another configuration than <file>/etc/masqmail/masqmail.conf</file>. Useful for
debugging purposes. If not invoked by a privileged user, masqmail will drop all privileges.
</p></optdesc>
</option>

<option>
<p><opt>-d <arg>number</arg></opt></p>
<optdesc>
<p>Set the debug level. This takes precedence before the value of
<b>debug_level</b> in the configuration file. Read the warning in the
description of the latter.
</p>
</optdesc>
</option>

<option>
<p><opt>-f [<arg>address</arg>]</opt></p>
<optdesc>
<p>Set the return path address to <arg>address</arg>. Only root, the
user mail and anyoune in group trusted is allowed to do that.</p>
</optdesc>
</option>

<option>
<p><opt>-F [<arg>string</arg>]</opt></p>
<optdesc>
<p>Set the full sender name (in the From: header)
to <arg>string</arg>.</p>
</optdesc>
</option>

<option>
<p><opt>-g [<arg>name</arg>]</opt></p>
<optdesc>
<p>Get mail (using pop3 or apop), using the configurations given
with <b>get.<arg>name</arg></b> in the main configuration. Without <arg>name</arg>,
all get configurations will be used. See also <manref
name = "masqmail.get" section="5" href="masqmail.get.5.html"/></p>
</optdesc>
</option>

<option>
<p><opt>-go [<arg>interval</arg>] [<arg>name</arg>]</opt></p>
<optdesc>
<p>Can be followed by a connection name. Use this option in your
script which starts as soon as a link to the internet has been set up
(usually ip-up). When masqmail is called with this option, the
specified get configuration(s) is(are) read and mail will be
retrieved from servers on the internet.
The <arg>name</arg> is defined
in the configuration (see <opt>online_gets.<arg>name</arg></opt>).
</p><p>
If called with an interval option (recognized by a digit
as the first characater), masqmail starts as a daemon and tries to
get mail in these intervals. It checks for the online status first.
Example: masqmail -go 5m will retrieve mail
all five minutes.
</p><p>
If called without <arg>name</arg> the online status is determined with
the configured method (see <opt>online_detect</opt> in <a
href="config.html">config.html</a>).
</p>
</optdesc>
</option>

<option>
<p><opt>-i</opt></p>
<optdesc><p>Same as <b>-oi</b>, see below.</p></optdesc>
</option>

<option>
<p><opt>-Mrm <arg>list</arg></opt></p>
<optdesc><p>Remove given messages from the queue. Only allowed for privileged users.</p></optdesc>
</option>

<option>
<p><opt>-oem</opt></p>
<optdesc><p>If the <b>-oi</b> ist not also given, always return with a non zero
return code. Maybe someone tells me what this is good for...</p></optdesc>
</option>

<option>
<p><opt>-odb</opt></p>
<optdesc><p>Deliver in background. Masqmail always does this, which
makes this option pretty much useless.</p></optdesc>
</option>

<option>
<p><opt>-odq</opt></p>
<optdesc><p>Do not attempt to deliver immediately. Any messages will be queued
until the next queue running process picks them up and delivers
them. You get the same effect by setting the <i>do_queue</i> option in
/etc/masqmail/masqmail.conf.</p></optdesc>
</option>

<option>
<p><opt>-oi</opt></p>
<optdesc><p>A dot as a single character in a line does <em>not</em> terminate
the message.</p></optdesc>
</option>

<option>
<p><opt>-q [<arg>interval</arg>]</opt></p>
<optdesc><p>If not given with an argument, run a queue process, ie. try to
deliver all messages in the queue. Masqmail sends only to those
addresses that are on the <em>local</em> net, not to those that are
outside. Use -qo for those.</p>
<p>
If you have configured inetd to start masqmail, you can use this
option in a cron job which starts in regular time intervals, to mimic
the same effect as starting masqmail with -bd -q30m.
</p><p>
An argument may be a time interval ie. a numerical value followed
by one of the letters. s,m,h,d,w which are interpreted as seconds,
minutes, hours, days or weeks respectively. Example: -q30m. Masqmail
starts as a daemon and a queue runner process will be started
automatically once in this time interval. This is usually used
together with -bd (see above).
</p>
</optdesc>
</option>

<option>
<p><opt>-qo [<arg>name</arg>]</opt></p>
<optdesc>
<p>Can be followed by a connection name. Use this option in your
script which starts as soon as a link to the internet has been set up
(usually ip-up). When masqmail is called with this option, the
specified route configuration is read and the queued mail with
destinations on the internet will be sent. The <arg>name</arg> is defined
in the configuration (see <opt>online_routes.<arg>name</arg></opt>).
</p><p>
If called without <arg>name</arg> the online status is determined with
the configured method (see <opt>online_detect</opt> in <a
href="config.html">config.html</a>)
</p>
</optdesc>
</option>

<option>
<p><opt>-t</opt></p>
<optdesc><p>Read recipients from headers. Delete 'Bcc:' headers. If any
arguments are given, these are interpreted as recipient addresses and
the message will <em>not</em> be sent to these.</p></optdesc>
</option>

<option>
<p><opt>-v</opt></p>
<optdesc><p>Log also to stdout. Currently, some log messages are
marked as 'write to stdout' and additionally, all messages with
priority 'LOG_ALERT' and 'LOG_WARNING' will be written to stdout
if this option is given. It is disabled in daemon mode.
</p></optdesc>
</option>

</options>

<section name = "Environment for pipes and mdas">

<p>For security reasons, before any pipe command from an alias
expansion or an mda is called, the environment variables will be
completely discarded and newly set up. These are:</p>
<p>SENDER, RETURN_PATH - the return path.</p>
<p>SENDER_DOMAIN - the domain part of the return path.</p>
<p>SENDER_LOCAL - the local part of the return path.</p>
<p>RECEIVED_HOST - the host the message was received from (unless local).</p>
<p>LOCAL_PART, USER, LOGNAME - the local part of the (original) recipient.</p>
<p>MESSAGE_ID - the unique message id. This is not necessarily identical with the Message ID as given in the Message ID: header.</p>
<p>QUALIFY_DOMAIN - the domain which will be appended to unqualified addresses.</p>

</section>

<section name = "Files">
<p><file>/etc/masqmail/masqmail.conf</file> is the main configuration
for masqmail. Depending on the settings in this file, you will also
have other configuration files in <file>/etc/masqmail/</file>.</p>
<p><file>/etc/aliases</file> is the alias file, if not set differently
in <file>/etc/masqmail/masqmail.conf</file>.</p>
<p><file>/var/spool/masqmail/</file> is the spool directory where masqmail
stores its spooled messages and the uniq pop ids.</p>
<p><file>/var/spool/mail/</file> is the directory where locally delivered mail will be put, if not configured differently in <file>masqmail.conf</file>.</p>
<p><file>/var/log/masqmail/</file> is the directory where masqmail stores
its log mesages. This can also be somewhere else if configured
differently by your sysadmin or the package mantainer.</p>
</section>

<section name="Conforming to">
<p><b>RFC 821, 822, 1869, 1870, 2197, 2554</b> (SMTP)</p>
<p><b>RFC 1725, 1939</b> (POP3)</p>
<p><b>RFC 1321</b> (MD5)</p>
<p><b>RFC 2195</b> (CRAM-MD5)</p>
</section>

<section name = "Author">
<p>masqmail was written by Oliver Kurth
&lt;oku@masqmail.cx&gt;</p><p>You will find the newest version of
masqmail at <url href="http://masqmail.cx/masqmail/"/> or search for it
in freshmeat (<url href="http://www.freshmeat.net"/>). There is also a mailing list,
you will find information about it at masqmails main site.</p>
</section>

<section name = "Bugs">
<p>You should report them to the mailing list.</p>
</section>

<section name = "See also">
<p>
<manref name="masqmail.conf" section="5" href="masqmail.conf.5.html"/>, <manref name="masqmail.route" section="5" href="masqmail.route.5.html"/>, <manref name="masqmail.get" section="5" href="masqmail.get.5.html"/>, <manref name="masqmail.aliases" section="5" href="masqmail.aliases.5.html"/>
</p>
</section>

<section name = "Comments">
<p>This man page was written using <manref name="xml2man" section="1"
href="http://masqmail.cx/xml2man/"/> by the same author.</p>
</section>

</manpage>
