socket.open can return error