提交 167a7568 编写于 作者: D Daniel P. Berrange

Fix max stream packet size for old clients

The libvirtd server pushes data out to clients. It does not
know what protocol version the client might have, so must be
conservative and use the old payload limits. ie send no more
than 256kb of data per packet.
Signed-off-by: NDaniel P. Berrange <berrange@redhat.com>
(cherry picked from commit 27e81517)
上级 03288d0d
......@@ -710,7 +710,7 @@ daemonStreamHandleRead(virNetServerClientPtr client,
daemonClientStream *stream)
{
char *buffer;
size_t bufferLen = VIR_NET_MESSAGE_PAYLOAD_MAX;
size_t bufferLen = VIR_NET_MESSAGE_LEGACY_PAYLOAD_MAX;
int ret;
VIR_DEBUG("client=%p, stream=%p tx=%d closed=%d",
......
......@@ -50,6 +50,13 @@
*/
const VIR_NET_MESSAGE_INITIAL = 65536;
/*
* Until we enlarged the message buffers, this was the max
* payload size. We need to remember this for compat with
* old clients.
*/
const VIR_NET_MESSAGE_LEGACY_PAYLOAD_MAX = 262144;
/* Maximum total message size (serialised). */
const VIR_NET_MESSAGE_MAX = 16777216;
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册