net: socket: Don't ignore EINVAL on netdev socket connection
authorStefano Brivio <sbrivio@redhat.com>
Fri, 21 Oct 2022 09:09:12 +0000 (11:09 +0200)
committerJason Wang <jasowang@redhat.com>
Fri, 28 Oct 2022 05:28:52 +0000 (13:28 +0800)
Other errors are treated as failure by net_socket_connect_init(),
but if connect() returns EINVAL, we'll fail silently. Remove the
related exception.

Signed-off-by: Stefano Brivio <sbrivio@redhat.com>
Signed-off-by: Laurent Vivier <lvivier@redhat.com>
Reviewed-by: David Gibson <david@gibson.dropbear.id.au>
Acked-by: Michael S. Tsirkin <mst@redhat.com>
Signed-off-by: Jason Wang <jasowang@redhat.com>
net/socket.c

index ade1ecf38b87770a766ec27aa92a77cd4a22446f..4944bb70d580bc6be1b99345a8b8486c6f21ae00 100644 (file)
@@ -577,8 +577,7 @@ static int net_socket_connect_init(NetClientState *peer,
             if (errno == EINTR || errno == EWOULDBLOCK) {
                 /* continue */
             } else if (errno == EINPROGRESS ||
-                       errno == EALREADY ||
-                       errno == EINVAL) {
+                       errno == EALREADY) {
                 break;
             } else {
                 error_setg_errno(errp, errno, "can't connect socket");