diff options
| -rw-r--r-- | librpc/gen_ndr/ndr_spoolss.c | 29 | ||||
| -rw-r--r-- | librpc/gen_ndr/spoolss.h | 11 | ||||
| -rw-r--r-- | librpc/idl/spoolss.idl | 11 | 
3 files changed, 33 insertions, 18 deletions
diff --git a/librpc/gen_ndr/ndr_spoolss.c b/librpc/gen_ndr/ndr_spoolss.c index b5d9f1739c..fedebb2d56 100644 --- a/librpc/gen_ndr/ndr_spoolss.c +++ b/librpc/gen_ndr/ndr_spoolss.c @@ -14464,7 +14464,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_OSVersion(struct ndr_pull *ndr, int  		NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->major));  		NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->minor));  		NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->build)); -		NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->unknown)); +		NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->platform_id));  		{  			uint32_t _flags_save_string = ndr->flags;  			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM); @@ -14490,7 +14490,7 @@ _PUBLIC_ void ndr_print_spoolss_OSVersion(struct ndr_print *ndr, const char *nam  	ndr_print_uint32(ndr, "major", r->major);  	ndr_print_uint32(ndr, "minor", r->minor);  	ndr_print_uint32(ndr, "build", r->build); -	ndr_print_uint32(ndr, "unknown", (ndr->flags & LIBNDR_PRINT_SET_VALUES)?2:r->unknown); +	ndr_print_uint32(ndr, "platform_id", (ndr->flags & LIBNDR_PRINT_SET_VALUES)?2:r->platform_id);  	ndr_print_string(ndr, "extra_string", r->extra_string);  	ndr->depth--;  } @@ -14520,8 +14520,11 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_OSVersionEx(struct ndr_push *ndr, in  			}  			ndr->flags = _flags_save_string;  		} -		NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->unknown2)); -		NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->unknown3)); +		NDR_CHECK(ndr_push_uint16(ndr, NDR_SCALARS, r->service_pack_major)); +		NDR_CHECK(ndr_push_uint16(ndr, NDR_SCALARS, r->service_pack_minor)); +		NDR_CHECK(ndr_push_uint16(ndr, NDR_SCALARS, r->suite_mask)); +		NDR_CHECK(ndr_push_uint8(ndr, NDR_SCALARS, r->product_type)); +		NDR_CHECK(ndr_push_uint8(ndr, NDR_SCALARS, r->reserved));  	}  	if (ndr_flags & NDR_BUFFERS) {  	} @@ -14536,7 +14539,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_OSVersionEx(struct ndr_pull *ndr, in  		NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->major));  		NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->minor));  		NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->build)); -		NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->unknown1)); +		NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->platform_id));  		{  			uint32_t _flags_save_string = ndr->flags;  			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM); @@ -14548,8 +14551,11 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_OSVersionEx(struct ndr_pull *ndr, in  			}  			ndr->flags = _flags_save_string;  		} -		NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->unknown2)); -		NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->unknown3)); +		NDR_CHECK(ndr_pull_uint16(ndr, NDR_SCALARS, &r->service_pack_major)); +		NDR_CHECK(ndr_pull_uint16(ndr, NDR_SCALARS, &r->service_pack_minor)); +		NDR_CHECK(ndr_pull_uint16(ndr, NDR_SCALARS, &r->suite_mask)); +		NDR_CHECK(ndr_pull_uint8(ndr, NDR_SCALARS, &r->product_type)); +		NDR_CHECK(ndr_pull_uint8(ndr, NDR_SCALARS, &r->reserved));  	}  	if (ndr_flags & NDR_BUFFERS) {  	} @@ -14564,10 +14570,13 @@ _PUBLIC_ void ndr_print_spoolss_OSVersionEx(struct ndr_print *ndr, const char *n  	ndr_print_uint32(ndr, "major", r->major);  	ndr_print_uint32(ndr, "minor", r->minor);  	ndr_print_uint32(ndr, "build", r->build); -	ndr_print_uint32(ndr, "unknown1", (ndr->flags & LIBNDR_PRINT_SET_VALUES)?2:r->unknown1); +	ndr_print_uint32(ndr, "platform_id", (ndr->flags & LIBNDR_PRINT_SET_VALUES)?2:r->platform_id);  	ndr_print_string(ndr, "extra_string", r->extra_string); -	ndr_print_uint32(ndr, "unknown2", r->unknown2); -	ndr_print_uint32(ndr, "unknown3", r->unknown3); +	ndr_print_uint16(ndr, "service_pack_major", r->service_pack_major); +	ndr_print_uint16(ndr, "service_pack_minor", r->service_pack_minor); +	ndr_print_uint16(ndr, "suite_mask", r->suite_mask); +	ndr_print_uint8(ndr, "product_type", r->product_type); +	ndr_print_uint8(ndr, "reserved", r->reserved);  	ndr->depth--;  } diff --git a/librpc/gen_ndr/spoolss.h b/librpc/gen_ndr/spoolss.h index 2575c4d082..1a9d393e09 100644 --- a/librpc/gen_ndr/spoolss.h +++ b/librpc/gen_ndr/spoolss.h @@ -1058,7 +1058,7 @@ struct spoolss_OSVersion {  	uint32_t major;  	uint32_t minor;  	uint32_t build; -	uint32_t unknown;/* [value(2)] */ +	uint32_t platform_id;/* [value(2)] */  	const char * extra_string;/* [subcontext_size(256),subcontext(0),flag(LIBNDR_FLAG_STR_NULLTERM)] */  }/* [gensize,public] */; @@ -1067,10 +1067,13 @@ struct spoolss_OSVersionEx {  	uint32_t major;  	uint32_t minor;  	uint32_t build; -	uint32_t unknown1;/* [value(2)] */ +	uint32_t platform_id;/* [value(2)] */  	const char * extra_string;/* [subcontext_size(256),subcontext(0),flag(LIBNDR_FLAG_STR_NULLTERM)] */ -	uint32_t unknown2; -	uint32_t unknown3; +	uint16_t service_pack_major; +	uint16_t service_pack_minor; +	uint16_t suite_mask; +	uint8_t product_type; +	uint8_t reserved;  }/* [gensize,public] */;  union spoolss_PrinterData { diff --git a/librpc/idl/spoolss.idl b/librpc/idl/spoolss.idl index acfb54f923..0c68dffcd1 100644 --- a/librpc/idl/spoolss.idl +++ b/librpc/idl/spoolss.idl @@ -1311,7 +1311,7 @@ import "misc.idl", "security.idl", "winreg.idl";  		uint32 major;  		uint32 minor;  		uint32 build; -		[value(2)] uint32 unknown; +		[value(2)] uint32 platform_id;  		[subcontext(0),subcontext_size(256)] nstring extra_string;  	} spoolss_OSVersion; @@ -1320,10 +1320,13 @@ import "misc.idl", "security.idl", "winreg.idl";  		uint32 major;  		uint32 minor;  		uint32 build; -		[value(2)] uint32 unknown1; +		[value(2)] uint32 platform_id;  		[subcontext(0),subcontext_size(256)] nstring extra_string; -		uint32 unknown2;/* service pack number? I saw 0 from w2k3 and 1 from winxp sp1*/ -		uint32 unknown3;/* hmm? w2k3: 131346(0x20112) winxp sp1: 503382272 0x1E010100 */ +		uint16 service_pack_major; +		uint16 service_pack_minor; +		uint16 suite_mask; +		uint8 product_type; +		uint8 reserved;  	} spoolss_OSVersionEx;  	typedef [nodiscriminant,public,gensize] union {  | 
