summaryrefslogtreecommitdiff
path: root/source3/aparser/spool.struct
diff options
context:
space:
mode:
Diffstat (limited to 'source3/aparser/spool.struct')
-rw-r--r--source3/aparser/spool.struct76
1 files changed, 76 insertions, 0 deletions
diff --git a/source3/aparser/spool.struct b/source3/aparser/spool.struct
new file mode 100644
index 0000000000..319a09941d
--- /dev/null
+++ b/source3/aparser/spool.struct
@@ -0,0 +1,76 @@
+module spool
+test PRINTER_DRIVER_INFO_LEVEL_3
+
+struct BUFFER5 {
+ .align 4;
+ uint32 buf_len;
+ {buf_len} uint16 buffer;
+};
+
+struct UNISTR2 {
+ .align 4;
+ uint32 max_len;
+ uint32 undoc;
+ uint32 str_len;
+ {str_len} uint16 buffer;
+};
+
+struct UINT64_S {
+ uint32 low;
+ uint32 high;
+};
+
+struct NTTIME {
+ uint32 low;
+ uint32 high;
+};
+
+struct PRINTER_DRIVER_INFO_LEVEL_3 {
+ .align 4;
+ uint32 cversion;
+ UNISTR2 *name;
+ UNISTR2 *environment;
+ UNISTR2 *driverpath;
+ UNISTR2 *datafile;
+ UNISTR2 *configfile;
+ UNISTR2 *helpfile;
+ UNISTR2 *monitorname;
+ UNISTR2 *defaultdatatype;
+ uint32 dependentfiles_len;
+ BUFFER5 *dependentfiles;
+};
+
+struct PRINTER_DRIVER_INFO_LEVEL_6 {
+ .align 4;
+ uint32 dummy1;
+ uint32 version;
+ UNISTR2 *name;
+ UNISTR2 *environment;
+ UNISTR2 *driverpath;
+ UNISTR2 *datafile;
+ UNISTR2 *configfile;
+ UNISTR2 *helpfile;
+ UNISTR2 *monitorname;
+ UNISTR2 *defaultdatatype;
+ uint32 dependentfiles_len;
+ BUFFER5 *dependentfiles;
+ uint32 previousnames_len;
+ BUFFER5 *previousnames;
+ NTTIME driverdate;
+ UINT64_S driverversion;
+ uint32 dummy4;
+ UNISTR2 *mfgname;
+ UNISTR2 *oemurl;
+ UNISTR2 *hardwareid;
+ UNISTR2 *provider;
+};
+
+
+struct PRINTER_DRIVER_INFO {
+ .align 4;
+ uint32 level;
+ union level *info {
+ case 3 PRINTER_DRIVER_INFO_LEVEL_3 info_3;
+ case 6 PRINTER_DRIVER_INFO_LEVEL_6 info_6;
+ }
+};