From nobody Mon May 6 07:06:32 2024 Delivered-To: importer@patchew.org Received-SPF: pass (zohomail.com: domain of redhat.com designates 205.139.110.120 as permitted sender) client-ip=205.139.110.120; envelope-from=libvir-list-bounces@redhat.com; helo=us-smtp-1.mimecast.com; Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of redhat.com designates 205.139.110.120 as permitted sender) smtp.mailfrom=libvir-list-bounces@redhat.com; dmarc=pass(p=none dis=none) header.from=redhat.com ARC-Seal: i=1; a=rsa-sha256; t=1577980085; cv=none; d=zohomail.com; s=zohoarc; b=Au3C2SJL8VliumGnhNedNGuVdMtKRTO/lx/MfzkFNHKnwTJuZwblKQ41XDKsbaqZ2XKMfsFmq1iDhfZDLWkLDMZGVXO3/nB3gn/RmUygJJohYNfaAeqMPfaK1aEtwhwCqJ7yW5qPW+s/3nzuuP5or37g0C0cXZLNRcj95CRlAbg= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1577980085; h=Content-Type:Content-Transfer-Encoding:Date:From:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:Sender:Subject:To; bh=fvkPXyOk1xHzC1rkgEMIrIwTf2DHyutjeeeIvzPvtLc=; b=QnOMo1EzLzDJ1y6ur5kVDiPnxA1LTCCegSUSx33A+S+4lj6gkPA09T+OMlCjo+JkYGiyZCaHrFcTB9AUCDFIaqiqWJ3IUyLZVpbNkzFNSBcBYesRCKkv44hnkqLES0AUXBD7a5sRBXzJKwy9ZbpoPxb21cHvJPS+abQRPv411Vk= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of redhat.com designates 205.139.110.120 as permitted sender) smtp.mailfrom=libvir-list-bounces@redhat.com; dmarc=pass header.from= (p=none dis=none) header.from= Return-Path: Received: from us-smtp-1.mimecast.com (us-smtp-delivery-1.mimecast.com [205.139.110.120]) by mx.zohomail.com with SMTPS id 1577980085669735.7386404820126; Thu, 2 Jan 2020 07:48:05 -0800 (PST) Received: from mimecast-mx01.redhat.com (mimecast-mx01.redhat.com [209.132.183.4]) (Using TLS) by relay.mimecast.com with ESMTP id us-mta-270-xPvCchnYMnO5y-2wdY24GA-1; Thu, 02 Jan 2020 10:48:02 -0500 Received: from smtp.corp.redhat.com (int-mx07.intmail.prod.int.phx2.redhat.com [10.5.11.22]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mimecast-mx01.redhat.com (Postfix) with ESMTPS id 78477107ACCD; Thu, 2 Jan 2020 15:47:57 +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 523791081314; Thu, 2 Jan 2020 15:47:57 +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 6379981E2E; Thu, 2 Jan 2020 15:47:56 +0000 (UTC) Received: from smtp.corp.redhat.com (int-mx06.intmail.prod.int.phx2.redhat.com [10.5.11.16]) by lists01.pubmisc.prod.ext.phx2.redhat.com (8.13.8/8.13.8) with ESMTP id 002Flsdo013888 for ; Thu, 2 Jan 2020 10:47:54 -0500 Received: by smtp.corp.redhat.com (Postfix) id B345F5C545; Thu, 2 Jan 2020 15:47:54 +0000 (UTC) Received: from domokun.gsslab.fab.redhat.com (dhcp-46.gsslab.fab.redhat.com [10.33.9.46]) by smtp.corp.redhat.com (Postfix) with ESMTP id 22DE55C548; Thu, 2 Jan 2020 15:47:51 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1577980084; h=from:from:sender:sender:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:mime-version:mime-version: content-type:content-type: content-transfer-encoding:content-transfer-encoding:list-id:list-help: list-unsubscribe:list-subscribe:list-post; bh=fvkPXyOk1xHzC1rkgEMIrIwTf2DHyutjeeeIvzPvtLc=; b=JgXuE2dxiUnoS0T90AetPoEdtouVharUllcY8qvt/mmDlB+bHg1tJI+W8kALMI+x+r/ch8 lY5gJiQ/WNHezsuOUlSvCdqWwLlETIr/++3xiapeMYZiz30TbNsdHbZQOyNCswSQBouFxb jm4ilSPOoj/ImsRrW1t5MIDvo2h0E1w= From: =?UTF-8?q?Daniel=20P=2E=20Berrang=C3=A9?= To: libvir-list@redhat.com Date: Thu, 2 Jan 2020 15:47:50 +0000 Message-Id: <20200102154750.159207-1-berrange@redhat.com> MIME-Version: 1.0 X-Scanned-By: MIMEDefang 2.79 on 10.5.11.16 X-loop: libvir-list@redhat.com Subject: [libvirt] [PATCH] Add overrides for network port UUID getter/lookup methods X-BeenThere: libvir-list@redhat.com X-Mailman-Version: 2.1.12 Precedence: junk List-Id: Development discussions about the libvirt library & tools List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: libvir-list-bounces@redhat.com Errors-To: libvir-list-bounces@redhat.com X-Scanned-By: MIMEDefang 2.84 on 10.5.11.22 X-MC-Unique: xPvCchnYMnO5y-2wdY24GA-1 X-Mimecast-Spam-Score: 0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable X-ZohoMail-DKIM: pass (identity @redhat.com) The generator creates broken code for all these methods. Signed-off-by: Daniel P. Berrang=C3=A9 --- generator.py | 3 ++ libvirt-override-api.xml | 16 ++++++++ libvirt-override.c | 83 ++++++++++++++++++++++++++++++++++++++++ 3 files changed, 102 insertions(+) diff --git a/generator.py b/generator.py index cba9d47..426f007 100755 --- a/generator.py +++ b/generator.py @@ -430,6 +430,9 @@ skip_impl =3D ( 'virNetworkGetUUID', 'virNetworkGetUUIDString', 'virNetworkLookupByUUID', + 'virNetworkPortGetUUID', + 'virNetworkPortGetUUIDString', + 'virNetworkPortLookupByUUID', 'virDomainGetAutostart', 'virNetworkGetAutostart', 'virDomainBlockStats', diff --git a/libvirt-override-api.xml b/libvirt-override-api.xml index 7a0d4c5..4ab403c 100644 --- a/libvirt-override-api.xml +++ b/libvirt-override-api.xml @@ -64,6 +64,12 @@ + + Try to lookup a port on the given network based on its UUID. + + + + Extract information about a domain. Note that if the connectio= n used to get the domain is limited only a partial set of the information c= an be extracted. @@ -153,6 +159,16 @@ + + Extract the UUID unique Identifier of a network port. + + + + + Fetch globally unique ID of the network port as a string. + + + Extract the UUID unique Identifier of a storage pool. diff --git a/libvirt-override.c b/libvirt-override.c index 4e4c00a..2b39ace 100644 --- a/libvirt-override.c +++ b/libvirt-override.c @@ -10185,6 +10185,86 @@ libvirt_virNetworkPortGetParameters(PyObject *self= ATTRIBUTE_UNUSED, virTypedParamsFree(params, nparams); return dict; } + +static PyObject * +libvirt_virNetworkPortGetUUID(PyObject *self ATTRIBUTE_UNUSED, + PyObject *args) +{ + unsigned char uuid[VIR_UUID_BUFLEN]; + virNetworkPortPtr port; + PyObject *pyobj_port; + int c_retval; + + if (!PyArg_ParseTuple(args, (char *)"O:virNetworkPortGetUUID", &pyobj_= port)) + return NULL; + port =3D (virNetworkPortPtr) PyvirNetworkPort_Get(pyobj_port); + + if (port =3D=3D NULL) + return VIR_PY_NONE; + + LIBVIRT_BEGIN_ALLOW_THREADS; + c_retval =3D virNetworkPortGetUUID(port, &uuid[0]); + LIBVIRT_END_ALLOW_THREADS; + + if (c_retval < 0) + return VIR_PY_NONE; + + return libvirt_charPtrSizeWrap((char *) &uuid[0], VIR_UUID_BUFLEN); +} + +static PyObject * +libvirt_virNetworkPortGetUUIDString(PyObject *self ATTRIBUTE_UNUSED, + PyObject *args) +{ + char uuidstr[VIR_UUID_STRING_BUFLEN]; + virNetworkPortPtr port; + PyObject *pyobj_port; + int c_retval; + + if (!PyArg_ParseTuple(args, (char *)"O:virNetworkPortGetUUIDString", + &pyobj_port)) + return NULL; + port =3D (virNetworkPortPtr) PyvirNetworkPort_Get(pyobj_port); + + if (port =3D=3D NULL) + return VIR_PY_NONE; + + LIBVIRT_BEGIN_ALLOW_THREADS; + c_retval =3D virNetworkPortGetUUIDString(port, &uuidstr[0]); + LIBVIRT_END_ALLOW_THREADS; + + if (c_retval < 0) + return VIR_PY_NONE; + + return libvirt_constcharPtrWrap((char *) &uuidstr[0]); +} + +static PyObject * +libvirt_virNetworkPortLookupByUUID(PyObject *self ATTRIBUTE_UNUSED, + PyObject *args) +{ + virNetworkPortPtr c_retval; + virNetworkPtr net; + PyObject *pyobj_net; + unsigned char *uuid; + int len; + + if (!PyArg_ParseTuple(args, (char *)"Oz#:virNetworkPortLookupByUUID", + &pyobj_net, &uuid, &len)) + return NULL; + net =3D (virNetworkPtr) PyvirNetwork_Get(pyobj_net); + + if ((uuid =3D=3D NULL) || (len !=3D VIR_UUID_BUFLEN)) + return VIR_PY_NONE; + + LIBVIRT_BEGIN_ALLOW_THREADS; + c_retval =3D virNetworkPortLookupByUUID(net, uuid); + LIBVIRT_END_ALLOW_THREADS; + + return libvirt_virNetworkPortPtrWrap((virNetworkPortPtr) c_retval); +} + + #endif /* LIBVIR_CHECK_VERSION(5, 5, 0) */ =20 #if LIBVIR_CHECK_VERSION(5, 7, 0) @@ -10535,6 +10615,9 @@ static PyMethodDef libvirtMethods[] =3D { {(char *) "virNetworkListAllPorts", libvirt_virNetworkListAllPorts, ME= TH_VARARGS, NULL}, {(char *) "virNetworkPortSetParameters", libvirt_virNetworkPortSetPara= meters, METH_VARARGS, NULL}, {(char *) "virNetworkPortGetParameters", libvirt_virNetworkPortGetPara= meters, METH_VARARGS, NULL}, + {(char *) "virNetworkPortGetUUID", libvirt_virNetworkPortGetUUID, METH= _VARARGS, NULL}, + {(char *) "virNetworkPortGetUUIDString", libvirt_virNetworkPortGetUUID= String, METH_VARARGS, NULL}, + {(char *) "virNetworkPortLookupByUUID", libvirt_virNetworkPortLookupBy= UUID, METH_VARARGS, NULL}, #endif /* LIBVIR_CHECK_VERSION(5, 5, 0) */ #if LIBVIR_CHECK_VERSION(5, 7, 0) {(char *) "virDomainGetGuestInfo", libvirt_virDomainGetGuestInfo, METH= _VARARGS, NULL}, --=20 2.24.1 -- libvir-list mailing list libvir-list@redhat.com https://www.redhat.com/mailman/listinfo/libvir-list