mirror of
https://github.com/samba-team/samba.git
synced 2025-08-03 04:22:09 +03:00
add uint16 support, start to parse more of spoolss
This commit is contained in:
@ -304,3 +304,19 @@ BOOL prs_uint32s(BOOL charmode, char *name, prs_struct *ps, int depth, uint32 *d
|
||||
|
||||
return True;
|
||||
}
|
||||
|
||||
/*******************************************************************
|
||||
Stream a uint16.
|
||||
********************************************************************/
|
||||
|
||||
BOOL prs_uint16(char *name, prs_struct *ps, int depth, uint16 *data16)
|
||||
{
|
||||
char *q = prs_mem_get(ps, sizeof(uint16));
|
||||
if (q == NULL)
|
||||
return False;
|
||||
|
||||
DBG_RW_SVAL(name, depth, ps->data_offset, ps->io, ps->bigendian_data, q, *data16)
|
||||
ps->data_offset += sizeof(uint16);
|
||||
|
||||
return True;
|
||||
}
|
||||
|
@ -63,4 +63,5 @@ void dump_data(int level,char *buf1,int len);
|
||||
BOOL prs_uint16s(BOOL charmode, char *name, prs_struct *ps, int depth, uint16 *data16s, int len);
|
||||
BOOL prs_uint32s(BOOL charmode, char *name, prs_struct *ps, int depth, uint32 *data32s, int len);
|
||||
BOOL prs_pointer(char *desc, prs_struct *ps, int depth, void **p);
|
||||
BOOL prs_uint16(char *name, prs_struct *ps, int depth, uint16 *data16);
|
||||
|
||||
|
@ -1,5 +1,5 @@
|
||||
module spool
|
||||
test PRINTER_DRIVER_INFO_LEVEL_3
|
||||
test SPOOL_NOTIFY_INFO
|
||||
|
||||
struct BUFFER5 {
|
||||
.align 4;
|
||||
@ -74,3 +74,34 @@ struct PRINTER_DRIVER_INFO {
|
||||
case 6 PRINTER_DRIVER_INFO_LEVEL_6 info_6;
|
||||
}
|
||||
};
|
||||
|
||||
|
||||
struct NOTIFY_DATA_VALUE {
|
||||
uint32 value0;
|
||||
uint32 value1;
|
||||
};
|
||||
|
||||
struct NOTIFY_DATA_STRING {
|
||||
uint32 length;
|
||||
{length} uint16 string;
|
||||
};
|
||||
|
||||
struct SPOOL_NOTIFY_INFO_DATA {
|
||||
uint16 type;
|
||||
uint16 field;
|
||||
uint32 reserved;
|
||||
uint32 id;
|
||||
union enc_type *notify_data {
|
||||
case 1 NOTIFY_DATA_VALUE value;
|
||||
case 0 NOTIFY_DATA_STRING string;
|
||||
}
|
||||
uint32 size;
|
||||
uint32 enc_type;
|
||||
};
|
||||
|
||||
struct SPOOL_NOTIFY_INFO {
|
||||
uint32 version;
|
||||
uint32 flags;
|
||||
uint32 count;
|
||||
SPOOL_NOTIFY_INFO_DATA *data;
|
||||
};
|
||||
|
Reference in New Issue
Block a user