From nobody Sun Feb 8 21:48:36 2026 Delivered-To: importer@patchew.org Received-SPF: pass (zoho.com: domain of redhat.com designates 209.132.183.28 as permitted sender) client-ip=209.132.183.28; envelope-from=libvir-list-bounces@redhat.com; helo=mx1.redhat.com; Authentication-Results: mx.zohomail.com; spf=pass (zoho.com: domain of redhat.com designates 209.132.183.28 as permitted sender) smtp.mailfrom=libvir-list-bounces@redhat.com; dmarc=pass(p=none dis=none) header.from=redhat.com ARC-Seal: i=1; a=rsa-sha256; t=1566305985; cv=none; d=zoho.com; s=zohoarc; b=kH+lpLdw/w066NpLdIR8ZjfVuH8FBwfIQHJp3wFTQiDr6TE8wfXyeCbnVuUThYryMaYzGfr89QyJ4eM7Ye2TLcvQrkWDliglrkZSxnbYOo9FKAtvGJLiLvMlyebKNZiWHze880khGemJiC/tzg3mr17nAkwfxY/G6fO08DwtVk8= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zoho.com; s=zohoarc; t=1566305985; h=Content-Type:Content-Transfer-Encoding:Date:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:To:ARC-Authentication-Results; bh=f/2VXPGmKpVwACQkXStBPwK0oRKVDAzga4m4j5tap08=; b=BsLoZWBl+RJEoiaV6+edPF1Xpll1zDtih7owEWvir2gs2kufQQFTBJc7W2eo07NdUJuUaGqXCBlBGPsVfYwje9qysDAvBOXaVvna6HV2upDRMQTnChHbm0ld0Y7KAPlGEzoTZrQiNzlhcolXssaNiddKHrjC/RrQFyVxjt3q6Ms= ARC-Authentication-Results: i=1; mx.zoho.com; spf=pass (zoho.com: domain of redhat.com designates 209.132.183.28 as permitted sender) smtp.mailfrom=libvir-list-bounces@redhat.com; dmarc=pass header.from= (p=none dis=none) header.from= Return-Path: Received: from mx1.redhat.com (mx1.redhat.com [209.132.183.28]) by mx.zohomail.com with SMTPS id 1566305985923700.5657557504979; Tue, 20 Aug 2019 05:59:45 -0700 (PDT) Received: from smtp.corp.redhat.com (int-mx02.intmail.prod.int.phx2.redhat.com [10.5.11.12]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mx1.redhat.com (Postfix) with ESMTPS id 3B56430A76BE; Tue, 20 Aug 2019 12:59:43 +0000 (UTC) Received: from colo-mx.corp.redhat.com (colo-mx02.intmail.prod.int.phx2.redhat.com [10.5.11.21]) by smtp.corp.redhat.com (Postfix) with ESMTPS id 15F9760C18; Tue, 20 Aug 2019 12:59:43 +0000 (UTC) Received: from lists01.pubmisc.prod.ext.phx2.redhat.com (lists01.pubmisc.prod.ext.phx2.redhat.com [10.5.19.33]) by colo-mx.corp.redhat.com (Postfix) with ESMTP id CBE374E58A; Tue, 20 Aug 2019 12:59:42 +0000 (UTC) Received: from smtp.corp.redhat.com (int-mx01.intmail.prod.int.phx2.redhat.com [10.5.11.11]) by lists01.pubmisc.prod.ext.phx2.redhat.com (8.13.8/8.13.8) with ESMTP id x7KCxYdw023203 for ; Tue, 20 Aug 2019 08:59:34 -0400 Received: by smtp.corp.redhat.com (Postfix) id 0364080696; Tue, 20 Aug 2019 12:59:34 +0000 (UTC) Received: from icr.brq.redhat.com (unknown [10.43.2.100]) by smtp.corp.redhat.com (Postfix) with ESMTP id 7D01218EF5 for ; Tue, 20 Aug 2019 12:59:31 +0000 (UTC) From: =?UTF-8?q?J=C3=A1n=20Tomko?= To: libvir-list@redhat.com Date: Tue, 20 Aug 2019 14:59:08 +0200 Message-Id: <9baa9b9c88eebc5d93c4056e9c46850f840f79f0.1566305923.git.jtomko@redhat.com> In-Reply-To: References: MIME-Version: 1.0 X-Scanned-By: MIMEDefang 2.79 on 10.5.11.11 X-loop: libvir-list@redhat.com Subject: [libvirt] [PATCH 09/19] qemu_command: use VIR_AUTOFREE for variables used once X-BeenThere: libvir-list@redhat.com X-Mailman-Version: 2.1.12 Precedence: junk List-Id: Development discussions about the libvirt library & tools List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Sender: libvir-list-bounces@redhat.com Errors-To: libvir-list-bounces@redhat.com X-Scanned-By: MIMEDefang 2.79 on 10.5.11.12 X-Greylist: Sender IP whitelisted, not delayed by milter-greylist-4.5.16 (mx1.redhat.com [10.5.110.47]); Tue, 20 Aug 2019 12:59:43 +0000 (UTC) Remove the VIR_FREE's from the cleanup sections. Signed-off-by: J=C3=A1n Tomko --- src/qemu/qemu_command.c | 207 +++++++++++++--------------------------- 1 file changed, 66 insertions(+), 141 deletions(-) diff --git a/src/qemu/qemu_command.c b/src/qemu/qemu_command.c index b5448a074f..fe06867a88 100644 --- a/src/qemu/qemu_command.c +++ b/src/qemu/qemu_command.c @@ -203,8 +203,8 @@ qemuBuildMasterKeyCommandLine(virCommandPtr cmd, qemuDomainObjPrivatePtr priv) { int ret =3D -1; - char *alias =3D NULL; - char *path =3D NULL; + VIR_AUTOFREE(char *) alias =3D NULL; + VIR_AUTOFREE(char *) path =3D NULL; VIR_AUTOCLEAN(virBuffer) buf =3D VIR_BUFFER_INITIALIZER; =20 /* If the -object secret does not exist, then just return. This just @@ -235,8 +235,6 @@ qemuBuildMasterKeyCommandLine(virCommandPtr cmd, ret =3D 0; =20 cleanup: - VIR_FREE(alias); - VIR_FREE(path); return ret; } =20 @@ -301,7 +299,7 @@ qemuBuildDeviceAddressStr(virBufferPtr buf, virQEMUCapsPtr qemuCaps) { int ret =3D -1; - char *devStr =3D NULL; + VIR_AUTOFREE(char *) devStr =3D NULL; const char *contAlias =3D NULL; bool contIsPHB =3D false; int contTargetIndex =3D 0; @@ -401,7 +399,6 @@ qemuBuildDeviceAddressStr(virBufferPtr buf, =20 ret =3D 0; cleanup: - VIR_FREE(devStr); return ret; } =20 @@ -703,7 +700,7 @@ qemuBuildSecretInfoProps(qemuDomainSecretInfoPtr secinf= o, virJSONValuePtr *propsret) { int ret =3D -1; - char *keyid =3D NULL; + VIR_AUTOFREE(char *) keyid =3D NULL; =20 if (!(keyid =3D qemuDomainGetMasterKeyAlias())) return -1; @@ -715,7 +712,6 @@ qemuBuildSecretInfoProps(qemuDomainSecretInfoPtr secinf= o, "s:iv", secinfo->s.aes.iv, "s:format", "base64", NULL); =20 - VIR_FREE(keyid); return ret; } =20 @@ -1518,13 +1514,12 @@ qemuCheckFips(void) bool ret =3D false; =20 if (virFileExists("/proc/sys/crypto/fips_enabled")) { - char *buf =3D NULL; + VIR_AUTOFREE(char *) buf =3D NULL; =20 if (virFileReadAll("/proc/sys/crypto/fips_enabled", 10, &buf) < 0) return ret; if (STREQ(buf, "1\n")) ret =3D true; - VIR_FREE(buf); } =20 return ret; @@ -1612,7 +1607,7 @@ static int qemuBuildDriveSourcePR(virBufferPtr buf, virDomainDiskDefPtr disk) { - char *alias =3D NULL; + VIR_AUTOFREE(char *) alias =3D NULL; const char *defaultAlias =3D NULL; =20 if (!disk->src->pr) @@ -1625,7 +1620,6 @@ qemuBuildDriveSourcePR(virBufferPtr buf, =20 =20 virBufferAsprintf(buf, ",file.pr-manager=3D%s", alias ? alias : defaul= tAlias); - VIR_FREE(alias); return 0; } =20 @@ -1640,7 +1634,7 @@ qemuBuildDriveSourceStr(virDomainDiskDefPtr disk, qemuDomainSecretInfoPtr secinfo =3D NULL; qemuDomainSecretInfoPtr encinfo =3D NULL; VIR_AUTOPTR(virJSONValue) srcprops =3D NULL; - char *source =3D NULL; + VIR_AUTOFREE(char *) source =3D NULL; bool rawluks =3D false; int ret =3D -1; =20 @@ -1726,7 +1720,6 @@ qemuBuildDriveSourceStr(virDomainDiskDefPtr disk, ret =3D 0; =20 cleanup: - VIR_FREE(source); return ret; } =20 @@ -1839,13 +1832,12 @@ qemuBuildDriveStr(virDomainDiskDefPtr disk, goto error; =20 if (!qemuDiskBusNeedsDriveArg(disk->bus)) { - char *drivealias =3D qemuAliasDiskDriveFromDisk(disk); + VIR_AUTOFREE(char *) drivealias =3D qemuAliasDiskDriveFromDisk(dis= k); if (!drivealias) goto error; =20 virBufferAddLit(&opt, "if=3Dnone"); virBufferAsprintf(&opt, ",id=3D%s", drivealias); - VIR_FREE(drivealias); } else { int idx =3D virDiskNameToIndex(disk->dst); =20 @@ -2000,7 +1992,7 @@ qemuBuildDiskDeviceStr(const virDomainDef *def, VIR_AUTOCLEAN(virBuffer) opt =3D VIR_BUFFER_INITIALIZER; const char *bus =3D virDomainDiskQEMUBusTypeToString(disk->bus); const char *contAlias; - char *backendAlias =3D NULL; + VIR_AUTOFREE(char *) backendAlias =3D NULL; VIR_AUTOFREE(char *) scsiVPDDeviceId =3D NULL; int controllerModel; =20 @@ -2334,7 +2326,6 @@ qemuBuildDiskDeviceStr(const virDomainDef *def, return virBufferContentAndReset(&opt); =20 error: - VIR_FREE(backendAlias); return NULL; } =20 @@ -2360,7 +2351,7 @@ static int qemuCommandAddZPCIDevice(virCommandPtr cmd, virDomainDeviceInfoPtr dev) { - char *devstr =3D NULL; + VIR_AUTOFREE(char *) devstr =3D NULL; =20 virCommandAddArg(cmd, "-device"); =20 @@ -2369,7 +2360,6 @@ qemuCommandAddZPCIDevice(virCommandPtr cmd, =20 virCommandAddArg(cmd, devstr); =20 - VIR_FREE(devstr); return 0; } =20 @@ -2399,9 +2389,9 @@ qemuBuildFloppyCommandLineControllerOptions(virComman= dPtr cmd, bool hasfloppy =3D false; unsigned int bootindex; char driveLetter; - char *backendAlias =3D NULL; - char *backendStr =3D NULL; - char *bootindexStr =3D NULL; + VIR_AUTOFREE(char *) backendAlias =3D NULL; + VIR_AUTOFREE(char *) backendStr =3D NULL; + VIR_AUTOFREE(char *) bootindexStr =3D NULL; size_t i; int ret =3D -1; =20 @@ -2471,9 +2461,6 @@ qemuBuildFloppyCommandLineControllerOptions(virComman= dPtr cmd, ret =3D 0; =20 cleanup: - VIR_FREE(backendAlias); - VIR_FREE(backendStr); - VIR_FREE(bootindexStr); return ret; } =20 @@ -2582,7 +2569,7 @@ qemuBuildDiskCommandLine(virCommandPtr cmd, virQEMUCapsPtr qemuCaps, unsigned int bootindex) { - char *optstr; + VIR_AUTOFREE(char *) optstr =3D NULL; =20 if (qemuBuildDiskSourceCommandLine(cmd, disk, qemuCaps) < 0) return -1; @@ -2599,7 +2586,6 @@ qemuBuildDiskCommandLine(virCommandPtr cmd, qemuCaps))) return -1; virCommandAddArg(cmd, optstr); - VIR_FREE(optstr); } } =20 @@ -3400,7 +3386,7 @@ qemuBuildMemoryBackendProps(virJSONValuePtr *backendP= rops, const long system_page_size =3D virGetSystemPageSizeKB(); virDomainMemoryAccess memAccess =3D mem->access; size_t i; - char *memPath =3D NULL; + VIR_AUTOFREE(char *) memPath =3D NULL; bool prealloc =3D false; virBitmapPtr nodemask =3D NULL; int ret =3D -1; @@ -3648,7 +3634,6 @@ qemuBuildMemoryBackendProps(virJSONValuePtr *backendP= rops, ret =3D -1; =20 cleanup: - VIR_FREE(memPath); return ret; } =20 @@ -3661,7 +3646,7 @@ qemuBuildMemoryCellBackendStr(virDomainDefPtr def, virBufferPtr buf) { VIR_AUTOPTR(virJSONValue) props =3D NULL; - char *alias =3D NULL; + VIR_AUTOFREE(char *) alias =3D NULL; int ret =3D -1; int rc; virDomainMemoryDef mem =3D { 0 }; @@ -3685,7 +3670,6 @@ qemuBuildMemoryCellBackendStr(virDomainDefPtr def, ret =3D rc; =20 cleanup: - VIR_FREE(alias); =20 return ret; } @@ -3699,7 +3683,7 @@ qemuBuildMemoryDimmBackendStr(virBufferPtr buf, qemuDomainObjPrivatePtr priv) { VIR_AUTOPTR(virJSONValue) props =3D NULL; - char *alias =3D NULL; + VIR_AUTOFREE(char *) alias =3D NULL; int ret =3D -1; =20 if (!mem->info.alias) { @@ -3721,7 +3705,6 @@ qemuBuildMemoryDimmBackendStr(virBufferPtr buf, ret =3D 0; =20 cleanup: - VIR_FREE(alias); =20 return ret; } @@ -3995,7 +3978,6 @@ qemuBuildHostNetStr(virDomainNetDefPtr net, virDomainNetType netType =3D virDomainNetGetActualType(net); virQEMUDriverConfigPtr cfg =3D virQEMUDriverGetConfig(driver); size_t i; - char *addr =3D NULL; char *ret =3D NULL; =20 if (net->script && netType !=3D VIR_DOMAIN_NET_TYPE_ETHERNET) { @@ -4062,6 +4044,7 @@ qemuBuildHostNetStr(virDomainNetDefPtr net, virBufferAddLit(&buf, "user,"); for (i =3D 0; i < net->guestIP.nips; i++) { const virNetDevIPAddr *ip =3D net->guestIP.ips[i]; + VIR_AUTOFREE(char *) addr =3D NULL; const char *prefix =3D ""; =20 if (!(addr =3D virSocketAddrFormat(&ip->address))) @@ -4076,7 +4059,6 @@ qemuBuildHostNetStr(virDomainNetDefPtr net, if (ip->prefix) virBufferAsprintf(&buf, "/%u", ip->prefix); virBufferAddChar(&buf, ','); - VIR_FREE(addr); } break; =20 @@ -4127,7 +4109,6 @@ qemuBuildHostNetStr(virDomainNetDefPtr net, ret =3D virBufferContentAndReset(&buf); cleanup: virObjectUnref(cfg); - VIR_FREE(addr); return ret; } =20 @@ -4166,7 +4147,7 @@ qemuBuildWatchdogCommandLine(virCommandPtr cmd, virQEMUCapsPtr qemuCaps) { virDomainWatchdogDefPtr watchdog =3D def->watchdog; - char *optstr; + VIR_AUTOFREE(char *) optstr =3D NULL; const char *action; int actualAction; =20 @@ -4183,7 +4164,6 @@ qemuBuildWatchdogCommandLine(virCommandPtr cmd, return -1; =20 virCommandAddArg(cmd, optstr); - VIR_FREE(optstr); =20 /* qemu doesn't have a 'dump' action; we tell qemu to 'pause', then libvirt listens for the watchdog event, and we perform the dump @@ -4285,13 +4265,12 @@ qemuBuildNVRAMCommandLine(virCommandPtr cmd, return -1; } =20 - char *optstr; + VIR_AUTOFREE(char *) optstr =3D NULL; virCommandAddArg(cmd, "-global"); optstr =3D qemuBuildNVRAMDevStr(def->nvram); if (!optstr) return -1; virCommandAddArg(cmd, optstr); - VIR_FREE(optstr); } else { virReportError(VIR_ERR_CONFIG_UNSUPPORTED, "%s", _("nvram device is only supported for PPC64")); @@ -4430,7 +4409,7 @@ qemuBuildInputCommandLine(virCommandPtr cmd, =20 for (i =3D 0; i < def->ninputs; i++) { virDomainInputDefPtr input =3D def->inputs[i]; - char *devstr =3D NULL; + VIR_AUTOFREE(char *) devstr =3D NULL; =20 if (qemuCommandAddExtDevice(cmd, &input->info) < 0) return -1; @@ -4442,8 +4421,6 @@ qemuBuildInputCommandLine(virCommandPtr cmd, virCommandAddArg(cmd, "-device"); virCommandAddArg(cmd, devstr); } - - VIR_FREE(devstr); } =20 return 0; @@ -4566,7 +4543,7 @@ qemuBuildSoundCommandLine(virCommandPtr cmd, =20 for (i =3D 0; i < def->nsounds; i++) { virDomainSoundDefPtr sound =3D def->sounds[i]; - char *str =3D NULL; + VIR_AUTOFREE(char *) str =3D NULL; =20 /* Sadly pcspk device doesn't use -device syntax. Fortunately * we don't need to set any PCI address on it, so we don't @@ -4582,7 +4559,6 @@ qemuBuildSoundCommandLine(virCommandPtr cmd, return -1; =20 virCommandAddArg(cmd, str); - VIR_FREE(str); if (sound->model =3D=3D VIR_DOMAIN_SOUND_MODEL_ICH6 || sound->model =3D=3D VIR_DOMAIN_SOUND_MODEL_ICH9) { char *codecstr =3D NULL; @@ -4808,7 +4784,7 @@ qemuBuildVideoCommandLine(virCommandPtr cmd, size_t i; =20 for (i =3D 0; i < def->nvideos; i++) { - char *str =3D NULL; + VIR_AUTOFREE(char *) str =3D NULL; virDomainVideoDefPtr video =3D def->videos[i]; =20 if (video->type =3D=3D VIR_DOMAIN_VIDEO_TYPE_NONE) @@ -4827,7 +4803,6 @@ qemuBuildVideoCommandLine(virCommandPtr cmd, return -1; =20 virCommandAddArg(cmd, str); - VIR_FREE(str); } else { if (qemuBuildVgaVideoCommand(cmd, video, qemuCaps) < 0) return -1; @@ -4842,7 +4817,6 @@ qemuBuildVideoCommandLine(virCommandPtr cmd, return -1; =20 virCommandAddArg(cmd, str); - VIR_FREE(str); } } =20 @@ -4854,7 +4828,7 @@ int qemuOpenPCIConfig(virDomainHostdevDefPtr dev) { virDomainHostdevSubsysPCIPtr pcisrc =3D &dev->source.subsys.u.pci; - char *path =3D NULL; + VIR_AUTOFREE(char *) path =3D NULL; int configfd =3D -1; =20 if (virAsprintf(&path, "/sys/bus/pci/devices/%04x:%02x:%02x.%01x/confi= g", @@ -4867,8 +4841,6 @@ qemuOpenPCIConfig(virDomainHostdevDefPtr dev) if (configfd < 0) virReportSystemError(errno, _("Failed opening %s"), path); =20 - VIR_FREE(path); - return configfd; } =20 @@ -5011,13 +4983,12 @@ qemuBuildHubCommandLine(virCommandPtr cmd, =20 for (i =3D 0; i < def->nhubs; i++) { virDomainHubDefPtr hub =3D def->hubs[i]; - char *optstr; + VIR_AUTOFREE(char *) optstr =3D NULL; =20 virCommandAddArg(cmd, "-device"); if (!(optstr =3D qemuBuildHubDevStr(def, hub, qemuCaps))) return -1; virCommandAddArg(cmd, optstr); - VIR_FREE(optstr); } =20 return 0; @@ -5043,7 +5014,7 @@ qemuBuildSCSIiSCSIHostdevDrvStr(virDomainHostdevDefPt= r dev, { char *ret =3D NULL; VIR_AUTOCLEAN(virBuffer) buf =3D VIR_BUFFER_INITIALIZER; - char *netsource =3D NULL; + VIR_AUTOFREE(char *) netsource =3D NULL; VIR_AUTOPTR(virJSONValue) srcprops =3D NULL; virDomainHostdevSubsysSCSIPtr scsisrc =3D &dev->source.subsys.u.scsi; virDomainHostdevSubsysSCSIiSCSIPtr iscsisrc =3D &scsisrc->u.iscsi; @@ -5072,7 +5043,6 @@ qemuBuildSCSIiSCSIHostdevDrvStr(virDomainHostdevDefPt= r dev, ret =3D virBufferContentAndReset(&buf); =20 cleanup: - VIR_FREE(netsource); return ret; } =20 @@ -5118,8 +5088,8 @@ qemuBuildSCSIHostdevDrvStr(virDomainHostdevDefPtr dev, virQEMUCapsPtr qemuCaps) { VIR_AUTOCLEAN(virBuffer) buf =3D VIR_BUFFER_INITIALIZER; - char *source =3D NULL; - char *drivealias =3D NULL; + VIR_AUTOFREE(char *) source =3D NULL; + VIR_AUTOFREE(char *) drivealias =3D NULL; virDomainHostdevSubsysSCSIPtr scsisrc =3D &dev->source.subsys.u.scsi; =20 if (scsisrc->protocol =3D=3D VIR_DOMAIN_HOSTDEV_SCSI_PROTOCOL_TYPE_ISC= SI) { @@ -5131,12 +5101,10 @@ qemuBuildSCSIHostdevDrvStr(virDomainHostdevDefPtr d= ev, goto error; virBufferAsprintf(&buf, "file=3D/dev/%s,if=3Dnone,format=3Draw", s= ource); } - VIR_FREE(source); =20 if (!(drivealias =3D qemuAliasFromHostdev(dev))) goto error; virBufferAsprintf(&buf, ",id=3D%s", drivealias); - VIR_FREE(drivealias); =20 if (dev->readonly) virBufferAddLit(&buf, ",readonly=3Don"); @@ -5155,7 +5123,7 @@ qemuBuildSCSIHostdevDevStr(const virDomainDef *def, { VIR_AUTOCLEAN(virBuffer) buf =3D VIR_BUFFER_INITIALIZER; int model =3D -1; - char *driveAlias; + VIR_AUTOFREE(char *) driveAlias =3D NULL; const char *contAlias; =20 model =3D qemuDomainFindSCSIControllerModel(def, dev->info); @@ -5200,7 +5168,6 @@ qemuBuildSCSIHostdevDevStr(const virDomainDef *def, if (!(driveAlias =3D qemuAliasFromHostdev(dev))) goto error; virBufferAsprintf(&buf, ",drive=3D%s,id=3D%s", driveAlias, dev->info->= alias); - VIR_FREE(driveAlias); =20 if (dev->info->bootIndex) virBufferAsprintf(&buf, ",bootindex=3D%u", dev->info->bootIndex); @@ -5222,7 +5189,8 @@ qemuBuildChrChardevFileStr(virLogManagerPtr logManage= r, const char *appendarg, int appendval) { if (logManager) { - char *fdset, *fdpath; + VIR_AUTOFREE(char *) fdset =3D NULL; + VIR_AUTOFREE(char *) fdpath =3D NULL; int flags =3D 0; int logfd; =20 @@ -5245,13 +5213,11 @@ qemuBuildChrChardevFileStr(virLogManagerPtr logMana= ger, =20 virCommandAddArg(cmd, "-add-fd"); virCommandAddArg(cmd, fdset); - VIR_FREE(fdset); =20 if (!(fdpath =3D qemuVirCommandGetDevSet(cmd, logfd))) return -1; =20 virBufferAsprintf(buf, ",%s=3D%s,%s=3Don", filearg, fdpath, append= arg); - VIR_FREE(fdpath); } else { virBufferAsprintf(buf, ",%s=3D", filearg); virQEMUBuildBufferEscapeComma(buf, fileval); @@ -5356,7 +5322,7 @@ qemuBuildChrChardevStr(virLogManagerPtr logManager, qemuDomainChrSourcePrivatePtr chrSourcePriv =3D QEMU_DOMAIN_CHR_SOURCE= _PRIVATE(dev); VIR_AUTOCLEAN(virBuffer) buf =3D VIR_BUFFER_INITIALIZER; bool telnet; - char *charAlias =3D NULL; + VIR_AUTOFREE(char *) charAlias =3D NULL; char *ret =3D NULL; =20 if (!(charAlias =3D qemuAliasChardevFromDevAlias(alias))) @@ -5447,7 +5413,7 @@ qemuBuildChrChardevStr(virLogManagerPtr logManager, qemuBuildChrChardevReconnectStr(&buf, &dev->data.tcp.reconnect); =20 if (dev->data.tcp.haveTLS =3D=3D VIR_TRISTATE_BOOL_YES) { - char *objalias =3D NULL; + VIR_AUTOFREE(char *) objalias =3D NULL; const char *tlsCertEncSecAlias =3D NULL; =20 /* Add the secret object first if necessary. The @@ -5470,12 +5436,10 @@ qemuBuildChrChardevStr(virLogManagerPtr logManager, cfg->chardevTLSx509verify, tlsCertEncSecAlias, objalias, qemuCaps) < 0) { - VIR_FREE(objalias); goto cleanup; } =20 virBufferAsprintf(&buf, ",tls-creds=3D%s", objalias); - VIR_FREE(objalias); } break; =20 @@ -5544,7 +5508,6 @@ qemuBuildChrChardevStr(virLogManagerPtr logManager, =20 ret =3D virBufferContentAndReset(&buf); cleanup: - VIR_FREE(charAlias); return ret; } =20 @@ -5556,7 +5519,7 @@ qemuBuildHostdevMediatedDevStr(const virDomainDef *de= f, VIR_AUTOCLEAN(virBuffer) buf =3D VIR_BUFFER_INITIALIZER; virDomainHostdevSubsysMediatedDevPtr mdevsrc =3D &dev->source.subsys.u= .mdev; char *ret =3D NULL; - char *mdevPath =3D NULL; + VIR_AUTOFREE(char *) mdevPath =3D NULL; const char *dev_str =3D NULL; =20 if (!(mdevPath =3D virMediatedDeviceGetSysfsPath(mdevsrc->uuidstr))) @@ -5583,7 +5546,6 @@ qemuBuildHostdevMediatedDevStr(const virDomainDef *de= f, ret =3D virBufferContentAndReset(&buf); =20 cleanup: - VIR_FREE(mdevPath); return ret; } =20 @@ -5598,7 +5560,7 @@ qemuBuildHostdevCommandLine(virCommandPtr cmd, for (i =3D 0; i < def->nhostdevs; i++) { virDomainHostdevDefPtr hostdev =3D def->hostdevs[i]; virDomainHostdevSubsysPtr subsys =3D &hostdev->source.subsys; - char *devstr; + VIR_AUTOFREE(char *) devstr =3D NULL; =20 if (hostdev->info->bootIndex) { if (hostdev->mode !=3D VIR_DOMAIN_HOSTDEV_MODE_SUBSYS || @@ -5621,7 +5583,6 @@ qemuBuildHostdevCommandLine(virCommandPtr cmd, qemuBuildUSBHostdevDevStr(def, hostdev, qemuCaps))) return -1; virCommandAddArg(cmd, devstr); - VIR_FREE(devstr); } =20 /* PCI */ @@ -5638,7 +5599,7 @@ qemuBuildHostdevCommandLine(virCommandPtr cmd, } } =20 - char *configfd_name =3D NULL; + VIR_AUTOFREE(char *) configfd_name =3D NULL; unsigned int bootIndex =3D hostdev->info->bootIndex; =20 /* bootNet will be non-0 if boot order was set and no other @@ -5668,18 +5629,16 @@ qemuBuildHostdevCommandLine(virCommandPtr cmd, virCommandAddArg(cmd, "-device"); devstr =3D qemuBuildPCIHostdevDevStr(def, hostdev, bootIndex, configfd_name, qemuCaps); - VIR_FREE(configfd_name); if (!devstr) return -1; virCommandAddArg(cmd, devstr); - VIR_FREE(devstr); } =20 /* SCSI */ if (virHostdevIsSCSIDevice(hostdev)) { virDomainHostdevSubsysSCSIPtr scsisrc =3D &hostdev->source.subsys.u.scsi; - char *drvstr; + VIR_AUTOFREE(char *) drvstr =3D NULL; =20 if (scsisrc->protocol =3D=3D VIR_DOMAIN_HOSTDEV_SCSI_PROTOCOL_= TYPE_ISCSI) { virDomainHostdevSubsysSCSIiSCSIPtr iscsisrc =3D @@ -5697,13 +5656,11 @@ qemuBuildHostdevCommandLine(virCommandPtr cmd, if (!(drvstr =3D qemuBuildSCSIHostdevDrvStr(hostdev, qemuCaps)= )) return -1; virCommandAddArg(cmd, drvstr); - VIR_FREE(drvstr); =20 virCommandAddArg(cmd, "-device"); if (!(devstr =3D qemuBuildSCSIHostdevDevStr(def, hostdev))) return -1; virCommandAddArg(cmd, devstr); - VIR_FREE(devstr); } =20 /* SCSI_host */ @@ -5711,7 +5668,7 @@ qemuBuildHostdevCommandLine(virCommandPtr cmd, subsys->type =3D=3D VIR_DOMAIN_HOSTDEV_SUBSYS_TYPE_SCSI_HOST) { if (hostdev->source.subsys.u.scsi_host.protocol =3D=3D VIR_DOMAIN_HOSTDEV_SUBSYS_SCSI_HOST_PROTOCOL_TYPE_VHOST) { - char *vhostfdName =3D NULL; + VIR_AUTOFREE(char *) vhostfdName =3D NULL; int vhostfd =3D -1; =20 if (virSCSIVHostOpenVhostSCSI(&vhostfd) < 0) @@ -5729,14 +5686,10 @@ qemuBuildHostdevCommandLine(virCommandPtr cmd, if (!(devstr =3D qemuBuildSCSIVHostHostdevDevStr(def, hostdev, qemuCaps, - vhostfdName= ))) { - VIR_FREE(vhostfdName); + vhostfdName= ))) return -1; - } - virCommandAddArg(cmd, devstr); =20 - VIR_FREE(vhostfdName); - VIR_FREE(devstr); + virCommandAddArg(cmd, devstr); } } =20 @@ -5782,7 +5735,6 @@ qemuBuildHostdevCommandLine(virCommandPtr cmd, qemuBuildHostdevMediatedDevStr(def, hostdev, qemuCaps))) return -1; virCommandAddArg(cmd, devstr); - VIR_FREE(devstr); } } =20 @@ -5798,7 +5750,7 @@ qemuBuildMonitorCommandLine(virLogManagerPtr logManag= er, virDomainDefPtr def, qemuDomainObjPrivatePtr priv) { - char *chrdev; + VIR_AUTOFREE(char *) chrdev =3D NULL; unsigned int cdevflags =3D QEMU_BUILD_CHARDEV_TCP_NOWAIT | QEMU_BUILD_CHARDEV_UNIX_FD_PASS; if (priv->chardevStdioLogd) @@ -5814,7 +5766,6 @@ qemuBuildMonitorCommandLine(virLogManagerPtr logManag= er, return -1; virCommandAddArg(cmd, "-chardev"); virCommandAddArg(cmd, chrdev); - VIR_FREE(chrdev); =20 virCommandAddArg(cmd, "-mon"); virCommandAddArg(cmd, "chardev=3Dcharmonitor,id=3Dmonitor,mode=3Dcontr= ol"); @@ -5963,8 +5914,8 @@ qemuBuildRNGBackendProps(virDomainRNGDefPtr rng, virQEMUCapsPtr qemuCaps, virJSONValuePtr *props) { - char *objAlias =3D NULL; - char *charBackendAlias =3D NULL; + VIR_AUTOFREE(char *) objAlias =3D NULL; + VIR_AUTOFREE(char *) charBackendAlias =3D NULL; int ret =3D -1; =20 if (virAsprintf(&objAlias, "obj%s", rng->info.alias) < 0) @@ -6013,8 +5964,6 @@ qemuBuildRNGBackendProps(virDomainRNGDefPtr rng, ret =3D 0; =20 cleanup: - VIR_FREE(objAlias); - VIR_FREE(charBackendAlias); return ret; } =20 @@ -6585,13 +6534,12 @@ qemuBuildClockCommandLine(virCommandPtr cmd, virQEMUCapsPtr qemuCaps) { size_t i; - char *rtcopt; + VIR_AUTOFREE(char *) rtcopt =3D NULL; =20 virCommandAddArg(cmd, "-rtc"); if (!(rtcopt =3D qemuBuildClockArgStr(&def->clock))) return -1; virCommandAddArg(cmd, rtcopt); - VIR_FREE(rtcopt); =20 if (def->clock.offset =3D=3D VIR_DOMAIN_CLOCK_OFFSET_TIMEZONE && def->clock.data.timezone) { @@ -6747,7 +6695,7 @@ qemuBuildBootCommandLine(virCommandPtr cmd, virQEMUCapsPtr qemuCaps) { VIR_AUTOCLEAN(virBuffer) boot_buf =3D VIR_BUFFER_INITIALIZER; - char *boot_opts_str =3D NULL; + VIR_AUTOFREE(char *) boot_opts_str =3D NULL; =20 if (def->os.bootmenu) { if (def->os.bootmenu =3D=3D VIR_TRISTATE_BOOL_YES) @@ -6814,7 +6762,6 @@ qemuBuildBootCommandLine(virCommandPtr cmd, return 0; =20 error: - VIR_FREE(boot_opts_str); return -1; } =20 @@ -7047,7 +6994,8 @@ qemuBuildCpuCommandLine(virCommandPtr cmd, virQEMUCapsPtr qemuCaps) { virArch hostarch =3D virArchFromHost(); - char *cpu =3D NULL, *cpu_flags =3D NULL; + VIR_AUTOFREE(char *) cpu =3D NULL; + VIR_AUTOFREE(char *) cpu_flags =3D NULL; int ret =3D -1; VIR_AUTOCLEAN(virBuffer) cpu_buf =3D VIR_BUFFER_INITIALIZER; VIR_AUTOCLEAN(virBuffer) buf =3D VIR_BUFFER_INITIALIZER; @@ -7259,8 +7207,6 @@ qemuBuildCpuCommandLine(virCommandPtr cmd, ret =3D 0; =20 cleanup: - VIR_FREE(cpu); - VIR_FREE(cpu_flags); return ret; } =20 @@ -7665,7 +7611,7 @@ static int qemuBuildSmpCommandLine(virCommandPtr cmd, virDomainDefPtr def) { - char *smp; + char *smp =3D NULL; VIR_AUTOCLEAN(virBuffer) buf =3D VIR_BUFFER_INITIALIZER; unsigned int maxvcpus =3D virDomainDefGetVcpusMax(def); unsigned int nvcpus =3D 0; @@ -7716,7 +7662,7 @@ qemuBuildMemPathStr(virQEMUDriverConfigPtr cfg, qemuDomainObjPrivatePtr priv) { const long system_page_size =3D virGetSystemPageSizeKB(); - char *mem_path =3D NULL; + VIR_AUTOFREE(char *) mem_path =3D NULL; =20 /* There are two cases where we want to put -mem-path onto * the command line: First one is when there are no guest @@ -7743,7 +7689,6 @@ qemuBuildMemPathStr(virQEMUDriverConfigPtr cfg, } =20 virCommandAddArgList(cmd, "-mem-path", mem_path, NULL); - VIR_FREE(mem_path); =20 return 0; } @@ -8602,9 +8547,9 @@ qemuBuildInterfaceCommandLine(virQEMUDriverPtr driver, int **nicindexes) { int ret =3D -1; - char *nic =3D NULL; - char *host =3D NULL; - char *chardev =3D NULL; + VIR_AUTOFREE(char *) nic =3D NULL; + VIR_AUTOFREE(char *) host =3D NULL; + VIR_AUTOFREE(char *) chardev =3D NULL; int *tapfd =3D NULL; size_t tapfdSize =3D 0; int *vhostfd =3D NULL; @@ -8918,9 +8863,6 @@ qemuBuildInterfaceCommandLine(virQEMUDriverPtr driver, VIR_FREE(tapfdName); VIR_FREE(vhostfd); VIR_FREE(tapfd); - VIR_FREE(chardev); - VIR_FREE(host); - VIR_FREE(nic); return ret; } =20 @@ -9031,7 +8973,7 @@ qemuBuildSmartcardCommandLine(virLogManagerPtr logMan= ager, { size_t i; virDomainSmartcardDefPtr smartcard; - char *devstr; + VIR_AUTOFREE(char *) devstr =3D NULL; VIR_AUTOCLEAN(virBuffer) opt =3D VIR_BUFFER_INITIALIZER; const char *database; const char *contAlias =3D NULL; @@ -9109,7 +9051,6 @@ qemuBuildSmartcardCommandLine(virLogManagerPtr logMan= ager, } virCommandAddArg(cmd, "-chardev"); virCommandAddArg(cmd, devstr); - VIR_FREE(devstr); =20 virBufferAsprintf(&opt, "ccid-card-passthru,chardev=3Dchar%s", smartcard->info.alias); @@ -9231,8 +9172,8 @@ qemuBuildShmemDevStr(virDomainDefPtr def, virJSONValuePtr qemuBuildShmemBackendMemProps(virDomainShmemDefPtr shmem) { - char *mem_alias =3D NULL; - char *mem_path =3D NULL; + VIR_AUTOFREE(char *) mem_alias =3D NULL; + VIR_AUTOFREE(char *) mem_path =3D NULL; virJSONValuePtr ret =3D NULL; =20 if (virAsprintf(&mem_path, "/dev/shm/%s", shmem->name) < 0) @@ -9248,8 +9189,6 @@ qemuBuildShmemBackendMemProps(virDomainShmemDefPtr sh= mem) NULL); =20 cleanup: - VIR_FREE(mem_alias); - VIR_FREE(mem_path); return ret; } =20 @@ -9387,13 +9326,12 @@ qemuBuildChrDeviceCommandLine(virCommandPtr cmd, virDomainChrDefPtr chr, virQEMUCapsPtr qemuCaps) { - char *devstr =3D NULL; + VIR_AUTOFREE(char *) devstr =3D NULL; =20 if (qemuBuildChrDeviceStr(&devstr, def, chr, qemuCaps) < 0) return -1; =20 virCommandAddArgList(cmd, "-device", devstr, NULL); - VIR_FREE(devstr); return 0; } =20 @@ -9461,7 +9399,7 @@ qemuBuildSerialCommandLine(virLogManagerPtr logManage= r, =20 for (i =3D 0; i < def->nserials; i++) { virDomainChrDefPtr serial =3D def->serials[i]; - char *devstr; + VIR_AUTOFREE(char *) devstr =3D NULL; =20 if (serial->source->type =3D=3D VIR_DOMAIN_CHR_TYPE_SPICEPORT && != havespice) continue; @@ -9474,7 +9412,6 @@ qemuBuildSerialCommandLine(virLogManagerPtr logManage= r, return -1; virCommandAddArg(cmd, "-chardev"); virCommandAddArg(cmd, devstr); - VIR_FREE(devstr); =20 /* If the device is not a platform device, build the devstr */ if (!qemuChrIsPlatformDevice(def, serial)) { @@ -9518,7 +9455,7 @@ qemuBuildParallelsCommandLine(virLogManagerPtr logMan= ager, =20 for (i =3D 0; i < def->nparallels; i++) { virDomainChrDefPtr parallel =3D def->parallels[i]; - char *devstr; + VIR_AUTOFREE(char *) devstr =3D NULL; =20 if (!(devstr =3D qemuBuildChrChardevStr(logManager, secManager, cmd, cfg, def, @@ -9528,7 +9465,6 @@ qemuBuildParallelsCommandLine(virLogManagerPtr logMan= ager, return -1; virCommandAddArg(cmd, "-chardev"); virCommandAddArg(cmd, devstr); - VIR_FREE(devstr); =20 if (qemuBuildChrDeviceCommandLine(cmd, def, parallel, qemuCaps) < 0) @@ -9947,9 +9883,9 @@ qemuBuildTPMBackendStr(const virDomainDef *def, { const virDomainTPMDef *tpm =3D def->tpm; VIR_AUTOCLEAN(virBuffer) buf =3D VIR_BUFFER_INITIALIZER; - char *cancel_path =3D NULL; - char *devset =3D NULL; - char *cancelset =3D NULL; + VIR_AUTOFREE(char *) cancel_path =3D NULL; + VIR_AUTOFREE(char *) devset =3D NULL; + VIR_AUTOFREE(char *) cancelset =3D NULL; const char *tpmdev; =20 *tpmfd =3D -1; @@ -9980,10 +9916,6 @@ qemuBuildTPMBackendStr(const virDomainDef *def, virBufferAddLit(&buf, ",cancel-path=3D"); virQEMUBuildBufferEscapeComma(&buf, cancelset); =20 - VIR_FREE(devset); - VIR_FREE(cancelset); - VIR_FREE(cancel_path); - break; case VIR_DOMAIN_TPM_TYPE_EMULATOR: virBufferAddLit(&buf, ",chardev=3Dchrtpm"); @@ -10003,8 +9935,6 @@ qemuBuildTPMBackendStr(const virDomainDef *def, return virBufferContentAndReset(&buf); =20 error: - VIR_FREE(devset); - VIR_FREE(cancel_path); return NULL; } =20 @@ -10015,7 +9945,7 @@ qemuBuildTPMCommandLine(virCommandPtr cmd, virQEMUCapsPtr qemuCaps) { char *optstr; - char *chardev =3D NULL; + VIR_AUTOFREE(char *) chardev =3D NULL; int tpmfd =3D -1; int cancelfd =3D -1; char *fdset; @@ -10031,10 +9961,8 @@ qemuBuildTPMCommandLine(virCommandPtr cmd, virCommandAddArgList(cmd, "-tpmdev", optstr, NULL); VIR_FREE(optstr); =20 - if (chardev) { + if (chardev) virCommandAddArgList(cmd, "-chardev", chardev, NULL); - VIR_FREE(chardev); - } =20 if (tpmfd >=3D 0) { fdset =3D qemuVirCommandGetFDSet(cmd, tpmfd); @@ -10252,7 +10180,7 @@ qemuBuildPRManagerInfoPropsInternal(const char *ali= as, virJSONValuePtr qemuBuildPRManagedManagerInfoProps(qemuDomainObjPrivatePtr priv) { - char *path =3D NULL; + VIR_AUTOFREE(char *) path =3D NULL; virJSONValuePtr ret =3D NULL; =20 if (!(path =3D qemuDomainGetManagedPRSocketPath(priv))) @@ -10261,7 +10189,6 @@ qemuBuildPRManagedManagerInfoProps(qemuDomainObjPri= vatePtr priv) ret =3D qemuBuildPRManagerInfoPropsInternal(qemuDomainGetManagedPRAlia= s(), path); =20 - VIR_FREE(path); return ret; } =20 @@ -10463,7 +10390,7 @@ qemuBuildVsockCommandLine(virCommandPtr cmd, virQEMUCapsPtr qemuCaps) { qemuDomainVsockPrivatePtr priv =3D (qemuDomainVsockPrivatePtr)vsock->p= rivateData; - char *devstr =3D NULL; + VIR_AUTOFREE(char *) devstr =3D NULL; int ret =3D -1; =20 if (!(devstr =3D qemuBuildVsockDevStr(def, vsock, qemuCaps, ""))) @@ -10479,7 +10406,6 @@ qemuBuildVsockCommandLine(virCommandPtr cmd, =20 ret =3D 0; cleanup: - VIR_FREE(devstr); return ret; } =20 @@ -10845,7 +10771,7 @@ qemuBuildChannelChrDeviceStr(char **deviceStr, virDomainChrDefPtr chr) { int ret =3D -1; - char *addr =3D NULL; + VIR_AUTOFREE(char *) addr =3D NULL; int port; =20 switch ((virDomainChrChannelTargetType)chr->targetType) { @@ -10875,7 +10801,6 @@ qemuBuildChannelChrDeviceStr(char **deviceStr, =20 ret =3D 0; cleanup: - VIR_FREE(addr); return ret; } =20 --=20 2.19.2 -- libvir-list mailing list libvir-list@redhat.com https://www.redhat.com/mailman/listinfo/libvir-list