diff options
Diffstat (limited to 'source3/python/py_conv.c')
-rw-r--r-- | source3/python/py_conv.c | 24 |
1 files changed, 24 insertions, 0 deletions
diff --git a/source3/python/py_conv.c b/source3/python/py_conv.c index 20302c83e8..04b4194824 100644 --- a/source3/python/py_conv.c +++ b/source3/python/py_conv.c @@ -182,3 +182,27 @@ done: return result; } + +/* Convert a NULL terminated list of NULL terminated unicode strings + to a list of (char *) strings */ + +PyObject *from_unistr_list(uint16 *dependentfiles) +{ + PyObject *list; + int offset = 0; + + list = PyList_New(0); + + while (*(dependentfiles + offset) != 0) { + fstring name; + int len; + + len = rpcstr_pull(name, dependentfiles + offset, + sizeof(fstring), -1, STR_TERMINATE); + + offset += len / 2; + PyList_Append(list, PyString_FromString(name)); + } + + return list; +} |