* src/remote/remote_driver.c (remote_driver): Add new callbacks.
* src/remote/remote_protocol.x (remote_procedure): New RPCs.
(remote_domain_save_flags_args, remote_domain_restore_flags_args):
New structs.
* src/remote_protocol-structs: Update.
---
v2: merge 2 and 12 of v1, rebase onto latest libvirt.git
src/remote/remote_driver.c | 2 ++
src/remote/remote_protocol.x | 17 ++++++++++++++++-
src/remote_protocol-structs | 13 +++++++++++++
3 files changed, 31 insertions(+), 1 deletions(-)
diff --git a/src/remote/remote_driver.c b/src/remote/remote_driver.c
index 5b7a338..692decb 100644
--- a/src/remote/remote_driver.c
+++ b/src/remote/remote_driver.c
@@ -4165,7 +4165,9 @@ static virDriver remote_driver = {
.domainGetState = remoteDomainGetState, /* 0.9.2 */
.domainGetControlInfo = remoteDomainGetControlInfo, /* 0.9.3 */
.domainSave = remoteDomainSave, /* 0.3.0 */
+ .domainSaveFlags = remoteDomainSaveFlags, /* 0.9.4 */
.domainRestore = remoteDomainRestore, /* 0.3.0 */
+ .domainRestoreFlags = remoteDomainRestoreFlags, /* 0.9.4 */
.domainCoreDump = remoteDomainCoreDump, /* 0.3.0 */
.domainScreenshot = remoteDomainScreenshot, /* 0.9.2 */
.domainSetVcpus = remoteDomainSetVcpus, /* 0.3.0 */
diff --git a/src/remote/remote_protocol.x b/src/remote/remote_protocol.x
index ef9dd10..72d7e0a 100644
--- a/src/remote/remote_protocol.x
+++ b/src/remote/remote_protocol.x
@@ -725,10 +725,23 @@ struct remote_domain_save_args {
remote_nonnull_string to;
};
+struct remote_domain_save_flags_args {
+ remote_nonnull_domain dom;
+ remote_nonnull_string to;
+ remote_string dxml;
+ unsigned int flags;
+};
+
struct remote_domain_restore_args {
remote_nonnull_string from;
};
+struct remote_domain_restore_flags_args {
+ remote_nonnull_string from;
+ remote_string dxml;
+ unsigned int flags;
+};
+
struct remote_domain_core_dump_args {
remote_nonnull_domain dom;
remote_nonnull_string to;
@@ -2390,7 +2403,9 @@ enum remote_procedure {
REMOTE_PROC_DOMAIN_GET_CONTROL_INFO = 229, /* autogen autogen */
REMOTE_PROC_DOMAIN_GET_VCPU_PIN_INFO = 230, /* skipgen skipgen */
- REMOTE_PROC_DOMAIN_UNDEFINE_FLAGS = 231 /* autogen autogen */
+ REMOTE_PROC_DOMAIN_UNDEFINE_FLAGS = 231, /* autogen autogen */
+ REMOTE_PROC_DOMAIN_SAVE_FLAGS = 232, /* autogen autogen */
+ REMOTE_PROC_DOMAIN_RESTORE_FLAGS = 233 /* autogen autogen */
/*
* Notice how the entries are grouped in sets of 10 ?
diff --git a/src/remote_protocol-structs b/src/remote_protocol-structs
index 96e74eb..b17804f 100644
--- a/src/remote_protocol-structs
+++ b/src/remote_protocol-structs
@@ -429,9 +429,20 @@ struct remote_domain_save_args {
remote_nonnull_domain dom;
remote_nonnull_string to;
};
+struct remote_domain_save_flags_args {
+ remote_nonnull_domain dom;
+ remote_nonnull_string to;
+ remote_string dxml;
+ u_int flags;
+};
struct remote_domain_restore_args {
remote_nonnull_string from;
};
+struct remote_domain_restore_flags_args {
+ remote_nonnull_string from;
+ remote_string dxml;
+ u_int flags;
+};
struct remote_domain_core_dump_args {
remote_nonnull_domain dom;
remote_nonnull_string to;
@@ -1864,4 +1875,6 @@ enum remote_procedure {
REMOTE_PROC_DOMAIN_GET_CONTROL_INFO = 229,
REMOTE_PROC_DOMAIN_GET_VCPU_PIN_INFO = 230,
REMOTE_PROC_DOMAIN_UNDEFINE_FLAGS = 231,
+ REMOTE_PROC_DOMAIN_SAVE_FLAGS = 232,
+ REMOTE_PROC_DOMAIN_RESTORE_FLAGS = 233,
};
--
1.7.4.4