Fix: OpenSSL 3.x reports unexpected EOF as SSL error#14219
Fix: OpenSSL 3.x reports unexpected EOF as SSL error#14219straight-shoota merged 4 commits intocrystal-lang:masterfrom
Conversation
Prior versions used to report a syscall error with a zero return code but this has been considered a bug and changed to be reported as a SSL error with a specific reason in v3.
|
I thought maybe the issue was in how we report EOF in the BIO integration. I tried to modify I debug the |
|
I don't think I can do better. I'm really not sure about the hack to fix the spec. I guess we should check with 2 processes talking through SSL and killing either one and see if the EOF is correctly detected. If someone's willing to check that... |
|
I tried this patch with a simple SSL client/server communication using OpenSSL 3.2.1. Both sides detect EOF correctly if the other end disappears. |
Prior versions used to report a syscall error with a zero return code but this has been considered a bug and changed to be reported as a SSL error with a specific reason in v3.
This patch is implementing the detection of an unexpected EOF for v3 while still supporting v1 as per the documentation:
But it doesn't fix the failing spec, which only seem to have started failing with OpenSSL v3.2 while the change was introduced in OpenSSL v3.0 🤔
Details:
-1;0;Refs #14200 #14168 #14169