From nobody Mon Apr 29 11:25:24 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 1523953266081855.2995638118367; Tue, 17 Apr 2018 01:21:06 -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 EEF3A8046B; Tue, 17 Apr 2018 08:21:03 +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 B36838F034; Tue, 17 Apr 2018 08:21:03 +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 594FF4CA9F; Tue, 17 Apr 2018 08:21:03 +0000 (UTC) Received: from smtp.corp.redhat.com (int-mx04.intmail.prod.int.rdu2.redhat.com [10.11.54.4]) by lists01.pubmisc.prod.ext.phx2.redhat.com (8.13.8/8.13.8) with ESMTP id w3H8L02v020866 for ; Tue, 17 Apr 2018 04:21:00 -0400 Received: by smtp.corp.redhat.com (Postfix) id 7014A2026DFD; Tue, 17 Apr 2018 08:21:00 +0000 (UTC) Received: from moe.brq.redhat.com (unknown [10.43.2.192]) by smtp.corp.redhat.com (Postfix) with ESMTP id 141012026E04 for ; Tue, 17 Apr 2018 08:20:59 +0000 (UTC) From: Michal Privoznik To: libvir-list@redhat.com Date: Tue, 17 Apr 2018 10:20:49 +0200 Message-Id: <621a10af87926aa95cfcde341d0fdcc2e05ca1a8.1523952966.git.mprivozn@redhat.com> In-Reply-To: References: In-Reply-To: References: X-Scanned-By: MIMEDefang 2.78 on 10.11.54.4 X-loop: libvir-list@redhat.com Subject: [libvirt] [PATCH v2 1/5] datatypes: Rename @parent to @parentName in virNodeDevice 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.28]); Tue, 17 Apr 2018 08:21:04 +0000 (UTC) X-ZohoMail: RSF_0 Z_629925259 SPT_0 Content-Type: text/plain; charset="utf-8" In next patches this name will be needed for a different memeber. Also, it makes sense to rename the variable because it does not contain reference to parent device, just its name. Signed-off-by: Michal Privoznik --- src/conf/virnodedeviceobj.c | 2 +- src/datatypes.c | 2 +- src/datatypes.h | 2 +- src/libvirt-nodedev.c | 6 +++--- src/node_device/node_device_driver.c | 4 ++-- src/remote/remote_daemon_dispatch.c | 4 ++-- src/remote/remote_protocol.x | 2 +- src/remote_protocol-structs | 2 +- src/test/test_driver.c | 6 +++--- 9 files changed, 15 insertions(+), 15 deletions(-) diff --git a/src/conf/virnodedeviceobj.c b/src/conf/virnodedeviceobj.c index ad0f27ee47..9d2996046f 100644 --- a/src/conf/virnodedeviceobj.c +++ b/src/conf/virnodedeviceobj.c @@ -870,7 +870,7 @@ virNodeDeviceObjListExportCallback(void *payload, virNodeDeviceMatch(obj, data->flags)) { if (data->devices) { if (!(device =3D virGetNodeDevice(data->conn, def->name)) || - VIR_STRDUP(device->parent, def->parent) < 0) { + VIR_STRDUP(device->parentName, def->parent) < 0) { virObjectUnref(device); data->error =3D true; goto cleanup; diff --git a/src/datatypes.c b/src/datatypes.c index f7eef24ba8..0c3c66a9ce 100644 --- a/src/datatypes.c +++ b/src/datatypes.c @@ -653,7 +653,7 @@ virNodeDeviceDispose(void *obj) VIR_DEBUG("release dev %p %s", dev, dev->name); =20 VIR_FREE(dev->name); - VIR_FREE(dev->parent); + VIR_FREE(dev->parentName); =20 virObjectUnref(dev->conn); } diff --git a/src/datatypes.h b/src/datatypes.h index 1a8ea01ba3..66733b075c 100644 --- a/src/datatypes.h +++ b/src/datatypes.h @@ -618,7 +618,7 @@ struct _virNodeDevice { virObject object; virConnectPtr conn; /* pointer back to the connection = */ char *name; /* device name (unique on node) */ - char *parent; /* parent device name */ + char *parentName; /* parent device name */ }; =20 /** diff --git a/src/libvirt-nodedev.c b/src/libvirt-nodedev.c index 563ce889b9..8ced3cea0e 100644 --- a/src/libvirt-nodedev.c +++ b/src/libvirt-nodedev.c @@ -346,16 +346,16 @@ virNodeDeviceGetParent(virNodeDevicePtr dev) =20 virCheckNodeDeviceReturn(dev, NULL); =20 - if (!dev->parent) { + if (!dev->parentName) { if (dev->conn->nodeDeviceDriver && dev->conn->nodeDeviceDriver->no= deDeviceGetParent) { - dev->parent =3D dev->conn->nodeDeviceDriver->nodeDeviceGetPare= nt(dev); + dev->parentName =3D dev->conn->nodeDeviceDriver->nodeDeviceGet= Parent(dev); } else { virReportUnsupportedError(); virDispatchError(dev->conn); return NULL; } } - return dev->parent; + return dev->parentName; } =20 =20 diff --git a/src/node_device/node_device_driver.c b/src/node_device/node_de= vice_driver.c index 61afa1f8eb..d04a31747a 100644 --- a/src/node_device/node_device_driver.c +++ b/src/node_device/node_device_driver.c @@ -256,7 +256,7 @@ nodeDeviceLookupByName(virConnectPtr conn, goto cleanup; =20 if ((device =3D virGetNodeDevice(conn, name))) { - if (VIR_STRDUP(device->parent, def->parent) < 0) { + if (VIR_STRDUP(device->parentName, def->parent) < 0) { virObjectUnref(device); device =3D NULL; } @@ -290,7 +290,7 @@ nodeDeviceLookupSCSIHostByWWN(virConnectPtr conn, goto cleanup; =20 if ((device =3D virGetNodeDevice(conn, def->name))) { - if (VIR_STRDUP(device->parent, def->parent) < 0) { + if (VIR_STRDUP(device->parentName, def->parent) < 0) { virObjectUnref(device); device =3D NULL; } diff --git a/src/remote/remote_daemon_dispatch.c b/src/remote/remote_daemon= _dispatch.c index 5b764bab48..a8a5932d71 100644 --- a/src/remote/remote_daemon_dispatch.c +++ b/src/remote/remote_daemon_dispatch.c @@ -3805,7 +3805,7 @@ remoteDispatchNodeDeviceGetParent(virNetServerPtr ser= ver ATTRIBUTE_UNUSED, parent =3D virNodeDeviceGetParent(dev); =20 if (parent =3D=3D NULL) { - ret->parent =3D NULL; + ret->parentName =3D NULL; } else { /* remoteDispatchClientRequest will free this. */ char **parent_p; @@ -3815,7 +3815,7 @@ remoteDispatchNodeDeviceGetParent(virNetServerPtr ser= ver ATTRIBUTE_UNUSED, VIR_FREE(parent_p); goto cleanup; } - ret->parent =3D parent_p; + ret->parentName =3D parent_p; } =20 rv =3D 0; diff --git a/src/remote/remote_protocol.x b/src/remote/remote_protocol.x index 9dbd497b2f..296a087181 100644 --- a/src/remote/remote_protocol.x +++ b/src/remote/remote_protocol.x @@ -2028,7 +2028,7 @@ struct remote_node_device_get_parent_args { }; =20 struct remote_node_device_get_parent_ret { - remote_string parent; + remote_string parentName; }; =20 struct remote_node_device_num_of_caps_args { diff --git a/src/remote_protocol-structs b/src/remote_protocol-structs index f45aba27a2..fe163db73f 100644 --- a/src/remote_protocol-structs +++ b/src/remote_protocol-structs @@ -1541,7 +1541,7 @@ struct remote_node_device_get_parent_args { remote_nonnull_string name; }; struct remote_node_device_get_parent_ret { - remote_string parent; + remote_string parentName; }; struct remote_node_device_num_of_caps_args { remote_nonnull_string name; diff --git a/src/test/test_driver.c b/src/test/test_driver.c index eec7a82924..f5b5e3ee8d 100644 --- a/src/test/test_driver.c +++ b/src/test/test_driver.c @@ -5416,7 +5416,7 @@ testNodeDeviceLookupByName(virConnectPtr conn, const = char *name) def =3D virNodeDeviceObjGetDef(obj); =20 if ((ret =3D virGetNodeDevice(conn, name))) { - if (VIR_STRDUP(ret->parent, def->parent) < 0) { + if (VIR_STRDUP(ret->parentName, def->parent) < 0) { virObjectUnref(ret); ret =3D NULL; } @@ -5641,8 +5641,8 @@ testNodeDeviceCreateXML(virConnectPtr conn, if (!(dev =3D virGetNodeDevice(conn, objdef->name))) goto cleanup; =20 - VIR_FREE(dev->parent); - if (VIR_STRDUP(dev->parent, def->parent) < 0) + VIR_FREE(dev->parentName); + if (VIR_STRDUP(dev->parentName, def->parent) < 0) goto cleanup; =20 ret =3D dev; --=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 11:25:24 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 1523953268058733.9608604158465; Tue, 17 Apr 2018 01:21:08 -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 6C76C3187147; Tue, 17 Apr 2018 08:21:06 +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 22DD91812E; Tue, 17 Apr 2018 08:21:06 +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 BB4EF4CAA0; Tue, 17 Apr 2018 08:21:05 +0000 (UTC) Received: from smtp.corp.redhat.com (int-mx04.intmail.prod.int.rdu2.redhat.com [10.11.54.4]) by lists01.pubmisc.prod.ext.phx2.redhat.com (8.13.8/8.13.8) with ESMTP id w3H8L1AX020871 for ; Tue, 17 Apr 2018 04:21:01 -0400 Received: by smtp.corp.redhat.com (Postfix) id 137A72026DFD; Tue, 17 Apr 2018 08:21:01 +0000 (UTC) Received: from moe.brq.redhat.com (unknown [10.43.2.192]) by smtp.corp.redhat.com (Postfix) with ESMTP id AC5AA2026E04 for ; Tue, 17 Apr 2018 08:21:00 +0000 (UTC) From: Michal Privoznik To: libvir-list@redhat.com Date: Tue, 17 Apr 2018 10:20:50 +0200 Message-Id: In-Reply-To: References: In-Reply-To: References: X-Scanned-By: MIMEDefang 2.78 on 10.11.54.4 X-loop: libvir-list@redhat.com Subject: [libvirt] [PATCH v2 2/5] src: Unify virObject member name 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.46]); Tue, 17 Apr 2018 08:21:07 +0000 (UTC) X-ZohoMail: RSF_0 Z_629925259 SPT_0 Content-Type: text/plain; charset="utf-8" Whenever we declare a new object the first member of the struct has to be virObject (or any other member of that family). Now, up until now we did not care about the name of the struct member. But lets unify it so that we can do some checks at compile time later. The unified name is 'parent'. Signed-off-by: Michal Privoznik Reviewed-by: Erik Skultety --- src/datatypes.h | 28 ++++++++++++++-------------- src/libvirt-admin.c | 2 +- src/libvirt-domain-snapshot.c | 2 +- src/libvirt-domain.c | 2 +- src/libvirt-host.c | 2 +- src/libvirt-interface.c | 2 +- src/libvirt-network.c | 2 +- src/libvirt-nodedev.c | 2 +- src/libvirt-nwfilter.c | 2 +- src/libvirt-secret.c | 2 +- src/libvirt-storage.c | 4 ++-- src/libvirt-stream.c | 2 +- src/qemu/qemu_capabilities.c | 2 +- src/rpc/virnetclientprogram.c | 2 +- src/rpc/virnetserverprogram.c | 2 +- src/rpc/virnetserverservice.c | 2 +- src/util/virdnsmasq.c | 2 +- src/util/virfilecache.c | 2 +- tests/virfilecachetest.c | 2 +- 19 files changed, 33 insertions(+), 33 deletions(-) diff --git a/src/datatypes.h b/src/datatypes.h index 66733b075c..192c86be80 100644 --- a/src/datatypes.h +++ b/src/datatypes.h @@ -453,7 +453,7 @@ struct _virAdmConnectCloseCallbackData { * Internal structure associated to a connection */ struct _virConnect { - virObjectLockable object; + virObjectLockable parent; =20 /* All the variables from here, until declared otherwise in one of * the following comments, are setup at time of connection open @@ -496,7 +496,7 @@ struct _virConnect { * Internal structure associated to an admin connection */ struct _virAdmConnect { - virObjectLockable object; + virObjectLockable parent; virURIPtr uri; =20 void *privateData; @@ -512,7 +512,7 @@ struct _virAdmConnect { * Internal structure associated to a daemon server */ struct _virAdmServer { - virObject object; + virObject parent; virAdmConnectPtr conn; /* pointer back to the admin connectio= n */ char *name; /* the server external name */ }; @@ -523,7 +523,7 @@ struct _virAdmServer { * Internal structure associated to a client connected to daemon */ struct _virAdmClient { - virObject object; + virObject parent; virAdmServerPtr srv; /* pointer to the server client is * connected to, which also holds a * reference back to the admin connect= ion @@ -539,7 +539,7 @@ struct _virAdmClient { * Internal structure associated to a domain */ struct _virDomain { - virObject object; + virObject parent; virConnectPtr conn; /* pointer back to the connection= */ char *name; /* the domain external name */ int id; /* the domain ID */ @@ -552,7 +552,7 @@ struct _virDomain { * Internal structure associated to a domain */ struct _virNetwork { - virObject object; + virObject parent; virConnectPtr conn; /* pointer back to the connection= */ char *name; /* the network external name */ unsigned char uuid[VIR_UUID_BUFLEN]; /* the network unique identifier = */ @@ -564,7 +564,7 @@ struct _virNetwork { * Internal structure associated to a physical host interface */ struct _virInterface { - virObject object; + virObject parent; virConnectPtr conn; /* pointer back to the connection= */ char *name; /* the network external name */ char *mac; /* the interface MAC address */ @@ -576,7 +576,7 @@ struct _virInterface { * Internal structure associated to a storage pool */ struct _virStoragePool { - virObject object; + virObject parent; virConnectPtr conn; /* pointer back to the connection= */ char *name; /* the storage pool external name= */ unsigned char uuid[VIR_UUID_BUFLEN]; /* the storage pool unique identi= fier */ @@ -595,7 +595,7 @@ struct _virStoragePool { * Internal structure associated to a storage volume */ struct _virStorageVol { - virObject object; + virObject parent; virConnectPtr conn; /* pointer back to the connection= */ char *pool; /* Pool name of owner */ char *name; /* the storage vol external name = */ @@ -615,7 +615,7 @@ struct _virStorageVol { * Internal structure associated with a node device */ struct _virNodeDevice { - virObject object; + virObject parent; virConnectPtr conn; /* pointer back to the connection = */ char *name; /* device name (unique on node) */ char *parentName; /* parent device name */ @@ -627,7 +627,7 @@ struct _virNodeDevice { * Internal structure associated with a secret */ struct _virSecret { - virObject object; + virObject parent; virConnectPtr conn; /* pointer back to the connection= */ unsigned char uuid[VIR_UUID_BUFLEN]; /* the secret unique identifier */ int usageType; /* the type of usage */ @@ -644,7 +644,7 @@ typedef int (*virStreamFinishFunc)(virStreamPtr, void *= opaque); * Internal structure associated with an input stream */ struct _virStream { - virObject object; + virObject parent; virConnectPtr conn; unsigned int flags; =20 @@ -658,7 +658,7 @@ struct _virStream { * Internal structure associated with a domain snapshot */ struct _virDomainSnapshot { - virObject object; + virObject parent; char *name; virDomainPtr domain; }; @@ -669,7 +669,7 @@ struct _virDomainSnapshot { * Internal structure associated to a network filter */ struct _virNWFilter { - virObject object; + virObject parent; virConnectPtr conn; /* pointer back to the connection= */ char *name; /* the network filter external na= me */ unsigned char uuid[VIR_UUID_BUFLEN]; /* the network filter unique iden= tifier */ diff --git a/src/libvirt-admin.c b/src/libvirt-admin.c index de595a9f7f..7f695311b4 100644 --- a/src/libvirt-admin.c +++ b/src/libvirt-admin.c @@ -340,7 +340,7 @@ int virAdmConnectRef(virAdmConnectPtr conn) { VIR_DEBUG("conn=3D%p refs=3D%d", conn, - conn ? conn->object.parent.u.s.refs : 0); + conn ? conn->parent.parent.u.s.refs : 0); =20 virResetLastError(); virCheckAdmConnectReturn(conn, -1); diff --git a/src/libvirt-domain-snapshot.c b/src/libvirt-domain-snapshot.c index e44a1d1f38..100326a5e7 100644 --- a/src/libvirt-domain-snapshot.c +++ b/src/libvirt-domain-snapshot.c @@ -1159,7 +1159,7 @@ int virDomainSnapshotRef(virDomainSnapshotPtr snapshot) { VIR_DEBUG("snapshot=3D%p, refs=3D%d", snapshot, - snapshot ? snapshot->object.u.s.refs : 0); + snapshot ? snapshot->parent.u.s.refs : 0); =20 virResetLastError(); =20 diff --git a/src/libvirt-domain.c b/src/libvirt-domain.c index 63d2ae23d7..2d86e48979 100644 --- a/src/libvirt-domain.c +++ b/src/libvirt-domain.c @@ -589,7 +589,7 @@ virDomainFree(virDomainPtr domain) int virDomainRef(virDomainPtr domain) { - VIR_DOMAIN_DEBUG(domain, "refs=3D%d", domain ? domain->object.u.s.refs= : 0); + VIR_DOMAIN_DEBUG(domain, "refs=3D%d", domain ? domain->parent.u.s.refs= : 0); =20 virResetLastError(); =20 diff --git a/src/libvirt-host.c b/src/libvirt-host.c index 7ff7407a08..76087badd8 100644 --- a/src/libvirt-host.c +++ b/src/libvirt-host.c @@ -51,7 +51,7 @@ VIR_LOG_INIT("libvirt.host"); int virConnectRef(virConnectPtr conn) { - VIR_DEBUG("conn=3D%p refs=3D%d", conn, conn ? conn->object.parent.u.s.= refs : 0); + VIR_DEBUG("conn=3D%p refs=3D%d", conn, conn ? conn->parent.parent.u.s.= refs : 0); =20 virResetLastError(); =20 diff --git a/src/libvirt-interface.c b/src/libvirt-interface.c index bb79101abe..69415293ed 100644 --- a/src/libvirt-interface.c +++ b/src/libvirt-interface.c @@ -642,7 +642,7 @@ virInterfaceDestroy(virInterfacePtr iface, unsigned int= flags) int virInterfaceRef(virInterfacePtr iface) { - VIR_DEBUG("iface=3D%p refs=3D%d", iface, iface ? iface->object.u.s.ref= s : 0); + VIR_DEBUG("iface=3D%p refs=3D%d", iface, iface ? iface->parent.u.s.ref= s : 0); =20 virResetLastError(); =20 diff --git a/src/libvirt-network.c b/src/libvirt-network.c index da33543001..9f9e0ddaf8 100644 --- a/src/libvirt-network.c +++ b/src/libvirt-network.c @@ -679,7 +679,7 @@ int virNetworkRef(virNetworkPtr network) { VIR_DEBUG("network=3D%p refs=3D%d", network, - network ? network->object.u.s.refs : 0); + network ? network->parent.u.s.refs : 0); =20 virResetLastError(); =20 diff --git a/src/libvirt-nodedev.c b/src/libvirt-nodedev.c index 8ced3cea0e..10050b193b 100644 --- a/src/libvirt-nodedev.c +++ b/src/libvirt-nodedev.c @@ -477,7 +477,7 @@ virNodeDeviceFree(virNodeDevicePtr dev) int virNodeDeviceRef(virNodeDevicePtr dev) { - VIR_DEBUG("dev=3D%p refs=3D%d", dev, dev ? dev->object.u.s.refs : 0); + VIR_DEBUG("dev=3D%p refs=3D%d", dev, dev ? dev->parent.u.s.refs : 0); =20 virResetLastError(); =20 diff --git a/src/libvirt-nwfilter.c b/src/libvirt-nwfilter.c index 43e2b164e8..948c30deef 100644 --- a/src/libvirt-nwfilter.c +++ b/src/libvirt-nwfilter.c @@ -504,7 +504,7 @@ int virNWFilterRef(virNWFilterPtr nwfilter) { VIR_DEBUG("nwfilter=3D%p refs=3D%d", nwfilter, - nwfilter ? nwfilter->object.u.s.refs : 0); + nwfilter ? nwfilter->parent.u.s.refs : 0); =20 virResetLastError(); =20 diff --git a/src/libvirt-secret.c b/src/libvirt-secret.c index 1e1cd4e65b..711c4fc580 100644 --- a/src/libvirt-secret.c +++ b/src/libvirt-secret.c @@ -659,7 +659,7 @@ int virSecretRef(virSecretPtr secret) { VIR_DEBUG("secret=3D%p refs=3D%d", secret, - secret ? secret->object.u.s.refs : 0); + secret ? secret->parent.u.s.refs : 0); =20 virResetLastError(); =20 diff --git a/src/libvirt-storage.c b/src/libvirt-storage.c index 3845a5d55e..1879c6bd60 100644 --- a/src/libvirt-storage.c +++ b/src/libvirt-storage.c @@ -868,7 +868,7 @@ virStoragePoolFree(virStoragePoolPtr pool) int virStoragePoolRef(virStoragePoolPtr pool) { - VIR_DEBUG("pool=3D%p refs=3D%d", pool, pool ? pool->object.u.s.refs : = 0); + VIR_DEBUG("pool=3D%p refs=3D%d", pool, pool ? pool->parent.u.s.refs : = 0); =20 virResetLastError(); =20 @@ -1904,7 +1904,7 @@ virStorageVolFree(virStorageVolPtr vol) int virStorageVolRef(virStorageVolPtr vol) { - VIR_DEBUG("vol=3D%p refs=3D%d", vol, vol ? vol->object.u.s.refs : 0); + VIR_DEBUG("vol=3D%p refs=3D%d", vol, vol ? vol->parent.u.s.refs : 0); =20 virResetLastError(); =20 diff --git a/src/libvirt-stream.c b/src/libvirt-stream.c index 3204b7b177..ef83696bcd 100644 --- a/src/libvirt-stream.c +++ b/src/libvirt-stream.c @@ -86,7 +86,7 @@ int virStreamRef(virStreamPtr stream) { VIR_DEBUG("stream=3D%p refs=3D%d", stream, - stream ? stream->object.u.s.refs : 0); + stream ? stream->parent.u.s.refs : 0); =20 virResetLastError(); =20 diff --git a/src/qemu/qemu_capabilities.c b/src/qemu/qemu_capabilities.c index cb716ff849..70cf0e9bf3 100644 --- a/src/qemu/qemu_capabilities.c +++ b/src/qemu/qemu_capabilities.c @@ -506,7 +506,7 @@ struct _virQEMUCapsHostCPUData { * And don't forget to update virQEMUCapsNewCopy. */ struct _virQEMUCaps { - virObject object; + virObject parent; =20 bool usedQMP; =20 diff --git a/src/rpc/virnetclientprogram.c b/src/rpc/virnetclientprogram.c index 505b40fc4b..d1e54a0892 100644 --- a/src/rpc/virnetclientprogram.c +++ b/src/rpc/virnetclientprogram.c @@ -40,7 +40,7 @@ VIR_LOG_INIT("rpc.netclientprogram"); =20 struct _virNetClientProgram { - virObject object; + virObject parent; =20 unsigned program; unsigned version; diff --git a/src/rpc/virnetserverprogram.c b/src/rpc/virnetserverprogram.c index 75b0052cdb..f28274fc22 100644 --- a/src/rpc/virnetserverprogram.c +++ b/src/rpc/virnetserverprogram.c @@ -37,7 +37,7 @@ VIR_LOG_INIT("rpc.netserverprogram"); =20 struct _virNetServerProgram { - virObject object; + virObject parent; =20 unsigned program; unsigned version; diff --git a/src/rpc/virnetserverservice.c b/src/rpc/virnetserverservice.c index 4e5426ffea..d2350b2b91 100644 --- a/src/rpc/virnetserverservice.c +++ b/src/rpc/virnetserverservice.c @@ -34,7 +34,7 @@ #define VIR_FROM_THIS VIR_FROM_RPC =20 struct _virNetServerService { - virObject object; + virObject parent; =20 size_t nsocks; virNetSocketPtr *socks; diff --git a/src/util/virdnsmasq.c b/src/util/virdnsmasq.c index 1b78c1fadc..db5c51b6a2 100644 --- a/src/util/virdnsmasq.c +++ b/src/util/virdnsmasq.c @@ -620,7 +620,7 @@ dnsmasqReload(pid_t pid ATTRIBUTE_UNUSED) * */ struct _dnsmasqCaps { - virObject object; + virObject parent; char *binaryPath; bool noRefresh; time_t mtime; diff --git a/src/util/virfilecache.c b/src/util/virfilecache.c index 2577d711bc..e24eb5a68c 100644 --- a/src/util/virfilecache.c +++ b/src/util/virfilecache.c @@ -45,7 +45,7 @@ VIR_LOG_INIT("util.filecache") =20 =20 struct _virFileCache { - virObjectLockable object; + virObjectLockable parent; =20 virHashTablePtr table; =20 diff --git a/tests/virfilecachetest.c b/tests/virfilecachetest.c index ae7d08d257..d4a9d598ef 100644 --- a/tests/virfilecachetest.c +++ b/tests/virfilecachetest.c @@ -28,7 +28,7 @@ =20 =20 struct _testFileCacheObj { - virObject object; + virObject parent; char *data; }; typedef struct _testFileCacheObj testFileCacheObj; --=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 11:25:24 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 15239532735921005.1214363870515; Tue, 17 Apr 2018 01:21:13 -0700 (PDT) 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 mx1.redhat.com (Postfix) with ESMTPS id 24EDD3133E64; Tue, 17 Apr 2018 08:21:12 +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 CF323177C9; Tue, 17 Apr 2018 08:21:11 +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 41D96180005A; Tue, 17 Apr 2018 08:21:11 +0000 (UTC) Received: from smtp.corp.redhat.com (int-mx04.intmail.prod.int.rdu2.redhat.com [10.11.54.4]) by lists01.pubmisc.prod.ext.phx2.redhat.com (8.13.8/8.13.8) with ESMTP id w3H8L2io020879 for ; Tue, 17 Apr 2018 04:21:02 -0400 Received: by smtp.corp.redhat.com (Postfix) id E610F2026DFD; Tue, 17 Apr 2018 08:21:01 +0000 (UTC) Received: from moe.brq.redhat.com (unknown [10.43.2.192]) by smtp.corp.redhat.com (Postfix) with ESMTP id 4F6052026E04 for ; Tue, 17 Apr 2018 08:21:01 +0000 (UTC) From: Michal Privoznik To: libvir-list@redhat.com Date: Tue, 17 Apr 2018 10:20:51 +0200 Message-Id: In-Reply-To: References: In-Reply-To: References: X-Scanned-By: MIMEDefang 2.78 on 10.11.54.4 X-loop: libvir-list@redhat.com Subject: [libvirt] [PATCH v2 3/5] virobject: Introduce VIR_CLASS_NEW() macro 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.16 X-Greylist: Sender IP whitelisted, not delayed by milter-greylist-4.5.16 (mx1.redhat.com [10.5.110.46]); Tue, 17 Apr 2018 08:21:12 +0000 (UTC) X-ZohoMail: RSF_0 Z_629925259 SPT_0 Content-Type: text/plain; charset="utf-8" So far we are repeating the following lines over and over: if (!(virSomeObjectClass =3D virClassNew(virClassForObject(), "virSomeObject", sizeof(virSomeObject), virSomeObjectDispose); return -1; While this works, it is impossible to do some checking. Firstly, the class name (the 2nd argument) doesn't match the name in the code in all cases (the 3rd argument). Secondly, the current style is needlessly verbose. This commit turns example into following: VIR_CLASS_NEW(virClassForObject(), virSomeObject); Signed-off-by: Michal Privoznik --- src/access/viraccessmanager.c | 7 +- src/bhyve/bhyve_conf.c | 9 +- src/conf/capabilities.c | 7 +- src/conf/domain_capabilities.c | 15 +-- src/conf/domain_conf.c | 26 ++--- src/conf/domain_event.c | 169 ++++++++--------------------= ---- src/conf/network_event.c | 18 ++-- src/conf/node_device_event.c | 27 ++--- src/conf/object_event.c | 16 +-- src/conf/secret_event.c | 27 ++--- src/conf/storage_event.c | 27 ++--- src/conf/virdomainobjlist.c | 7 +- src/conf/virinterfaceobj.c | 14 +-- src/conf/virnetworkobj.c | 14 +-- src/conf/virnodedeviceobj.c | 14 +-- src/conf/virsecretobj.c | 14 +-- src/conf/virstorageobj.c | 28 ++---- src/datatypes.c | 11 +-- src/interface/interface_backend_netcf.c | 8 +- src/libvirt-admin.c | 8 +- src/libxl/libxl_conf.c | 7 +- src/libxl/libxl_domain.c | 7 +- src/libxl/libxl_migration.c | 7 +- src/logging/log_handler.c | 7 +- src/lxc/lxc_conf.c | 7 +- src/lxc/lxc_monitor.c | 7 +- src/node_device/node_device_udev.c | 7 +- src/qemu/qemu_agent.c | 7 +- src/qemu/qemu_capabilities.c | 7 +- src/qemu/qemu_conf.c | 11 +-- src/qemu/qemu_domain.c | 63 ++++-------- src/qemu/qemu_monitor.c | 7 +- src/rpc/virkeepalive.c | 7 +- src/rpc/virnetclient.c | 7 +- src/rpc/virnetclientprogram.c | 7 +- src/rpc/virnetclientstream.c | 7 +- src/rpc/virnetdaemon.c | 7 +- src/rpc/virnetlibsshsession.c | 7 +- src/rpc/virnetsaslcontext.c | 14 +-- src/rpc/virnetserver.c | 7 +- src/rpc/virnetserverclient.c | 7 +- src/rpc/virnetserverprogram.c | 7 +- src/rpc/virnetserverservice.c | 7 +- src/rpc/virnetsocket.c | 7 +- src/rpc/virnetsshsession.c | 7 +- src/rpc/virnettlscontext.c | 14 +-- src/security/security_manager.c | 7 +- src/util/virclosecallbacks.c | 11 +-- src/util/virdnsmasq.c | 8 +- src/util/virfdstream.c | 7 +- src/util/virfilecache.c | 7 +- src/util/virhash.c | 12 +-- src/util/virhostdev.c | 7 +- src/util/viridentity.c | 7 +- src/util/virmacmap.c | 7 +- src/util/virmdev.c | 7 +- src/util/virobject.c | 14 +-- src/util/virobject.h | 9 ++ src/util/virpci.c | 7 +- src/util/virportallocator.c | 7 +- src/util/virresctrl.c | 14 +-- src/util/virscsi.c | 7 +- src/util/virscsivhost.c | 7 +- src/util/virusb.c | 7 +- src/vbox/vbox_common.c | 7 +- src/vz/vz_driver.c | 7 +- tests/virfilecachetest.c | 7 +- 67 files changed, 264 insertions(+), 631 deletions(-) diff --git a/src/access/viraccessmanager.c b/src/access/viraccessmanager.c index c268ec57f7..a8d361d389 100644 --- a/src/access/viraccessmanager.c +++ b/src/access/viraccessmanager.c @@ -54,11 +54,8 @@ static void virAccessManagerDispose(void *obj); =20 static int virAccessManagerOnceInit(void) { - if (!(virAccessManagerClass =3D virClassNew(virClassForObjectLockable(= ), - "virAccessManagerClass", - sizeof(virAccessManager), - virAccessManagerDispose))) - return -1; + VIR_CLASS_NEW(virClassForObjectLockable(), + virAccessManager); =20 return 0; } diff --git a/src/bhyve/bhyve_conf.c b/src/bhyve/bhyve_conf.c index b0b40c5754..f35ec1a207 100644 --- a/src/bhyve/bhyve_conf.c +++ b/src/bhyve/bhyve_conf.c @@ -36,13 +36,10 @@ static void virBhyveDriverConfigDispose(void *obj); =20 static int virBhyveConfigOnceInit(void) { - if (!(virBhyveDriverConfigClass =3D virClassNew(virClassForObject(), - "virBhyveDriverConfig", - sizeof(virBhyveDriverCo= nfig), - virBhyveDriverConfigDis= pose))) - return -1; + VIR_CLASS_NEW(virClassForObject(), + virBhyveDriverConfig); =20 - return 0; + return 0; } =20 VIR_ONCE_GLOBAL_INIT(virBhyveConfig) diff --git a/src/conf/capabilities.c b/src/conf/capabilities.c index 33b9194041..f35d754159 100644 --- a/src/conf/capabilities.c +++ b/src/conf/capabilities.c @@ -62,11 +62,8 @@ static void virCapsDispose(void *obj); =20 static int virCapabilitiesOnceInit(void) { - if (!(virCapsClass =3D virClassNew(virClassForObject(), - "virCaps", - sizeof(virCaps), - virCapsDispose))) - return -1; + VIR_CLASS_NEW(virClassForObject(), + virCaps); =20 return 0; } diff --git a/src/conf/domain_capabilities.c b/src/conf/domain_capabilities.c index f7d9be50f8..9c32f72b92 100644 --- a/src/conf/domain_capabilities.c +++ b/src/conf/domain_capabilities.c @@ -40,18 +40,11 @@ static void virDomainCapsCPUModelsDispose(void *obj); =20 static int virDomainCapsOnceInit(void) { - if (!(virDomainCapsClass =3D virClassNew(virClassForObjectLockable(), - "virDomainCapsClass", - sizeof(virDomainCaps), - virDomainCapsDispose))) - return -1; + VIR_CLASS_NEW(virClassForObjectLockable(), + virDomainCaps); =20 - virDomainCapsCPUModelsClass =3D virClassNew(virClassForObject(), - "virDomainCapsCPUModelsClass= ", - sizeof(virDomainCapsCPUModel= s), - virDomainCapsCPUModelsDispos= e); - if (!virDomainCapsCPUModelsClass) - return -1; + VIR_CLASS_NEW(virClassForObject(), + virDomainCapsCPUModels); =20 return 0; } diff --git a/src/conf/domain_conf.c b/src/conf/domain_conf.c index 4dad8e3b20..a47a89d9fa 100644 --- a/src/conf/domain_conf.c +++ b/src/conf/domain_conf.c @@ -938,17 +938,11 @@ static void virDomainXMLOptionDispose(void *obj); =20 static int virDomainObjOnceInit(void) { - if (!(virDomainObjClass =3D virClassNew(virClassForObjectLockable(), - "virDomainObj", - sizeof(virDomainObj), - virDomainObjDispose))) - return -1; + VIR_CLASS_NEW(virClassForObjectLockable(), + virDomainObj); =20 - if (!(virDomainXMLOptionClass =3D virClassNew(virClassForObject(), - "virDomainXMLOption", - sizeof(virDomainXMLOption), - virDomainXMLOptionDispose)= )) - return -1; + VIR_CLASS_NEW(virClassForObject(), + virDomainXMLOption); =20 return 0; } @@ -12223,14 +12217,10 @@ static virClassPtr virDomainChrSourceDefClass; static int virDomainChrSourceDefOnceInit(void) { - virDomainChrSourceDefClass =3D virClassNew(virClassForObject(), - "virDomainChrSourceDef", - sizeof(virDomainChrSourceDef), - virDomainChrSourceDefDispose); - if (!virDomainChrSourceDefClass) - return -1; - else - return 0; + VIR_CLASS_NEW(virClassForObject(), + virDomainChrSourceDef); + + return 0; } =20 VIR_ONCE_GLOBAL_INIT(virDomainChrSourceDef); diff --git a/src/conf/domain_event.c b/src/conf/domain_event.c index fdb48a1eaa..dd1194c268 100644 --- a/src/conf/domain_event.c +++ b/src/conf/domain_event.c @@ -295,132 +295,49 @@ typedef virDomainEventBlockThreshold *virDomainEvent= BlockThresholdPtr; static int virDomainEventsOnceInit(void) { - if (!(virDomainEventClass =3D - virClassNew(virClassForObjectEvent(), - "virDomainEvent", - sizeof(virDomainEvent), - virDomainEventDispose))) - return -1; - if (!(virDomainEventLifecycleClass =3D - virClassNew(virDomainEventClass, - "virDomainEventLifecycle", - sizeof(virDomainEventLifecycle), - virDomainEventLifecycleDispose))) - return -1; - if (!(virDomainEventRTCChangeClass =3D - virClassNew(virDomainEventClass, - "virDomainEventRTCChange", - sizeof(virDomainEventRTCChange), - virDomainEventRTCChangeDispose))) - return -1; - if (!(virDomainEventWatchdogClass =3D - virClassNew(virDomainEventClass, - "virDomainEventWatchdog", - sizeof(virDomainEventWatchdog), - virDomainEventWatchdogDispose))) - return -1; - if (!(virDomainEventIOErrorClass =3D - virClassNew(virDomainEventClass, - "virDomainEventIOError", - sizeof(virDomainEventIOError), - virDomainEventIOErrorDispose))) - return -1; - if (!(virDomainEventGraphicsClass =3D - virClassNew(virDomainEventClass, - "virDomainEventGraphics", - sizeof(virDomainEventGraphics), - virDomainEventGraphicsDispose))) - return -1; - if (!(virDomainEventBlockJobClass =3D - virClassNew(virDomainEventClass, - "virDomainEventBlockJob", - sizeof(virDomainEventBlockJob), - virDomainEventBlockJobDispose))) - return -1; - if (!(virDomainEventDiskChangeClass =3D - virClassNew(virDomainEventClass, - "virDomainEventDiskChange", - sizeof(virDomainEventDiskChange), - virDomainEventDiskChangeDispose))) - return -1; - if (!(virDomainEventTrayChangeClass =3D - virClassNew(virDomainEventClass, - "virDomainEventTrayChange", - sizeof(virDomainEventTrayChange), - virDomainEventTrayChangeDispose))) - return -1; - if (!(virDomainEventBalloonChangeClass =3D - virClassNew(virDomainEventClass, - "virDomainEventBalloonChange", - sizeof(virDomainEventBalloonChange), - virDomainEventBalloonChangeDispose))) - return -1; - if (!(virDomainEventDeviceRemovedClass =3D - virClassNew(virDomainEventClass, - "virDomainEventDeviceRemoved", - sizeof(virDomainEventDeviceRemoved), - virDomainEventDeviceRemovedDispose))) - return -1; - if (!(virDomainEventDeviceAddedClass =3D - virClassNew(virDomainEventClass, - "virDomainEventDeviceAdded", - sizeof(virDomainEventDeviceAdded), - virDomainEventDeviceAddedDispose))) - return -1; - if (!(virDomainEventPMClass =3D - virClassNew(virDomainEventClass, - "virDomainEventPM", - sizeof(virDomainEventPM), - virDomainEventPMDispose))) - return -1; - if (!(virDomainQemuMonitorEventClass =3D - virClassNew(virClassForObjectEvent(), - "virDomainQemuMonitorEvent", - sizeof(virDomainQemuMonitorEvent), - virDomainQemuMonitorEventDispose))) - return -1; - if (!(virDomainEventTunableClass =3D - virClassNew(virDomainEventClass, - "virDomainEventTunable", - sizeof(virDomainEventTunable), - virDomainEventTunableDispose))) - return -1; - if (!(virDomainEventAgentLifecycleClass =3D - virClassNew(virDomainEventClass, - "virDomainEventAgentLifecycle", - sizeof(virDomainEventAgentLifecycle), - virDomainEventAgentLifecycleDispose))) - return -1; - if (!(virDomainEventMigrationIterationClass =3D - virClassNew(virDomainEventClass, - "virDomainEventMigrationIteration", - sizeof(virDomainEventMigrationIteration), - virDomainEventMigrationIterationDispose))) - return -1; - if (!(virDomainEventJobCompletedClass =3D - virClassNew(virDomainEventClass, - "virDomainEventJobCompleted", - sizeof(virDomainEventJobCompleted), - virDomainEventJobCompletedDispose))) - return -1; - if (!(virDomainEventDeviceRemovalFailedClass =3D - virClassNew(virDomainEventClass, - "virDomainEventDeviceRemovalFailed", - sizeof(virDomainEventDeviceRemovalFailed), - virDomainEventDeviceRemovalFailedDispose))) - return -1; - if (!(virDomainEventMetadataChangeClass =3D - virClassNew(virDomainEventClass, - "virDomainEventMetadataChange", - sizeof(virDomainEventMetadataChange), - virDomainEventMetadataChangeDispose))) - return -1; - if (!(virDomainEventBlockThresholdClass =3D - virClassNew(virDomainEventClass, - "virDomainEventBlockThreshold", - sizeof(virDomainEventBlockThreshold), - virDomainEventBlockThresholdDispose))) - return -1; + VIR_CLASS_NEW(virClassForObjectEvent(), + virDomainEvent); + VIR_CLASS_NEW(virDomainEventClass, + virDomainEventLifecycle); + VIR_CLASS_NEW(virDomainEventClass, + virDomainEventRTCChange); + VIR_CLASS_NEW(virDomainEventClass, + virDomainEventWatchdog); + VIR_CLASS_NEW(virDomainEventClass, + virDomainEventIOError); + VIR_CLASS_NEW(virDomainEventClass, + virDomainEventGraphics); + VIR_CLASS_NEW(virDomainEventClass, + virDomainEventBlockJob); + VIR_CLASS_NEW(virDomainEventClass, + virDomainEventDiskChange); + VIR_CLASS_NEW(virDomainEventClass, + virDomainEventTrayChange); + VIR_CLASS_NEW(virDomainEventClass, + virDomainEventBalloonChange); + VIR_CLASS_NEW(virDomainEventClass, + virDomainEventDeviceRemoved); + VIR_CLASS_NEW(virDomainEventClass, + virDomainEventDeviceAdded); + VIR_CLASS_NEW(virDomainEventClass, + virDomainEventPM); + VIR_CLASS_NEW(virClassForObjectEvent(), + virDomainQemuMonitorEvent); + VIR_CLASS_NEW(virDomainEventClass, + virDomainEventTunable); + VIR_CLASS_NEW(virDomainEventClass, + virDomainEventAgentLifecycle); + VIR_CLASS_NEW(virDomainEventClass, + virDomainEventMigrationIteration); + VIR_CLASS_NEW(virDomainEventClass, + virDomainEventJobCompleted); + VIR_CLASS_NEW(virDomainEventClass, + virDomainEventDeviceRemovalFailed); + VIR_CLASS_NEW(virDomainEventClass, + virDomainEventMetadataChange); + VIR_CLASS_NEW(virDomainEventClass, + virDomainEventBlockThreshold); + return 0; } =20 diff --git a/src/conf/network_event.c b/src/conf/network_event.c index e0d1a3d5ca..2984c8f783 100644 --- a/src/conf/network_event.c +++ b/src/conf/network_event.c @@ -57,18 +57,12 @@ static void virNetworkEventLifecycleDispose(void *obj); static int virNetworkEventsOnceInit(void) { - if (!(virNetworkEventClass =3D - virClassNew(virClassForObjectEvent(), - "virNetworkEvent", - sizeof(virNetworkEvent), - virNetworkEventDispose))) - return -1; - if (!(virNetworkEventLifecycleClass =3D - virClassNew(virNetworkEventClass, - "virNetworkEventLifecycle", - sizeof(virNetworkEventLifecycle), - virNetworkEventLifecycleDispose))) - return -1; + VIR_CLASS_NEW(virClassForObjectEvent(), + virNetworkEvent); + + VIR_CLASS_NEW(virNetworkEventClass, + virNetworkEventLifecycle); + return 0; } =20 diff --git a/src/conf/node_device_event.c b/src/conf/node_device_event.c index 312ef512d1..6448b199df 100644 --- a/src/conf/node_device_event.c +++ b/src/conf/node_device_event.c @@ -66,24 +66,15 @@ static void virNodeDeviceEventUpdateDispose(void *obj); static int virNodeDeviceEventsOnceInit(void) { - if (!(virNodeDeviceEventClass =3D - virClassNew(virClassForObjectEvent(), - "virNodeDeviceEvent", - sizeof(virNodeDeviceEvent), - virNodeDeviceEventDispose))) - return -1; - if (!(virNodeDeviceEventLifecycleClass =3D - virClassNew(virNodeDeviceEventClass, - "virNodeDeviceEventLifecycle", - sizeof(virNodeDeviceEventLifecycle), - virNodeDeviceEventLifecycleDispose))) - return -1; - if (!(virNodeDeviceEventUpdateClass =3D - virClassNew(virNodeDeviceEventClass, - "virNodeDeviceEventUpdate", - sizeof(virNodeDeviceEventUpdate), - virNodeDeviceEventUpdateDispose))) - return -1; + VIR_CLASS_NEW(virClassForObjectEvent(), + virNodeDeviceEvent); + + VIR_CLASS_NEW(virNodeDeviceEventClass, + virNodeDeviceEventLifecycle); + + VIR_CLASS_NEW(virNodeDeviceEventClass, + virNodeDeviceEventUpdate); + return 0; } =20 diff --git a/src/conf/object_event.c b/src/conf/object_event.c index e8116b880c..1c9559293e 100644 --- a/src/conf/object_event.c +++ b/src/conf/object_event.c @@ -92,19 +92,11 @@ static void virObjectEventStateDispose(void *obj); static int virObjectEventOnceInit(void) { - if (!(virObjectEventStateClass =3D - virClassNew(virClassForObjectLockable(), - "virObjectEventState", - sizeof(virObjectEventState), - virObjectEventStateDispose))) - return -1; + VIR_CLASS_NEW(virClassForObjectLockable(), + virObjectEventState); =20 - if (!(virObjectEventClass =3D - virClassNew(virClassForObject(), - "virObjectEvent", - sizeof(virObjectEvent), - virObjectEventDispose))) - return -1; + VIR_CLASS_NEW(virClassForObject(), + virObjectEvent); =20 return 0; } diff --git a/src/conf/secret_event.c b/src/conf/secret_event.c index c130909282..d899aee1b5 100644 --- a/src/conf/secret_event.c +++ b/src/conf/secret_event.c @@ -65,24 +65,15 @@ static void virSecretEventValueChangedDispose(void *obj= ); static int virSecretEventsOnceInit(void) { - if (!(virSecretEventClass =3D - virClassNew(virClassForObjectEvent(), - "virSecretEvent", - sizeof(virSecretEvent), - virSecretEventDispose))) - return -1; - if (!(virSecretEventLifecycleClass =3D - virClassNew(virSecretEventClass, - "virSecretEventLifecycle", - sizeof(virSecretEventLifecycle), - virSecretEventLifecycleDispose))) - return -1; - if (!(virSecretEventValueChangedClass =3D - virClassNew(virSecretEventClass, - "virSecretEventValueChanged", - sizeof(virSecretEventValueChanged), - virSecretEventValueChangedDispose))) - return -1; + VIR_CLASS_NEW(virClassForObjectEvent(), + virSecretEvent); + + VIR_CLASS_NEW(virSecretEventClass, + virSecretEventLifecycle); + + VIR_CLASS_NEW(virSecretEventClass, + virSecretEventValueChanged); + return 0; } =20 diff --git a/src/conf/storage_event.c b/src/conf/storage_event.c index f9b796878a..d1ab965bff 100644 --- a/src/conf/storage_event.c +++ b/src/conf/storage_event.c @@ -66,24 +66,15 @@ static void virStoragePoolEventRefreshDispose(void *obj= ); static int virStoragePoolEventsOnceInit(void) { - if (!(virStoragePoolEventClass =3D - virClassNew(virClassForObjectEvent(), - "virStoragePoolEvent", - sizeof(virStoragePoolEvent), - virStoragePoolEventDispose))) - return -1; - if (!(virStoragePoolEventLifecycleClass =3D - virClassNew(virStoragePoolEventClass, - "virStoragePoolEventLifecycle", - sizeof(virStoragePoolEventLifecycle), - virStoragePoolEventLifecycleDispose))) - return -1; - if (!(virStoragePoolEventRefreshClass =3D - virClassNew(virStoragePoolEventClass, - "virStoragePoolEventRefresh", - sizeof(virStoragePoolEventRefresh), - virStoragePoolEventRefreshDispose))) - return -1; + VIR_CLASS_NEW(virClassForObjectEvent(), + virStoragePoolEvent); + + VIR_CLASS_NEW(virStoragePoolEventClass, + virStoragePoolEventLifecycle); + + VIR_CLASS_NEW(virStoragePoolEventClass, + virStoragePoolEventRefresh); + return 0; } =20 diff --git a/src/conf/virdomainobjlist.c b/src/conf/virdomainobjlist.c index 7022abe094..b8dee3b5a2 100644 --- a/src/conf/virdomainobjlist.c +++ b/src/conf/virdomainobjlist.c @@ -56,11 +56,8 @@ struct _virDomainObjList { =20 static int virDomainObjListOnceInit(void) { - if (!(virDomainObjListClass =3D virClassNew(virClassForObjectRWLockabl= e(), - "virDomainObjList", - sizeof(virDomainObjList), - virDomainObjListDispose))) - return -1; + VIR_CLASS_NEW(virClassForObjectRWLockable(), + virDomainObjList); =20 return 0; } diff --git a/src/conf/virinterfaceobj.c b/src/conf/virinterfaceobj.c index f90c0bd9c4..cb8eefa9b6 100644 --- a/src/conf/virinterfaceobj.c +++ b/src/conf/virinterfaceobj.c @@ -58,17 +58,11 @@ static void virInterfaceObjListDispose(void *obj); static int virInterfaceObjOnceInit(void) { - if (!(virInterfaceObjClass =3D virClassNew(virClassForObjectLockable(), - "virInterfaceObj", - sizeof(virInterfaceObj), - virInterfaceObjDispose))) - return -1; + VIR_CLASS_NEW(virClassForObjectLockable(), + virInterfaceObj); =20 - if (!(virInterfaceObjListClass =3D virClassNew(virClassForObjectRWLock= able(), - "virInterfaceObjList", - sizeof(virInterfaceObjLis= t), - virInterfaceObjListDispos= e))) - return -1; + VIR_CLASS_NEW(virClassForObjectRWLockable(), + virInterfaceObjList); =20 return 0; } diff --git a/src/conf/virnetworkobj.c b/src/conf/virnetworkobj.c index 8cd1b62c1c..ba1a3f9374 100644 --- a/src/conf/virnetworkobj.c +++ b/src/conf/virnetworkobj.c @@ -74,17 +74,11 @@ static void virNetworkObjListDispose(void *obj); static int virNetworkObjOnceInit(void) { - if (!(virNetworkObjClass =3D virClassNew(virClassForObjectLockable(), - "virNetworkObj", - sizeof(virNetworkObj), - virNetworkObjDispose))) - return -1; + VIR_CLASS_NEW(virClassForObjectLockable(), + virNetworkObj); =20 - if (!(virNetworkObjListClass =3D virClassNew(virClassForObjectRWLockab= le(), - "virNetworkObjList", - sizeof(virNetworkObjList), - virNetworkObjListDispose))) - return -1; + VIR_CLASS_NEW(virClassForObjectRWLockable(), + virNetworkObjList); return 0; } =20 diff --git a/src/conf/virnodedeviceobj.c b/src/conf/virnodedeviceobj.c index 9d2996046f..33f52f1217 100644 --- a/src/conf/virnodedeviceobj.c +++ b/src/conf/virnodedeviceobj.c @@ -58,17 +58,11 @@ static bool virNodeDeviceObjHasCap(const virNodeDeviceO= bj *obj, int type); static int virNodeDeviceObjOnceInit(void) { - if (!(virNodeDeviceObjClass =3D virClassNew(virClassForObjectLockable(= ), - "virNodeDeviceObj", - sizeof(virNodeDeviceObj), - virNodeDeviceObjDispose))) - return -1; + VIR_CLASS_NEW(virClassForObjectLockable(), + virNodeDeviceObj); =20 - if (!(virNodeDeviceObjListClass =3D virClassNew(virClassForObjectRWLoc= kable(), - "virNodeDeviceObjList", - sizeof(virNodeDeviceObjL= ist), - virNodeDeviceObjListDisp= ose))) - return -1; + VIR_CLASS_NEW(virClassForObjectRWLockable(), + virNodeDeviceObjList); =20 return 0; } diff --git a/src/conf/virsecretobj.c b/src/conf/virsecretobj.c index 47e0b28968..e7a385aa59 100644 --- a/src/conf/virsecretobj.c +++ b/src/conf/virsecretobj.c @@ -68,17 +68,11 @@ struct virSecretSearchData { static int virSecretObjOnceInit(void) { - if (!(virSecretObjClass =3D virClassNew(virClassForObjectLockable(), - "virSecretObj", - sizeof(virSecretObj), - virSecretObjDispose))) - return -1; + VIR_CLASS_NEW(virClassForObjectLockable(), + virSecretObj); =20 - if (!(virSecretObjListClass =3D virClassNew(virClassForObjectRWLockabl= e(), - "virSecretObjList", - sizeof(virSecretObjList), - virSecretObjListDispose))) - return -1; + VIR_CLASS_NEW(virClassForObjectRWLockable(), + virSecretObjList); =20 return 0; } diff --git a/src/conf/virstorageobj.c b/src/conf/virstorageobj.c index 799b8c9fa3..2342b09815 100644 --- a/src/conf/virstorageobj.c +++ b/src/conf/virstorageobj.c @@ -110,17 +110,11 @@ struct _virStoragePoolObjList { static int virStorageVolObjOnceInit(void) { - if (!(virStorageVolObjClass =3D virClassNew(virClassForObjectLockable(= ), - "virStorageVolObj", - sizeof(virStorageVolObj), - virStorageVolObjDispose))) - return -1; + VIR_CLASS_NEW(virClassForObjectLockable(), + virStorageVolObj); =20 - if (!(virStorageVolObjListClass =3D virClassNew(virClassForObjectRWLoc= kable(), - "virStorageVolObjList", - sizeof(virStorageVolObjL= ist), - virStorageVolObjListDisp= ose))) - return -1; + VIR_CLASS_NEW(virClassForObjectRWLockable(), + virStorageVolObjList); =20 return 0; } @@ -207,17 +201,11 @@ virStorageVolObjListDispose(void *opaque) static int virStoragePoolObjOnceInit(void) { - if (!(virStoragePoolObjClass =3D virClassNew(virClassForObjectLockable= (), - "virStoragePoolObj", - sizeof(virStoragePoolObj), - virStoragePoolObjDispose))) - return -1; + VIR_CLASS_NEW(virClassForObjectLockable(), + virStoragePoolObj); =20 - if (!(virStoragePoolObjListClass =3D virClassNew(virClassForObjectRWLo= ckable(), - "virStoragePoolObjList", - sizeof(virStoragePoolOb= jList), - virStoragePoolObjListDi= spose))) - return -1; + VIR_CLASS_NEW(virClassForObjectRWLockable(), + virStoragePoolObjList); =20 return 0; } diff --git a/src/datatypes.c b/src/datatypes.c index 0c3c66a9ce..2a7725f6f7 100644 --- a/src/datatypes.c +++ b/src/datatypes.c @@ -73,16 +73,10 @@ static void virAdmClientDispose(void *obj); static int virDataTypesOnceInit(void) { -#define DECLARE_CLASS_COMMON(basename, parent) \ - if (!(basename ## Class =3D virClassNew(parent, \ - #basename, \ - sizeof(basename), \ - basename ## Dispose))) \ - return -1; #define DECLARE_CLASS(basename) \ - DECLARE_CLASS_COMMON(basename, virClassForObject()) + VIR_CLASS_NEW(virClassForObject(), basename) #define DECLARE_CLASS_LOCKABLE(basename) \ - DECLARE_CLASS_COMMON(basename, virClassForObjectLockable()) + VIR_CLASS_NEW(virClassForObjectLockable(), basename) =20 DECLARE_CLASS_LOCKABLE(virConnect); DECLARE_CLASS_LOCKABLE(virConnectCloseCallbackData); @@ -102,7 +96,6 @@ virDataTypesOnceInit(void) DECLARE_CLASS(virAdmServer); DECLARE_CLASS(virAdmClient); =20 -#undef DECLARE_CLASS_COMMON #undef DECLARE_CLASS_LOCKABLE #undef DECLARE_CLASS =20 diff --git a/src/interface/interface_backend_netcf.c b/src/interface/interf= ace_backend_netcf.c index cc2402febb..49fb102954 100644 --- a/src/interface/interface_backend_netcf.c +++ b/src/interface/interface_backend_netcf.c @@ -55,11 +55,9 @@ static void virNetcfDriverStateDispose(void *obj); static int virNetcfDriverStateOnceInit(void) { - if (!(virNetcfDriverStateClass =3D virClassNew(virClassForObjectLockab= le(), - "virNetcfDriverState", - sizeof(virNetcfDriverState), - virNetcfDriverStateDispose))) - return -1; + VIR_CLASS_NEW(virClassForObjectLockable(), + virNetcfDriverState); + return 0; } =20 diff --git a/src/libvirt-admin.c b/src/libvirt-admin.c index 7f695311b4..6c7c7ef236 100644 --- a/src/libvirt-admin.c +++ b/src/libvirt-admin.c @@ -67,11 +67,9 @@ virAdmGlobalInit(void) if (!bindtextdomain(PACKAGE, LOCALEDIR)) goto error; =20 - if (!(remoteAdminPrivClass =3D virClassNew(virClassForObjectLockable(), - "remoteAdminPriv", - sizeof(remoteAdminPriv), - remoteAdminPrivDispose))) - goto error; + VIR_CLASS_NEW_GOTO(virClassForObjectLockable(), + remoteAdminPriv, + error); =20 return; error: diff --git a/src/libxl/libxl_conf.c b/src/libxl/libxl_conf.c index df1cece82f..977431a910 100644 --- a/src/libxl/libxl_conf.c +++ b/src/libxl/libxl_conf.c @@ -62,11 +62,8 @@ static void libxlDriverConfigDispose(void *obj); =20 static int libxlConfigOnceInit(void) { - if (!(libxlDriverConfigClass =3D virClassNew(virClassForObject(), - "libxlDriverConfig", - sizeof(libxlDriverConfig), - libxlDriverConfigDispose))) - return -1; + VIR_CLASS_NEW(virClassForObject(), + libxlDriverConfig); =20 return 0; } diff --git a/src/libxl/libxl_domain.c b/src/libxl/libxl_domain.c index ef9a902671..bf4c8b7a1e 100644 --- a/src/libxl/libxl_domain.c +++ b/src/libxl/libxl_domain.c @@ -58,11 +58,8 @@ libxlDomainObjPrivateDispose(void *obj); static int libxlDomainObjPrivateOnceInit(void) { - if (!(libxlDomainObjPrivateClass =3D virClassNew(virClassForObjectLock= able(), - "libxlDomainObjPrivate", - sizeof(libxlDomainObjPr= ivate), - libxlDomainObjPrivateDi= spose))) - return -1; + VIR_CLASS_NEW(virClassForObjectLockable(), + libxlDomainObjPrivate); =20 return 0; } diff --git a/src/libxl/libxl_migration.c b/src/libxl/libxl_migration.c index 5c0fd4b052..ba6436fb9c 100644 --- a/src/libxl/libxl_migration.c +++ b/src/libxl/libxl_migration.c @@ -244,11 +244,8 @@ libxlMigrationDstArgsDispose(void *obj) static int libxlMigrationDstArgsOnceInit(void) { - if (!(libxlMigrationDstArgsClass =3D virClassNew(virClassForObject(), - "libxlMigrationDstArgs", - sizeof(libxlMigrationDs= tArgs), - libxlMigrationDstArgsDi= spose))) - return -1; + VIR_CLASS_NEW(virClassForObject(), + libxlMigrationDstArgs); =20 return 0; } diff --git a/src/logging/log_handler.c b/src/logging/log_handler.c index cd0ba6ec24..b87e52a19e 100644 --- a/src/logging/log_handler.c +++ b/src/logging/log_handler.c @@ -76,11 +76,8 @@ static void virLogHandlerDispose(void *obj); static int virLogHandlerOnceInit(void) { - if (!(virLogHandlerClass =3D virClassNew(virClassForObjectLockable(), - "virLogHandler", - sizeof(virLogHandler), - virLogHandlerDispose))) - return -1; + VIR_CLASS_NEW(virClassForObjectLockable(), + virLogHandler); =20 return 0; } diff --git a/src/lxc/lxc_conf.c b/src/lxc/lxc_conf.c index 92a82a4768..f8e82c0adb 100644 --- a/src/lxc/lxc_conf.c +++ b/src/lxc/lxc_conf.c @@ -48,11 +48,8 @@ static void virLXCDriverConfigDispose(void *obj); =20 static int virLXCConfigOnceInit(void) { - if (!(virLXCDriverConfigClass =3D virClassNew(virClassForObject(), - "virLXCDriverConfig", - sizeof(virLXCDriverConfig= ), - virLXCDriverConfigDispose= ))) - return -1; + VIR_CLASS_NEW(virClassForObject(), + virLXCDriverConfig); =20 return 0; } diff --git a/src/lxc/lxc_monitor.c b/src/lxc/lxc_monitor.c index 9cab6c2035..f1af5a86be 100644 --- a/src/lxc/lxc_monitor.c +++ b/src/lxc/lxc_monitor.c @@ -51,11 +51,8 @@ static void virLXCMonitorDispose(void *obj); =20 static int virLXCMonitorOnceInit(void) { - if (!(virLXCMonitorClass =3D virClassNew(virClassForObjectLockable(), - "virLXCMonitor", - sizeof(virLXCMonitor), - virLXCMonitorDispose))) - return -1; + VIR_CLASS_NEW(virClassForObjectLockable(), + virLXCMonitor); =20 return 0; } diff --git a/src/node_device/node_device_udev.c b/src/node_device/node_devi= ce_udev.c index de01816402..6a7d5306b7 100644 --- a/src/node_device/node_device_udev.c +++ b/src/node_device/node_device_udev.c @@ -93,11 +93,8 @@ udevEventDataDispose(void *obj) static int udevEventDataOnceInit(void) { - if (!(udevEventDataClass =3D virClassNew(virClassForObjectLockable(), - "udevEventData", - sizeof(udevEventData), - udevEventDataDispose))) - return -1; + VIR_CLASS_NEW(virClassForObjectLockable(), + udevEventData); =20 return 0; } diff --git a/src/qemu/qemu_agent.c b/src/qemu/qemu_agent.c index 85af53d194..8b2864cf68 100644 --- a/src/qemu/qemu_agent.c +++ b/src/qemu/qemu_agent.c @@ -138,11 +138,8 @@ static void qemuAgentDispose(void *obj); =20 static int qemuAgentOnceInit(void) { - if (!(qemuAgentClass =3D virClassNew(virClassForObjectLockable(), - "qemuAgent", - sizeof(qemuAgent), - qemuAgentDispose))) - return -1; + VIR_CLASS_NEW(virClassForObjectLockable(), + qemuAgent); =20 return 0; } diff --git a/src/qemu/qemu_capabilities.c b/src/qemu/qemu_capabilities.c index 70cf0e9bf3..2668560454 100644 --- a/src/qemu/qemu_capabilities.c +++ b/src/qemu/qemu_capabilities.c @@ -548,11 +548,8 @@ static void virQEMUCapsDispose(void *obj); =20 static int virQEMUCapsOnceInit(void) { - if (!(virQEMUCapsClass =3D virClassNew(virClassForObject(), - "virQEMUCaps", - sizeof(virQEMUCaps), - virQEMUCapsDispose))) - return -1; + VIR_CLASS_NEW(virClassForObject(), + virQEMUCaps); =20 return 0; } diff --git a/src/qemu/qemu_conf.c b/src/qemu/qemu_conf.c index 36cf3a281c..c31eb6bc75 100644 --- a/src/qemu/qemu_conf.c +++ b/src/qemu/qemu_conf.c @@ -80,15 +80,10 @@ static void virQEMUDriverConfigDispose(void *obj); =20 static int virQEMUConfigOnceInit(void) { - virQEMUDriverConfigClass =3D virClassNew(virClassForObject(), - "virQEMUDriverConfig", - sizeof(virQEMUDriverConfig), - virQEMUDriverConfigDispose); + VIR_CLASS_NEW(virClassForObject(), + virQEMUDriverConfig); =20 - if (!virQEMUDriverConfigClass) - return -1; - else - return 0; + return 0; } =20 VIR_ONCE_GLOBAL_INIT(virQEMUConfig) diff --git a/src/qemu/qemu_domain.c b/src/qemu/qemu_domain.c index 6e18886d07..c87d41dbb8 100644 --- a/src/qemu/qemu_domain.c +++ b/src/qemu/qemu_domain.c @@ -130,17 +130,11 @@ static void qemuDomainSaveCookieDispose(void *obj); static int qemuDomainOnceInit(void) { - if (!(qemuDomainLogContextClass =3D virClassNew(virClassForObject(), - "qemuDomainLogContext", - sizeof(qemuDomainLogConte= xt), - qemuDomainLogContextDispo= se))) - return -1; + VIR_CLASS_NEW(virClassForObject(), + qemuDomainLogContext); =20 - if (!(qemuDomainSaveCookieClass =3D virClassNew(virClassForObject(), - "qemuDomainSaveCookie", - sizeof(qemuDomainSaveCoo= kie), - qemuDomainSaveCookieDisp= ose))) - return -1; + VIR_CLASS_NEW(virClassForObject(), + qemuDomainSaveCookie); =20 return 0; } @@ -988,14 +982,10 @@ static void qemuDomainDiskPrivateDispose(void *obj); static int qemuDomainDiskPrivateOnceInit(void) { - qemuDomainDiskPrivateClass =3D virClassNew(virClassForObject(), - "qemuDomainDiskPrivate", - sizeof(qemuDomainDiskPrivate), - qemuDomainDiskPrivateDispose); - if (!qemuDomainDiskPrivateClass) - return -1; - else - return 0; + VIR_CLASS_NEW(virClassForObject(), + qemuDomainDiskPrivate); + + return 0; } =20 VIR_ONCE_GLOBAL_INIT(qemuDomainDiskPrivate) @@ -1028,14 +1018,10 @@ static void qemuDomainStorageSourcePrivateDispose(v= oid *obj); static int qemuDomainStorageSourcePrivateOnceInit(void) { - qemuDomainStorageSourcePrivateClass =3D virClassNew(virClassForObject(= ), - "qemuDomainStorageSo= urcePrivate", - sizeof(qemuDomainSto= rageSourcePrivate), - qemuDomainStorageSou= rcePrivateDispose); - if (!qemuDomainStorageSourcePrivateClass) - return -1; - else - return 0; + VIR_CLASS_NEW(virClassForObject(), + qemuDomainStorageSourcePrivate); + + return 0; } =20 VIR_ONCE_GLOBAL_INIT(qemuDomainStorageSourcePrivate) @@ -1071,14 +1057,10 @@ static void qemuDomainVcpuPrivateDispose(void *obj); static int qemuDomainVcpuPrivateOnceInit(void) { - qemuDomainVcpuPrivateClass =3D virClassNew(virClassForObject(), - "qemuDomainVcpuPrivate", - sizeof(qemuDomainVcpuPrivate), - qemuDomainVcpuPrivateDispose); - if (!qemuDomainVcpuPrivateClass) - return -1; - else - return 0; + VIR_CLASS_NEW(virClassForObject(), + qemuDomainVcpuPrivate); + + return 0; } =20 VIR_ONCE_GLOBAL_INIT(qemuDomainVcpuPrivate) @@ -1115,15 +1097,10 @@ static void qemuDomainChrSourcePrivateDispose(void = *obj); static int qemuDomainChrSourcePrivateOnceInit(void) { - qemuDomainChrSourcePrivateClass =3D - virClassNew(virClassForObject(), - "qemuDomainChrSourcePrivate", - sizeof(qemuDomainChrSourcePrivate), - qemuDomainChrSourcePrivateDispose); - if (!qemuDomainChrSourcePrivateClass) - return -1; - else - return 0; + VIR_CLASS_NEW(virClassForObject(), + qemuDomainChrSourcePrivate); + + return 0; } =20 VIR_ONCE_GLOBAL_INIT(qemuDomainChrSourcePrivate) diff --git a/src/qemu/qemu_monitor.c b/src/qemu/qemu_monitor.c index 22f05222db..9b3ac41d0b 100644 --- a/src/qemu/qemu_monitor.c +++ b/src/qemu/qemu_monitor.c @@ -165,11 +165,8 @@ static void qemuMonitorDispose(void *obj); =20 static int qemuMonitorOnceInit(void) { - if (!(qemuMonitorClass =3D virClassNew(virClassForObjectLockable(), - "qemuMonitor", - sizeof(qemuMonitor), - qemuMonitorDispose))) - return -1; + VIR_CLASS_NEW(virClassForObjectLockable(), + qemuMonitor); =20 return 0; } diff --git a/src/rpc/virkeepalive.c b/src/rpc/virkeepalive.c index 4f666fd09b..c5f353e350 100644 --- a/src/rpc/virkeepalive.c +++ b/src/rpc/virkeepalive.c @@ -58,11 +58,8 @@ static void virKeepAliveDispose(void *obj); =20 static int virKeepAliveOnceInit(void) { - if (!(virKeepAliveClass =3D virClassNew(virClassForObjectLockable(), - "virKeepAlive", - sizeof(virKeepAlive), - virKeepAliveDispose))) - return -1; + VIR_CLASS_NEW(virClassForObjectLockable(), + virKeepAlive); =20 return 0; } diff --git a/src/rpc/virnetclient.c b/src/rpc/virnetclient.c index 0c8d58c32c..2e79384017 100644 --- a/src/rpc/virnetclient.c +++ b/src/rpc/virnetclient.c @@ -120,11 +120,8 @@ static void virNetClientDispose(void *obj); =20 static int virNetClientOnceInit(void) { - if (!(virNetClientClass =3D virClassNew(virClassForObjectLockable(), - "virNetClient", - sizeof(virNetClient), - virNetClientDispose))) - return -1; + VIR_CLASS_NEW(virClassForObjectLockable(), + virNetClient); =20 return 0; } diff --git a/src/rpc/virnetclientprogram.c b/src/rpc/virnetclientprogram.c index d1e54a0892..687378c41a 100644 --- a/src/rpc/virnetclientprogram.c +++ b/src/rpc/virnetclientprogram.c @@ -54,11 +54,8 @@ static void virNetClientProgramDispose(void *obj); =20 static int virNetClientProgramOnceInit(void) { - if (!(virNetClientProgramClass =3D virClassNew(virClassForObject(), - "virNetClientProgram", - sizeof(virNetClientProgra= m), - virNetClientProgramDispos= e))) - return -1; + VIR_CLASS_NEW(virClassForObject(), + virNetClientProgram); =20 return 0; } diff --git a/src/rpc/virnetclientstream.c b/src/rpc/virnetclientstream.c index 2f037db0dc..2a1be174ba 100644 --- a/src/rpc/virnetclientstream.c +++ b/src/rpc/virnetclientstream.c @@ -71,11 +71,8 @@ static void virNetClientStreamDispose(void *obj); =20 static int virNetClientStreamOnceInit(void) { - if (!(virNetClientStreamClass =3D virClassNew(virClassForObjectLockabl= e(), - "virNetClientStream", - sizeof(virNetClientStream), - virNetClientStreamDispose)= )) - return -1; + VIR_CLASS_NEW(virClassForObjectLockable(), + virNetClientStream); =20 return 0; } diff --git a/src/rpc/virnetdaemon.c b/src/rpc/virnetdaemon.c index 6f00bfd9d1..41cf31cfd3 100644 --- a/src/rpc/virnetdaemon.c +++ b/src/rpc/virnetdaemon.c @@ -110,11 +110,8 @@ virNetDaemonDispose(void *obj) static int virNetDaemonOnceInit(void) { - if (!(virNetDaemonClass =3D virClassNew(virClassForObjectLockable(), - "virNetDaemon", - sizeof(virNetDaemon), - virNetDaemonDispose))) - return -1; + VIR_CLASS_NEW(virClassForObjectLockable(), + virNetDaemon); =20 return 0; } diff --git a/src/rpc/virnetlibsshsession.c b/src/rpc/virnetlibsshsession.c index 25f93cec97..1f0d171803 100644 --- a/src/rpc/virnetlibsshsession.c +++ b/src/rpc/virnetlibsshsession.c @@ -161,11 +161,8 @@ virNetLibsshSessionOnceInit(void) { const char *dbgLevelStr; =20 - if (!(virNetLibsshSessionClass =3D virClassNew(virClassForObjectLockab= le(), - "virNetLibsshSession", - sizeof(virNetLibsshSessio= n), - virNetLibsshSessionDispos= e))) - return -1; + VIR_CLASS_NEW(virClassForObjectLockable(), + virNetLibsshSession); =20 if (ssh_init() < 0) { virReportError(VIR_ERR_LIBSSH, "%s", diff --git a/src/rpc/virnetsaslcontext.c b/src/rpc/virnetsaslcontext.c index 2b564d1736..a128fc06e9 100644 --- a/src/rpc/virnetsaslcontext.c +++ b/src/rpc/virnetsaslcontext.c @@ -57,17 +57,11 @@ static void virNetSASLSessionDispose(void *obj); =20 static int virNetSASLContextOnceInit(void) { - if (!(virNetSASLContextClass =3D virClassNew(virClassForObjectLockable= (), - "virNetSASLContext", - sizeof(virNetSASLContext), - virNetSASLContextDispose))) - return -1; + VIR_CLASS_NEW(virClassForObjectLockable(), + virNetSASLContext); =20 - if (!(virNetSASLSessionClass =3D virClassNew(virClassForObjectLockable= (), - "virNetSASLSession", - sizeof(virNetSASLSession), - virNetSASLSessionDispose))) - return -1; + VIR_CLASS_NEW(virClassForObjectLockable(), + virNetSASLSession); =20 return 0; } diff --git a/src/rpc/virnetserver.c b/src/rpc/virnetserver.c index 3ce21a8f53..81f11ac816 100644 --- a/src/rpc/virnetserver.c +++ b/src/rpc/virnetserver.c @@ -93,11 +93,8 @@ static inline size_t virNetServerTrackCompletedAuthLocke= d(virNetServerPtr srv); =20 static int virNetServerOnceInit(void) { - if (!(virNetServerClass =3D virClassNew(virClassForObjectLockable(), - "virNetServer", - sizeof(virNetServer), - virNetServerDispose))) - return -1; + VIR_CLASS_NEW(virClassForObjectLockable(), + virNetServer); =20 return 0; } diff --git a/src/rpc/virnetserverclient.c b/src/rpc/virnetserverclient.c index d5f0cf448f..6f8e1c985f 100644 --- a/src/rpc/virnetserverclient.c +++ b/src/rpc/virnetserverclient.c @@ -129,11 +129,8 @@ static void virNetServerClientDispose(void *obj); =20 static int virNetServerClientOnceInit(void) { - if (!(virNetServerClientClass =3D virClassNew(virClassForObjectLockabl= e(), - "virNetServerClient", - sizeof(virNetServerClient), - virNetServerClientDispose)= )) - return -1; + VIR_CLASS_NEW(virClassForObjectLockable(), + virNetServerClient); =20 return 0; } diff --git a/src/rpc/virnetserverprogram.c b/src/rpc/virnetserverprogram.c index f28274fc22..b93c8163f5 100644 --- a/src/rpc/virnetserverprogram.c +++ b/src/rpc/virnetserverprogram.c @@ -51,11 +51,8 @@ static void virNetServerProgramDispose(void *obj); =20 static int virNetServerProgramOnceInit(void) { - if (!(virNetServerProgramClass =3D virClassNew(virClassForObject(), - "virNetServerProgram", - sizeof(virNetServerProgra= m), - virNetServerProgramDispos= e))) - return -1; + VIR_CLASS_NEW(virClassForObject(), + virNetServerProgram); =20 return 0; } diff --git a/src/rpc/virnetserverservice.c b/src/rpc/virnetserverservice.c index d2350b2b91..1acecfb4f2 100644 --- a/src/rpc/virnetserverservice.c +++ b/src/rpc/virnetserverservice.c @@ -57,11 +57,8 @@ static void virNetServerServiceDispose(void *obj); =20 static int virNetServerServiceOnceInit(void) { - if (!(virNetServerServiceClass =3D virClassNew(virClassForObject(), - "virNetServerService", - sizeof(virNetServerServic= e), - virNetServerServiceDispos= e))) - return -1; + VIR_CLASS_NEW(virClassForObject(), + virNetServerService); =20 return 0; } diff --git a/src/rpc/virnetsocket.c b/src/rpc/virnetsocket.c index f362a09555..9f40bea34b 100644 --- a/src/rpc/virnetsocket.c +++ b/src/rpc/virnetsocket.c @@ -124,11 +124,8 @@ static void virNetSocketDispose(void *obj); =20 static int virNetSocketOnceInit(void) { - if (!(virNetSocketClass =3D virClassNew(virClassForObjectLockable(), - "virNetSocket", - sizeof(virNetSocket), - virNetSocketDispose))) - return -1; + VIR_CLASS_NEW(virClassForObjectLockable(), + virNetSocket); =20 return 0; } diff --git a/src/rpc/virnetsshsession.c b/src/rpc/virnetsshsession.c index e742175654..4bfeac9b5e 100644 --- a/src/rpc/virnetsshsession.c +++ b/src/rpc/virnetsshsession.c @@ -167,11 +167,8 @@ static virClassPtr virNetSSHSessionClass; static int virNetSSHSessionOnceInit(void) { - if (!(virNetSSHSessionClass =3D virClassNew(virClassForObjectLockable(= ), - "virNetSSHSession", - sizeof(virNetSSHSession), - virNetSSHSessionDispose))) - return -1; + VIR_CLASS_NEW(virClassForObjectLockable(), + virNetSSHSession); =20 return 0; } diff --git a/src/rpc/virnettlscontext.c b/src/rpc/virnettlscontext.c index 5699eb8f24..6a2f539269 100644 --- a/src/rpc/virnettlscontext.c +++ b/src/rpc/virnettlscontext.c @@ -90,17 +90,11 @@ static void virNetTLSSessionDispose(void *obj); =20 static int virNetTLSContextOnceInit(void) { - if (!(virNetTLSContextClass =3D virClassNew(virClassForObjectLockable(= ), - "virNetTLSContext", - sizeof(virNetTLSContext), - virNetTLSContextDispose))) - return -1; + VIR_CLASS_NEW(virClassForObjectLockable(), + virNetTLSContext); =20 - if (!(virNetTLSSessionClass =3D virClassNew(virClassForObjectLockable(= ), - "virNetTLSSession", - sizeof(virNetTLSSession), - virNetTLSSessionDispose))) - return -1; + VIR_CLASS_NEW(virClassForObjectLockable(), + virNetTLSSession); =20 return 0; } diff --git a/src/security/security_manager.c b/src/security/security_manage= r.c index fdeea4d533..ee5ba78703 100644 --- a/src/security/security_manager.c +++ b/src/security/security_manager.c @@ -59,11 +59,8 @@ void virSecurityManagerDispose(void *obj) static int virSecurityManagerOnceInit(void) { - if (!(virSecurityManagerClass =3D virClassNew(virClassForObjectLockabl= e(), - "virSecurityManagerClass", - sizeof(virSecurityManager), - virSecurityManagerDispose)= )) - return -1; + VIR_CLASS_NEW(virClassForObjectLockable(), + virSecurityManager); =20 return 0; } diff --git a/src/util/virclosecallbacks.c b/src/util/virclosecallbacks.c index 49dac65892..a69d2db1d7 100644 --- a/src/util/virclosecallbacks.c +++ b/src/util/virclosecallbacks.c @@ -53,15 +53,10 @@ static void virCloseCallbacksDispose(void *obj); =20 static int virCloseCallbacksOnceInit(void) { - virCloseCallbacksClass =3D virClassNew(virClassForObjectLockable(), - "virCloseCallbacks", - sizeof(virCloseCallbacks), - virCloseCallbacksDispose); + VIR_CLASS_NEW(virClassForObjectLockable(), + virCloseCallbacks); =20 - if (!virCloseCallbacksClass) - return -1; - else - return 0; + return 0; } =20 VIR_ONCE_GLOBAL_INIT(virCloseCallbacks) diff --git a/src/util/virdnsmasq.c b/src/util/virdnsmasq.c index db5c51b6a2..836f0c537a 100644 --- a/src/util/virdnsmasq.c +++ b/src/util/virdnsmasq.c @@ -641,12 +641,8 @@ dnsmasqCapsDispose(void *obj) =20 static int dnsmasqCapsOnceInit(void) { - if (!(dnsmasqCapsClass =3D virClassNew(virClassForObject(), - "dnsmasqCaps", - sizeof(dnsmasqCaps), - dnsmasqCapsDispose))) { - return -1; - } + VIR_CLASS_NEW(virClassForObject(), + dnsmasqCaps); =20 return 0; } diff --git a/src/util/virfdstream.c b/src/util/virfdstream.c index be40379a92..0bac2d564b 100644 --- a/src/util/virfdstream.c +++ b/src/util/virfdstream.c @@ -129,11 +129,8 @@ virFDStreamDataDispose(void *obj) =20 static int virFDStreamDataOnceInit(void) { - if (!(virFDStreamDataClass =3D virClassNew(virClassForObjectLockable(), - "virFDStreamData", - sizeof(virFDStreamData), - virFDStreamDataDispose))) - return -1; + VIR_CLASS_NEW(virClassForObjectLockable(), + virFDStreamData); =20 return 0; } diff --git a/src/util/virfilecache.c b/src/util/virfilecache.c index e24eb5a68c..28e7b10ad5 100644 --- a/src/util/virfilecache.c +++ b/src/util/virfilecache.c @@ -86,11 +86,8 @@ virFileCacheDispose(void *obj) static int virFileCacheOnceInit(void) { - if (!(virFileCacheClass =3D virClassNew(virClassForObjectLockable(), - "virFileCache", - sizeof(virFileCache), - virFileCacheDispose))) - return -1; + VIR_CLASS_NEW(virClassForObjectLockable(), + virFileCache); =20 return 0; } diff --git a/src/util/virhash.c b/src/util/virhash.c index 475c2b0281..75f89d3801 100644 --- a/src/util/virhash.c +++ b/src/util/virhash.c @@ -77,15 +77,11 @@ static void virHashAtomicDispose(void *obj); =20 static int virHashAtomicOnceInit(void) { - virHashAtomicClass =3D virClassNew(virClassForObjectLockable(), - "virHashAtomic", - sizeof(virHashAtomic), - virHashAtomicDispose); - if (!virHashAtomicClass) - return -1; - else - return 0; + VIR_CLASS_NEW(virClassForObjectLockable(), + virHashAtomic); + return 0; } + VIR_ONCE_GLOBAL_INIT(virHashAtomic) =20 =20 diff --git a/src/util/virhostdev.c b/src/util/virhostdev.c index a12224c58f..09400858e0 100644 --- a/src/util/virhostdev.c +++ b/src/util/virhostdev.c @@ -120,11 +120,8 @@ static int virHostdevIsPCINodeDeviceUsed(virPCIDeviceA= ddressPtr devAddr, void *o =20 static int virHostdevManagerOnceInit(void) { - if (!(virHostdevManagerClass =3D virClassNew(virClassForObject(), - "virHostdevManager", - sizeof(virHostdevManager), - virHostdevManagerDispose))) - return -1; + VIR_CLASS_NEW(virClassForObject(), + virHostdevManager); =20 if (!(manager =3D virHostdevManagerNew())) return -1; diff --git a/src/util/viridentity.c b/src/util/viridentity.c index 52a0a30a45..ae2c22799b 100644 --- a/src/util/viridentity.c +++ b/src/util/viridentity.c @@ -54,11 +54,8 @@ static void virIdentityDispose(void *obj); =20 static int virIdentityOnceInit(void) { - if (!(virIdentityClass =3D virClassNew(virClassForObject(), - "virIdentity", - sizeof(virIdentity), - virIdentityDispose))) - return -1; + VIR_CLASS_NEW(virClassForObject(), + virIdentity); =20 if (virThreadLocalInit(&virIdentityCurrent, (virThreadLocalCleanup)virObjectUnref) < 0) { diff --git a/src/util/virmacmap.c b/src/util/virmacmap.c index 42890ba2ff..311638c536 100644 --- a/src/util/virmacmap.c +++ b/src/util/virmacmap.c @@ -74,11 +74,8 @@ virMacMapDispose(void *obj) =20 static int virMacMapOnceInit(void) { - if (!(virMacMapClass =3D virClassNew(virClassForObjectLockable(), - "virMacMapClass", - sizeof(virMacMap), - virMacMapDispose))) - return -1; + VIR_CLASS_NEW(virClassForObjectLockable(), + virMacMap); =20 return 0; } diff --git a/src/util/virmdev.c b/src/util/virmdev.c index 27541cf34f..d7e2328d0d 100644 --- a/src/util/virmdev.c +++ b/src/util/virmdev.c @@ -58,11 +58,8 @@ virMediatedDeviceListDispose(void *obj); static int virMediatedOnceInit(void) { - if (!(virMediatedDeviceListClass =3D virClassNew(virClassForObjectLock= able(), - "virMediatedDeviceList", - sizeof(virMediatedDevic= eList), - virMediatedDeviceListDi= spose))) - return -1; + VIR_CLASS_NEW(virClassForObjectLockable(), + virMediatedDeviceList); =20 return 0; } diff --git a/src/util/virobject.c b/src/util/virobject.c index 1723df6b2f..c64c400556 100644 --- a/src/util/virobject.c +++ b/src/util/virobject.c @@ -81,17 +81,11 @@ virObjectOnceInit(void) NULL))) return -1; =20 - if (!(virObjectLockableClass =3D virClassNew(virObjectClass, - "virObjectLockable", - sizeof(virObjectLockable), - virObjectLockableDispose))) - return -1; + VIR_CLASS_NEW(virObjectClass, + virObjectLockable); =20 - if (!(virObjectRWLockableClass =3D virClassNew(virObjectClass, - "virObjectRWLockable", - sizeof(virObjectRWLockabl= e), - virObjectRWLockableDispos= e))) - return -1; + VIR_CLASS_NEW(virObjectClass, + virObjectRWLockable); =20 return 0; } diff --git a/src/util/virobject.h b/src/util/virobject.h index ac6cf22f9e..128d3ba2d2 100644 --- a/src/util/virobject.h +++ b/src/util/virobject.h @@ -74,6 +74,15 @@ virClassPtr virClassForObjectRWLockable(void); # ifndef VIR_PARENT_REQUIRED # define VIR_PARENT_REQUIRED ATTRIBUTE_NONNULL(1) # endif + +# define VIR_CLASS_NEW(prnt, name) \ + if (!(name##Class =3D virClassNew(prnt, #name, sizeof(name), name##Dis= pose))) \ + return -1; + +# define VIR_CLASS_NEW_GOTO(prnt, name, label) \ + if (!(name##Class =3D virClassNew(prnt, #name, sizeof(name), name##Dis= pose))) \ + goto label; + virClassPtr virClassNew(virClassPtr parent, const char *name, diff --git a/src/util/virpci.c b/src/util/virpci.c index 55e4c3e492..0268e4bf23 100644 --- a/src/util/virpci.c +++ b/src/util/virpci.c @@ -204,11 +204,8 @@ static void virPCIDeviceListDispose(void *obj); =20 static int virPCIOnceInit(void) { - if (!(virPCIDeviceListClass =3D virClassNew(virClassForObjectLockable(= ), - "virPCIDeviceList", - sizeof(virPCIDeviceList), - virPCIDeviceListDispose))) - return -1; + VIR_CLASS_NEW(virClassForObjectLockable(), + virPCIDeviceList); =20 return 0; } diff --git a/src/util/virportallocator.c b/src/util/virportallocator.c index 25200fbbb2..33f7919c2c 100644 --- a/src/util/virportallocator.c +++ b/src/util/virportallocator.c @@ -80,11 +80,8 @@ virPortAllocatorNew(void) static int virPortAllocatorOnceInit(void) { - if (!(virPortAllocatorClass =3D virClassNew(virClassForObjectLockable(= ), - "virPortAllocator", - sizeof(virPortAllocator), - virPortAllocatorDispose))) - return -1; + VIR_CLASS_NEW(virClassForObjectLockable(), + virPortAllocator); =20 if (!(virPortAllocatorInstance =3D virPortAllocatorNew())) return -1; diff --git a/src/util/virresctrl.c b/src/util/virresctrl.c index 9639e00468..784e7d0b8b 100644 --- a/src/util/virresctrl.c +++ b/src/util/virresctrl.c @@ -133,11 +133,8 @@ virResctrlInfoDispose(void *obj) static int virResctrlInfoOnceInit(void) { - if (!(virResctrlInfoClass =3D virClassNew(virClassForObject(), - "virResctrlInfo", - sizeof(virResctrlInfo), - virResctrlInfoDispose))) - return -1; + VIR_CLASS_NEW(virClassForObject(), + virResctrlInfo); =20 return 0; } @@ -271,11 +268,8 @@ virResctrlAllocDispose(void *obj) static int virResctrlAllocOnceInit(void) { - if (!(virResctrlAllocClass =3D virClassNew(virClassForObject(), - "virResctrlAlloc", - sizeof(virResctrlAlloc), - virResctrlAllocDispose))) - return -1; + VIR_CLASS_NEW(virClassForObject(), + virResctrlAlloc); =20 return 0; } diff --git a/src/util/virscsi.c b/src/util/virscsi.c index 22f2677a3f..8a80ff6839 100644 --- a/src/util/virscsi.c +++ b/src/util/virscsi.c @@ -85,11 +85,8 @@ static void virSCSIDeviceListDispose(void *obj); static int virSCSIOnceInit(void) { - if (!(virSCSIDeviceListClass =3D virClassNew(virClassForObjectLockable= (), - "virSCSIDeviceList", - sizeof(virSCSIDeviceList), - virSCSIDeviceListDispose))) - return -1; + VIR_CLASS_NEW(virClassForObjectLockable(), + virSCSIDeviceList); =20 return 0; } diff --git a/src/util/virscsivhost.c b/src/util/virscsivhost.c index 5f176e177f..fd078dbaa3 100644 --- a/src/util/virscsivhost.c +++ b/src/util/virscsivhost.c @@ -70,11 +70,8 @@ virSCSIVHostDeviceListDispose(void *obj) static int virSCSIVHostOnceInit(void) { - if (!(virSCSIVHostDeviceListClass =3D virClassNew(virClassForObjectLoc= kable(), - "virSCSIVHostDeviceLis= t", - sizeof(virSCSIVHostDev= iceList), - virSCSIVHostDeviceList= Dispose))) - return -1; + VIR_CLASS_NEW(virClassForObjectLockable(), + virSCSIVHostDeviceList); =20 return 0; } diff --git a/src/util/virusb.c b/src/util/virusb.c index be7be5dc18..a1792b8fe3 100644 --- a/src/util/virusb.c +++ b/src/util/virusb.c @@ -80,11 +80,8 @@ static void virUSBDeviceListDispose(void *obj); =20 static int virUSBOnceInit(void) { - if (!(virUSBDeviceListClass =3D virClassNew(virClassForObjectLockable(= ), - "virUSBDeviceList", - sizeof(virUSBDeviceList), - virUSBDeviceListDispose))) - return -1; + VIR_CLASS_NEW(virClassForObjectLockable(), + virUSBDeviceList); =20 return 0; } diff --git a/src/vbox/vbox_common.c b/src/vbox/vbox_common.c index 920af4c010..7121999259 100644 --- a/src/vbox/vbox_common.c +++ b/src/vbox/vbox_common.c @@ -118,11 +118,8 @@ vboxDriverDispose(void *obj) static int vboxDriverOnceInit(void) { - if (!(vboxDriverClass =3D virClassNew(virClassForObjectLockable(), - "vboxDriver", - sizeof(vboxDriver), - vboxDriverDispose))) - return -1; + VIR_CLASS_NEW(virClassForObjectLockable(), + vboxDriver); =20 return 0; } diff --git a/src/vz/vz_driver.c b/src/vz/vz_driver.c index e51d968f28..1519c751dc 100644 --- a/src/vz/vz_driver.c +++ b/src/vz/vz_driver.c @@ -161,11 +161,8 @@ static void vzDriverDispose(void * obj) =20 static int vzDriverOnceInit(void) { - if (!(vzDriverClass =3D virClassNew(virClassForObjectLockable(), - "vzDriver", - sizeof(vzDriver), - vzDriverDispose))) - return -1; + VIR_CLASS_NEW(virClassForObjectLockable(), + vzDriver); =20 return 0; } diff --git a/tests/virfilecachetest.c b/tests/virfilecachetest.c index d4a9d598ef..7d41182939 100644 --- a/tests/virfilecachetest.c +++ b/tests/virfilecachetest.c @@ -49,11 +49,8 @@ testFileCacheObjDispose(void *opaque) static int testFileCacheObjOnceInit(void) { - if (!(testFileCacheObjClass =3D virClassNew(virClassForObject(), - "testFileCacheObj", - sizeof(testFileCacheObj), - testFileCacheObjDispose))) - return -1; + VIR_CLASS_NEW(virClassForObject(), + testFileCacheObj); =20 return 0; } --=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 11:25:24 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 1523953274920119.79236345589175; Tue, 17 Apr 2018 01:21:14 -0700 (PDT) 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 mx1.redhat.com (Postfix) with ESMTPS id 42AE85F7B5; Tue, 17 Apr 2018 08:21:12 +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 F188B17115; Tue, 17 Apr 2018 08:21:11 +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 64B844CAA2; Tue, 17 Apr 2018 08:21:11 +0000 (UTC) Received: from smtp.corp.redhat.com (int-mx04.intmail.prod.int.rdu2.redhat.com [10.11.54.4]) by lists01.pubmisc.prod.ext.phx2.redhat.com (8.13.8/8.13.8) with ESMTP id w3H8L2kM020891 for ; Tue, 17 Apr 2018 04:21:02 -0400 Received: by smtp.corp.redhat.com (Postfix) id 89F6A2026DFD; Tue, 17 Apr 2018 08:21:02 +0000 (UTC) Received: from moe.brq.redhat.com (unknown [10.43.2.192]) by smtp.corp.redhat.com (Postfix) with ESMTP id 2DC322026E04 for ; Tue, 17 Apr 2018 08:21:02 +0000 (UTC) From: Michal Privoznik To: libvir-list@redhat.com Date: Tue, 17 Apr 2018 10:20:52 +0200 Message-Id: In-Reply-To: References: In-Reply-To: References: X-Scanned-By: MIMEDefang 2.78 on 10.11.54.4 X-loop: libvir-list@redhat.com Subject: [libvirt] [PATCH v2 4/5] virobject: Check if @parent is the first member in class 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.16 X-Greylist: Sender IP whitelisted, not delayed by milter-greylist-4.5.16 (mx1.redhat.com [10.5.110.39]); Tue, 17 Apr 2018 08:21:13 +0000 (UTC) X-ZohoMail: RSF_0 Z_629925259 SPT_0 Content-Type: text/plain; charset="utf-8" Our virObject code relies heavily on the fact that the first member of the class struct is type of virObject (or some derivation of if). Let's check for that. Signed-off-by: Michal Privoznik --- src/util/virobject.h | 2 ++ 1 file changed, 2 insertions(+) diff --git a/src/util/virobject.h b/src/util/virobject.h index 128d3ba2d2..e174c17eb8 100644 --- a/src/util/virobject.h +++ b/src/util/virobject.h @@ -76,10 +76,12 @@ virClassPtr virClassForObjectRWLockable(void); # endif =20 # define VIR_CLASS_NEW(prnt, name) \ + verify(offsetof(name, parent) =3D=3D 0); \ if (!(name##Class =3D virClassNew(prnt, #name, sizeof(name), name##Dis= pose))) \ return -1; =20 # define VIR_CLASS_NEW_GOTO(prnt, name, label) \ + verify(offsetof(name, parent) =3D=3D 0); \ if (!(name##Class =3D virClassNew(prnt, #name, sizeof(name), name##Dis= pose))) \ goto label; =20 --=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 11:25:24 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 1523953277541422.0820648617232; Tue, 17 Apr 2018 01:21:17 -0700 (PDT) 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 mx1.redhat.com (Postfix) with ESMTPS id 13C548535D; Tue, 17 Apr 2018 08:21: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 D023017243; Tue, 17 Apr 2018 08:21: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 7B7614CAA8; Tue, 17 Apr 2018 08:21:15 +0000 (UTC) Received: from smtp.corp.redhat.com (int-mx04.intmail.prod.int.rdu2.redhat.com [10.11.54.4]) by lists01.pubmisc.prod.ext.phx2.redhat.com (8.13.8/8.13.8) with ESMTP id w3H8L3eT020898 for ; Tue, 17 Apr 2018 04:21:03 -0400 Received: by smtp.corp.redhat.com (Postfix) id 2EBA22026DFD; Tue, 17 Apr 2018 08:21:03 +0000 (UTC) Received: from moe.brq.redhat.com (unknown [10.43.2.192]) by smtp.corp.redhat.com (Postfix) with ESMTP id C5F2B2026E04 for ; Tue, 17 Apr 2018 08:21:02 +0000 (UTC) From: Michal Privoznik To: libvir-list@redhat.com Date: Tue, 17 Apr 2018 10:20:53 +0200 Message-Id: <7e925c8603be4f6e6fa71c539b2e067e8d56ffac.1523952966.git.mprivozn@redhat.com> In-Reply-To: References: In-Reply-To: References: X-Scanned-By: MIMEDefang 2.78 on 10.11.54.4 X-loop: libvir-list@redhat.com Subject: [libvirt] [PATCH v2 5/5] cfg.mk: Introduce syntax-check rule to prefer VIR_CLASS_NEW 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.16 X-Greylist: Sender IP whitelisted, not delayed by milter-greylist-4.5.16 (mx1.redhat.com [10.5.110.25]); Tue, 17 Apr 2018 08:21:16 +0000 (UTC) X-ZohoMail: RSF_0 Z_629925259 SPT_0 Content-Type: text/plain; charset="utf-8" Now that we have macro that does some checks lets forbid raw usage of virClassNew() in favor of VIR_CLASS_NEW(). Signed-off-by: Michal Privoznik Reviewed-by: Erik Skultety --- cfg.mk | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/cfg.mk b/cfg.mk index 4078bc2c63..902178dd1c 100644 --- a/cfg.mk +++ b/cfg.mk @@ -321,6 +321,11 @@ sc_prohibit_internal_functions: halt=3D'use VIR_ macros instead of internal functions' \ $(_sc_search_regexp) =20 +sc_prohibit_raw_virclassnew: + @prohibit=3D'virClassNew *\(' \ + halt=3D'use VIR_CLASS_NEW instead of virClassNew' \ + $(_sc_search_regexp) + # Avoid raw malloc and free, except in documentation comments. sc_prohibit_raw_allocation: @prohibit=3D'^.[^*].*\<((m|c|re)alloc|free) *\([^)]' \ @@ -1188,6 +1193,9 @@ exclude_file_name_regexp--sc_prohibit_gethostname =3D= ^src/util/vir(util|log)\.c$$ exclude_file_name_regexp--sc_prohibit_internal_functions =3D \ ^src/(util/(viralloc|virutil|virfile)\.[hc]|esx/esx_vi\.c)$$ =20 +exclude_file_name_regexp--sc_prohibit_raw_virclassnew =3D \ + ^src/util/virobject\.[hc]$$ + exclude_file_name_regexp--sc_prohibit_newline_at_end_of_diagnostic =3D \ ^src/rpc/gendispatch\.pl$$ =20 --=20 2.16.1 -- libvir-list mailing list libvir-list@redhat.com https://www.redhat.com/mailman/listinfo/libvir-list