X-Git-Url: http://git.annexia.org/?p=libguestfs.git;a=blobdiff_plain;f=python%2Fguestfs-py.c;h=6a81349b6e535c6601c8f60a5c7fa5c7f48575a1;hp=6ac3bd972895b499400de681d6469791f03fc4b0;hb=5d6b6a3fbbfea19c606b984bac9cf64b6b81cafe;hpb=c41fe04a652437c920acb0e820762c53bf44a139 diff --git a/python/guestfs-py.c b/python/guestfs-py.c index 6ac3bd9..6a81349 100644 --- a/python/guestfs-py.c +++ b/python/guestfs-py.c @@ -1179,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; @@ -4128,18 +4153,18 @@ py_guestfs_sfdisk_N (PyObject *self, PyObject *args) PyObject *py_r; int r; const char *device; - int n; + int partnum; int cyls; int heads; int sectors; const char *line; if (!PyArg_ParseTuple (args, (char *) "Osiiiis:guestfs_sfdisk_N", - &py_g, &device, &n, &cyls, &heads, §ors, &line)) + &py_g, &device, &partnum, &cyls, &heads, §ors, &line)) return NULL; g = get_handle (py_g); - r = guestfs_sfdisk_N (g, device, n, cyls, heads, sectors, line); + r = guestfs_sfdisk_N (g, device, partnum, cyls, heads, sectors, line); if (r == -1) { PyErr_SetString (PyExc_RuntimeError, guestfs_last_error (g)); return NULL; @@ -4381,6 +4406,528 @@ py_guestfs_e2fsck_f (PyObject *self, PyObject *args) 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 PyObject * +py_guestfs_wc_l (PyObject *self, PyObject *args) +{ + PyObject *py_g; + guestfs_h *g; + PyObject *py_r; + int r; + const char *path; + + if (!PyArg_ParseTuple (args, (char *) "Os:guestfs_wc_l", + &py_g, &path)) + return NULL; + g = get_handle (py_g); + + r = guestfs_wc_l (g, path); + 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_wc_w (PyObject *self, PyObject *args) +{ + PyObject *py_g; + guestfs_h *g; + PyObject *py_r; + int r; + const char *path; + + if (!PyArg_ParseTuple (args, (char *) "Os:guestfs_wc_w", + &py_g, &path)) + return NULL; + g = get_handle (py_g); + + r = guestfs_wc_w (g, path); + 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_wc_c (PyObject *self, PyObject *args) +{ + PyObject *py_g; + guestfs_h *g; + PyObject *py_r; + int r; + const char *path; + + if (!PyArg_ParseTuple (args, (char *) "Os:guestfs_wc_c", + &py_g, &path)) + return NULL; + g = get_handle (py_g); + + r = guestfs_wc_c (g, path); + 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_head (PyObject *self, PyObject *args) +{ + PyObject *py_g; + guestfs_h *g; + PyObject *py_r; + char **r; + const char *path; + + if (!PyArg_ParseTuple (args, (char *) "Os:guestfs_head", + &py_g, &path)) + return NULL; + g = get_handle (py_g); + + r = guestfs_head (g, path); + 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_head_n (PyObject *self, PyObject *args) +{ + PyObject *py_g; + guestfs_h *g; + PyObject *py_r; + char **r; + int nrlines; + const char *path; + + if (!PyArg_ParseTuple (args, (char *) "Ois:guestfs_head_n", + &py_g, &nrlines, &path)) + return NULL; + g = get_handle (py_g); + + r = guestfs_head_n (g, nrlines, path); + 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_tail (PyObject *self, PyObject *args) +{ + PyObject *py_g; + guestfs_h *g; + PyObject *py_r; + char **r; + const char *path; + + if (!PyArg_ParseTuple (args, (char *) "Os:guestfs_tail", + &py_g, &path)) + return NULL; + g = get_handle (py_g); + + r = guestfs_tail (g, path); + 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_tail_n (PyObject *self, PyObject *args) +{ + PyObject *py_g; + guestfs_h *g; + PyObject *py_r; + char **r; + int nrlines; + const char *path; + + if (!PyArg_ParseTuple (args, (char *) "Ois:guestfs_tail_n", + &py_g, &nrlines, &path)) + return NULL; + g = get_handle (py_g); + + r = guestfs_tail_n (g, nrlines, path); + 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_df (PyObject *self, PyObject *args) +{ + PyObject *py_g; + guestfs_h *g; + PyObject *py_r; + char *r; + + if (!PyArg_ParseTuple (args, (char *) "O:guestfs_df", + &py_g)) + return NULL; + g = get_handle (py_g); + + r = guestfs_df (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_df_h (PyObject *self, PyObject *args) +{ + PyObject *py_g; + guestfs_h *g; + PyObject *py_r; + char *r; + + if (!PyArg_ParseTuple (args, (char *) "O:guestfs_df_h", + &py_g)) + return NULL; + g = get_handle (py_g); + + r = guestfs_df_h (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_du (PyObject *self, PyObject *args) +{ + PyObject *py_g; + guestfs_h *g; + PyObject *py_r; + int64_t r; + const char *path; + + if (!PyArg_ParseTuple (args, (char *) "Os:guestfs_du", + &py_g, &path)) + return NULL; + g = get_handle (py_g); + + r = guestfs_du (g, path); + 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_initrd_list (PyObject *self, PyObject *args) +{ + PyObject *py_g; + guestfs_h *g; + PyObject *py_r; + char **r; + const char *path; + + if (!PyArg_ParseTuple (args, (char *) "Os:guestfs_initrd_list", + &py_g, &path)) + return NULL; + g = get_handle (py_g); + + r = guestfs_initrd_list (g, path); + 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_mount_loop (PyObject *self, PyObject *args) +{ + PyObject *py_g; + guestfs_h *g; + PyObject *py_r; + int r; + const char *file; + const char *mountpoint; + + if (!PyArg_ParseTuple (args, (char *) "Oss:guestfs_mount_loop", + &py_g, &file, &mountpoint)) + return NULL; + g = get_handle (py_g); + + r = guestfs_mount_loop (g, file, mountpoint); + 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 PyMethodDef methods[] = { { (char *) "create", py_guestfs_create, METH_VARARGS, NULL }, { (char *) "close", py_guestfs_close, METH_VARARGS, NULL }, @@ -4416,6 +4963,7 @@ static PyMethodDef methods[] = { { (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 }, @@ -4543,6 +5091,27 @@ static PyMethodDef methods[] = { { (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 }, + { (char *) "wc_l", py_guestfs_wc_l, METH_VARARGS, NULL }, + { (char *) "wc_w", py_guestfs_wc_w, METH_VARARGS, NULL }, + { (char *) "wc_c", py_guestfs_wc_c, METH_VARARGS, NULL }, + { (char *) "head", py_guestfs_head, METH_VARARGS, NULL }, + { (char *) "head_n", py_guestfs_head_n, METH_VARARGS, NULL }, + { (char *) "tail", py_guestfs_tail, METH_VARARGS, NULL }, + { (char *) "tail_n", py_guestfs_tail_n, METH_VARARGS, NULL }, + { (char *) "df", py_guestfs_df, METH_VARARGS, NULL }, + { (char *) "df_h", py_guestfs_df_h, METH_VARARGS, NULL }, + { (char *) "du", py_guestfs_du, METH_VARARGS, NULL }, + { (char *) "initrd_list", py_guestfs_initrd_list, METH_VARARGS, NULL }, + { (char *) "mount_loop", py_guestfs_mount_loop, METH_VARARGS, NULL }, { NULL, NULL, 0, NULL } };