1
From ff272552c297966ace3492aefe91fc830152251a Mon Sep 17 00:00:00 2001
2
From: David Allan <dallan@redhat.com>
3
Date: Tue, 19 May 2009 16:26:12 -0400
4
Subject: [PATCH] Step 5 of 8 Implement the RPC client
7
src/remote_internal.c | 55 +++++++++++++++++++++++++++++++++++++++++++++++++
8
1 files changed, 55 insertions(+), 0 deletions(-)
10
diff --git a/src/remote_internal.c b/src/remote_internal.c
11
index 4b3afb0..e665ef8 100644
12
--- a/src/remote_internal.c
13
+++ b/src/remote_internal.c
14
@@ -4978,6 +4978,59 @@ done:
18
+static virNodeDevicePtr
19
+remoteNodeDeviceCreateXML(virConnectPtr conn,
20
+ const char *xmlDesc,
23
+ remote_node_device_create_xml_args args;
24
+ remote_node_device_create_xml_ret ret;
25
+ virNodeDevicePtr dev = NULL;
26
+ struct private_data *priv = conn->privateData;
28
+ remoteDriverLock(priv);
30
+ memset(&ret, 0, sizeof ret);
31
+ args.xml_desc = (char *)xmlDesc;
34
+ if (call(conn, priv, 0, REMOTE_PROC_NODE_DEVICE_CREATE_XML,
35
+ (xdrproc_t) xdr_remote_node_device_create_xml_args, (char *) &args,
36
+ (xdrproc_t) xdr_remote_node_device_create_xml_ret, (char *) &ret) == -1)
39
+ dev = get_nonnull_node_device(conn, ret.dev);
40
+ xdr_free ((xdrproc_t) xdr_remote_node_device_create_xml_ret, (char *) &ret);
43
+ remoteDriverUnlock(priv);
48
+remoteNodeDeviceDestroy(virNodeDevicePtr dev)
51
+ remote_node_device_destroy_args args;
52
+ struct private_data *priv = dev->conn->privateData;
54
+ remoteDriverLock(priv);
56
+ args.name = dev->name;
58
+ if (call(dev->conn, priv, 0, REMOTE_PROC_NODE_DEVICE_DESTROY,
59
+ (xdrproc_t) xdr_remote_node_device_destroy_args, (char *) &args,
60
+ (xdrproc_t) xdr_void, (char *) NULL) == -1)
66
+ remoteDriverUnlock(priv);
71
/*----------------------------------------------------------------------*/
74
@@ -6982,6 +7035,8 @@ static virDeviceMonitor dev_monitor = {
75
.deviceGetParent = remoteNodeDeviceGetParent,
76
.deviceNumOfCaps = remoteNodeDeviceNumOfCaps,
77
.deviceListCaps = remoteNodeDeviceListCaps,
78
+ .deviceCreateXML = remoteNodeDeviceCreateXML,
79
+ .deviceDestroy = remoteNodeDeviceDestroy