提交 a97c6770 编写于 作者: M MATSUDA Daiki 提交者: Daniel Veillard

agent: add python module support

Add virDomainQemuAgentCommand() support function to python module.
Signed-off-by: NMATSUDA Daiki <matsudadik@intellilink.co.jp>
上级 88555379
......@@ -8,5 +8,13 @@
<arg name='cmd' type='const char *' info='the command which will be passed to QEMU monitor'/>
<arg name='flags' type='unsigned int' info='an OR&apos;ed set of virDomainQemuMonitorCommandFlags'/>
</function>
<function name='virDomainQemuAgentCommand' file='python-qemu'>
<info>Send a Guest Agent command to domain</info>
<return type='str *' info='the command output'/>
<arg name='domain' type='virDomainPtr' info='pointer to the domain'/>
<arg name='cmd' type='const char *' info='guest agent command on domain'/>
<arg name='timeout' type='int' info='timeout seconds'/>
<arg name='flags' type='unsigned int' info='execution flags'/>
</function>
</symbols>
</api>
......@@ -82,6 +82,34 @@ libvirt_qemu_virDomainQemuMonitorCommand(PyObject *self ATTRIBUTE_UNUSED,
return py_retval;
}
static PyObject *
libvirt_qemu_virDomainQemuAgentCommand(PyObject *self ATTRIBUTE_UNUSED, PyObject *args)
{
PyObject *py_retval;
char *result = NULL;
virDomainPtr domain;
PyObject *pyobj_domain;
int timeout;
unsigned int flags;
char *cmd;
if (!PyArg_ParseTuple(args, (char *)"Ozii:virDomainQemuAgentCommand",
&pyobj_domain, &cmd, &timeout, &flags))
return NULL;
domain = (virDomainPtr) PyvirDomain_Get(pyobj_domain);
if (domain == NULL)
return VIR_PY_NONE;
LIBVIRT_BEGIN_ALLOW_THREADS;
result = virDomainQemuAgentCommand(domain, cmd, timeout, flags);
LIBVIRT_END_ALLOW_THREADS;
if (!result)
return VIR_PY_NONE;
py_retval = PyString_FromString(result);
return py_retval;
}
/************************************************************************
* *
* The registration stuff *
......@@ -90,6 +118,7 @@ libvirt_qemu_virDomainQemuMonitorCommand(PyObject *self ATTRIBUTE_UNUSED,
static PyMethodDef libvirtQemuMethods[] = {
#include "libvirt-qemu-export.c"
{(char *) "virDomainQemuMonitorCommand", libvirt_qemu_virDomainQemuMonitorCommand, METH_VARARGS, NULL},
{(char *) "virDomainQemuAgentCommand", libvirt_qemu_virDomainQemuAgentCommand, METH_VARARGS, NULL},
{NULL, NULL, 0, NULL}
};
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册