summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDunrong Huang <riegamaths@gmail.com>2012-11-28 19:55:45 +0800
committerMarc-André Lureau <marcandre.lureau@gmail.com>2013-01-11 21:55:31 +0100
commita484ca8095556f7f75979f14179a258884b1164f (patch)
treef85fe279bf388f39de13d9da9ada21f70aa8a4b5
parent544b8ef1870e0a8858d8f9e6fb4ef6c461efe63a (diff)
vd_agent.h: add file copy support
At present, Vmware and Virtualbox has supported file drag&drop feature, I think it's a good feature for users, so we want qemu/spice to supports it. This patch first adds communication protocol between client and guest, we must make the agent protocol stable before coding, this is what we want this patch to do. This feature has been discussed on spice mailing list. The more details are available at following pages: http://lists.freedesktop.org/archives/spice-devel/2012-November/011400.html and http://lists.freedesktop.org/archives/spice-devel/2012-November/011485.html Signed-off-by: Dunrong Huang <riegamaths@gmail.com> Cc: Hans de Goede <hdegoede@redhat.com> Cc: Marc-André Lureau <marcandre.lureau@redhat.com> Cc: Alon Levy <alevy@redhat.com> Cc: Uri Lublin <uril@redhat.com>
-rw-r--r--spice/vd_agent.h25
1 files changed, 25 insertions, 0 deletions
diff --git a/spice/vd_agent.h b/spice/vd_agent.h
index 2b9884e..b05da3e 100644
--- a/spice/vd_agent.h
+++ b/spice/vd_agent.h
@@ -69,9 +69,34 @@ enum {
VD_AGENT_CLIPBOARD_GRAB,
VD_AGENT_CLIPBOARD_REQUEST,
VD_AGENT_CLIPBOARD_RELEASE,
+ VD_AGENT_FILE_XFER_START,
+ VD_AGENT_FILE_XFER_STATUS,
+ VD_AGENT_FILE_XFER_DATA,
VD_AGENT_END_MESSAGE,
};
+enum {
+ VD_AGENT_FILE_XFER_STATUS_CAN_SEND_DATA,
+ VD_AGENT_FILE_XFER_STATUS_CANCELLED,
+ VD_AGENT_FILE_XFER_STATUS_ERROR,
+};
+
+typedef struct SPICE_ATTR_PACKED VDAgentFileXferStatusMessage {
+ uint32_t id;
+ uint32_t result;
+} VDAgentFileXferStatusMessage;
+
+typedef struct SPICE_ATTR_PACKED VDAgentFileXferStartMessage {
+ uint32_t id;
+ uint8_t data[0];
+} VDAgentFileXferStartMessage;
+
+typedef struct SPICE_ATTR_PACKED VDAgentFileXferDataMessage {
+ uint32_t id;
+ uint64_t size;
+ uint8_t data[0];
+} VDAgentFileXferDataMessage;
+
typedef struct SPICE_ATTR_PACKED VDAgentMonConfig {
uint32_t height;
uint32_t width;