On 2012年05月25日 11:33, Eric Blake wrote:
Pretty straightforward.
* src/remote/remote_protocol.x
(remote_domain_snapshot_is_current_args)
(remote_domain_snapshot_is_current_ret)
(remote_domain_snapshot_has_metadata_args)
(remote_domain_snapshot_has_metadata_ret): New structs.
(REMOTE_PROC_DOMAIN_SNAPSHOT_IS_CURRENT)
(REMOTE_PROC_DOMAIN_SNAPSHOT_HAS_METADATA): New RPC calls.
* src/remote/remote_driver.c (remote_driver): Call them.
* src/remote_protocol-structs: Regenerate.
---
src/remote/remote_driver.c | 2 ++
src/remote/remote_protocol.x | 23 ++++++++++++++++++++++-
src/remote_protocol-structs | 16 ++++++++++++++++
3 files changed, 40 insertions(+), 1 deletions(-)
diff --git a/src/remote/remote_driver.c b/src/remote/remote_driver.c
index 5c87561..fc9babd 100644
--- a/src/remote/remote_driver.c
+++ b/src/remote/remote_driver.c
@@ -5082,6 +5082,8 @@ static virDriver remote_driver = {
.domainSnapshotGetParent = remoteDomainSnapshotGetParent, /* 0.9.7 */
.domainSnapshotCurrent = remoteDomainSnapshotCurrent, /* 0.8.0 */
.domainRevertToSnapshot = remoteDomainRevertToSnapshot, /* 0.8.0 */
+ .domainSnapshotIsCurrent = remoteDomainSnapshotIsCurrent, /* 0.9.13 */
+ .domainSnapshotHasMetadata = remoteDomainSnapshotHasMetadata, /* 0.9.13 */
.domainSnapshotDelete = remoteDomainSnapshotDelete, /* 0.8.0 */
.qemuDomainMonitorCommand = remoteQemuDomainMonitorCommand, /* 0.8.3 */
.qemuDomainAttach = qemuDomainAttach, /* 0.9.4 */
diff --git a/src/remote/remote_protocol.x b/src/remote/remote_protocol.x
index 2d57247..9982963 100644
--- a/src/remote/remote_protocol.x
+++ b/src/remote/remote_protocol.x
@@ -2305,6 +2305,24 @@ struct remote_domain_snapshot_current_ret {
remote_nonnull_domain_snapshot snap;
};
+struct remote_domain_snapshot_is_current_args {
+ remote_nonnull_domain_snapshot snap;
+ unsigned int flags;
+};
+
+struct remote_domain_snapshot_is_current_ret {
+ int current;
+};
+
+struct remote_domain_snapshot_has_metadata_args {
+ remote_nonnull_domain_snapshot snap;
+ unsigned int flags;
+};
+
+struct remote_domain_snapshot_has_metadata_ret {
+ int metadata;
+};
+
struct remote_domain_revert_to_snapshot_args {
remote_nonnull_domain_snapshot snap;
unsigned int flags;
@@ -2782,7 +2800,10 @@ enum remote_procedure {
REMOTE_PROC_DOMAIN_PM_WAKEUP = 267, /* autogen autogen */
REMOTE_PROC_DOMAIN_EVENT_TRAY_CHANGE = 268, /* autogen autogen */
REMOTE_PROC_DOMAIN_EVENT_PMWAKEUP = 269, /* autogen autogen */
- REMOTE_PROC_DOMAIN_EVENT_PMSUSPEND = 270 /* autogen autogen */
+ REMOTE_PROC_DOMAIN_EVENT_PMSUSPEND = 270, /* autogen autogen */
+
+ REMOTE_PROC_DOMAIN_SNAPSHOT_IS_CURRENT = 271, /* autogen autogen */
+ REMOTE_PROC_DOMAIN_SNAPSHOT_HAS_METADATA = 272 /* 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 9b2414f..8e00b0e 100644
--- a/src/remote_protocol-structs
+++ b/src/remote_protocol-structs
@@ -1756,6 +1756,20 @@ struct remote_domain_snapshot_current_args {
struct remote_domain_snapshot_current_ret {
remote_nonnull_domain_snapshot snap;
};
+struct remote_domain_snapshot_is_current_args {
+ remote_nonnull_domain_snapshot snap;
+ u_int flags;
+};
+struct remote_domain_snapshot_is_current_ret {
+ int current;
+};
+struct remote_domain_snapshot_has_metadata_args {
+ remote_nonnull_domain_snapshot snap;
+ u_int flags;
+};
+struct remote_domain_snapshot_has_metadata_ret {
+ int metadata;
+};
struct remote_domain_revert_to_snapshot_args {
remote_nonnull_domain_snapshot snap;
u_int flags;
@@ -2192,4 +2206,6 @@ enum remote_procedure {
REMOTE_PROC_DOMAIN_EVENT_TRAY_CHANGE = 268,
REMOTE_PROC_DOMAIN_EVENT_PMWAKEUP = 269,
REMOTE_PROC_DOMAIN_EVENT_PMSUSPEND = 270,
+ REMOTE_PROC_DOMAIN_SNAPSHOT_IS_CURRENT = 271,
+ REMOTE_PROC_DOMAIN_SNAPSHOT_HAS_METADATA = 272,
};
ACK.
Osier