summaryrefslogtreecommitdiff
path: root/source4
diff options
context:
space:
mode:
Diffstat (limited to 'source4')
-rw-r--r--source4/Makefile.in7
-rw-r--r--source4/librpc/idl/spoolss.idl520
-rw-r--r--source4/librpc/ndr/libndr.h1
-rw-r--r--source4/librpc/ndr/ndr_spoolss.c1415
-rw-r--r--source4/librpc/ndr/ndr_spoolss.h1088
-rw-r--r--source4/librpc/rpc/rpc_spoolss.c1348
-rw-r--r--source4/torture/rpc/spoolss.c76
-rw-r--r--source4/torture/torture.c1
8 files changed, 4453 insertions, 3 deletions
diff --git a/source4/Makefile.in b/source4/Makefile.in
index 26e3f6dad5..f2b3a25117 100644
--- a/source4/Makefile.in
+++ b/source4/Makefile.in
@@ -195,10 +195,10 @@ LIBCLIUTIL_OBJ = libcli/util/asn1.o \
LIBRAW_NDR_OBJ = librpc/ndr/ndr.o librpc/ndr/ndr_basic.o librpc/ndr/ndr_sec.o \
librpc/ndr/ndr_echo.o librpc/ndr/ndr_misc.o librpc/ndr/ndr_lsa.o \
- librpc/ndr/ndr_dfs.o
+ librpc/ndr/ndr_dfs.o librpc/ndr/ndr_spoolss.o
LIBRAW_RPC_OBJ = librpc/rpc/dcerpc.o librpc/rpc/rpc_echo.o librpc/rpc/rpc_lsa.o \
- librpc/rpc/dcerpc_smb.o librpc/rpc/rpc_dfs.o
+ librpc/rpc/dcerpc_smb.o librpc/rpc/rpc_dfs.o librpc/rpc/rpc_spoolss.o
LIBRAW_OBJ = libcli/raw/rawfile.o libcli/raw/smb_signing.o \
libcli/raw/clisocket.o libcli/raw/clitransport.o \
@@ -506,7 +506,8 @@ SMBTORTURE_RAW_OBJ = torture/raw/qfsinfo.o torture/raw/qfileinfo.o torture/raw/s
torture/raw/chkpath.o torture/raw/unlink.o torture/raw/read.o torture/raw/context.o \
torture/raw/write.o torture/raw/lock.o torture/raw/rename.o torture/raw/seek.o
-SMBTORTURE_RPC_OBJ = torture/rpc/lsa.o torture/rpc/echo.o torture/rpc/dfs.o
+SMBTORTURE_RPC_OBJ = torture/rpc/lsa.o torture/rpc/echo.o torture/rpc/dfs.o \
+ torture/rpc/spoolss.o
SMBTORTURE_OBJ1 = torture/torture.o torture/torture_util.o torture/nbio.o torture/scanner.o \
torture/utable.o torture/denytest.o torture/mangle_test.o \
diff --git a/source4/librpc/idl/spoolss.idl b/source4/librpc/idl/spoolss.idl
new file mode 100644
index 0000000000..8f12b266cf
--- /dev/null
+++ b/source4/librpc/idl/spoolss.idl
@@ -0,0 +1,520 @@
+/*
+ spoolss interface definitions
+*/
+
+[ uuid(12345678-1234-abcd-ef00-0123456789ab),
+ version(1.0),
+ pointer_default(unique)
+] interface spoolss
+{
+ /******************/
+ /* Function: 0x00 */
+ NTSTATUS spoolss_00(
+ );
+
+ /******************/
+ /* Function: 0x01 */
+ NTSTATUS spoolss_01(
+ );
+
+ /******************/
+ /* Function: 0x02 */
+ NTSTATUS spoolss_02(
+ );
+
+ /******************/
+ /* Function: 0x03 */
+ NTSTATUS spoolss_03(
+ );
+
+ /******************/
+ /* Function: 0x04 */
+ NTSTATUS spoolss_04(
+ );
+
+ /******************/
+ /* Function: 0x05 */
+ NTSTATUS spoolss_05(
+ );
+
+ /******************/
+ /* Function: 0x06 */
+ NTSTATUS spoolss_06(
+ );
+
+ /******************/
+ /* Function: 0x07 */
+ NTSTATUS spoolss_07(
+ );
+
+ /******************/
+ /* Function: 0x08 */
+ NTSTATUS spoolss_08(
+ );
+
+ /******************/
+ /* 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_12(
+ );
+
+ /******************/
+ /* Function: 0x13 */
+ NTSTATUS spoolss_13(
+ );
+
+ /******************/
+ /* Function: 0x14 */
+ NTSTATUS spoolss_14(
+ );
+
+ /******************/
+ /* Function: 0x15 */
+ NTSTATUS spoolss_15(
+ );
+
+ /******************/
+ /* Function: 0x16 */
+ NTSTATUS spoolss_16(
+ );
+
+ /******************/
+ /* Function: 0x17 */
+ NTSTATUS spoolss_17(
+ );
+
+ /******************/
+ /* 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 */
+ NTSTATUS spoolss_1d(
+ );
+
+ /******************/
+ /* 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 */
+ NTSTATUS 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] policy_handle *handle
+ );
+
+ /******************/
+ /* Function: 0x46 */
+ NTSTATUS spoolss_46(
+ );
+
+ /******************/
+ /* Function: 0x47 */
+ NTSTATUS spoolss_47(
+ );
+
+ /******************/
+ /* Function: 0x48 */
+ NTSTATUS spoolss_48(
+ );
+
+ /******************/
+ /* 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(
+ );
+
+}
diff --git a/source4/librpc/ndr/libndr.h b/source4/librpc/ndr/libndr.h
index a7c63f7e13..140001c06d 100644
--- a/source4/librpc/ndr/libndr.h
+++ b/source4/librpc/ndr/libndr.h
@@ -152,3 +152,4 @@ typedef void (*ndr_print_union_fn_t)(struct ndr_print *, const char *, uint16, v
#include "librpc/ndr/ndr_echo.h"
#include "librpc/ndr/ndr_lsa.h"
#include "librpc/ndr/ndr_dfs.h"
+#include "librpc/ndr/ndr_spoolss.h"
diff --git a/source4/librpc/ndr/ndr_spoolss.c b/source4/librpc/ndr/ndr_spoolss.c
new file mode 100644
index 0000000000..33e550d05d
--- /dev/null
+++ b/source4/librpc/ndr/ndr_spoolss.c
@@ -0,0 +1,1415 @@
+/* parser auto-generated by pidl */
+
+#include "includes.h"
+
+NTSTATUS ndr_push_spoolss_00(struct ndr_push *ndr, struct spoolss_00 *r)
+{
+
+ return NT_STATUS_OK;
+}
+
+NTSTATUS ndr_push_spoolss_01(struct ndr_push *ndr, struct spoolss_01 *r)
+{
+
+ return NT_STATUS_OK;
+}
+
+NTSTATUS ndr_push_spoolss_02(struct ndr_push *ndr, struct spoolss_02 *r)
+{
+
+ return NT_STATUS_OK;
+}
+
+NTSTATUS ndr_push_spoolss_03(struct ndr_push *ndr, struct spoolss_03 *r)
+{
+
+ return NT_STATUS_OK;
+}
+
+NTSTATUS ndr_push_spoolss_04(struct ndr_push *ndr, struct spoolss_04 *r)
+{
+
+ return NT_STATUS_OK;
+}
+
+NTSTATUS ndr_push_spoolss_05(struct ndr_push *ndr, struct spoolss_05 *r)
+{
+
+ return NT_STATUS_OK;
+}
+
+NTSTATUS ndr_push_spoolss_06(struct ndr_push *ndr, struct spoolss_06 *r)
+{
+
+ return NT_STATUS_OK;
+}
+
+NTSTATUS ndr_push_spoolss_07(struct ndr_push *ndr, struct spoolss_07 *r)
+{
+
+ return NT_STATUS_OK;
+}
+
+NTSTATUS ndr_push_spoolss_08(struct ndr_push *ndr, struct spoolss_08 *r)
+{
+
+ return NT_STATUS_OK;
+}
+
+NTSTATUS ndr_push_spoolss_09(struct ndr_push *ndr, struct spoolss_09 *r)
+{
+
+ return NT_STATUS_OK;
+}
+
+NTSTATUS ndr_push_spoolss_0a(struct ndr_push *ndr, struct spoolss_0a *r)
+{
+
+ return NT_STATUS_OK;
+}
+
+NTSTATUS ndr_push_spoolss_0b(struct ndr_push *ndr, struct spoolss_0b *r)
+{
+
+ return NT_STATUS_OK;
+}
+
+NTSTATUS ndr_push_spoolss_0c(struct ndr_push *ndr, struct spoolss_0c *r)
+{
+
+ return NT_STATUS_OK;
+}
+
+NTSTATUS ndr_push_spoolss_0d(struct ndr_push *ndr, struct spoolss_0d *r)
+{
+
+ return NT_STATUS_OK;
+}
+
+NTSTATUS ndr_push_spoolss_0e(struct ndr_push *ndr, struct spoolss_0e *r)
+{
+
+ return NT_STATUS_OK;
+}
+
+NTSTATUS ndr_push_spoolss_0f(struct ndr_push *ndr, struct spoolss_0f *r)
+{
+
+ return NT_STATUS_OK;
+}
+
+NTSTATUS ndr_push_spoolss_10(struct ndr_push *ndr, struct spoolss_10 *r)
+{
+
+ return NT_STATUS_OK;
+}
+
+NTSTATUS ndr_push_spoolss_11(struct ndr_push *ndr, struct spoolss_11 *r)
+{
+
+ return NT_STATUS_OK;
+}
+
+NTSTATUS ndr_push_spoolss_12(struct ndr_push *ndr, struct spoolss_12 *r)
+{
+
+ return NT_STATUS_OK;
+}
+
+NTSTATUS ndr_push_spoolss_13(struct ndr_push *ndr, struct spoolss_13 *r)
+{
+
+ return NT_STATUS_OK;
+}
+
+NTSTATUS ndr_push_spoolss_14(struct ndr_push *ndr, struct spoolss_14 *r)
+{
+
+ return NT_STATUS_OK;
+}
+
+NTSTATUS ndr_push_spoolss_15(struct ndr_push *ndr, struct spoolss_15 *r)
+{
+
+ return NT_STATUS_OK;
+}
+
+NTSTATUS ndr_push_spoolss_16(struct ndr_push *ndr, struct spoolss_16 *r)
+{
+
+ return NT_STATUS_OK;
+}
+
+NTSTATUS ndr_push_spoolss_17(struct ndr_push *ndr, struct spoolss_17 *r)
+{
+
+ return NT_STATUS_OK;
+}
+
+NTSTATUS ndr_push_spoolss_18(struct ndr_push *ndr, struct spoolss_18 *r)
+{
+
+ return NT_STATUS_OK;
+}
+
+NTSTATUS ndr_push_spoolss_19(struct ndr_push *ndr, struct spoolss_19 *r)
+{
+
+ return NT_STATUS_OK;
+}
+
+NTSTATUS ndr_push_spoolss_1a(struct ndr_push *ndr, struct spoolss_1a *r)
+{
+
+ return NT_STATUS_OK;
+}
+
+NTSTATUS ndr_push_spoolss_1b(struct ndr_push *ndr, struct spoolss_1b *r)
+{
+
+ return NT_STATUS_OK;
+}
+
+NTSTATUS ndr_push_spoolss_1c(struct ndr_push *ndr, struct spoolss_1c *r)
+{
+
+ return NT_STATUS_OK;
+}
+
+NTSTATUS ndr_push_spoolss_1d(struct ndr_push *ndr, struct spoolss_1d *r)
+{
+
+ return NT_STATUS_OK;
+}
+
+NTSTATUS ndr_push_spoolss_1e(struct ndr_push *ndr, struct spoolss_1e *r)
+{
+
+ return NT_STATUS_OK;
+}
+
+NTSTATUS ndr_push_spoolss_1f(struct ndr_push *ndr, struct spoolss_1f *r)
+{
+
+ return NT_STATUS_OK;
+}
+
+NTSTATUS ndr_push_spoolss_20(struct ndr_push *ndr, struct spoolss_20 *r)
+{
+
+ return NT_STATUS_OK;
+}
+
+NTSTATUS ndr_push_spoolss_21(struct ndr_push *ndr, struct spoolss_21 *r)
+{
+
+ return NT_STATUS_OK;
+}
+
+NTSTATUS ndr_push_spoolss_22(struct ndr_push *ndr, struct spoolss_22 *r)
+{
+
+ return NT_STATUS_OK;
+}
+
+NTSTATUS ndr_push_spoolss_23(struct ndr_push *ndr, struct spoolss_23 *r)
+{
+
+ return NT_STATUS_OK;
+}
+
+NTSTATUS ndr_push_spoolss_24(struct ndr_push *ndr, struct spoolss_24 *r)
+{
+
+ return NT_STATUS_OK;
+}
+
+NTSTATUS ndr_push_spoolss_25(struct ndr_push *ndr, struct spoolss_25 *r)
+{
+
+ return NT_STATUS_OK;
+}
+
+NTSTATUS ndr_push_spoolss_26(struct ndr_push *ndr, struct spoolss_26 *r)
+{
+
+ return NT_STATUS_OK;
+}
+
+NTSTATUS ndr_push_spoolss_27(struct ndr_push *ndr, struct spoolss_27 *r)
+{
+
+ return NT_STATUS_OK;
+}
+
+NTSTATUS ndr_push_spoolss_28(struct ndr_push *ndr, struct spoolss_28 *r)
+{
+
+ return NT_STATUS_OK;
+}
+
+NTSTATUS ndr_push_spoolss_29(struct ndr_push *ndr, struct spoolss_29 *r)
+{
+
+ return NT_STATUS_OK;
+}
+
+NTSTATUS ndr_push_spoolss_2a(struct ndr_push *ndr, struct spoolss_2a *r)
+{
+
+ return NT_STATUS_OK;
+}
+
+NTSTATUS ndr_push_spoolss_2b(struct ndr_push *ndr, struct spoolss_2b *r)
+{
+
+ return NT_STATUS_OK;
+}
+
+NTSTATUS ndr_push_spoolss_2c(struct ndr_push *ndr, struct spoolss_2c *r)
+{
+
+ return NT_STATUS_OK;
+}
+
+NTSTATUS ndr_push_spoolss_2d(struct ndr_push *ndr, struct spoolss_2d *r)
+{
+
+ return NT_STATUS_OK;
+}
+
+NTSTATUS ndr_push_spoolss_2e(struct ndr_push *ndr, struct spoolss_2e *r)
+{
+
+ return NT_STATUS_OK;
+}
+
+NTSTATUS ndr_push_spoolss_2f(struct ndr_push *ndr, struct spoolss_2f *r)
+{
+
+ return NT_STATUS_OK;
+}
+
+NTSTATUS ndr_push_spoolss_30(struct ndr_push *ndr, struct spoolss_30 *r)
+{
+
+ return NT_STATUS_OK;
+}
+
+NTSTATUS ndr_push_spoolss_31(struct ndr_push *ndr, struct spoolss_31 *r)
+{
+
+ return NT_STATUS_OK;
+}
+
+NTSTATUS ndr_push_spoolss_32(struct ndr_push *ndr, struct spoolss_32 *r)
+{
+
+ return NT_STATUS_OK;
+}
+
+NTSTATUS ndr_push_spoolss_33(struct ndr_push *ndr, struct spoolss_33 *r)
+{
+
+ return NT_STATUS_OK;
+}
+
+NTSTATUS ndr_push_spoolss_34(struct ndr_push *ndr, struct spoolss_34 *r)
+{
+
+ return NT_STATUS_OK;
+}
+
+NTSTATUS ndr_push_spoolss_35(struct ndr_push *ndr, struct spoolss_35 *r)
+{
+
+ return NT_STATUS_OK;
+}
+
+NTSTATUS ndr_push_spoolss_36(struct ndr_push *ndr, struct spoolss_36 *r)
+{
+
+ return NT_STATUS_OK;
+}
+
+NTSTATUS ndr_push_spoolss_37(struct ndr_push *ndr, struct spoolss_37 *r)
+{
+
+ return NT_STATUS_OK;
+}
+
+NTSTATUS ndr_push_spoolss_38(struct ndr_push *ndr, struct spoolss_38 *r)
+{
+
+ return NT_STATUS_OK;
+}
+
+NTSTATUS ndr_push_spoolss_39(struct ndr_push *ndr, struct spoolss_39 *r)
+{
+
+ return NT_STATUS_OK;
+}
+
+NTSTATUS ndr_push_spoolss_3a(struct ndr_push *ndr, struct spoolss_3a *r)
+{
+
+ return NT_STATUS_OK;
+}
+
+NTSTATUS ndr_push_spoolss_3b(struct ndr_push *ndr, struct spoolss_3b *r)
+{
+
+ return NT_STATUS_OK;
+}
+
+NTSTATUS ndr_push_spoolss_3c(struct ndr_push *ndr, struct spoolss_3c *r)
+{
+
+ return NT_STATUS_OK;
+}
+
+NTSTATUS ndr_push_spoolss_3d(struct ndr_push *ndr, struct spoolss_3d *r)
+{
+
+ return NT_STATUS_OK;
+}
+
+NTSTATUS ndr_push_spoolss_3e(struct ndr_push *ndr, struct spoolss_3e *r)
+{
+
+ return NT_STATUS_OK;
+}
+
+NTSTATUS ndr_push_spoolss_3f(struct ndr_push *ndr, struct spoolss_3f *r)
+{
+
+ return NT_STATUS_OK;
+}
+
+NTSTATUS ndr_push_spoolss_40(struct ndr_push *ndr, struct spoolss_40 *r)
+{
+
+ return NT_STATUS_OK;
+}
+
+NTSTATUS ndr_push_spoolss_41(struct ndr_push *ndr, struct spoolss_41 *r)
+{
+
+ return NT_STATUS_OK;
+}
+
+NTSTATUS ndr_push_spoolss_42(struct ndr_push *ndr, struct spoolss_42 *r)
+{
+
+ return NT_STATUS_OK;
+}
+
+NTSTATUS ndr_push_spoolss_43(struct ndr_push *ndr, struct spoolss_43 *r)
+{
+
+ return NT_STATUS_OK;
+}
+
+NTSTATUS ndr_push_spoolss_44(struct ndr_push *ndr, struct spoolss_44 *r)
+{
+
+ return NT_STATUS_OK;
+}
+
+static NTSTATUS ndr_push_spoolss_Devmode(struct ndr_push *ndr, int ndr_flags, struct spoolss_Devmode *r)
+{
+ NDR_CHECK(ndr_push_align(ndr, 4));
+ if (!(ndr_flags & NDR_SCALARS)) goto buffers;
+ NDR_CHECK(ndr_push_uint32(ndr, r->foo));
+buffers:
+ if (!(ndr_flags & NDR_BUFFERS)) goto done;
+done:
+ return NT_STATUS_OK;
+}
+
+static NTSTATUS ndr_push_spoolss_DevmodeContainer(struct ndr_push *ndr, int ndr_flags, struct spoolss_DevmodeContainer *r)
+{
+ NDR_CHECK(ndr_push_align(ndr, 4));
+ if (!(ndr_flags & NDR_SCALARS)) goto buffers;
+ NDR_CHECK(ndr_push_uint32(ndr, r->size));
+ NDR_CHECK(ndr_push_ptr(ndr, r->devmode));
+buffers:
+ if (!(ndr_flags & NDR_BUFFERS)) goto done;
+ if (r->devmode) {
+ NDR_CHECK(ndr_push_spoolss_Devmode(ndr, NDR_SCALARS|NDR_BUFFERS, r->devmode));
+ }
+done:
+ return NT_STATUS_OK;
+}
+
+static NTSTATUS ndr_push_spoolss_UserLevel1(struct ndr_push *ndr, int ndr_flags, struct spoolss_UserLevel1 *r)
+{
+ NDR_CHECK(ndr_push_align(ndr, 4));
+ if (!(ndr_flags & NDR_SCALARS)) goto buffers;
+ NDR_CHECK(ndr_push_uint32(ndr, r->size));
+ NDR_CHECK(ndr_push_ptr(ndr, r->client));
+ NDR_CHECK(ndr_push_ptr(ndr, r->user));
+ NDR_CHECK(ndr_push_uint32(ndr, r->build));
+ NDR_CHECK(ndr_push_uint32(ndr, r->major));
+ NDR_CHECK(ndr_push_uint32(ndr, r->minor));
+ NDR_CHECK(ndr_push_uint32(ndr, r->processor));
+buffers:
+ if (!(ndr_flags & NDR_BUFFERS)) goto done;
+ if (r->client) {
+ NDR_CHECK(ndr_push_unistr(ndr, r->client));
+ }
+ if (r->user) {
+ NDR_CHECK(ndr_push_unistr(ndr, r->user));
+ }
+done:
+ return NT_STATUS_OK;
+}
+
+static NTSTATUS ndr_push_spoolss_UserLevel(struct ndr_push *ndr, int ndr_flags, uint16 level, union spoolss_UserLevel *r)
+{
+ if (!(ndr_flags & NDR_SCALARS)) goto buffers;
+ NDR_CHECK(ndr_push_uint16(ndr, level));
+ switch (level) {
+ case 1:
+ NDR_CHECK(ndr_push_ptr(ndr, r->level1));
+ break;
+
+ default:
+ return ndr_push_error(ndr, NDR_ERR_BAD_SWITCH, "Bad switch value %u", level);
+ }
+buffers:
+ if (!(ndr_flags & NDR_BUFFERS)) goto done;
+ switch (level) {
+ case 1:
+ if (r->level1) {
+ NDR_CHECK(ndr_push_spoolss_UserLevel1(ndr, NDR_SCALARS|NDR_BUFFERS, r->level1));
+ }
+ break;
+
+ default:
+ return ndr_push_error(ndr, NDR_ERR_BAD_SWITCH, "Bad switch value %u", level);
+ }
+done:
+ return NT_STATUS_OK;
+}
+
+NTSTATUS ndr_push_spoolss_OpenPrinterEx(struct ndr_push *ndr, struct spoolss_OpenPrinterEx *r)
+{
+ NDR_CHECK(ndr_push_ptr(ndr, r->in.printername));
+ if (r->in.printername) {
+ NDR_CHECK(ndr_push_unistr(ndr, r->in.printername));
+ }
+ NDR_CHECK(ndr_push_ptr(ndr, r->in.datatype));
+ if (r->in.datatype) {
+ NDR_CHECK(ndr_push_unistr(ndr, r->in.datatype));
+ }
+ NDR_CHECK(ndr_push_spoolss_DevmodeContainer(ndr, NDR_SCALARS|NDR_BUFFERS, &r->in.devmode_ctr));
+ NDR_CHECK(ndr_push_uint32(ndr, r->in.access_required));
+ NDR_CHECK(ndr_push_uint32(ndr, r->in.level));
+ NDR_CHECK(ndr_push_spoolss_UserLevel(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.level, &r->in.userlevel));
+
+ return NT_STATUS_OK;
+}
+
+NTSTATUS ndr_push_spoolss_46(struct ndr_push *ndr, struct spoolss_46 *r)
+{
+
+ return NT_STATUS_OK;
+}
+
+NTSTATUS ndr_push_spoolss_47(struct ndr_push *ndr, struct spoolss_47 *r)
+{
+
+ return NT_STATUS_OK;
+}
+
+NTSTATUS ndr_push_spoolss_48(struct ndr_push *ndr, struct spoolss_48 *r)
+{
+
+ return NT_STATUS_OK;
+}
+
+NTSTATUS ndr_push_spoolss_49(struct ndr_push *ndr, struct spoolss_49 *r)
+{
+
+ return NT_STATUS_OK;
+}
+
+NTSTATUS ndr_push_spoolss_4a(struct ndr_push *ndr, struct spoolss_4a *r)
+{
+
+ return NT_STATUS_OK;
+}
+
+NTSTATUS ndr_push_spoolss_4b(struct ndr_push *ndr, struct spoolss_4b *r)
+{
+
+ return NT_STATUS_OK;
+}
+
+NTSTATUS ndr_push_spoolss_4c(struct ndr_push *ndr, struct spoolss_4c *r)
+{
+
+ return NT_STATUS_OK;
+}
+
+NTSTATUS ndr_push_spoolss_4d(struct ndr_push *ndr, struct spoolss_4d *r)
+{
+
+ return NT_STATUS_OK;
+}
+
+NTSTATUS ndr_push_spoolss_4e(struct ndr_push *ndr, struct spoolss_4e *r)
+{
+
+ return NT_STATUS_OK;
+}
+
+NTSTATUS ndr_push_spoolss_4f(struct ndr_push *ndr, struct spoolss_4f *r)
+{
+
+ return NT_STATUS_OK;
+}
+
+NTSTATUS ndr_push_spoolss_50(struct ndr_push *ndr, struct spoolss_50 *r)
+{
+
+ return NT_STATUS_OK;
+}
+
+NTSTATUS ndr_push_spoolss_51(struct ndr_push *ndr, struct spoolss_51 *r)
+{
+
+ return NT_STATUS_OK;
+}
+
+NTSTATUS ndr_push_spoolss_52(struct ndr_push *ndr, struct spoolss_52 *r)
+{
+
+ return NT_STATUS_OK;
+}
+
+NTSTATUS ndr_push_spoolss_53(struct ndr_push *ndr, struct spoolss_53 *r)
+{
+
+ return NT_STATUS_OK;
+}
+
+NTSTATUS ndr_push_spoolss_54(struct ndr_push *ndr, struct spoolss_54 *r)
+{
+
+ return NT_STATUS_OK;
+}
+
+NTSTATUS ndr_push_spoolss_55(struct ndr_push *ndr, struct spoolss_55 *r)
+{
+
+ return NT_STATUS_OK;
+}
+
+NTSTATUS ndr_push_spoolss_56(struct ndr_push *ndr, struct spoolss_56 *r)
+{
+
+ return NT_STATUS_OK;
+}
+
+NTSTATUS ndr_push_spoolss_57(struct ndr_push *ndr, struct spoolss_57 *r)
+{
+
+ return NT_STATUS_OK;
+}
+
+NTSTATUS ndr_push_spoolss_58(struct ndr_push *ndr, struct spoolss_58 *r)
+{
+
+ return NT_STATUS_OK;
+}
+
+NTSTATUS ndr_push_spoolss_59(struct ndr_push *ndr, struct spoolss_59 *r)
+{
+
+ return NT_STATUS_OK;
+}
+
+NTSTATUS ndr_push_spoolss_5a(struct ndr_push *ndr, struct spoolss_5a *r)
+{
+
+ return NT_STATUS_OK;
+}
+
+NTSTATUS ndr_push_spoolss_5b(struct ndr_push *ndr, struct spoolss_5b *r)
+{
+
+ return NT_STATUS_OK;
+}
+
+NTSTATUS ndr_push_spoolss_5c(struct ndr_push *ndr, struct spoolss_5c *r)
+{
+
+ return NT_STATUS_OK;
+}
+
+NTSTATUS ndr_push_spoolss_5d(struct ndr_push *ndr, struct spoolss_5d *r)
+{
+
+ return NT_STATUS_OK;
+}
+
+NTSTATUS ndr_push_spoolss_5e(struct ndr_push *ndr, struct spoolss_5e *r)
+{
+
+ return NT_STATUS_OK;
+}
+
+NTSTATUS ndr_push_spoolss_5f(struct ndr_push *ndr, struct spoolss_5f *r)
+{
+
+ return NT_STATUS_OK;
+}
+
+NTSTATUS ndr_pull_spoolss_00(struct ndr_pull *ndr, struct spoolss_00 *r)
+{
+ NDR_CHECK(ndr_pull_NTSTATUS(ndr, &r->out.result));
+
+ return NT_STATUS_OK;
+}
+
+NTSTATUS ndr_pull_spoolss_01(struct ndr_pull *ndr, struct spoolss_01 *r)
+{
+ NDR_CHECK(ndr_pull_NTSTATUS(ndr, &r->out.result));
+
+ return NT_STATUS_OK;
+}
+
+NTSTATUS ndr_pull_spoolss_02(struct ndr_pull *ndr, struct spoolss_02 *r)
+{
+ NDR_CHECK(ndr_pull_NTSTATUS(ndr, &r->out.result));
+
+ return NT_STATUS_OK;
+}
+
+NTSTATUS ndr_pull_spoolss_03(struct ndr_pull *ndr, struct spoolss_03 *r)
+{
+ NDR_CHECK(ndr_pull_NTSTATUS(ndr, &r->out.result));
+
+ return NT_STATUS_OK;
+}
+
+NTSTATUS ndr_pull_spoolss_04(struct ndr_pull *ndr, struct spoolss_04 *r)
+{
+ NDR_CHECK(ndr_pull_NTSTATUS(ndr, &r->out.result));
+
+ return NT_STATUS_OK;
+}
+
+NTSTATUS ndr_pull_spoolss_05(struct ndr_pull *ndr, struct spoolss_05 *r)
+{
+ NDR_CHECK(ndr_pull_NTSTATUS(ndr, &r->out.result));
+
+ return NT_STATUS_OK;
+}
+
+NTSTATUS ndr_pull_spoolss_06(struct ndr_pull *ndr, struct spoolss_06 *r)
+{
+ NDR_CHECK(ndr_pull_NTSTATUS(ndr, &r->out.result));
+
+ return NT_STATUS_OK;
+}
+
+NTSTATUS ndr_pull_spoolss_07(struct ndr_pull *ndr, struct spoolss_07 *r)
+{
+ NDR_CHECK(ndr_pull_NTSTATUS(ndr, &r->out.result));
+
+ return NT_STATUS_OK;
+}
+
+NTSTATUS ndr_pull_spoolss_08(struct ndr_pull *ndr, struct spoolss_08 *r)
+{
+ NDR_CHECK(ndr_pull_NTSTATUS(ndr, &r->out.result));
+
+ return NT_STATUS_OK;
+}
+
+NTSTATUS ndr_pull_spoolss_09(struct ndr_pull *ndr, struct spoolss_09 *r)
+{
+ NDR_CHECK(ndr_pull_NTSTATUS(ndr, &r->out.result));
+
+ return NT_STATUS_OK;
+}
+
+NTSTATUS ndr_pull_spoolss_0a(struct ndr_pull *ndr, struct spoolss_0a *r)
+{
+ NDR_CHECK(ndr_pull_NTSTATUS(ndr, &r->out.result));
+
+ return NT_STATUS_OK;
+}
+
+NTSTATUS ndr_pull_spoolss_0b(struct ndr_pull *ndr, struct spoolss_0b *r)
+{
+ NDR_CHECK(ndr_pull_NTSTATUS(ndr, &r->out.result));
+
+ return NT_STATUS_OK;
+}
+
+NTSTATUS ndr_pull_spoolss_0c(struct ndr_pull *ndr, struct spoolss_0c *r)
+{
+ NDR_CHECK(ndr_pull_NTSTATUS(ndr, &r->out.result));
+
+ return NT_STATUS_OK;
+}
+
+NTSTATUS ndr_pull_spoolss_0d(struct ndr_pull *ndr, struct spoolss_0d *r)
+{
+ NDR_CHECK(ndr_pull_NTSTATUS(ndr, &r->out.result));
+
+ return NT_STATUS_OK;
+}
+
+NTSTATUS ndr_pull_spoolss_0e(struct ndr_pull *ndr, struct spoolss_0e *r)
+{
+ NDR_CHECK(ndr_pull_NTSTATUS(ndr, &r->out.result));
+
+ return NT_STATUS_OK;
+}
+
+NTSTATUS ndr_pull_spoolss_0f(struct ndr_pull *ndr, struct spoolss_0f *r)
+{
+ NDR_CHECK(ndr_pull_NTSTATUS(ndr, &r->out.result));
+
+ return NT_STATUS_OK;
+}
+
+NTSTATUS ndr_pull_spoolss_10(struct ndr_pull *ndr, struct spoolss_10 *r)
+{
+ NDR_CHECK(ndr_pull_NTSTATUS(ndr, &r->out.result));
+
+ return NT_STATUS_OK;
+}
+
+NTSTATUS ndr_pull_spoolss_11(struct ndr_pull *ndr, struct spoolss_11 *r)
+{
+ NDR_CHECK(ndr_pull_NTSTATUS(ndr, &r->out.result));
+
+ return NT_STATUS_OK;
+}
+
+NTSTATUS ndr_pull_spoolss_12(struct ndr_pull *ndr, struct spoolss_12 *r)
+{
+ NDR_CHECK(ndr_pull_NTSTATUS(ndr, &r->out.result));
+
+ return NT_STATUS_OK;
+}
+
+NTSTATUS ndr_pull_spoolss_13(struct ndr_pull *ndr, struct spoolss_13 *r)
+{
+ NDR_CHECK(ndr_pull_NTSTATUS(ndr, &r->out.result));
+
+ return NT_STATUS_OK;
+}
+
+NTSTATUS ndr_pull_spoolss_14(struct ndr_pull *ndr, struct spoolss_14 *r)
+{
+ NDR_CHECK(ndr_pull_NTSTATUS(ndr, &r->out.result));
+
+ return NT_STATUS_OK;
+}
+
+NTSTATUS ndr_pull_spoolss_15(struct ndr_pull *ndr, struct spoolss_15 *r)
+{
+ NDR_CHECK(ndr_pull_NTSTATUS(ndr, &r->out.result));
+
+ return NT_STATUS_OK;
+}
+
+NTSTATUS ndr_pull_spoolss_16(struct ndr_pull *ndr, struct spoolss_16 *r)
+{
+ NDR_CHECK(ndr_pull_NTSTATUS(ndr, &r->out.result));
+
+ return NT_STATUS_OK;
+}
+
+NTSTATUS ndr_pull_spoolss_17(struct ndr_pull *ndr, struct spoolss_17 *r)
+{
+ NDR_CHECK(ndr_pull_NTSTATUS(ndr, &r->out.result));
+
+ return NT_STATUS_OK;
+}
+
+NTSTATUS ndr_pull_spoolss_18(struct ndr_pull *ndr, struct spoolss_18 *r)
+{
+ NDR_CHECK(ndr_pull_NTSTATUS(ndr, &r->out.result));
+
+ return NT_STATUS_OK;
+}
+
+NTSTATUS ndr_pull_spoolss_19(struct ndr_pull *ndr, struct spoolss_19 *r)
+{
+ NDR_CHECK(ndr_pull_NTSTATUS(ndr, &r->out.result));
+
+ return NT_STATUS_OK;
+}
+
+NTSTATUS ndr_pull_spoolss_1a(struct ndr_pull *ndr, struct spoolss_1a *r)
+{
+ NDR_CHECK(ndr_pull_NTSTATUS(ndr, &r->out.result));
+
+ return NT_STATUS_OK;
+}
+
+NTSTATUS ndr_pull_spoolss_1b(struct ndr_pull *ndr, struct spoolss_1b *r)
+{
+ NDR_CHECK(ndr_pull_NTSTATUS(ndr, &r->out.result));
+
+ return NT_STATUS_OK;
+}
+
+NTSTATUS ndr_pull_spoolss_1c(struct ndr_pull *ndr, struct spoolss_1c *r)
+{
+ NDR_CHECK(ndr_pull_NTSTATUS(ndr, &r->out.result));
+
+ return NT_STATUS_OK;
+}
+
+NTSTATUS ndr_pull_spoolss_1d(struct ndr_pull *ndr, struct spoolss_1d *r)
+{
+ NDR_CHECK(ndr_pull_NTSTATUS(ndr, &r->out.result));
+
+ return NT_STATUS_OK;
+}
+
+NTSTATUS ndr_pull_spoolss_1e(struct ndr_pull *ndr, struct spoolss_1e *r)
+{
+ NDR_CHECK(ndr_pull_NTSTATUS(ndr, &r->out.result));
+
+ return NT_STATUS_OK;
+}
+
+NTSTATUS ndr_pull_spoolss_1f(struct ndr_pull *ndr, struct spoolss_1f *r)
+{
+ NDR_CHECK(ndr_pull_NTSTATUS(ndr, &r->out.result));
+
+ return NT_STATUS_OK;
+}
+
+NTSTATUS ndr_pull_spoolss_20(struct ndr_pull *ndr, struct spoolss_20 *r)
+{
+ NDR_CHECK(ndr_pull_NTSTATUS(ndr, &r->out.result));
+
+ return NT_STATUS_OK;
+}
+
+NTSTATUS ndr_pull_spoolss_21(struct ndr_pull *ndr, struct spoolss_21 *r)
+{
+ NDR_CHECK(ndr_pull_NTSTATUS(ndr, &r->out.result));
+
+ return NT_STATUS_OK;
+}
+
+NTSTATUS ndr_pull_spoolss_22(struct ndr_pull *ndr, struct spoolss_22 *r)
+{
+ NDR_CHECK(ndr_pull_NTSTATUS(ndr, &r->out.result));
+
+ return NT_STATUS_OK;
+}
+
+NTSTATUS ndr_pull_spoolss_23(struct ndr_pull *ndr, struct spoolss_23 *r)
+{
+ NDR_CHECK(ndr_pull_NTSTATUS(ndr, &r->out.result));
+
+ return NT_STATUS_OK;
+}
+
+NTSTATUS ndr_pull_spoolss_24(struct ndr_pull *ndr, struct spoolss_24 *r)
+{
+ NDR_CHECK(ndr_pull_NTSTATUS(ndr, &r->out.result));
+
+ return NT_STATUS_OK;
+}
+
+NTSTATUS ndr_pull_spoolss_25(struct ndr_pull *ndr, struct spoolss_25 *r)
+{
+ NDR_CHECK(ndr_pull_NTSTATUS(ndr, &r->out.result));
+
+ return NT_STATUS_OK;
+}
+
+NTSTATUS ndr_pull_spoolss_26(struct ndr_pull *ndr, struct spoolss_26 *r)
+{
+ NDR_CHECK(ndr_pull_NTSTATUS(ndr, &r->out.result));
+
+ return NT_STATUS_OK;
+}
+
+NTSTATUS ndr_pull_spoolss_27(struct ndr_pull *ndr, struct spoolss_27 *r)
+{
+ NDR_CHECK(ndr_pull_NTSTATUS(ndr, &r->out.result));
+
+ return NT_STATUS_OK;
+}
+
+NTSTATUS ndr_pull_spoolss_28(struct ndr_pull *ndr, struct spoolss_28 *r)
+{
+ NDR_CHECK(ndr_pull_NTSTATUS(ndr, &r->out.result));
+
+ return NT_STATUS_OK;
+}
+
+NTSTATUS ndr_pull_spoolss_29(struct ndr_pull *ndr, struct spoolss_29 *r)
+{
+ NDR_CHECK(ndr_pull_NTSTATUS(ndr, &r->out.result));
+
+ return NT_STATUS_OK;
+}
+
+NTSTATUS ndr_pull_spoolss_2a(struct ndr_pull *ndr, struct spoolss_2a *r)
+{
+ NDR_CHECK(ndr_pull_NTSTATUS(ndr, &r->out.result));
+
+ return NT_STATUS_OK;
+}
+
+NTSTATUS ndr_pull_spoolss_2b(struct ndr_pull *ndr, struct spoolss_2b *r)
+{
+ NDR_CHECK(ndr_pull_NTSTATUS(ndr, &r->out.result));
+
+ return NT_STATUS_OK;
+}
+
+NTSTATUS ndr_pull_spoolss_2c(struct ndr_pull *ndr, struct spoolss_2c *r)
+{
+ NDR_CHECK(ndr_pull_NTSTATUS(ndr, &r->out.result));
+
+ return NT_STATUS_OK;
+}
+
+NTSTATUS ndr_pull_spoolss_2d(struct ndr_pull *ndr, struct spoolss_2d *r)
+{
+ NDR_CHECK(ndr_pull_NTSTATUS(ndr, &r->out.result));
+
+ return NT_STATUS_OK;
+}
+
+NTSTATUS ndr_pull_spoolss_2e(struct ndr_pull *ndr, struct spoolss_2e *r)
+{
+ NDR_CHECK(ndr_pull_NTSTATUS(ndr, &r->out.result));
+
+ return NT_STATUS_OK;
+}
+
+NTSTATUS ndr_pull_spoolss_2f(struct ndr_pull *ndr, struct spoolss_2f *r)
+{
+ NDR_CHECK(ndr_pull_NTSTATUS(ndr, &r->out.result));
+
+ return NT_STATUS_OK;
+}
+
+NTSTATUS ndr_pull_spoolss_30(struct ndr_pull *ndr, struct spoolss_30 *r)
+{
+ NDR_CHECK(ndr_pull_NTSTATUS(ndr, &r->out.result));
+
+ return NT_STATUS_OK;
+}
+
+NTSTATUS ndr_pull_spoolss_31(struct ndr_pull *ndr, struct spoolss_31 *r)
+{
+ NDR_CHECK(ndr_pull_NTSTATUS(ndr, &r->out.result));
+
+ return NT_STATUS_OK;
+}
+
+NTSTATUS ndr_pull_spoolss_32(struct ndr_pull *ndr, struct spoolss_32 *r)
+{
+ NDR_CHECK(ndr_pull_NTSTATUS(ndr, &r->out.result));
+
+ return NT_STATUS_OK;
+}
+
+NTSTATUS ndr_pull_spoolss_33(struct ndr_pull *ndr, struct spoolss_33 *r)
+{
+ NDR_CHECK(ndr_pull_NTSTATUS(ndr, &r->out.result));
+
+ return NT_STATUS_OK;
+}
+
+NTSTATUS ndr_pull_spoolss_34(struct ndr_pull *ndr, struct spoolss_34 *r)
+{
+ NDR_CHECK(ndr_pull_NTSTATUS(ndr, &r->out.result));
+
+ return NT_STATUS_OK;
+}
+
+NTSTATUS ndr_pull_spoolss_35(struct ndr_pull *ndr, struct spoolss_35 *r)
+{
+ NDR_CHECK(ndr_pull_NTSTATUS(ndr, &r->out.result));
+
+ return NT_STATUS_OK;
+}
+
+NTSTATUS ndr_pull_spoolss_36(struct ndr_pull *ndr, struct spoolss_36 *r)
+{
+ NDR_CHECK(ndr_pull_NTSTATUS(ndr, &r->out.result));
+
+ return NT_STATUS_OK;
+}
+
+NTSTATUS ndr_pull_spoolss_37(struct ndr_pull *ndr, struct spoolss_37 *r)
+{
+ NDR_CHECK(ndr_pull_NTSTATUS(ndr, &r->out.result));
+
+ return NT_STATUS_OK;
+}
+
+NTSTATUS ndr_pull_spoolss_38(struct ndr_pull *ndr, struct spoolss_38 *r)
+{
+ NDR_CHECK(ndr_pull_NTSTATUS(ndr, &r->out.result));
+
+ return NT_STATUS_OK;
+}
+
+NTSTATUS ndr_pull_spoolss_39(struct ndr_pull *ndr, struct spoolss_39 *r)
+{
+ NDR_CHECK(ndr_pull_NTSTATUS(ndr, &r->out.result));
+
+ return NT_STATUS_OK;
+}
+
+NTSTATUS ndr_pull_spoolss_3a(struct ndr_pull *ndr, struct spoolss_3a *r)
+{
+ NDR_CHECK(ndr_pull_NTSTATUS(ndr, &r->out.result));
+
+ return NT_STATUS_OK;
+}
+
+NTSTATUS ndr_pull_spoolss_3b(struct ndr_pull *ndr, struct spoolss_3b *r)
+{
+ NDR_CHECK(ndr_pull_NTSTATUS(ndr, &r->out.result));
+
+ return NT_STATUS_OK;
+}
+
+NTSTATUS ndr_pull_spoolss_3c(struct ndr_pull *ndr, struct spoolss_3c *r)
+{
+ NDR_CHECK(ndr_pull_NTSTATUS(ndr, &r->out.result));
+
+ return NT_STATUS_OK;
+}
+
+NTSTATUS ndr_pull_spoolss_3d(struct ndr_pull *ndr, struct spoolss_3d *r)
+{
+ NDR_CHECK(ndr_pull_NTSTATUS(ndr, &r->out.result));
+
+ return NT_STATUS_OK;
+}
+
+NTSTATUS ndr_pull_spoolss_3e(struct ndr_pull *ndr, struct spoolss_3e *r)
+{
+ NDR_CHECK(ndr_pull_NTSTATUS(ndr, &r->out.result));
+
+ return NT_STATUS_OK;
+}
+
+NTSTATUS ndr_pull_spoolss_3f(struct ndr_pull *ndr, struct spoolss_3f *r)
+{
+ NDR_CHECK(ndr_pull_NTSTATUS(ndr, &r->out.result));
+
+ return NT_STATUS_OK;
+}
+
+NTSTATUS ndr_pull_spoolss_40(struct ndr_pull *ndr, struct spoolss_40 *r)
+{
+ NDR_CHECK(ndr_pull_NTSTATUS(ndr, &r->out.result));
+
+ return NT_STATUS_OK;
+}
+
+NTSTATUS ndr_pull_spoolss_41(struct ndr_pull *ndr, struct spoolss_41 *r)
+{
+ NDR_CHECK(ndr_pull_NTSTATUS(ndr, &r->out.result));
+
+ return NT_STATUS_OK;
+}
+
+NTSTATUS ndr_pull_spoolss_42(struct ndr_pull *ndr, struct spoolss_42 *r)
+{
+ NDR_CHECK(ndr_pull_NTSTATUS(ndr, &r->out.result));
+
+ return NT_STATUS_OK;
+}
+
+NTSTATUS ndr_pull_spoolss_43(struct ndr_pull *ndr, struct spoolss_43 *r)
+{
+ NDR_CHECK(ndr_pull_NTSTATUS(ndr, &r->out.result));
+
+ return NT_STATUS_OK;
+}
+
+NTSTATUS ndr_pull_spoolss_44(struct ndr_pull *ndr, struct spoolss_44 *r)
+{
+ NDR_CHECK(ndr_pull_NTSTATUS(ndr, &r->out.result));
+
+ return NT_STATUS_OK;
+}
+
+NTSTATUS ndr_pull_spoolss_OpenPrinterEx(struct ndr_pull *ndr, struct spoolss_OpenPrinterEx *r)
+{
+ uint32 _ptr_handle;
+ NDR_CHECK(ndr_pull_uint32(ndr, &_ptr_handle));
+ if (_ptr_handle) {
+ NDR_ALLOC(ndr, r->out.handle);
+ } else {
+ r->out.handle = NULL;
+ }
+ if (r->out.handle) {
+ NDR_CHECK(ndr_pull_policy_handle(ndr, r->out.handle));
+ }
+ NDR_CHECK(ndr_pull_NTSTATUS(ndr, &r->out.result));
+
+ return NT_STATUS_OK;
+}
+
+NTSTATUS ndr_pull_spoolss_46(struct ndr_pull *ndr, struct spoolss_46 *r)
+{
+ NDR_CHECK(ndr_pull_NTSTATUS(ndr, &r->out.result));
+
+ return NT_STATUS_OK;
+}
+
+NTSTATUS ndr_pull_spoolss_47(struct ndr_pull *ndr, struct spoolss_47 *r)
+{
+ NDR_CHECK(ndr_pull_NTSTATUS(ndr, &r->out.result));
+
+ return NT_STATUS_OK;
+}
+
+NTSTATUS ndr_pull_spoolss_48(struct ndr_pull *ndr, struct spoolss_48 *r)
+{
+ NDR_CHECK(ndr_pull_NTSTATUS(ndr, &r->out.result));
+
+ return NT_STATUS_OK;
+}
+
+NTSTATUS ndr_pull_spoolss_49(struct ndr_pull *ndr, struct spoolss_49 *r)
+{
+ NDR_CHECK(ndr_pull_NTSTATUS(ndr, &r->out.result));
+
+ return NT_STATUS_OK;
+}
+
+NTSTATUS ndr_pull_spoolss_4a(struct ndr_pull *ndr, struct spoolss_4a *r)
+{
+ NDR_CHECK(ndr_pull_NTSTATUS(ndr, &r->out.result));
+
+ return NT_STATUS_OK;
+}
+
+NTSTATUS ndr_pull_spoolss_4b(struct ndr_pull *ndr, struct spoolss_4b *r)
+{
+ NDR_CHECK(ndr_pull_NTSTATUS(ndr, &r->out.result));
+
+ return NT_STATUS_OK;
+}
+
+NTSTATUS ndr_pull_spoolss_4c(struct ndr_pull *ndr, struct spoolss_4c *r)
+{
+ NDR_CHECK(ndr_pull_NTSTATUS(ndr, &r->out.result));
+
+ return NT_STATUS_OK;
+}
+
+NTSTATUS ndr_pull_spoolss_4d(struct ndr_pull *ndr, struct spoolss_4d *r)
+{
+ NDR_CHECK(ndr_pull_NTSTATUS(ndr, &r->out.result));
+
+ return NT_STATUS_OK;
+}
+
+NTSTATUS ndr_pull_spoolss_4e(struct ndr_pull *ndr, struct spoolss_4e *r)
+{
+ NDR_CHECK(ndr_pull_NTSTATUS(ndr, &r->out.result));
+
+ return NT_STATUS_OK;
+}
+
+NTSTATUS ndr_pull_spoolss_4f(struct ndr_pull *ndr, struct spoolss_4f *r)
+{
+ NDR_CHECK(ndr_pull_NTSTATUS(ndr, &r->out.result));
+
+ return NT_STATUS_OK;
+}
+
+NTSTATUS ndr_pull_spoolss_50(struct ndr_pull *ndr, struct spoolss_50 *r)
+{
+ NDR_CHECK(ndr_pull_NTSTATUS(ndr, &r->out.result));
+
+ return NT_STATUS_OK;
+}
+
+NTSTATUS ndr_pull_spoolss_51(struct ndr_pull *ndr, struct spoolss_51 *r)
+{
+ NDR_CHECK(ndr_pull_NTSTATUS(ndr, &r->out.result));
+
+ return NT_STATUS_OK;
+}
+
+NTSTATUS ndr_pull_spoolss_52(struct ndr_pull *ndr, struct spoolss_52 *r)
+{
+ NDR_CHECK(ndr_pull_NTSTATUS(ndr, &r->out.result));
+
+ return NT_STATUS_OK;
+}
+
+NTSTATUS ndr_pull_spoolss_53(struct ndr_pull *ndr, struct spoolss_53 *r)
+{
+ NDR_CHECK(ndr_pull_NTSTATUS(ndr, &r->out.result));
+
+ return NT_STATUS_OK;
+}
+
+NTSTATUS ndr_pull_spoolss_54(struct ndr_pull *ndr, struct spoolss_54 *r)
+{
+ NDR_CHECK(ndr_pull_NTSTATUS(ndr, &r->out.result));
+
+ return NT_STATUS_OK;
+}
+
+NTSTATUS ndr_pull_spoolss_55(struct ndr_pull *ndr, struct spoolss_55 *r)
+{
+ NDR_CHECK(ndr_pull_NTSTATUS(ndr, &r->out.result));
+
+ return NT_STATUS_OK;
+}
+
+NTSTATUS ndr_pull_spoolss_56(struct ndr_pull *ndr, struct spoolss_56 *r)
+{
+ NDR_CHECK(ndr_pull_NTSTATUS(ndr, &r->out.result));
+
+ return NT_STATUS_OK;
+}
+
+NTSTATUS ndr_pull_spoolss_57(struct ndr_pull *ndr, struct spoolss_57 *r)
+{
+ NDR_CHECK(ndr_pull_NTSTATUS(ndr, &r->out.result));
+
+ return NT_STATUS_OK;
+}
+
+NTSTATUS ndr_pull_spoolss_58(struct ndr_pull *ndr, struct spoolss_58 *r)
+{
+ NDR_CHECK(ndr_pull_NTSTATUS(ndr, &r->out.result));
+
+ return NT_STATUS_OK;
+}
+
+NTSTATUS ndr_pull_spoolss_59(struct ndr_pull *ndr, struct spoolss_59 *r)
+{
+ NDR_CHECK(ndr_pull_NTSTATUS(ndr, &r->out.result));
+
+ return NT_STATUS_OK;
+}
+
+NTSTATUS ndr_pull_spoolss_5a(struct ndr_pull *ndr, struct spoolss_5a *r)
+{
+ NDR_CHECK(ndr_pull_NTSTATUS(ndr, &r->out.result));
+
+ return NT_STATUS_OK;
+}
+
+NTSTATUS ndr_pull_spoolss_5b(struct ndr_pull *ndr, struct spoolss_5b *r)
+{
+ NDR_CHECK(ndr_pull_NTSTATUS(ndr, &r->out.result));
+
+ return NT_STATUS_OK;
+}
+
+NTSTATUS ndr_pull_spoolss_5c(struct ndr_pull *ndr, struct spoolss_5c *r)
+{
+ NDR_CHECK(ndr_pull_NTSTATUS(ndr, &r->out.result));
+
+ return NT_STATUS_OK;
+}
+
+NTSTATUS ndr_pull_spoolss_5d(struct ndr_pull *ndr, struct spoolss_5d *r)
+{
+ NDR_CHECK(ndr_pull_NTSTATUS(ndr, &r->out.result));
+
+ return NT_STATUS_OK;
+}
+
+NTSTATUS ndr_pull_spoolss_5e(struct ndr_pull *ndr, struct spoolss_5e *r)
+{
+ NDR_CHECK(ndr_pull_NTSTATUS(ndr, &r->out.result));
+
+ return NT_STATUS_OK;
+}
+
+NTSTATUS ndr_pull_spoolss_5f(struct ndr_pull *ndr, struct spoolss_5f *r)
+{
+ NDR_CHECK(ndr_pull_NTSTATUS(ndr, &r->out.result));
+
+ return NT_STATUS_OK;
+}
+
+void ndr_print_spoolss_Devmode(struct ndr_print *ndr, const char *name, struct spoolss_Devmode *r)
+{
+ ndr_print_struct(ndr, name, "spoolss_Devmode");
+ ndr->depth++;
+ ndr_print_uint32(ndr, "foo", r->foo);
+ ndr->depth--;
+}
+
+void ndr_print_spoolss_DevmodeContainer(struct ndr_print *ndr, const char *name, struct spoolss_DevmodeContainer *r)
+{
+ ndr_print_struct(ndr, name, "spoolss_DevmodeContainer");
+ ndr->depth++;
+ ndr_print_uint32(ndr, "size", r->size);
+ ndr_print_ptr(ndr, "devmode", r->devmode);
+ ndr->depth++;
+ if (r->devmode) {
+ ndr_print_spoolss_Devmode(ndr, "devmode", r->devmode);
+ }
+ ndr->depth--;
+ ndr->depth--;
+}
+
+void ndr_print_spoolss_UserLevel1(struct ndr_print *ndr, const char *name, struct spoolss_UserLevel1 *r)
+{
+ ndr_print_struct(ndr, name, "spoolss_UserLevel1");
+ ndr->depth++;
+ ndr_print_uint32(ndr, "size", r->size);
+ ndr_print_ptr(ndr, "client", r->client);
+ ndr->depth++;
+ if (r->client) {
+ ndr_print_unistr(ndr, "client", r->client);
+ }
+ ndr->depth--;
+ ndr_print_ptr(ndr, "user", r->user);
+ ndr->depth++;
+ if (r->user) {
+ ndr_print_unistr(ndr, "user", r->user);
+ }
+ ndr->depth--;
+ ndr_print_uint32(ndr, "build", r->build);
+ ndr_print_uint32(ndr, "major", r->major);
+ ndr_print_uint32(ndr, "minor", r->minor);
+ ndr_print_uint32(ndr, "processor", r->processor);
+ ndr->depth--;
+}
+
+void ndr_print_spoolss_UserLevel(struct ndr_print *ndr, const char *name, uint16 level, union spoolss_UserLevel *r)
+{
+ ndr_print_union(ndr, name, level, "spoolss_UserLevel");
+ switch (level) {
+ case 1:
+ ndr_print_ptr(ndr, "level1", r->level1);
+ ndr->depth++;
+ if (r->level1) {
+ ndr_print_spoolss_UserLevel1(ndr, "level1", r->level1);
+ }
+ ndr->depth--;
+ break;
+
+ default:
+ ndr_print_bad_level(ndr, name, level);
+ }
+}
+
diff --git a/source4/librpc/ndr/ndr_spoolss.h b/source4/librpc/ndr/ndr_spoolss.h
new file mode 100644
index 0000000000..a0fa0d6e14
--- /dev/null
+++ b/source4/librpc/ndr/ndr_spoolss.h
@@ -0,0 +1,1088 @@
+/* header auto-generated by pidl */
+
+struct spoolss_00 {
+ struct {
+ } in;
+
+ struct {
+ NTSTATUS result;
+ } out;
+
+};
+
+struct spoolss_01 {
+ struct {
+ } in;
+
+ struct {
+ NTSTATUS result;
+ } out;
+
+};
+
+struct spoolss_02 {
+ struct {
+ } in;
+
+ struct {
+ NTSTATUS result;
+ } out;
+
+};
+
+struct spoolss_03 {
+ struct {
+ } in;
+
+ struct {
+ NTSTATUS result;
+ } out;
+
+};
+
+struct spoolss_04 {
+ struct {
+ } in;
+
+ struct {
+ NTSTATUS result;
+ } out;
+
+};
+
+struct spoolss_05 {
+ struct {
+ } in;
+
+ struct {
+ NTSTATUS result;
+ } out;
+
+};
+
+struct spoolss_06 {
+ struct {
+ } in;
+
+ struct {
+ NTSTATUS result;
+ } out;
+
+};
+
+struct spoolss_07 {
+ struct {
+ } in;
+
+ struct {
+ NTSTATUS result;
+ } out;
+
+};
+
+struct spoolss_08 {
+ struct {
+ } in;
+
+ struct {
+ NTSTATUS result;
+ } out;
+
+};
+
+struct spoolss_09 {
+ struct {
+ } in;
+
+ struct {
+ NTSTATUS result;
+ } out;
+
+};
+
+struct spoolss_0a {
+ struct {
+ } in;
+
+ struct {
+ NTSTATUS result;
+ } out;
+
+};
+
+struct spoolss_0b {
+ struct {
+ } in;
+
+ struct {
+ NTSTATUS result;
+ } out;
+
+};
+
+struct spoolss_0c {
+ struct {
+ } in;
+
+ struct {
+ NTSTATUS result;
+ } out;
+
+};
+
+struct spoolss_0d {
+ struct {
+ } in;
+
+ struct {
+ NTSTATUS result;
+ } out;
+
+};
+
+struct spoolss_0e {
+ struct {
+ } in;
+
+ struct {
+ NTSTATUS result;
+ } out;
+
+};
+
+struct spoolss_0f {
+ struct {
+ } in;
+
+ struct {
+ NTSTATUS result;
+ } out;
+
+};
+
+struct spoolss_10 {
+ struct {
+ } in;
+
+ struct {
+ NTSTATUS result;
+ } out;
+
+};
+
+struct spoolss_11 {
+ struct {
+ } in;
+
+ struct {
+ NTSTATUS result;
+ } out;
+
+};
+
+struct spoolss_12 {
+ struct {
+ } in;
+
+ struct {
+ NTSTATUS result;
+ } out;
+
+};
+
+struct spoolss_13 {
+ struct {
+ } in;
+
+ struct {
+ NTSTATUS result;
+ } out;
+
+};
+
+struct spoolss_14 {
+ struct {
+ } in;
+
+ struct {
+ NTSTATUS result;
+ } out;
+
+};
+
+struct spoolss_15 {
+ struct {
+ } in;
+
+ struct {
+ NTSTATUS result;
+ } out;
+
+};
+
+struct spoolss_16 {
+ struct {
+ } in;
+
+ struct {
+ NTSTATUS result;
+ } out;
+
+};
+
+struct spoolss_17 {
+ struct {
+ } in;
+
+ struct {
+ NTSTATUS result;
+ } out;
+
+};
+
+struct spoolss_18 {
+ struct {
+ } in;
+
+ struct {
+ NTSTATUS result;
+ } out;
+
+};
+
+struct spoolss_19 {
+ struct {
+ } in;
+
+ struct {
+ NTSTATUS result;
+ } out;
+
+};
+
+struct spoolss_1a {
+ struct {
+ } in;
+
+ struct {
+ NTSTATUS result;
+ } out;
+
+};
+
+struct spoolss_1b {
+ struct {
+ } in;
+
+ struct {
+ NTSTATUS result;
+ } out;
+
+};
+
+struct spoolss_1c {
+ struct {
+ } in;
+
+ struct {
+ NTSTATUS result;
+ } out;
+
+};
+
+struct spoolss_1d {
+ struct {
+ } in;
+
+ struct {
+ NTSTATUS result;
+ } out;
+
+};
+
+struct spoolss_1e {
+ struct {
+ } in;
+
+ struct {
+ NTSTATUS result;
+ } out;
+
+};
+
+struct spoolss_1f {
+ struct {
+ } in;
+
+ struct {
+ NTSTATUS result;
+ } out;
+
+};
+
+struct spoolss_20 {
+ struct {
+ } in;
+
+ struct {
+ NTSTATUS result;
+ } out;
+
+};
+
+struct spoolss_21 {
+ struct {
+ } in;
+
+ struct {
+ NTSTATUS result;
+ } out;
+
+};
+
+struct spoolss_22 {
+ struct {
+ } in;
+
+ struct {
+ NTSTATUS result;
+ } out;
+
+};
+
+struct spoolss_23 {
+ struct {
+ } in;
+
+ struct {
+ NTSTATUS result;
+ } out;
+
+};
+
+struct spoolss_24 {
+ struct {
+ } in;
+
+ struct {
+ NTSTATUS result;
+ } out;
+
+};
+
+struct spoolss_25 {
+ struct {
+ } in;
+
+ struct {
+ NTSTATUS result;
+ } out;
+
+};
+
+struct spoolss_26 {
+ struct {
+ } in;
+
+ struct {
+ NTSTATUS result;
+ } out;
+
+};
+
+struct spoolss_27 {
+ struct {
+ } in;
+
+ struct {
+ NTSTATUS result;
+ } out;
+
+};
+
+struct spoolss_28 {
+ struct {
+ } in;
+
+ struct {
+ NTSTATUS result;
+ } out;
+
+};
+
+struct spoolss_29 {
+ struct {
+ } in;
+
+ struct {
+ NTSTATUS result;
+ } out;
+
+};
+
+struct spoolss_2a {
+ struct {
+ } in;
+
+ struct {
+ NTSTATUS result;
+ } out;
+
+};
+
+struct spoolss_2b {
+ struct {
+ } in;
+
+ struct {
+ NTSTATUS result;
+ } out;
+
+};
+
+struct spoolss_2c {
+ struct {
+ } in;
+
+ struct {
+ NTSTATUS result;
+ } out;
+
+};
+
+struct spoolss_2d {
+ struct {
+ } in;
+
+ struct {
+ NTSTATUS result;
+ } out;
+
+};
+
+struct spoolss_2e {
+ struct {
+ } in;
+
+ struct {
+ NTSTATUS result;
+ } out;
+
+};
+
+struct spoolss_2f {
+ struct {
+ } in;
+
+ struct {
+ NTSTATUS result;
+ } out;
+
+};
+
+struct spoolss_30 {
+ struct {
+ } in;
+
+ struct {
+ NTSTATUS result;
+ } out;
+
+};
+
+struct spoolss_31 {
+ struct {
+ } in;
+
+ struct {
+ NTSTATUS result;
+ } out;
+
+};
+
+struct spoolss_32 {
+ struct {
+ } in;
+
+ struct {
+ NTSTATUS result;
+ } out;
+
+};
+
+struct spoolss_33 {
+ struct {
+ } in;
+
+ struct {
+ NTSTATUS result;
+ } out;
+
+};
+
+struct spoolss_34 {
+ struct {
+ } in;
+
+ struct {
+ NTSTATUS result;
+ } out;
+
+};
+
+struct spoolss_35 {
+ struct {
+ } in;
+
+ struct {
+ NTSTATUS result;
+ } out;
+
+};
+
+struct spoolss_36 {
+ struct {
+ } in;
+
+ struct {
+ NTSTATUS result;
+ } out;
+
+};
+
+struct spoolss_37 {
+ struct {
+ } in;
+
+ struct {
+ NTSTATUS result;
+ } out;
+
+};
+
+struct spoolss_38 {
+ struct {
+ } in;
+
+ struct {
+ NTSTATUS result;
+ } out;
+
+};
+
+struct spoolss_39 {
+ struct {
+ } in;
+
+ struct {
+ NTSTATUS result;
+ } out;
+
+};
+
+struct spoolss_3a {
+ struct {
+ } in;
+
+ struct {
+ NTSTATUS result;
+ } out;
+
+};
+
+struct spoolss_3b {
+ struct {
+ } in;
+
+ struct {
+ NTSTATUS result;
+ } out;
+
+};
+
+struct spoolss_3c {
+ struct {
+ } in;
+
+ struct {
+ NTSTATUS result;
+ } out;
+
+};
+
+struct spoolss_3d {
+ struct {
+ } in;
+
+ struct {
+ NTSTATUS result;
+ } out;
+
+};
+
+struct spoolss_3e {
+ struct {
+ } in;
+
+ struct {
+ NTSTATUS result;
+ } out;
+
+};
+
+struct spoolss_3f {
+ struct {
+ } in;
+
+ struct {
+ NTSTATUS result;
+ } out;
+
+};
+
+struct spoolss_40 {
+ struct {
+ } in;
+
+ struct {
+ NTSTATUS result;
+ } out;
+
+};
+
+struct spoolss_41 {
+ struct {
+ } in;
+
+ struct {
+ NTSTATUS result;
+ } out;
+
+};
+
+struct spoolss_42 {
+ struct {
+ } in;
+
+ struct {
+ NTSTATUS result;
+ } out;
+
+};
+
+struct spoolss_43 {
+ struct {
+ } in;
+
+ struct {
+ NTSTATUS result;
+ } out;
+
+};
+
+struct spoolss_44 {
+ struct {
+ } in;
+
+ struct {
+ NTSTATUS result;
+ } out;
+
+};
+
+struct spoolss_Devmode {
+ uint32 foo;
+};
+
+struct spoolss_DevmodeContainer {
+ uint32 size;
+ struct spoolss_Devmode *devmode;
+};
+
+struct spoolss_UserLevel1 {
+ uint32 size;
+ const char *client;
+ const char *user;
+ uint32 build;
+ uint32 major;
+ uint32 minor;
+ uint32 processor;
+};
+
+union spoolss_UserLevel {
+/* [case(1)] */ struct spoolss_UserLevel1 *level1;
+};
+
+struct spoolss_OpenPrinterEx {
+ struct {
+ const char *printername;
+ const char *datatype;
+ struct spoolss_DevmodeContainer devmode_ctr;
+ uint32 access_required;
+ uint32 level;
+ union spoolss_UserLevel userlevel;
+ } in;
+
+ struct {
+ struct policy_handle *handle;
+ NTSTATUS result;
+ } out;
+
+};
+
+struct spoolss_46 {
+ struct {
+ } in;
+
+ struct {
+ NTSTATUS result;
+ } out;
+
+};
+
+struct spoolss_47 {
+ struct {
+ } in;
+
+ struct {
+ NTSTATUS result;
+ } out;
+
+};
+
+struct spoolss_48 {
+ struct {
+ } in;
+
+ struct {
+ NTSTATUS result;
+ } out;
+
+};
+
+struct spoolss_49 {
+ struct {
+ } in;
+
+ struct {
+ NTSTATUS result;
+ } out;
+
+};
+
+struct spoolss_4a {
+ struct {
+ } in;
+
+ struct {
+ NTSTATUS result;
+ } out;
+
+};
+
+struct spoolss_4b {
+ struct {
+ } in;
+
+ struct {
+ NTSTATUS result;
+ } out;
+
+};
+
+struct spoolss_4c {
+ struct {
+ } in;
+
+ struct {
+ NTSTATUS result;
+ } out;
+
+};
+
+struct spoolss_4d {
+ struct {
+ } in;
+
+ struct {
+ NTSTATUS result;
+ } out;
+
+};
+
+struct spoolss_4e {
+ struct {
+ } in;
+
+ struct {
+ NTSTATUS result;
+ } out;
+
+};
+
+struct spoolss_4f {
+ struct {
+ } in;
+
+ struct {
+ NTSTATUS result;
+ } out;
+
+};
+
+struct spoolss_50 {
+ struct {
+ } in;
+
+ struct {
+ NTSTATUS result;
+ } out;
+
+};
+
+struct spoolss_51 {
+ struct {
+ } in;
+
+ struct {
+ NTSTATUS result;
+ } out;
+
+};
+
+struct spoolss_52 {
+ struct {
+ } in;
+
+ struct {
+ NTSTATUS result;
+ } out;
+
+};
+
+struct spoolss_53 {
+ struct {
+ } in;
+
+ struct {
+ NTSTATUS result;
+ } out;
+
+};
+
+struct spoolss_54 {
+ struct {
+ } in;
+
+ struct {
+ NTSTATUS result;
+ } out;
+
+};
+
+struct spoolss_55 {
+ struct {
+ } in;
+
+ struct {
+ NTSTATUS result;
+ } out;
+
+};
+
+struct spoolss_56 {
+ struct {
+ } in;
+
+ struct {
+ NTSTATUS result;
+ } out;
+
+};
+
+struct spoolss_57 {
+ struct {
+ } in;
+
+ struct {
+ NTSTATUS result;
+ } out;
+
+};
+
+struct spoolss_58 {
+ struct {
+ } in;
+
+ struct {
+ NTSTATUS result;
+ } out;
+
+};
+
+struct spoolss_59 {
+ struct {
+ } in;
+
+ struct {
+ NTSTATUS result;
+ } out;
+
+};
+
+struct spoolss_5a {
+ struct {
+ } in;
+
+ struct {
+ NTSTATUS result;
+ } out;
+
+};
+
+struct spoolss_5b {
+ struct {
+ } in;
+
+ struct {
+ NTSTATUS result;
+ } out;
+
+};
+
+struct spoolss_5c {
+ struct {
+ } in;
+
+ struct {
+ NTSTATUS result;
+ } out;
+
+};
+
+struct spoolss_5d {
+ struct {
+ } in;
+
+ struct {
+ NTSTATUS result;
+ } out;
+
+};
+
+struct spoolss_5e {
+ struct {
+ } in;
+
+ struct {
+ NTSTATUS result;
+ } out;
+
+};
+
+struct spoolss_5f {
+ struct {
+ } in;
+
+ struct {
+ NTSTATUS result;
+ } out;
+
+};
+
+#define DCERPC_SPOOLSS_00 0
+#define DCERPC_SPOOLSS_01 1
+#define DCERPC_SPOOLSS_02 2
+#define DCERPC_SPOOLSS_03 3
+#define DCERPC_SPOOLSS_04 4
+#define DCERPC_SPOOLSS_05 5
+#define DCERPC_SPOOLSS_06 6
+#define DCERPC_SPOOLSS_07 7
+#define DCERPC_SPOOLSS_08 8
+#define DCERPC_SPOOLSS_09 9
+#define DCERPC_SPOOLSS_0A 10
+#define DCERPC_SPOOLSS_0B 11
+#define DCERPC_SPOOLSS_0C 12
+#define DCERPC_SPOOLSS_0D 13
+#define DCERPC_SPOOLSS_0E 14
+#define DCERPC_SPOOLSS_0F 15
+#define DCERPC_SPOOLSS_10 16
+#define DCERPC_SPOOLSS_11 17
+#define DCERPC_SPOOLSS_12 18
+#define DCERPC_SPOOLSS_13 19
+#define DCERPC_SPOOLSS_14 20
+#define DCERPC_SPOOLSS_15 21
+#define DCERPC_SPOOLSS_16 22
+#define DCERPC_SPOOLSS_17 23
+#define DCERPC_SPOOLSS_18 24
+#define DCERPC_SPOOLSS_19 25
+#define DCERPC_SPOOLSS_1A 26
+#define DCERPC_SPOOLSS_1B 27
+#define DCERPC_SPOOLSS_1C 28
+#define DCERPC_SPOOLSS_1D 29
+#define DCERPC_SPOOLSS_1E 30
+#define DCERPC_SPOOLSS_1F 31
+#define DCERPC_SPOOLSS_20 32
+#define DCERPC_SPOOLSS_21 33
+#define DCERPC_SPOOLSS_22 34
+#define DCERPC_SPOOLSS_23 35
+#define DCERPC_SPOOLSS_24 36
+#define DCERPC_SPOOLSS_25 37
+#define DCERPC_SPOOLSS_26 38
+#define DCERPC_SPOOLSS_27 39
+#define DCERPC_SPOOLSS_28 40
+#define DCERPC_SPOOLSS_29 41
+#define DCERPC_SPOOLSS_2A 42
+#define DCERPC_SPOOLSS_2B 43
+#define DCERPC_SPOOLSS_2C 44
+#define DCERPC_SPOOLSS_2D 45
+#define DCERPC_SPOOLSS_2E 46
+#define DCERPC_SPOOLSS_2F 47
+#define DCERPC_SPOOLSS_30 48
+#define DCERPC_SPOOLSS_31 49
+#define DCERPC_SPOOLSS_32 50
+#define DCERPC_SPOOLSS_33 51
+#define DCERPC_SPOOLSS_34 52
+#define DCERPC_SPOOLSS_35 53
+#define DCERPC_SPOOLSS_36 54
+#define DCERPC_SPOOLSS_37 55
+#define DCERPC_SPOOLSS_38 56
+#define DCERPC_SPOOLSS_39 57
+#define DCERPC_SPOOLSS_3A 58
+#define DCERPC_SPOOLSS_3B 59
+#define DCERPC_SPOOLSS_3C 60
+#define DCERPC_SPOOLSS_3D 61
+#define DCERPC_SPOOLSS_3E 62
+#define DCERPC_SPOOLSS_3F 63
+#define DCERPC_SPOOLSS_40 64
+#define DCERPC_SPOOLSS_41 65
+#define DCERPC_SPOOLSS_42 66
+#define DCERPC_SPOOLSS_43 67
+#define DCERPC_SPOOLSS_44 68
+#define DCERPC_SPOOLSS_OPENPRINTEREX 69
+#define DCERPC_SPOOLSS_46 70
+#define DCERPC_SPOOLSS_47 71
+#define DCERPC_SPOOLSS_48 72
+#define DCERPC_SPOOLSS_49 73
+#define DCERPC_SPOOLSS_4A 74
+#define DCERPC_SPOOLSS_4B 75
+#define DCERPC_SPOOLSS_4C 76
+#define DCERPC_SPOOLSS_4D 77
+#define DCERPC_SPOOLSS_4E 78
+#define DCERPC_SPOOLSS_4F 79
+#define DCERPC_SPOOLSS_50 80
+#define DCERPC_SPOOLSS_51 81
+#define DCERPC_SPOOLSS_52 82
+#define DCERPC_SPOOLSS_53 83
+#define DCERPC_SPOOLSS_54 84
+#define DCERPC_SPOOLSS_55 85
+#define DCERPC_SPOOLSS_56 86
+#define DCERPC_SPOOLSS_57 87
+#define DCERPC_SPOOLSS_58 88
+#define DCERPC_SPOOLSS_59 89
+#define DCERPC_SPOOLSS_5A 90
+#define DCERPC_SPOOLSS_5B 91
+#define DCERPC_SPOOLSS_5C 92
+#define DCERPC_SPOOLSS_5D 93
+#define DCERPC_SPOOLSS_5E 94
+#define DCERPC_SPOOLSS_5F 95
diff --git a/source4/librpc/rpc/rpc_spoolss.c b/source4/librpc/rpc/rpc_spoolss.c
new file mode 100644
index 0000000000..d8ec769b61
--- /dev/null
+++ b/source4/librpc/rpc/rpc_spoolss.c
@@ -0,0 +1,1348 @@
+/* dcerpc client calls auto-generated by pidl */
+
+#include "includes.h"
+
+
+NTSTATUS dcerpc_spoolss_00(struct dcerpc_pipe *p, TALLOC_CTX *mem_ctx, struct spoolss_00 *r)
+{
+ NTSTATUS status;
+ status = dcerpc_ndr_request(p, DCERPC_SPOOLSS_00, mem_ctx,
+ (ndr_push_fn_t) ndr_push_spoolss_00,
+ (ndr_pull_fn_t) ndr_pull_spoolss_00,
+ r);
+ if (!NT_STATUS_IS_OK(status)) {
+ return status;
+ }
+
+ return r->out.result;
+}
+
+NTSTATUS dcerpc_spoolss_01(struct dcerpc_pipe *p, TALLOC_CTX *mem_ctx, struct spoolss_01 *r)
+{
+ NTSTATUS status;
+ status = dcerpc_ndr_request(p, DCERPC_SPOOLSS_01, mem_ctx,
+ (ndr_push_fn_t) ndr_push_spoolss_01,
+ (ndr_pull_fn_t) ndr_pull_spoolss_01,
+ r);
+ if (!NT_STATUS_IS_OK(status)) {
+ return status;
+ }
+
+ return r->out.result;
+}
+
+NTSTATUS dcerpc_spoolss_02(struct dcerpc_pipe *p, TALLOC_CTX *mem_ctx, struct spoolss_02 *r)
+{
+ NTSTATUS status;
+ status = dcerpc_ndr_request(p, DCERPC_SPOOLSS_02, mem_ctx,
+ (ndr_push_fn_t) ndr_push_spoolss_02,
+ (ndr_pull_fn_t) ndr_pull_spoolss_02,
+ r);
+ if (!NT_STATUS_IS_OK(status)) {
+ return status;
+ }
+
+ return r->out.result;
+}
+
+NTSTATUS dcerpc_spoolss_03(struct dcerpc_pipe *p, TALLOC_CTX *mem_ctx, struct spoolss_03 *r)
+{
+ NTSTATUS status;
+ status = dcerpc_ndr_request(p, DCERPC_SPOOLSS_03, mem_ctx,
+ (ndr_push_fn_t) ndr_push_spoolss_03,
+ (ndr_pull_fn_t) ndr_pull_spoolss_03,
+ r);
+ if (!NT_STATUS_IS_OK(status)) {
+ return status;
+ }
+
+ return r->out.result;
+}
+
+NTSTATUS dcerpc_spoolss_04(struct dcerpc_pipe *p, TALLOC_CTX *mem_ctx, struct spoolss_04 *r)
+{
+ NTSTATUS status;
+ status = dcerpc_ndr_request(p, DCERPC_SPOOLSS_04, mem_ctx,
+ (ndr_push_fn_t) ndr_push_spoolss_04,
+ (ndr_pull_fn_t) ndr_pull_spoolss_04,
+ r);
+ if (!NT_STATUS_IS_OK(status)) {
+ return status;
+ }
+
+ return r->out.result;
+}
+
+NTSTATUS dcerpc_spoolss_05(struct dcerpc_pipe *p, TALLOC_CTX *mem_ctx, struct spoolss_05 *r)
+{
+ NTSTATUS status;
+ status = dcerpc_ndr_request(p, DCERPC_SPOOLSS_05, mem_ctx,
+ (ndr_push_fn_t) ndr_push_spoolss_05,
+ (ndr_pull_fn_t) ndr_pull_spoolss_05,
+ r);
+ if (!NT_STATUS_IS_OK(status)) {
+ return status;
+ }
+
+ return r->out.result;
+}
+
+NTSTATUS dcerpc_spoolss_06(struct dcerpc_pipe *p, TALLOC_CTX *mem_ctx, struct spoolss_06 *r)
+{
+ NTSTATUS status;
+ status = dcerpc_ndr_request(p, DCERPC_SPOOLSS_06, mem_ctx,
+ (ndr_push_fn_t) ndr_push_spoolss_06,
+ (ndr_pull_fn_t) ndr_pull_spoolss_06,
+ r);
+ if (!NT_STATUS_IS_OK(status)) {
+ return status;
+ }
+
+ return r->out.result;
+}
+
+NTSTATUS dcerpc_spoolss_07(struct dcerpc_pipe *p, TALLOC_CTX *mem_ctx, struct spoolss_07 *r)
+{
+ NTSTATUS status;
+ status = dcerpc_ndr_request(p, DCERPC_SPOOLSS_07, mem_ctx,
+ (ndr_push_fn_t) ndr_push_spoolss_07,
+ (ndr_pull_fn_t) ndr_pull_spoolss_07,
+ r);
+ if (!NT_STATUS_IS_OK(status)) {
+ return status;
+ }
+
+ return r->out.result;
+}
+
+NTSTATUS dcerpc_spoolss_08(struct dcerpc_pipe *p, TALLOC_CTX *mem_ctx, struct spoolss_08 *r)
+{
+ NTSTATUS status;
+ status = dcerpc_ndr_request(p, DCERPC_SPOOLSS_08, mem_ctx,
+ (ndr_push_fn_t) ndr_push_spoolss_08,
+ (ndr_pull_fn_t) ndr_pull_spoolss_08,
+ r);
+ if (!NT_STATUS_IS_OK(status)) {
+ return status;
+ }
+
+ return r->out.result;
+}
+
+NTSTATUS dcerpc_spoolss_09(struct dcerpc_pipe *p, TALLOC_CTX *mem_ctx, struct spoolss_09 *r)
+{
+ NTSTATUS status;
+ status = dcerpc_ndr_request(p, DCERPC_SPOOLSS_09, mem_ctx,
+ (ndr_push_fn_t) ndr_push_spoolss_09,
+ (ndr_pull_fn_t) ndr_pull_spoolss_09,
+ r);
+ if (!NT_STATUS_IS_OK(status)) {
+ return status;
+ }
+
+ return r->out.result;
+}
+
+NTSTATUS dcerpc_spoolss_0a(struct dcerpc_pipe *p, TALLOC_CTX *mem_ctx, struct spoolss_0a *r)
+{
+ NTSTATUS status;
+ status = dcerpc_ndr_request(p, DCERPC_SPOOLSS_0A, mem_ctx,
+ (ndr_push_fn_t) ndr_push_spoolss_0a,
+ (ndr_pull_fn_t) ndr_pull_spoolss_0a,
+ r);
+ if (!NT_STATUS_IS_OK(status)) {
+ return status;
+ }
+
+ return r->out.result;
+}
+
+NTSTATUS dcerpc_spoolss_0b(struct dcerpc_pipe *p, TALLOC_CTX *mem_ctx, struct spoolss_0b *r)
+{
+ NTSTATUS status;
+ status = dcerpc_ndr_request(p, DCERPC_SPOOLSS_0B, mem_ctx,
+ (ndr_push_fn_t) ndr_push_spoolss_0b,
+ (ndr_pull_fn_t) ndr_pull_spoolss_0b,
+ r);
+ if (!NT_STATUS_IS_OK(status)) {
+ return status;
+ }
+
+ return r->out.result;
+}
+
+NTSTATUS dcerpc_spoolss_0c(struct dcerpc_pipe *p, TALLOC_CTX *mem_ctx, struct spoolss_0c *r)
+{
+ NTSTATUS status;
+ status = dcerpc_ndr_request(p, DCERPC_SPOOLSS_0C, mem_ctx,
+ (ndr_push_fn_t) ndr_push_spoolss_0c,
+ (ndr_pull_fn_t) ndr_pull_spoolss_0c,
+ r);
+ if (!NT_STATUS_IS_OK(status)) {
+ return status;
+ }
+
+ return r->out.result;
+}
+
+NTSTATUS dcerpc_spoolss_0d(struct dcerpc_pipe *p, TALLOC_CTX *mem_ctx, struct spoolss_0d *r)
+{
+ NTSTATUS status;
+ status = dcerpc_ndr_request(p, DCERPC_SPOOLSS_0D, mem_ctx,
+ (ndr_push_fn_t) ndr_push_spoolss_0d,
+ (ndr_pull_fn_t) ndr_pull_spoolss_0d,
+ r);
+ if (!NT_STATUS_IS_OK(status)) {
+ return status;
+ }
+
+ return r->out.result;
+}
+
+NTSTATUS dcerpc_spoolss_0e(struct dcerpc_pipe *p, TALLOC_CTX *mem_ctx, struct spoolss_0e *r)
+{
+ NTSTATUS status;
+ status = dcerpc_ndr_request(p, DCERPC_SPOOLSS_0E, mem_ctx,
+ (ndr_push_fn_t) ndr_push_spoolss_0e,
+ (ndr_pull_fn_t) ndr_pull_spoolss_0e,
+ r);
+ if (!NT_STATUS_IS_OK(status)) {
+ return status;
+ }
+
+ return r->out.result;
+}
+
+NTSTATUS dcerpc_spoolss_0f(struct dcerpc_pipe *p, TALLOC_CTX *mem_ctx, struct spoolss_0f *r)
+{
+ NTSTATUS status;
+ status = dcerpc_ndr_request(p, DCERPC_SPOOLSS_0F, mem_ctx,
+ (ndr_push_fn_t) ndr_push_spoolss_0f,
+ (ndr_pull_fn_t) ndr_pull_spoolss_0f,
+ r);
+ if (!NT_STATUS_IS_OK(status)) {
+ return status;
+ }
+
+ return r->out.result;
+}
+
+NTSTATUS dcerpc_spoolss_10(struct dcerpc_pipe *p, TALLOC_CTX *mem_ctx, struct spoolss_10 *r)
+{
+ NTSTATUS status;
+ status = dcerpc_ndr_request(p, DCERPC_SPOOLSS_10, mem_ctx,
+ (ndr_push_fn_t) ndr_push_spoolss_10,
+ (ndr_pull_fn_t) ndr_pull_spoolss_10,
+ r);
+ if (!NT_STATUS_IS_OK(status)) {
+ return status;
+ }
+
+ return r->out.result;
+}
+
+NTSTATUS dcerpc_spoolss_11(struct dcerpc_pipe *p, TALLOC_CTX *mem_ctx, struct spoolss_11 *r)
+{
+ NTSTATUS status;
+ status = dcerpc_ndr_request(p, DCERPC_SPOOLSS_11, mem_ctx,
+ (ndr_push_fn_t) ndr_push_spoolss_11,
+ (ndr_pull_fn_t) ndr_pull_spoolss_11,
+ r);
+ if (!NT_STATUS_IS_OK(status)) {
+ return status;
+ }
+
+ return r->out.result;
+}
+
+NTSTATUS dcerpc_spoolss_12(struct dcerpc_pipe *p, TALLOC_CTX *mem_ctx, struct spoolss_12 *r)
+{
+ NTSTATUS status;
+ status = dcerpc_ndr_request(p, DCERPC_SPOOLSS_12, mem_ctx,
+ (ndr_push_fn_t) ndr_push_spoolss_12,
+ (ndr_pull_fn_t) ndr_pull_spoolss_12,
+ r);
+ if (!NT_STATUS_IS_OK(status)) {
+ return status;
+ }
+
+ return r->out.result;
+}
+
+NTSTATUS dcerpc_spoolss_13(struct dcerpc_pipe *p, TALLOC_CTX *mem_ctx, struct spoolss_13 *r)
+{
+ NTSTATUS status;
+ status = dcerpc_ndr_request(p, DCERPC_SPOOLSS_13, mem_ctx,
+ (ndr_push_fn_t) ndr_push_spoolss_13,
+ (ndr_pull_fn_t) ndr_pull_spoolss_13,
+ r);
+ if (!NT_STATUS_IS_OK(status)) {
+ return status;
+ }
+
+ return r->out.result;
+}
+
+NTSTATUS dcerpc_spoolss_14(struct dcerpc_pipe *p, TALLOC_CTX *mem_ctx, struct spoolss_14 *r)
+{
+ NTSTATUS status;
+ status = dcerpc_ndr_request(p, DCERPC_SPOOLSS_14, mem_ctx,
+ (ndr_push_fn_t) ndr_push_spoolss_14,
+ (ndr_pull_fn_t) ndr_pull_spoolss_14,
+ r);
+ if (!NT_STATUS_IS_OK(status)) {
+ return status;
+ }
+
+ return r->out.result;
+}
+
+NTSTATUS dcerpc_spoolss_15(struct dcerpc_pipe *p, TALLOC_CTX *mem_ctx, struct spoolss_15 *r)
+{
+ NTSTATUS status;
+ status = dcerpc_ndr_request(p, DCERPC_SPOOLSS_15, mem_ctx,
+ (ndr_push_fn_t) ndr_push_spoolss_15,
+ (ndr_pull_fn_t) ndr_pull_spoolss_15,
+ r);
+ if (!NT_STATUS_IS_OK(status)) {
+ return status;
+ }
+
+ return r->out.result;
+}
+
+NTSTATUS dcerpc_spoolss_16(struct dcerpc_pipe *p, TALLOC_CTX *mem_ctx, struct spoolss_16 *r)
+{
+ NTSTATUS status;
+ status = dcerpc_ndr_request(p, DCERPC_SPOOLSS_16, mem_ctx,
+ (ndr_push_fn_t) ndr_push_spoolss_16,
+ (ndr_pull_fn_t) ndr_pull_spoolss_16,
+ r);
+ if (!NT_STATUS_IS_OK(status)) {
+ return status;
+ }
+
+ return r->out.result;
+}
+
+NTSTATUS dcerpc_spoolss_17(struct dcerpc_pipe *p, TALLOC_CTX *mem_ctx, struct spoolss_17 *r)
+{
+ NTSTATUS status;
+ status = dcerpc_ndr_request(p, DCERPC_SPOOLSS_17, mem_ctx,
+ (ndr_push_fn_t) ndr_push_spoolss_17,
+ (ndr_pull_fn_t) ndr_pull_spoolss_17,
+ r);
+ if (!NT_STATUS_IS_OK(status)) {
+ return status;
+ }
+
+ return r->out.result;
+}
+
+NTSTATUS dcerpc_spoolss_18(struct dcerpc_pipe *p, TALLOC_CTX *mem_ctx, struct spoolss_18 *r)
+{
+ NTSTATUS status;
+ status = dcerpc_ndr_request(p, DCERPC_SPOOLSS_18, mem_ctx,
+ (ndr_push_fn_t) ndr_push_spoolss_18,
+ (ndr_pull_fn_t) ndr_pull_spoolss_18,
+ r);
+ if (!NT_STATUS_IS_OK(status)) {
+ return status;
+ }
+
+ return r->out.result;
+}
+
+NTSTATUS dcerpc_spoolss_19(struct dcerpc_pipe *p, TALLOC_CTX *mem_ctx, struct spoolss_19 *r)
+{
+ NTSTATUS status;
+ status = dcerpc_ndr_request(p, DCERPC_SPOOLSS_19, mem_ctx,
+ (ndr_push_fn_t) ndr_push_spoolss_19,
+ (ndr_pull_fn_t) ndr_pull_spoolss_19,
+ r);
+ if (!NT_STATUS_IS_OK(status)) {
+ return status;
+ }
+
+ return r->out.result;
+}
+
+NTSTATUS dcerpc_spoolss_1a(struct dcerpc_pipe *p, TALLOC_CTX *mem_ctx, struct spoolss_1a *r)
+{
+ NTSTATUS status;
+ status = dcerpc_ndr_request(p, DCERPC_SPOOLSS_1A, mem_ctx,
+ (ndr_push_fn_t) ndr_push_spoolss_1a,
+ (ndr_pull_fn_t) ndr_pull_spoolss_1a,
+ r);
+ if (!NT_STATUS_IS_OK(status)) {
+ return status;
+ }
+
+ return r->out.result;
+}
+
+NTSTATUS dcerpc_spoolss_1b(struct dcerpc_pipe *p, TALLOC_CTX *mem_ctx, struct spoolss_1b *r)
+{
+ NTSTATUS status;
+ status = dcerpc_ndr_request(p, DCERPC_SPOOLSS_1B, mem_ctx,
+ (ndr_push_fn_t) ndr_push_spoolss_1b,
+ (ndr_pull_fn_t) ndr_pull_spoolss_1b,
+ r);
+ if (!NT_STATUS_IS_OK(status)) {
+ return status;
+ }
+
+ return r->out.result;
+}
+
+NTSTATUS dcerpc_spoolss_1c(struct dcerpc_pipe *p, TALLOC_CTX *mem_ctx, struct spoolss_1c *r)
+{
+ NTSTATUS status;
+ status = dcerpc_ndr_request(p, DCERPC_SPOOLSS_1C, mem_ctx,
+ (ndr_push_fn_t) ndr_push_spoolss_1c,
+ (ndr_pull_fn_t) ndr_pull_spoolss_1c,
+ r);
+ if (!NT_STATUS_IS_OK(status)) {
+ return status;
+ }
+
+ return r->out.result;
+}
+
+NTSTATUS dcerpc_spoolss_1d(struct dcerpc_pipe *p, TALLOC_CTX *mem_ctx, struct spoolss_1d *r)
+{
+ NTSTATUS status;
+ status = dcerpc_ndr_request(p, DCERPC_SPOOLSS_1D, mem_ctx,
+ (ndr_push_fn_t) ndr_push_spoolss_1d,
+ (ndr_pull_fn_t) ndr_pull_spoolss_1d,
+ r);
+ if (!NT_STATUS_IS_OK(status)) {
+ return status;
+ }
+
+ return r->out.result;
+}
+
+NTSTATUS dcerpc_spoolss_1e(struct dcerpc_pipe *p, TALLOC_CTX *mem_ctx, struct spoolss_1e *r)
+{
+ NTSTATUS status;
+ status = dcerpc_ndr_request(p, DCERPC_SPOOLSS_1E, mem_ctx,
+ (ndr_push_fn_t) ndr_push_spoolss_1e,
+ (ndr_pull_fn_t) ndr_pull_spoolss_1e,
+ r);
+ if (!NT_STATUS_IS_OK(status)) {
+ return status;
+ }
+
+ return r->out.result;
+}
+
+NTSTATUS dcerpc_spoolss_1f(struct dcerpc_pipe *p, TALLOC_CTX *mem_ctx, struct spoolss_1f *r)
+{
+ NTSTATUS status;
+ status = dcerpc_ndr_request(p, DCERPC_SPOOLSS_1F, mem_ctx,
+ (ndr_push_fn_t) ndr_push_spoolss_1f,
+ (ndr_pull_fn_t) ndr_pull_spoolss_1f,
+ r);
+ if (!NT_STATUS_IS_OK(status)) {
+ return status;
+ }
+
+ return r->out.result;
+}
+
+NTSTATUS dcerpc_spoolss_20(struct dcerpc_pipe *p, TALLOC_CTX *mem_ctx, struct spoolss_20 *r)
+{
+ NTSTATUS status;
+ status = dcerpc_ndr_request(p, DCERPC_SPOOLSS_20, mem_ctx,
+ (ndr_push_fn_t) ndr_push_spoolss_20,
+ (ndr_pull_fn_t) ndr_pull_spoolss_20,
+ r);
+ if (!NT_STATUS_IS_OK(status)) {
+ return status;
+ }
+
+ return r->out.result;
+}
+
+NTSTATUS dcerpc_spoolss_21(struct dcerpc_pipe *p, TALLOC_CTX *mem_ctx, struct spoolss_21 *r)
+{
+ NTSTATUS status;
+ status = dcerpc_ndr_request(p, DCERPC_SPOOLSS_21, mem_ctx,
+ (ndr_push_fn_t) ndr_push_spoolss_21,
+ (ndr_pull_fn_t) ndr_pull_spoolss_21,
+ r);
+ if (!NT_STATUS_IS_OK(status)) {
+ return status;
+ }
+
+ return r->out.result;
+}
+
+NTSTATUS dcerpc_spoolss_22(struct dcerpc_pipe *p, TALLOC_CTX *mem_ctx, struct spoolss_22 *r)
+{
+ NTSTATUS status;
+ status = dcerpc_ndr_request(p, DCERPC_SPOOLSS_22, mem_ctx,
+ (ndr_push_fn_t) ndr_push_spoolss_22,
+ (ndr_pull_fn_t) ndr_pull_spoolss_22,
+ r);
+ if (!NT_STATUS_IS_OK(status)) {
+ return status;
+ }
+
+ return r->out.result;
+}
+
+NTSTATUS dcerpc_spoolss_23(struct dcerpc_pipe *p, TALLOC_CTX *mem_ctx, struct spoolss_23 *r)
+{
+ NTSTATUS status;
+ status = dcerpc_ndr_request(p, DCERPC_SPOOLSS_23, mem_ctx,
+ (ndr_push_fn_t) ndr_push_spoolss_23,
+ (ndr_pull_fn_t) ndr_pull_spoolss_23,
+ r);
+ if (!NT_STATUS_IS_OK(status)) {
+ return status;
+ }
+
+ return r->out.result;
+}
+
+NTSTATUS dcerpc_spoolss_24(struct dcerpc_pipe *p, TALLOC_CTX *mem_ctx, struct spoolss_24 *r)
+{
+ NTSTATUS status;
+ status = dcerpc_ndr_request(p, DCERPC_SPOOLSS_24, mem_ctx,
+ (ndr_push_fn_t) ndr_push_spoolss_24,
+ (ndr_pull_fn_t) ndr_pull_spoolss_24,
+ r);
+ if (!NT_STATUS_IS_OK(status)) {
+ return status;
+ }
+
+ return r->out.result;
+}
+
+NTSTATUS dcerpc_spoolss_25(struct dcerpc_pipe *p, TALLOC_CTX *mem_ctx, struct spoolss_25 *r)
+{
+ NTSTATUS status;
+ status = dcerpc_ndr_request(p, DCERPC_SPOOLSS_25, mem_ctx,
+ (ndr_push_fn_t) ndr_push_spoolss_25,
+ (ndr_pull_fn_t) ndr_pull_spoolss_25,
+ r);
+ if (!NT_STATUS_IS_OK(status)) {
+ return status;
+ }
+
+ return r->out.result;
+}
+
+NTSTATUS dcerpc_spoolss_26(struct dcerpc_pipe *p, TALLOC_CTX *mem_ctx, struct spoolss_26 *r)
+{
+ NTSTATUS status;
+ status = dcerpc_ndr_request(p, DCERPC_SPOOLSS_26, mem_ctx,
+ (ndr_push_fn_t) ndr_push_spoolss_26,
+ (ndr_pull_fn_t) ndr_pull_spoolss_26,
+ r);
+ if (!NT_STATUS_IS_OK(status)) {
+ return status;
+ }
+
+ return r->out.result;
+}
+
+NTSTATUS dcerpc_spoolss_27(struct dcerpc_pipe *p, TALLOC_CTX *mem_ctx, struct spoolss_27 *r)
+{
+ NTSTATUS status;
+ status = dcerpc_ndr_request(p, DCERPC_SPOOLSS_27, mem_ctx,
+ (ndr_push_fn_t) ndr_push_spoolss_27,
+ (ndr_pull_fn_t) ndr_pull_spoolss_27,
+ r);
+ if (!NT_STATUS_IS_OK(status)) {
+ return status;
+ }
+
+ return r->out.result;
+}
+
+NTSTATUS dcerpc_spoolss_28(struct dcerpc_pipe *p, TALLOC_CTX *mem_ctx, struct spoolss_28 *r)
+{
+ NTSTATUS status;
+ status = dcerpc_ndr_request(p, DCERPC_SPOOLSS_28, mem_ctx,
+ (ndr_push_fn_t) ndr_push_spoolss_28,
+ (ndr_pull_fn_t) ndr_pull_spoolss_28,
+ r);
+ if (!NT_STATUS_IS_OK(status)) {
+ return status;
+ }
+
+ return r->out.result;
+}
+
+NTSTATUS dcerpc_spoolss_29(struct dcerpc_pipe *p, TALLOC_CTX *mem_ctx, struct spoolss_29 *r)
+{
+ NTSTATUS status;
+ status = dcerpc_ndr_request(p, DCERPC_SPOOLSS_29, mem_ctx,
+ (ndr_push_fn_t) ndr_push_spoolss_29,
+ (ndr_pull_fn_t) ndr_pull_spoolss_29,
+ r);
+ if (!NT_STATUS_IS_OK(status)) {
+ return status;
+ }
+
+ return r->out.result;
+}
+
+NTSTATUS dcerpc_spoolss_2a(struct dcerpc_pipe *p, TALLOC_CTX *mem_ctx, struct spoolss_2a *r)
+{
+ NTSTATUS status;
+ status = dcerpc_ndr_request(p, DCERPC_SPOOLSS_2A, mem_ctx,
+ (ndr_push_fn_t) ndr_push_spoolss_2a,
+ (ndr_pull_fn_t) ndr_pull_spoolss_2a,
+ r);
+ if (!NT_STATUS_IS_OK(status)) {
+ return status;
+ }
+
+ return r->out.result;
+}
+
+NTSTATUS dcerpc_spoolss_2b(struct dcerpc_pipe *p, TALLOC_CTX *mem_ctx, struct spoolss_2b *r)
+{
+ NTSTATUS status;
+ status = dcerpc_ndr_request(p, DCERPC_SPOOLSS_2B, mem_ctx,
+ (ndr_push_fn_t) ndr_push_spoolss_2b,
+ (ndr_pull_fn_t) ndr_pull_spoolss_2b,
+ r);
+ if (!NT_STATUS_IS_OK(status)) {
+ return status;
+ }
+
+ return r->out.result;
+}
+
+NTSTATUS dcerpc_spoolss_2c(struct dcerpc_pipe *p, TALLOC_CTX *mem_ctx, struct spoolss_2c *r)
+{
+ NTSTATUS status;
+ status = dcerpc_ndr_request(p, DCERPC_SPOOLSS_2C, mem_ctx,
+ (ndr_push_fn_t) ndr_push_spoolss_2c,
+ (ndr_pull_fn_t) ndr_pull_spoolss_2c,
+ r);
+ if (!NT_STATUS_IS_OK(status)) {
+ return status;
+ }
+
+ return r->out.result;
+}
+
+NTSTATUS dcerpc_spoolss_2d(struct dcerpc_pipe *p, TALLOC_CTX *mem_ctx, struct spoolss_2d *r)
+{
+ NTSTATUS status;
+ status = dcerpc_ndr_request(p, DCERPC_SPOOLSS_2D, mem_ctx,
+ (ndr_push_fn_t) ndr_push_spoolss_2d,
+ (ndr_pull_fn_t) ndr_pull_spoolss_2d,
+ r);
+ if (!NT_STATUS_IS_OK(status)) {
+ return status;
+ }
+
+ return r->out.result;
+}
+
+NTSTATUS dcerpc_spoolss_2e(struct dcerpc_pipe *p, TALLOC_CTX *mem_ctx, struct spoolss_2e *r)
+{
+ NTSTATUS status;
+ status = dcerpc_ndr_request(p, DCERPC_SPOOLSS_2E, mem_ctx,
+ (ndr_push_fn_t) ndr_push_spoolss_2e,
+ (ndr_pull_fn_t) ndr_pull_spoolss_2e,
+ r);
+ if (!NT_STATUS_IS_OK(status)) {
+ return status;
+ }
+
+ return r->out.result;
+}
+
+NTSTATUS dcerpc_spoolss_2f(struct dcerpc_pipe *p, TALLOC_CTX *mem_ctx, struct spoolss_2f *r)
+{
+ NTSTATUS status;
+ status = dcerpc_ndr_request(p, DCERPC_SPOOLSS_2F, mem_ctx,
+ (ndr_push_fn_t) ndr_push_spoolss_2f,
+ (ndr_pull_fn_t) ndr_pull_spoolss_2f,
+ r);
+ if (!NT_STATUS_IS_OK(status)) {
+ return status;
+ }
+
+ return r->out.result;
+}
+
+NTSTATUS dcerpc_spoolss_30(struct dcerpc_pipe *p, TALLOC_CTX *mem_ctx, struct spoolss_30 *r)
+{
+ NTSTATUS status;
+ status = dcerpc_ndr_request(p, DCERPC_SPOOLSS_30, mem_ctx,
+ (ndr_push_fn_t) ndr_push_spoolss_30,
+ (ndr_pull_fn_t) ndr_pull_spoolss_30,
+ r);
+ if (!NT_STATUS_IS_OK(status)) {
+ return status;
+ }
+
+ return r->out.result;
+}
+
+NTSTATUS dcerpc_spoolss_31(struct dcerpc_pipe *p, TALLOC_CTX *mem_ctx, struct spoolss_31 *r)
+{
+ NTSTATUS status;
+ status = dcerpc_ndr_request(p, DCERPC_SPOOLSS_31, mem_ctx,
+ (ndr_push_fn_t) ndr_push_spoolss_31,
+ (ndr_pull_fn_t) ndr_pull_spoolss_31,
+ r);
+ if (!NT_STATUS_IS_OK(status)) {
+ return status;
+ }
+
+ return r->out.result;
+}
+
+NTSTATUS dcerpc_spoolss_32(struct dcerpc_pipe *p, TALLOC_CTX *mem_ctx, struct spoolss_32 *r)
+{
+ NTSTATUS status;
+ status = dcerpc_ndr_request(p, DCERPC_SPOOLSS_32, mem_ctx,
+ (ndr_push_fn_t) ndr_push_spoolss_32,
+ (ndr_pull_fn_t) ndr_pull_spoolss_32,
+ r);
+ if (!NT_STATUS_IS_OK(status)) {
+ return status;
+ }
+
+ return r->out.result;
+}
+
+NTSTATUS dcerpc_spoolss_33(struct dcerpc_pipe *p, TALLOC_CTX *mem_ctx, struct spoolss_33 *r)
+{
+ NTSTATUS status;
+ status = dcerpc_ndr_request(p, DCERPC_SPOOLSS_33, mem_ctx,
+ (ndr_push_fn_t) ndr_push_spoolss_33,
+ (ndr_pull_fn_t) ndr_pull_spoolss_33,
+ r);
+ if (!NT_STATUS_IS_OK(status)) {
+ return status;
+ }
+
+ return r->out.result;
+}
+
+NTSTATUS dcerpc_spoolss_34(struct dcerpc_pipe *p, TALLOC_CTX *mem_ctx, struct spoolss_34 *r)
+{
+ NTSTATUS status;
+ status = dcerpc_ndr_request(p, DCERPC_SPOOLSS_34, mem_ctx,
+ (ndr_push_fn_t) ndr_push_spoolss_34,
+ (ndr_pull_fn_t) ndr_pull_spoolss_34,
+ r);
+ if (!NT_STATUS_IS_OK(status)) {
+ return status;
+ }
+
+ return r->out.result;
+}
+
+NTSTATUS dcerpc_spoolss_35(struct dcerpc_pipe *p, TALLOC_CTX *mem_ctx, struct spoolss_35 *r)
+{
+ NTSTATUS status;
+ status = dcerpc_ndr_request(p, DCERPC_SPOOLSS_35, mem_ctx,
+ (ndr_push_fn_t) ndr_push_spoolss_35,
+ (ndr_pull_fn_t) ndr_pull_spoolss_35,
+ r);
+ if (!NT_STATUS_IS_OK(status)) {
+ return status;
+ }
+
+ return r->out.result;
+}
+
+NTSTATUS dcerpc_spoolss_36(struct dcerpc_pipe *p, TALLOC_CTX *mem_ctx, struct spoolss_36 *r)
+{
+ NTSTATUS status;
+ status = dcerpc_ndr_request(p, DCERPC_SPOOLSS_36, mem_ctx,
+ (ndr_push_fn_t) ndr_push_spoolss_36,
+ (ndr_pull_fn_t) ndr_pull_spoolss_36,
+ r);
+ if (!NT_STATUS_IS_OK(status)) {
+ return status;
+ }
+
+ return r->out.result;
+}
+
+NTSTATUS dcerpc_spoolss_37(struct dcerpc_pipe *p, TALLOC_CTX *mem_ctx, struct spoolss_37 *r)
+{
+ NTSTATUS status;
+ status = dcerpc_ndr_request(p, DCERPC_SPOOLSS_37, mem_ctx,
+ (ndr_push_fn_t) ndr_push_spoolss_37,
+ (ndr_pull_fn_t) ndr_pull_spoolss_37,
+ r);
+ if (!NT_STATUS_IS_OK(status)) {
+ return status;
+ }
+
+ return r->out.result;
+}
+
+NTSTATUS dcerpc_spoolss_38(struct dcerpc_pipe *p, TALLOC_CTX *mem_ctx, struct spoolss_38 *r)
+{
+ NTSTATUS status;
+ status = dcerpc_ndr_request(p, DCERPC_SPOOLSS_38, mem_ctx,
+ (ndr_push_fn_t) ndr_push_spoolss_38,
+ (ndr_pull_fn_t) ndr_pull_spoolss_38,
+ r);
+ if (!NT_STATUS_IS_OK(status)) {
+ return status;
+ }
+
+ return r->out.result;
+}
+
+NTSTATUS dcerpc_spoolss_39(struct dcerpc_pipe *p, TALLOC_CTX *mem_ctx, struct spoolss_39 *r)
+{
+ NTSTATUS status;
+ status = dcerpc_ndr_request(p, DCERPC_SPOOLSS_39, mem_ctx,
+ (ndr_push_fn_t) ndr_push_spoolss_39,
+ (ndr_pull_fn_t) ndr_pull_spoolss_39,
+ r);
+ if (!NT_STATUS_IS_OK(status)) {
+ return status;
+ }
+
+ return r->out.result;
+}
+
+NTSTATUS dcerpc_spoolss_3a(struct dcerpc_pipe *p, TALLOC_CTX *mem_ctx, struct spoolss_3a *r)
+{
+ NTSTATUS status;
+ status = dcerpc_ndr_request(p, DCERPC_SPOOLSS_3A, mem_ctx,
+ (ndr_push_fn_t) ndr_push_spoolss_3a,
+ (ndr_pull_fn_t) ndr_pull_spoolss_3a,
+ r);
+ if (!NT_STATUS_IS_OK(status)) {
+ return status;
+ }
+
+ return r->out.result;
+}
+
+NTSTATUS dcerpc_spoolss_3b(struct dcerpc_pipe *p, TALLOC_CTX *mem_ctx, struct spoolss_3b *r)
+{
+ NTSTATUS status;
+ status = dcerpc_ndr_request(p, DCERPC_SPOOLSS_3B, mem_ctx,
+ (ndr_push_fn_t) ndr_push_spoolss_3b,
+ (ndr_pull_fn_t) ndr_pull_spoolss_3b,
+ r);
+ if (!NT_STATUS_IS_OK(status)) {
+ return status;
+ }
+
+ return r->out.result;
+}
+
+NTSTATUS dcerpc_spoolss_3c(struct dcerpc_pipe *p, TALLOC_CTX *mem_ctx, struct spoolss_3c *r)
+{
+ NTSTATUS status;
+ status = dcerpc_ndr_request(p, DCERPC_SPOOLSS_3C, mem_ctx,
+ (ndr_push_fn_t) ndr_push_spoolss_3c,
+ (ndr_pull_fn_t) ndr_pull_spoolss_3c,
+ r);
+ if (!NT_STATUS_IS_OK(status)) {
+ return status;
+ }
+
+ return r->out.result;
+}
+
+NTSTATUS dcerpc_spoolss_3d(struct dcerpc_pipe *p, TALLOC_CTX *mem_ctx, struct spoolss_3d *r)
+{
+ NTSTATUS status;
+ status = dcerpc_ndr_request(p, DCERPC_SPOOLSS_3D, mem_ctx,
+ (ndr_push_fn_t) ndr_push_spoolss_3d,
+ (ndr_pull_fn_t) ndr_pull_spoolss_3d,
+ r);
+ if (!NT_STATUS_IS_OK(status)) {
+ return status;
+ }
+
+ return r->out.result;
+}
+
+NTSTATUS dcerpc_spoolss_3e(struct dcerpc_pipe *p, TALLOC_CTX *mem_ctx, struct spoolss_3e *r)
+{
+ NTSTATUS status;
+ status = dcerpc_ndr_request(p, DCERPC_SPOOLSS_3E, mem_ctx,
+ (ndr_push_fn_t) ndr_push_spoolss_3e,
+ (ndr_pull_fn_t) ndr_pull_spoolss_3e,
+ r);
+ if (!NT_STATUS_IS_OK(status)) {
+ return status;
+ }
+
+ return r->out.result;
+}
+
+NTSTATUS dcerpc_spoolss_3f(struct dcerpc_pipe *p, TALLOC_CTX *mem_ctx, struct spoolss_3f *r)
+{
+ NTSTATUS status;
+ status = dcerpc_ndr_request(p, DCERPC_SPOOLSS_3F, mem_ctx,
+ (ndr_push_fn_t) ndr_push_spoolss_3f,
+ (ndr_pull_fn_t) ndr_pull_spoolss_3f,
+ r);
+ if (!NT_STATUS_IS_OK(status)) {
+ return status;
+ }
+
+ return r->out.result;
+}
+
+NTSTATUS dcerpc_spoolss_40(struct dcerpc_pipe *p, TALLOC_CTX *mem_ctx, struct spoolss_40 *r)
+{
+ NTSTATUS status;
+ status = dcerpc_ndr_request(p, DCERPC_SPOOLSS_40, mem_ctx,
+ (ndr_push_fn_t) ndr_push_spoolss_40,
+ (ndr_pull_fn_t) ndr_pull_spoolss_40,
+ r);
+ if (!NT_STATUS_IS_OK(status)) {
+ return status;
+ }
+
+ return r->out.result;
+}
+
+NTSTATUS dcerpc_spoolss_41(struct dcerpc_pipe *p, TALLOC_CTX *mem_ctx, struct spoolss_41 *r)
+{
+ NTSTATUS status;
+ status = dcerpc_ndr_request(p, DCERPC_SPOOLSS_41, mem_ctx,
+ (ndr_push_fn_t) ndr_push_spoolss_41,
+ (ndr_pull_fn_t) ndr_pull_spoolss_41,
+ r);
+ if (!NT_STATUS_IS_OK(status)) {
+ return status;
+ }
+
+ return r->out.result;
+}
+
+NTSTATUS dcerpc_spoolss_42(struct dcerpc_pipe *p, TALLOC_CTX *mem_ctx, struct spoolss_42 *r)
+{
+ NTSTATUS status;
+ status = dcerpc_ndr_request(p, DCERPC_SPOOLSS_42, mem_ctx,
+ (ndr_push_fn_t) ndr_push_spoolss_42,
+ (ndr_pull_fn_t) ndr_pull_spoolss_42,
+ r);
+ if (!NT_STATUS_IS_OK(status)) {
+ return status;
+ }
+
+ return r->out.result;
+}
+
+NTSTATUS dcerpc_spoolss_43(struct dcerpc_pipe *p, TALLOC_CTX *mem_ctx, struct spoolss_43 *r)
+{
+ NTSTATUS status;
+ status = dcerpc_ndr_request(p, DCERPC_SPOOLSS_43, mem_ctx,
+ (ndr_push_fn_t) ndr_push_spoolss_43,
+ (ndr_pull_fn_t) ndr_pull_spoolss_43,
+ r);
+ if (!NT_STATUS_IS_OK(status)) {
+ return status;
+ }
+
+ return r->out.result;
+}
+
+NTSTATUS dcerpc_spoolss_44(struct dcerpc_pipe *p, TALLOC_CTX *mem_ctx, struct spoolss_44 *r)
+{
+ NTSTATUS status;
+ status = dcerpc_ndr_request(p, DCERPC_SPOOLSS_44, mem_ctx,
+ (ndr_push_fn_t) ndr_push_spoolss_44,
+ (ndr_pull_fn_t) ndr_pull_spoolss_44,
+ r);
+ if (!NT_STATUS_IS_OK(status)) {
+ return status;
+ }
+
+ return r->out.result;
+}
+
+NTSTATUS dcerpc_spoolss_OpenPrinterEx(struct dcerpc_pipe *p, TALLOC_CTX *mem_ctx, struct spoolss_OpenPrinterEx *r)
+{
+ NTSTATUS status;
+ status = dcerpc_ndr_request(p, DCERPC_SPOOLSS_OPENPRINTEREX, mem_ctx,
+ (ndr_push_fn_t) ndr_push_spoolss_OpenPrinterEx,
+ (ndr_pull_fn_t) ndr_pull_spoolss_OpenPrinterEx,
+ r);
+ if (!NT_STATUS_IS_OK(status)) {
+ return status;
+ }
+
+ return r->out.result;
+}
+
+NTSTATUS dcerpc_spoolss_46(struct dcerpc_pipe *p, TALLOC_CTX *mem_ctx, struct spoolss_46 *r)
+{
+ NTSTATUS status;
+ status = dcerpc_ndr_request(p, DCERPC_SPOOLSS_46, mem_ctx,
+ (ndr_push_fn_t) ndr_push_spoolss_46,
+ (ndr_pull_fn_t) ndr_pull_spoolss_46,
+ r);
+ if (!NT_STATUS_IS_OK(status)) {
+ return status;
+ }
+
+ return r->out.result;
+}
+
+NTSTATUS dcerpc_spoolss_47(struct dcerpc_pipe *p, TALLOC_CTX *mem_ctx, struct spoolss_47 *r)
+{
+ NTSTATUS status;
+ status = dcerpc_ndr_request(p, DCERPC_SPOOLSS_47, mem_ctx,
+ (ndr_push_fn_t) ndr_push_spoolss_47,
+ (ndr_pull_fn_t) ndr_pull_spoolss_47,
+ r);
+ if (!NT_STATUS_IS_OK(status)) {
+ return status;
+ }
+
+ return r->out.result;
+}
+
+NTSTATUS dcerpc_spoolss_48(struct dcerpc_pipe *p, TALLOC_CTX *mem_ctx, struct spoolss_48 *r)
+{
+ NTSTATUS status;
+ status = dcerpc_ndr_request(p, DCERPC_SPOOLSS_48, mem_ctx,
+ (ndr_push_fn_t) ndr_push_spoolss_48,
+ (ndr_pull_fn_t) ndr_pull_spoolss_48,
+ r);
+ if (!NT_STATUS_IS_OK(status)) {
+ return status;
+ }
+
+ return r->out.result;
+}
+
+NTSTATUS dcerpc_spoolss_49(struct dcerpc_pipe *p, TALLOC_CTX *mem_ctx, struct spoolss_49 *r)
+{
+ NTSTATUS status;
+ status = dcerpc_ndr_request(p, DCERPC_SPOOLSS_49, mem_ctx,
+ (ndr_push_fn_t) ndr_push_spoolss_49,
+ (ndr_pull_fn_t) ndr_pull_spoolss_49,
+ r);
+ if (!NT_STATUS_IS_OK(status)) {
+ return status;
+ }
+
+ return r->out.result;
+}
+
+NTSTATUS dcerpc_spoolss_4a(struct dcerpc_pipe *p, TALLOC_CTX *mem_ctx, struct spoolss_4a *r)
+{
+ NTSTATUS status;
+ status = dcerpc_ndr_request(p, DCERPC_SPOOLSS_4A, mem_ctx,
+ (ndr_push_fn_t) ndr_push_spoolss_4a,
+ (ndr_pull_fn_t) ndr_pull_spoolss_4a,
+ r);
+ if (!NT_STATUS_IS_OK(status)) {
+ return status;
+ }
+
+ return r->out.result;
+}
+
+NTSTATUS dcerpc_spoolss_4b(struct dcerpc_pipe *p, TALLOC_CTX *mem_ctx, struct spoolss_4b *r)
+{
+ NTSTATUS status;
+ status = dcerpc_ndr_request(p, DCERPC_SPOOLSS_4B, mem_ctx,
+ (ndr_push_fn_t) ndr_push_spoolss_4b,
+ (ndr_pull_fn_t) ndr_pull_spoolss_4b,
+ r);
+ if (!NT_STATUS_IS_OK(status)) {
+ return status;
+ }
+
+ return r->out.result;
+}
+
+NTSTATUS dcerpc_spoolss_4c(struct dcerpc_pipe *p, TALLOC_CTX *mem_ctx, struct spoolss_4c *r)
+{
+ NTSTATUS status;
+ status = dcerpc_ndr_request(p, DCERPC_SPOOLSS_4C, mem_ctx,
+ (ndr_push_fn_t) ndr_push_spoolss_4c,
+ (ndr_pull_fn_t) ndr_pull_spoolss_4c,
+ r);
+ if (!NT_STATUS_IS_OK(status)) {
+ return status;
+ }
+
+ return r->out.result;
+}
+
+NTSTATUS dcerpc_spoolss_4d(struct dcerpc_pipe *p, TALLOC_CTX *mem_ctx, struct spoolss_4d *r)
+{
+ NTSTATUS status;
+ status = dcerpc_ndr_request(p, DCERPC_SPOOLSS_4D, mem_ctx,
+ (ndr_push_fn_t) ndr_push_spoolss_4d,
+ (ndr_pull_fn_t) ndr_pull_spoolss_4d,
+ r);
+ if (!NT_STATUS_IS_OK(status)) {
+ return status;
+ }
+
+ return r->out.result;
+}
+
+NTSTATUS dcerpc_spoolss_4e(struct dcerpc_pipe *p, TALLOC_CTX *mem_ctx, struct spoolss_4e *r)
+{
+ NTSTATUS status;
+ status = dcerpc_ndr_request(p, DCERPC_SPOOLSS_4E, mem_ctx,
+ (ndr_push_fn_t) ndr_push_spoolss_4e,
+ (ndr_pull_fn_t) ndr_pull_spoolss_4e,
+ r);
+ if (!NT_STATUS_IS_OK(status)) {
+ return status;
+ }
+
+ return r->out.result;
+}
+
+NTSTATUS dcerpc_spoolss_4f(struct dcerpc_pipe *p, TALLOC_CTX *mem_ctx, struct spoolss_4f *r)
+{
+ NTSTATUS status;
+ status = dcerpc_ndr_request(p, DCERPC_SPOOLSS_4F, mem_ctx,
+ (ndr_push_fn_t) ndr_push_spoolss_4f,
+ (ndr_pull_fn_t) ndr_pull_spoolss_4f,
+ r);
+ if (!NT_STATUS_IS_OK(status)) {
+ return status;
+ }
+
+ return r->out.result;
+}
+
+NTSTATUS dcerpc_spoolss_50(struct dcerpc_pipe *p, TALLOC_CTX *mem_ctx, struct spoolss_50 *r)
+{
+ NTSTATUS status;
+ status = dcerpc_ndr_request(p, DCERPC_SPOOLSS_50, mem_ctx,
+ (ndr_push_fn_t) ndr_push_spoolss_50,
+ (ndr_pull_fn_t) ndr_pull_spoolss_50,
+ r);
+ if (!NT_STATUS_IS_OK(status)) {
+ return status;
+ }
+
+ return r->out.result;
+}
+
+NTSTATUS dcerpc_spoolss_51(struct dcerpc_pipe *p, TALLOC_CTX *mem_ctx, struct spoolss_51 *r)
+{
+ NTSTATUS status;
+ status = dcerpc_ndr_request(p, DCERPC_SPOOLSS_51, mem_ctx,
+ (ndr_push_fn_t) ndr_push_spoolss_51,
+ (ndr_pull_fn_t) ndr_pull_spoolss_51,
+ r);
+ if (!NT_STATUS_IS_OK(status)) {
+ return status;
+ }
+
+ return r->out.result;
+}
+
+NTSTATUS dcerpc_spoolss_52(struct dcerpc_pipe *p, TALLOC_CTX *mem_ctx, struct spoolss_52 *r)
+{
+ NTSTATUS status;
+ status = dcerpc_ndr_request(p, DCERPC_SPOOLSS_52, mem_ctx,
+ (ndr_push_fn_t) ndr_push_spoolss_52,
+ (ndr_pull_fn_t) ndr_pull_spoolss_52,
+ r);
+ if (!NT_STATUS_IS_OK(status)) {
+ return status;
+ }
+
+ return r->out.result;
+}
+
+NTSTATUS dcerpc_spoolss_53(struct dcerpc_pipe *p, TALLOC_CTX *mem_ctx, struct spoolss_53 *r)
+{
+ NTSTATUS status;
+ status = dcerpc_ndr_request(p, DCERPC_SPOOLSS_53, mem_ctx,
+ (ndr_push_fn_t) ndr_push_spoolss_53,
+ (ndr_pull_fn_t) ndr_pull_spoolss_53,
+ r);
+ if (!NT_STATUS_IS_OK(status)) {
+ return status;
+ }
+
+ return r->out.result;
+}
+
+NTSTATUS dcerpc_spoolss_54(struct dcerpc_pipe *p, TALLOC_CTX *mem_ctx, struct spoolss_54 *r)
+{
+ NTSTATUS status;
+ status = dcerpc_ndr_request(p, DCERPC_SPOOLSS_54, mem_ctx,
+ (ndr_push_fn_t) ndr_push_spoolss_54,
+ (ndr_pull_fn_t) ndr_pull_spoolss_54,
+ r);
+ if (!NT_STATUS_IS_OK(status)) {
+ return status;
+ }
+
+ return r->out.result;
+}
+
+NTSTATUS dcerpc_spoolss_55(struct dcerpc_pipe *p, TALLOC_CTX *mem_ctx, struct spoolss_55 *r)
+{
+ NTSTATUS status;
+ status = dcerpc_ndr_request(p, DCERPC_SPOOLSS_55, mem_ctx,
+ (ndr_push_fn_t) ndr_push_spoolss_55,
+ (ndr_pull_fn_t) ndr_pull_spoolss_55,
+ r);
+ if (!NT_STATUS_IS_OK(status)) {
+ return status;
+ }
+
+ return r->out.result;
+}
+
+NTSTATUS dcerpc_spoolss_56(struct dcerpc_pipe *p, TALLOC_CTX *mem_ctx, struct spoolss_56 *r)
+{
+ NTSTATUS status;
+ status = dcerpc_ndr_request(p, DCERPC_SPOOLSS_56, mem_ctx,
+ (ndr_push_fn_t) ndr_push_spoolss_56,
+ (ndr_pull_fn_t) ndr_pull_spoolss_56,
+ r);
+ if (!NT_STATUS_IS_OK(status)) {
+ return status;
+ }
+
+ return r->out.result;
+}
+
+NTSTATUS dcerpc_spoolss_57(struct dcerpc_pipe *p, TALLOC_CTX *mem_ctx, struct spoolss_57 *r)
+{
+ NTSTATUS status;
+ status = dcerpc_ndr_request(p, DCERPC_SPOOLSS_57, mem_ctx,
+ (ndr_push_fn_t) ndr_push_spoolss_57,
+ (ndr_pull_fn_t) ndr_pull_spoolss_57,
+ r);
+ if (!NT_STATUS_IS_OK(status)) {
+ return status;
+ }
+
+ return r->out.result;
+}
+
+NTSTATUS dcerpc_spoolss_58(struct dcerpc_pipe *p, TALLOC_CTX *mem_ctx, struct spoolss_58 *r)
+{
+ NTSTATUS status;
+ status = dcerpc_ndr_request(p, DCERPC_SPOOLSS_58, mem_ctx,
+ (ndr_push_fn_t) ndr_push_spoolss_58,
+ (ndr_pull_fn_t) ndr_pull_spoolss_58,
+ r);
+ if (!NT_STATUS_IS_OK(status)) {
+ return status;
+ }
+
+ return r->out.result;
+}
+
+NTSTATUS dcerpc_spoolss_59(struct dcerpc_pipe *p, TALLOC_CTX *mem_ctx, struct spoolss_59 *r)
+{
+ NTSTATUS status;
+ status = dcerpc_ndr_request(p, DCERPC_SPOOLSS_59, mem_ctx,
+ (ndr_push_fn_t) ndr_push_spoolss_59,
+ (ndr_pull_fn_t) ndr_pull_spoolss_59,
+ r);
+ if (!NT_STATUS_IS_OK(status)) {
+ return status;
+ }
+
+ return r->out.result;
+}
+
+NTSTATUS dcerpc_spoolss_5a(struct dcerpc_pipe *p, TALLOC_CTX *mem_ctx, struct spoolss_5a *r)
+{
+ NTSTATUS status;
+ status = dcerpc_ndr_request(p, DCERPC_SPOOLSS_5A, mem_ctx,
+ (ndr_push_fn_t) ndr_push_spoolss_5a,
+ (ndr_pull_fn_t) ndr_pull_spoolss_5a,
+ r);
+ if (!NT_STATUS_IS_OK(status)) {
+ return status;
+ }
+
+ return r->out.result;
+}
+
+NTSTATUS dcerpc_spoolss_5b(struct dcerpc_pipe *p, TALLOC_CTX *mem_ctx, struct spoolss_5b *r)
+{
+ NTSTATUS status;
+ status = dcerpc_ndr_request(p, DCERPC_SPOOLSS_5B, mem_ctx,
+ (ndr_push_fn_t) ndr_push_spoolss_5b,
+ (ndr_pull_fn_t) ndr_pull_spoolss_5b,
+ r);
+ if (!NT_STATUS_IS_OK(status)) {
+ return status;
+ }
+
+ return r->out.result;
+}
+
+NTSTATUS dcerpc_spoolss_5c(struct dcerpc_pipe *p, TALLOC_CTX *mem_ctx, struct spoolss_5c *r)
+{
+ NTSTATUS status;
+ status = dcerpc_ndr_request(p, DCERPC_SPOOLSS_5C, mem_ctx,
+ (ndr_push_fn_t) ndr_push_spoolss_5c,
+ (ndr_pull_fn_t) ndr_pull_spoolss_5c,
+ r);
+ if (!NT_STATUS_IS_OK(status)) {
+ return status;
+ }
+
+ return r->out.result;
+}
+
+NTSTATUS dcerpc_spoolss_5d(struct dcerpc_pipe *p, TALLOC_CTX *mem_ctx, struct spoolss_5d *r)
+{
+ NTSTATUS status;
+ status = dcerpc_ndr_request(p, DCERPC_SPOOLSS_5D, mem_ctx,
+ (ndr_push_fn_t) ndr_push_spoolss_5d,
+ (ndr_pull_fn_t) ndr_pull_spoolss_5d,
+ r);
+ if (!NT_STATUS_IS_OK(status)) {
+ return status;
+ }
+
+ return r->out.result;
+}
+
+NTSTATUS dcerpc_spoolss_5e(struct dcerpc_pipe *p, TALLOC_CTX *mem_ctx, struct spoolss_5e *r)
+{
+ NTSTATUS status;
+ status = dcerpc_ndr_request(p, DCERPC_SPOOLSS_5E, mem_ctx,
+ (ndr_push_fn_t) ndr_push_spoolss_5e,
+ (ndr_pull_fn_t) ndr_pull_spoolss_5e,
+ r);
+ if (!NT_STATUS_IS_OK(status)) {
+ return status;
+ }
+
+ return r->out.result;
+}
+
+NTSTATUS dcerpc_spoolss_5f(struct dcerpc_pipe *p, TALLOC_CTX *mem_ctx, struct spoolss_5f *r)
+{
+ NTSTATUS status;
+ status = dcerpc_ndr_request(p, DCERPC_SPOOLSS_5F, mem_ctx,
+ (ndr_push_fn_t) ndr_push_spoolss_5f,
+ (ndr_pull_fn_t) ndr_pull_spoolss_5f,
+ r);
+ if (!NT_STATUS_IS_OK(status)) {
+ return status;
+ }
+
+ return r->out.result;
+}
diff --git a/source4/torture/rpc/spoolss.c b/source4/torture/rpc/spoolss.c
new file mode 100644
index 0000000000..83a7778a59
--- /dev/null
+++ b/source4/torture/rpc/spoolss.c
@@ -0,0 +1,76 @@
+/*
+ Unix SMB/CIFS implementation.
+ test suite for spoolss rpc operations
+
+ Copyright (C) Tim Potter 2003
+
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program; if not, write to the Free Software
+ Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
+*/
+
+#include "includes.h"
+
+static BOOL test_OpenPrinterEx(struct dcerpc_pipe *p, TALLOC_CTX *mem_ctx)
+{
+ struct spoolss_OpenPrinterEx r;
+ struct spoolss_UserLevel1 userlevel1;
+ NTSTATUS status;
+
+ r.in.printername = "p";
+ r.in.datatype = NULL;
+ r.in.devmode_ctr.size = 0;
+ r.in.devmode_ctr.devmode = NULL;
+ r.in.access_required = 0x12345678;
+ r.in.level = 1;
+ userlevel1.size = 1234;
+ userlevel1.client = "hello";
+ userlevel1.user = "spottyfoot!";
+ userlevel1.build = 1;
+ userlevel1.major = 2;
+ userlevel1.minor = 3;
+ userlevel1.processor = 4;
+ r.in.userlevel.level1 = &userlevel1;
+
+ status = dcerpc_spoolss_OpenPrinterEx(p, mem_ctx, &r);
+
+ if (!NT_STATUS_IS_OK(status)) {
+ printf("OpenPrinter failed - %s\n", nt_errstr(status));
+ return False;
+ }
+
+ return True;
+}
+
+BOOL torture_rpc_spoolss(int dummy)
+{
+ NTSTATUS status;
+ struct dcerpc_pipe *p;
+ TALLOC_CTX *mem_ctx;
+ BOOL ret = True;
+
+ mem_ctx = talloc_init("torture_rpc_spoolss");
+
+ status = torture_rpc_connection(&p, "spoolss");
+ if (!NT_STATUS_IS_OK(status)) {
+ return False;
+ }
+
+ if (!test_OpenPrinterEx(p, mem_ctx)) {
+ ret = False;
+ }
+
+ torture_rpc_close(p);
+
+ return ret;
+}
diff --git a/source4/torture/torture.c b/source4/torture/torture.c
index 967631c66b..532dafe065 100644
--- a/source4/torture/torture.c
+++ b/source4/torture/torture.c
@@ -3987,6 +3987,7 @@ static struct {
{"RPC-LSA", torture_rpc_lsa, 0},
{"RPC-ECHO", torture_rpc_echo, 0},
{"RPC-DFS", torture_rpc_dfs, 0},
+ {"RPC-SPOOLSS", torture_rpc_spoolss, 0},
{NULL, NULL, 0}};