backup: Implement backup APIs for remote driver

This one is fairly straightforward - the generator already does what
we need.

Signed-off-by: Eric Blake <eblake@redhat.com>
Signed-off-by: Peter Krempa <pkrempa@redhat.com>
Reviewed-by: Daniel P. Berrangé <berrange@redhat.com>
Reviewed-by: Ján Tomko <jtomko@redhat.com>
This commit is contained in:
Eric Blake 2019-08-21 20:42:43 -05:00 committed by Peter Krempa
parent 9e408454a8
commit 42adc45937
3 changed files with 49 additions and 1 deletions

View File

@ -8702,6 +8702,8 @@ static virHypervisorDriver hypervisor_driver = {
.domainCheckpointDelete = remoteDomainCheckpointDelete, /* 5.6.0 */
.domainGetGuestInfo = remoteDomainGetGuestInfo, /* 5.7.0 */
.domainAgentSetResponseTimeout = remoteDomainAgentSetResponseTimeout, /* 5.10.0 */
.domainBackupBegin = remoteDomainBackupBegin, /* 6.0.0 */
.domainBackupGetXMLDesc = remoteDomainBackupGetXMLDesc, /* 6.0.0 */
};
static virNetworkDriver network_driver = {

View File

@ -3754,6 +3754,23 @@ struct remote_domain_agent_set_response_timeout_ret {
int result;
};
struct remote_domain_backup_begin_args {
remote_nonnull_domain dom;
remote_nonnull_string backup_xml;
remote_string checkpoint_xml;
unsigned int flags;
};
struct remote_domain_backup_get_xml_desc_args {
remote_nonnull_domain dom;
unsigned int flags;
};
struct remote_domain_backup_get_xml_desc_ret {
remote_nonnull_string xml;
};
/*----- Protocol. -----*/
/* Define the program number, protocol version and procedure numbers here. */
@ -6633,5 +6650,19 @@ enum remote_procedure {
* @generate: both
* @acl: domain:write
*/
REMOTE_PROC_DOMAIN_AGENT_SET_RESPONSE_TIMEOUT = 420
REMOTE_PROC_DOMAIN_AGENT_SET_RESPONSE_TIMEOUT = 420,
/**
* @generate: both
* @acl: domain:checkpoint
* @acl: domain:block_write
*/
REMOTE_PROC_DOMAIN_BACKUP_BEGIN = 421,
/**
* @generate: both
* @priority: high
* @acl: domain:read
*/
REMOTE_PROC_DOMAIN_BACKUP_GET_XML_DESC = 422
};

View File

@ -3122,6 +3122,19 @@ struct remote_domain_agent_set_response_timeout_args {
struct remote_domain_agent_set_response_timeout_ret {
int result;
};
struct remote_domain_backup_begin_args {
remote_nonnull_domain dom;
remote_nonnull_string backup_xml;
remote_string checkpoint_xml;
u_int flags;
};
struct remote_domain_backup_get_xml_desc_args {
remote_nonnull_domain dom;
u_int flags;
};
struct remote_domain_backup_get_xml_desc_ret {
remote_nonnull_string xml;
};
enum remote_procedure {
REMOTE_PROC_CONNECT_OPEN = 1,
REMOTE_PROC_CONNECT_CLOSE = 2,
@ -3543,4 +3556,6 @@ enum remote_procedure {
REMOTE_PROC_DOMAIN_GET_GUEST_INFO = 418,
REMOTE_PROC_CONNECT_SET_IDENTITY = 419,
REMOTE_PROC_DOMAIN_AGENT_SET_RESPONSE_TIMEOUT = 420,
REMOTE_PROC_DOMAIN_BACKUP_BEGIN = 421,
REMOTE_PROC_DOMAIN_BACKUP_GET_XML_DESC = 422,
};