tests/unit/socket-helpers: Don't close(-1)

In socket_check_afunix_support() we call socket(PF_UNIX, SOCK_STREAM, 0)
to see if it works, but we call close() on the result whether it
worked or not. Only close the fd if the socket() call succeeded.
Spotted by Coverity.

Resolves: Coverity CID 1497481

Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
Reviewed-by: Richard Henderson <richard.henderson@linaro.org>
Reviewed-by: Thomas Huth <thuth@redhat.com>
Message-id: 20240312183810.557768-3-peter.maydell@linaro.org
This commit is contained in:
Peter Maydell 2024-03-25 10:41:00 +00:00
parent 80e9791a93
commit e921e00d4b

View File

@ -160,7 +160,6 @@ void socket_check_afunix_support(bool *has_afunix)
int fd;
fd = socket(PF_UNIX, SOCK_STREAM, 0);
close(fd);
#ifdef _WIN32
*has_afunix = (fd != (int)INVALID_SOCKET);
@ -168,5 +167,8 @@ void socket_check_afunix_support(bool *has_afunix)
*has_afunix = (fd >= 0);
#endif
if (*has_afunix) {
close(fd);
}
return;
}