diff options
Diffstat (limited to 'librpc/idl/spoolss.idl')
-rw-r--r-- | librpc/idl/spoolss.idl | 49 |
1 files changed, 41 insertions, 8 deletions
diff --git a/librpc/idl/spoolss.idl b/librpc/idl/spoolss.idl index e1402f2afb..9765fd3969 100644 --- a/librpc/idl/spoolss.idl +++ b/librpc/idl/spoolss.idl @@ -1140,7 +1140,7 @@ import "misc.idl", "security.idl", "winreg.idl"; /******************/ /* Function: 0x0f */ - typedef struct { + typedef [public,gensize] struct { [relative] nstring *print_processor_name; } spoolss_PrintProcessorInfo1; @@ -1509,7 +1509,7 @@ import "misc.idl", "security.idl", "winreg.idl"; [out,ref] uint32 *needed ); - typedef struct { + typedef [public,gensize] struct { [relative] nstring *port_name; } spoolss_PortInfo1; @@ -1520,7 +1520,7 @@ import "misc.idl", "security.idl", "winreg.idl"; SPOOLSS_PORT_TYPE_NET_ATTACHED = 0x00000008 } spoolss_PortType; - typedef struct { + typedef [public,gensize] struct { [relative] nstring *port_name; [relative] nstring *monitor_name; [relative] nstring *description; @@ -1550,13 +1550,13 @@ import "misc.idl", "security.idl", "winreg.idl"; PORT_STATUS_TYPE_INFO = 0x00000003 } spoolss_PortSeverity; - typedef struct { + typedef [public,gensize] struct { spoolss_PortStatus status; [relative] nstring *status_string; spoolss_PortSeverity severity; } spoolss_PortInfo3; - typedef struct { + typedef [public,gensize] struct { [relative] nstring *port_name; DATA_BLOB monitor_data; /* relative ?? */ } spoolss_PortInfoFF; @@ -1597,11 +1597,11 @@ import "misc.idl", "security.idl", "winreg.idl"; /******************/ /* Function: 0x24 */ - typedef struct { + typedef [public,gensize] struct { [relative] nstring *monitor_name; } spoolss_MonitorInfo1; - typedef struct { + typedef [public,gensize] struct { [relative] nstring *monitor_name; [relative] nstring *environment; [relative] nstring *dll_name; @@ -1714,7 +1714,40 @@ import "misc.idl", "security.idl", "winreg.idl"; /******************/ /* Function: 0x33 */ - [todo] WERROR spoolss_EnumPrintProcDataTypes( + + typedef [public,gensize] struct { + [relative] nstring *name_array; + } spoolss_PrintProcDataTypesInfo1; + + typedef [nodiscriminant,relative_base,public] union { + [case(1)] spoolss_PrintProcDataTypesInfo1 info1; + [default]; + } spoolss_PrintProcDataTypesInfo; + + [public,noopnum,noprint] WERROR _spoolss_EnumPrintProcDataTypes( + [in,unique] [string,charset(UTF16)] uint16 *servername, + [in,unique] [string,charset(UTF16)] uint16 *print_processor_name, + [in] uint32 level, + [in,unique] DATA_BLOB *buffer, + [in] uint32 offered, + [out,unique] DATA_BLOB *info, + [out,ref] uint32 *needed, + [out,ref] uint32 *count + ); + [public,noopnum,noprint] void __spoolss_EnumPrintProcDataTypes( + [in] uint32 level, + [in] uint32 count, + [out,switch_is(level)] spoolss_PrintProcDataTypesInfo info[count] + ); + [nopull,nopush] WERROR spoolss_EnumPrintProcDataTypes( + [in,unique] [string,charset(UTF16)] uint16 *servername, + [in,unique] [string,charset(UTF16)] uint16 *print_processor_name, + [in] uint32 level, + [in,unique] DATA_BLOB *buffer, + [in] uint32 offered, + [out,ref] uint32 *count, + [out,ref,switch_is(level),size_is(,*count)] spoolss_PrintProcDataTypesInfo **info, + [out,ref] uint32 *needed ); /******************/ |