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 18:48:26 +0000 (11:48 -0700)
commit7fad864afa2f7137f5ebfa7874c70d2a2ca5c6b1
tree0e58b1ace7058fbeb2307383395f5e280af3c7b1
parente3ca9d3d62ca4a41b9acf99345c1333f24c3112e
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