handshake timout reject promise