The handshake could block the main thread, especially since the socket timeout was not set at that point.