summaryrefslogtreecommitdiff
path: root/librpc
diff options
context:
space:
mode:
authorGünther Deschner <gd@samba.org>2009-02-13 18:09:26 +0100
committerGünther Deschner <gd@samba.org>2009-02-14 01:21:21 +0100
commitc302cac9d5c9eeebd567d257b11851e4e45d7144 (patch)
tree88406880ea2d93fa3cb3a3d7dd94bd660b334584 /librpc
parent6222c177bfa05f85a8d9905dfc2a468d5c037f58 (diff)
downloadsamba-c302cac9d5c9eeebd567d257b11851e4e45d7144.tar.gz
samba-c302cac9d5c9eeebd567d257b11851e4e45d7144.tar.bz2
samba-c302cac9d5c9eeebd567d257b11851e4e45d7144.zip
spoolss: fill in more levels in spoolss_UserLevel union.
Guenther
Diffstat (limited to 'librpc')
-rw-r--r--librpc/idl/spoolss.idl63
1 files changed, 59 insertions, 4 deletions
diff --git a/librpc/idl/spoolss.idl b/librpc/idl/spoolss.idl
index 3669837491..019c31da00 100644
--- a/librpc/idl/spoolss.idl
+++ b/librpc/idl/spoolss.idl
@@ -30,6 +30,42 @@ import "misc.idl", "security.idl", "winreg.idl";
[unique] spoolss_Time *time;
} spoolss_TimeCtr;
+ typedef enum {
+ PROCESSOR_ARCHITECTURE_INTEL = 0x0000,
+ PROCESSOR_ARCHITECTURE_IA64 = 0x0006,
+ PROCESSOR_ARCHITECTURE_AMD64 = 0x0009
+ } spoolss_ProcessorArchitecture;
+
+ typedef [v1_enum] enum {
+ PROCESSOR_INTEL_386 = 0x00000182,
+ PROCESSOR_INTEL_486 = 0x000001E6,
+ PROCESSOR_INTEL_PENTIUM = 0x0000024A,
+ PROCESSOR_INTEL_IA64 = 0x00000898,
+ PROCESSOR_AMD_X8664 = 0x000022A0
+ } spoolss_ProcessorType;
+
+ typedef [v1_enum] enum {
+ /* Windows 95, Windows 98, Windows Me, Windows NT4 */
+ SPOOLSS_MAJOR_VERSION_NT4_95_98_ME = 0x00000004,
+ /* Windows 2000, Windows 2003, Windows XP */
+ SPOOLSS_MAJOR_VERSION_2000_2003_XP = 0x00000005,
+ /* Windows Vista, Windows 2008 */
+ SPOOLSS_MAJOR_VERSION_2008_VISTA = 0x00000006
+ } spoolss_MajorVersion;
+
+ typedef [v1_enum] enum {
+ /* Windows 2008, Windows Vista, Windows 2000, Windows NT4, Windows 95 */
+ SPOOLSS_MINOR_VERSION_0 = 0x00000000,
+ /* Windows XP */
+ SPOOLSS_MINOR_VERSION_XP = 0x00000001,
+ /* Windows 2003, Windows XP x64 */
+ SPOOLSS_MINOR_VERSION_2003_XP64 = 0x00000002,
+ /* Windows 98 */
+ SPOOLSS_MINOR_VERSION_98 = 0x0000000a,
+ /* Windows Me */
+ SPOOLSS_MINOR_VERSION_ME = 0x0000005a
+ } spoolss_MinorVersion;
+
typedef struct {
[relative] nstring *printername;
[relative] nstring *servername;
@@ -1644,13 +1680,32 @@ import "misc.idl", "security.idl", "winreg.idl";
[string,charset(UTF16)] uint16 *client;
[string,charset(UTF16)] uint16 *user;
uint32 build;
- uint32 major;
- uint32 minor;
- uint32 processor;
+ spoolss_MajorVersion major;
+ spoolss_MinorVersion minor;
+ spoolss_ProcessorArchitecture processor;
} spoolss_UserLevel1;
- typedef union {
+ typedef struct {
+ uint32 not_used;
+ } spoolss_UserLevel2;
+
+ typedef struct {
+ uint32 size;
+ uint32 flags;
+ uint32 size2;
+ [string,charset(UTF16)] uint16 *client;
+ [string,charset(UTF16)] uint16 *user;
+ uint32 build;
+ spoolss_MajorVersion major;
+ spoolss_MinorVersion minor;
+ spoolss_ProcessorArchitecture processor;
+ udlong reserved;
+ } spoolss_UserLevel3;
+
+ typedef [switch_type(uint32)] union {
[case(1)] spoolss_UserLevel1 *level1;
+ [case(2)] spoolss_UserLevel2 *level2;
+ [case(3)] spoolss_UserLevel3 *level3;
} spoolss_UserLevel;
typedef struct {