summaryrefslogtreecommitdiff
path: root/source4/scripting/swig/dcerpc.i
diff options
context:
space:
mode:
authorTim Potter <tpot@samba.org>2004-10-31 11:33:40 +0000
committerGerald (Jerry) Carter <jerry@samba.org>2007-10-10 13:05:06 -0500
commit751b412326e77ee4bea0c521906e6f83a8bedd07 (patch)
tree26a827aa52c31fd25c01c32f4bfd445584d11eda /source4/scripting/swig/dcerpc.i
parent12fb5bc0cbc8b3180d8319a169611945ae42a242 (diff)
downloadsamba-751b412326e77ee4bea0c521906e6f83a8bedd07.tar.gz
samba-751b412326e77ee4bea0c521906e6f83a8bedd07.tar.bz2
samba-751b412326e77ee4bea0c521906e6f83a8bedd07.zip
r3410: Handle conversion of DATA_BLOBs and pointers to DATA_BLOBs from python.
(This used to be commit 12e037dbe3d497aff2415c0a22fab20a7932ab7a)
Diffstat (limited to 'source4/scripting/swig/dcerpc.i')
-rw-r--r--source4/scripting/swig/dcerpc.i17
1 files changed, 17 insertions, 0 deletions
diff --git a/source4/scripting/swig/dcerpc.i b/source4/scripting/swig/dcerpc.i
index 796384d6e7..c7e2d79c12 100644
--- a/source4/scripting/swig/dcerpc.i
+++ b/source4/scripting/swig/dcerpc.i
@@ -254,6 +254,23 @@ PyObject *string_ptr_to_python(TALLOC_CTX *mem_ctx, char *obj)
#define dom_sid2_ptr_to_python dom_sid_ptr_to_python
#define dom_sid2_ptr_from_python dom_sid_ptr_from_python
+void DATA_BLOB_from_python(TALLOC_CTX *mem_ctx, DATA_BLOB *s,
+ PyObject *obj, char name)
+{
+ if (obj == NULL) {
+ PyErr_Format(PyExc_ValueError, "Expecting key %s", name);
+ return;
+ }
+
+ if (!PyString_Check(obj)) {
+ PyErr_Format(PyExc_TypeError, "Expecting string value for key '%s'", name);
+ return;
+ }
+
+ s->length = PyString_Size(obj);
+ s->data = PyString_AsString(obj);
+}
+
void DATA_BLOB_ptr_from_python(TALLOC_CTX *mem_ctx, DATA_BLOB **s,
PyObject *obj, char *name)
{