[lxc-devel] [PATCH 7/7] python3: Add (add|remove)_device_node

Serge Hallyn serge.hallyn at ubuntu.com
Wed Nov 27 22:38:56 UTC 2013


Quoting Stéphane Graber (stgraber at ubuntu.com):
> Signed-off-by: Stéphane Graber <stgraber at ubuntu.com>

Acked-by: Serge E. Hallyn <serge.hallyn at ubuntu.com>

> ---
>  src/python-lxc/lxc.c | 50 ++++++++++++++++++++++++++++++++++++++++++++++++++
>  1 file changed, 50 insertions(+)
> 
> diff --git a/src/python-lxc/lxc.c b/src/python-lxc/lxc.c
> index 43e571d..de02d4b 100644
> --- a/src/python-lxc/lxc.c
> +++ b/src/python-lxc/lxc.c
> @@ -505,6 +505,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)
>  {
> @@ -930,6 +949,25 @@ Container_reboot(Container *self, PyObject *args, PyObject *kwds)
>  }
>  
>  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)
>  {
>      static char *kwlist[] = {"path", NULL};
> @@ -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"
> @@ -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"
> -- 
> 1.8.4.4
> 
> 
> ------------------------------------------------------------------------------
> Rapidly troubleshoot problems before they affect your business. Most IT 
> organizations don't have a clear picture of how application performance 
> affects their revenue. With AppDynamics, you get 100% visibility into your 
> Java,.NET, & PHP application. Start your 15-day FREE TRIAL of AppDynamics Pro!
> http://pubads.g.doubleclick.net/gampad/clk?id=84349351&iu=/4140/ostg.clktrk
> _______________________________________________
> Lxc-devel mailing list
> Lxc-devel at lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/lxc-devel




More information about the lxc-devel mailing list