[libvirt] [PATCH v1 09/31] parallels: s/virNetworkObjList/virNetworkObjListPtr/

Michal Privoznik mprivozn at redhat.com
Thu Feb 26 14:17:18 UTC 2015


In order to hide the object internals (and use just accessors
everywhere), lets store a pointer to the object, instead of object
itself.

Signed-off-by: Michal Privoznik <mprivozn at redhat.com>
---
 src/parallels/parallels_driver.c  |  5 +++-
 src/parallels/parallels_network.c | 60 +++++++++++++++++++--------------------
 src/parallels/parallels_utils.h   |  2 +-
 3 files changed, 35 insertions(+), 32 deletions(-)

diff --git a/src/parallels/parallels_driver.c b/src/parallels/parallels_driver.c
index c9338b5..32f2ede 100644
--- a/src/parallels/parallels_driver.c
+++ b/src/parallels/parallels_driver.c
@@ -207,7 +207,8 @@ parallelsOpenDefault(virConnectPtr conn)
                                                  NULL, NULL)))
         goto error;
 
-    if (!(privconn->domains = virDomainObjListNew()))
+    if (!(privconn->domains = virDomainObjListNew()) ||
+        VIR_ALLOC(privconn->networks) < 0)
         goto error;
 
     if (!(privconn->domainEventState = virObjectEventStateNew()))
@@ -225,6 +226,7 @@ parallelsOpenDefault(virConnectPtr conn)
 
  error:
     virObjectUnref(privconn->domains);
+    VIR_FREE(privconn->networks);
     virObjectUnref(privconn->caps);
     virStoragePoolObjListFree(&privconn->pools);
     virObjectEventStateFree(privconn->domainEventState);
@@ -283,6 +285,7 @@ parallelsConnectClose(virConnectPtr conn)
     virObjectUnref(privconn->caps);
     virObjectUnref(privconn->xmlopt);
     virObjectUnref(privconn->domains);
+    VIR_FREE(privconn->networks);
     virObjectEventStateFree(privconn->domainEventState);
     prlsdkDisconnect(privconn);
     conn->privateData = NULL;
diff --git a/src/parallels/parallels_network.c b/src/parallels/parallels_network.c
index 960bd50..bfa7432 100644
--- a/src/parallels/parallels_network.c
+++ b/src/parallels/parallels_network.c
@@ -226,7 +226,7 @@ parallelsLoadNetwork(parallelsConnPtr privconn, virJSONValuePtr jobj)
         goto cleanup;
     }
 
-    if (!(net = virNetworkAssignDef(&privconn->networks, def, false)))
+    if (!(net = virNetworkAssignDef(privconn->networks, def, false)))
         goto cleanup;
     net->active = 1;
     net->autostart = 1;
@@ -259,7 +259,7 @@ parallelsAddRoutedNetwork(parallelsConnPtr privconn)
     }
     def->uuid_specified = 1;
 
-    if (!(net = virNetworkAssignDef(&privconn->networks, def, false))) {
+    if (!(net = virNetworkAssignDef(privconn->networks, def, false))) {
         virNetworkDefFree(def);
         goto cleanup;
     }
@@ -337,7 +337,7 @@ int parallelsNetworkClose(virConnectPtr conn)
 {
     parallelsConnPtr privconn = conn->privateData;
     parallelsDriverLock(privconn);
-    virNetworkObjListFree(&privconn->networks);
+    virNetworkObjListFree(privconn->networks);
     parallelsDriverUnlock(privconn);
     return 0;
 }
@@ -349,11 +349,11 @@ static int parallelsConnectNumOfNetworks(virConnectPtr conn)
     parallelsConnPtr privconn = conn->privateData;
 
     parallelsDriverLock(privconn);
-    for (i = 0; i < privconn->networks.count; i++) {
-        virNetworkObjLock(privconn->networks.objs[i]);
-        if (virNetworkObjIsActive(privconn->networks.objs[i]))
+    for (i = 0; i < privconn->networks->count; i++) {
+        virNetworkObjLock(privconn->networks->objs[i]);
+        if (virNetworkObjIsActive(privconn->networks->objs[i]))
             nactive++;
-        virNetworkObjUnlock(privconn->networks.objs[i]);
+        virNetworkObjUnlock(privconn->networks->objs[i]);
     }
     parallelsDriverUnlock(privconn);
 
@@ -369,16 +369,16 @@ static int parallelsConnectListNetworks(virConnectPtr conn,
     size_t i;
 
     parallelsDriverLock(privconn);
-    for (i = 0; i < privconn->networks.count && got < nnames; i++) {
-        virNetworkObjLock(privconn->networks.objs[i]);
-        if (virNetworkObjIsActive(privconn->networks.objs[i])) {
-            if (VIR_STRDUP(names[got], privconn->networks.objs[i]->def->name) < 0) {
-                virNetworkObjUnlock(privconn->networks.objs[i]);
+    for (i = 0; i < privconn->networks->count && got < nnames; i++) {
+        virNetworkObjLock(privconn->networks->objs[i]);
+        if (virNetworkObjIsActive(privconn->networks->objs[i])) {
+            if (VIR_STRDUP(names[got], privconn->networks->objs[i]->def->name) < 0) {
+                virNetworkObjUnlock(privconn->networks->objs[i]);
                 goto cleanup;
             }
             got++;
         }
-        virNetworkObjUnlock(privconn->networks.objs[i]);
+        virNetworkObjUnlock(privconn->networks->objs[i]);
     }
     parallelsDriverUnlock(privconn);
 
@@ -398,11 +398,11 @@ static int parallelsConnectNumOfDefinedNetworks(virConnectPtr conn)
     parallelsConnPtr privconn = conn->privateData;
 
     parallelsDriverLock(privconn);
-    for (i = 0; i < privconn->networks.count; i++) {
-        virNetworkObjLock(privconn->networks.objs[i]);
-        if (!virNetworkObjIsActive(privconn->networks.objs[i]))
+    for (i = 0; i < privconn->networks->count; i++) {
+        virNetworkObjLock(privconn->networks->objs[i]);
+        if (!virNetworkObjIsActive(privconn->networks->objs[i]))
             ninactive++;
-        virNetworkObjUnlock(privconn->networks.objs[i]);
+        virNetworkObjUnlock(privconn->networks->objs[i]);
     }
     parallelsDriverUnlock(privconn);
 
@@ -418,16 +418,16 @@ static int parallelsConnectListDefinedNetworks(virConnectPtr conn,
     size_t i;
 
     parallelsDriverLock(privconn);
-    for (i = 0; i < privconn->networks.count && got < nnames; i++) {
-        virNetworkObjLock(privconn->networks.objs[i]);
-        if (!virNetworkObjIsActive(privconn->networks.objs[i])) {
-            if (VIR_STRDUP(names[got], privconn->networks.objs[i]->def->name) < 0) {
-                virNetworkObjUnlock(privconn->networks.objs[i]);
+    for (i = 0; i < privconn->networks->count && got < nnames; i++) {
+        virNetworkObjLock(privconn->networks->objs[i]);
+        if (!virNetworkObjIsActive(privconn->networks->objs[i])) {
+            if (VIR_STRDUP(names[got], privconn->networks->objs[i]->def->name) < 0) {
+                virNetworkObjUnlock(privconn->networks->objs[i]);
                 goto cleanup;
             }
             got++;
         }
-        virNetworkObjUnlock(privconn->networks.objs[i]);
+        virNetworkObjUnlock(privconn->networks->objs[i]);
     }
     parallelsDriverUnlock(privconn);
     return got;
@@ -449,7 +449,7 @@ static int parallelsConnectListAllNetworks(virConnectPtr conn,
     virCheckFlags(VIR_CONNECT_LIST_NETWORKS_FILTERS_ALL, -1);
 
     parallelsDriverLock(privconn);
-    ret = virNetworkObjListExport(conn, &privconn->networks, nets, NULL, flags);
+    ret = virNetworkObjListExport(conn, privconn->networks, nets, NULL, flags);
     parallelsDriverUnlock(privconn);
 
     return ret;
@@ -463,7 +463,7 @@ static virNetworkPtr parallelsNetworkLookupByUUID(virConnectPtr conn,
     virNetworkPtr ret = NULL;
 
     parallelsDriverLock(privconn);
-    network = virNetworkFindByUUID(&privconn->networks, uuid);
+    network = virNetworkFindByUUID(privconn->networks, uuid);
     parallelsDriverUnlock(privconn);
     if (!network) {
         virReportError(VIR_ERR_NO_NETWORK,
@@ -487,7 +487,7 @@ static virNetworkPtr parallelsNetworkLookupByName(virConnectPtr conn,
     virNetworkPtr ret = NULL;
 
     parallelsDriverLock(privconn);
-    network = virNetworkFindByName(&privconn->networks, name);
+    network = virNetworkFindByName(privconn->networks, name);
     parallelsDriverUnlock(privconn);
     if (!network) {
         virReportError(VIR_ERR_NO_NETWORK,
@@ -513,7 +513,7 @@ static char *parallelsNetworkGetXMLDesc(virNetworkPtr net,
     virCheckFlags(VIR_NETWORK_XML_INACTIVE, NULL);
 
     parallelsDriverLock(privconn);
-    network = virNetworkFindByUUID(&privconn->networks, net->uuid);
+    network = virNetworkFindByUUID(privconn->networks, net->uuid);
     parallelsDriverUnlock(privconn);
 
     if (!network) {
@@ -537,7 +537,7 @@ static int parallelsNetworkIsActive(virNetworkPtr net)
     int ret = -1;
 
     parallelsDriverLock(privconn);
-    obj = virNetworkFindByUUID(&privconn->networks, net->uuid);
+    obj = virNetworkFindByUUID(privconn->networks, net->uuid);
     parallelsDriverUnlock(privconn);
     if (!obj) {
         virReportError(VIR_ERR_NO_NETWORK, NULL);
@@ -558,7 +558,7 @@ static int parallelsNetworkIsPersistent(virNetworkPtr net)
     int ret = -1;
 
     parallelsDriverLock(privconn);
-    obj = virNetworkFindByUUID(&privconn->networks, net->uuid);
+    obj = virNetworkFindByUUID(privconn->networks, net->uuid);
     parallelsDriverUnlock(privconn);
     if (!obj) {
         virReportError(VIR_ERR_NO_NETWORK, NULL);
@@ -580,7 +580,7 @@ static int parallelsNetworkGetAutostart(virNetworkPtr net,
     int ret = -1;
 
     parallelsDriverLock(privconn);
-    network = virNetworkFindByUUID(&privconn->networks, net->uuid);
+    network = virNetworkFindByUUID(privconn->networks, net->uuid);
     parallelsDriverUnlock(privconn);
     if (!network) {
         virReportError(VIR_ERR_NO_NETWORK,
diff --git a/src/parallels/parallels_utils.h b/src/parallels/parallels_utils.h
index bebf841..ead5586 100644
--- a/src/parallels/parallels_utils.h
+++ b/src/parallels/parallels_utils.h
@@ -55,7 +55,7 @@ struct _parallelsConn {
     PRL_HANDLE server;
     PRL_UINT32 jobTimeout;
     virStoragePoolObjList pools;
-    virNetworkObjList networks;
+    virNetworkObjListPtr networks;
     virCapsPtr caps;
     virDomainXMLOptionPtr xmlopt;
     virObjectEventStatePtr domainEventState;
-- 
2.0.5




More information about the libvir-list mailing list