X-Git-Url: http://git.annexia.org/?a=blobdiff_plain;f=python%2Fguestfs-py.c;h=800d21b95a989215745662dc2ddce31ebf743079;hb=2b568496e6d571be317bcecd58785edbf5d39ba1;hp=9969c53861a227d744307b8ead4059803e2abba6;hpb=170f262f0413de843af62b968f6d12c1c476ae7f;p=libguestfs.git diff --git a/python/guestfs-py.c b/python/guestfs-py.c index 9969c53..800d21b 100644 --- a/python/guestfs-py.c +++ b/python/guestfs-py.c @@ -2536,6 +2536,136 @@ py_guestfs_download (PyObject *self, PyObject *args) return py_r; } +static PyObject * +py_guestfs_checksum (PyObject *self, PyObject *args) +{ + PyObject *py_g; + guestfs_h *g; + PyObject *py_r; + char *r; + const char *csumtype; + const char *path; + + if (!PyArg_ParseTuple (args, (char *) "Oss:guestfs_checksum", + &py_g, &csumtype, &path)) + return NULL; + g = get_handle (py_g); + + r = guestfs_checksum (g, csumtype, path); + 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_tar_in (PyObject *self, PyObject *args) +{ + PyObject *py_g; + guestfs_h *g; + PyObject *py_r; + int r; + const char *tarfile; + const char *directory; + + if (!PyArg_ParseTuple (args, (char *) "Oss:guestfs_tar_in", + &py_g, &tarfile, &directory)) + return NULL; + g = get_handle (py_g); + + r = guestfs_tar_in (g, tarfile, directory); + 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_tar_out (PyObject *self, PyObject *args) +{ + PyObject *py_g; + guestfs_h *g; + PyObject *py_r; + int r; + const char *directory; + const char *tarfile; + + if (!PyArg_ParseTuple (args, (char *) "Oss:guestfs_tar_out", + &py_g, &directory, &tarfile)) + return NULL; + g = get_handle (py_g); + + r = guestfs_tar_out (g, directory, tarfile); + 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_tgz_in (PyObject *self, PyObject *args) +{ + PyObject *py_g; + guestfs_h *g; + PyObject *py_r; + int r; + const char *tarball; + const char *directory; + + if (!PyArg_ParseTuple (args, (char *) "Oss:guestfs_tgz_in", + &py_g, &tarball, &directory)) + return NULL; + g = get_handle (py_g); + + r = guestfs_tgz_in (g, tarball, directory); + 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_tgz_out (PyObject *self, PyObject *args) +{ + PyObject *py_g; + guestfs_h *g; + PyObject *py_r; + int r; + const char *directory; + const char *tarball; + + if (!PyArg_ParseTuple (args, (char *) "Oss:guestfs_tgz_out", + &py_g, &directory, &tarball)) + return NULL; + g = get_handle (py_g); + + r = guestfs_tgz_out (g, directory, tarball); + 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 }, @@ -2625,6 +2755,11 @@ static PyMethodDef methods[] = { { (char *) "blockdev_rereadpt", py_guestfs_blockdev_rereadpt, METH_VARARGS, NULL }, { (char *) "upload", py_guestfs_upload, METH_VARARGS, NULL }, { (char *) "download", py_guestfs_download, METH_VARARGS, NULL }, + { (char *) "checksum", py_guestfs_checksum, METH_VARARGS, NULL }, + { (char *) "tar_in", py_guestfs_tar_in, METH_VARARGS, NULL }, + { (char *) "tar_out", py_guestfs_tar_out, METH_VARARGS, NULL }, + { (char *) "tgz_in", py_guestfs_tgz_in, METH_VARARGS, NULL }, + { (char *) "tgz_out", py_guestfs_tgz_out, METH_VARARGS, NULL }, { NULL, NULL, 0, NULL } };