You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
In catnap/socket.rs impl Socket method try_connect calls connect on the underlying socket2::Socket. The result handling code from this call treats the WSAEWOULDBLOCK error code as positive confirmation of connection. If the user then issues another operation on the socket prior to the connection completing, the user may see unpredictable behavior.
The final demi_wait call may indicate WSAENOTCONN.
Expected Behavior
demi_wait should not indicate completion of a complete qt until the underlying connection is established. This likely requires the catnap backend to poll the completion state of the connection. An example can be found in socket2 internals: sys::poll_connect for the Windows target.
Related Issues
None
The text was updated successfully, but these errors were encountered:
Description
In catnap/socket.rs
impl Socket
methodtry_connect
callsconnect
on the underlyingsocket2::Socket
. The result handling code from this call treats theWSAEWOULDBLOCK
error code as positive confirmation of connection. If the user then issues another operation on the socket prior to the connection completing, the user may see unpredictable behavior.How to Reproduce
The final demi_wait call may indicate
WSAENOTCONN
.Expected Behavior
demi_wait should not indicate completion of a
complete
qt until the underlying connection is established. This likely requires the catnap backend to poll the completion state of the connection. An example can be found in socket2 internals: sys::poll_connect for the Windows target.Related Issues
None
The text was updated successfully, but these errors were encountered: