Skip to content

Commit

Permalink
python3: Add (add|remove)_device_node
Browse files Browse the repository at this point in the history
Signed-off-by: Stéphane Graber <stgraber@ubuntu.com>
Acked-by: Serge E. Hallyn <serge.hallyn@ubuntu.com>
  • Loading branch information
stgraber committed Nov 27, 2013
1 parent de86840 commit 47a611a
Showing 1 changed file with 50 additions and 0 deletions.
50 changes: 50 additions & 0 deletions src/python-lxc/lxc.c
Expand Up @@ -504,6 +504,25 @@ Container_state(Container *self, void *closure)
}

/* Container Functions */
static PyObject *
Container_add_device_node(Container *self, PyObject *args, PyObject *kwds)
{
static char *kwlist[] = {"src_path", "dest_path", NULL};
char *src_path = NULL;
char *dst_path = NULL;

if (! PyArg_ParseTupleAndKeywords(args, kwds, "s|s", kwlist,
&src_path, &dst_path))
return NULL;

if (self->container->add_device_node(self->container, src_path,
dst_path)) {
Py_RETURN_TRUE;
}

Py_RETURN_FALSE;
}

static PyObject *
Container_attach_and_possibly_wait(Container *self, PyObject *args,
PyObject *kwds, int wait)
Expand Down Expand Up @@ -929,6 +948,25 @@ Container_reboot(Container *self, PyObject *args, PyObject *kwds)
Py_RETURN_FALSE;
}

static PyObject *
Container_remove_device_node(Container *self, PyObject *args, PyObject *kwds)
{
static char *kwlist[] = {"src_path", "dest_path", NULL};
char *src_path = NULL;
char *dst_path = NULL;

if (! PyArg_ParseTupleAndKeywords(args, kwds, "s|s", kwlist,
&src_path, &dst_path))
return NULL;

if (self->container->remove_device_node(self->container, src_path,
dst_path)) {
Py_RETURN_TRUE;
}

Py_RETURN_FALSE;
}

static PyObject *
Container_save_config(Container *self, PyObject *args, PyObject *kwds)
{
Expand Down Expand Up @@ -1139,6 +1177,12 @@ static PyGetSetDef Container_getseters[] = {
};

static PyMethodDef Container_methods[] = {
{"add_device_node", (PyCFunction)Container_add_device_node,
METH_VARARGS|METH_KEYWORDS,
"add_device_node(src_path, dest_path) -> boolean\n"
"\n"
"Pass a new device to the container."
},
{"attach", (PyCFunction)Container_attach,
METH_VARARGS|METH_KEYWORDS,
"attach(run, payload) -> int\n"
Expand Down Expand Up @@ -1244,6 +1288,12 @@ static PyMethodDef Container_methods[] = {
"\n"
"Ask the container to reboot."
},
{"remove_device_node", (PyCFunction)Container_remove_device_node,
METH_VARARGS|METH_KEYWORDS,
"remove_device_node(src_path, dest_path) -> boolean\n"
"\n"
"Remove a device from the container."
},
{"save_config", (PyCFunction)Container_save_config,
METH_VARARGS|METH_KEYWORDS,
"save_config(path = DEFAULT) -> boolean\n"
Expand Down

0 comments on commit 47a611a

Please sign in to comment.