Files
xemu/net
Steve Sistare ea263e8fd9 tap: fix net_init_tap() return code
net_init_tap intends to return 0 for success and -1 on error.  However,
when net_init_tap() succeeds for a multi-queue device, it returns 1,
because of this code where ret becomes 1 when g_unix_set_fd_nonblocking
succeeds:

        ret = g_unix_set_fd_nonblocking(fd, true, NULL);
        if (!ret) {
            ... error ...
    free_fail:
        ...
        return ret;

Luckily, the only current call site checks for negative, rather than non-zero:

  net_client_init1()
      if (net_client_init_fun[](...) < 0)

Also, in the unlikely case that g_unix_set_fd_nonblocking fails and returns
false, ret=0 is returned, and net_client_init1 will use a broken interface.

Fix it to be future proof.

Signed-off-by: Steve Sistare <steven.sistare@oracle.com>
Signed-off-by: Jason Wang <jasowang@redhat.com>
2025-07-21 10:21:33 +08:00
..
2025-04-25 17:00:41 +02:00
2025-07-14 13:27:09 +08:00
2024-04-18 11:17:27 +02:00
2025-04-25 17:00:41 +02:00
2025-07-14 13:27:09 +08:00
2025-07-14 13:27:09 +08:00
2024-06-04 15:14:25 +08:00
2024-10-03 17:26:05 +03:00
2024-06-04 15:14:25 +08:00
2024-06-04 15:14:25 +08:00
2025-03-10 17:07:16 +08:00
2025-07-21 10:21:33 +08:00