[Spice-commits] 2 commits - common/client_marshallers.h common/messages.h spice1.proto spice.proto spice-protocol
Yonit Halperin
yhalperi at kemper.freedesktop.org
Sun Aug 26 23:15:32 PDT 2012
common/client_marshallers.h | 1 +
common/messages.h | 17 ++++++++++++++++-
spice-protocol | 2 +-
spice.proto | 28 +++++++++++++++++++++++++---
spice1.proto | 10 +++++++---
5 files changed, 50 insertions(+), 8 deletions(-)
New commits:
commit c2f58492ad2df22c4eb4e6c04750010113dce567
Author: Yonit Halperin <yhalperi at redhat.com>
Date: Mon Jul 2 13:23:32 2012 +0300
support seamless migration
see spice-protocol for more details
commit 3838ad140a046c4ddf42fef58c9727ecfdc09f9f
diff --git a/common/client_marshallers.h b/common/client_marshallers.h
index 1bd95ae..1da7ff9 100644
--- a/common/client_marshallers.h
+++ b/common/client_marshallers.h
@@ -42,6 +42,7 @@ typedef struct {
void (*msgc_main_mouse_mode_request)(SpiceMarshaller *m, SpiceMsgcMainMouseModeRequest *msg);
void (*msgc_main_agent_start)(SpiceMarshaller *m, SpiceMsgcMainAgentStart *msg);
void (*msgc_main_agent_token)(SpiceMarshaller *m, SpiceMsgcMainAgentTokens *msg);
+ void (*msgc_main_migrate_dst_do_seamless)(SpiceMarshaller *m, SpiceMsgcMainMigrateDstDoSeamless *msg);
void (*msgc_display_init)(SpiceMarshaller *m, SpiceMsgcDisplayInit *msg);
void (*msgc_inputs_key_down)(SpiceMarshaller *m, SpiceMsgcKeyDown *msg);
void (*msgc_inputs_key_up)(SpiceMarshaller *m, SpiceMsgcKeyUp *msg);
diff --git a/common/messages.h b/common/messages.h
index 6df0fc3..95549c8 100644
--- a/common/messages.h
+++ b/common/messages.h
@@ -67,7 +67,7 @@ typedef struct SpiceMsgMainMultiMediaTime {
uint32_t time;
} SpiceMsgMainMultiMediaTime;
-typedef struct SpiceMsgMainMigrationBegin {
+typedef struct SpiceMigrationDstInfo {
uint16_t port;
uint16_t sport;
uint32_t host_size;
@@ -77,8 +77,21 @@ typedef struct SpiceMsgMainMigrationBegin {
uint8_t *pub_key_data;
uint32_t cert_subject_size;
uint8_t *cert_subject_data;
+} SpiceMigrationDstInfo;
+
+typedef struct SpiceMsgMainMigrationBegin {
+ SpiceMigrationDstInfo dst_info;
} SpiceMsgMainMigrationBegin;
+typedef struct SpiceMsgMainMigrateBeginSeamless {
+ SpiceMigrationDstInfo dst_info;
+ uint32_t src_mig_version;
+} SpiceMsgMainMigrateBeginSeamless;
+
+typedef struct SpiceMsgcMainMigrateDstDoSeamless {
+ uint32_t src_version;
+} SpiceMsgcMainMigrateDstDoSeamless;
+
typedef struct SpiceMsgMainMigrationSwitchHost {
uint16_t port;
uint16_t sport;
diff --git a/spice-protocol b/spice-protocol
index c20bc58..3838ad1 160000
--- a/spice-protocol
+++ b/spice-protocol
@@ -1 +1 @@
-Subproject commit c20bc58c4e44b6403b7e7a9efc4f12dee0fc100e
+Subproject commit 3838ad140a046c4ddf42fef58c9727ecfdc09f9f
diff --git a/spice.proto b/spice.proto
index 271e35d..2ef4dd6 100644
--- a/spice.proto
+++ b/spice.proto
@@ -193,15 +193,19 @@ struct ChannelId {
uint8 id;
};
-channel MainChannel : BaseChannel {
- server:
- message {
+struct DstInfo {
uint16 port;
uint16 sport;
uint32 host_size;
uint8 *host_data[host_size] @zero_terminated @marshall @nonnull;
uint32 cert_subject_size;
uint8 *cert_subject_data[cert_subject_size] @zero_terminated @marshall;
+} @ctype(SpiceMigrationDstInfo);
+
+channel MainChannel : BaseChannel {
+ server:
+ message {
+ DstInfo dst_info;
} @ctype(SpiceMsgMainMigrationBegin) migrate_begin = 101;
Empty migrate_cancel;
@@ -267,6 +271,14 @@ channel MainChannel : BaseChannel {
uint32 num_tokens;
} agent_connected_tokens;
+ message {
+ DstInfo dst_info;
+ uint32 src_mig_version;
+ } migrate_begin_seamless;
+
+ Empty migrate_dst_seamless_ack;
+ Empty migrate_dst_seamless_nack;
+
client:
message {
uint64 cache_size;
@@ -293,6 +305,12 @@ channel MainChannel : BaseChannel {
} @ctype(SpiceMsgcMainAgentTokens) agent_token;
Empty migrate_end;
+
+ message {
+ uint32 src_version;
+ } migrate_dst_do_seamless;
+
+ Empty migrate_connected_seamless;
};
enum8 clip_type {
diff --git a/spice1.proto b/spice1.proto
index 2ed1058..2d22cdf 100644
--- a/spice1.proto
+++ b/spice1.proto
@@ -161,9 +161,7 @@ struct ChannelId {
uint8 id;
};
-channel MainChannel : BaseChannel {
- server:
- message {
+struct DstInfo {
uint16 port;
uint16 sport;
uint32 host_offset @zero;
@@ -173,6 +171,12 @@ channel MainChannel : BaseChannel {
uint32 pub_key_size @minor(1);
uint8 host_data[host_size] @as_ptr @zero_terminated;
uint8 pub_key_data[pub_key_size] @minor(1) @as_ptr @zero_terminated;
+} @ctype(SpiceMigrationDstInfo);
+
+channel MainChannel : BaseChannel {
+ server:
+ message {
+ DstInfo dst_info;
} @ctype(SpiceMsgMainMigrationBegin) migrate_begin = 101;
Empty migrate_cancel;
commit c6bd210ad0b6eb485fda25426ab9d75253439f54
Author: Yonit Halperin <yhalperi at redhat.com>
Date: Wed Aug 8 11:06:40 2012 +0300
add SPICE_MSG_MAIN_AGENT_CONNECTED_TOKENS
The msg is used for setting the number of allocated client tokens when
we notify the client that the agent is attached.
diff --git a/common/messages.h b/common/messages.h
index b5f3368..6df0fc3 100644
--- a/common/messages.h
+++ b/common/messages.h
@@ -189,6 +189,8 @@ typedef struct SpiceMsgMainAgentTokens {
uint32_t num_tokens;
} SpiceMsgMainAgentTokens, SpiceMsgcMainAgentTokens, SpiceMsgcMainAgentStart;
+typedef struct SpiceMsgMainAgentTokens SpiceMsgMainAgentConnectedTokens;
+
typedef struct SpiceMsgcClientInfo {
uint64_t cache_size;
} SpiceMsgcClientInfo;
diff --git a/spice-protocol b/spice-protocol
index 473a14b..c20bc58 160000
--- a/spice-protocol
+++ b/spice-protocol
@@ -1 +1 @@
-Subproject commit 473a14b39fd7568e50456c61c95d89c742427ca1
+Subproject commit c20bc58c4e44b6403b7e7a9efc4f12dee0fc100e
diff --git a/spice.proto b/spice.proto
index 29d6a8b..271e35d 100644
--- a/spice.proto
+++ b/spice.proto
@@ -263,6 +263,10 @@ channel MainChannel : BaseChannel {
uint8 uuid[16];
} uuid;
+ message {
+ uint32 num_tokens;
+ } agent_connected_tokens;
+
client:
message {
uint64 cache_size;
More information about the Spice-commits
mailing list