On 3-Jun-08, at 4:36 AM, Radu Greab wrote:
The documentation says that for the following hooks the return values
are ignored or discarded:
post-fork post-connection disconnect deny ok
I had however to change my custom plugins to return DECLINE from
post-fork hooks, otherwise, with no explicit return statement, only
the
hook of the first plugin was called, the hooks of the other plugins
were
not called.
I think that it is a bug that the code does not ignore the return
values
of the hooks mentioned above and stops calling all the plugins which
registered interest in the hooks.
Am I right and should the code be changed to really ignore the return
values from those hooks?
No, the docs need changed :-)
While the return values are ignored, you must still abide by the
qpsmtpd processing model (e.g. return DECLINED to allow the next hook
to fire, return DONE to stop there, etc).
What it really means is you can't create an SMTP return code in one
of those hooks, e.g. by returning DENY and hoping that a 5xx will be
sent to the client.
Matt.