-/*
+/* $Id$
* Copyright (C) 2008 Daniel Hokka Zakrisson
*
* This program is free software; you can redistribute it and/or
}
static PyObject *
-
pyvserver_get_version(PyObject UNUSED *self, PyObject UNUSED *args)
{
int ver = vc_get_version();
if (vc_virt_stat(xid, &stats) == -1)
return PyErr_SetFromErrno(PyExc_OSError);
- return Py_BuildValue("(KKIIIII(III))", stats.offset, stats.uptime,
+ return Py_BuildValue("(KKIIIIIIII)", stats.offset, stats.uptime,
stats.nr_threads, stats.nr_running,
stats.nr_uninterruptible, stats.nr_onhold,
stats.nr_forks, stats.load[0], stats.load[1],
xid_t xid;
struct vc_ctx_flags flags;
- if (!PyArg_ParseTuple(args, "I(KK)", &xid, flags.flagword, flags.mask))
+ if (!PyArg_ParseTuple(args, "I(KK)", &xid, &flags.flagword, &flags.mask))
return NULL;
if (vc_set_cflags(xid, &flags) == -1)
xid_t xid;
vc_uts_type type;
char val[65];
+ int i;
if (!PyArg_ParseTuple(args, "Ii", &xid, &type))
return NULL;
if (vc_get_vhi_name(xid, type, val, sizeof(val)) == -1)
return PyErr_SetFromErrno(PyExc_OSError);
- return Py_BuildValue("s#", val, sizeof(val));
+ for (i = sizeof(val); i > 0 && val[i - 1] == '\0'; i--)
+ ;
+
+ return Py_BuildValue("s#", val, i);
}
static PyObject *
{
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();
{
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();
char const *str; \
int len; \
struct vc_err_listparser err; \
- list_type val; \
+ list_type val = { .mask_member = 0 }; \
\
if (!PyArg_ParseTuple(args, "s#", &str, &len)) \
return NULL; \