mirror of
https://github.com/samba-team/samba.git
synced 2025-01-17 02:05:21 +03:00
d285c6f14f
* use the top-level function argument printing to show more detail in RPC-* tests (This used to be commit 33bb8785625b1845750f28f2d810e7096afe9f8e)
664 lines
11 KiB
Plaintext
664 lines
11 KiB
Plaintext
/*
|
|
spoolss interface definitions
|
|
*/
|
|
|
|
[ uuid(12345678-1234-abcd-ef00-0123456789ab),
|
|
version(1.0),
|
|
pointer_default(unique)
|
|
] interface spoolss
|
|
{
|
|
/******************/
|
|
/* Function: 0x00 */
|
|
|
|
typedef struct {
|
|
nstring devicename;
|
|
uint16 specversion;
|
|
uint16 driverversion;
|
|
uint16 size;
|
|
uint16 driverextra;
|
|
uint32 fields;
|
|
uint16 orientation;
|
|
uint16 papersize;
|
|
uint16 paperlength;
|
|
uint16 paperwidth;
|
|
uint16 scale;
|
|
uint16 copies;
|
|
uint16 defaultsource;
|
|
uint16 printquality;
|
|
uint16 color;
|
|
uint16 duplex;
|
|
uint16 yresolution;
|
|
uint16 ttoption;
|
|
uint16 collate;
|
|
nstring formname;
|
|
uint16 logpixels;
|
|
uint32 bitsperpel;
|
|
uint32 pelswidth;
|
|
uint32 pelsheight;
|
|
uint32 displayflags;
|
|
uint32 displayfrequency;
|
|
uint32 icmmethod;
|
|
uint32 icmintent;
|
|
uint32 mediatype;
|
|
uint32 dithertype;
|
|
uint32 reserved1;
|
|
uint32 reserved2;
|
|
uint32 panningwidth;
|
|
uint32 panningheight;
|
|
uint8 private[driverextra];
|
|
} spoolss_DeviceMode;
|
|
|
|
typedef struct {
|
|
uint32 flags;
|
|
[relative] nstring name;
|
|
[relative] nstring description;
|
|
[relative] nstring comment;
|
|
} spoolss_PrinterInfo1;
|
|
|
|
typedef struct {
|
|
[relative] nstring servername;
|
|
[relative] nstring printername;
|
|
[relative] nstring sharename;
|
|
[relative] nstring portname;
|
|
[relative] nstring drivername;
|
|
[relative] nstring comment;
|
|
[relative] nstring location;
|
|
[relative] spoolss_DeviceMode *devmode;
|
|
[relative] nstring sepfile;
|
|
[relative] nstring printprocessor;
|
|
[relative] nstring datatype;
|
|
[relative] nstring parameters;
|
|
[relative] security_descriptor *secdesc;
|
|
uint32 attributes;
|
|
uint32 priority;
|
|
uint32 defaultpriority;
|
|
uint32 starttime;
|
|
uint32 untiltime;
|
|
uint32 status;
|
|
uint32 cjobs;
|
|
uint32 averageppm;
|
|
} spoolss_PrinterInfo2;
|
|
|
|
typedef struct {
|
|
uint32 flags;
|
|
security_descriptor secdesc;
|
|
} spoolss_PrinterInfo3;
|
|
|
|
typedef struct {
|
|
[relative] nstring printername;
|
|
[relative] nstring servername;
|
|
uint32 attributes;
|
|
} spoolss_PrinterInfo4;
|
|
|
|
typedef struct {
|
|
[relative] nstring printername;
|
|
[relative] nstring portname;
|
|
uint32 attributes;
|
|
uint32 device_not_selected_timeout;
|
|
uint32 transmission_retry_timeout;
|
|
} spoolss_PrinterInfo5;
|
|
|
|
typedef struct {
|
|
uint32 unknown;
|
|
} spoolss_PrinterInfo6;
|
|
|
|
typedef struct {
|
|
[relative] nstring guid; /* text form of printer guid */
|
|
uint32 action;
|
|
} spoolss_PrinterInfo7;
|
|
|
|
typedef [nodiscriminant,public] union {
|
|
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;
|
|
} spoolss_PrinterInfo;
|
|
|
|
WERROR spoolss_EnumPrinters(
|
|
[in] uint32 flags,
|
|
[in] unistr *server,
|
|
[in] uint32 level,
|
|
[in,out] DATA_BLOB *buffer,
|
|
[in,out,ref] uint32 *buf_size,
|
|
[out] uint32 count
|
|
);
|
|
|
|
/******************/
|
|
/* Function: 0x01 */
|
|
WERROR spoolss_OpenPrinter(
|
|
[in] unistr *server,
|
|
[in] unistr *printer,
|
|
[in] DATA_BLOB *buffer,
|
|
[in] uint32 access_mask,
|
|
[out,ref] policy_handle *handle
|
|
);
|
|
|
|
/******************/
|
|
/* Function: 0x02 */
|
|
NTSTATUS spoolss_02(
|
|
);
|
|
|
|
/******************/
|
|
/* Function: 0x03 */
|
|
NTSTATUS spoolss_03(
|
|
);
|
|
|
|
/******************/
|
|
/* Function: 0x04 */
|
|
NTSTATUS spoolss_EnumJobs(
|
|
[in,ref] policy_handle *handle,
|
|
[in] uint32 firstjob,
|
|
[in] uint32 numjobs,
|
|
[in] uint32 level,
|
|
[in,out] DATA_BLOB *buffer,
|
|
[in,out,ref] uint32 *buf_size,
|
|
[out] uint32 numjobs
|
|
);
|
|
|
|
/******************/
|
|
/* Function: 0x05 */
|
|
NTSTATUS spoolss_05(
|
|
);
|
|
|
|
/******************/
|
|
/* Function: 0x06 */
|
|
NTSTATUS spoolss_06(
|
|
);
|
|
|
|
/******************/
|
|
/* Function: 0x07 */
|
|
NTSTATUS spoolss_07(
|
|
);
|
|
|
|
/******************/
|
|
/* Function: 0x08 */
|
|
WERROR spoolss_GetPrinter(
|
|
[in,ref] policy_handle *handle,
|
|
[in] uint32 level,
|
|
[in] DATA_BLOB *buffer,
|
|
[out,subcontext,switch_is(level)] spoolss_PrinterInfo *info,
|
|
[in,out,ref] uint32 *buf_size
|
|
);
|
|
|
|
/******************/
|
|
/* Function: 0x09 */
|
|
NTSTATUS spoolss_09(
|
|
);
|
|
|
|
/******************/
|
|
/* Function: 0x0a */
|
|
NTSTATUS spoolss_0a(
|
|
);
|
|
|
|
/******************/
|
|
/* Function: 0x0b */
|
|
NTSTATUS spoolss_0b(
|
|
);
|
|
|
|
/******************/
|
|
/* Function: 0x0c */
|
|
NTSTATUS spoolss_0c(
|
|
);
|
|
|
|
/******************/
|
|
/* Function: 0x0d */
|
|
NTSTATUS spoolss_0d(
|
|
);
|
|
|
|
/******************/
|
|
/* Function: 0x0e */
|
|
NTSTATUS spoolss_0e(
|
|
);
|
|
|
|
/******************/
|
|
/* Function: 0x0f */
|
|
NTSTATUS spoolss_0f(
|
|
);
|
|
|
|
/******************/
|
|
/* Function: 0x10 */
|
|
NTSTATUS spoolss_10(
|
|
);
|
|
|
|
/******************/
|
|
/* Function: 0x11 */
|
|
NTSTATUS spoolss_11(
|
|
);
|
|
|
|
/******************/
|
|
/* Function: 0x12 */
|
|
NTSTATUS spoolss_StartPagePrinter(
|
|
[in,ref] policy_handle *handle
|
|
);
|
|
|
|
/******************/
|
|
/* Function: 0x13 */
|
|
NTSTATUS spoolss_13(
|
|
);
|
|
|
|
/******************/
|
|
/* Function: 0x14 */
|
|
NTSTATUS spoolss_EndPagePrinter(
|
|
[in,ref] policy_handle *handle
|
|
);
|
|
|
|
/******************/
|
|
/* Function: 0x15 */
|
|
NTSTATUS spoolss_15(
|
|
);
|
|
|
|
/******************/
|
|
/* Function: 0x16 */
|
|
NTSTATUS spoolss_16(
|
|
);
|
|
|
|
/******************/
|
|
/* Function: 0x17 */
|
|
NTSTATUS spoolss_EndDocPrinter(
|
|
);
|
|
|
|
/******************/
|
|
/* Function: 0x18 */
|
|
NTSTATUS spoolss_18(
|
|
);
|
|
|
|
/******************/
|
|
/* Function: 0x19 */
|
|
NTSTATUS spoolss_19(
|
|
);
|
|
|
|
/******************/
|
|
/* Function: 0x1a */
|
|
NTSTATUS spoolss_1a(
|
|
);
|
|
|
|
/******************/
|
|
/* Function: 0x1b */
|
|
NTSTATUS spoolss_1b(
|
|
);
|
|
|
|
/******************/
|
|
/* Function: 0x1c */
|
|
NTSTATUS spoolss_1c(
|
|
);
|
|
|
|
/******************/
|
|
/* Function: 0x1d */
|
|
WERROR spoolss_ClosePrinter(
|
|
[in,out,ref] policy_handle *handle
|
|
);
|
|
|
|
/******************/
|
|
/* Function: 0x1e */
|
|
NTSTATUS spoolss_1e(
|
|
);
|
|
|
|
/******************/
|
|
/* Function: 0x1f */
|
|
NTSTATUS spoolss_1f(
|
|
);
|
|
|
|
/******************/
|
|
/* Function: 0x20 */
|
|
NTSTATUS spoolss_20(
|
|
);
|
|
|
|
/******************/
|
|
/* Function: 0x21 */
|
|
NTSTATUS spoolss_21(
|
|
);
|
|
|
|
/******************/
|
|
/* Function: 0x22 */
|
|
NTSTATUS spoolss_22(
|
|
);
|
|
|
|
/******************/
|
|
/* Function: 0x23 */
|
|
NTSTATUS spoolss_23(
|
|
);
|
|
|
|
/******************/
|
|
/* Function: 0x24 */
|
|
NTSTATUS spoolss_24(
|
|
);
|
|
|
|
/******************/
|
|
/* Function: 0x25 */
|
|
NTSTATUS spoolss_25(
|
|
);
|
|
|
|
/******************/
|
|
/* Function: 0x26 */
|
|
NTSTATUS spoolss_26(
|
|
);
|
|
|
|
/******************/
|
|
/* Function: 0x27 */
|
|
NTSTATUS spoolss_27(
|
|
);
|
|
|
|
/******************/
|
|
/* Function: 0x28 */
|
|
NTSTATUS spoolss_28(
|
|
);
|
|
|
|
/******************/
|
|
/* Function: 0x29 */
|
|
NTSTATUS spoolss_29(
|
|
);
|
|
|
|
/******************/
|
|
/* Function: 0x2a */
|
|
NTSTATUS spoolss_2a(
|
|
);
|
|
|
|
/******************/
|
|
/* Function: 0x2b */
|
|
NTSTATUS spoolss_2b(
|
|
);
|
|
|
|
/******************/
|
|
/* Function: 0x2c */
|
|
NTSTATUS spoolss_2c(
|
|
);
|
|
|
|
/******************/
|
|
/* Function: 0x2d */
|
|
NTSTATUS spoolss_2d(
|
|
);
|
|
|
|
/******************/
|
|
/* Function: 0x2e */
|
|
NTSTATUS spoolss_2e(
|
|
);
|
|
|
|
/******************/
|
|
/* Function: 0x2f */
|
|
NTSTATUS spoolss_2f(
|
|
);
|
|
|
|
/******************/
|
|
/* Function: 0x30 */
|
|
NTSTATUS spoolss_30(
|
|
);
|
|
|
|
/******************/
|
|
/* Function: 0x31 */
|
|
NTSTATUS spoolss_31(
|
|
);
|
|
|
|
/******************/
|
|
/* Function: 0x32 */
|
|
NTSTATUS spoolss_32(
|
|
);
|
|
|
|
/******************/
|
|
/* Function: 0x33 */
|
|
NTSTATUS spoolss_33(
|
|
);
|
|
|
|
/******************/
|
|
/* Function: 0x34 */
|
|
NTSTATUS spoolss_34(
|
|
);
|
|
|
|
/******************/
|
|
/* Function: 0x35 */
|
|
NTSTATUS spoolss_35(
|
|
);
|
|
|
|
/******************/
|
|
/* Function: 0x36 */
|
|
NTSTATUS spoolss_36(
|
|
);
|
|
|
|
/******************/
|
|
/* Function: 0x37 */
|
|
NTSTATUS spoolss_37(
|
|
);
|
|
|
|
/******************/
|
|
/* Function: 0x38 */
|
|
NTSTATUS spoolss_38(
|
|
);
|
|
|
|
/******************/
|
|
/* Function: 0x39 */
|
|
NTSTATUS spoolss_39(
|
|
);
|
|
|
|
/******************/
|
|
/* Function: 0x3a */
|
|
NTSTATUS spoolss_3a(
|
|
);
|
|
|
|
/******************/
|
|
/* Function: 0x3b */
|
|
NTSTATUS spoolss_3b(
|
|
);
|
|
|
|
/******************/
|
|
/* Function: 0x3c */
|
|
NTSTATUS spoolss_3c(
|
|
);
|
|
|
|
/******************/
|
|
/* Function: 0x3d */
|
|
NTSTATUS spoolss_3d(
|
|
);
|
|
|
|
/******************/
|
|
/* Function: 0x3e */
|
|
NTSTATUS spoolss_3e(
|
|
);
|
|
|
|
/******************/
|
|
/* Function: 0x3f */
|
|
NTSTATUS spoolss_3f(
|
|
);
|
|
|
|
/******************/
|
|
/* Function: 0x40 */
|
|
NTSTATUS spoolss_40(
|
|
);
|
|
|
|
/******************/
|
|
/* Function: 0x41 */
|
|
NTSTATUS spoolss_41(
|
|
);
|
|
|
|
/******************/
|
|
/* Function: 0x42 */
|
|
NTSTATUS spoolss_42(
|
|
);
|
|
|
|
/******************/
|
|
/* Function: 0x43 */
|
|
NTSTATUS spoolss_43(
|
|
);
|
|
|
|
/******************/
|
|
/* Function: 0x44 */
|
|
NTSTATUS spoolss_44(
|
|
);
|
|
|
|
typedef struct {
|
|
uint32 foo;
|
|
} spoolss_Devmode;
|
|
|
|
typedef struct {
|
|
uint32 size;
|
|
spoolss_Devmode *devmode;
|
|
} spoolss_DevmodeContainer;
|
|
|
|
typedef struct {
|
|
uint32 size;
|
|
unistr *client;
|
|
unistr *user;
|
|
uint32 build;
|
|
uint32 major;
|
|
uint32 minor;
|
|
uint32 processor;
|
|
} spoolss_UserLevel1;
|
|
|
|
typedef union {
|
|
case(1) spoolss_UserLevel1 *level1;
|
|
} spoolss_UserLevel;
|
|
|
|
/******************/
|
|
/* Function: 0x45 */
|
|
WERROR spoolss_OpenPrinterEx(
|
|
[in] unistr *printername,
|
|
[in] unistr *datatype,
|
|
[in] spoolss_DevmodeContainer devmode_ctr,
|
|
[in] uint32 access_required,
|
|
[in] uint32 level,
|
|
[in,switch_is(level)] spoolss_UserLevel userlevel,
|
|
[out,ref] policy_handle *handle
|
|
);
|
|
|
|
/******************/
|
|
/* Function: 0x46 */
|
|
NTSTATUS spoolss_46(
|
|
);
|
|
|
|
/******************/
|
|
/* Function: 0x47 */
|
|
NTSTATUS spoolss_47(
|
|
);
|
|
|
|
/******************/
|
|
/* Function: 0x48 */
|
|
NTSTATUS spoolss_EnumPrinterData(
|
|
[in,ref] policy_handle *handle,
|
|
[in] uint32 enum_index,
|
|
[in] uint32 value_offered,
|
|
[out] uint32 value_len,
|
|
[out] unistr *value_name,
|
|
[out] uint32 value_needed,
|
|
[out] uint32 printerdata_type,
|
|
[in,out] DATA_BLOB *buffer,
|
|
[in,out,ref] uint32 *buf_size
|
|
);
|
|
|
|
/******************/
|
|
/* Function: 0x49 */
|
|
NTSTATUS spoolss_49(
|
|
);
|
|
|
|
/******************/
|
|
/* Function: 0x4a */
|
|
NTSTATUS spoolss_4a(
|
|
);
|
|
|
|
/******************/
|
|
/* Function: 0x4b */
|
|
NTSTATUS spoolss_4b(
|
|
);
|
|
|
|
/******************/
|
|
/* Function: 0x4c */
|
|
NTSTATUS spoolss_4c(
|
|
);
|
|
|
|
/******************/
|
|
/* Function: 0x4d */
|
|
NTSTATUS spoolss_4d(
|
|
);
|
|
|
|
/******************/
|
|
/* Function: 0x4e */
|
|
NTSTATUS spoolss_4e(
|
|
);
|
|
|
|
/******************/
|
|
/* Function: 0x4f */
|
|
NTSTATUS spoolss_4f(
|
|
);
|
|
|
|
/******************/
|
|
/* Function: 0x50 */
|
|
NTSTATUS spoolss_50(
|
|
);
|
|
|
|
/******************/
|
|
/* Function: 0x51 */
|
|
NTSTATUS spoolss_51(
|
|
);
|
|
|
|
/******************/
|
|
/* Function: 0x52 */
|
|
NTSTATUS spoolss_52(
|
|
);
|
|
|
|
/******************/
|
|
/* Function: 0x53 */
|
|
NTSTATUS spoolss_53(
|
|
);
|
|
|
|
/******************/
|
|
/* Function: 0x54 */
|
|
NTSTATUS spoolss_54(
|
|
);
|
|
|
|
/******************/
|
|
/* Function: 0x55 */
|
|
NTSTATUS spoolss_55(
|
|
);
|
|
|
|
/******************/
|
|
/* Function: 0x56 */
|
|
NTSTATUS spoolss_56(
|
|
);
|
|
|
|
/******************/
|
|
/* Function: 0x57 */
|
|
NTSTATUS spoolss_57(
|
|
);
|
|
|
|
/******************/
|
|
/* Function: 0x58 */
|
|
NTSTATUS spoolss_58(
|
|
);
|
|
|
|
/******************/
|
|
/* Function: 0x59 */
|
|
NTSTATUS spoolss_59(
|
|
);
|
|
|
|
/******************/
|
|
/* Function: 0x5a */
|
|
NTSTATUS spoolss_5a(
|
|
);
|
|
|
|
/******************/
|
|
/* Function: 0x5b */
|
|
NTSTATUS spoolss_5b(
|
|
);
|
|
|
|
/******************/
|
|
/* Function: 0x5c */
|
|
NTSTATUS spoolss_5c(
|
|
);
|
|
|
|
/******************/
|
|
/* Function: 0x5d */
|
|
NTSTATUS spoolss_5d(
|
|
);
|
|
|
|
/******************/
|
|
/* Function: 0x5e */
|
|
NTSTATUS spoolss_5e(
|
|
);
|
|
|
|
/******************/
|
|
/* Function: 0x5f */
|
|
NTSTATUS spoolss_5f(
|
|
);
|
|
|
|
}
|