https://bugs.openldap.org/show_bug.cgi?id=9210
lukas.juhrich@agdsn.de lukas.juhrich@agdsn.de changed:
What |Removed |Added ---------------------------------------------------------------------------- Resolution|DUPLICATE |FIXED
--- Comment #11 from lukas.juhrich@agdsn.de lukas.juhrich@agdsn.de --- Thanks Ryan, your explanation makes sense (although I can't verify this is what actually happens due to lack of reproduction).
However, that sounds to me like a separate phenomenon from the missing `errno` reset: Shouldn't the retry condition be `( ret < 0 ) || ( errno == EINTR )`, so that in any of both scenarios (stuck in handshake or similar vs. interrupt during request) the retry is triggered?
Because if I would change the condition that way, my patch would instead _not_ fix my symptoms, which would be more consistent with your explanation (given that #8650 is still open).
Sorry if I misunderstand something, I'm not a C programmer and this whole library-ecosystem is quite foreign to me.