hold - zmailer deferred processing transport agent
hold [ -c channel ] [ -V ]
hold is a ZMailer transport agent which is usually only run by the scheduler(8) program to test conditions for reprocessing of previously deferred message addresses. The hold program must be run with the same current directory as the scheduler, namely POSTOFFICE/transport.
The program will interpret the host part of an address destined for its channel as a condition that must be met before the original address (in the user part) can be reprocessed by the router. The condition specification contains a general condition class name followed by colon followed by a parameter string. The currently supported condition classes are:
ns |
succeeds when the nameserver lookup indicated by the parameter does not produce a temporary nameserver error. The parameter is a domain name followed by a slash followed by a standard Internet nameserver Resource Record type name. |
|
timeout |
succeeds when the time given by the parameter (in normal secondssinceepoch format) has passed. |
|
io script |
succeeds 10% of the time, to allow retry of temporary I/O failures. runs the named shell script with the optional given argument. The parameter is a simple name, the shell script name within the MAILBIN/bin directory, optionally followed by a slash followed by an argument to be passed to the shell script. |
|
For example: |
||
NS:nic.ddn.mil/cname |
The condition class name is caseinsensitive but is capitalized by convention. The parameter strings are casepreserved for condition classspecific interpretation. Whitespace is not permitted.
The envelope of the resubmitted message is created from the sender and (no longer deferred) recipient addresses, and a "via suspension" header.
Options are: |
||||
-c channel -V |
specifies which channel name should be keyed on. The default is hold. prints a version message and exits. |
This program reads in processable file names relative to the current working directory of the scheduler (namely: $POSTIOFFICE/transport/). Optionally on the same line the scheduler may tell which host is to be looked for from the recipients of the message.
relativespoolpath [ <TAB> hostname ] |
This program produces diagnostic output on the standard output. Normal diagnostic output is of the form:
id/offset/status message |
where id is the inode number of the message file, offset is a byte offset within its control file where the address being reported on is kept, status is one of ok, error, or deferred, and the message is descriptive text associated with the report. The text is terminated by a linefeed. Any other format (as might be produced by subprocesses) is passed to standard output for logging in the scheduler log.
The exit status is a code from <sysexits.h>.
/etc/zmailer.conf
/var/spool/postoffice (POSTOFFICE)
scheduler(8)
This program authored and copyright by:
Rayan Zachariassen <no.current.address> Maintance in ZMailer environment
Matti Aarnio <mea@nic.funet.fi>