Re: [libvirt] [PATCH 6/6] lib: Define and use autofree for virConfPtr
On Mon, Sep 09, 2019 at 06:00:27PM +0200, Michal Privoznik wrote: > Signed-off-by: Michal Privoznik > --- > src/bhyve/bhyve_conf.c| 10 +--- > src/libvirt-admin.c | 3 +- > src/libvirt.c | 4 +- > src/libxl/libxl_conf.c| 22 +++- > src/libxl/libxl_driver.c | 8 +-- > src/libxl/xen_xl.c| 33 +-- > src/libxl/xen_xm.c| 19 +++ > src/locking/lock_daemon_config.c | 7 +-- > src/locking/lock_driver_lockd.c | 18 +++--- > src/locking/lock_driver_sanlock.c | 3 +- > src/logging/log_daemon_config.c | 7 +-- > src/lxc/lxc_conf.c| 16 ++ > src/lxc/lxc_native.c | 15 ++--- > src/qemu/qemu_conf.c | 47 +++- > src/remote/remote_daemon_config.c | 14 ++--- > src/security/security_selinux.c | 4 +- > src/util/virconf.h| 2 + > src/vmx/vmx.c | 3 +- > tests/virconftest.c | 93 +-- > tests/xlconfigtest.c | 8 +-- > tests/xmconfigtest.c | 8 +-- > tools/virt-login-shell-helper.c | 3 +- > 22 files changed, 133 insertions(+), 214 deletions(-) Reviewed-by: Pavel Hrdina signature.asc Description: PGP signature -- libvir-list mailing list libvir-list@redhat.com https://www.redhat.com/mailman/listinfo/libvir-list
Re: [libvirt] [PATCH 6/6] lib: Define and use autofree for virConfPtr
On 9/9/19 1:00 PM, Michal Privoznik wrote: Signed-off-by: Michal Privoznik --- Reviewed-by: Daniel Henrique Barboza src/bhyve/bhyve_conf.c| 10 +--- src/libvirt-admin.c | 3 +- src/libvirt.c | 4 +- src/libxl/libxl_conf.c| 22 +++- src/libxl/libxl_driver.c | 8 +-- src/libxl/xen_xl.c| 33 +-- src/libxl/xen_xm.c| 19 +++ src/locking/lock_daemon_config.c | 7 +-- src/locking/lock_driver_lockd.c | 18 +++--- src/locking/lock_driver_sanlock.c | 3 +- src/logging/log_daemon_config.c | 7 +-- src/lxc/lxc_conf.c| 16 ++ src/lxc/lxc_native.c | 15 ++--- src/qemu/qemu_conf.c | 47 +++- src/remote/remote_daemon_config.c | 14 ++--- src/security/security_selinux.c | 4 +- src/util/virconf.h| 2 + src/vmx/vmx.c | 3 +- tests/virconftest.c | 93 +-- tests/xlconfigtest.c | 8 +-- tests/xmconfigtest.c | 8 +-- tools/virt-login-shell-helper.c | 3 +- 22 files changed, 133 insertions(+), 214 deletions(-) diff --git a/src/bhyve/bhyve_conf.c b/src/bhyve/bhyve_conf.c index ee9427ea18..946be4a811 100644 --- a/src/bhyve/bhyve_conf.c +++ b/src/bhyve/bhyve_conf.c @@ -70,8 +70,7 @@ int virBhyveLoadDriverConfig(virBhyveDriverConfigPtr cfg, const char *filename) { -virConfPtr conf; -int ret = -1; +VIR_AUTOPTR(virConf) conf = NULL; if (access(filename, R_OK) == -1) { VIR_INFO("Could not read bhyve config file %s", filename); @@ -83,12 +82,9 @@ virBhyveLoadDriverConfig(virBhyveDriverConfigPtr cfg, if (virConfGetValueString(conf, "firmware_dir", >firmwareDir) < 0) -goto cleanup; +return -1; -ret = 0; - cleanup: -virConfFree(conf); -return ret; +return 0; } virBhyveDriverConfigPtr diff --git a/src/libvirt-admin.c b/src/libvirt-admin.c index ba88f09824..9d5c5b1b7b 100644 --- a/src/libvirt-admin.c +++ b/src/libvirt-admin.c @@ -223,7 +223,7 @@ virAdmConnectOpen(const char *name, unsigned int flags) char *sock_path = NULL; char *alias = NULL; virAdmConnectPtr conn = NULL; -virConfPtr conf = NULL; +VIR_AUTOPTR(virConf) conf = NULL; char *uristr = NULL; if (virAdmInitialize() < 0) @@ -272,7 +272,6 @@ virAdmConnectOpen(const char *name, unsigned int flags) cleanup: VIR_FREE(sock_path); VIR_FREE(uristr); -virConfFree(conf); return conn; error: diff --git a/src/libvirt.c b/src/libvirt.c index 9650aaa453..19bc05638f 100644 --- a/src/libvirt.c +++ b/src/libvirt.c @@ -859,7 +859,7 @@ virConnectOpenInternal(const char *name, size_t i; int res; virConnectPtr ret; -virConfPtr conf = NULL; +VIR_AUTOPTR(virConf) conf = NULL; char *uristr = NULL; ret = virGetConnect(); @@ -1069,14 +1069,12 @@ virConnectOpenInternal(const char *name, goto failed; } -virConfFree(conf); VIR_FREE(uristr); return ret; failed: VIR_FREE(uristr); -virConfFree(conf); virObjectUnref(ret); return NULL; diff --git a/src/libxl/libxl_conf.c b/src/libxl/libxl_conf.c index 766a726ebc..c76704a11d 100644 --- a/src/libxl/libxl_conf.c +++ b/src/libxl/libxl_conf.c @@ -1864,8 +1864,7 @@ libxlDriverConfigGet(libxlDriverPrivatePtr driver) int libxlDriverConfigLoadFile(libxlDriverConfigPtr cfg, const char *filename) { -virConfPtr conf = NULL; -int ret = -1; +VIR_AUTOPTR(virConf) conf = NULL; /* defaults for keepalive messages */ cfg->keepAliveInterval = 5; @@ -1880,30 +1879,25 @@ int libxlDriverConfigLoadFile(libxlDriverConfigPtr cfg, } if (!(conf = virConfReadFile(filename, 0))) -goto cleanup; +return -1; /* setup autoballoon */ if (libxlGetAutoballoonConf(cfg, conf) < 0) -goto cleanup; +return -1; if (virConfGetValueString(conf, "lock_manager", >lockManagerName) < 0) -goto cleanup; +return -1; if (virConfGetValueInt(conf, "keepalive_interval", >keepAliveInterval) < 0) -goto cleanup; +return -1; if (virConfGetValueUInt(conf, "keepalive_count", >keepAliveCount) < 0) -goto cleanup; +return -1; if (virConfGetValueBool(conf, "nested_hvm", >nested_hvm) < 0) -goto cleanup; - -ret = 0; - - cleanup: -virConfFree(conf); -return ret; +return -1; +return 0; } /* diff --git a/src/libxl/libxl_driver.c b/src/libxl/libxl_driver.c index fccc1f42e8..45de6b24c6 100644 --- a/src/libxl/libxl_driver.c +++ b/src/libxl/libxl_driver.c @@ -2675,7 +2675,7 @@ libxlConnectDomainXMLFromNative(virConnectPtr
[libvirt] [PATCH 6/6] lib: Define and use autofree for virConfPtr
Signed-off-by: Michal Privoznik --- src/bhyve/bhyve_conf.c| 10 +--- src/libvirt-admin.c | 3 +- src/libvirt.c | 4 +- src/libxl/libxl_conf.c| 22 +++- src/libxl/libxl_driver.c | 8 +-- src/libxl/xen_xl.c| 33 +-- src/libxl/xen_xm.c| 19 +++ src/locking/lock_daemon_config.c | 7 +-- src/locking/lock_driver_lockd.c | 18 +++--- src/locking/lock_driver_sanlock.c | 3 +- src/logging/log_daemon_config.c | 7 +-- src/lxc/lxc_conf.c| 16 ++ src/lxc/lxc_native.c | 15 ++--- src/qemu/qemu_conf.c | 47 +++- src/remote/remote_daemon_config.c | 14 ++--- src/security/security_selinux.c | 4 +- src/util/virconf.h| 2 + src/vmx/vmx.c | 3 +- tests/virconftest.c | 93 +-- tests/xlconfigtest.c | 8 +-- tests/xmconfigtest.c | 8 +-- tools/virt-login-shell-helper.c | 3 +- 22 files changed, 133 insertions(+), 214 deletions(-) diff --git a/src/bhyve/bhyve_conf.c b/src/bhyve/bhyve_conf.c index ee9427ea18..946be4a811 100644 --- a/src/bhyve/bhyve_conf.c +++ b/src/bhyve/bhyve_conf.c @@ -70,8 +70,7 @@ int virBhyveLoadDriverConfig(virBhyveDriverConfigPtr cfg, const char *filename) { -virConfPtr conf; -int ret = -1; +VIR_AUTOPTR(virConf) conf = NULL; if (access(filename, R_OK) == -1) { VIR_INFO("Could not read bhyve config file %s", filename); @@ -83,12 +82,9 @@ virBhyveLoadDriverConfig(virBhyveDriverConfigPtr cfg, if (virConfGetValueString(conf, "firmware_dir", >firmwareDir) < 0) -goto cleanup; +return -1; -ret = 0; - cleanup: -virConfFree(conf); -return ret; +return 0; } virBhyveDriverConfigPtr diff --git a/src/libvirt-admin.c b/src/libvirt-admin.c index ba88f09824..9d5c5b1b7b 100644 --- a/src/libvirt-admin.c +++ b/src/libvirt-admin.c @@ -223,7 +223,7 @@ virAdmConnectOpen(const char *name, unsigned int flags) char *sock_path = NULL; char *alias = NULL; virAdmConnectPtr conn = NULL; -virConfPtr conf = NULL; +VIR_AUTOPTR(virConf) conf = NULL; char *uristr = NULL; if (virAdmInitialize() < 0) @@ -272,7 +272,6 @@ virAdmConnectOpen(const char *name, unsigned int flags) cleanup: VIR_FREE(sock_path); VIR_FREE(uristr); -virConfFree(conf); return conn; error: diff --git a/src/libvirt.c b/src/libvirt.c index 9650aaa453..19bc05638f 100644 --- a/src/libvirt.c +++ b/src/libvirt.c @@ -859,7 +859,7 @@ virConnectOpenInternal(const char *name, size_t i; int res; virConnectPtr ret; -virConfPtr conf = NULL; +VIR_AUTOPTR(virConf) conf = NULL; char *uristr = NULL; ret = virGetConnect(); @@ -1069,14 +1069,12 @@ virConnectOpenInternal(const char *name, goto failed; } -virConfFree(conf); VIR_FREE(uristr); return ret; failed: VIR_FREE(uristr); -virConfFree(conf); virObjectUnref(ret); return NULL; diff --git a/src/libxl/libxl_conf.c b/src/libxl/libxl_conf.c index 766a726ebc..c76704a11d 100644 --- a/src/libxl/libxl_conf.c +++ b/src/libxl/libxl_conf.c @@ -1864,8 +1864,7 @@ libxlDriverConfigGet(libxlDriverPrivatePtr driver) int libxlDriverConfigLoadFile(libxlDriverConfigPtr cfg, const char *filename) { -virConfPtr conf = NULL; -int ret = -1; +VIR_AUTOPTR(virConf) conf = NULL; /* defaults for keepalive messages */ cfg->keepAliveInterval = 5; @@ -1880,30 +1879,25 @@ int libxlDriverConfigLoadFile(libxlDriverConfigPtr cfg, } if (!(conf = virConfReadFile(filename, 0))) -goto cleanup; +return -1; /* setup autoballoon */ if (libxlGetAutoballoonConf(cfg, conf) < 0) -goto cleanup; +return -1; if (virConfGetValueString(conf, "lock_manager", >lockManagerName) < 0) -goto cleanup; +return -1; if (virConfGetValueInt(conf, "keepalive_interval", >keepAliveInterval) < 0) -goto cleanup; +return -1; if (virConfGetValueUInt(conf, "keepalive_count", >keepAliveCount) < 0) -goto cleanup; +return -1; if (virConfGetValueBool(conf, "nested_hvm", >nested_hvm) < 0) -goto cleanup; - -ret = 0; - - cleanup: -virConfFree(conf); -return ret; +return -1; +return 0; } /* diff --git a/src/libxl/libxl_driver.c b/src/libxl/libxl_driver.c index fccc1f42e8..45de6b24c6 100644 --- a/src/libxl/libxl_driver.c +++ b/src/libxl/libxl_driver.c @@ -2675,7 +2675,7 @@ libxlConnectDomainXMLFromNative(virConnectPtr conn, libxlDriverPrivatePtr driver = conn->privateData; libxlDriverConfigPtr cfg = libxlDriverConfigGet(driver); virDomainDefPtr def = NULL; -virConfPtr conf = NULL; +