svn commit: samba r7331 - in branches/SAMBA_4_0/source/librpc/idl: .

metze at samba.org metze at samba.org
Mon Jun 6 12:08:05 GMT 2005


Author: metze
Date: 2005-06-06 12:08:05 +0000 (Mon, 06 Jun 2005)
New Revision: 7331

WebSVN: http://websvn.samba.org/cgi-bin/viewcvs.cgi?view=rev&root=samba&rev=7331

Log:
fix parsing of spoolss_SetPrinter()

metze
Modified:
   branches/SAMBA_4_0/source/librpc/idl/spoolss.idl


Changeset:
Modified: branches/SAMBA_4_0/source/librpc/idl/spoolss.idl
===================================================================
--- branches/SAMBA_4_0/source/librpc/idl/spoolss.idl	2005-06-06 12:04:24 UTC (rev 7330)
+++ branches/SAMBA_4_0/source/librpc/idl/spoolss.idl	2005-06-06 12:08:05 UTC (rev 7331)
@@ -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
 	);
 
 	/******************/



More information about the samba-cvs mailing list