socket: fix double-free when ssl_setup_connection fails

Change-Id: I893b166da28f4c21e582ed477399c4bc0c1d20e1
BUG: 877903
Signed-off-by: Jeff Darcy <jdarcy@redhat.com>
Reviewed-on: http://review.gluster.org/4208
Tested-by: Gluster Build System <jenkins@build.gluster.com>
Reviewed-by: Vijay Bellur <vbellur@redhat.com>
This commit is contained in:
Jeff Darcy 2012-11-19 14:28:20 -05:00 committed by Vijay Bellur
parent d5999c107a
commit 4a8f751b7c

View File

@ -303,6 +303,7 @@ ssl_error:
ssl_dump_error_stack(this->name);
free_ssl:
SSL_free(priv->ssl_ssl);
priv->ssl_ssl = NULL;
done:
return ret;
}
@ -495,7 +496,7 @@ __socket_disconnect (rpc_transport_t *this)
"shutdown() returned %d. %s",
ret, strerror (errno));
}
if (priv->use_ssl) {
if (priv->ssl_ssl) {
SSL_shutdown(priv->ssl_ssl);
SSL_clear(priv->ssl_ssl);
SSL_free(priv->ssl_ssl);