G. Pape
qconfirm
qconfirm-control - change qconfirm configuration through email
in
.qmail-ext-default:
|qconfirm-control [-v] [-t sec]
qconfirm-control
is an email interface to the qconfirm(1) program. It runs as a qmail-command(8)
from a .qmail-ext-default file.
Whenever an email is handled by this .qmail-ext-default
file, qconfirm-control checks the default part of the address extension
if it is empty, one of pending, ok, return, or bad, or an unique, 32 characters
long, key. If not, the email is bounced.
If default is not a key, qconfirm-control
treats the message as a request message, creates an unique key, runs 'qconfirm
list default | sort -r' and mails the output to $QCONTROL_OWNER. The from header
of the message is set to an address that is handled through the same .qmail-ext-default
file with the newly created key as default extension.
If default is 32 characters
long key, qconfirm-control checks if this key is valid, and if so, treats
the message as a control message and processes it for commands (see below).
If not, the message is bounced.
qconfirm-control processes each
line of the body of a control message for commands as follows:
If the line
is empty, it is ignored.
If the line starts with $QCONTROL_QUOTE (default:
'> '), qconfirm-control checks if the quoted line is of the format of the output
of 'qconfirm list', and if so, remembers the address after the timestamp
to add it to the next command found in the body. If the format doesn't match,
the line is ignored.
All other lines are interpreted as commands. If the
line doesn't start with one of the words list, check, accept, drop, bounce,
pending, remove, bad, or stop, or thanks, qconfirm-control prints a warning
and ignores the line.
qconfirm-control precedes each line it processes with
$QCONTROL_QUOTE ('> '), prints it, and then prints the output from processing
the line. The output of qconfirm-control is mailed to $QCONFIRM_OWNER.
If
the command is one of list, check, accept, drop, bounce, pending, remove,
or bad, qconfirm-control runs 'qconfirm command' with the remembered addresses
from quoted lines and all words following the command in the precessed
line as arguments, prints the output, and forgets the remembered addresses.
If the command is stop, qconfirm-control stops processing the control message
at the current line.
If the command is thanks, qconfirm-control stops processing
the control message at the current line, and invalidates the used key.
- -v
- verbose. Be more verbose when processing control messages.
- -t sec
- timeout.
A request message to qconfirm-control is deferred temporarily as long as
the corresponding unique key is valid. The unique key at the latest becomes
invalid when qmail tries to deliver the request message and the message
has been in the queue for at least sec seconds. Default is 300.
- QCONTROL_OWNER
- The environment variable QCONTROL_OWNER must contain a email address of
the owner of the corresponding qconfirm directory. If this environment variable
is not set, qconfirm-control refuses to run.
- QCONTROL_QUOTE
- The environment
variable QCONTROL_QUOTE overwrites the default quoting prefix in control
messages (> ).
- QCONFIRM_MAILNAME
- The environment variable QCONFIRM_MAILNAME
overrides the default mailname in the from header of confirmation requests
and acknowledgements (qconfirm).
- QCONFIRM_PREPEND
- This environment variable
must be set if the mail address you run qconfirm for is controlled through
qmail's virtualdomains. It must be set to the prepend part of the corresponding
entry in /var/qmail/control/virtualdomains plus a dash at the end.
- QCONFIRM_DIR
- The environment variable QCONFIRM_DIR overrides the default location of
the user's qconfirm directory (.qconfirm/).
~/.qconfirm/pending/
~/.qconfirm/ok/
~/.qconfirm/return/
~/.qconfirm/bad/
~/.qconfirm/control/
qconfirm(1), qconfirm-check(1), qconfirm-conf(1), qconfirm-accept(1),
qconfirm-return(1)
http://smarden.org/qconfirm/
Gerrit Pape <pape@smarden.org>
Table of Contents