From nobody Mon Feb 9 10:28:47 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 Return-Path: Received: from mx1.redhat.com (mx1.redhat.com [209.132.183.28]) by mx.zohomail.com with SMTPS id 155306047929225.354329051433297; Tue, 19 Mar 2019 22:41:19 -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 D96B5308429D; Wed, 20 Mar 2019 05:41:16 +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 BC5DC60BF3; Wed, 20 Mar 2019 05:41:15 +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 CED4141F3D; Wed, 20 Mar 2019 05:41:12 +0000 (UTC) Received: from smtp.corp.redhat.com (int-mx08.intmail.prod.int.phx2.redhat.com [10.5.11.23]) by lists01.pubmisc.prod.ext.phx2.redhat.com (8.13.8/8.13.8) with ESMTP id x2K5fCBQ017186 for ; Wed, 20 Mar 2019 01:41:12 -0400 Received: by smtp.corp.redhat.com (Postfix) id 565B41A913; Wed, 20 Mar 2019 05:41:12 +0000 (UTC) Received: from blue.redhat.com (ovpn-116-65.phx2.redhat.com [10.3.116.65]) by smtp.corp.redhat.com (Postfix) with ESMTP id B0C461974C; Wed, 20 Mar 2019 05:41:11 +0000 (UTC) From: Eric Blake To: libvir-list@redhat.com Date: Wed, 20 Mar 2019 00:40:51 -0500 Message-Id: <20190320054105.17689-3-eblake@redhat.com> In-Reply-To: <20190320054105.17689-1-eblake@redhat.com> References: <20190320054105.17689-1-eblake@redhat.com> MIME-Version: 1.0 X-Scanned-By: MIMEDefang 2.84 on 10.5.11.23 X-loop: libvir-list@redhat.com Cc: jtomko@redhat.com Subject: [libvirt] [PATCH 02/16] snapshot: Use accessors for virDomainSnapshot members 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.40]); Wed, 20 Mar 2019 05:41:17 +0000 (UTC) Upcoming patches want to add virDomainCheckpoint that behaves very similarly to virDomainSnapshot; the easiest way to share common code is to give both classes a common base class. If this were C++, we'd just use public member inheritance; but since it is C, we instead have to touch EVERY use of member fields that will be relocated. To avoid having to make future edits, wrap the majority of accesses behind static inline functions, so that we only have to touch one place when changing class inheritance. I wrote the patch by temporarily renaming the members so the compiler would force me to find all uses, but the final commit does not preserve that rename. Signed-off-by: Eric Blake Reviewed-by: J=C3=A1n Tomko --- src/datatypes.h | 18 ++++++-- src/esx/esx_driver.c | 66 ++++++++++++++--------------- src/libvirt-domain-snapshot.c | 24 +++++------ src/qemu/qemu_driver.c | 40 ++++++++--------- src/remote/remote_daemon_dispatch.c | 4 +- src/remote/remote_driver.c | 4 +- src/rpc/gendispatch.pl | 2 +- src/test/test_driver.c | 20 ++++----- src/vbox/vbox_common.c | 56 ++++++++++++------------ src/vz/vz_driver.c | 52 +++++++++++------------ 10 files changed, 149 insertions(+), 137 deletions(-) diff --git a/src/datatypes.h b/src/datatypes.h index 12015679f3..a66dfbe983 100644 --- a/src/datatypes.h +++ b/src/datatypes.h @@ -1,7 +1,7 @@ /* * datatypes.h: management of structs for public data types * - * Copyright (C) 2006-2015 Red Hat, Inc. + * Copyright (C) 2006-2019 Red Hat, Inc. * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public @@ -296,8 +296,8 @@ extern virClassPtr virAdmClientClass; do { \ virDomainSnapshotPtr _snap =3D (obj); \ if (!virObjectIsClass(_snap, virDomainSnapshotClass) || \ - !virObjectIsClass(_snap->domain, virDomainClass) || \ - !virObjectIsClass(_snap->domain->conn, virConnectClass)) { \ + !virObjectIsClass(virSnapDom(_snap), virDomainClass) || \ + !virObjectIsClass(virSnapDom(_snap)->conn, virConnectClass)) {= \ virReportErrorHelper(VIR_FROM_DOMAIN_SNAPSHOT, \ VIR_ERR_INVALID_DOMAIN_SNAPSHOT, \ __FILE__, __FUNCTION__, __LINE__, \ @@ -679,6 +679,18 @@ struct _virDomainSnapshot { virDomainPtr domain; }; +static inline char * +virSnapName(virDomainSnapshotPtr snapshot) +{ + return snapshot->name; +} + +static inline virDomainPtr +virSnapDom(virDomainSnapshotPtr snapshot) +{ + return snapshot->domain; +} + /** * _virNWFilter: * diff --git a/src/esx/esx_driver.c b/src/esx/esx_driver.c index c6d112268f..c016f8051f 100644 --- a/src/esx/esx_driver.c +++ b/src/esx/esx_driver.c @@ -4166,7 +4166,7 @@ static char * esxDomainSnapshotGetXMLDesc(virDomainSnapshotPtr snapshot, unsigned int flags) { - esxPrivate *priv =3D snapshot->domain->conn->privateData; + esxPrivate *priv =3D virSnapDom(snapshot)->conn->privateData; esxVI_VirtualMachineSnapshotTree *rootSnapshotList =3D NULL; esxVI_VirtualMachineSnapshotTree *snapshotTree =3D NULL; esxVI_VirtualMachineSnapshotTree *snapshotTreeParent =3D NULL; @@ -4181,15 +4181,15 @@ esxDomainSnapshotGetXMLDesc(virDomainSnapshotPtr sn= apshot, if (esxVI_EnsureSession(priv->primary) < 0) return NULL; - if (esxVI_LookupRootSnapshotTreeList(priv->primary, snapshot->domain->= uuid, + if (esxVI_LookupRootSnapshotTreeList(priv->primary, virSnapDom(snapsho= t)->uuid, &rootSnapshotList) < 0 || - esxVI_GetSnapshotTreeByName(rootSnapshotList, snapshot->name, + esxVI_GetSnapshotTreeByName(rootSnapshotList, virSnapName(snapshot= ), &snapshotTree, &snapshotTreeParent, esxVI_Occurrence_RequiredItem) < 0) { goto cleanup; } - def.name =3D snapshot->name; + def.name =3D virSnapName(snapshot); def.description =3D snapshotTree->description; def.parent =3D snapshotTreeParent ? snapshotTreeParent->name : NULL; @@ -4201,7 +4201,7 @@ esxDomainSnapshotGetXMLDesc(virDomainSnapshotPtr snap= shot, def.state =3D esxVI_VirtualMachinePowerState_ConvertToLibvirt (snapshotTree->state); - virUUIDFormat(snapshot->domain->uuid, uuid_string); + virUUIDFormat(virSnapDom(snapshot)->uuid, uuid_string); xml =3D virDomainSnapshotDefFormat(uuid_string, &def, priv->caps, priv= ->xmlopt, 0); @@ -4299,7 +4299,7 @@ static int esxDomainSnapshotNumChildren(virDomainSnapshotPtr snapshot, unsigned int f= lags) { int count =3D -1; - esxPrivate *priv =3D snapshot->domain->conn->privateData; + esxPrivate *priv =3D virSnapDom(snapshot)->conn->privateData; esxVI_VirtualMachineSnapshotTree *rootSnapshotTreeList =3D NULL; esxVI_VirtualMachineSnapshotTree *snapshotTree =3D NULL; bool recurse; @@ -4315,9 +4315,9 @@ esxDomainSnapshotNumChildren(virDomainSnapshotPtr sna= pshot, unsigned int flags) if (esxVI_EnsureSession(priv->primary) < 0) return -1; - if (esxVI_LookupRootSnapshotTreeList(priv->primary, snapshot->domain->= uuid, + if (esxVI_LookupRootSnapshotTreeList(priv->primary, virSnapDom(snapsho= t)->uuid, &rootSnapshotTreeList) < 0 || - esxVI_GetSnapshotTreeByName(rootSnapshotTreeList, snapshot->name, + esxVI_GetSnapshotTreeByName(rootSnapshotTreeList, virSnapName(snap= shot), &snapshotTree, NULL, esxVI_Occurrence_RequiredItem) < 0) { goto cleanup; @@ -4346,7 +4346,7 @@ esxDomainSnapshotListChildrenNames(virDomainSnapshotP= tr snapshot, unsigned int flags) { int result =3D -1; - esxPrivate *priv =3D snapshot->domain->conn->privateData; + esxPrivate *priv =3D virSnapDom(snapshot)->conn->privateData; esxVI_VirtualMachineSnapshotTree *rootSnapshotTreeList =3D NULL; esxVI_VirtualMachineSnapshotTree *snapshotTree =3D NULL; bool recurse; @@ -4370,9 +4370,9 @@ esxDomainSnapshotListChildrenNames(virDomainSnapshotP= tr snapshot, if (esxVI_EnsureSession(priv->primary) < 0) return -1; - if (esxVI_LookupRootSnapshotTreeList(priv->primary, snapshot->domain->= uuid, + if (esxVI_LookupRootSnapshotTreeList(priv->primary, virSnapDom(snapsho= t)->uuid, &rootSnapshotTreeList) < 0 || - esxVI_GetSnapshotTreeByName(rootSnapshotTreeList, snapshot->name, + esxVI_GetSnapshotTreeByName(rootSnapshotTreeList, virSnapName(snap= shot), &snapshotTree, NULL, esxVI_Occurrence_RequiredItem) < 0) { goto cleanup; @@ -4457,7 +4457,7 @@ esxDomainHasCurrentSnapshot(virDomainPtr domain, unsi= gned int flags) static virDomainSnapshotPtr esxDomainSnapshotGetParent(virDomainSnapshotPtr snapshot, unsigned int fla= gs) { - esxPrivate *priv =3D snapshot->domain->conn->privateData; + esxPrivate *priv =3D virSnapDom(snapshot)->conn->privateData; esxVI_VirtualMachineSnapshotTree *rootSnapshotList =3D NULL; esxVI_VirtualMachineSnapshotTree *snapshotTree =3D NULL; esxVI_VirtualMachineSnapshotTree *snapshotTreeParent =3D NULL; @@ -4468,9 +4468,9 @@ esxDomainSnapshotGetParent(virDomainSnapshotPtr snaps= hot, unsigned int flags) if (esxVI_EnsureSession(priv->primary) < 0) return NULL; - if (esxVI_LookupRootSnapshotTreeList(priv->primary, snapshot->domain->= uuid, + if (esxVI_LookupRootSnapshotTreeList(priv->primary, virSnapDom(snapsho= t)->uuid, &rootSnapshotList) < 0 || - esxVI_GetSnapshotTreeByName(rootSnapshotList, snapshot->name, + esxVI_GetSnapshotTreeByName(rootSnapshotList, virSnapName(snapshot= ), &snapshotTree, &snapshotTreeParent, esxVI_Occurrence_RequiredItem) < 0) { goto cleanup; @@ -4483,7 +4483,7 @@ esxDomainSnapshotGetParent(virDomainSnapshotPtr snaps= hot, unsigned int flags) goto cleanup; } - parent =3D virGetDomainSnapshot(snapshot->domain, snapshotTreeParent->= name); + parent =3D virGetDomainSnapshot(virSnapDom(snapshot), snapshotTreePare= nt->name); cleanup: esxVI_VirtualMachineSnapshotTree_Free(&rootSnapshotList); @@ -4522,7 +4522,7 @@ esxDomainSnapshotCurrent(virDomainPtr domain, unsigne= d int flags) static int esxDomainSnapshotIsCurrent(virDomainSnapshotPtr snapshot, unsigned int fla= gs) { - esxPrivate *priv =3D snapshot->domain->conn->privateData; + esxPrivate *priv =3D virSnapDom(snapshot)->conn->privateData; esxVI_VirtualMachineSnapshotTree *currentSnapshotTree =3D NULL; esxVI_VirtualMachineSnapshotTree *rootSnapshotList =3D NULL; esxVI_VirtualMachineSnapshotTree *snapshotTree =3D NULL; @@ -4534,21 +4534,21 @@ esxDomainSnapshotIsCurrent(virDomainSnapshotPtr sna= pshot, unsigned int flags) return -1; /* Check that snapshot exists. */ - if (esxVI_LookupRootSnapshotTreeList(priv->primary, snapshot->domain->= uuid, + if (esxVI_LookupRootSnapshotTreeList(priv->primary, virSnapDom(snapsho= t)->uuid, &rootSnapshotList) < 0 || - esxVI_GetSnapshotTreeByName(rootSnapshotList, snapshot->name, + esxVI_GetSnapshotTreeByName(rootSnapshotList, virSnapName(snapshot= ), &snapshotTree, NULL, esxVI_Occurrence_RequiredItem) < 0) { goto cleanup; } - if (esxVI_LookupCurrentSnapshotTree(priv->primary, snapshot->domain->u= uid, + if (esxVI_LookupCurrentSnapshotTree(priv->primary, virSnapDom(snapshot= )->uuid, ¤tSnapshotTree, esxVI_Occurrence_RequiredItem) < 0= ) { goto cleanup; } - ret =3D STREQ(snapshot->name, currentSnapshotTree->name); + ret =3D STREQ(virSnapName(snapshot), currentSnapshotTree->name); cleanup: esxVI_VirtualMachineSnapshotTree_Free(¤tSnapshotTree); @@ -4560,7 +4560,7 @@ esxDomainSnapshotIsCurrent(virDomainSnapshotPtr snaps= hot, unsigned int flags) static int esxDomainSnapshotHasMetadata(virDomainSnapshotPtr snapshot, unsigned int f= lags) { - esxPrivate *priv =3D snapshot->domain->conn->privateData; + esxPrivate *priv =3D virSnapDom(snapshot)->conn->privateData; esxVI_VirtualMachineSnapshotTree *rootSnapshotList =3D NULL; esxVI_VirtualMachineSnapshotTree *snapshotTree =3D NULL; int ret =3D -1; @@ -4571,9 +4571,9 @@ esxDomainSnapshotHasMetadata(virDomainSnapshotPtr sna= pshot, unsigned int flags) return -1; /* Check that snapshot exists. If so, there is no metadata. */ - if (esxVI_LookupRootSnapshotTreeList(priv->primary, snapshot->domain->= uuid, + if (esxVI_LookupRootSnapshotTreeList(priv->primary, virSnapDom(snapsho= t)->uuid, &rootSnapshotList) < 0 || - esxVI_GetSnapshotTreeByName(rootSnapshotList, snapshot->name, + esxVI_GetSnapshotTreeByName(rootSnapshotList, virSnapName(snapshot= ), &snapshotTree, NULL, esxVI_Occurrence_RequiredItem) < 0) { goto cleanup; @@ -4591,7 +4591,7 @@ static int esxDomainRevertToSnapshot(virDomainSnapshotPtr snapshot, unsigned int flag= s) { int result =3D -1; - esxPrivate *priv =3D snapshot->domain->conn->privateData; + esxPrivate *priv =3D virSnapDom(snapshot)->conn->privateData; esxVI_VirtualMachineSnapshotTree *rootSnapshotList =3D NULL; esxVI_VirtualMachineSnapshotTree *snapshotTree =3D NULL; esxVI_ManagedObjectReference *task =3D NULL; @@ -4603,9 +4603,9 @@ esxDomainRevertToSnapshot(virDomainSnapshotPtr snapsh= ot, unsigned int flags) if (esxVI_EnsureSession(priv->primary) < 0) return -1; - if (esxVI_LookupRootSnapshotTreeList(priv->primary, snapshot->domain->= uuid, + if (esxVI_LookupRootSnapshotTreeList(priv->primary, virSnapDom(snapsho= t)->uuid, &rootSnapshotList) < 0 || - esxVI_GetSnapshotTreeByName(rootSnapshotList, snapshot->name, + esxVI_GetSnapshotTreeByName(rootSnapshotList, virSnapName(snapshot= ), &snapshotTree, NULL, esxVI_Occurrence_RequiredItem) < 0) { goto cleanup; @@ -4613,7 +4613,7 @@ esxDomainRevertToSnapshot(virDomainSnapshotPtr snapsh= ot, unsigned int flags) if (esxVI_RevertToSnapshot_Task(priv->primary, snapshotTree->snapshot,= NULL, esxVI_Boolean_Undefined, &task) < 0 || - esxVI_WaitForTaskCompletion(priv->primary, task, snapshot->domain-= >uuid, + esxVI_WaitForTaskCompletion(priv->primary, task, virSnapDom(snapsh= ot)->uuid, esxVI_Occurrence_RequiredItem, priv->parsedUri->autoAnswer, &taskInfo= State, &taskInfoErrorMessage) < 0) { @@ -4622,7 +4622,7 @@ esxDomainRevertToSnapshot(virDomainSnapshotPtr snapsh= ot, unsigned int flags) if (taskInfoState !=3D esxVI_TaskInfoState_Success) { virReportError(VIR_ERR_INTERNAL_ERROR, - _("Could not revert to snapshot '%s': %s"), snapsho= t->name, + _("Could not revert to snapshot '%s': %s"), virSnap= Name(snapshot), taskInfoErrorMessage); goto cleanup; } @@ -4643,7 +4643,7 @@ static int esxDomainSnapshotDelete(virDomainSnapshotPtr snapshot, unsigned int flags) { int result =3D -1; - esxPrivate *priv =3D snapshot->domain->conn->privateData; + esxPrivate *priv =3D virSnapDom(snapshot)->conn->privateData; esxVI_VirtualMachineSnapshotTree *rootSnapshotList =3D NULL; esxVI_VirtualMachineSnapshotTree *snapshotTree =3D NULL; esxVI_Boolean removeChildren =3D esxVI_Boolean_False; @@ -4660,9 +4660,9 @@ esxDomainSnapshotDelete(virDomainSnapshotPtr snapshot= , unsigned int flags) if (flags & VIR_DOMAIN_SNAPSHOT_DELETE_CHILDREN) removeChildren =3D esxVI_Boolean_True; - if (esxVI_LookupRootSnapshotTreeList(priv->primary, snapshot->domain->= uuid, + if (esxVI_LookupRootSnapshotTreeList(priv->primary, virSnapDom(snapsho= t)->uuid, &rootSnapshotList) < 0 || - esxVI_GetSnapshotTreeByName(rootSnapshotList, snapshot->name, + esxVI_GetSnapshotTreeByName(rootSnapshotList, virSnapName(snapshot= ), &snapshotTree, NULL, esxVI_Occurrence_RequiredItem) < 0) { goto cleanup; @@ -4677,7 +4677,7 @@ esxDomainSnapshotDelete(virDomainSnapshotPtr snapshot= , unsigned int flags) if (esxVI_RemoveSnapshot_Task(priv->primary, snapshotTree->snapshot, removeChildren, &task) < 0 || - esxVI_WaitForTaskCompletion(priv->primary, task, snapshot->domain-= >uuid, + esxVI_WaitForTaskCompletion(priv->primary, task, virSnapDom(snapsh= ot)->uuid, esxVI_Occurrence_RequiredItem, priv->parsedUri->autoAnswer, &taskInfo= State, &taskInfoErrorMessage) < 0) { @@ -4686,7 +4686,7 @@ esxDomainSnapshotDelete(virDomainSnapshotPtr snapshot= , unsigned int flags) if (taskInfoState !=3D esxVI_TaskInfoState_Success) { virReportError(VIR_ERR_INTERNAL_ERROR, - _("Could not delete snapshot '%s': %s"), snapshot->= name, + _("Could not delete snapshot '%s': %s"), virSnapNam= e(snapshot), taskInfoErrorMessage); goto cleanup; } diff --git a/src/libvirt-domain-snapshot.c b/src/libvirt-domain-snapshot.c index be9bf71af9..e1275c69b0 100644 --- a/src/libvirt-domain-snapshot.c +++ b/src/libvirt-domain-snapshot.c @@ -45,7 +45,7 @@ virDomainSnapshotGetName(virDomainSnapshotPtr snapshot) virCheckDomainSnapshotReturn(snapshot, NULL); - return snapshot->name; + return virSnapName(snapshot); } @@ -68,7 +68,7 @@ virDomainSnapshotGetDomain(virDomainSnapshotPtr snapshot) virCheckDomainSnapshotReturn(snapshot, NULL); - return snapshot->domain; + return virSnapDom(snapshot); } @@ -91,7 +91,7 @@ virDomainSnapshotGetConnect(virDomainSnapshotPtr snapshot) virCheckDomainSnapshotReturn(snapshot, NULL); - return snapshot->domain->conn; + return virSnapDom(snapshot)->conn; } @@ -273,7 +273,7 @@ virDomainSnapshotGetXMLDesc(virDomainSnapshotPtr snapsh= ot, virResetLastError(); virCheckDomainSnapshotReturn(snapshot, NULL); - conn =3D snapshot->domain->conn; + conn =3D virSnapDom(snapshot)->conn; if ((conn->flags & VIR_CONNECT_RO) && (flags & VIR_DOMAIN_SNAPSHOT_XML_SECURE)) { @@ -606,7 +606,7 @@ virDomainSnapshotNumChildren(virDomainSnapshotPtr snaps= hot, unsigned int flags) virResetLastError(); virCheckDomainSnapshotReturn(snapshot, -1); - conn =3D snapshot->domain->conn; + conn =3D virSnapDom(snapshot)->conn; if (conn->driver->domainSnapshotNumChildren) { int ret =3D conn->driver->domainSnapshotNumChildren(snapshot, flag= s); @@ -700,7 +700,7 @@ virDomainSnapshotListChildrenNames(virDomainSnapshotPtr= snapshot, virResetLastError(); virCheckDomainSnapshotReturn(snapshot, -1); - conn =3D snapshot->domain->conn; + conn =3D virSnapDom(snapshot)->conn; virCheckNonNullArgGoto(names, error); virCheckNonNegativeArgGoto(nameslen, error); @@ -796,7 +796,7 @@ virDomainSnapshotListAllChildren(virDomainSnapshotPtr s= napshot, *snaps =3D NULL; virCheckDomainSnapshotReturn(snapshot, -1); - conn =3D snapshot->domain->conn; + conn =3D virSnapDom(snapshot)->conn; if (conn->driver->domainSnapshotListAllChildren) { int ret =3D conn->driver->domainSnapshotListAllChildren(snapshot, = snaps, @@ -958,7 +958,7 @@ virDomainSnapshotGetParent(virDomainSnapshotPtr snapsho= t, virResetLastError(); virCheckDomainSnapshotReturn(snapshot, NULL); - conn =3D snapshot->domain->conn; + conn =3D virSnapDom(snapshot)->conn; if (conn->driver->domainSnapshotGetParent) { virDomainSnapshotPtr snap; @@ -996,7 +996,7 @@ virDomainSnapshotIsCurrent(virDomainSnapshotPtr snapsho= t, virResetLastError(); virCheckDomainSnapshotReturn(snapshot, -1); - conn =3D snapshot->domain->conn; + conn =3D virSnapDom(snapshot)->conn; if (conn->driver->domainSnapshotIsCurrent) { int ret; @@ -1035,7 +1035,7 @@ virDomainSnapshotHasMetadata(virDomainSnapshotPtr sna= pshot, virResetLastError(); virCheckDomainSnapshotReturn(snapshot, -1); - conn =3D snapshot->domain->conn; + conn =3D virSnapDom(snapshot)->conn; if (conn->driver->domainSnapshotHasMetadata) { int ret; @@ -1106,7 +1106,7 @@ virDomainRevertToSnapshot(virDomainSnapshotPtr snapsh= ot, virResetLastError(); virCheckDomainSnapshotReturn(snapshot, -1); - conn =3D snapshot->domain->conn; + conn =3D virSnapDom(snapshot)->conn; virCheckReadOnlyGoto(conn->flags, error); @@ -1163,7 +1163,7 @@ virDomainSnapshotDelete(virDomainSnapshotPtr snapshot, virResetLastError(); virCheckDomainSnapshotReturn(snapshot, -1); - conn =3D snapshot->domain->conn; + conn =3D virSnapDom(snapshot)->conn; virCheckReadOnlyGoto(conn->flags, error); diff --git a/src/qemu/qemu_driver.c b/src/qemu/qemu_driver.c index a16eab5467..6e504dd17c 100644 --- a/src/qemu/qemu_driver.c +++ b/src/qemu/qemu_driver.c @@ -193,7 +193,7 @@ qemuDomObjFromDomain(virDomainPtr domain) static virDomainObjPtr qemuDomObjFromSnapshot(virDomainSnapshotPtr snapshot) { - return qemuDomObjFromDomain(snapshot->domain); + return qemuDomObjFromDomain(virSnapDom(snapshot)); } @@ -218,7 +218,7 @@ static virDomainSnapshotObjPtr qemuSnapObjFromSnapshot(virDomainObjPtr vm, virDomainSnapshotPtr snapshot) { - return qemuSnapObjFromName(vm, snapshot->name); + return qemuSnapObjFromName(vm, virSnapName(snapshot)); } static int @@ -16047,7 +16047,7 @@ qemuDomainSnapshotListChildrenNames(virDomainSnapsh= otPtr snapshot, if (!(vm =3D qemuDomObjFromSnapshot(snapshot))) return -1; - if (virDomainSnapshotListChildrenNamesEnsureACL(snapshot->domain->conn= , vm->def) < 0) + if (virDomainSnapshotListChildrenNamesEnsureACL(virSnapDom(snapshot)->= conn, vm->def) < 0) goto cleanup; if (!(snap =3D qemuSnapObjFromSnapshot(vm, snapshot))) @@ -16077,7 +16077,7 @@ qemuDomainSnapshotNumChildren(virDomainSnapshotPtr = snapshot, if (!(vm =3D qemuDomObjFromSnapshot(snapshot))) return -1; - if (virDomainSnapshotNumChildrenEnsureACL(snapshot->domain->conn, vm->= def) < 0) + if (virDomainSnapshotNumChildrenEnsureACL(virSnapDom(snapshot)->conn, = vm->def) < 0) goto cleanup; if (!(snap =3D qemuSnapObjFromSnapshot(vm, snapshot))) @@ -16107,13 +16107,13 @@ qemuDomainSnapshotListAllChildren(virDomainSnapsh= otPtr snapshot, if (!(vm =3D qemuDomObjFromSnapshot(snapshot))) return -1; - if (virDomainSnapshotListAllChildrenEnsureACL(snapshot->domain->conn, = vm->def) < 0) + if (virDomainSnapshotListAllChildrenEnsureACL(virSnapDom(snapshot)->co= nn, vm->def) < 0) goto cleanup; if (!(snap =3D qemuSnapObjFromSnapshot(vm, snapshot))) goto cleanup; - n =3D virDomainListSnapshots(vm->snapshots, snap, snapshot->domain, sn= aps, + n =3D virDomainListSnapshots(vm->snapshots, snap, virSnapDom(snapshot)= , snaps, flags); cleanup: @@ -16186,7 +16186,7 @@ qemuDomainSnapshotGetParent(virDomainSnapshotPtr sn= apshot, if (!(vm =3D qemuDomObjFromSnapshot(snapshot))) return NULL; - if (virDomainSnapshotGetParentEnsureACL(snapshot->domain->conn, vm->de= f) < 0) + if (virDomainSnapshotGetParentEnsureACL(virSnapDom(snapshot)->conn, vm= ->def) < 0) goto cleanup; if (!(snap =3D qemuSnapObjFromSnapshot(vm, snapshot))) @@ -16199,7 +16199,7 @@ qemuDomainSnapshotGetParent(virDomainSnapshotPtr sn= apshot, goto cleanup; } - parent =3D virGetDomainSnapshot(snapshot->domain, snap->def->parent); + parent =3D virGetDomainSnapshot(virSnapDom(snapshot), snap->def->paren= t); cleanup: virDomainObjEndAPI(&vm); @@ -16240,7 +16240,7 @@ static char * qemuDomainSnapshotGetXMLDesc(virDomainSnapshotPtr snapshot, unsigned int flags) { - virQEMUDriverPtr driver =3D snapshot->domain->conn->privateData; + virQEMUDriverPtr driver =3D virSnapDom(snapshot)->conn->privateData; virDomainObjPtr vm =3D NULL; char *xml =3D NULL; virDomainSnapshotObjPtr snap =3D NULL; @@ -16251,13 +16251,13 @@ qemuDomainSnapshotGetXMLDesc(virDomainSnapshotPtr= snapshot, if (!(vm =3D qemuDomObjFromSnapshot(snapshot))) return NULL; - if (virDomainSnapshotGetXMLDescEnsureACL(snapshot->domain->conn, vm->d= ef, flags) < 0) + if (virDomainSnapshotGetXMLDescEnsureACL(virSnapDom(snapshot)->conn, v= m->def, flags) < 0) goto cleanup; if (!(snap =3D qemuSnapObjFromSnapshot(vm, snapshot))) goto cleanup; - virUUIDFormat(snapshot->domain->uuid, uuidstr); + virUUIDFormat(virSnapDom(snapshot)->uuid, uuidstr); xml =3D virDomainSnapshotDefFormat(uuidstr, snap->def, driver->caps, driver->xmlopt, @@ -16282,14 +16282,14 @@ qemuDomainSnapshotIsCurrent(virDomainSnapshotPtr = snapshot, if (!(vm =3D qemuDomObjFromSnapshot(snapshot))) return -1; - if (virDomainSnapshotIsCurrentEnsureACL(snapshot->domain->conn, vm->de= f) < 0) + if (virDomainSnapshotIsCurrentEnsureACL(virSnapDom(snapshot)->conn, vm= ->def) < 0) goto cleanup; if (!(snap =3D qemuSnapObjFromSnapshot(vm, snapshot))) goto cleanup; ret =3D (vm->current_snapshot && - STREQ(snapshot->name, vm->current_snapshot->def->name)); + STREQ(virSnapName(snapshot), vm->current_snapshot->def->name)); cleanup: virDomainObjEndAPI(&vm); @@ -16310,7 +16310,7 @@ qemuDomainSnapshotHasMetadata(virDomainSnapshotPtr = snapshot, if (!(vm =3D qemuDomObjFromSnapshot(snapshot))) return -1; - if (virDomainSnapshotHasMetadataEnsureACL(snapshot->domain->conn, vm->= def) < 0) + if (virDomainSnapshotHasMetadataEnsureACL(virSnapDom(snapshot)->conn, = vm->def) < 0) goto cleanup; if (!(snap =3D qemuSnapObjFromSnapshot(vm, snapshot))) @@ -16343,7 +16343,7 @@ static int qemuDomainRevertToSnapshot(virDomainSnapshotPtr snapshot, unsigned int flags) { - virQEMUDriverPtr driver =3D snapshot->domain->conn->privateData; + virQEMUDriverPtr driver =3D virSnapDom(snapshot)->conn->privateData; virDomainObjPtr vm =3D NULL; int ret =3D -1; virDomainSnapshotObjPtr snap =3D NULL; @@ -16386,7 +16386,7 @@ qemuDomainRevertToSnapshot(virDomainSnapshotPtr sna= pshot, cfg =3D virQEMUDriverGetConfig(driver); - if (virDomainRevertToSnapshotEnsureACL(snapshot->domain->conn, vm->def= ) < 0) + if (virDomainRevertToSnapshotEnsureACL(virSnapDom(snapshot)->conn, vm-= >def) < 0) goto cleanup; if (!(caps =3D virQEMUDriverGetCapabilities(driver, false))) @@ -16593,7 +16593,7 @@ qemuDomainRevertToSnapshot(virDomainSnapshotPtr sna= pshot, qemuDomainFixupCPUs(vm, &cookie->cpu) < 0) goto cleanup; - rc =3D qemuProcessStart(snapshot->domain->conn, driver, vm, + rc =3D qemuProcessStart(virSnapDom(snapshot)->conn, driver, vm, cookie ? cookie->cpu : NULL, jobType, NULL, -1, NULL, snap, VIR_NETDEV_VPORT_PROFILE_OP_CREATE, @@ -16681,7 +16681,7 @@ qemuDomainRevertToSnapshot(virDomainSnapshotPtr sna= pshot, start_flags |=3D paused ? VIR_QEMU_PROCESS_START_PAUSED : 0; virObjectEventStateQueue(driver->domainEventState, event); - rc =3D qemuProcessStart(snapshot->domain->conn, driver, vm, NU= LL, + rc =3D qemuProcessStart(virSnapDom(snapshot)->conn, driver, vm= , NULL, QEMU_ASYNC_JOB_START, NULL, -1, NULL, NU= LL, VIR_NETDEV_VPORT_PROFILE_OP_CREATE, start_flags); @@ -16806,7 +16806,7 @@ static int qemuDomainSnapshotDelete(virDomainSnapshotPtr snapshot, unsigned int flags) { - virQEMUDriverPtr driver =3D snapshot->domain->conn->privateData; + virQEMUDriverPtr driver =3D virSnapDom(snapshot)->conn->privateData; virDomainObjPtr vm =3D NULL; int ret =3D -1; virDomainSnapshotObjPtr snap =3D NULL; @@ -16825,7 +16825,7 @@ qemuDomainSnapshotDelete(virDomainSnapshotPtr snaps= hot, cfg =3D virQEMUDriverGetConfig(driver); - if (virDomainSnapshotDeleteEnsureACL(snapshot->domain->conn, vm->def) = < 0) + if (virDomainSnapshotDeleteEnsureACL(virSnapDom(snapshot)->conn, vm->d= ef) < 0) goto cleanup; if (qemuDomainObjBeginJob(driver, vm, QEMU_JOB_MODIFY) < 0) diff --git a/src/remote/remote_daemon_dispatch.c b/src/remote/remote_daemon= _dispatch.c index df28259042..49721536d0 100644 --- a/src/remote/remote_daemon_dispatch.c +++ b/src/remote/remote_daemon_dispatch.c @@ -7351,9 +7351,9 @@ make_nonnull_nwfilter_binding(remote_nonnull_nwfilter= _binding *binding_dst, virN static int make_nonnull_domain_snapshot(remote_nonnull_domain_snapshot *snapshot_dst,= virDomainSnapshotPtr snapshot_src) { - if (VIR_STRDUP(snapshot_dst->name, snapshot_src->name) < 0) + if (VIR_STRDUP(snapshot_dst->name, virSnapName(snapshot_src)) < 0) return -1; - if (make_nonnull_domain(&snapshot_dst->dom, snapshot_src->domain) < 0)= { + if (make_nonnull_domain(&snapshot_dst->dom, virSnapDom(snapshot_src)) = < 0) { VIR_FREE(snapshot_dst->name); return -1; } diff --git a/src/remote/remote_driver.c b/src/remote/remote_driver.c index 5c4dd41227..f67ea1132c 100644 --- a/src/remote/remote_driver.c +++ b/src/remote/remote_driver.c @@ -8270,8 +8270,8 @@ make_nonnull_nwfilter_binding(remote_nonnull_nwfilter= _binding *binding_dst, virN static void make_nonnull_domain_snapshot(remote_nonnull_domain_snapshot *snapshot_dst,= virDomainSnapshotPtr snapshot_src) { - snapshot_dst->name =3D snapshot_src->name; - make_nonnull_domain(&snapshot_dst->dom, snapshot_src->domain); + snapshot_dst->name =3D virSnapName(snapshot_src); + make_nonnull_domain(&snapshot_dst->dom, virSnapDom(snapshot_src)); } /*----------------------------------------------------------------------*/ diff --git a/src/rpc/gendispatch.pl b/src/rpc/gendispatch.pl index ae3a42c4c1..985eb995aa 100755 --- a/src/rpc/gendispatch.pl +++ b/src/rpc/gendispatch.pl @@ -1335,7 +1335,7 @@ elsif ($mode eq "client") { if ($is_first_arg) { if ($name eq "domain_snapshot") { - $priv_src =3D "$arg_name->domain->conn"; + $priv_src =3D "virSnapDom($arg_name)->conn"; } else { $priv_src =3D "$arg_name->conn"; } diff --git a/src/test/test_driver.c b/src/test/test_driver.c index bd0a14114e..e1ad9382e0 100644 --- a/src/test/test_driver.c +++ b/src/test/test_driver.c @@ -5961,13 +5961,13 @@ static virDomainSnapshotObjPtr testSnapObjFromSnapshot(virDomainObjPtr vm, virDomainSnapshotPtr snapshot) { - return testSnapObjFromName(vm, snapshot->name); + return testSnapObjFromName(vm, virSnapName(snapshot)); } static virDomainObjPtr testDomObjFromSnapshot(virDomainSnapshotPtr snapshot) { - return testDomObjFromDomain(snapshot->domain); + return testDomObjFromDomain(virSnapDom(snapshot)); } static int @@ -6105,7 +6105,7 @@ testDomainSnapshotListAllChildren(virDomainSnapshotPt= r snapshot, if (!(snap =3D testSnapObjFromSnapshot(vm, snapshot))) goto cleanup; - n =3D virDomainListSnapshots(vm->snapshots, snap, snapshot->domain, sn= aps, + n =3D virDomainListSnapshots(vm->snapshots, snap, virSnapDom(snapshot)= , snaps, flags); cleanup: @@ -6178,7 +6178,7 @@ testDomainSnapshotGetParent(virDomainSnapshotPtr snap= shot, goto cleanup; } - parent =3D virGetDomainSnapshot(snapshot->domain, snap->def->parent); + parent =3D virGetDomainSnapshot(virSnapDom(snapshot), snap->def->paren= t); cleanup: virDomainObjEndAPI(&vm); @@ -6218,7 +6218,7 @@ testDomainSnapshotGetXMLDesc(virDomainSnapshotPtr sna= pshot, char *xml =3D NULL; virDomainSnapshotObjPtr snap =3D NULL; char uuidstr[VIR_UUID_STRING_BUFLEN]; - testDriverPtr privconn =3D snapshot->domain->conn->privateData; + testDriverPtr privconn =3D virSnapDom(snapshot)->conn->privateData; virCheckFlags(VIR_DOMAIN_SNAPSHOT_XML_SECURE, NULL); @@ -6228,7 +6228,7 @@ testDomainSnapshotGetXMLDesc(virDomainSnapshotPtr sna= pshot, if (!(snap =3D testSnapObjFromSnapshot(vm, snapshot))) goto cleanup; - virUUIDFormat(snapshot->domain->uuid, uuidstr); + virUUIDFormat(virSnapDom(snapshot)->uuid, uuidstr); xml =3D virDomainSnapshotDefFormat(uuidstr, snap->def, privconn->caps, privconn->xmlopt, @@ -6252,7 +6252,7 @@ testDomainSnapshotIsCurrent(virDomainSnapshotPtr snap= shot, return -1; ret =3D (vm->current_snapshot && - STREQ(snapshot->name, vm->current_snapshot->def->name)); + STREQ(virSnapName(snapshot), vm->current_snapshot->def->name)); virDomainObjEndAPI(&vm); return ret; @@ -6555,7 +6555,7 @@ static int testDomainRevertToSnapshot(virDomainSnapshotPtr snapshot, unsigned int flags) { - testDriverPtr privconn =3D snapshot->domain->conn->privateData; + testDriverPtr privconn =3D virSnapDom(snapshot)->conn->privateData; virDomainObjPtr vm =3D NULL; virDomainSnapshotObjPtr snap =3D NULL; virObjectEventPtr event =3D NULL; @@ -6647,7 +6647,7 @@ testDomainRevertToSnapshot(virDomainSnapshotPtr snaps= hot, } virResetError(err); - testDomainShutdownState(snapshot->domain, vm, + testDomainShutdownState(virSnapDom(snapshot), vm, VIR_DOMAIN_SHUTOFF_FROM_SNAPSHOT); event =3D virDomainEventLifecycleNewFromObj(vm, VIR_DOMAIN_EVENT_STOPPED, @@ -6719,7 +6719,7 @@ testDomainRevertToSnapshot(virDomainSnapshotPtr snaps= hot, if (virDomainObjIsActive(vm)) { /* Transitions 4, 7 */ - testDomainShutdownState(snapshot->domain, vm, + testDomainShutdownState(virSnapDom(snapshot), vm, VIR_DOMAIN_SHUTOFF_FROM_SNAPSHOT); event =3D virDomainEventLifecycleNewFromObj(vm, VIR_DOMAIN_EVENT_STOPPED, diff --git a/src/vbox/vbox_common.c b/src/vbox/vbox_common.c index b8dfb55ef4..49c7e8a27d 100644 --- a/src/vbox/vbox_common.c +++ b/src/vbox/vbox_common.c @@ -5732,7 +5732,7 @@ static int vboxSnapshotGetReadWriteDisks(virDomainSnapshotDefPtr def, virDomainSnapshotPtr snapshot) { - virDomainPtr dom =3D snapshot->domain; + virDomainPtr dom =3D virSnapDom(snapshot); vboxDriverPtr data =3D dom->conn->privateData; vboxIID domiid; IMachine *machine =3D NULL; @@ -5756,7 +5756,7 @@ vboxSnapshotGetReadWriteDisks(virDomainSnapshotDefPtr= def, if (openSessionForMachine(data, dom->uuid, &domiid, &machine) < 0) goto cleanup; - if (!(snap =3D vboxDomainSnapshotGet(data, dom, machine, snapshot->nam= e))) + if (!(snap =3D vboxDomainSnapshotGet(data, dom, machine, virSnapName(s= napshot)))) goto cleanup; rc =3D gVBoxAPI.UISnapshot.GetId(snap, &snapIid); @@ -5972,7 +5972,7 @@ static int vboxSnapshotGetReadOnlyDisks(virDomainSnapshotDefPtr def, virDomainSnapshotPtr snapshot) { - virDomainPtr dom =3D snapshot->domain; + virDomainPtr dom =3D virSnapDom(snapshot); vboxDriverPtr data =3D dom->conn->privateData; vboxIID domiid; ISnapshot *snap =3D NULL; @@ -5994,7 +5994,7 @@ vboxSnapshotGetReadOnlyDisks(virDomainSnapshotDefPtr = def, if (openSessionForMachine(data, dom->uuid, &domiid, &machine) < 0) goto cleanup; - if (!(snap =3D vboxDomainSnapshotGet(data, dom, machine, snapshot->nam= e))) + if (!(snap =3D vboxDomainSnapshotGet(data, dom, machine, virSnapName(s= napshot)))) goto cleanup; rc =3D gVBoxAPI.UISnapshot.GetMachine(snap, &snapMachine); @@ -6195,7 +6195,7 @@ vboxSnapshotGetReadOnlyDisks(virDomainSnapshotDefPtr = def, static char *vboxDomainSnapshotGetXMLDesc(virDomainSnapshotPtr snapshot, unsigned int flags) { - virDomainPtr dom =3D snapshot->domain; + virDomainPtr dom =3D virSnapDom(snapshot); vboxDriverPtr data =3D dom->conn->privateData; vboxIID domiid; IMachine *machine =3D NULL; @@ -6218,12 +6218,12 @@ static char *vboxDomainSnapshotGetXMLDesc(virDomain= SnapshotPtr snapshot, if (openSessionForMachine(data, dom->uuid, &domiid, &machine) < 0) goto cleanup; - if (!(snap =3D vboxDomainSnapshotGet(data, dom, machine, snapshot->nam= e))) + if (!(snap =3D vboxDomainSnapshotGet(data, dom, machine, virSnapName(s= napshot)))) goto cleanup; if (VIR_ALLOC(def) < 0 || !(def->dom =3D virDomainDefNew())) goto cleanup; - if (VIR_STRDUP(def->name, snapshot->name) < 0) + if (VIR_STRDUP(def->name, virSnapName(snapshot)) < 0) goto cleanup; if (gVBoxAPI.vboxSnapshotRedefine) { @@ -6265,7 +6265,7 @@ static char *vboxDomainSnapshotGetXMLDesc(virDomainSn= apshotPtr snapshot, if (NS_FAILED(rc)) { virReportError(VIR_ERR_INTERNAL_ERROR, _("could not get description of snapshot %s"), - snapshot->name); + virSnapName(snapshot)); goto cleanup; } if (str16) { @@ -6282,7 +6282,7 @@ static char *vboxDomainSnapshotGetXMLDesc(virDomainSn= apshotPtr snapshot, if (NS_FAILED(rc)) { virReportError(VIR_ERR_INTERNAL_ERROR, _("could not get creation time of snapshot %s"), - snapshot->name); + virSnapName(snapshot)); goto cleanup; } /* timestamp is in milliseconds while creationTime in seconds */ @@ -6292,7 +6292,7 @@ static char *vboxDomainSnapshotGetXMLDesc(virDomainSn= apshotPtr snapshot, if (NS_FAILED(rc)) { virReportError(VIR_ERR_INTERNAL_ERROR, _("could not get parent of snapshot %s"), - snapshot->name); + virSnapName(snapshot)); goto cleanup; } if (parent) { @@ -6300,7 +6300,7 @@ static char *vboxDomainSnapshotGetXMLDesc(virDomainSn= apshotPtr snapshot, if (NS_FAILED(rc) || !str16) { virReportError(VIR_ERR_INTERNAL_ERROR, _("could not get name of parent of snapshot %s"= ), - snapshot->name); + virSnapName(snapshot)); goto cleanup; } VBOX_UTF16_TO_UTF8(str16, &str8); @@ -6316,7 +6316,7 @@ static char *vboxDomainSnapshotGetXMLDesc(virDomainSn= apshotPtr snapshot, if (NS_FAILED(rc)) { virReportError(VIR_ERR_INTERNAL_ERROR, _("could not get online state of snapshot %s"), - snapshot->name); + virSnapName(snapshot)); goto cleanup; } if (online) @@ -6531,7 +6531,7 @@ static virDomainSnapshotPtr vboxDomainSnapshotGetParent(virDomainSnapshotPtr snapshot, unsigned int flags) { - virDomainPtr dom =3D snapshot->domain; + virDomainPtr dom =3D virSnapDom(snapshot); vboxDriverPtr data =3D dom->conn->privateData; vboxIID iid; IMachine *machine =3D NULL; @@ -6550,20 +6550,20 @@ vboxDomainSnapshotGetParent(virDomainSnapshotPtr sn= apshot, if (openSessionForMachine(data, dom->uuid, &iid, &machine) < 0) goto cleanup; - if (!(snap =3D vboxDomainSnapshotGet(data, dom, machine, snapshot->nam= e))) + if (!(snap =3D vboxDomainSnapshotGet(data, dom, machine, virSnapName(s= napshot)))) goto cleanup; rc =3D gVBoxAPI.UISnapshot.GetParent(snap, &parent); if (NS_FAILED(rc)) { virReportError(VIR_ERR_INTERNAL_ERROR, _("could not get parent of snapshot %s"), - snapshot->name); + virSnapName(snapshot)); goto cleanup; } if (!parent) { virReportError(VIR_ERR_NO_DOMAIN_SNAPSHOT, _("snapshot '%s' does not have a parent"), - snapshot->name); + virSnapName(snapshot)); goto cleanup; } @@ -6571,7 +6571,7 @@ vboxDomainSnapshotGetParent(virDomainSnapshotPtr snap= shot, if (NS_FAILED(rc) || !nameUtf16) { virReportError(VIR_ERR_INTERNAL_ERROR, _("could not get name of parent of snapshot %s"), - snapshot->name); + virSnapName(snapshot)); goto cleanup; } VBOX_UTF16_TO_UTF8(nameUtf16, &name); @@ -6652,7 +6652,7 @@ vboxDomainSnapshotCurrent(virDomainPtr dom, unsigned = int flags) static int vboxDomainSnapshotIsCurrent(virDomainSnapshotPtr snapshot, unsigned int flags) { - virDomainPtr dom =3D snapshot->domain; + virDomainPtr dom =3D virSnapDom(snapshot); vboxDriverPtr data =3D dom->conn->privateData; vboxIID iid; IMachine *machine =3D NULL; @@ -6671,7 +6671,7 @@ static int vboxDomainSnapshotIsCurrent(virDomainSnaps= hotPtr snapshot, if (openSessionForMachine(data, dom->uuid, &iid, &machine) < 0) goto cleanup; - if (!(snap =3D vboxDomainSnapshotGet(data, dom, machine, snapshot->nam= e))) + if (!(snap =3D vboxDomainSnapshotGet(data, dom, machine, virSnapName(s= napshot)))) goto cleanup; rc =3D gVBoxAPI.UIMachine.GetCurrentSnapshot(machine, ¤t); @@ -6698,7 +6698,7 @@ static int vboxDomainSnapshotIsCurrent(virDomainSnaps= hotPtr snapshot, goto cleanup; } - ret =3D STREQ(snapshot->name, name); + ret =3D STREQ(virSnapName(snapshot), name); cleanup: VBOX_UTF8_FREE(name); @@ -6713,7 +6713,7 @@ static int vboxDomainSnapshotIsCurrent(virDomainSnaps= hotPtr snapshot, static int vboxDomainSnapshotHasMetadata(virDomainSnapshotPtr snapshot, unsigned int flags) { - virDomainPtr dom =3D snapshot->domain; + virDomainPtr dom =3D virSnapDom(snapshot); vboxDriverPtr data =3D dom->conn->privateData; vboxIID iid; IMachine *machine =3D NULL; @@ -6729,7 +6729,7 @@ static int vboxDomainSnapshotHasMetadata(virDomainSna= pshotPtr snapshot, goto cleanup; /* Check that snapshot exists. If so, there is no metadata. */ - if (!(snap =3D vboxDomainSnapshotGet(data, dom, machine, snapshot->nam= e))) + if (!(snap =3D vboxDomainSnapshotGet(data, dom, machine, virSnapName(s= napshot)))) goto cleanup; ret =3D 0; @@ -6744,7 +6744,7 @@ static int vboxDomainSnapshotHasMetadata(virDomainSna= pshotPtr snapshot, static int vboxDomainRevertToSnapshot(virDomainSnapshotPtr snapshot, unsigned int flags) { - virDomainPtr dom =3D snapshot->domain; + virDomainPtr dom =3D virSnapDom(snapshot); vboxDriverPtr data =3D dom->conn->privateData; vboxIID domiid; IMachine *machine =3D NULL; @@ -6763,7 +6763,7 @@ static int vboxDomainRevertToSnapshot(virDomainSnapsh= otPtr snapshot, if (openSessionForMachine(data, dom->uuid, &domiid, &machine) < 0) goto cleanup; - newSnapshot =3D vboxDomainSnapshotGet(data, dom, machine, snapshot->na= me); + newSnapshot =3D vboxDomainSnapshotGet(data, dom, machine, virSnapName(= snapshot)); if (!newSnapshot) goto cleanup; @@ -6771,7 +6771,7 @@ static int vboxDomainRevertToSnapshot(virDomainSnapsh= otPtr snapshot, if (NS_FAILED(rc)) { virReportError(VIR_ERR_INTERNAL_ERROR, _("could not get online state of snapshot %s"), - snapshot->name); + virSnapName(snapshot)); goto cleanup; } @@ -6908,7 +6908,7 @@ vboxDomainSnapshotDeleteMetadataOnly(virDomainSnapsho= tPtr snapshot) * the machine with the new file. */ - virDomainPtr dom =3D snapshot->domain; + virDomainPtr dom =3D virSnapDom(snapshot); vboxDriverPtr data =3D dom->conn->privateData; virDomainSnapshotDefPtr def =3D NULL; char *defXml =3D NULL; @@ -7345,7 +7345,7 @@ vboxDomainSnapshotDeleteMetadataOnly(virDomainSnapsho= tPtr snapshot) static int vboxDomainSnapshotDelete(virDomainSnapshotPtr snapshot, unsigned int flags) { - virDomainPtr dom =3D snapshot->domain; + virDomainPtr dom =3D virSnapDom(snapshot); vboxDriverPtr data =3D dom->conn->privateData; vboxIID domiid; IMachine *machine =3D NULL; @@ -7365,7 +7365,7 @@ static int vboxDomainSnapshotDelete(virDomainSnapshot= Ptr snapshot, if (openSessionForMachine(data, dom->uuid, &domiid, &machine) < 0) goto cleanup; - snap =3D vboxDomainSnapshotGet(data, dom, machine, snapshot->name); + snap =3D vboxDomainSnapshotGet(data, dom, machine, virSnapName(snapsho= t)); if (!snap) goto cleanup; diff --git a/src/vz/vz_driver.c b/src/vz/vz_driver.c index 066d617524..1bf6daf9b0 100644 --- a/src/vz/vz_driver.c +++ b/src/vz/vz_driver.c @@ -2148,7 +2148,7 @@ static virDomainSnapshotObjPtr vzSnapObjFromSnapshot(virDomainSnapshotObjListPtr snapshots, virDomainSnapshotPtr snapshot) { - return vzSnapObjFromName(snapshots, snapshot->name); + return vzSnapObjFromName(snapshots, virSnapName(snapshot)); } static int @@ -2271,14 +2271,14 @@ vzDomainSnapshotGetXMLDesc(virDomainSnapshotPtr sna= pshot, unsigned int flags) virDomainSnapshotObjPtr snap; char uuidstr[VIR_UUID_STRING_BUFLEN]; virDomainSnapshotObjListPtr snapshots =3D NULL; - vzConnPtr privconn =3D snapshot->domain->conn->privateData; + vzConnPtr privconn =3D virSnapDom(snapshot)->conn->privateData; virCheckFlags(VIR_DOMAIN_SNAPSHOT_XML_SECURE, NULL); - if (!(dom =3D vzDomObjFromDomain(snapshot->domain))) + if (!(dom =3D vzDomObjFromDomain(virSnapDom(snapshot)))) return NULL; - if (virDomainSnapshotGetXMLDescEnsureACL(snapshot->domain->conn, dom->= def, flags) < 0) + if (virDomainSnapshotGetXMLDescEnsureACL(virSnapDom(snapshot)->conn, d= om->def, flags) < 0) goto cleanup; if (!(snapshots =3D prlsdkLoadSnapshots(dom))) @@ -2287,7 +2287,7 @@ vzDomainSnapshotGetXMLDesc(virDomainSnapshotPtr snaps= hot, unsigned int flags) if (!(snap =3D vzSnapObjFromSnapshot(snapshots, snapshot))) goto cleanup; - virUUIDFormat(snapshot->domain->uuid, uuidstr); + virUUIDFormat(virSnapDom(snapshot)->uuid, uuidstr); xml =3D virDomainSnapshotDefFormat(uuidstr, snap->def, privconn->drive= r->caps, privconn->driver->xmlopt, @@ -2311,10 +2311,10 @@ vzDomainSnapshotNumChildren(virDomainSnapshotPtr sn= apshot, unsigned int flags) virCheckFlags(VIR_DOMAIN_SNAPSHOT_LIST_DESCENDANTS | VIR_DOMAIN_SNAPSHOT_FILTERS_ALL, -1); - if (!(dom =3D vzDomObjFromDomain(snapshot->domain))) + if (!(dom =3D vzDomObjFromDomain(virSnapDom(snapshot)))) return -1; - if (virDomainSnapshotNumChildrenEnsureACL(snapshot->domain->conn, dom-= >def) < 0) + if (virDomainSnapshotNumChildrenEnsureACL(virSnapDom(snapshot)->conn, = dom->def) < 0) goto cleanup; if (!(snapshots =3D prlsdkLoadSnapshots(dom))) @@ -2346,10 +2346,10 @@ vzDomainSnapshotListChildrenNames(virDomainSnapshot= Ptr snapshot, virCheckFlags(VIR_DOMAIN_SNAPSHOT_LIST_DESCENDANTS | VIR_DOMAIN_SNAPSHOT_FILTERS_ALL, -1); - if (!(dom =3D vzDomObjFromDomain(snapshot->domain))) + if (!(dom =3D vzDomObjFromDomain(virSnapDom(snapshot)))) return -1; - if (virDomainSnapshotListChildrenNamesEnsureACL(snapshot->domain->conn= , dom->def) < 0) + if (virDomainSnapshotListChildrenNamesEnsureACL(virSnapDom(snapshot)->= conn, dom->def) < 0) goto cleanup; if (!(snapshots =3D prlsdkLoadSnapshots(dom))) @@ -2380,10 +2380,10 @@ vzDomainSnapshotListAllChildren(virDomainSnapshotPt= r snapshot, virCheckFlags(VIR_DOMAIN_SNAPSHOT_LIST_DESCENDANTS | VIR_DOMAIN_SNAPSHOT_FILTERS_ALL, -1); - if (!(dom =3D vzDomObjFromDomain(snapshot->domain))) + if (!(dom =3D vzDomObjFromDomain(virSnapDom(snapshot)))) return -1; - if (virDomainSnapshotListAllChildrenEnsureACL(snapshot->domain->conn, = dom->def) < 0) + if (virDomainSnapshotListAllChildrenEnsureACL(virSnapDom(snapshot)->co= nn, dom->def) < 0) goto cleanup; if (!(snapshots =3D prlsdkLoadSnapshots(dom))) @@ -2392,7 +2392,7 @@ vzDomainSnapshotListAllChildren(virDomainSnapshotPtr = snapshot, if (!(snap =3D vzSnapObjFromSnapshot(snapshots, snapshot))) goto cleanup; - n =3D virDomainListSnapshots(snapshots, snap, snapshot->domain, snaps,= flags); + n =3D virDomainListSnapshots(snapshots, snap, virSnapDom(snapshot), sn= aps, flags); cleanup: virDomainSnapshotObjListFree(snapshots); @@ -2471,10 +2471,10 @@ vzDomainSnapshotGetParent(virDomainSnapshotPtr snap= shot, unsigned int flags) virCheckFlags(0, NULL); - if (!(dom =3D vzDomObjFromDomain(snapshot->domain))) + if (!(dom =3D vzDomObjFromDomain(virSnapDom(snapshot)))) return NULL; - if (virDomainSnapshotGetParentEnsureACL(snapshot->domain->conn, dom->d= ef) < 0) + if (virDomainSnapshotGetParentEnsureACL(virSnapDom(snapshot)->conn, do= m->def) < 0) goto cleanup; if (!(snapshots =3D prlsdkLoadSnapshots(dom))) @@ -2490,7 +2490,7 @@ vzDomainSnapshotGetParent(virDomainSnapshotPtr snapsh= ot, unsigned int flags) goto cleanup; } - parent =3D virGetDomainSnapshot(snapshot->domain, snap->def->parent); + parent =3D virGetDomainSnapshot(virSnapDom(snapshot), snap->def->paren= t); cleanup: virDomainSnapshotObjListFree(snapshots); @@ -2543,17 +2543,17 @@ vzDomainSnapshotIsCurrent(virDomainSnapshotPtr snap= shot, unsigned int flags) virCheckFlags(0, -1); - if (!(dom =3D vzDomObjFromDomain(snapshot->domain))) + if (!(dom =3D vzDomObjFromDomain(virSnapDom(snapshot)))) return -1; - if (virDomainSnapshotIsCurrentEnsureACL(snapshot->domain->conn, dom->d= ef) < 0) + if (virDomainSnapshotIsCurrentEnsureACL(virSnapDom(snapshot)->conn, do= m->def) < 0) goto cleanup; if (!(snapshots =3D prlsdkLoadSnapshots(dom))) goto cleanup; current =3D vzFindCurrentSnapshot(snapshots); - ret =3D current && STREQ(snapshot->name, current->def->name); + ret =3D current && STREQ(virSnapName(snapshot), current->def->name); cleanup: virDomainSnapshotObjListFree(snapshots); @@ -2573,10 +2573,10 @@ vzDomainSnapshotHasMetadata(virDomainSnapshotPtr sn= apshot, virCheckFlags(0, -1); - if (!(dom =3D vzDomObjFromDomain(snapshot->domain))) + if (!(dom =3D vzDomObjFromDomain(virSnapDom(snapshot)))) return -1; - if (virDomainSnapshotHasMetadataEnsureACL(snapshot->domain->conn, dom-= >def) < 0) + if (virDomainSnapshotHasMetadataEnsureACL(virSnapDom(snapshot)->conn, = dom->def) < 0) goto cleanup; if (!(snapshots =3D prlsdkLoadSnapshots(dom))) @@ -2674,13 +2674,13 @@ vzDomainSnapshotDelete(virDomainSnapshotPtr snapsho= t, unsigned int flags) virCheckFlags(VIR_DOMAIN_SNAPSHOT_DELETE_CHILDREN, -1); - if (!(dom =3D vzDomObjFromDomain(snapshot->domain))) + if (!(dom =3D vzDomObjFromDomain(virSnapDom(snapshot)))) return -1; - if (virDomainSnapshotDeleteEnsureACL(snapshot->domain->conn, dom->def)= < 0) + if (virDomainSnapshotDeleteEnsureACL(virSnapDom(snapshot)->conn, dom->= def) < 0) goto cleanup; - ret =3D prlsdkDeleteSnapshot(dom, snapshot->name, + ret =3D prlsdkDeleteSnapshot(dom, virSnapName(snapshot), flags & VIR_DOMAIN_SNAPSHOT_DELETE_CHILDREN= ); cleanup: @@ -2698,10 +2698,10 @@ vzDomainRevertToSnapshot(virDomainSnapshotPtr snaps= hot, unsigned int flags) virCheckFlags(VIR_DOMAIN_SNAPSHOT_REVERT_PAUSED, -1); - if (!(dom =3D vzDomObjFromDomain(snapshot->domain))) + if (!(dom =3D vzDomObjFromDomain(virSnapDom(snapshot)))) return -1; - if (virDomainRevertToSnapshotEnsureACL(snapshot->domain->conn, dom->de= f) < 0) + if (virDomainRevertToSnapshotEnsureACL(virSnapDom(snapshot)->conn, dom= ->def) < 0) goto cleanup; if (vzDomainObjBeginJob(dom) < 0) @@ -2711,7 +2711,7 @@ vzDomainRevertToSnapshot(virDomainSnapshotPtr snapsho= t, unsigned int flags) if (vzEnsureDomainExists(dom) < 0) goto cleanup; - ret =3D prlsdkSwitchToSnapshot(dom, snapshot->name, + ret =3D prlsdkSwitchToSnapshot(dom, virSnapName(snapshot), flags & VIR_DOMAIN_SNAPSHOT_REVERT_PAUSED= ); cleanup: if (job) --=20 2.20.1 -- libvir-list mailing list libvir-list@redhat.com https://www.redhat.com/mailman/listinfo/libvir-list