Skip to content
Find file
Fetching contributors…
Cannot retrieve contributors at this time
50 lines (39 sloc) 1.87 KB
Improve logging.
* Output should be in a more consistent format.
* All messages related to a particular queue id should be prefixed.
with that ID.
* All messages related to an SMTP connection should be prefixed
with smtpd and the IP address of the peer.
Make sure that maild never tries to make an SMTP connection to itself.
It should immediately bounce in that case. or should it just hold it
and log a complaint? I prefer to err on the side of not bouncing.. so
that a sysadmin can make fixes and get a message to go through after
discovering the problem.
Optionally honor Errors-To header.
Messages w/o a To, Cc: or Bcc: header should have one of them
automatically addeded. The method in which this is done should be
configurable. Sendmail has the following options:
don't do anything
add a To: header
add Apparently-To: header
add empty Bcc: header
add To: undisclosed:; header
RFCs 1891 and 1894 discuss standards for delivery status notification
(bounces, return receipts, etc).
sendmail has a connect timeout (defaults to the kernel's timeout) and
an iconnect timeout. The latter is used to immediately send mail to
responsive hosts. It is a short timeout (a few seconds). If it times
out, the messsage is sent backgrounded instead.
Disk space checker. Don't accept mails if the spool directory has
less than 'x' blocks free. The error message:
452 4.4.5 Insufficient disk space; try again later
use (excl.osi:get-filesystem-free-space)
Integrate this w/ the MAIL FROM SIZE= parameter as well (if supplied by the
Limit the number of threads. This is done for delivery threads, but
not for SMTP threads. Also add load average control. If it gets past
a certain point, stop accepting mail via SMTP and only queue mails
from command line.
Pass some useful environment variables to program aliases (like
postfix does).
Something went wrong with that request. Please try again.