summaryrefslogtreecommitdiff
path: root/librpc
diff options
context:
space:
mode:
authorGünther Deschner <gd@samba.org>2013-01-30 20:05:51 +0100
committerDavid Disseldorp <ddiss@samba.org>2013-05-20 18:50:00 +0200
commit69d9e3ef870fdd643bdc6fb4c893fa26d06fb2cf (patch)
tree769d27d90b32273c8d3ab8eaa582a21d11fb98f7 /librpc
parent229108e26645e121fa5ec06911f573dce8198c07 (diff)
downloadsamba-69d9e3ef870fdd643bdc6fb4c893fa26d06fb2cf.tar.gz
spoolss: add [ms_union] to spoolss.idl where appropriate.
Normally we would activate [ms_union] for the entire interface but given the fact we use this IDL file also for custom-marshalled structures we would generate union arm alignment also for the custom-marshalled unions where they are inappropriate. Thus, only enable [ms_union] only for unions that are part of the MS-RPRN IDL. Guenther Signed-off-by: Günther Deschner <gd@samba.org> Reviewed-by: David Disseldorp <ddiss@samba.org>
Diffstat (limited to 'librpc')
-rw-r--r--librpc/idl/spoolss.idl18
1 files changed, 9 insertions, 9 deletions
diff --git a/librpc/idl/spoolss.idl b/librpc/idl/spoolss.idl
index 0a3e27a0f4b..2fa2997c415 100644
--- a/librpc/idl/spoolss.idl
+++ b/librpc/idl/spoolss.idl
@@ -1053,7 +1053,7 @@ cpp_quote("#define spoolss_security_descriptor security_descriptor")
uint32 size_high;
} spoolss_SetJobInfo4;
- typedef [public] union {
+ typedef [ms_union,public] union {
[case(1)] spoolss_SetJobInfo1 *info1;
[case(2)] spoolss_SetJobInfo2 *info2;
[case(3)] spoolss_JobInfo3 *info3;
@@ -1251,7 +1251,7 @@ cpp_quote("#define spoolss_security_descriptor security_descriptor")
uint32 *devmode_ptr;
} spoolss_SetPrinterInfo9;
- typedef [switch_type(uint32)] union {
+ typedef [ms_union,switch_type(uint32)] union {
[case(0)] spoolss_SetPrinterInfo0 *info0;
[case(1)] spoolss_SetPrinterInfo1 *info1;
[case(2)] spoolss_SetPrinterInfo2 *info2;
@@ -1428,7 +1428,7 @@ cpp_quote("#define spoolss_security_descriptor security_descriptor")
hyper min_inbox_driver_ver_version;
} spoolss_AddDriverInfo8;
- typedef [switch_type(uint32)] union {
+ typedef [ms_union,switch_type(uint32)] union {
[case(1)] spoolss_AddDriverInfo1 *info1;
[case(2)] spoolss_AddDriverInfo2 *info2;
[case(3)] spoolss_AddDriverInfo3 *info3;
@@ -1746,7 +1746,7 @@ cpp_quote("#define spoolss_security_descriptor security_descriptor")
[string,charset(UTF16)] uint16 *datatype;
} spoolss_DocumentInfo1;
- typedef [switch_type(uint32)] union {
+ typedef [ms_union,switch_type(uint32)] union {
[case(1)] spoolss_DocumentInfo1 *info1;
[case(2)]; /* TODO */
[case(3)]; /* TODO */
@@ -2047,7 +2047,7 @@ cpp_quote("#define spoolss_security_descriptor security_descriptor")
uint32 lang_id;
} spoolss_AddFormInfo2;
- typedef [switch_type(uint32)] union {
+ typedef [ms_union,switch_type(uint32)] union {
[case(1)] spoolss_AddFormInfo1 *info1;
[case(2)] spoolss_AddFormInfo2 *info2;
} spoolss_AddFormInfo;
@@ -2279,7 +2279,7 @@ cpp_quote("#define spoolss_security_descriptor security_descriptor")
DATA_BLOB monitor_data; /* relative ?? */
} spoolss_SetPortInfoFF;
- typedef [switch_type(uint32)] union {
+ typedef [ms_union,switch_type(uint32)] union {
[case(1)] spoolss_SetPortInfo1 *info1;
[case(2)] spoolss_SetPortInfo2 *info2;
[case(3)] spoolss_SetPortInfo3 *info3;
@@ -2692,7 +2692,7 @@ cpp_quote("#define spoolss_security_descriptor security_descriptor")
NOTIFY_TABLE_SECURITYDESCRIPTOR = 0x0005
} spoolss_NotifyTable;
- typedef [switch_type(uint32)] union {
+ typedef [ms_union, switch_type(uint32)] union {
[case(1)] uint32 integer[2];
[case(2)] spoolss_NotifyString string;
[case(3)] spoolss_DevmodeContainer devmode;
@@ -2715,7 +2715,7 @@ cpp_quote("#define spoolss_security_descriptor security_descriptor")
[size_is(count)] spoolss_Notify notifies[];
} spoolss_NotifyInfo;
- typedef [switch_type(uint32)] union {
+ typedef [ms_union,switch_type(uint32)] union {
[case(0)] spoolss_NotifyInfo *info0;
} spoolss_ReplyPrinterInfo;
@@ -2775,7 +2775,7 @@ cpp_quote("#define spoolss_security_descriptor security_descriptor")
udlong reserved;
} spoolss_UserLevel3;
- typedef [switch_type(uint32)] union {
+ typedef [ms_union,switch_type(uint32)] union {
[case(1)] spoolss_UserLevel1 *level1;
[case(2)] spoolss_UserLevel2 *level2;
[case(3)] spoolss_UserLevel3 *level3;