mirror of
https://gitlab.com/libvirt/libvirt.git
synced 2025-02-22 19:32:19 +00:00
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: Michal Privoznik <mprivozn@redhat.com>
This commit is contained in:
parent
2e5671adf2
commit
fa19af0a13
@ -178,6 +178,7 @@ virNetServerProgramNew;
|
|||||||
virNetServerProgramSendReplyError;
|
virNetServerProgramSendReplyError;
|
||||||
virNetServerProgramSendStreamData;
|
virNetServerProgramSendStreamData;
|
||||||
virNetServerProgramSendStreamError;
|
virNetServerProgramSendStreamError;
|
||||||
|
virNetServerProgramSendStreamHole;
|
||||||
virNetServerProgramUnknownError;
|
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)
|
void virNetServerProgramDispose(void *obj ATTRIBUTE_UNUSED)
|
||||||
{
|
{
|
||||||
}
|
}
|
||||||
|
@ -104,4 +104,12 @@ int virNetServerProgramSendStreamData(virNetServerProgramPtr prog,
|
|||||||
const char *data,
|
const char *data,
|
||||||
size_t len);
|
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__ */
|
#endif /* __VIR_NET_SERVER_PROGRAM_H__ */
|
||||||
|
Loading…
x
Reference in New Issue
Block a user