mirror of
https://github.com/KumoCorp/kumomta.git
synced 2026-09-06 08:00:51 +00:00
A customer reported a really long log record like: ``` KumoMTA internal: failed to connect to any candidate hosts: TLS handshake failed: tls handshake eof, will re-connect in the clear because opportunistic_tls_reconnect_on_failed_handshake=true, TLS handshake failed: tls handshake eof ... ``` the site in question had just a single address in its connection plan. I don't see how we could loop like this unless the cache that is used to indicate that TLS is broken is being thrashed and the value that we write to it in response to this event triggering is never actually sticking in the cache. This commit introduces a per-session variable to flag that TLS is broken for this particular site, so that we don't have to rely on the cached value when we're about to loop and retry.