diff options
Diffstat (limited to 'source3/aparser/spool.struct')
-rw-r--r-- | source3/aparser/spool.struct | 76 |
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; + } +}; |