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:
Martin Kletzander 2014-11-07 19:52:33 +01:00
parent 72f808c41f
commit f9f0f54524

View File

@ -1128,7 +1128,7 @@ phypConnectOpen(virConnectPtr conn,
virConnectAuthPtr auth, unsigned int flags)
{
LIBSSH2_SESSION *session = NULL;
int internal_socket;
int internal_socket = -1;
uuid_tablePtr uuid_table = NULL;
phyp_driverPtr phyp_driver = NULL;
char *char_ptr;
@ -1232,7 +1232,7 @@ phypConnectOpen(virConnectPtr conn,
libssh2_session_free(session);
}
VIR_FORCE_CLOSE(phyp_driver->sock);
VIR_FORCE_CLOSE(internal_socket);
return VIR_DRV_OPEN_ERROR;
}