From nobody Mon Feb 9 02:42:41 2026 Delivered-To: importer@patchew.org Received-SPF: pass (zohomail.com: domain of redhat.com designates 207.211.31.120 as permitted sender) client-ip=207.211.31.120; envelope-from=libvir-list-bounces@redhat.com; helo=us-smtp-1.mimecast.com; Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of redhat.com designates 207.211.31.120 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=1583771020; cv=none; d=zohomail.com; s=zohoarc; b=j6+l0Mxvpf2UbltamECp1hqYiQZ5KzVoG5/B2P/BY817aENPULio1eV4pN3HB0ZE1sxgkoFREdCQwhD1u2dz+BREehdTT2oIYd2ik+Uuwl+ndnlShzHs67UzxQ7Fd4RYM3YdSutoPi+BUy5GiSYcYH1U7iUupneUud5r1tnZkzo= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1583771020; 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; bh=hfqjdV/0cOxZP4MgEUaHBn//t3riyoPuTgTNMsMU2eE=; b=JqqD/wCYvVDBfptgJnI8Q2NYMfTsznjjcOONi5rORqxjRuZpAiQ+DnbPbDMTJmwilQYFCytzpd8aPGtKGfoLE4OsOoMOMMfP6PI3e49x2jsVJQtTZorqdvhkgZrHnVe3vFHEGhwBFpN1ERw64LLr3fdxNbDkIqeVDj6KZT3rL3I= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of redhat.com designates 207.211.31.120 as permitted sender) smtp.mailfrom=libvir-list-bounces@redhat.com; dmarc=pass header.from= (p=none dis=none) header.from= Return-Path: Received: from us-smtp-1.mimecast.com (us-smtp-delivery-1.mimecast.com [207.211.31.120]) by mx.zohomail.com with SMTPS id 1583771020711803.0393355198314; Mon, 9 Mar 2020 09:23:40 -0700 (PDT) Received: from mimecast-mx01.redhat.com (mimecast-mx01.redhat.com [209.132.183.4]) (Using TLS) by relay.mimecast.com with ESMTP id us-mta-475-M8wmluLaOgW7W57auB5UNQ-1; Mon, 09 Mar 2020 12:23:27 -0400 Received: from smtp.corp.redhat.com (int-mx06.intmail.prod.int.phx2.redhat.com [10.5.11.16]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mimecast-mx01.redhat.com (Postfix) with ESMTPS id 5ECC5107ACCD; Mon, 9 Mar 2020 16:23:21 +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 113BF5C1C3; Mon, 9 Mar 2020 16:23:21 +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 83F4318089CE; Mon, 9 Mar 2020 16:23:17 +0000 (UTC) Received: from smtp.corp.redhat.com (int-mx03.intmail.prod.int.phx2.redhat.com [10.5.11.13]) by lists01.pubmisc.prod.ext.phx2.redhat.com (8.13.8/8.13.8) with ESMTP id 029GNGUx020684 for ; Mon, 9 Mar 2020 12:23:16 -0400 Received: by smtp.corp.redhat.com (Postfix) id 582C29051C; Mon, 9 Mar 2020 16:23:16 +0000 (UTC) Received: from angien.redhat.com (unknown [10.43.2.48]) by smtp.corp.redhat.com (Postfix) with ESMTP id D1CB490A03 for ; Mon, 9 Mar 2020 16:23:15 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1583771019; h=from:from:sender:sender:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:mime-version:mime-version: content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references:list-id:list-help: list-unsubscribe:list-subscribe:list-post; bh=hfqjdV/0cOxZP4MgEUaHBn//t3riyoPuTgTNMsMU2eE=; b=eRIMcnDpx0t3K/mI/qYu6cuwzGceR2NxyLTUSz4mlOiw1XjZ/6lhJm76RkJIsyvIWGuPds f5/n4cFcAtQZTe+L07ODs7rWGZk34CCshc2g5Z6UzGVxlkeUFhXhj0xhhCfHMV9yyjdTcO rbf7M7r0nKnK8MOkqa0Pk/LNvlchHCo= X-MC-Unique: M8wmluLaOgW7W57auB5UNQ-1 From: Peter Krempa To: libvir-list@redhat.com Subject: [PATCH 02/30] qemu: Don't take double pointer in qemuDomainSecretInfoFree Date: Mon, 9 Mar 2020 17:22:42 +0100 Message-Id: <6de6ba9de8eb215b0a2119fd829e3b29ac073fa0.1583770683.git.pkrempa@redhat.com> In-Reply-To: References: MIME-Version: 1.0 X-Scanned-By: MIMEDefang 2.79 on 10.5.11.13 X-loop: libvir-list@redhat.com 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: , Sender: libvir-list-bounces@redhat.com Errors-To: libvir-list-bounces@redhat.com X-Scanned-By: MIMEDefang 2.79 on 10.5.11.16 X-Mimecast-Spam-Score: 0 X-Mimecast-Originator: redhat.com Content-Transfer-Encoding: quoted-printable X-ZohoMail-DKIM: pass (identity @redhat.com) Content-Type: text/plain; charset="utf-8" Using a doulble pointer prevents the function from being used as the automatic cleanup function for the given type. Remove the double pointer use by replacing the calls with g_clear_pointer which ensures that the pointer is cleared. Signed-off-by: Peter Krempa Reviewed-by: J=C3=A1n Tomko --- src/qemu/qemu_domain.c | 30 +++++++++++++----------------- src/qemu/qemu_domain.h | 2 +- src/qemu/qemu_migration_params.c | 2 +- 3 files changed, 15 insertions(+), 19 deletions(-) diff --git a/src/qemu/qemu_domain.c b/src/qemu/qemu_domain.c index 33c2158eb5..bd32949e9b 100644 --- a/src/qemu/qemu_domain.c +++ b/src/qemu/qemu_domain.c @@ -1099,14 +1099,10 @@ qemuDomainSecretInfoClear(qemuDomainSecretInfoPtr s= ecinfo, void -qemuDomainSecretInfoFree(qemuDomainSecretInfoPtr *secinfo) +qemuDomainSecretInfoFree(qemuDomainSecretInfoPtr secinfo) { - if (!*secinfo) - return; - - qemuDomainSecretInfoClear(*secinfo, false); - - VIR_FREE(*secinfo); + qemuDomainSecretInfoClear(secinfo, false); + g_free(secinfo); } @@ -1196,8 +1192,8 @@ qemuDomainStorageSourcePrivateDispose(void *obj) { qemuDomainStorageSourcePrivatePtr priv =3D obj; - qemuDomainSecretInfoFree(&priv->secinfo); - qemuDomainSecretInfoFree(&priv->encinfo); + g_clear_pointer(&priv->secinfo, qemuDomainSecretInfoFree); + g_clear_pointer(&priv->encinfo, qemuDomainSecretInfoFree); } @@ -1276,7 +1272,7 @@ qemuDomainChrSourcePrivateDispose(void *obj) { qemuDomainChrSourcePrivatePtr priv =3D obj; - qemuDomainSecretInfoFree(&priv->secinfo); + g_clear_pointer(&priv->secinfo, qemuDomainSecretInfoFree); } @@ -1355,7 +1351,7 @@ qemuDomainGraphicsPrivateDispose(void *obj) qemuDomainGraphicsPrivatePtr priv =3D obj; VIR_FREE(priv->tlsAlias); - qemuDomainSecretInfoFree(&priv->secinfo); + g_clear_pointer(&priv->secinfo, qemuDomainSecretInfoFree); } @@ -1631,7 +1627,7 @@ qemuDomainSecretInfoNewPlain(virSecretUsageType usage= Type, return NULL; if (qemuDomainSecretPlainSetup(secinfo, usageType, username, lookupDef= ) < 0) { - qemuDomainSecretInfoFree(&secinfo); + g_clear_pointer(&secinfo, qemuDomainSecretInfoFree); return NULL; } @@ -1674,7 +1670,7 @@ qemuDomainSecretInfoNew(qemuDomainObjPrivatePtr priv, if (qemuDomainSecretAESSetup(priv, secinfo, srcAlias, usageType, usern= ame, lookupDef, isLuks) < 0) { - qemuDomainSecretInfoFree(&secinfo); + g_clear_pointer(&secinfo, qemuDomainSecretInfoFree); return NULL; } @@ -1836,7 +1832,7 @@ qemuDomainSecretHostdevDestroy(virDomainHostdevDefPtr= hostdev) if (scsisrc->protocol =3D=3D VIR_DOMAIN_HOSTDEV_SCSI_PROTOCOL_TYPE= _ISCSI) { srcPriv =3D QEMU_DOMAIN_STORAGE_SOURCE_PRIVATE(iscsisrc->src); if (srcPriv && srcPriv->secinfo) - qemuDomainSecretInfoFree(&srcPriv->secinfo); + g_clear_pointer(&srcPriv->secinfo, qemuDomainSecretInfoFre= e); } } } @@ -1880,7 +1876,7 @@ qemuDomainSecretChardevDestroy(virDomainChrSourceDefP= tr dev) if (!chrSourcePriv || !chrSourcePriv->secinfo) return; - qemuDomainSecretInfoFree(&chrSourcePriv->secinfo); + g_clear_pointer(&chrSourcePriv->secinfo, qemuDomainSecretInfoFree); } @@ -1935,7 +1931,7 @@ qemuDomainSecretGraphicsDestroy(virDomainGraphicsDefP= tr graphics) return; VIR_FREE(gfxPriv->tlsAlias); - qemuDomainSecretInfoFree(&gfxPriv->secinfo); + g_clear_pointer(&gfxPriv->secinfo, qemuDomainSecretInfoFree); } @@ -2283,7 +2279,7 @@ qemuDomainObjPrivateFree(void *data) } VIR_FREE(priv->cleanupCallbacks); - qemuDomainSecretInfoFree(&priv->migSecinfo); + g_clear_pointer(&priv->migSecinfo, qemuDomainSecretInfoFree); qemuDomainMasterKeyFree(priv); virHashFree(priv->blockjobs); diff --git a/src/qemu/qemu_domain.h b/src/qemu/qemu_domain.h index 476056c73f..10d6264e46 100644 --- a/src/qemu/qemu_domain.h +++ b/src/qemu/qemu_domain.h @@ -1032,7 +1032,7 @@ void qemuDomainMasterKeyRemove(qemuDomainObjPrivatePt= r priv); bool qemuDomainSupportsEncryptedSecret(qemuDomainObjPrivatePtr priv); -void qemuDomainSecretInfoFree(qemuDomainSecretInfoPtr *secinfo) +void qemuDomainSecretInfoFree(qemuDomainSecretInfoPtr secinfo) ATTRIBUTE_NONNULL(1); void qemuDomainSecretInfoDestroy(qemuDomainSecretInfoPtr secinfo); diff --git a/src/qemu/qemu_migration_params.c b/src/qemu/qemu_migration_par= ams.c index a92bb2fa2b..a36c6a4aea 100644 --- a/src/qemu/qemu_migration_params.c +++ b/src/qemu/qemu_migration_params.c @@ -1086,7 +1086,7 @@ qemuMigrationParamsResetTLS(virQEMUDriverPtr driver, secAlias =3D qemuDomainGetSecretAESAlias(QEMU_MIGRATION_TLS_ALIAS_BASE= , false); qemuDomainDelTLSObjects(driver, vm, asyncJob, secAlias, tlsAlias); - qemuDomainSecretInfoFree(&QEMU_DOMAIN_PRIVATE(vm)->migSecinfo); + g_clear_pointer(&QEMU_DOMAIN_PRIVATE(vm)->migSecinfo, qemuDomainSecret= InfoFree); VIR_FREE(tlsAlias); VIR_FREE(secAlias); --=20 2.24.1