From: Daniel P. Berrange Date: Wed, 18 Jul 2012 15:48:24 +0000 (+0100) Subject: If in delay close mode for an RPC client, don't read further data X-Git-Tag: CVE-2012-3445~126 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=be873da5387286a7c9f0f7cf3ebf6a73fbee02be;p=thirdparty%2Flibvirt.git If in delay close mode for an RPC client, don't read further data In the delayed close mode, we're just waiting for final data to be written back to the client. While waiting, we should not bother to read more data from the client. Signed-off-by: Daniel P. Berrange --- diff --git a/src/rpc/virnetserverclient.c b/src/rpc/virnetserverclient.c index 30f0cc8518..d6b348b4b4 100644 --- a/src/rpc/virnetserverclient.c +++ b/src/rpc/virnetserverclient.c @@ -152,9 +152,10 @@ virNetServerClientCalculateHandleMode(virNetServerClientPtr client) { mode |= VIR_EVENT_HANDLE_WRITABLE; } } else { - /* If there is a message on the rx queue then + /* If there is a message on the rx queue, and + * we're not in middle of a delayedClose, then * we're wanting more input */ - if (client->rx) + if (client->rx && !client->delayedClose) mode |= VIR_EVENT_HANDLE_READABLE; /* If there are one or more messages to send back to client,