From: Martin Kletzander Date: Fri, 7 Nov 2014 18:52:33 +0000 (+0100) Subject: phyp: Fix NULL dereference in phypConnectOpen X-Git-Url: http://xenbits.xensource.com/gitweb?a=commitdiff_plain;h=f9f0f54524f53797b60128d1d11e45d37a694cb2;p=libvirt.git 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 --- diff --git a/src/phyp/phyp_driver.c b/src/phyp/phyp_driver.c index 7c8bc5c237..386d25f855 100644 --- a/src/phyp/phyp_driver.c +++ b/src/phyp/phyp_driver.c @@ -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; }