mirror of
https://gitlab.com/libvirt/libvirt-python.git
synced 2024-10-26 07:55:06 +03:00
Add support for virDomainGetLaunchSecurityInfo
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@redhat.com> Reviewed-by: Ján Tomko <jtomko@redhat.com>
This commit is contained in:
parent
a950b08317
commit
dbae262811
@ -489,6 +489,7 @@ skip_impl = (
|
||||
'virDomainSetPerfEvents',
|
||||
'virDomainGetGuestVcpus',
|
||||
'virConnectBaselineHypervisorCPU',
|
||||
'virDomainGetLaunchSecurityInfo',
|
||||
)
|
||||
|
||||
lxc_skip_impl = (
|
||||
|
@ -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'/>
|
||||
<arg name='domain' type='virDomainPtr' info='pointer to domain object'/>
|
||||
<arg name='flags' type='int' info='unused, always pass 0'/>
|
||||
</function>
|
||||
</symbols>
|
||||
</api>
|
||||
|
@ -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, ¶ms, &nparams, flags);
|
||||
LIBVIRT_END_ALLOW_THREADS;
|
||||
|
||||
if (i_retval < 0) {
|
||||
ret = VIR_PY_NONE;
|
||||
goto cleanup;
|
||||
}
|
||||
|
||||
ret = getPyVirTypedParameter(params, nparams);
|
||||
cleanup:
|
||||
virTypedParamsFree(params, nparams);
|
||||
return ret;
|
||||
}
|
||||
#endif /* LIBVIR_CHECK_VERSION(4, 5, 0) */
|
||||
|
||||
|
||||
/************************************************************************
|
||||
* *
|
||||
* The registration stuff *
|
||||
@ -9999,6 +10035,9 @@ static PyMethodDef libvirtMethods[] = {
|
||||
#if LIBVIR_CHECK_VERSION(4, 4, 0)
|
||||
{(char *) "virConnectBaselineHypervisorCPU", libvirt_virConnectBaselineHypervisorCPU, METH_VARARGS, NULL},
|
||||
#endif /* LIBVIR_CHECK_VERSION(4, 4, 0) */
|
||||
#if LIBVIR_CHECK_VERSION(4, 5, 0)
|
||||
{(char *) "virDomainGetLaunchSecurityInfo", libvirt_virDomainGetLaunchSecurityInfo, METH_VARARGS, NULL},
|
||||
#endif /* LIBVIR_CHECK_VERSION(4, 5, 0) */
|
||||
{NULL, NULL, 0, NULL}
|
||||
};
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user