From nobody Sat Feb 7 09:36:38 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.zoho.com; spf=pass (zoho.com: domain of redhat.com designates 209.132.183.28 as permitted sender) smtp.mailfrom=libvir-list-bounces@redhat.com; Return-Path: Received: from mx1.redhat.com (mx1.redhat.com [209.132.183.28]) by mx.zohomail.com with SMTPS id 1498140667229787.3770606082338; Thu, 22 Jun 2017 07:11:07 -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 AAABFC049D7F; Thu, 22 Jun 2017 14:11:03 +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 7C7E14D72B; Thu, 22 Jun 2017 14:11: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 320DF1833033; Thu, 22 Jun 2017 14:11:03 +0000 (UTC) Received: from smtp.corp.redhat.com (int-mx04.intmail.prod.int.phx2.redhat.com [10.5.11.14]) by lists01.pubmisc.prod.ext.phx2.redhat.com (8.13.8/8.13.8) with ESMTP id v5ME2tSX004507 for ; Thu, 22 Jun 2017 10:02:55 -0400 Received: by smtp.corp.redhat.com (Postfix) id 93B4A5D967; Thu, 22 Jun 2017 14:02:55 +0000 (UTC) Received: from localhost.localdomain.com (ovpn-116-36.phx2.redhat.com [10.3.116.36]) by smtp.corp.redhat.com (Postfix) with ESMTP id 53AAD5D960 for ; Thu, 22 Jun 2017 14:02:55 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.3.2 mx1.redhat.com AAABFC049D7F Authentication-Results: ext-mx07.extmail.prod.ext.phx2.redhat.com; dmarc=none (p=none dis=none) header.from=redhat.com Authentication-Results: ext-mx07.extmail.prod.ext.phx2.redhat.com; spf=pass smtp.mailfrom=libvir-list-bounces@redhat.com DKIM-Filter: OpenDKIM Filter v2.11.0 mx1.redhat.com AAABFC049D7F From: John Ferlan To: libvir-list@redhat.com Date: Thu, 22 Jun 2017 10:02:39 -0400 Message-Id: <20170622140246.31777-10-jferlan@redhat.com> In-Reply-To: <20170622140246.31777-1-jferlan@redhat.com> References: <20170622140246.31777-1-jferlan@redhat.com> X-Scanned-By: MIMEDefang 2.79 on 10.5.11.14 X-loop: libvir-list@redhat.com Subject: [libvirt] [PATCH v3 09/16] util: Introduce virObjectLoookupHashGet{UUID|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.16 X-Greylist: Sender IP whitelisted, not delayed by milter-greylist-4.5.16 (mx1.redhat.com [10.5.110.31]); Thu, 22 Jun 2017 14:11:04 +0000 (UTC) X-ZohoMail: RSF_0 Z_629925259 SPT_0 Content-Type: text/plain; charset="utf-8" Add a pair of accessor API's for the object elements which will return the requested key value from the object to the caller. It is up to the caller to check the returned key value and error if the return value is NULL. Signed-off-by: John Ferlan --- src/libvirt_private.syms | 2 ++ src/util/virobject.c | 48 ++++++++++++++++++++++++++++++++++++++++++++= ++++ src/util/virobject.h | 6 ++++++ 3 files changed, 56 insertions(+) diff --git a/src/libvirt_private.syms b/src/libvirt_private.syms index 655a8f8..28244ab 100644 --- a/src/libvirt_private.syms +++ b/src/libvirt_private.syms @@ -2286,6 +2286,8 @@ virObjectListFree; virObjectListFreeCount; virObjectLock; virObjectLockableNew; +virObjectLookupHashGetName; +virObjectLookupHashGetUUID; virObjectLookupHashNew; virObjectLookupKeysGetName; virObjectLookupKeysGetUUID; diff --git a/src/util/virobject.c b/src/util/virobject.c index 79f1fe9..949a93d 100644 --- a/src/util/virobject.c +++ b/src/util/virobject.c @@ -514,6 +514,18 @@ virObjectGetLookupKeysObj(void *anyobj) } =20 =20 +static virObjectLookupHashPtr +virObjectGetLookupHashObj(void *anyobj) +{ + if (virObjectIsClass(anyobj, virObjectLookupHashClass)) + return anyobj; + + VIR_OBJECT_USAGE_PRINT_WARNING(anyobj, virObjectLookupHashClass); + + return NULL; +} + + /** * virObjectLock: * @anyobj: any instance of virObjectLockablePtr @@ -740,3 +752,39 @@ virObjectLookupKeysGetName(void *anyobj) =20 return obj->name; } + + +/** + * virObjectLookupHashGetUUID + * @anyobj: Pointer to a LookupHash object + * + * Returns: Pointer to the UUID Hash Table or NULL on failure + */ +virHashTablePtr +virObjectLookupHashGetUUID(void *anyobj) +{ + virObjectLookupHashPtr obj =3D virObjectGetLookupHashObj(anyobj); + + if (!obj) + return NULL; + + return obj->objsUUID; +} + + +/** + * virObjectLookupHashGetName + * @anyobj: Pointer to a LookupHash object + * + * Returns: Pointer to the Name Hash Table or NULL on failure + */ +virHashTablePtr +virObjectLookupHashGetName(void *anyobj) +{ + virObjectLookupHashPtr obj =3D virObjectGetLookupHashObj(anyobj); + + if (!obj) + return NULL; + + return obj->objsName; +} diff --git a/src/util/virobject.h b/src/util/virobject.h index 3c45182..7da680a 100644 --- a/src/util/virobject.h +++ b/src/util/virobject.h @@ -179,4 +179,10 @@ virObjectLookupKeysGetUUID(void *anyobj); const char * virObjectLookupKeysGetName(void *anyobj); =20 +virHashTablePtr +virObjectLookupHashGetUUID(void *anyobj); + +virHashTablePtr +virObjectLookupHashGetName(void *anyobj); + #endif /* __VIR_OBJECT_H */ --=20 2.9.4 -- libvir-list mailing list libvir-list@redhat.com https://www.redhat.com/mailman/listinfo/libvir-list