[libvirt] [libvirt-python PATCH 1/2] Add support for virDomainGetLaunchSecurityInfo

Erik Skultety eskultet at redhat.com
Wed Jun 13 08:43:08 UTC 2018


On Wed, Jun 13, 2018 at 09:02:12AM +0200, Ján Tomko wrote:
> On Tue, Jun 12, 2018 at 04:23:37PM +0200, Erik Skultety wrote:
> > Libvirt recently introduced support for getting launch security
> > parameters, most notably AMD SEV VM memory measurement. This API can't
> > be generated as it's using typed parameters which we need to allocate.
> >
> > Signed-off-by: Erik Skultety <eskultet at redhat.com>
> > ---
> > generator.py             |  1 +
> > libvirt-override-api.xml |  6 ++++++
> > libvirt-override.c       | 39 +++++++++++++++++++++++++++++++++++++++
> > 3 files changed, 46 insertions(+)
> >
> > diff --git a/generator.py b/generator.py
> > index b7d96a1..643d1b4 100755
> > --- a/generator.py
> > +++ b/generator.py
> > @@ -489,6 +489,7 @@ skip_impl = (
> >     'virDomainSetPerfEvents',
> >     'virDomainGetGuestVcpus',
> >     'virConnectBaselineHypervisorCPU',
> > +    'virDomainGetLaunchSecurityInfo',
> > )
> >
> > lxc_skip_impl = (
> > diff --git a/libvirt-override-api.xml b/libvirt-override-api.xml
> > index 36d3577..7137237 100644
> > --- a/libvirt-override-api.xml
> > +++ b/libvirt-override-api.xml
> > @@ -728,5 +728,11 @@
> >       <arg name='xmlCPUs' type='const char **' info='array of XML descriptions of CPUs'/>
> >       <arg name='flags' type='unsigned int' info='bitwise-OR of virConnectBaselineCPUFlags'/>
> >     </function>
> > +    <function name='virDomainGetLaunchSecurityInfo' file='python'>
> > +      <info>Get launch security info for a domain</info>
> > +     <return type='char *' info='None in case of error, returns a dictionary of params'/>
>
> Indentation is off.
>
> > +      <arg name='domain' type='virDomainPtr' info='pointer to domain object'/>
> > +     <arg name='flags' type='int' info='unused, always pass 0'/>
>
> Here too.
>
> > +    </function>
> >   </symbols>
> > </api>
> > diff --git a/libvirt-override.c b/libvirt-override.c
> > index 2f2c4ff..5de8693 100644
> > --- a/libvirt-override.c
> > +++ b/libvirt-override.c
> > @@ -9763,6 +9763,42 @@ libvirt_virConnectBaselineHypervisorCPU(PyObject *self ATTRIBUTE_UNUSED,
> > #endif /* LIBVIR_CHECK_VERSION(4, 4, 0) */
> >
> >
> > +#if LIBVIR_CHECK_VERSION(4, 5, 0)
> > +static PyObject *
> > +libvirt_virDomainGetLaunchSecurityInfo(PyObject *self ATTRIBUTE_UNUSED,
> > +                                       PyObject *args)
> > +{
> > +    PyObject *pyobj_dom = NULL;
> > +    PyObject *ret = NULL;
> > +
> > +    virDomainPtr dom = NULL;
> > +    virTypedParameterPtr params = NULL;
> > +    int nparams = 0;
> > +    unsigned int flags = 0;
> > +    int i_retval;
> > +
> > +    if (!PyArg_ParseTuple(args, (char *)"OI:virDomainGetLaunchSecurityInfo",
> > +                          &pyobj_dom, &flags))
> > +        return NULL;
> > +    dom = (virDomainPtr) PyvirDomain_Get(pyobj_dom);
> > +
> > +    LIBVIRT_BEGIN_ALLOW_THREADS;
> > +    i_retval = virDomainGetLaunchSecurityInfo(dom, params, nparams, flags);
>
> libvirt-override.c:9786:52: warning: passing argument 2 of ‘virDomainGetLaunchSecurityInfo’ from incompatible pointer type [-Wincompatible-pointer-types]
>     i_retval = virDomainGetLaunchSecurityInfo(dom, params, nparams, flags);
>                                                    ^~~~~~
>
> Are you sure you tried bulding it against git libvirt?

Sigh...I didn't have a freshly generated libvirt-api.xml in libvirt repo, so
python ignored it, I'll respin shortly

Erik




More information about the libvir-list mailing list