vhost-user-scsi: avoid unlink(NULL) with fd passing
Commit747421e949
("Implements Backend Program conventions for vhost-user-scsi") introduced fd-passing support as part of implementing the vhost-user backend program conventions. When fd passing is used the UNIX domain socket path is NULL and we must not call unlink(2). The unlink(2) call is necessary when the listen socket, lsock, was created successfully since that means the UNIX domain socket is visible in the file system. Fixes: Coverity CID 1488353 Fixes:747421e949
("Implements Backend Program conventions for vhost-user-scsi") Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com> Message-Id: <20220516155701.1789638-1-stefanha@redhat.com> Reviewed-by: Raphael Norwitz <raphael.norwitz@nutanix.com> Reviewed-by: Michael S. Tsirkin <mst@redhat.com> Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
This commit is contained in:
parent
2a7888cc3a
commit
6852c21db2
@ -433,13 +433,16 @@ out:
|
||||
if (vdev_scsi) {
|
||||
g_main_loop_unref(vdev_scsi->loop);
|
||||
g_free(vdev_scsi);
|
||||
unlink(opt_socket_path);
|
||||
}
|
||||
if (csock >= 0) {
|
||||
close(csock);
|
||||
}
|
||||
if (lsock >= 0) {
|
||||
close(lsock);
|
||||
|
||||
if (opt_socket_path) {
|
||||
unlink(opt_socket_path);
|
||||
}
|
||||
}
|
||||
g_free(opt_socket_path);
|
||||
g_free(iscsi_uri);
|
||||
|
Loading…
Reference in New Issue
Block a user