summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorDaniel P. Berrange <berrange@redhat.com>2013-11-22 14:32:23 +0000
committerDaniel P. Berrange <berrange@redhat.com>2013-11-22 15:54:43 +0000
commit70b8c9a2a3fe293aa055fde0d8a9df13263c3fd8 (patch)
treef9dea4670dbc06a55093f9bce8b2fec625f3df75
parent45ac117cf619bed49d30d6d330fdd6cc8a4bcdbb (diff)
downloadlibvirt-python-v9-70b8c9a2a3fe293aa055fde0d8a9df13263c3fd8.tar.gz
libvirt-python-v9-70b8c9a2a3fe293aa055fde0d8a9df13263c3fd8.tar.xz
libvirt-python-v9-70b8c9a2a3fe293aa055fde0d8a9df13263c3fd8.zip
Mostly revert "python: remove virConnectGetCPUModelNames from globals"
This reverts commit 6b90d7428d72e92db292a9228c44701bfd5003c9. The original problem was that libvirt_virConnectGetCPUModelNames was listed twice in the exports table, once automatically from the generator and once from the manual override. We merely needed to list it in the skip_impl list, and not delete the manually written code entirely.
-rw-r--r--libvirt-override.c53
1 files changed, 53 insertions, 0 deletions
diff --git a/libvirt-override.c b/libvirt-override.c
index 2f520c1..c60747d 100644
--- a/libvirt-override.c
+++ b/libvirt-override.c
@@ -2277,6 +2277,58 @@ libvirt_virConnectGetVersion(PyObject *self ATTRIBUTE_UNUSED,
}
static PyObject *
+libvirt_virConnectGetCPUModelNames(PyObject *self ATTRIBUTE_UNUSED,
+ PyObject *args)
+{
+ int c_retval;
+ virConnectPtr conn;
+ PyObject *rv = NULL, *pyobj_conn;
+ char **models = NULL;
+ size_t i;
+ int flags = 0;
+ const char *arch = NULL;
+
+ if (!PyArg_ParseTuple(args, (char *)"Osi:virConnectGetCPUModelNames",
+ &pyobj_conn, &arch, &flags))
+ return NULL;
+ conn = (virConnectPtr) PyvirConnect_Get(pyobj_conn);
+
+ LIBVIRT_BEGIN_ALLOW_THREADS;
+
+ c_retval = virConnectGetCPUModelNames(conn, arch, &models, flags);
+
+ LIBVIRT_END_ALLOW_THREADS;
+
+ if (c_retval == -1)
+ return VIR_PY_INT_FAIL;
+
+ if ((rv = PyList_New(c_retval)) == NULL)
+ goto error;
+
+ for (i = 0; i < c_retval; i++) {
+ PyObject *str;
+ if ((str = PyString_FromString(models[i])) == NULL)
+ goto error;
+
+ PyList_SET_ITEM(rv, i, str);
+ }
+
+done:
+ if (models) {
+ for (i = 0; i < c_retval; i++)
+ VIR_FREE(models[i]);
+ VIR_FREE(models);
+ }
+
+ return rv;
+
+error:
+ Py_XDECREF(rv);
+ rv = VIR_PY_INT_FAIL;
+ goto done;
+}
+
+static PyObject *
libvirt_virConnectGetLibVersion(PyObject *self ATTRIBUTE_UNUSED,
PyObject *args)
{
@@ -7176,6 +7228,7 @@ static PyMethodDef libvirtMethods[] = {
#include "libvirt-export.c"
{(char *) "virGetVersion", libvirt_virGetVersion, METH_VARARGS, NULL},
{(char *) "virConnectGetVersion", libvirt_virConnectGetVersion, METH_VARARGS, NULL},
+ {(char *) "virConnectGetCPUModelNames", libvirt_virConnectGetCPUModelNames, METH_VARARGS, NULL},
{(char *) "virConnectGetLibVersion", libvirt_virConnectGetLibVersion, METH_VARARGS, NULL},
{(char *) "virConnectOpenAuth", libvirt_virConnectOpenAuth, METH_VARARGS, NULL},
{(char *) "virConnectListDomainsID", libvirt_virConnectListDomainsID, METH_VARARGS, NULL},