X-Git-Url: http://git.annexia.org/?p=libguestfs.git;a=blobdiff_plain;f=python%2Fguestfs-py.c;h=263d3d9f780fed099f4da2b9dba8234de5368802;hp=cd1014fc20d58e71ae3c0bb95e48dfb807d7501e;hb=da947eadcfa1367c2d634667068db813a87a6dd1;hpb=ca49c50e06834bbc68e21630a5552c57494f2b53 diff --git a/python/guestfs-py.c b/python/guestfs-py.c index cd1014f..263d3d9 100644 --- a/python/guestfs-py.c +++ b/python/guestfs-py.c @@ -389,6 +389,674 @@ put_statvfs (struct guestfs_statvfs *statvfs) }; static PyObject * +py_guestfs_test0 (PyObject *self, PyObject *args) +{ + PyObject *py_g; + guestfs_h *g; + PyObject *py_r; + int r; + const char *str; + const char *optstr; + PyObject *py_strlist; + const char **strlist; + int b; + int integer; + const char *filein; + const char *fileout; + + if (!PyArg_ParseTuple (args, (char *) "OszOiiss:guestfs_test0", + &py_g, &str, &optstr, &py_strlist, &b, &integer, &filein, &fileout)) + return NULL; + g = get_handle (py_g); + strlist = get_string_list (py_strlist); + if (!strlist) return NULL; + + r = guestfs_test0 (g, str, optstr, strlist, b, integer, filein, fileout); + free (strlist); + if (r == -1) { + PyErr_SetString (PyExc_RuntimeError, guestfs_last_error (g)); + return NULL; + } + + Py_INCREF (Py_None); + py_r = Py_None; + return py_r; +} + +static PyObject * +py_guestfs_test0rint (PyObject *self, PyObject *args) +{ + PyObject *py_g; + guestfs_h *g; + PyObject *py_r; + int r; + const char *val; + + if (!PyArg_ParseTuple (args, (char *) "Os:guestfs_test0rint", + &py_g, &val)) + return NULL; + g = get_handle (py_g); + + r = guestfs_test0rint (g, val); + if (r == -1) { + PyErr_SetString (PyExc_RuntimeError, guestfs_last_error (g)); + return NULL; + } + + py_r = PyInt_FromLong ((long) r); + return py_r; +} + +static PyObject * +py_guestfs_test0rinterr (PyObject *self, PyObject *args) +{ + PyObject *py_g; + guestfs_h *g; + PyObject *py_r; + int r; + + if (!PyArg_ParseTuple (args, (char *) "O:guestfs_test0rinterr", + &py_g)) + return NULL; + g = get_handle (py_g); + + r = guestfs_test0rinterr (g); + if (r == -1) { + PyErr_SetString (PyExc_RuntimeError, guestfs_last_error (g)); + return NULL; + } + + py_r = PyInt_FromLong ((long) r); + return py_r; +} + +static PyObject * +py_guestfs_test0rint64 (PyObject *self, PyObject *args) +{ + PyObject *py_g; + guestfs_h *g; + PyObject *py_r; + int64_t r; + const char *val; + + if (!PyArg_ParseTuple (args, (char *) "Os:guestfs_test0rint64", + &py_g, &val)) + return NULL; + g = get_handle (py_g); + + r = guestfs_test0rint64 (g, val); + if (r == -1) { + PyErr_SetString (PyExc_RuntimeError, guestfs_last_error (g)); + return NULL; + } + + py_r = PyLong_FromLongLong (r); + return py_r; +} + +static PyObject * +py_guestfs_test0rint64err (PyObject *self, PyObject *args) +{ + PyObject *py_g; + guestfs_h *g; + PyObject *py_r; + int64_t r; + + if (!PyArg_ParseTuple (args, (char *) "O:guestfs_test0rint64err", + &py_g)) + return NULL; + g = get_handle (py_g); + + r = guestfs_test0rint64err (g); + if (r == -1) { + PyErr_SetString (PyExc_RuntimeError, guestfs_last_error (g)); + return NULL; + } + + py_r = PyLong_FromLongLong (r); + return py_r; +} + +static PyObject * +py_guestfs_test0rbool (PyObject *self, PyObject *args) +{ + PyObject *py_g; + guestfs_h *g; + PyObject *py_r; + int r; + const char *val; + + if (!PyArg_ParseTuple (args, (char *) "Os:guestfs_test0rbool", + &py_g, &val)) + return NULL; + g = get_handle (py_g); + + r = guestfs_test0rbool (g, val); + if (r == -1) { + PyErr_SetString (PyExc_RuntimeError, guestfs_last_error (g)); + return NULL; + } + + py_r = PyInt_FromLong ((long) r); + return py_r; +} + +static PyObject * +py_guestfs_test0rboolerr (PyObject *self, PyObject *args) +{ + PyObject *py_g; + guestfs_h *g; + PyObject *py_r; + int r; + + if (!PyArg_ParseTuple (args, (char *) "O:guestfs_test0rboolerr", + &py_g)) + return NULL; + g = get_handle (py_g); + + r = guestfs_test0rboolerr (g); + if (r == -1) { + PyErr_SetString (PyExc_RuntimeError, guestfs_last_error (g)); + return NULL; + } + + py_r = PyInt_FromLong ((long) r); + return py_r; +} + +static PyObject * +py_guestfs_test0rconststring (PyObject *self, PyObject *args) +{ + PyObject *py_g; + guestfs_h *g; + PyObject *py_r; + const char *r; + const char *val; + + if (!PyArg_ParseTuple (args, (char *) "Os:guestfs_test0rconststring", + &py_g, &val)) + return NULL; + g = get_handle (py_g); + + r = guestfs_test0rconststring (g, val); + if (r == NULL) { + PyErr_SetString (PyExc_RuntimeError, guestfs_last_error (g)); + return NULL; + } + + py_r = PyString_FromString (r); + return py_r; +} + +static PyObject * +py_guestfs_test0rconststringerr (PyObject *self, PyObject *args) +{ + PyObject *py_g; + guestfs_h *g; + PyObject *py_r; + const char *r; + + if (!PyArg_ParseTuple (args, (char *) "O:guestfs_test0rconststringerr", + &py_g)) + return NULL; + g = get_handle (py_g); + + r = guestfs_test0rconststringerr (g); + if (r == NULL) { + PyErr_SetString (PyExc_RuntimeError, guestfs_last_error (g)); + return NULL; + } + + py_r = PyString_FromString (r); + return py_r; +} + +static PyObject * +py_guestfs_test0rstring (PyObject *self, PyObject *args) +{ + PyObject *py_g; + guestfs_h *g; + PyObject *py_r; + char *r; + const char *val; + + if (!PyArg_ParseTuple (args, (char *) "Os:guestfs_test0rstring", + &py_g, &val)) + return NULL; + g = get_handle (py_g); + + r = guestfs_test0rstring (g, val); + if (r == NULL) { + PyErr_SetString (PyExc_RuntimeError, guestfs_last_error (g)); + return NULL; + } + + py_r = PyString_FromString (r); + free (r); + return py_r; +} + +static PyObject * +py_guestfs_test0rstringerr (PyObject *self, PyObject *args) +{ + PyObject *py_g; + guestfs_h *g; + PyObject *py_r; + char *r; + + if (!PyArg_ParseTuple (args, (char *) "O:guestfs_test0rstringerr", + &py_g)) + return NULL; + g = get_handle (py_g); + + r = guestfs_test0rstringerr (g); + if (r == NULL) { + PyErr_SetString (PyExc_RuntimeError, guestfs_last_error (g)); + return NULL; + } + + py_r = PyString_FromString (r); + free (r); + return py_r; +} + +static PyObject * +py_guestfs_test0rstringlist (PyObject *self, PyObject *args) +{ + PyObject *py_g; + guestfs_h *g; + PyObject *py_r; + char **r; + const char *val; + + if (!PyArg_ParseTuple (args, (char *) "Os:guestfs_test0rstringlist", + &py_g, &val)) + return NULL; + g = get_handle (py_g); + + r = guestfs_test0rstringlist (g, val); + if (r == NULL) { + PyErr_SetString (PyExc_RuntimeError, guestfs_last_error (g)); + return NULL; + } + + py_r = put_string_list (r); + free_strings (r); + return py_r; +} + +static PyObject * +py_guestfs_test0rstringlisterr (PyObject *self, PyObject *args) +{ + PyObject *py_g; + guestfs_h *g; + PyObject *py_r; + char **r; + + if (!PyArg_ParseTuple (args, (char *) "O:guestfs_test0rstringlisterr", + &py_g)) + return NULL; + g = get_handle (py_g); + + r = guestfs_test0rstringlisterr (g); + if (r == NULL) { + PyErr_SetString (PyExc_RuntimeError, guestfs_last_error (g)); + return NULL; + } + + py_r = put_string_list (r); + free_strings (r); + return py_r; +} + +static PyObject * +py_guestfs_test0rintbool (PyObject *self, PyObject *args) +{ + PyObject *py_g; + guestfs_h *g; + PyObject *py_r; + struct guestfs_int_bool *r; + const char *val; + + if (!PyArg_ParseTuple (args, (char *) "Os:guestfs_test0rintbool", + &py_g, &val)) + return NULL; + g = get_handle (py_g); + + r = guestfs_test0rintbool (g, val); + if (r == NULL) { + PyErr_SetString (PyExc_RuntimeError, guestfs_last_error (g)); + return NULL; + } + + py_r = PyTuple_New (2); + PyTuple_SetItem (py_r, 0, PyInt_FromLong ((long) r->i)); + PyTuple_SetItem (py_r, 1, PyInt_FromLong ((long) r->b)); + guestfs_free_int_bool (r); + return py_r; +} + +static PyObject * +py_guestfs_test0rintboolerr (PyObject *self, PyObject *args) +{ + PyObject *py_g; + guestfs_h *g; + PyObject *py_r; + struct guestfs_int_bool *r; + + if (!PyArg_ParseTuple (args, (char *) "O:guestfs_test0rintboolerr", + &py_g)) + return NULL; + g = get_handle (py_g); + + r = guestfs_test0rintboolerr (g); + if (r == NULL) { + PyErr_SetString (PyExc_RuntimeError, guestfs_last_error (g)); + return NULL; + } + + py_r = PyTuple_New (2); + PyTuple_SetItem (py_r, 0, PyInt_FromLong ((long) r->i)); + PyTuple_SetItem (py_r, 1, PyInt_FromLong ((long) r->b)); + guestfs_free_int_bool (r); + return py_r; +} + +static PyObject * +py_guestfs_test0rpvlist (PyObject *self, PyObject *args) +{ + PyObject *py_g; + guestfs_h *g; + PyObject *py_r; + struct guestfs_lvm_pv_list *r; + const char *val; + + if (!PyArg_ParseTuple (args, (char *) "Os:guestfs_test0rpvlist", + &py_g, &val)) + return NULL; + g = get_handle (py_g); + + r = guestfs_test0rpvlist (g, val); + if (r == NULL) { + PyErr_SetString (PyExc_RuntimeError, guestfs_last_error (g)); + return NULL; + } + + py_r = put_lvm_pv_list (r); + guestfs_free_lvm_pv_list (r); + return py_r; +} + +static PyObject * +py_guestfs_test0rpvlisterr (PyObject *self, PyObject *args) +{ + PyObject *py_g; + guestfs_h *g; + PyObject *py_r; + struct guestfs_lvm_pv_list *r; + + if (!PyArg_ParseTuple (args, (char *) "O:guestfs_test0rpvlisterr", + &py_g)) + return NULL; + g = get_handle (py_g); + + r = guestfs_test0rpvlisterr (g); + if (r == NULL) { + PyErr_SetString (PyExc_RuntimeError, guestfs_last_error (g)); + return NULL; + } + + py_r = put_lvm_pv_list (r); + guestfs_free_lvm_pv_list (r); + return py_r; +} + +static PyObject * +py_guestfs_test0rvglist (PyObject *self, PyObject *args) +{ + PyObject *py_g; + guestfs_h *g; + PyObject *py_r; + struct guestfs_lvm_vg_list *r; + const char *val; + + if (!PyArg_ParseTuple (args, (char *) "Os:guestfs_test0rvglist", + &py_g, &val)) + return NULL; + g = get_handle (py_g); + + r = guestfs_test0rvglist (g, val); + if (r == NULL) { + PyErr_SetString (PyExc_RuntimeError, guestfs_last_error (g)); + return NULL; + } + + py_r = put_lvm_vg_list (r); + guestfs_free_lvm_vg_list (r); + return py_r; +} + +static PyObject * +py_guestfs_test0rvglisterr (PyObject *self, PyObject *args) +{ + PyObject *py_g; + guestfs_h *g; + PyObject *py_r; + struct guestfs_lvm_vg_list *r; + + if (!PyArg_ParseTuple (args, (char *) "O:guestfs_test0rvglisterr", + &py_g)) + return NULL; + g = get_handle (py_g); + + r = guestfs_test0rvglisterr (g); + if (r == NULL) { + PyErr_SetString (PyExc_RuntimeError, guestfs_last_error (g)); + return NULL; + } + + py_r = put_lvm_vg_list (r); + guestfs_free_lvm_vg_list (r); + return py_r; +} + +static PyObject * +py_guestfs_test0rlvlist (PyObject *self, PyObject *args) +{ + PyObject *py_g; + guestfs_h *g; + PyObject *py_r; + struct guestfs_lvm_lv_list *r; + const char *val; + + if (!PyArg_ParseTuple (args, (char *) "Os:guestfs_test0rlvlist", + &py_g, &val)) + return NULL; + g = get_handle (py_g); + + r = guestfs_test0rlvlist (g, val); + if (r == NULL) { + PyErr_SetString (PyExc_RuntimeError, guestfs_last_error (g)); + return NULL; + } + + py_r = put_lvm_lv_list (r); + guestfs_free_lvm_lv_list (r); + return py_r; +} + +static PyObject * +py_guestfs_test0rlvlisterr (PyObject *self, PyObject *args) +{ + PyObject *py_g; + guestfs_h *g; + PyObject *py_r; + struct guestfs_lvm_lv_list *r; + + if (!PyArg_ParseTuple (args, (char *) "O:guestfs_test0rlvlisterr", + &py_g)) + return NULL; + g = get_handle (py_g); + + r = guestfs_test0rlvlisterr (g); + if (r == NULL) { + PyErr_SetString (PyExc_RuntimeError, guestfs_last_error (g)); + return NULL; + } + + py_r = put_lvm_lv_list (r); + guestfs_free_lvm_lv_list (r); + return py_r; +} + +static PyObject * +py_guestfs_test0rstat (PyObject *self, PyObject *args) +{ + PyObject *py_g; + guestfs_h *g; + PyObject *py_r; + struct guestfs_stat *r; + const char *val; + + if (!PyArg_ParseTuple (args, (char *) "Os:guestfs_test0rstat", + &py_g, &val)) + return NULL; + g = get_handle (py_g); + + r = guestfs_test0rstat (g, val); + if (r == NULL) { + PyErr_SetString (PyExc_RuntimeError, guestfs_last_error (g)); + return NULL; + } + + py_r = put_stat (r); + free (r); + return py_r; +} + +static PyObject * +py_guestfs_test0rstaterr (PyObject *self, PyObject *args) +{ + PyObject *py_g; + guestfs_h *g; + PyObject *py_r; + struct guestfs_stat *r; + + if (!PyArg_ParseTuple (args, (char *) "O:guestfs_test0rstaterr", + &py_g)) + return NULL; + g = get_handle (py_g); + + r = guestfs_test0rstaterr (g); + if (r == NULL) { + PyErr_SetString (PyExc_RuntimeError, guestfs_last_error (g)); + return NULL; + } + + py_r = put_stat (r); + free (r); + return py_r; +} + +static PyObject * +py_guestfs_test0rstatvfs (PyObject *self, PyObject *args) +{ + PyObject *py_g; + guestfs_h *g; + PyObject *py_r; + struct guestfs_statvfs *r; + const char *val; + + if (!PyArg_ParseTuple (args, (char *) "Os:guestfs_test0rstatvfs", + &py_g, &val)) + return NULL; + g = get_handle (py_g); + + r = guestfs_test0rstatvfs (g, val); + if (r == NULL) { + PyErr_SetString (PyExc_RuntimeError, guestfs_last_error (g)); + return NULL; + } + + py_r = put_statvfs (r); + free (r); + return py_r; +} + +static PyObject * +py_guestfs_test0rstatvfserr (PyObject *self, PyObject *args) +{ + PyObject *py_g; + guestfs_h *g; + PyObject *py_r; + struct guestfs_statvfs *r; + + if (!PyArg_ParseTuple (args, (char *) "O:guestfs_test0rstatvfserr", + &py_g)) + return NULL; + g = get_handle (py_g); + + r = guestfs_test0rstatvfserr (g); + if (r == NULL) { + PyErr_SetString (PyExc_RuntimeError, guestfs_last_error (g)); + return NULL; + } + + py_r = put_statvfs (r); + free (r); + return py_r; +} + +static PyObject * +py_guestfs_test0rhashtable (PyObject *self, PyObject *args) +{ + PyObject *py_g; + guestfs_h *g; + PyObject *py_r; + char **r; + const char *val; + + if (!PyArg_ParseTuple (args, (char *) "Os:guestfs_test0rhashtable", + &py_g, &val)) + return NULL; + g = get_handle (py_g); + + r = guestfs_test0rhashtable (g, val); + if (r == NULL) { + PyErr_SetString (PyExc_RuntimeError, guestfs_last_error (g)); + return NULL; + } + + py_r = put_table (r); + free_strings (r); + return py_r; +} + +static PyObject * +py_guestfs_test0rhashtableerr (PyObject *self, PyObject *args) +{ + PyObject *py_g; + guestfs_h *g; + PyObject *py_r; + char **r; + + if (!PyArg_ParseTuple (args, (char *) "O:guestfs_test0rhashtableerr", + &py_g)) + return NULL; + g = get_handle (py_g); + + r = guestfs_test0rhashtableerr (g); + if (r == NULL) { + PyErr_SetString (PyExc_RuntimeError, guestfs_last_error (g)); + return NULL; + } + + py_r = put_table (r); + free_strings (r); + return py_r; +} + +static PyObject * py_guestfs_launch (PyObject *self, PyObject *args) { PyObject *py_g; @@ -511,6 +1179,31 @@ py_guestfs_add_cdrom (PyObject *self, PyObject *args) } static PyObject * +py_guestfs_add_drive_ro (PyObject *self, PyObject *args) +{ + PyObject *py_g; + guestfs_h *g; + PyObject *py_r; + int r; + const char *filename; + + if (!PyArg_ParseTuple (args, (char *) "Os:guestfs_add_drive_ro", + &py_g, &filename)) + return NULL; + g = get_handle (py_g); + + r = guestfs_add_drive_ro (g, filename); + if (r == -1) { + PyErr_SetString (PyExc_RuntimeError, guestfs_last_error (g)); + return NULL; + } + + Py_INCREF (Py_None); + py_r = Py_None; + return py_r; +} + +static PyObject * py_guestfs_config (PyObject *self, PyObject *args) { PyObject *py_g; @@ -3663,14 +4356,317 @@ py_guestfs_resize2fs (PyObject *self, PyObject *args) return py_r; } +static PyObject * +py_guestfs_find (PyObject *self, PyObject *args) +{ + PyObject *py_g; + guestfs_h *g; + PyObject *py_r; + char **r; + const char *directory; + + if (!PyArg_ParseTuple (args, (char *) "Os:guestfs_find", + &py_g, &directory)) + return NULL; + g = get_handle (py_g); + + r = guestfs_find (g, directory); + if (r == NULL) { + PyErr_SetString (PyExc_RuntimeError, guestfs_last_error (g)); + return NULL; + } + + py_r = put_string_list (r); + free_strings (r); + return py_r; +} + +static PyObject * +py_guestfs_e2fsck_f (PyObject *self, PyObject *args) +{ + PyObject *py_g; + guestfs_h *g; + PyObject *py_r; + int r; + const char *device; + + if (!PyArg_ParseTuple (args, (char *) "Os:guestfs_e2fsck_f", + &py_g, &device)) + return NULL; + g = get_handle (py_g); + + r = guestfs_e2fsck_f (g, device); + if (r == -1) { + PyErr_SetString (PyExc_RuntimeError, guestfs_last_error (g)); + return NULL; + } + + Py_INCREF (Py_None); + py_r = Py_None; + return py_r; +} + +static PyObject * +py_guestfs_sleep (PyObject *self, PyObject *args) +{ + PyObject *py_g; + guestfs_h *g; + PyObject *py_r; + int r; + int secs; + + if (!PyArg_ParseTuple (args, (char *) "Oi:guestfs_sleep", + &py_g, &secs)) + return NULL; + g = get_handle (py_g); + + r = guestfs_sleep (g, secs); + if (r == -1) { + PyErr_SetString (PyExc_RuntimeError, guestfs_last_error (g)); + return NULL; + } + + Py_INCREF (Py_None); + py_r = Py_None; + return py_r; +} + +static PyObject * +py_guestfs_ntfs_3g_probe (PyObject *self, PyObject *args) +{ + PyObject *py_g; + guestfs_h *g; + PyObject *py_r; + int r; + int rw; + const char *device; + + if (!PyArg_ParseTuple (args, (char *) "Ois:guestfs_ntfs_3g_probe", + &py_g, &rw, &device)) + return NULL; + g = get_handle (py_g); + + r = guestfs_ntfs_3g_probe (g, rw, device); + if (r == -1) { + PyErr_SetString (PyExc_RuntimeError, guestfs_last_error (g)); + return NULL; + } + + py_r = PyInt_FromLong ((long) r); + return py_r; +} + +static PyObject * +py_guestfs_sh (PyObject *self, PyObject *args) +{ + PyObject *py_g; + guestfs_h *g; + PyObject *py_r; + char *r; + const char *command; + + if (!PyArg_ParseTuple (args, (char *) "Os:guestfs_sh", + &py_g, &command)) + return NULL; + g = get_handle (py_g); + + r = guestfs_sh (g, command); + if (r == NULL) { + PyErr_SetString (PyExc_RuntimeError, guestfs_last_error (g)); + return NULL; + } + + py_r = PyString_FromString (r); + free (r); + return py_r; +} + +static PyObject * +py_guestfs_sh_lines (PyObject *self, PyObject *args) +{ + PyObject *py_g; + guestfs_h *g; + PyObject *py_r; + char **r; + const char *command; + + if (!PyArg_ParseTuple (args, (char *) "Os:guestfs_sh_lines", + &py_g, &command)) + return NULL; + g = get_handle (py_g); + + r = guestfs_sh_lines (g, command); + if (r == NULL) { + PyErr_SetString (PyExc_RuntimeError, guestfs_last_error (g)); + return NULL; + } + + py_r = put_string_list (r); + free_strings (r); + return py_r; +} + +static PyObject * +py_guestfs_glob_expand (PyObject *self, PyObject *args) +{ + PyObject *py_g; + guestfs_h *g; + PyObject *py_r; + char **r; + const char *pattern; + + if (!PyArg_ParseTuple (args, (char *) "Os:guestfs_glob_expand", + &py_g, &pattern)) + return NULL; + g = get_handle (py_g); + + r = guestfs_glob_expand (g, pattern); + if (r == NULL) { + PyErr_SetString (PyExc_RuntimeError, guestfs_last_error (g)); + return NULL; + } + + py_r = put_string_list (r); + free_strings (r); + return py_r; +} + +static PyObject * +py_guestfs_scrub_device (PyObject *self, PyObject *args) +{ + PyObject *py_g; + guestfs_h *g; + PyObject *py_r; + int r; + const char *device; + + if (!PyArg_ParseTuple (args, (char *) "Os:guestfs_scrub_device", + &py_g, &device)) + return NULL; + g = get_handle (py_g); + + r = guestfs_scrub_device (g, device); + if (r == -1) { + PyErr_SetString (PyExc_RuntimeError, guestfs_last_error (g)); + return NULL; + } + + Py_INCREF (Py_None); + py_r = Py_None; + return py_r; +} + +static PyObject * +py_guestfs_scrub_file (PyObject *self, PyObject *args) +{ + PyObject *py_g; + guestfs_h *g; + PyObject *py_r; + int r; + const char *file; + + if (!PyArg_ParseTuple (args, (char *) "Os:guestfs_scrub_file", + &py_g, &file)) + return NULL; + g = get_handle (py_g); + + r = guestfs_scrub_file (g, file); + if (r == -1) { + PyErr_SetString (PyExc_RuntimeError, guestfs_last_error (g)); + return NULL; + } + + Py_INCREF (Py_None); + py_r = Py_None; + return py_r; +} + +static PyObject * +py_guestfs_scrub_freespace (PyObject *self, PyObject *args) +{ + PyObject *py_g; + guestfs_h *g; + PyObject *py_r; + int r; + const char *dir; + + if (!PyArg_ParseTuple (args, (char *) "Os:guestfs_scrub_freespace", + &py_g, &dir)) + return NULL; + g = get_handle (py_g); + + r = guestfs_scrub_freespace (g, dir); + if (r == -1) { + PyErr_SetString (PyExc_RuntimeError, guestfs_last_error (g)); + return NULL; + } + + Py_INCREF (Py_None); + py_r = Py_None; + return py_r; +} + +static PyObject * +py_guestfs_mkdtemp (PyObject *self, PyObject *args) +{ + PyObject *py_g; + guestfs_h *g; + PyObject *py_r; + char *r; + const char *template; + + if (!PyArg_ParseTuple (args, (char *) "Os:guestfs_mkdtemp", + &py_g, &template)) + return NULL; + g = get_handle (py_g); + + r = guestfs_mkdtemp (g, template); + if (r == NULL) { + PyErr_SetString (PyExc_RuntimeError, guestfs_last_error (g)); + return NULL; + } + + py_r = PyString_FromString (r); + free (r); + return py_r; +} + static PyMethodDef methods[] = { { (char *) "create", py_guestfs_create, METH_VARARGS, NULL }, { (char *) "close", py_guestfs_close, METH_VARARGS, NULL }, + { (char *) "test0", py_guestfs_test0, METH_VARARGS, NULL }, + { (char *) "test0rint", py_guestfs_test0rint, METH_VARARGS, NULL }, + { (char *) "test0rinterr", py_guestfs_test0rinterr, METH_VARARGS, NULL }, + { (char *) "test0rint64", py_guestfs_test0rint64, METH_VARARGS, NULL }, + { (char *) "test0rint64err", py_guestfs_test0rint64err, METH_VARARGS, NULL }, + { (char *) "test0rbool", py_guestfs_test0rbool, METH_VARARGS, NULL }, + { (char *) "test0rboolerr", py_guestfs_test0rboolerr, METH_VARARGS, NULL }, + { (char *) "test0rconststring", py_guestfs_test0rconststring, METH_VARARGS, NULL }, + { (char *) "test0rconststringerr", py_guestfs_test0rconststringerr, METH_VARARGS, NULL }, + { (char *) "test0rstring", py_guestfs_test0rstring, METH_VARARGS, NULL }, + { (char *) "test0rstringerr", py_guestfs_test0rstringerr, METH_VARARGS, NULL }, + { (char *) "test0rstringlist", py_guestfs_test0rstringlist, METH_VARARGS, NULL }, + { (char *) "test0rstringlisterr", py_guestfs_test0rstringlisterr, METH_VARARGS, NULL }, + { (char *) "test0rintbool", py_guestfs_test0rintbool, METH_VARARGS, NULL }, + { (char *) "test0rintboolerr", py_guestfs_test0rintboolerr, METH_VARARGS, NULL }, + { (char *) "test0rpvlist", py_guestfs_test0rpvlist, METH_VARARGS, NULL }, + { (char *) "test0rpvlisterr", py_guestfs_test0rpvlisterr, METH_VARARGS, NULL }, + { (char *) "test0rvglist", py_guestfs_test0rvglist, METH_VARARGS, NULL }, + { (char *) "test0rvglisterr", py_guestfs_test0rvglisterr, METH_VARARGS, NULL }, + { (char *) "test0rlvlist", py_guestfs_test0rlvlist, METH_VARARGS, NULL }, + { (char *) "test0rlvlisterr", py_guestfs_test0rlvlisterr, METH_VARARGS, NULL }, + { (char *) "test0rstat", py_guestfs_test0rstat, METH_VARARGS, NULL }, + { (char *) "test0rstaterr", py_guestfs_test0rstaterr, METH_VARARGS, NULL }, + { (char *) "test0rstatvfs", py_guestfs_test0rstatvfs, METH_VARARGS, NULL }, + { (char *) "test0rstatvfserr", py_guestfs_test0rstatvfserr, METH_VARARGS, NULL }, + { (char *) "test0rhashtable", py_guestfs_test0rhashtable, METH_VARARGS, NULL }, + { (char *) "test0rhashtableerr", py_guestfs_test0rhashtableerr, METH_VARARGS, NULL }, { (char *) "launch", py_guestfs_launch, METH_VARARGS, NULL }, { (char *) "wait_ready", py_guestfs_wait_ready, METH_VARARGS, NULL }, { (char *) "kill_subprocess", py_guestfs_kill_subprocess, METH_VARARGS, NULL }, { (char *) "add_drive", py_guestfs_add_drive, METH_VARARGS, NULL }, { (char *) "add_cdrom", py_guestfs_add_cdrom, METH_VARARGS, NULL }, + { (char *) "add_drive_ro", py_guestfs_add_drive_ro, METH_VARARGS, NULL }, { (char *) "config", py_guestfs_config, METH_VARARGS, NULL }, { (char *) "set_qemu", py_guestfs_set_qemu, METH_VARARGS, NULL }, { (char *) "get_qemu", py_guestfs_get_qemu, METH_VARARGS, NULL }, @@ -3796,6 +4792,17 @@ static PyMethodDef methods[] = { { (char *) "vg_activate", py_guestfs_vg_activate, METH_VARARGS, NULL }, { (char *) "lvresize", py_guestfs_lvresize, METH_VARARGS, NULL }, { (char *) "resize2fs", py_guestfs_resize2fs, METH_VARARGS, NULL }, + { (char *) "find", py_guestfs_find, METH_VARARGS, NULL }, + { (char *) "e2fsck_f", py_guestfs_e2fsck_f, METH_VARARGS, NULL }, + { (char *) "sleep", py_guestfs_sleep, METH_VARARGS, NULL }, + { (char *) "ntfs_3g_probe", py_guestfs_ntfs_3g_probe, METH_VARARGS, NULL }, + { (char *) "sh", py_guestfs_sh, METH_VARARGS, NULL }, + { (char *) "sh_lines", py_guestfs_sh_lines, METH_VARARGS, NULL }, + { (char *) "glob_expand", py_guestfs_glob_expand, METH_VARARGS, NULL }, + { (char *) "scrub_device", py_guestfs_scrub_device, METH_VARARGS, NULL }, + { (char *) "scrub_file", py_guestfs_scrub_file, METH_VARARGS, NULL }, + { (char *) "scrub_freespace", py_guestfs_scrub_freespace, METH_VARARGS, NULL }, + { (char *) "mkdtemp", py_guestfs_mkdtemp, METH_VARARGS, NULL }, { NULL, NULL, 0, NULL } };