From nobody Wed Jul 16 13:12:46 2025 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 1532111715207249.26974813250956; Fri, 20 Jul 2018 11:35:15 -0700 (PDT) Received: from smtp.corp.redhat.com (int-mx01.intmail.prod.int.phx2.redhat.com [10.5.11.11]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mx1.redhat.com (Postfix) with ESMTPS id F3FAD5F7A1; Fri, 20 Jul 2018 18:35: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 52661600C6; Fri, 20 Jul 2018 18:35:12 +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 573FA18037F0; Fri, 20 Jul 2018 18:35:10 +0000 (UTC) Received: from smtp.corp.redhat.com (int-mx03.intmail.prod.int.rdu2.redhat.com [10.11.54.3]) by lists01.pubmisc.prod.ext.phx2.redhat.com (8.13.8/8.13.8) with ESMTP id w6KIZ6t0023525 for ; Fri, 20 Jul 2018 14:35:08 -0400 Received: by smtp.corp.redhat.com (Postfix) id F11FF111AF23; Fri, 20 Jul 2018 18:35:07 +0000 (UTC) Received: from unused.bos.redhat.com (unknown [10.16.197.171]) by smtp.corp.redhat.com (Postfix) with ESMTP id D1100111AF20; Fri, 20 Jul 2018 18:35:07 +0000 (UTC) From: Anya Harter To: libvir-list@redhat.com Date: Fri, 20 Jul 2018 14:34:52 -0400 Message-Id: <07d5ac1f2798825c6b2c075a40fecb9eb9806c00.1531836010.git.aharter@redhat.com> In-Reply-To: References: In-Reply-To: References: X-Scanned-By: MIMEDefang 2.78 on 10.11.54.3 X-loop: libvir-list@redhat.com Cc: phrdina@redhat.com, Anya Harter Subject: [libvirt] [dbus PATCH v2 08/17] Implement GetXMLDesc method for Interface Interface 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.11 X-Greylist: Sender IP whitelisted, not delayed by milter-greylist-4.5.16 (mx1.redhat.com [10.5.110.39]); Fri, 20 Jul 2018 18:35:14 +0000 (UTC) X-ZohoMail: RSF_0 Z_629925259 SPT_0 Content-Type: text/plain; charset="utf-8" Signed-off-by: Anya Harter Reviewed-by: Katerina Koukiou --- data/org.libvirt.Interface.xml | 6 ++++++ src/interface.c | 28 ++++++++++++++++++++++++++++ tests/test_interface.py | 4 ++++ 3 files changed, 38 insertions(+) diff --git a/data/org.libvirt.Interface.xml b/data/org.libvirt.Interface.xml index 4534b97..dc03258 100644 --- a/data/org.libvirt.Interface.xml +++ b/data/org.libvirt.Interface.xml @@ -13,6 +13,12 @@ value=3D"See https://libvirt.org/html/libvirt-libvirt-interface.ht= ml#virInterfaceDestroy"/> + + + + + diff --git a/src/interface.c b/src/interface.c index a2d1cef..fcec623 100644 --- a/src/interface.c +++ b/src/interface.c @@ -70,6 +70,33 @@ virtDBusInterfaceDestroy(GVariant *inArgs, virtDBusUtilSetLastVirtError(error); } =20 +static void +virtDBusInterfaceGetXMLDesc(GVariant *inArgs, + GUnixFDList *inFDs G_GNUC_UNUSED, + const gchar *objectPath, + gpointer userData, + GVariant **outArgs, + GUnixFDList **outFDs G_GNUC_UNUSED, + GError **error) +{ + virtDBusConnect *connect =3D userData; + g_autoptr(virInterface) interface =3D NULL; + g_autofree gchar *xml =3D NULL; + guint flags; + + g_variant_get(inArgs, "(u)", &flags); + + interface =3D virtDBusInterfaceGetVirInterface(connect, objectPath, er= ror); + if (!interface) + return; + + xml =3D virInterfaceGetXMLDesc(interface, flags); + if (!xml) + return virtDBusUtilSetLastVirtError(error); + + *outArgs =3D g_variant_new("(s)", xml); +} + static void virtDBusInterfaceUndefine(GVariant *inArgs G_GNUC_UNUSED, GUnixFDList *inFDs G_GNUC_UNUSED, @@ -97,6 +124,7 @@ static virtDBusGDBusPropertyTable virtDBusInterfacePrope= rtyTable[] =3D { static virtDBusGDBusMethodTable virtDBusInterfaceMethodTable[] =3D { { "Create", virtDBusInterfaceCreate }, { "Destroy", virtDBusInterfaceDestroy }, + { "GetXMLDesc", virtDBusInterfaceGetXMLDesc }, { "Undefine", virtDBusInterfaceUndefine }, { 0 } }; diff --git a/tests/test_interface.py b/tests/test_interface.py index 4a83672..0b5a943 100755 --- a/tests/test_interface.py +++ b/tests/test_interface.py @@ -21,5 +21,9 @@ class TestInterface(libvirttest.BaseTestClass): interface_obj.Destroy(0) interface_obj.Create(0) =20 + def test_interface_get_xml_description(self): + _,interface_obj =3D self.interface_create() + assert isinstance(interface_obj.GetXMLDesc(0), dbus.String) + if __name__ =3D=3D '__main__': libvirttest.run() --=20 2.17.1 -- libvir-list mailing list libvir-list@redhat.com https://www.redhat.com/mailman/listinfo/libvir-list