mirror of
https://gitlab.uni-freiburg.de/opensourcevdi/spice-common
synced 2026-08-07 12:49:56 +00:00
support seamless migration
see spice-protocol for more details commit 3838ad140a046c4ddf42fef58c9727ecfdc09f9f
This commit is contained in:
parent
c6bd210ad0
commit
c2f58492ad
@ -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);
|
||||
|
||||
@ -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;
|
||||
|
||||
@ -1 +1 @@
|
||||
Subproject commit c20bc58c4e44b6403b7e7a9efc4f12dee0fc100e
|
||||
Subproject commit 3838ad140a046c4ddf42fef58c9727ecfdc09f9f
|
||||
24
spice.proto
24
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 {
|
||||
|
||||
10
spice1.proto
10
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;
|
||||
|
||||
Loading…
Reference in New Issue
Block a user