]> xenbits.xensource.com Git - libvirt.git/commitdiff
use g_autoptr for all virConnectPtrs used with virGetConnectNetwork()
authorLaine Stump <laine@redhat.com>
Fri, 8 Jan 2021 05:31:05 +0000 (00:31 -0500)
committerLaine Stump <laine@redhat.com>
Fri, 8 Jan 2021 16:34:59 +0000 (11:34 -0500)
Signed-off-by: Laine Stump <laine@redhat.com>
Reviewed-by: Michal Privoznik <mprivozn@redhat.com>
Reviewed-by: Ján Tomko <jtomko@redhat.com>
src/conf/domain_conf.c
src/libxl/libxl_domain.c
src/libxl/libxl_driver.c
src/lxc/lxc_driver.c
src/lxc/lxc_process.c

index 40ca20be334b49fd7102e3605e50a00dcc9c53c6..349fc28c2a79d076485865f2b71ca97c89170389 100644 (file)
@@ -31040,7 +31040,7 @@ virDomainNetBandwidthUpdate(virDomainNetDefPtr iface,
     virNetworkPortPtr port = NULL;
     virTypedParameterPtr params = NULL;
     int nparams = 0;
-    virConnectPtr conn = NULL;
+    g_autoptr(virConnect) conn = NULL;
     int ret = -1;
 
     if (!(conn = virGetConnectNetwork()))
@@ -31060,7 +31060,6 @@ virDomainNetBandwidthUpdate(virDomainNetDefPtr iface,
 
     ret = 0;
  cleanup:
-    virObjectUnref(conn);
     virTypedParamsFree(params, nparams);
     virObjectUnref(port);
     virObjectUnref(net);
index ab838b317c66d2cafb92731104d894f49edb7bb1..c046fcb3f71790b150a335c4279ce587db09a4a2 100644 (file)
@@ -25,6 +25,7 @@
 #include "libxl_domain.h"
 #include "libxl_capabilities.h"
 
+#include "datatypes.h"
 #include "viralloc.h"
 #include "virfile.h"
 #include "virerror.h"
@@ -849,7 +850,7 @@ libxlDomainCleanup(libxlDriverPrivatePtr driver,
     char *file;
     virHostdevManagerPtr hostdev_mgr = driver->hostdevMgr;
     unsigned int hostdev_flags = VIR_HOSTDEV_SP_PCI;
-    virConnectPtr conn = NULL;
+    g_autoptr(virConnect) conn = NULL;
 
 #ifdef LIBXL_HAVE_PVUSB
     hostdev_flags |= VIR_HOSTDEV_SP_USB;
@@ -936,7 +937,6 @@ libxlDomainCleanup(libxlDriverPrivatePtr driver,
     }
 
     virDomainObjRemoveTransientDef(vm);
-    virObjectUnref(conn);
 }
 
 /*
@@ -1050,7 +1050,7 @@ static int
 libxlNetworkPrepareDevices(virDomainDefPtr def)
 {
     size_t i;
-    virConnectPtr conn = NULL;
+    g_autoptr(virConnect) conn = NULL;
     int ret = -1;
 
     for (i = 0; i < def->nnets; i++) {
@@ -1096,7 +1096,6 @@ libxlNetworkPrepareDevices(virDomainDefPtr def)
 
     ret = 0;
  cleanup:
-    virObjectUnref(conn);
     return ret;
 }
 
index 40d8c3d174891c1247212e4ca0b20c25b95d9627..5bd3614e2161c6c1e29ec6225cf7e81b55b82428 100644 (file)
@@ -355,7 +355,7 @@ static void
 libxlReconnectNotifyNets(virDomainDefPtr def)
 {
     size_t i;
-    virConnectPtr conn = NULL;
+    g_autoptr(virConnect) conn = NULL;
 
     for (i = 0; i < def->nnets; i++) {
         virDomainNetDefPtr net = def->nets[i];
@@ -372,8 +372,6 @@ libxlReconnectNotifyNets(virDomainDefPtr def)
 
         virDomainNetNotifyActualDevice(conn, def, net);
     }
-
-    virObjectUnref(conn);
 }
 
 
@@ -3403,7 +3401,7 @@ libxlDomainAttachNetDevice(libxlDriverPrivatePtr driver,
     libxl_device_nic nic;
     int ret = -1;
     char mac[VIR_MAC_STRING_BUFLEN];
-    virConnectPtr conn = NULL;
+    g_autoptr(virConnect) conn = NULL;
     virErrorPtr save_err = NULL;
 
     libxl_device_nic_init(&nic);
@@ -3478,7 +3476,6 @@ libxlDomainAttachNetDevice(libxlDriverPrivatePtr driver,
         if (net->type == VIR_DOMAIN_NET_TYPE_NETWORK && conn)
             virDomainNetReleaseActualDevice(conn, vm->def, net);
     }
-    virObjectUnref(conn);
     virObjectUnref(cfg);
     virErrorRestore(&save_err);
     return ret;
@@ -3904,13 +3901,11 @@ libxlDomainDetachNetDevice(libxlDriverPrivatePtr driver,
     libxl_device_nic_dispose(&nic);
     if (!ret) {
         if (detach->type == VIR_DOMAIN_NET_TYPE_NETWORK) {
-            virConnectPtr conn = virGetConnectNetwork();
-            if (conn) {
+            g_autoptr(virConnect) conn = virGetConnectNetwork();
+            if (conn)
                 virDomainNetReleaseActualDevice(conn, vm->def, detach);
-                virObjectUnref(conn);
-            } else {
+            else
                 VIR_WARN("Unable to release network device '%s'", NULLSTR(detach->ifname));
-            }
         }
         virDomainNetRemove(vm->def, detachidx);
     }
index 88d3890de7b468f1cf1e89a6e6e218e7b5812a8e..4416acf923d3c1b8de4ead40b432d233fd3634ef 100644 (file)
@@ -3463,14 +3463,9 @@ lxcDomainAttachDeviceNetLive(virLXCDriverPtr driver,
      * to the one defined in the network definition.
      */
     if (net->type == VIR_DOMAIN_NET_TYPE_NETWORK) {
-        virConnectPtr netconn = virGetConnectNetwork();
-        if (!netconn)
+        g_autoptr(virConnect) netconn = virGetConnectNetwork();
+        if (!netconn || virDomainNetAllocateActualDevice(netconn, vm->def, net) < 0)
             return -1;
-        if (virDomainNetAllocateActualDevice(netconn, vm->def, net) < 0) {
-            virObjectUnref(netconn);
-            return -1;
-        }
-        virObjectUnref(netconn);
     }
 
     /* final validation now that actual type is known */
@@ -4028,13 +4023,11 @@ lxcDomainDetachDeviceNetLive(virDomainObjPtr vm,
     if (!ret) {
         virErrorPreserveLast(&save_err);
         if (detach->type == VIR_DOMAIN_NET_TYPE_NETWORK) {
-            virConnectPtr conn = virGetConnectNetwork();
-            if (conn) {
+            g_autoptr(virConnect) conn = virGetConnectNetwork();
+            if (conn)
                 virDomainNetReleaseActualDevice(conn, vm->def, detach);
-                virObjectUnref(conn);
-            } else {
+            else
                 VIR_WARN("Unable to release network device '%s'", NULLSTR(detach->ifname));
-            }
         }
         virDomainNetRemove(vm->def, detachidx);
         virDomainNetDefFree(detach);
index 0b6895bbd49cba6e14375f681568ca5a4c9ce52d..cbc04a3dcd24b02f6d02c754992d84ec5ed4e90f 100644 (file)
@@ -172,7 +172,7 @@ static void virLXCProcessCleanup(virLXCDriverPtr driver,
     virLXCDomainObjPrivatePtr priv = vm->privateData;
     const virNetDevVPortProfile *vport = NULL;
     virLXCDriverConfigPtr cfg = virLXCDriverGetConfig(driver);
-    virConnectPtr conn = NULL;
+    g_autoptr(virConnect) conn = NULL;
 
     VIR_DEBUG("Cleanup VM name=%s pid=%d reason=%d flags=0x%x",
               vm->def->name, (int)vm->pid, (int)reason, flags);
@@ -281,7 +281,6 @@ static void virLXCProcessCleanup(virLXCDriverPtr driver,
         virDomainObjRemoveTransientDef(vm);
 
     virObjectUnref(cfg);
-    virObjectUnref(conn);
 }
 
 
@@ -571,7 +570,7 @@ virLXCProcessSetupInterfaces(virLXCDriverPtr driver,
     size_t niface = 0;
     virDomainNetDefPtr net;
     virDomainNetType type;
-    virConnectPtr netconn = NULL;
+    g_autoptr(virConnect) netconn = NULL;
     virErrorPtr save_err = NULL;
 
     *veths = g_new0(char *, def->nnets + 1);
@@ -680,7 +679,6 @@ virLXCProcessSetupInterfaces(virLXCDriverPtr driver,
         }
         virErrorRestore(&save_err);
     }
-    virObjectUnref(netconn);
     return ret;
 }
 
@@ -1634,7 +1632,7 @@ static void
 virLXCProcessReconnectNotifyNets(virDomainDefPtr def)
 {
     size_t i;
-    virConnectPtr conn = NULL;
+    g_autoptr(virConnect) conn = NULL;
 
     for (i = 0; i < def->nnets; i++) {
         virDomainNetDefPtr net = def->nets[i];
@@ -1668,8 +1666,6 @@ virLXCProcessReconnectNotifyNets(virDomainDefPtr def)
 
         virDomainNetNotifyActualDevice(conn, def, net);
     }
-
-    virObjectUnref(conn);
 }