X-Git-Url: http://git.linux-vserver.org/cgi-bin/gitweb.cgi?a=blobdiff_plain;f=python%2F_libvserver.c;h=b1eb86a8fc1a1c76b3d410e7a803e960ef9c50da;hb=10ee05c7e767344f9c263616ae45b3ff85317797;hp=448e353f3a711fc5fbf728cba0b44f50cfe6bb4c;hpb=61a95befd1830137b0d817da60869f23f63d9540;p=util-vserver.git diff --git a/python/_libvserver.c b/python/_libvserver.c index 448e353..b1eb86a 100644 --- a/python/_libvserver.c +++ b/python/_libvserver.c @@ -607,11 +607,12 @@ pyvserver_enter_namespace(PyObject UNUSED *self, PyObject *args) { xid_t xid; uint_least64_t mask; + uint32_t index; - if (!PyArg_ParseTuple(args, "IK", &xid, &mask)) + if (!PyArg_ParseTuple(args, "IKI", &xid, &mask, &index)) return NULL; - if (vc_enter_namespace(xid, mask) == -1) + if (vc_enter_namespace(xid, mask, index) == -1) return PyErr_SetFromErrno(PyExc_OSError); return NONE(); @@ -622,11 +623,12 @@ pyvserver_set_namespace(PyObject UNUSED *self, PyObject *args) { xid_t xid; uint_least64_t mask; + uint32_t index; - if (!PyArg_ParseTuple(args, "IK", &xid, &mask)) + if (!PyArg_ParseTuple(args, "IKI", &xid, &mask, &index)) return NULL; - if (vc_set_namespace(xid, mask) == -1) + if (vc_set_namespace(xid, mask, index) == -1) return PyErr_SetFromErrno(PyExc_OSError); return NONE(); @@ -785,7 +787,7 @@ pyvserver_get_sched(PyObject UNUSED *self, PyObject *args) xid_t xid; struct vc_set_sched sched; - if (!PyArg_ParseTuple(args, "I", &xid)) + if (!PyArg_ParseTuple(args, "Iii", &xid, &sched.cpu_id, &sched.bucket_id)) return NULL; if (vc_get_sched(xid, &sched) == -1) @@ -1126,6 +1128,15 @@ static PyMethodDef methods[] = { { NULL, NULL, 0, NULL } }; +static void +PyModule_AddLongLongConstant(PyObject *mod, const char *str, long long val) +{ + PyObject *o = PyLong_FromLongLong(val); + if (!o || PyModule_AddObject(mod, str, o) == -1) + /* This ought to be reported somehow... */ + return; +} + PyMODINIT_FUNC init_libvserver(void) { PyObject *mod;