[Raw Msg Headers][Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: userful patch -- finally!
> When Matti was here we found a very annoying bug that would
> make smtp client spin if remote smtp server would violate SMTP protocol
> by issueing 220 and 551 consequentally without delay and then immediately
> handup. Here is the fix. Regards,
I don't quite agree with the fix, as it turns a possibly temporary
failure into a permanent one.
(EX_UNAVAILABLE --> error
EX_PROTOCOL --> error + abnormality flag
EX_TEMPFAIL --> deferred
Thinking in these terms, perhaps EX_PROTOCOL would be entirely
appropriate.... Still I would let it spin there until timeout,
and then just report what ever weird it will be reporting...)
This case unearthed problems in MX processing, and retrying
lookups / retrying connections to other MXes.
I built different test case into a snapshotted stuff I am now
running at my RedHat 5.0 (glibc 2.0) workstation. At the same
time I did some autoconfiguration revisioning for the platform.
I incorporated Alexis canonicalize() function into the router
configuration language, but the language has gotten a few changes
too -- namely IT DOES NOT understand the old original "sift"
operator, but DEMANDS use of "tsift". Ergo, the *.cf files
must be updated (manually! as 'make install' does not do it!)
If you have your own configuration scripts, you will notice
the complaints from the router about this quite informative.
The snapshot alters also ident lookups, which on some platforms
do not timeout quite as well as one might want.
Something else has been done there too, but I don't remember
them now. Place of snapshot(s) is at my workstation: