From nobody Mon Apr 29 17:11:11 2024 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 Return-Path: Received: from mx1.redhat.com (mx1.redhat.com [209.132.183.28]) by mx.zohomail.com with SMTPS id 151912624515357.71233721270221; Tue, 20 Feb 2018 03:30:45 -0800 (PST) Received: from smtp.corp.redhat.com (int-mx03.intmail.prod.int.phx2.redhat.com [10.5.11.13]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mx1.redhat.com (Postfix) with ESMTPS id 62D19C0587D4; Tue, 20 Feb 2018 11:30:40 +0000 (UTC) Received: from colo-mx.corp.redhat.com (colo-mx01.intmail.prod.int.phx2.redhat.com [10.5.11.20]) by smtp.corp.redhat.com (Postfix) with ESMTPS id 931AD608F4; Tue, 20 Feb 2018 11:30:39 +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 6207A180BAE2; Tue, 20 Feb 2018 11:30:38 +0000 (UTC) Received: from smtp.corp.redhat.com (int-mx03.intmail.prod.int.rdu2.redhat.com [10.11.54.3]) by lists01.pubmisc.prod.ext.phx2.redhat.com (8.13.8/8.13.8) with ESMTP id w1KBUbrS024269 for ; Tue, 20 Feb 2018 06:30:37 -0500 Received: by smtp.corp.redhat.com (Postfix) id 3473C10A9DC6; Tue, 20 Feb 2018 11:30:37 +0000 (UTC) Received: from moe.brq.redhat.com (unknown [10.43.2.192]) by smtp.corp.redhat.com (Postfix) with ESMTP id D10F410A9DC5 for ; Tue, 20 Feb 2018 11:30:36 +0000 (UTC) From: Michal Privoznik To: libvir-list@redhat.com Date: Tue, 20 Feb 2018 12:30:31 +0100 Message-Id: In-Reply-To: References: In-Reply-To: References: X-Scanned-By: MIMEDefang 2.78 on 10.11.54.3 X-loop: libvir-list@redhat.com Subject: [libvirt] [PATCH 1/2] virDomainDiskSourceFormatInternal: Avoid leaking @childBuf 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: , MIME-Version: 1.0 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.13 X-Greylist: Sender IP whitelisted, not delayed by milter-greylist-4.5.16 (mx1.redhat.com [10.5.110.32]); Tue, 20 Feb 2018 11:30:40 +0000 (UTC) X-ZohoMail: RSF_0 Z_629925259 SPT_0 Content-Type: text/plain; charset="utf-8" If formatting of storage encryption or private data fails we must jump to the error label instead of returning immediately otherwise @attrBuf and @childBuf might be leaked. Signed-off-by: Michal Privoznik Reviewed-by: Daniel P. Berrang=C3=A9 --- src/conf/domain_conf.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/conf/domain_conf.c b/src/conf/domain_conf.c index fdf5ad19e..b6ebe918d 100644 --- a/src/conf/domain_conf.c +++ b/src/conf/domain_conf.c @@ -22910,10 +22910,10 @@ virDomainDiskSourceFormatInternal(virBufferPtr bu= f, * as we found it. */ if (src->encryption && src->encryptionInherited && virStorageEncryptionFormat(&childBuf, src->encryption) < 0) - return -1; + goto error; =20 if (virDomainDiskSourceFormatPrivateData(&childBuf, src, flags, xm= lopt) < 0) - return -1; + goto error; =20 if (virXMLFormatElement(buf, "source", &attrBuf, &childBuf) < 0) goto error; --=20 2.16.1 -- libvir-list mailing list libvir-list@redhat.com https://www.redhat.com/mailman/listinfo/libvir-list From nobody Mon Apr 29 17:11:11 2024 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 Return-Path: Received: from mx1.redhat.com (mx1.redhat.com [209.132.183.28]) by mx.zohomail.com with SMTPS id 1519126249862881.0611063574369; Tue, 20 Feb 2018 03:30:49 -0800 (PST) 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 9488AC0587DB; Tue, 20 Feb 2018 11:30:48 +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 63AFD60BEC; Tue, 20 Feb 2018 11:30:48 +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 2D878ADA8B; Tue, 20 Feb 2018 11:30:48 +0000 (UTC) Received: from smtp.corp.redhat.com (int-mx03.intmail.prod.int.rdu2.redhat.com [10.11.54.3]) by lists01.pubmisc.prod.ext.phx2.redhat.com (8.13.8/8.13.8) with ESMTP id w1KBUbv0024275 for ; Tue, 20 Feb 2018 06:30:38 -0500 Received: by smtp.corp.redhat.com (Postfix) id C346010A9DC6; Tue, 20 Feb 2018 11:30:37 +0000 (UTC) Received: from moe.brq.redhat.com (unknown [10.43.2.192]) by smtp.corp.redhat.com (Postfix) with ESMTP id 6C3D510A9DC5 for ; Tue, 20 Feb 2018 11:30:37 +0000 (UTC) From: Michal Privoznik To: libvir-list@redhat.com Date: Tue, 20 Feb 2018 12:30:32 +0100 Message-Id: In-Reply-To: References: In-Reply-To: References: X-Scanned-By: MIMEDefang 2.78 on 10.11.54.3 X-loop: libvir-list@redhat.com Subject: [libvirt] [PATCH 2/2] storage_conf: Make virStorageAuthDefFormat return void 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: , MIME-Version: 1.0 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.32]); Tue, 20 Feb 2018 11:30:49 +0000 (UTC) X-ZohoMail: RSF_0 Z_629925259 SPT_0 Content-Type: text/plain; charset="utf-8" This function returns nothing but zero. Therefore it makes no sense to have it returning an integer. Signed-off-by: Michal Privoznik Reviewed-by: Daniel P. Berrang=C3=A9 --- src/conf/domain_conf.c | 18 ++++++------------ src/conf/storage_conf.c | 6 ++---- src/util/virstoragefile.c | 4 +--- src/util/virstoragefile.h | 2 +- 4 files changed, 10 insertions(+), 20 deletions(-) diff --git a/src/conf/domain_conf.c b/src/conf/domain_conf.c index b6ebe918d..92797f7c0 100644 --- a/src/conf/domain_conf.c +++ b/src/conf/domain_conf.c @@ -22901,10 +22901,8 @@ virDomainDiskSourceFormatInternal(virBufferPtr buf, * kept in the storage pool and would be overwritten anyway. * So avoid formatting it for volumes. */ if (src->auth && src->authInherited && - src->type !=3D VIR_STORAGE_TYPE_VOLUME) { - if (virStorageAuthDefFormat(&childBuf, src->auth) < 0) - goto error; - } + src->type !=3D VIR_STORAGE_TYPE_VOLUME) + virStorageAuthDefFormat(&childBuf, src->auth); =20 /* If we found encryption as a child of , then format it * as we found it. */ @@ -23100,10 +23098,8 @@ virDomainDiskDefFormat(virBufferPtr buf, =20 /* Format as child of if defined there; otherwise, * if defined as child of , then format later */ - if (def->src->auth && !def->src->authInherited) { - if (virStorageAuthDefFormat(buf, def->src->auth) < 0) - return -1; - } + if (def->src->auth && !def->src->authInherited) + virStorageAuthDefFormat(buf, def->src->auth); =20 if (virDomainDiskSourceFormat(buf, def->src, def->startupPolicy, flags, xmlopt) < 0) @@ -23736,10 +23732,8 @@ virDomainHostdevDefFormatSubsys(virBufferPtr buf, =20 if (def->source.subsys.type =3D=3D VIR_DOMAIN_HOSTDEV_SUBSYS_TYPE_SCSI= && scsisrc->protocol =3D=3D VIR_DOMAIN_HOSTDEV_SCSI_PROTOCOL_TYPE_ISC= SI && - iscsisrc->src->auth) { - if (virStorageAuthDefFormat(buf, iscsisrc->src->auth) < 0) - return -1; - } + iscsisrc->src->auth) + virStorageAuthDefFormat(buf, iscsisrc->src->auth); =20 virBufferAdjustIndent(buf, -2); if (!closedSource) diff --git a/src/conf/storage_conf.c b/src/conf/storage_conf.c index f808cd291..b9135722c 100644 --- a/src/conf/storage_conf.c +++ b/src/conf/storage_conf.c @@ -953,10 +953,8 @@ virStoragePoolSourceFormat(virBufferPtr buf, virBufferAsprintf(buf, "\n", format); } =20 - if (src->auth) { - if (virStorageAuthDefFormat(buf, src->auth) < 0) - return -1; - } + if (src->auth) + virStorageAuthDefFormat(buf, src->auth); =20 virBufferEscapeString(buf, "\n", src->vendor); virBufferEscapeString(buf, "\n", src->product); diff --git a/src/util/virstoragefile.c b/src/util/virstoragefile.c index f0b1d329c..d1972d6d1 100644 --- a/src/util/virstoragefile.c +++ b/src/util/virstoragefile.c @@ -1891,7 +1891,7 @@ virStorageAuthDefParse(xmlDocPtr xml, xmlNodePtr root) } =20 =20 -int +void virStorageAuthDefFormat(virBufferPtr buf, virStorageAuthDefPtr authdef) { @@ -1908,8 +1908,6 @@ virStorageAuthDefFormat(virBufferPtr buf, &authdef->seclookupdef); virBufferAdjustIndent(buf, -2); virBufferAddLit(buf, "\n"); - - return 0; } =20 =20 diff --git a/src/util/virstoragefile.h b/src/util/virstoragefile.h index 9e8afa493..0095cd138 100644 --- a/src/util/virstoragefile.h +++ b/src/util/virstoragefile.h @@ -367,7 +367,7 @@ int virStorageFileGetSCSIKey(const char *path, void virStorageAuthDefFree(virStorageAuthDefPtr def); virStorageAuthDefPtr virStorageAuthDefCopy(const virStorageAuthDef *src); virStorageAuthDefPtr virStorageAuthDefParse(xmlDocPtr xml, xmlNodePtr root= ); -int virStorageAuthDefFormat(virBufferPtr buf, virStorageAuthDefPtr authdef= ); +void virStorageAuthDefFormat(virBufferPtr buf, virStorageAuthDefPtr authde= f); =20 virSecurityDeviceLabelDefPtr virStorageSourceGetSecurityLabelDef(virStorageSourcePtr src, --=20 2.16.1 -- libvir-list mailing list libvir-list@redhat.com https://www.redhat.com/mailman/listinfo/libvir-list