From 88555379f29c538115eca0daae1ccdd28ffa3e40 Mon Sep 17 00:00:00 2001 From: MATSUDA Daiki Date: Thu, 23 Aug 2012 12:29:25 +0900 Subject: [PATCH] agent: add remote driver support Add qemuDomainAgentCommand() which is generated automatically, for .qemuDomainArbitraryAgentCommand to remote driver. Signed-off-by: MATSUDA Daiki --- src/qemu_protocol-structs | 10 ++++++++++ src/remote/qemu_protocol.x | 14 +++++++++++++- src/remote/remote_driver.c | 1 + 3 files changed, 24 insertions(+), 1 deletion(-) diff --git a/src/qemu_protocol-structs b/src/qemu_protocol-structs index 67968eb7df..e6cde60cdd 100644 --- a/src/qemu_protocol-structs +++ b/src/qemu_protocol-structs @@ -19,7 +19,17 @@ struct qemu_domain_attach_args { struct qemu_domain_attach_ret { remote_nonnull_domain dom; }; +struct qemu_domain_agent_command_args { + remote_nonnull_domain dom; + remote_nonnull_string cmd; + int timeout; + u_int flags; +}; +struct qemu_domain_agent_command_ret { + remote_string result; +}; enum qemu_procedure { QEMU_PROC_MONITOR_COMMAND = 1, QEMU_PROC_DOMAIN_ATTACH = 2, + QEMU_PROC_DOMAIN_AGENT_COMMAND = 3, }; diff --git a/src/remote/qemu_protocol.x b/src/remote/qemu_protocol.x index c06339c8ec..914caed885 100644 --- a/src/remote/qemu_protocol.x +++ b/src/remote/qemu_protocol.x @@ -47,6 +47,17 @@ struct qemu_domain_attach_ret { remote_nonnull_domain dom; }; +struct qemu_domain_agent_command_args { + remote_nonnull_domain dom; + remote_nonnull_string cmd; + int timeout; + unsigned int flags; +}; + +struct qemu_domain_agent_command_ret { + remote_string result; +}; + /* Define the program number, protocol version and procedure numbers here. */ const QEMU_PROGRAM = 0x20008087; const QEMU_PROTOCOL_VERSION = 1; @@ -61,5 +72,6 @@ enum qemu_procedure { * are some exceptions to this rule, e.g. domainDestroy. Other APIs MAY * be marked as high priority. If in doubt, it's safe to choose low. */ QEMU_PROC_MONITOR_COMMAND = 1, /* skipgen skipgen priority:low */ - QEMU_PROC_DOMAIN_ATTACH = 2 /* autogen autogen priority:low */ + QEMU_PROC_DOMAIN_ATTACH = 2, /* autogen autogen priority:low */ + QEMU_PROC_DOMAIN_AGENT_COMMAND = 3 /* autogen autogen priority:low */ }; diff --git a/src/remote/remote_driver.c b/src/remote/remote_driver.c index def61b843d..f0484a706f 100644 --- a/src/remote/remote_driver.c +++ b/src/remote/remote_driver.c @@ -5557,6 +5557,7 @@ static virDriver remote_driver = { .domainSetMetadata = remoteDomainSetMetadata, /* 0.9.10 */ .domainGetMetadata = remoteDomainGetMetadata, /* 0.9.10 */ .domainGetHostname = remoteDomainGetHostname, /* 0.10.0 */ + .qemuDomainArbitraryAgentCommand = qemuDomainAgentCommand, /* 0.10.1 */ }; static virNetworkDriver network_driver = { -- GitLab