Really don't crash if a connection closes early
authorJiri Denemark <jdenemar@redhat.com>
Mon, 13 Jan 2014 14:46:24 +0000 (15:46 +0100)
committerEric Blake <eblake@redhat.com>
Wed, 15 Jan 2014 20:20:08 +0000 (13:20 -0700)
commit35ed9796981cf7b939f28b60ca828824a0488a3a
treeaaf916c81f68c6776e6082e85cdaf5c3989dd6c5
parent41a540c78f3b82efe735c0c68db61b2cfa77fcc3
Really don't crash if a connection closes early

https://bugzilla.redhat.com/show_bug.cgi?id=1047577

When writing commit 173c291, I missed the fact virNetServerClientClose
unlocks the client object before actually clearing client->sock and thus
it is possible to hit a window when client->keepalive is NULL while
client->sock is not NULL. I was thinking client->sock == NULL was a
better check for a closed connection but apparently we have to go with
client->keepalive == NULL to actually fix the crash.

Signed-off-by: Jiri Denemark <jdenemar@redhat.com>
(cherry picked from commit 066c8ef6c18bc1faf8b3e10787b39796a7a06cc0)
src/rpc/virnetserverclient.c