phyp: Fix NULL dereference in phypConnectOpen
Coverity found out that commit cd490086 caused a possible NULL pointer dereference. This is due to the fact, that phyp_driver is NULL at the time of closing the socket, instead of connection_data, which kept the socket before the mentioned commit, could not be NULL. However, internal_socket is still the local socket that can be closed, even unconditionally, if we initialize it to -1. Signed-off-by: Martin Kletzander <mkletzan@redhat.com>
This commit is contained in:
parent
72f808c41f
commit
f9f0f54524
@ -1128,7 +1128,7 @@ phypConnectOpen(virConnectPtr conn,
|
|||||||
virConnectAuthPtr auth, unsigned int flags)
|
virConnectAuthPtr auth, unsigned int flags)
|
||||||
{
|
{
|
||||||
LIBSSH2_SESSION *session = NULL;
|
LIBSSH2_SESSION *session = NULL;
|
||||||
int internal_socket;
|
int internal_socket = -1;
|
||||||
uuid_tablePtr uuid_table = NULL;
|
uuid_tablePtr uuid_table = NULL;
|
||||||
phyp_driverPtr phyp_driver = NULL;
|
phyp_driverPtr phyp_driver = NULL;
|
||||||
char *char_ptr;
|
char *char_ptr;
|
||||||
@ -1232,7 +1232,7 @@ phypConnectOpen(virConnectPtr conn,
|
|||||||
libssh2_session_free(session);
|
libssh2_session_free(session);
|
||||||
}
|
}
|
||||||
|
|
||||||
VIR_FORCE_CLOSE(phyp_driver->sock);
|
VIR_FORCE_CLOSE(internal_socket);
|
||||||
|
|
||||||
return VIR_DRV_OPEN_ERROR;
|
return VIR_DRV_OPEN_ERROR;
|
||||||
}
|
}
|
||||||
|
Loading…
x
Reference in New Issue
Block a user