Félix Horro Pita wrote:
It ckecks how many recipients are, and it returns a DENYSOFT_DISCONNECT
if there are more than the value of $maxrcpt (you can pass it as an
argument when you call the plugin, or 20 by default).
The thing that concerns me about the patch is the DENYSOFT_DISCONNECT
part. We don't issue that (450 and disconnect) in the core, nor in any
of the core plugins. I don't know that this will have the correct
behavior with servers in the wild, which may not attempt to redeliver
the message with fewer recipients. In fact, I suspect that the vast
majority of servers would just try a redelivery per their normal
scheduling and only fail the message with an error back to the user
after ~72 hours.
This /may/ have the correct behavior for MUA's using this server, but
even that is questionable. There are versions of lookOut/sExchange that
"helpfully" hide the text portion of any error messages, so the user
would have no way of knowing what went wrong. I hate getting phone
calls like that where the ultimate solution is to berate some poor
sExchange admin into repairing M$loth stupidity.
I might consider this plugin if it was somehow tailored to only fire in
response to MUA's (maybe require AUTH?) and not to MTA's in general.
You are certainly free to run it locally, but I don't think it is
appropriate for the core. You may want to put this on the wiki:
http://wiki.qpsmtpd.org/
in case someone else what to use it on their internal server.
John