summaryrefslogtreecommitdiff
path: root/source3/python/py_spoolss_printers_conv.c
diff options
context:
space:
mode:
authorTim Potter <tpot@samba.org>2002-04-18 03:35:05 +0000
committerTim Potter <tpot@samba.org>2002-04-18 03:35:05 +0000
commitb0fbd72b41dda039d4fd1036998721ee7387cd45 (patch)
treeaba55f37665e6389cc443023f86f00a55aacf829 /source3/python/py_spoolss_printers_conv.c
parenteaf7e2b374d6a77e573195da1d7617bea97b1a94 (diff)
downloadsamba-b0fbd72b41dda039d4fd1036998721ee7387cd45.tar.gz
samba-b0fbd72b41dda039d4fd1036998721ee7387cd45.tar.bz2
samba-b0fbd72b41dda039d4fd1036998721ee7387cd45.zip
Started working on setprinter code.
(This used to be commit 38d2b1794a0942ac4c2787f06bc5e546508c2515)
Diffstat (limited to 'source3/python/py_spoolss_printers_conv.c')
-rw-r--r--source3/python/py_spoolss_printers_conv.c27
1 files changed, 22 insertions, 5 deletions
diff --git a/source3/python/py_spoolss_printers_conv.c b/source3/python/py_spoolss_printers_conv.c
index 84b36ddbb2..4b78f087e6 100644
--- a/source3/python/py_spoolss_printers_conv.c
+++ b/source3/python/py_spoolss_printers_conv.c
@@ -165,9 +165,7 @@ BOOL py_to_DEVICEMODE(DEVICEMODE *devmode, PyObject *dict)
to_struct(devmode, dict, py_DEVICEMODE);
- obj = PyDict_GetItemString(dict, "private");
-
- if (!obj)
+ if (!(obj = PyDict_GetItemString(dict, "private")))
return False;
devmode->private = PyString_AsString(obj);
@@ -225,9 +223,28 @@ BOOL py_from_PRINTER_INFO_2(PyObject **dict, PRINTER_INFO_2 *info)
return True;
}
-BOOL py_to_PRINTER_INFO_2(PRINTER_INFO_2 *info, PyObject *dict)
+BOOL py_to_PRINTER_INFO_2(PRINTER_INFO_2 *info, PyObject *dict,
+ TALLOC_CTX *mem_ctx)
{
- return False;
+ PyObject *obj;
+
+ to_struct(info, dict, py_PRINTER_INFO_2);
+
+ if (!(obj = PyDict_GetItemString(dict, "security_descriptor")))
+ return False;
+
+ if (!py_to_SECDESC(&info->secdesc, obj, mem_ctx))
+ return False;
+
+ if (!(obj = PyDict_GetItemString(dict, "device_mode")))
+ return False;
+
+ info->devmode = talloc(mem_ctx, sizeof(DEVICEMODE));
+
+ if (!py_to_DEVICEMODE(info->devmode, obj))
+ return False;
+
+ return True;
}
/*