diff options
author | Stefan Metzmacher <metze@samba.org> | 2005-06-06 12:08:05 +0000 |
---|---|---|
committer | Gerald (Jerry) Carter <jerry@samba.org> | 2007-10-10 13:17:43 -0500 |
commit | 842383552178751c46d6f2dbe8cd7cbd38c034f7 (patch) | |
tree | 6f9d85b9a6a32665d7210759412ed35939923945 /source4 | |
parent | 8e05f12bc4a12b16cd7afa6b65c3379814216159 (diff) | |
download | samba-842383552178751c46d6f2dbe8cd7cbd38c034f7.tar.gz samba-842383552178751c46d6f2dbe8cd7cbd38c034f7.tar.bz2 samba-842383552178751c46d6f2dbe8cd7cbd38c034f7.zip |
r7331: fix parsing of spoolss_SetPrinter()
metze
(This used to be commit b0e7092bc585912882d06c56fd7a536c9b8936d6)
Diffstat (limited to 'source4')
-rw-r--r-- | source4/librpc/idl/spoolss.idl | 35 |
1 files changed, 25 insertions, 10 deletions
diff --git a/source4/librpc/idl/spoolss.idl b/source4/librpc/idl/spoolss.idl index 201226d548..2560a10524 100644 --- a/source4/librpc/idl/spoolss.idl +++ b/source4/librpc/idl/spoolss.idl @@ -279,12 +279,8 @@ /******************/ /* Function: 0x01 */ typedef struct { - uint32 foo; - } spoolss_Devmode; - - typedef struct { uint32 size; - spoolss_Devmode *devmode; + [subcontext(4),subcontext_size(size)] spoolss_DeviceMode *devmode; } spoolss_DevmodeContainer; WERROR spoolss_OpenPrinter( @@ -387,13 +383,32 @@ /******************/ /* Function: 0x07 */ + typedef [switch_type(uint32)] union { + [case(0)] spoolss_PrinterInfo0 *info0; + [case(1)] spoolss_PrinterInfo1 *info1; + [case(2)] spoolss_PrinterInfo2 *info2; + [case(3)] spoolss_PrinterInfo3 *info3; + [case(4)] spoolss_PrinterInfo4 *info4; + [case(5)] spoolss_PrinterInfo5 *info5; + [case(6)] spoolss_PrinterInfo6 *info6; + [case(7)] spoolss_PrinterInfo7 *info7; + [case(8)] spoolss_DeviceModeInfo *info8; + [case(9)] spoolss_DeviceModeInfo *info9; + [default]; + } spoolss_SetPrinterInfo; + + typedef struct { + uint32 size; + [subcontext(4),subcontext_size(size)] security_descriptor *sd; + } spoolss_SecDescContainer; + WERROR spoolss_SetPrinter( [in,ref] policy_handle *handle, - [in] uint32 level, - [in,subcontext(4),switch_is(level)] spoolss_PrinterInfo *info, - [in] spoolss_DevmodeContainer devmode_ctr, - [in,relative,subcontext(0)] security_descriptor *secdesc, - [in] spoolss_PrinterControl command + [in] uint32 level, + [in,switch_is(level)] spoolss_SetPrinterInfo info, + [in] spoolss_DevmodeContainer devmode_ctr, + [in] spoolss_SecDescContainer secdesc_ctr, + [in] spoolss_PrinterControl command ); /******************/ |