search for: guestfs_int_py_get_string_list

Displaying 8 results from an estimated 8 matches for "guestfs_int_py_get_string_list".

2017 May 11
1
[PATCH] python: improve few exceptions thrown on error
...@@ -271,7 +271,7 @@ get_all_event_callbacks (guestfs_h *g, size_t *len_rtn) /* Copy them into the return array. */ r = malloc (sizeof (PyObject *) * (*len_rtn)); if (r == NULL) { - PyErr_SetNone (PyExc_MemoryError); + PyErr_NoMemory (); return NULL; } @@ -298,7 +298,7 @@ guestfs_int_py_get_string_list (PyObject *obj) assert (obj); if (!PyList_Check (obj)) { - PyErr_SetString (PyExc_RuntimeError, "expecting a list parameter"); + PyErr_SetString (PyExc_TypeError, "expecting a list parameter"); return NULL; } @@ -310,7 +310,7 @@ guestfs_int_py_get_string_...
2017 May 09
1
[PATCH v2] python: add simple wrappers for PyObject<->string functions
...iles changed, 53 insertions(+), 84 deletions(-) diff --git a/generator/python.ml b/generator/python.ml index 0162733..cf08294 100644 --- a/generator/python.ml +++ b/generator/python.ml @@ -91,6 +91,9 @@ extern PyObject *guestfs_int_py_event_to_string (PyObject *self, PyObject *args) extern char **guestfs_int_py_get_string_list (PyObject *obj); extern PyObject *guestfs_int_py_put_string_list (char * const * const argv); extern PyObject *guestfs_int_py_put_table (char * const * const argv); +extern PyObject *guestfs_int_py_fromstring (const char *str); +extern PyObject *guestfs_int_py_fromstringsize (const char *str, siz...
2017 May 09
0
[PATCH] python: add simple wrappers for PyObject<->string functions
...iles changed, 51 insertions(+), 73 deletions(-) diff --git a/generator/python.ml b/generator/python.ml index 0162733..cf08294 100644 --- a/generator/python.ml +++ b/generator/python.ml @@ -91,6 +91,9 @@ extern PyObject *guestfs_int_py_event_to_string (PyObject *self, PyObject *args) extern char **guestfs_int_py_get_string_list (PyObject *obj); extern PyObject *guestfs_int_py_put_string_list (char * const * const argv); extern PyObject *guestfs_int_py_put_table (char * const * const argv); +extern PyObject *guestfs_int_py_fromstring (const char *str); +extern PyObject *guestfs_int_py_fromstringsize (const char *str, siz...
2017 May 11
1
[PATCH v2] RHBZ#1406906: check return value of Python object functions
...; | RBufferOut _ -> pr " py_r = guestfs_int_py_fromstringsize (r, size);\n"; pr " free (r);\n"; diff --git a/python/handle.c b/python/handle.c index 88024e184..d93f2f021 100644 --- a/python/handle.c +++ b/python/handle.c @@ -324,15 +324,23 @@ guestfs_int_py_get_string_list (PyObject *obj) PyObject * guestfs_int_py_put_string_list (char * const * const argv) { - PyObject *list; + PyObject *list, *item; size_t argc, i; for (argc = 0; argv[argc] != NULL; ++argc) ; list = PyList_New (argc); + if (list == NULL) + return NULL; for (i = 0; i <...
2017 May 09
1
[PATCH] RHBZ#1406906: check return value of Python object functions
...; | RBufferOut _ -> pr " py_r = guestfs_int_py_fromstringsize (r, size);\n"; pr " free (r);\n"; diff --git a/python/handle.c b/python/handle.c index 88024e184..fa6578034 100644 --- a/python/handle.c +++ b/python/handle.c @@ -324,15 +324,23 @@ guestfs_int_py_get_string_list (PyObject *obj) PyObject * guestfs_int_py_put_string_list (char * const * const argv) { - PyObject *list; + PyObject *list, *item; size_t argc, i; for (argc = 0; argv[argc] != NULL; ++argc) ; list = PyList_New (argc); + if (list == NULL) + return NULL; for (i = 0; i <...
2017 May 06
5
[Bug 1406906] [PATCH 0/3] Fix segmentation fault in Python bindings
This series addresses the issue where non UTF8 file names in a guest image lead to libguestfs segfault with Python 3 APIs. The core issue is the APIs are not checking the return value when constructing a new PyObject. Therefore NULL pointers are added to Python collections (lists and dictionaries) crashing the application. Few notes regarding the comments on the previous patch. - Added a
2017 Apr 21
0
[PATCH 1/2] generator: Simplify the handling of string parameters.
...| OptString _ | Bool _ | Int _ | Int64 _ - | BufferIn _ | GUID _ -> () - | StringList n | DeviceList n | FilenameList n -> + | String _ | OptString _ | Bool _ | Int _ | Int64 _ + | BufferIn _ -> () + | StringList (_, n) -> pr " %s = guestfs_int_py_get_string_list (py_%s);\n" n n; pr " if (!%s) goto out;\n" n | Pointer (_, n) -> @@ -549,11 +540,9 @@ and generate_python_actions actions () = List.iter ( function - | Pathname _ | Device _ | Mountable _ - | Dev_or_Path _ | Mountable_or_Path...
2017 Apr 21
4
[PATCH 0/2] generator: Simplify the handling of string parameters.
Very large but mechanical change to the generator. Rich.