提交 fa19af0a 编写于 作者: M Michal Privoznik

daemon: Introduce virNetServerProgramSendStreamHole

This is just a helper function that takes in a length value,
encodes it into XDR and sends to client.
Signed-off-by: NMichal Privoznik <mprivozn@redhat.com>
上级 2e5671ad
......@@ -178,6 +178,7 @@ virNetServerProgramNew;
virNetServerProgramSendReplyError;
virNetServerProgramSendStreamData;
virNetServerProgramSendStreamError;
virNetServerProgramSendStreamHole;
virNetServerProgramUnknownError;
......
......@@ -548,6 +548,41 @@ int virNetServerProgramSendStreamData(virNetServerProgramPtr prog,
}
int virNetServerProgramSendStreamHole(virNetServerProgramPtr prog,
virNetServerClientPtr client,
virNetMessagePtr msg,
int procedure,
unsigned int serial,
long long length,
unsigned int flags)
{
virNetStreamHole data;
VIR_DEBUG("client=%p msg=%p length=%lld", client, msg, length);
memset(&data, 0, sizeof(data));
data.length = length;
data.flags = flags;
msg->header.prog = prog->program;
msg->header.vers = prog->version;
msg->header.proc = procedure;
msg->header.type = VIR_NET_STREAM_HOLE;
msg->header.serial = serial;
msg->header.status = VIR_NET_CONTINUE;
if (virNetMessageEncodeHeader(msg) < 0)
return -1;
if (virNetMessageEncodePayload(msg,
(xdrproc_t) xdr_virNetStreamHole,
&data) < 0)
return -1;
return virNetServerClientSendMessage(client, msg);
}
void virNetServerProgramDispose(void *obj ATTRIBUTE_UNUSED)
{
}
......@@ -104,4 +104,12 @@ int virNetServerProgramSendStreamData(virNetServerProgramPtr prog,
const char *data,
size_t len);
int virNetServerProgramSendStreamHole(virNetServerProgramPtr prog,
virNetServerClientPtr client,
virNetMessagePtr msg,
int procedure,
unsigned int serial,
long long length,
unsigned int flags);
#endif /* __VIR_NET_SERVER_PROGRAM_H__ */
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册