You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@mesos.apache.org by "Benjamin Mahler (Jira)" <ji...@apache.org> on 2020/04/21 17:13:00 UTC

[jira] [Created] (MESOS-10124) OpenSSLSocketImpl on Windows with 'support_downgrade' is incorrectly polling for read readiness.

Benjamin Mahler created MESOS-10124:
---------------------------------------

             Summary: OpenSSLSocketImpl on Windows with 'support_downgrade' is incorrectly polling for read readiness.
                 Key: MESOS-10124
                 URL: https://issues.apache.org/jira/browse/MESOS-10124
             Project: Mesos
          Issue Type: Bug
          Components: libprocess
            Reporter: Benjamin Mahler


OpenSSLSocket is currently using the zero byte read trick on Windows to poll for read readiness when peaking at the data to determine whether the incoming connection is performing an SSL handshake. However, io::read is designed to provide consistent semantics for a zero byte read across posix and windows, which is to return immediately.

To fix this, we can either:

(1) Have different semantics for zero byte io::read on posix / windows, where we just let it fall through to the system calls. This might be confusing for users, but it's unlikely that a caller would perform a zero byte read in typical code so the confusion is probably avoided.

(2) Implement io::poll for reads on windows. This would make the caller code consistent and is probably less confusing to users.



--
This message was sent by Atlassian Jira
(v8.3.4#803005)