libvirt/devflag-06.patch

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 */