forked from pool/libvirt
89 lines
2.6 KiB
Diff
89 lines
2.6 KiB
Diff
|
commit 80bfb087ae4d92b271eadaee6e08b5ea2d1b68a6
|
||
|
Author: Jim Fehlig <jfehlig@novell.com>
|
||
|
Date: Wed Jan 13 18:41:13 2010 -0700
|
||
|
|
||
|
Remote driver
|
||
|
|
||
|
Implementation of Domain{Attach,Detach}DeviceFlags in remote driver.
|
||
|
|
||
|
diff --git a/src/remote/remote_driver.c b/src/remote/remote_driver.c
|
||
|
index d6f5fce..eb16f62 100644
|
||
|
--- a/src/remote/remote_driver.c
|
||
|
+++ b/src/remote/remote_driver.c
|
||
|
@@ -3057,6 +3057,32 @@ done:
|
||
|
}
|
||
|
|
||
|
static int
|
||
|
+remoteDomainAttachDeviceFlags (virDomainPtr domain, const char *xml,
|
||
|
+ unsigned int flags)
|
||
|
+{
|
||
|
+ int rv = -1;
|
||
|
+ remote_domain_attach_device_flags_args args;
|
||
|
+ struct private_data *priv = domain->conn->privateData;
|
||
|
+
|
||
|
+ remoteDriverLock(priv);
|
||
|
+
|
||
|
+ make_nonnull_domain (&args.dom, domain);
|
||
|
+ args.xml = (char *) xml;
|
||
|
+ args.flags = flags;
|
||
|
+
|
||
|
+ if (call (domain->conn, priv, 0, REMOTE_PROC_DOMAIN_ATTACH_DEVICE_FLAGS,
|
||
|
+ (xdrproc_t) xdr_remote_domain_attach_device_flags_args, (char *) &args,
|
||
|
+ (xdrproc_t) xdr_void, (char *) NULL) == -1)
|
||
|
+ goto done;
|
||
|
+
|
||
|
+ rv = 0;
|
||
|
+
|
||
|
+done:
|
||
|
+ remoteDriverUnlock(priv);
|
||
|
+ return rv;
|
||
|
+}
|
||
|
+
|
||
|
+static int
|
||
|
remoteDomainDetachDevice (virDomainPtr domain, const char *xml)
|
||
|
{
|
||
|
int rv = -1;
|
||
|
@@ -3081,6 +3107,32 @@ done:
|
||
|
}
|
||
|
|
||
|
static int
|
||
|
+remoteDomainDetachDeviceFlags (virDomainPtr domain, const char *xml,
|
||
|
+ unsigned int flags)
|
||
|
+{
|
||
|
+ int rv = -1;
|
||
|
+ remote_domain_detach_device_flags_args args;
|
||
|
+ struct private_data *priv = domain->conn->privateData;
|
||
|
+
|
||
|
+ remoteDriverLock(priv);
|
||
|
+
|
||
|
+ make_nonnull_domain (&args.dom, domain);
|
||
|
+ args.xml = (char *) xml;
|
||
|
+ args.flags = flags;
|
||
|
+
|
||
|
+ if (call (domain->conn, priv, 0, REMOTE_PROC_DOMAIN_DETACH_DEVICE_FLAGS,
|
||
|
+ (xdrproc_t) xdr_remote_domain_detach_device_flags_args, (char *) &args,
|
||
|
+ (xdrproc_t) xdr_void, (char *) NULL) == -1)
|
||
|
+ goto done;
|
||
|
+
|
||
|
+ rv = 0;
|
||
|
+
|
||
|
+done:
|
||
|
+ remoteDriverUnlock(priv);
|
||
|
+ return rv;
|
||
|
+}
|
||
|
+
|
||
|
+static int
|
||
|
remoteDomainGetAutostart (virDomainPtr domain, int *autostart)
|
||
|
{
|
||
|
int rv = -1;
|
||
|
@@ -8894,7 +8946,9 @@ static virDriver remote_driver = {
|
||
|
remoteDomainDefineXML, /* domainDefineXML */
|
||
|
remoteDomainUndefine, /* domainUndefine */
|
||
|
remoteDomainAttachDevice, /* domainAttachDevice */
|
||
|
+ remoteDomainAttachDeviceFlags, /* domainAttachDeviceFlags */
|
||
|
remoteDomainDetachDevice, /* domainDetachDevice */
|
||
|
+ remoteDomainDetachDeviceFlags, /* domainDetachDeviceFlags */
|
||
|
remoteDomainGetAutostart, /* domainGetAutostart */
|
||
|
remoteDomainSetAutostart, /* domainSetAutostart */
|
||
|
remoteDomainGetSchedulerType, /* domainGetSchedulerType */
|