spoolss: in enum-calls make [out] count a ref pointer.
authorGünther Deschner <gd@samba.org>
Mon, 16 Feb 2009 15:25:30 +0000 (16:25 +0100)
committerGünther Deschner <gd@samba.org>
Tue, 17 Feb 2009 15:14:13 +0000 (16:14 +0100)
Guenther

librpc/idl/spoolss.idl

index f2d18bf0a522432f0cb63f952be9005fe33a6445..545e1034ef5f5397bb0787e062d6afdc548c17a2 100644 (file)
@@ -340,7 +340,7 @@ import "misc.idl", "security.idl", "winreg.idl";
                [in] uint32 offered,
                [out,unique] DATA_BLOB *info,
                [out,ref] uint32 *needed,
-               [out] uint32 count
+               [out,ref] uint32 *count
        );
        [public,noopnum,noprint] void __spoolss_EnumPrinters(
                [in] uint32 level,
@@ -356,9 +356,9 @@ import "misc.idl", "security.idl", "winreg.idl";
                /* what we have here is a subcontext containing an array of no discriminant unions
                 * and the array has no size in front
                 */
-               [out,unique,switch_is(level),size_is(count)] spoolss_PrinterInfo *info,
-               [out,ref] uint32 *needed,
-               [out] uint32 count
+               [out,ref] uint32 *count,
+               [out,unique,switch_is(level),size_is(*count)] spoolss_PrinterInfo *info,
+               [out,ref] uint32 *needed
        );
 
        /******************/
@@ -446,7 +446,7 @@ import "misc.idl", "security.idl", "winreg.idl";
                [in]     uint32 offered,
                [out,unique] DATA_BLOB *info,
                [out,ref] uint32 *needed,
-               [out]    uint32 count
+               [out,ref] uint32 *count
        );
        [public,noopnum,noprint] void __spoolss_EnumJobs(
                [in] uint32 level,
@@ -460,9 +460,9 @@ import "misc.idl", "security.idl", "winreg.idl";
                [in]     uint32 level,
                [in,unique] DATA_BLOB *buffer,
                [in]     uint32 offered,
-               [out,unique,switch_is(level),size_is(count)] spoolss_JobInfo *info,
-               [out,ref] uint32 *needed,
-               [out]    uint32 count
+               [out,ref] uint32 *count,
+               [out,unique,switch_is(level),size_is(*count)] spoolss_JobInfo *info,
+               [out,ref] uint32 *needed
        );
 
        /******************/
@@ -842,7 +842,7 @@ import "misc.idl", "security.idl", "winreg.idl";
                [in] uint32 offered,
                [out,unique] DATA_BLOB *info,
                [out,ref] uint32 *needed,
-               [out] uint32 count
+               [out,ref] uint32 *count
        );
        [public,noopnum,noprint] void __spoolss_EnumPrinterDrivers(
                [in] uint32 level,
@@ -855,9 +855,9 @@ import "misc.idl", "security.idl", "winreg.idl";
                [in] uint32 level,
                [in,unique] DATA_BLOB *buffer,
                [in] uint32 offered,
-               [out,unique,switch_is(level),size_is(count)] spoolss_DriverInfo *info,
-               [out,ref] uint32 *needed,
-               [out] uint32 count
+               [out,ref] uint32 *count,
+               [out,unique,switch_is(level),size_is(*count)] spoolss_DriverInfo *info,
+               [out,ref] uint32 *needed
        );
 
        /******************/
@@ -925,7 +925,7 @@ import "misc.idl", "security.idl", "winreg.idl";
                [in] uint32 offered,
                [out,unique] DATA_BLOB *info,
                [out,ref] uint32 *needed,
-               [out] uint32 count
+               [out,ref] uint32 *count
        );
        [public,noopnum,noprint] void __spoolss_EnumPrintProcessors(
                [in] uint32 level,
@@ -938,9 +938,9 @@ import "misc.idl", "security.idl", "winreg.idl";
                [in] uint32 level,
                [in,unique] DATA_BLOB *buffer,
                [in] uint32 offered,
-               [out,unique,switch_is(level),size_is(count)] spoolss_PrintProcessorInfo *info,
-               [out,ref] uint32 *needed,
-               [out] uint32 count
+               [out,ref] uint32 *count,
+               [out,unique,switch_is(level),size_is(*count)] spoolss_PrintProcessorInfo *info,
+               [out,ref] uint32 *needed
        );
 
        /******************/
@@ -1209,7 +1209,7 @@ import "misc.idl", "security.idl", "winreg.idl";
                [in]     uint32 offered,
                [out,unique] DATA_BLOB *info,
                [out,ref] uint32 *needed,
-               [out]    uint32 count
+               [out,ref] uint32 *count
        );
        [public,noopnum,noprint] void __spoolss_EnumForms(
                [in] uint32 level,
@@ -1221,9 +1221,9 @@ import "misc.idl", "security.idl", "winreg.idl";
                [in]     uint32 level,
                [in,unique] DATA_BLOB *buffer,
                [in]     uint32 offered,
-               [out,unique,switch_is(level),size_is(count)] spoolss_FormInfo *info,
-               [out,ref] uint32 *needed,
-               [out] uint32 count
+               [out,ref] uint32 *count,
+               [out,unique,switch_is(level),size_is(*count)] spoolss_FormInfo *info,
+               [out,ref] uint32 *needed
        );
 
        typedef struct {
@@ -1261,7 +1261,7 @@ import "misc.idl", "security.idl", "winreg.idl";
                [in] uint32 offered,
                [out,unique] DATA_BLOB *info,
                [out,ref] uint32 *needed,
-               [out] uint32 count
+               [out,ref] uint32 *count
        );
        [public,noopnum,noprint] void __spoolss_EnumPorts(
                [in] uint32 level,
@@ -1273,9 +1273,9 @@ import "misc.idl", "security.idl", "winreg.idl";
                [in] uint32 level,
                [in,unique] DATA_BLOB *buffer,
                [in] uint32 offered,
-               [out,unique,switch_is(level),size_is(count)] spoolss_PortInfo *info,
-               [out,ref] uint32 *needed,
-               [out] uint32 count
+               [out,ref] uint32 *count,
+               [out,unique,switch_is(level),size_is(*count)] spoolss_PortInfo *info,
+               [out,ref] uint32 *needed
        );
 
        /******************/
@@ -1303,7 +1303,7 @@ import "misc.idl", "security.idl", "winreg.idl";
                [in] uint32 offered,
                [out,unique] DATA_BLOB *info,
                [out,ref] uint32 *needed,
-               [out] uint32 count
+               [out,ref] uint32 *count
        );
        [public,noopnum,noprint] void __spoolss_EnumMonitors(
                [in] uint32 level,
@@ -1315,9 +1315,9 @@ import "misc.idl", "security.idl", "winreg.idl";
                [in] uint32 level,
                [in,unique] DATA_BLOB *buffer,
                [in] uint32 offered,
-               [out,unique,switch_is(level),size_is(count)] spoolss_MonitorInfo *info,
-               [out,ref] uint32 *needed,
-               [out] uint32 count
+               [out,ref] uint32 *count,
+               [out,unique,switch_is(level),size_is(*count)] spoolss_MonitorInfo *info,
+               [out,ref] uint32 *needed
        );
 
        /******************/