DragonFly On-Line Manual Pages
masqmail(8) Maintenance Commands masqmail(8)
NAME
masqmail - An offline Mail Transfer Agent
SYNOPSIS
masqmail [-t] [-oi] [-f ADDRESS] RECIPIENT...
mailq
masqmail -bp
runq
masqmail -q
masqmail -qo NAME
mailrm MSGID...
masqmail -Mrm MSGID...
masqmail [-C FILE] [-odq] -bs
masqmail [-C FILE] [-odq] -bd -qINTERVAL
(This list is a selection.)
DESCRIPTION
Masqmail is a mail server designed for hosts that do not have a
permanent internet connection e.g. 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.
OPERATION MODES
Masqmail operates in one of several exclusive modes.
The daemon mode has two flavors that may be, and usually are, used in
combination:
Daemon (listen)
-bd or invoked as smtpd
Run as daemon. Act as SMTP server and accept SMTP connections,
on port 25 if not configured differently.
This is normally used in the startup script at system boot and
together with -qINTERVAL (see below).
Alternatively masqmail can be run with the -bs option from
inetd.
Daemon (queue)
-qINTERVAL
Run as daemon. Do regular queue runs at the specified time
interval. This is normally used together with -bd (see above).
An argument may be a time interval i.e. 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. Combinations like -q1h30m, which sendmail
accepts, are not possible.
Alternatively single queue runs (-q) can be started from cron.
The queue processing mode has two flavors that may be used in
combination:
Single queue run (normal)
-q (without argument) or invoked as runq
Do a single queue run. Try to deliver all messages in the
queue. Masqmail sends to addresses on the local host and to
remote ones, if available online routes permit it. That means,
masqmail sends all queued mail it can. Online detection is done
with the configured method (see online_query in
masqmail.conf(5)).
Single queue run (only named route)
-qo NAME
Do a single queue run and deliver only using the specified
online route.
The route configuration for NAME is read and queued mail to
matching remote recipients is sent. (See query_routes.NAME in
the main config file.)
You may want to use this option in scripts that run as soon as a
link to the internet has been set up (e.g. ip-up).
Obsolete behavior: Up to now: If -qo has no argument, the online
connection is determinded by online detect and, if available,
mail is sent through it. If none is available no mail is
delivered.
This behavior is likely to change in future versions because it
is included in -q. We could do something more useful instead.
The other modes are simple ones:
Rebuild alias database
-bi or invoked as newaliases
A no-op for masqmail, just exit. Old sendmail rebuilds its
alias database when invoked with this option. Masqmail reads
directly from its alias file (see config option `alias_file'),
thus no database needs to be updated.
Accept messages
-bm, also the default mode
Accept a text message on stdin. This is the default mode of
operation. One will hardly use this switch as it is the
default.
The command line options -f,-F,-i/-oi,-t are only used in this
mode.
Print queue
-bp or invoked as mailq
Show the messages in the queue.
Stand-alone SMTP server
-bs
Act as SMTP server by reading commands from stdin and writing to
stdout. Some mailers (e.g. pine) use this option as an
interface. It can also be used to call masqmail from inetd.
Print version
-bV or if called without arguments
Print version information, then exit.
Queue manipulation mode
-Mrm or invoked as mailrm
Remove given messages from the queue. Privileged users may
remove any message, other users only their own. The message
identifiers are listed when printing the queue (see -bp).
The default mode:
When no mode had been specified by either one of the above command line
options or by calling masqmail under a special name, then the default
mode -bm (i.e. accept messages on stdin) is entered. However, if
neither address arguments are specified nor -t is given, then mail can
not be sent, hence something more useful is done: -bV is assumed.
OPTIONS
Since masqmail is intended to replace sendmail, it uses the same
command line options, but not all are implemented. The -qo option is
additional, and unique to masqmail.
--
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.
-bd
``Daemon (listen)'' mode. See above.
-bi
``Rebuild alias database'' mode. See above.
-bm
``Accept message'' mode. See above.
-bp
``Print queue'' mode. See above.
-bs
``Stand-alone SMTP server'' mode. See above.
-bV
``Print version'' mode. See above.
-B arg
arg is usually 8BITMIME. Some mailers use this to indicate that
the message contains characters > 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 does not 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).
-C filename
Use another configuration than /etc/masqmail/masqmail.conf.
Useful for debugging purposes. If not invoked by a privileged
user, masqmail will drop all privileges.
-d number
Set the debug level. This takes precedence before the value of
`debug_level' in the configuration file. Read the warning in
the description of the latter. Only root may set the debug
level.
-f [address]
Set the return path address to address. Only root, the user
mail and anyone in group mail is allowed to do that.
-F [string]
Set the full sender name (in the From: header) to string.
-i
Same as -oi, see below. Kept for compatibility.
-Mrm msgid...
``Queue manipulation'' mode. See above.
-m
``Me too'' This switch is ignored as, masqmail never excludes
the sender from any alias expansions.
-m is an ancient alias for -om. Kept for compatibility.
-odb
``Deliver in Background'' Masqmail always does this. Hence
masqmail ignores this switch.
-odq
``Do Queueing'' 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 (but global)
effect by setting the do_queue option in
/etc/masqmail/masqmail.conf.
-oi
A dot as a single character in a line does not terminate the
message.
The same as -i.
-oXXX
Any other switch starting with `-o' is ignored. This especially
affects -om, -oem, -oee.
-q
``Single queue run (normal)'' mode. See above.
-qINTERVAL
``Daemon (queue)'' mode. See above.
-qo name
``Single queue run (only named route)'' mode. See above.
-t
Read recipients from mail headers and add them to the ones
specified on the command line. (Only To:, Cc:, and Bcc: headers
are regarded.)
WARNING: The behavior changed with version 0.3.1!
In earlier versions command line argument addresses were
``substracted'' from header addresses.
The old behavior was similar to exim's and smail's (which are
anchesters of masqmail). The new behavior is similar to the one
of current postfix versions, which add the arguments to the set
of header recipients. (Earlier postfix failed in case of
address arguments with -t.) Sendmail seems to behave
differently, depending on the version. See exim(8) for further
information.
For masqmail the most simple approach had been taken.
As the behavior of -t together with command line address
arguments differs among MTAs, one better not steps into this
corner case.
-v
``Verbose'' 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.
ENVIRONMENT FOR PIPES AND MDAS
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:
SENDER, RETURN_PATH - the return path.
SENDER_DOMAIN - the domain part of the return path.
SENDER_LOCAL - the local part of the return path.
RECEIVED_HOST - the host the message was received from (unless local).
LOCAL_PART, USER, LOGNAME - the local part of the (original) recipient.
MESSAGE_ID - the unique message id. This is not necessarily identical
with the Message ID as given in the Message ID: header.
QUALIFY_DOMAIN - the domain which will be appended to unqualified
addresses.
FILES
/etc/masqmail/masqmail.conf
The main configuration for masqmail. Depending on the settings
in this file, you will also have other configuration files in
/etc/masqmail/.
/var/spool/masqmail/
The spool directory where masqmail stores its queued mails.
/var/spool/mail/
The directory where locally delivered mail will be put, if not
configured differently in masqmail.conf.
/var/log/masqmail/
The directory where masqmail stores its log messages.
Any of the paths can be configured at compile time, and (except the
main config file) also in the main config file. The typical paths are
different, depending on the Unix system you use.
CONFORMING TO
RFC 821, 822, 1869, 1870, 2197, 2554 (SMTP)
RFC 1321 (MD5)
RFC 2195 (CRAM-MD5)
AUTHOR
Masqmail was written by Oliver Kurth. It is now maintained by Markus
Schnalke <meillo@marmaro.de>.
You will find the newest version of masqmail on its website:
http://marmaro.de/prog/masqmail/. There is also a mailing list; you
will find information about it on the website.
BUGS
Bug reports of any kind are very welcome. They help masqmail to become
better. Please report bugs to the mailing list (anyone can post).
SEE ALSO
masqmail.conf(5), masqmail.route(5), masqmail.aliases(5)
masqmail-0.3.5 2015-02-07 masqmail(8)