summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--source4/include/doserr.h1
-rw-r--r--source4/libcli/util/doserr.c1
-rw-r--r--source4/librpc/idl/spoolss.idl5
-rw-r--r--source4/librpc/ndr/libndr.h12
-rw-r--r--source4/librpc/ndr/ndr.c20
-rw-r--r--source4/librpc/ndr/ndr_basic.c16
-rw-r--r--source4/librpc/ndr/ndr_dfs.c193
-rw-r--r--source4/librpc/ndr/ndr_echo.c118
-rw-r--r--source4/librpc/ndr/ndr_lsa.c1026
-rw-r--r--source4/librpc/ndr/ndr_samr.c1372
-rw-r--r--source4/librpc/ndr/ndr_spoolss.c1862
-rw-r--r--source4/librpc/ndr/ndr_spoolss.h5
-rw-r--r--source4/torture/rpc/dfs.c8
-rw-r--r--source4/torture/rpc/lsa.c40
-rw-r--r--source4/torture/rpc/samr.c22
-rw-r--r--source4/torture/rpc/spoolss.c2
16 files changed, 4658 insertions, 45 deletions
diff --git a/source4/include/doserr.h b/source4/include/doserr.h
index 576aeda2bf..114366ff6e 100644
--- a/source4/include/doserr.h
+++ b/source4/include/doserr.h
@@ -170,6 +170,7 @@
#define WERR_NOMEM W_ERROR(8)
#define WERR_GENERAL_FAILURE W_ERROR(31)
#define WERR_NOT_SUPPORTED W_ERROR(50)
+#define WERR_BAD_NETPATH W_ERROR(53)
#define WERR_PRINTQ_FULL W_ERROR(61)
#define WERR_NO_SPOOL_SPACE W_ERROR(62)
#define WERR_NO_SUCH_SHARE W_ERROR(67)
diff --git a/source4/libcli/util/doserr.c b/source4/libcli/util/doserr.c
index 28bad6109d..c4ec869961 100644
--- a/source4/libcli/util/doserr.c
+++ b/source4/libcli/util/doserr.c
@@ -35,6 +35,7 @@ werror_code_struct dos_errs[] =
{ "WERR_ACCESS_DENIED", WERR_ACCESS_DENIED },
{ "WERR_BADFID", WERR_BADFID },
{ "WERR_BADFUNC", WERR_BADFUNC },
+ { "WERR_BAD_NETPATH", WERR_BAD_NETPATH },
{ "WERR_INSUFFICIENT_BUFFER", WERR_INSUFFICIENT_BUFFER },
{ "WERR_NO_SUCH_SHARE", WERR_NO_SUCH_SHARE },
{ "WERR_ALREADY_EXISTS", WERR_ALREADY_EXISTS },
diff --git a/source4/librpc/idl/spoolss.idl b/source4/librpc/idl/spoolss.idl
index f39c17c395..1d33274f93 100644
--- a/source4/librpc/idl/spoolss.idl
+++ b/source4/librpc/idl/spoolss.idl
@@ -99,6 +99,10 @@
} spoolss_PrinterInfo5;
typedef struct {
+ uint32 unknown;
+ } spoolss_PrinterInfo6;
+
+ typedef struct {
[relative] nstring guid; /* text form of printer guid */
uint32 action;
} spoolss_PrinterInfo7;
@@ -109,6 +113,7 @@
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;
diff --git a/source4/librpc/ndr/libndr.h b/source4/librpc/ndr/libndr.h
index 8c224d9a01..f0a906e5fa 100644
--- a/source4/librpc/ndr/libndr.h
+++ b/source4/librpc/ndr/libndr.h
@@ -94,6 +94,10 @@ struct ndr_print {
/* useful macro for debugging */
#define NDR_PRINT_DEBUG(type, p) ndr_print_debug((ndr_print_fn_t)ndr_print_ ##type, #p, p)
#define NDR_PRINT_UNION_DEBUG(type, level, p) ndr_print_union_debug((ndr_print_union_fn_t)ndr_print_ ##type, #p, level, p)
+#define NDR_PRINT_FUNCTION_DEBUG(type, flags, p) ndr_print_function_debug((ndr_print_function_t)ndr_print_ ##type, #type, flags, p)
+#define NDR_PRINT_BOTH_DEBUG(type, p) NDR_PRINT_FUNCTION_DEBUG(type, NDR_BOTH, p)
+#define NDR_PRINT_OUT_DEBUG(type, p) NDR_PRINT_FUNCTION_DEBUG(type, NDR_OUT, p)
+#define NDR_PRINT_IN_DEBUG(type, p) NDR_PRINT_FUNCTION_DEBUG(type, NDR_IN, p)
enum ndr_err_code {
@@ -112,6 +116,13 @@ enum ndr_err_code {
#define NDR_SCALARS 1
#define NDR_BUFFERS 2
+/*
+ flags passed to ndr_print_*()
+*/
+#define NDR_IN 1
+#define NDR_OUT 2
+#define NDR_BOTH 3
+
#define NDR_PULL_NEED_BYTES(ndr, n) do { \
if ((n) > ndr->data_size || ndr->offset + (n) > ndr->data_size) { \
return NT_STATUS_BUFFER_TOO_SMALL; \
@@ -171,6 +182,7 @@ typedef NTSTATUS (*ndr_pull_flags_fn_t)(struct ndr_pull *, int ndr_flags, void *
typedef NTSTATUS (*ndr_push_union_fn_t)(struct ndr_push *, int ndr_flags, uint16, void *);
typedef NTSTATUS (*ndr_pull_union_fn_t)(struct ndr_pull *, int ndr_flags, uint16 *, void *);
typedef void (*ndr_print_fn_t)(struct ndr_print *, const char *, void *);
+typedef void (*ndr_print_function_t)(struct ndr_print *, const char *, int, void *);
typedef void (*ndr_print_union_fn_t)(struct ndr_print *, const char *, uint16, void *);
/* now pull in the individual parsers */
diff --git a/source4/librpc/ndr/ndr.c b/source4/librpc/ndr/ndr.c
index 6d2a6a99dd..0d40b32835 100644
--- a/source4/librpc/ndr/ndr.c
+++ b/source4/librpc/ndr/ndr.c
@@ -325,7 +325,7 @@ void ndr_print_union_debug(void (*fn)(struct ndr_print *, const char *, uint16,
{
struct ndr_print ndr;
- ndr.mem_ctx = talloc_init("ndr_print_debug");
+ ndr.mem_ctx = talloc_init("ndr_print_union");
if (!ndr.mem_ctx) return;
ndr.print = ndr_print_debug_helper;
ndr.depth = 1;
@@ -334,6 +334,24 @@ void ndr_print_union_debug(void (*fn)(struct ndr_print *, const char *, uint16,
}
/*
+ a useful helper function for printing idl function calls via DEBUG()
+*/
+void ndr_print_function_debug(void (*fn)(struct ndr_print *, const char *, int , void *),
+ const char *name,
+ int flags,
+ void *ptr)
+{
+ struct ndr_print ndr;
+
+ ndr.mem_ctx = talloc_init("ndr_print_function");
+ if (!ndr.mem_ctx) return;
+ ndr.print = ndr_print_debug_helper;
+ ndr.depth = 1;
+ fn(&ndr, name, flags, ptr);
+ talloc_destroy(ndr.mem_ctx);
+}
+
+/*
return and possibly log an NDR error
*/
NTSTATUS ndr_pull_error(struct ndr_pull *ndr, enum ndr_err_code err, const char *format, ...)
diff --git a/source4/librpc/ndr/ndr_basic.c b/source4/librpc/ndr/ndr_basic.c
index ee03e5aaa2..3d87b9efc6 100644
--- a/source4/librpc/ndr/ndr_basic.c
+++ b/source4/librpc/ndr/ndr_basic.c
@@ -591,6 +591,11 @@ void ndr_print_nstring(struct ndr_print *ndr, const char *name, const char **s)
ndr_print_unistr(ndr, name, *s);
}
+void ndr_print_DATA_BLOB(struct ndr_print *ndr, const char *name, DATA_BLOB r)
+{
+ ndr->print(ndr, "%-25s: DATA_BLOB length=%u", name, r.length);
+}
+
/*
push a DATA_BLOB onto the wire.
@@ -635,3 +640,14 @@ NTSTATUS ndr_push_policy_handle(struct ndr_push *ndr,
NDR_CHECK(ndr_push_bytes(ndr, r->data, 20));
return NT_STATUS_OK;
}
+
+
+void ndr_print_policy_handle(struct ndr_print *ndr, const char *name, struct policy_handle *r)
+{
+ ndr->print(ndr, "%-25s: policy_handle %02x%02x%02x%02x%02x%02x%02x%02x%02x%02x%02x%02x%02x%02x%02x%02x%02x%02x%02x%02x",
+ name,
+ r->data[0], r->data[1], r->data[2], r->data[3], r->data[4],
+ r->data[5], r->data[6], r->data[7], r->data[8], r->data[9],
+ r->data[10], r->data[11], r->data[12], r->data[13], r->data[14],
+ r->data[15], r->data[16], r->data[17], r->data[18], r->data[19]);
+}
diff --git a/source4/librpc/ndr/ndr_dfs.c b/source4/librpc/ndr/ndr_dfs.c
index 9832735cb1..90357c0455 100644
--- a/source4/librpc/ndr/ndr_dfs.c
+++ b/source4/librpc/ndr/ndr_dfs.c
@@ -1276,6 +1276,115 @@ NTSTATUS ndr_pull_dfs_Enum(struct ndr_pull *ndr, struct dfs_Enum *r)
return NT_STATUS_OK;
}
+void ndr_print_dfs_Exist(struct ndr_print *ndr, const char *name, int flags, struct dfs_Exist *r)
+{
+ ndr_print_struct(ndr, name, "dfs_Exist");
+ ndr->depth++;
+ if (flags & NDR_IN) {
+ ndr_print_struct(ndr, "in", "dfs_Exist");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ if (flags & NDR_OUT) {
+ ndr_print_struct(ndr, "out", "dfs_Exist");
+ ndr->depth++;
+ ndr_print_ptr(ndr, "exist_flag", r->out.exist_flag);
+ ndr->depth++;
+ ndr_print_uint32(ndr, "exist_flag", *r->out.exist_flag);
+ ndr->depth--;
+ ndr->depth--;
+ }
+ ndr->depth--;
+}
+
+void ndr_print_dfs_Add(struct ndr_print *ndr, const char *name, int flags, struct dfs_Add *r)
+{
+ ndr_print_struct(ndr, name, "dfs_Add");
+ ndr->depth++;
+ if (flags & NDR_IN) {
+ ndr_print_struct(ndr, "in", "dfs_Add");
+ ndr->depth++;
+ ndr_print_ptr(ndr, "path", r->in.path);
+ ndr->depth++;
+ ndr_print_unistr(ndr, "path", r->in.path);
+ ndr->depth--;
+ ndr_print_ptr(ndr, "server", r->in.server);
+ ndr->depth++;
+ ndr_print_unistr(ndr, "server", r->in.server);
+ ndr->depth--;
+ ndr_print_ptr(ndr, "share", r->in.share);
+ ndr->depth++;
+ if (r->in.share) {
+ ndr_print_unistr(ndr, "share", r->in.share);
+ }
+ ndr->depth--;
+ ndr_print_ptr(ndr, "comment", r->in.comment);
+ ndr->depth++;
+ if (r->in.comment) {
+ ndr_print_unistr(ndr, "comment", r->in.comment);
+ }
+ ndr->depth--;
+ ndr_print_uint32(ndr, "flags", r->in.flags);
+ ndr->depth--;
+ }
+ if (flags & NDR_OUT) {
+ ndr_print_struct(ndr, "out", "dfs_Add");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ ndr->depth--;
+}
+
+void ndr_print_dfs_Remove(struct ndr_print *ndr, const char *name, int flags, struct dfs_Remove *r)
+{
+ ndr_print_struct(ndr, name, "dfs_Remove");
+ ndr->depth++;
+ if (flags & NDR_IN) {
+ ndr_print_struct(ndr, "in", "dfs_Remove");
+ ndr->depth++;
+ ndr_print_ptr(ndr, "path", r->in.path);
+ ndr->depth++;
+ ndr_print_unistr(ndr, "path", r->in.path);
+ ndr->depth--;
+ ndr_print_ptr(ndr, "server", r->in.server);
+ ndr->depth++;
+ if (r->in.server) {
+ ndr_print_unistr(ndr, "server", r->in.server);
+ }
+ ndr->depth--;
+ ndr_print_ptr(ndr, "share", r->in.share);
+ ndr->depth++;
+ if (r->in.share) {
+ ndr_print_unistr(ndr, "share", r->in.share);
+ }
+ ndr->depth--;
+ ndr->depth--;
+ }
+ if (flags & NDR_OUT) {
+ ndr_print_struct(ndr, "out", "dfs_Remove");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ ndr->depth--;
+}
+
+void ndr_print_dfs_SetInfo(struct ndr_print *ndr, const char *name, int flags, struct dfs_SetInfo *r)
+{
+ ndr_print_struct(ndr, name, "dfs_SetInfo");
+ ndr->depth++;
+ if (flags & NDR_IN) {
+ ndr_print_struct(ndr, "in", "dfs_SetInfo");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ if (flags & NDR_OUT) {
+ ndr_print_struct(ndr, "out", "dfs_SetInfo");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ ndr->depth--;
+}
+
void ndr_print_dfs_Info1(struct ndr_print *ndr, const char *name, struct dfs_Info1 *r)
{
ndr_print_struct(ndr, name, "dfs_Info1");
@@ -1532,6 +1641,41 @@ void ndr_print_dfs_Info(struct ndr_print *ndr, const char *name, uint16 level, u
}
}
+void ndr_print_dfs_GetInfo(struct ndr_print *ndr, const char *name, int flags, struct dfs_GetInfo *r)
+{
+ ndr_print_struct(ndr, name, "dfs_GetInfo");
+ ndr->depth++;
+ if (flags & NDR_IN) {
+ ndr_print_struct(ndr, "in", "dfs_GetInfo");
+ ndr->depth++;
+ ndr_print_ptr(ndr, "path", r->in.path);
+ ndr->depth++;
+ ndr_print_unistr(ndr, "path", r->in.path);
+ ndr->depth--;
+ ndr_print_ptr(ndr, "server", r->in.server);
+ ndr->depth++;
+ if (r->in.server) {
+ ndr_print_unistr(ndr, "server", r->in.server);
+ }
+ ndr->depth--;
+ ndr_print_ptr(ndr, "share", r->in.share);
+ ndr->depth++;
+ if (r->in.share) {
+ ndr_print_unistr(ndr, "share", r->in.share);
+ }
+ ndr->depth--;
+ ndr_print_uint32(ndr, "level", r->in.level);
+ ndr->depth--;
+ }
+ if (flags & NDR_OUT) {
+ ndr_print_struct(ndr, "out", "dfs_GetInfo");
+ ndr->depth++;
+ ndr_print_dfs_Info(ndr, "info", r->in.level, &r->out.info);
+ ndr->depth--;
+ }
+ ndr->depth--;
+}
+
void ndr_print_dfs_EnumArray1(struct ndr_print *ndr, const char *name, struct dfs_EnumArray1 *r)
{
ndr_print_struct(ndr, name, "dfs_EnumArray1");
@@ -1688,3 +1832,52 @@ void ndr_print_dfs_EnumStruct(struct ndr_print *ndr, const char *name, struct df
ndr->depth--;
}
+void ndr_print_dfs_Enum(struct ndr_print *ndr, const char *name, int flags, struct dfs_Enum *r)
+{
+ ndr_print_struct(ndr, name, "dfs_Enum");
+ ndr->depth++;
+ if (flags & NDR_IN) {
+ ndr_print_struct(ndr, "in", "dfs_Enum");
+ ndr->depth++;
+ ndr_print_uint32(ndr, "level", r->in.level);
+ ndr_print_uint32(ndr, "bufsize", r->in.bufsize);
+ ndr_print_ptr(ndr, "info", r->in.info);
+ ndr->depth++;
+ if (r->in.info) {
+ ndr_print_dfs_EnumStruct(ndr, "info", r->in.info);
+ }
+ ndr->depth--;
+ ndr_print_ptr(ndr, "unknown", r->in.unknown);
+ ndr->depth++;
+ if (r->in.unknown) {
+ ndr_print_uint32(ndr, "unknown", *r->in.unknown);
+ }
+ ndr->depth--;
+ ndr_print_ptr(ndr, "total", r->in.total);
+ ndr->depth++;
+ if (r->in.total) {
+ ndr_print_uint32(ndr, "total", *r->in.total);
+ }
+ ndr->depth--;
+ ndr->depth--;
+ }
+ if (flags & NDR_OUT) {
+ ndr_print_struct(ndr, "out", "dfs_Enum");
+ ndr->depth++;
+ ndr_print_ptr(ndr, "info", r->out.info);
+ ndr->depth++;
+ if (r->out.info) {
+ ndr_print_dfs_EnumStruct(ndr, "info", r->out.info);
+ }
+ ndr->depth--;
+ ndr_print_ptr(ndr, "total", r->out.total);
+ ndr->depth++;
+ if (r->out.total) {
+ ndr_print_uint32(ndr, "total", *r->out.total);
+ }
+ ndr->depth--;
+ ndr->depth--;
+ }
+ ndr->depth--;
+}
+
diff --git a/source4/librpc/ndr/ndr_echo.c b/source4/librpc/ndr/ndr_echo.c
index 62a2428792..c3c3f7161b 100644
--- a/source4/librpc/ndr/ndr_echo.c
+++ b/source4/librpc/ndr/ndr_echo.c
@@ -100,3 +100,121 @@ NTSTATUS ndr_pull_TestCall(struct ndr_pull *ndr, struct TestCall *r)
return NT_STATUS_OK;
}
+void ndr_print_echo_AddOne(struct ndr_print *ndr, const char *name, int flags, struct echo_AddOne *r)
+{
+ ndr_print_struct(ndr, name, "echo_AddOne");
+ ndr->depth++;
+ if (flags & NDR_IN) {
+ ndr_print_struct(ndr, "in", "echo_AddOne");
+ ndr->depth++;
+ ndr_print_ptr(ndr, "v", r->in.v);
+ ndr->depth++;
+ ndr_print_uint32(ndr, "v", *r->in.v);
+ ndr->depth--;
+ ndr->depth--;
+ }
+ if (flags & NDR_OUT) {
+ ndr_print_struct(ndr, "out", "echo_AddOne");
+ ndr->depth++;
+ ndr_print_ptr(ndr, "v", r->out.v);
+ ndr->depth++;
+ ndr_print_uint32(ndr, "v", *r->out.v);
+ ndr->depth--;
+ ndr->depth--;
+ }
+ ndr->depth--;
+}
+
+void ndr_print_echo_EchoData(struct ndr_print *ndr, const char *name, int flags, struct echo_EchoData *r)
+{
+ ndr_print_struct(ndr, name, "echo_EchoData");
+ ndr->depth++;
+ if (flags & NDR_IN) {
+ ndr_print_struct(ndr, "in", "echo_EchoData");
+ ndr->depth++;
+ ndr_print_uint32(ndr, "len", r->in.len);
+ ndr_print_ptr(ndr, "in_data", r->in.in_data);
+ ndr->depth++;
+ ndr_print_array_uint8(ndr, "in_data", r->in.in_data, r->in.len);
+ ndr->depth--;
+ ndr->depth--;
+ }
+ if (flags & NDR_OUT) {
+ ndr_print_struct(ndr, "out", "echo_EchoData");
+ ndr->depth++;
+ ndr_print_ptr(ndr, "out_data", r->out.out_data);
+ ndr->depth++;
+ ndr_print_array_uint8(ndr, "out_data", r->out.out_data, r->in.len);
+ ndr->depth--;
+ ndr->depth--;
+ }
+ ndr->depth--;
+}
+
+void ndr_print_echo_SinkData(struct ndr_print *ndr, const char *name, int flags, struct echo_SinkData *r)
+{
+ ndr_print_struct(ndr, name, "echo_SinkData");
+ ndr->depth++;
+ if (flags & NDR_IN) {
+ ndr_print_struct(ndr, "in", "echo_SinkData");
+ ndr->depth++;
+ ndr_print_uint32(ndr, "len", r->in.len);
+ ndr_print_ptr(ndr, "data", r->in.data);
+ ndr->depth++;
+ ndr_print_array_uint8(ndr, "data", r->in.data, r->in.len);
+ ndr->depth--;
+ ndr->depth--;
+ }
+ if (flags & NDR_OUT) {
+ ndr_print_struct(ndr, "out", "echo_SinkData");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ ndr->depth--;
+}
+
+void ndr_print_echo_SourceData(struct ndr_print *ndr, const char *name, int flags, struct echo_SourceData *r)
+{
+ ndr_print_struct(ndr, name, "echo_SourceData");
+ ndr->depth++;
+ if (flags & NDR_IN) {
+ ndr_print_struct(ndr, "in", "echo_SourceData");
+ ndr->depth++;
+ ndr_print_uint32(ndr, "len", r->in.len);
+ ndr->depth--;
+ }
+ if (flags & NDR_OUT) {
+ ndr_print_struct(ndr, "out", "echo_SourceData");
+ ndr->depth++;
+ ndr_print_ptr(ndr, "data", r->out.data);
+ ndr->depth++;
+ ndr_print_array_uint8(ndr, "data", r->out.data, r->in.len);
+ ndr->depth--;
+ ndr->depth--;
+ }
+ ndr->depth--;
+}
+
+void ndr_print_TestCall(struct ndr_print *ndr, const char *name, int flags, struct TestCall *r)
+{
+ ndr_print_struct(ndr, name, "TestCall");
+ ndr->depth++;
+ if (flags & NDR_IN) {
+ ndr_print_struct(ndr, "in", "TestCall");
+ ndr->depth++;
+ ndr_print_ptr(ndr, "s", r->in.s);
+ ndr->depth++;
+ if (r->in.s) {
+ ndr_print_unistr(ndr, "s", r->in.s);
+ }
+ ndr->depth--;
+ ndr->depth--;
+ }
+ if (flags & NDR_OUT) {
+ ndr_print_struct(ndr, "out", "TestCall");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ ndr->depth--;
+}
+
diff --git a/source4/librpc/ndr/ndr_lsa.c b/source4/librpc/ndr/ndr_lsa.c
index f8c482f7a7..992c26a61c 100644
--- a/source4/librpc/ndr/ndr_lsa.c
+++ b/source4/librpc/ndr/ndr_lsa.c
@@ -1685,6 +1685,52 @@ NTSTATUS ndr_pull_QUERYINFO2(struct ndr_pull *ndr, struct QUERYINFO2 *r)
return NT_STATUS_OK;
}
+void ndr_print_lsa_Close(struct ndr_print *ndr, const char *name, int flags, struct lsa_Close *r)
+{
+ ndr_print_struct(ndr, name, "lsa_Close");
+ ndr->depth++;
+ if (flags & NDR_IN) {
+ ndr_print_struct(ndr, "in", "lsa_Close");
+ ndr->depth++;
+ ndr_print_ptr(ndr, "handle", r->in.handle);
+ ndr->depth++;
+ ndr_print_policy_handle(ndr, "handle", r->in.handle);
+ ndr->depth--;
+ ndr->depth--;
+ }
+ if (flags & NDR_OUT) {
+ ndr_print_struct(ndr, "out", "lsa_Close");
+ ndr->depth++;
+ ndr_print_ptr(ndr, "handle", r->out.handle);
+ ndr->depth++;
+ ndr_print_policy_handle(ndr, "handle", r->out.handle);
+ ndr->depth--;
+ ndr->depth--;
+ }
+ ndr->depth--;
+}
+
+void ndr_print_lsa_Delete(struct ndr_print *ndr, const char *name, int flags, struct lsa_Delete *r)
+{
+ ndr_print_struct(ndr, name, "lsa_Delete");
+ ndr->depth++;
+ if (flags & NDR_IN) {
+ ndr_print_struct(ndr, "in", "lsa_Delete");
+ ndr->depth++;
+ ndr_print_ptr(ndr, "handle", r->in.handle);
+ ndr->depth++;
+ ndr_print_policy_handle(ndr, "handle", r->in.handle);
+ ndr->depth--;
+ ndr->depth--;
+ }
+ if (flags & NDR_OUT) {
+ ndr_print_struct(ndr, "out", "lsa_Delete");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ ndr->depth--;
+}
+
void ndr_print_lsa_Name(struct ndr_print *ndr, const char *name, struct lsa_Name *r)
{
ndr_print_struct(ndr, name, "lsa_Name");
@@ -1724,6 +1770,40 @@ void ndr_print_lsa_PrivArray(struct ndr_print *ndr, const char *name, struct lsa
ndr->depth--;
}
+void ndr_print_lsa_EnumPrivs(struct ndr_print *ndr, const char *name, int flags, struct lsa_EnumPrivs *r)
+{
+ ndr_print_struct(ndr, name, "lsa_EnumPrivs");
+ ndr->depth++;
+ if (flags & NDR_IN) {
+ ndr_print_struct(ndr, "in", "lsa_EnumPrivs");
+ ndr->depth++;
+ ndr_print_ptr(ndr, "handle", r->in.handle);
+ ndr->depth++;
+ ndr_print_policy_handle(ndr, "handle", r->in.handle);
+ ndr->depth--;
+ ndr_print_ptr(ndr, "resume_handle", r->in.resume_handle);
+ ndr->depth++;
+ ndr_print_uint32(ndr, "resume_handle", *r->in.resume_handle);
+ ndr->depth--;
+ ndr_print_uint32(ndr, "max_count", r->in.max_count);
+ ndr->depth--;
+ }
+ if (flags & NDR_OUT) {
+ ndr_print_struct(ndr, "out", "lsa_EnumPrivs");
+ ndr->depth++;
+ ndr_print_ptr(ndr, "resume_handle", r->out.resume_handle);
+ ndr->depth++;
+ ndr_print_uint32(ndr, "resume_handle", *r->out.resume_handle);
+ ndr->depth--;
+ ndr_print_ptr(ndr, "privs", r->out.privs);
+ ndr->depth++;
+ ndr_print_lsa_PrivArray(ndr, "privs", r->out.privs);
+ ndr->depth--;
+ ndr->depth--;
+ }
+ ndr->depth--;
+}
+
void ndr_print_sec_desc_buf(struct ndr_print *ndr, const char *name, struct sec_desc_buf *r)
{
ndr_print_struct(ndr, name, "sec_desc_buf");
@@ -1738,6 +1818,68 @@ void ndr_print_sec_desc_buf(struct ndr_print *ndr, const char *name, struct sec_
ndr->depth--;
}
+void ndr_print_lsa_QuerySecObj(struct ndr_print *ndr, const char *name, int flags, struct lsa_QuerySecObj *r)
+{
+ ndr_print_struct(ndr, name, "lsa_QuerySecObj");
+ ndr->depth++;
+ if (flags & NDR_IN) {
+ ndr_print_struct(ndr, "in", "lsa_QuerySecObj");
+ ndr->depth++;
+ ndr_print_ptr(ndr, "handle", r->in.handle);
+ ndr->depth++;
+ ndr_print_policy_handle(ndr, "handle", r->in.handle);
+ ndr->depth--;
+ ndr_print_uint32(ndr, "sec_info", r->in.sec_info);
+ ndr->depth--;
+ }
+ if (flags & NDR_OUT) {
+ ndr_print_struct(ndr, "out", "lsa_QuerySecObj");
+ ndr->depth++;
+ ndr_print_ptr(ndr, "sd", r->out.sd);
+ ndr->depth++;
+ if (r->out.sd) {
+ ndr_print_sec_desc_buf(ndr, "sd", r->out.sd);
+ }
+ ndr->depth--;
+ ndr->depth--;
+ }
+ ndr->depth--;
+}
+
+void ndr_print_lsa_SetSecObj(struct ndr_print *ndr, const char *name, int flags, struct lsa_SetSecObj *r)
+{
+ ndr_print_struct(ndr, name, "lsa_SetSecObj");
+ ndr->depth++;
+ if (flags & NDR_IN) {
+ ndr_print_struct(ndr, "in", "lsa_SetSecObj");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ if (flags & NDR_OUT) {
+ ndr_print_struct(ndr, "out", "lsa_SetSecObj");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ ndr->depth--;
+}
+
+void ndr_print_lsa_ChangePassword(struct ndr_print *ndr, const char *name, int flags, struct lsa_ChangePassword *r)
+{
+ ndr_print_struct(ndr, name, "lsa_ChangePassword");
+ ndr->depth++;
+ if (flags & NDR_IN) {
+ ndr_print_struct(ndr, "in", "lsa_ChangePassword");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ if (flags & NDR_OUT) {
+ ndr_print_struct(ndr, "out", "lsa_ChangePassword");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ ndr->depth--;
+}
+
void ndr_print_lsa_QosInfo(struct ndr_print *ndr, const char *name, struct lsa_QosInfo *r)
{
ndr_print_struct(ndr, name, "lsa_QosInfo");
@@ -1782,6 +1924,38 @@ void ndr_print_lsa_ObjectAttribute(struct ndr_print *ndr, const char *name, stru
ndr->depth--;
}
+void ndr_print_lsa_OpenPolicy(struct ndr_print *ndr, const char *name, int flags, struct lsa_OpenPolicy *r)
+{
+ ndr_print_struct(ndr, name, "lsa_OpenPolicy");
+ ndr->depth++;
+ if (flags & NDR_IN) {
+ ndr_print_struct(ndr, "in", "lsa_OpenPolicy");
+ ndr->depth++;
+ ndr_print_ptr(ndr, "system_name", r->in.system_name);
+ ndr->depth++;
+ if (r->in.system_name) {
+ ndr_print_uint16(ndr, "system_name", *r->in.system_name);
+ }
+ ndr->depth--;
+ ndr_print_ptr(ndr, "attr", r->in.attr);
+ ndr->depth++;
+ ndr_print_lsa_ObjectAttribute(ndr, "attr", r->in.attr);
+ ndr->depth--;
+ ndr_print_uint32(ndr, "desired_access", r->in.desired_access);
+ ndr->depth--;
+ }
+ if (flags & NDR_OUT) {
+ ndr_print_struct(ndr, "out", "lsa_OpenPolicy");
+ ndr->depth++;
+ ndr_print_ptr(ndr, "handle", r->out.handle);
+ ndr->depth++;
+ ndr_print_policy_handle(ndr, "handle", r->out.handle);
+ ndr->depth--;
+ ndr->depth--;
+ }
+ ndr->depth--;
+}
+
void ndr_print_lsa_AuditLogInfo(struct ndr_print *ndr, const char *name, struct lsa_AuditLogInfo *r)
{
ndr_print_struct(ndr, name, "lsa_AuditLogInfo");
@@ -1974,6 +2148,85 @@ void ndr_print_lsa_PolicyInformation(struct ndr_print *ndr, const char *name, ui
}
}
+void ndr_print_lsa_QueryInfoPolicy(struct ndr_print *ndr, const char *name, int flags, struct lsa_QueryInfoPolicy *r)
+{
+ ndr_print_struct(ndr, name, "lsa_QueryInfoPolicy");
+ ndr->depth++;
+ if (flags & NDR_IN) {
+ ndr_print_struct(ndr, "in", "lsa_QueryInfoPolicy");
+ ndr->depth++;
+ ndr_print_ptr(ndr, "handle", r->in.handle);
+ ndr->depth++;
+ ndr_print_policy_handle(ndr, "handle", r->in.handle);
+ ndr->depth--;
+ ndr_print_uint16(ndr, "level", r->in.level);
+ ndr->depth--;
+ }
+ if (flags & NDR_OUT) {
+ ndr_print_struct(ndr, "out", "lsa_QueryInfoPolicy");
+ ndr->depth++;
+ ndr_print_ptr(ndr, "info", r->out.info);
+ ndr->depth++;
+ if (r->out.info) {
+ ndr_print_lsa_PolicyInformation(ndr, "info", r->in.level, r->out.info);
+ }
+ ndr->depth--;
+ ndr->depth--;
+ }
+ ndr->depth--;
+}
+
+void ndr_print_lsa_SetInfoPolicy(struct ndr_print *ndr, const char *name, int flags, struct lsa_SetInfoPolicy *r)
+{
+ ndr_print_struct(ndr, name, "lsa_SetInfoPolicy");
+ ndr->depth++;
+ if (flags & NDR_IN) {
+ ndr_print_struct(ndr, "in", "lsa_SetInfoPolicy");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ if (flags & NDR_OUT) {
+ ndr_print_struct(ndr, "out", "lsa_SetInfoPolicy");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ ndr->depth--;
+}
+
+void ndr_print_lsa_ClearAuditLog(struct ndr_print *ndr, const char *name, int flags, struct lsa_ClearAuditLog *r)
+{
+ ndr_print_struct(ndr, name, "lsa_ClearAuditLog");
+ ndr->depth++;
+ if (flags & NDR_IN) {
+ ndr_print_struct(ndr, "in", "lsa_ClearAuditLog");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ if (flags & NDR_OUT) {
+ ndr_print_struct(ndr, "out", "lsa_ClearAuditLog");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ ndr->depth--;
+}
+
+void ndr_print_lsa_CreateAccount(struct ndr_print *ndr, const char *name, int flags, struct lsa_CreateAccount *r)
+{
+ ndr_print_struct(ndr, name, "lsa_CreateAccount");
+ ndr->depth++;
+ if (flags & NDR_IN) {
+ ndr_print_struct(ndr, "in", "lsa_CreateAccount");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ if (flags & NDR_OUT) {
+ ndr_print_struct(ndr, "out", "lsa_CreateAccount");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ ndr->depth--;
+}
+
void ndr_print_lsa_SidPtr(struct ndr_print *ndr, const char *name, struct lsa_SidPtr *r)
{
ndr_print_struct(ndr, name, "lsa_SidPtr");
@@ -2001,6 +2254,57 @@ void ndr_print_lsa_SidArray(struct ndr_print *ndr, const char *name, struct lsa_
ndr->depth--;
}
+void ndr_print_lsa_EnumAccounts(struct ndr_print *ndr, const char *name, int flags, struct lsa_EnumAccounts *r)
+{
+ ndr_print_struct(ndr, name, "lsa_EnumAccounts");
+ ndr->depth++;
+ if (flags & NDR_IN) {
+ ndr_print_struct(ndr, "in", "lsa_EnumAccounts");
+ ndr->depth++;
+ ndr_print_ptr(ndr, "handle", r->in.handle);
+ ndr->depth++;
+ ndr_print_policy_handle(ndr, "handle", r->in.handle);
+ ndr->depth--;
+ ndr_print_ptr(ndr, "resume_handle", r->in.resume_handle);
+ ndr->depth++;
+ ndr_print_uint32(ndr, "resume_handle", *r->in.resume_handle);
+ ndr->depth--;
+ ndr_print_uint32(ndr, "num_entries", r->in.num_entries);
+ ndr->depth--;
+ }
+ if (flags & NDR_OUT) {
+ ndr_print_struct(ndr, "out", "lsa_EnumAccounts");
+ ndr->depth++;
+ ndr_print_ptr(ndr, "resume_handle", r->out.resume_handle);
+ ndr->depth++;
+ ndr_print_uint32(ndr, "resume_handle", *r->out.resume_handle);
+ ndr->depth--;
+ ndr_print_ptr(ndr, "sids", r->out.sids);
+ ndr->depth++;
+ ndr_print_lsa_SidArray(ndr, "sids", r->out.sids);
+ ndr->depth--;
+ ndr->depth--;
+ }
+ ndr->depth--;
+}
+
+void ndr_print_lsa_CreateTrustDom(struct ndr_print *ndr, const char *name, int flags, struct lsa_CreateTrustDom *r)
+{
+ ndr_print_struct(ndr, name, "lsa_CreateTrustDom");
+ ndr->depth++;
+ if (flags & NDR_IN) {
+ ndr_print_struct(ndr, "in", "lsa_CreateTrustDom");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ if (flags & NDR_OUT) {
+ ndr_print_struct(ndr, "out", "lsa_CreateTrustDom");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ ndr->depth--;
+}
+
void ndr_print_lsa_DomainInformation(struct ndr_print *ndr, const char *name, struct lsa_DomainInformation *r)
{
ndr_print_struct(ndr, name, "lsa_DomainInformation");
@@ -2029,6 +2333,40 @@ void ndr_print_lsa_DomainList(struct ndr_print *ndr, const char *name, struct ls
ndr->depth--;
}
+void ndr_print_lsa_EnumTrustDom(struct ndr_print *ndr, const char *name, int flags, struct lsa_EnumTrustDom *r)
+{
+ ndr_print_struct(ndr, name, "lsa_EnumTrustDom");
+ ndr->depth++;
+ if (flags & NDR_IN) {
+ ndr_print_struct(ndr, "in", "lsa_EnumTrustDom");
+ ndr->depth++;
+ ndr_print_ptr(ndr, "handle", r->in.handle);
+ ndr->depth++;
+ ndr_print_policy_handle(ndr, "handle", r->in.handle);
+ ndr->depth--;
+ ndr_print_ptr(ndr, "resume_handle", r->in.resume_handle);
+ ndr->depth++;
+ ndr_print_uint32(ndr, "resume_handle", *r->in.resume_handle);
+ ndr->depth--;
+ ndr_print_uint32(ndr, "num_entries", r->in.num_entries);
+ ndr->depth--;
+ }
+ if (flags & NDR_OUT) {
+ ndr_print_struct(ndr, "out", "lsa_EnumTrustDom");
+ ndr->depth++;
+ ndr_print_ptr(ndr, "resume_handle", r->out.resume_handle);
+ ndr->depth++;
+ ndr_print_uint32(ndr, "resume_handle", *r->out.resume_handle);
+ ndr->depth--;
+ ndr_print_ptr(ndr, "domains", r->out.domains);
+ ndr->depth++;
+ ndr_print_lsa_DomainList(ndr, "domains", r->out.domains);
+ ndr->depth--;
+ ndr->depth--;
+ }
+ ndr->depth--;
+}
+
void ndr_print_lsa_TranslatedSid(struct ndr_print *ndr, const char *name, struct lsa_TranslatedSid *r)
{
ndr_print_struct(ndr, name, "lsa_TranslatedSid");
@@ -2082,6 +2420,55 @@ void ndr_print_lsa_RefDomainList(struct ndr_print *ndr, const char *name, struct
ndr->depth--;
}
+void ndr_print_lsa_LookupNames(struct ndr_print *ndr, const char *name, int flags, struct lsa_LookupNames *r)
+{
+ ndr_print_struct(ndr, name, "lsa_LookupNames");
+ ndr->depth++;
+ if (flags & NDR_IN) {
+ ndr_print_struct(ndr, "in", "lsa_LookupNames");
+ ndr->depth++;
+ ndr_print_ptr(ndr, "handle", r->in.handle);
+ ndr->depth++;
+ ndr_print_policy_handle(ndr, "handle", r->in.handle);
+ ndr->depth--;
+ ndr_print_uint32(ndr, "num_names", r->in.num_names);
+ ndr_print_ptr(ndr, "names", r->in.names);
+ ndr->depth++;
+ ndr_print_array(ndr, "names", r->in.names, sizeof(r->in.names[0]), r->in.num_names, (ndr_print_fn_t)ndr_print_lsa_Name);
+ ndr->depth--;
+ ndr_print_ptr(ndr, "sids", r->in.sids);
+ ndr->depth++;
+ ndr_print_lsa_TransSidArray(ndr, "sids", r->in.sids);
+ ndr->depth--;
+ ndr_print_uint16(ndr, "level", r->in.level);
+ ndr_print_ptr(ndr, "count", r->in.count);
+ ndr->depth++;
+ ndr_print_uint32(ndr, "count", *r->in.count);
+ ndr->depth--;
+ ndr->depth--;
+ }
+ if (flags & NDR_OUT) {
+ ndr_print_struct(ndr, "out", "lsa_LookupNames");
+ ndr->depth++;
+ ndr_print_ptr(ndr, "domains", r->out.domains);
+ ndr->depth++;
+ if (r->out.domains) {
+ ndr_print_lsa_RefDomainList(ndr, "domains", r->out.domains);
+ }
+ ndr->depth--;
+ ndr_print_ptr(ndr, "sids", r->out.sids);
+ ndr->depth++;
+ ndr_print_lsa_TransSidArray(ndr, "sids", r->out.sids);
+ ndr->depth--;
+ ndr_print_ptr(ndr, "count", r->out.count);
+ ndr->depth++;
+ ndr_print_uint32(ndr, "count", *r->out.count);
+ ndr->depth--;
+ ndr->depth--;
+ }
+ ndr->depth--;
+}
+
void ndr_print_lsa_TranslatedName(struct ndr_print *ndr, const char *name, struct lsa_TranslatedName *r)
{
ndr_print_struct(ndr, name, "lsa_TranslatedName");
@@ -2106,6 +2493,101 @@ void ndr_print_lsa_TransNameArray(struct ndr_print *ndr, const char *name, struc
ndr->depth--;
}
+void ndr_print_lsa_LookupSids(struct ndr_print *ndr, const char *name, int flags, struct lsa_LookupSids *r)
+{
+ ndr_print_struct(ndr, name, "lsa_LookupSids");
+ ndr->depth++;
+ if (flags & NDR_IN) {
+ ndr_print_struct(ndr, "in", "lsa_LookupSids");
+ ndr->depth++;
+ ndr_print_ptr(ndr, "handle", r->in.handle);
+ ndr->depth++;
+ ndr_print_policy_handle(ndr, "handle", r->in.handle);
+ ndr->depth--;
+ ndr_print_ptr(ndr, "sids", r->in.sids);
+ ndr->depth++;
+ ndr_print_lsa_SidArray(ndr, "sids", r->in.sids);
+ ndr->depth--;
+ ndr_print_ptr(ndr, "names", r->in.names);
+ ndr->depth++;
+ ndr_print_lsa_TransNameArray(ndr, "names", r->in.names);
+ ndr->depth--;
+ ndr_print_uint16(ndr, "level", r->in.level);
+ ndr_print_ptr(ndr, "count", r->in.count);
+ ndr->depth++;
+ ndr_print_uint32(ndr, "count", *r->in.count);
+ ndr->depth--;
+ ndr->depth--;
+ }
+ if (flags & NDR_OUT) {
+ ndr_print_struct(ndr, "out", "lsa_LookupSids");
+ ndr->depth++;
+ ndr_print_ptr(ndr, "domains", r->out.domains);
+ ndr->depth++;
+ if (r->out.domains) {
+ ndr_print_lsa_RefDomainList(ndr, "domains", r->out.domains);
+ }
+ ndr->depth--;
+ ndr_print_ptr(ndr, "names", r->out.names);
+ ndr->depth++;
+ ndr_print_lsa_TransNameArray(ndr, "names", r->out.names);
+ ndr->depth--;
+ ndr_print_ptr(ndr, "count", r->out.count);
+ ndr->depth++;
+ ndr_print_uint32(ndr, "count", *r->out.count);
+ ndr->depth--;
+ ndr->depth--;
+ }
+ ndr->depth--;
+}
+
+void ndr_print_CREATESECRET(struct ndr_print *ndr, const char *name, int flags, struct CREATESECRET *r)
+{
+ ndr_print_struct(ndr, name, "CREATESECRET");
+ ndr->depth++;
+ if (flags & NDR_IN) {
+ ndr_print_struct(ndr, "in", "CREATESECRET");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ if (flags & NDR_OUT) {
+ ndr_print_struct(ndr, "out", "CREATESECRET");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ ndr->depth--;
+}
+
+void ndr_print_lsa_OpenAccount(struct ndr_print *ndr, const char *name, int flags, struct lsa_OpenAccount *r)
+{
+ ndr_print_struct(ndr, name, "lsa_OpenAccount");
+ ndr->depth++;
+ if (flags & NDR_IN) {
+ ndr_print_struct(ndr, "in", "lsa_OpenAccount");
+ ndr->depth++;
+ ndr_print_ptr(ndr, "handle", r->in.handle);
+ ndr->depth++;
+ ndr_print_policy_handle(ndr, "handle", r->in.handle);
+ ndr->depth--;
+ ndr_print_ptr(ndr, "sid", r->in.sid);
+ ndr->depth++;
+ ndr_print_dom_sid2(ndr, "sid", r->in.sid);
+ ndr->depth--;
+ ndr_print_uint32(ndr, "desired_access", r->in.desired_access);
+ ndr->depth--;
+ }
+ if (flags & NDR_OUT) {
+ ndr_print_struct(ndr, "out", "lsa_OpenAccount");
+ ndr->depth++;
+ ndr_print_ptr(ndr, "acct_handle", r->out.acct_handle);
+ ndr->depth++;
+ ndr_print_policy_handle(ndr, "acct_handle", r->out.acct_handle);
+ ndr->depth--;
+ ndr->depth--;
+ }
+ ndr->depth--;
+}
+
void ndr_print_lsa_LUID(struct ndr_print *ndr, const char *name, struct lsa_LUID *r)
{
ndr_print_struct(ndr, name, "lsa_LUID");
@@ -2137,6 +2619,336 @@ void ndr_print_lsa_PrivilegeSet(struct ndr_print *ndr, const char *name, struct
ndr->depth--;
}
+void ndr_print_lsa_EnumPrivsAccount(struct ndr_print *ndr, const char *name, int flags, struct lsa_EnumPrivsAccount *r)
+{
+ ndr_print_struct(ndr, name, "lsa_EnumPrivsAccount");
+ ndr->depth++;
+ if (flags & NDR_IN) {
+ ndr_print_struct(ndr, "in", "lsa_EnumPrivsAccount");
+ ndr->depth++;
+ ndr_print_ptr(ndr, "handle", r->in.handle);
+ ndr->depth++;
+ ndr_print_policy_handle(ndr, "handle", r->in.handle);
+ ndr->depth--;
+ ndr->depth--;
+ }
+ if (flags & NDR_OUT) {
+ ndr_print_struct(ndr, "out", "lsa_EnumPrivsAccount");
+ ndr->depth++;
+ ndr_print_ptr(ndr, "privs", r->out.privs);
+ ndr->depth++;
+ if (r->out.privs) {
+ ndr_print_lsa_PrivilegeSet(ndr, "privs", r->out.privs);
+ }
+ ndr->depth--;
+ ndr->depth--;
+ }
+ ndr->depth--;
+}
+
+void ndr_print_ADDPRIVS(struct ndr_print *ndr, const char *name, int flags, struct ADDPRIVS *r)
+{
+ ndr_print_struct(ndr, name, "ADDPRIVS");
+ ndr->depth++;
+ if (flags & NDR_IN) {
+ ndr_print_struct(ndr, "in", "ADDPRIVS");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ if (flags & NDR_OUT) {
+ ndr_print_struct(ndr, "out", "ADDPRIVS");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ ndr->depth--;
+}
+
+void ndr_print_REMOVEPRIVS(struct ndr_print *ndr, const char *name, int flags, struct REMOVEPRIVS *r)
+{
+ ndr_print_struct(ndr, name, "REMOVEPRIVS");
+ ndr->depth++;
+ if (flags & NDR_IN) {
+ ndr_print_struct(ndr, "in", "REMOVEPRIVS");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ if (flags & NDR_OUT) {
+ ndr_print_struct(ndr, "out", "REMOVEPRIVS");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ ndr->depth--;
+}
+
+void ndr_print_GETQUOTAS(struct ndr_print *ndr, const char *name, int flags, struct GETQUOTAS *r)
+{
+ ndr_print_struct(ndr, name, "GETQUOTAS");
+ ndr->depth++;
+ if (flags & NDR_IN) {
+ ndr_print_struct(ndr, "in", "GETQUOTAS");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ if (flags & NDR_OUT) {
+ ndr_print_struct(ndr, "out", "GETQUOTAS");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ ndr->depth--;
+}
+
+void ndr_print_SETQUOTAS(struct ndr_print *ndr, const char *name, int flags, struct SETQUOTAS *r)
+{
+ ndr_print_struct(ndr, name, "SETQUOTAS");
+ ndr->depth++;
+ if (flags & NDR_IN) {
+ ndr_print_struct(ndr, "in", "SETQUOTAS");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ if (flags & NDR_OUT) {
+ ndr_print_struct(ndr, "out", "SETQUOTAS");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ ndr->depth--;
+}
+
+void ndr_print_GETSYSTEMACCOUNT(struct ndr_print *ndr, const char *name, int flags, struct GETSYSTEMACCOUNT *r)
+{
+ ndr_print_struct(ndr, name, "GETSYSTEMACCOUNT");
+ ndr->depth++;
+ if (flags & NDR_IN) {
+ ndr_print_struct(ndr, "in", "GETSYSTEMACCOUNT");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ if (flags & NDR_OUT) {
+ ndr_print_struct(ndr, "out", "GETSYSTEMACCOUNT");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ ndr->depth--;
+}
+
+void ndr_print_SETSYSTEMACCOUNT(struct ndr_print *ndr, const char *name, int flags, struct SETSYSTEMACCOUNT *r)
+{
+ ndr_print_struct(ndr, name, "SETSYSTEMACCOUNT");
+ ndr->depth++;
+ if (flags & NDR_IN) {
+ ndr_print_struct(ndr, "in", "SETSYSTEMACCOUNT");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ if (flags & NDR_OUT) {
+ ndr_print_struct(ndr, "out", "SETSYSTEMACCOUNT");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ ndr->depth--;
+}
+
+void ndr_print_OPENTRUSTDOM(struct ndr_print *ndr, const char *name, int flags, struct OPENTRUSTDOM *r)
+{
+ ndr_print_struct(ndr, name, "OPENTRUSTDOM");
+ ndr->depth++;
+ if (flags & NDR_IN) {
+ ndr_print_struct(ndr, "in", "OPENTRUSTDOM");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ if (flags & NDR_OUT) {
+ ndr_print_struct(ndr, "out", "OPENTRUSTDOM");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ ndr->depth--;
+}
+
+void ndr_print_QUERYTRUSTDOM(struct ndr_print *ndr, const char *name, int flags, struct QUERYTRUSTDOM *r)
+{
+ ndr_print_struct(ndr, name, "QUERYTRUSTDOM");
+ ndr->depth++;
+ if (flags & NDR_IN) {
+ ndr_print_struct(ndr, "in", "QUERYTRUSTDOM");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ if (flags & NDR_OUT) {
+ ndr_print_struct(ndr, "out", "QUERYTRUSTDOM");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ ndr->depth--;
+}
+
+void ndr_print_SETINFOTRUSTDOM(struct ndr_print *ndr, const char *name, int flags, struct SETINFOTRUSTDOM *r)
+{
+ ndr_print_struct(ndr, name, "SETINFOTRUSTDOM");
+ ndr->depth++;
+ if (flags & NDR_IN) {
+ ndr_print_struct(ndr, "in", "SETINFOTRUSTDOM");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ if (flags & NDR_OUT) {
+ ndr_print_struct(ndr, "out", "SETINFOTRUSTDOM");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ ndr->depth--;
+}
+
+void ndr_print_OPENSECRET(struct ndr_print *ndr, const char *name, int flags, struct OPENSECRET *r)
+{
+ ndr_print_struct(ndr, name, "OPENSECRET");
+ ndr->depth++;
+ if (flags & NDR_IN) {
+ ndr_print_struct(ndr, "in", "OPENSECRET");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ if (flags & NDR_OUT) {
+ ndr_print_struct(ndr, "out", "OPENSECRET");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ ndr->depth--;
+}
+
+void ndr_print_SETSECRET(struct ndr_print *ndr, const char *name, int flags, struct SETSECRET *r)
+{
+ ndr_print_struct(ndr, name, "SETSECRET");
+ ndr->depth++;
+ if (flags & NDR_IN) {
+ ndr_print_struct(ndr, "in", "SETSECRET");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ if (flags & NDR_OUT) {
+ ndr_print_struct(ndr, "out", "SETSECRET");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ ndr->depth--;
+}
+
+void ndr_print_QUERYSECRET(struct ndr_print *ndr, const char *name, int flags, struct QUERYSECRET *r)
+{
+ ndr_print_struct(ndr, name, "QUERYSECRET");
+ ndr->depth++;
+ if (flags & NDR_IN) {
+ ndr_print_struct(ndr, "in", "QUERYSECRET");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ if (flags & NDR_OUT) {
+ ndr_print_struct(ndr, "out", "QUERYSECRET");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ ndr->depth--;
+}
+
+void ndr_print_LOOKUPPRIVVALUE(struct ndr_print *ndr, const char *name, int flags, struct LOOKUPPRIVVALUE *r)
+{
+ ndr_print_struct(ndr, name, "LOOKUPPRIVVALUE");
+ ndr->depth++;
+ if (flags & NDR_IN) {
+ ndr_print_struct(ndr, "in", "LOOKUPPRIVVALUE");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ if (flags & NDR_OUT) {
+ ndr_print_struct(ndr, "out", "LOOKUPPRIVVALUE");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ ndr->depth--;
+}
+
+void ndr_print_lsa_LookupPrivName(struct ndr_print *ndr, const char *name, int flags, struct lsa_LookupPrivName *r)
+{
+ ndr_print_struct(ndr, name, "lsa_LookupPrivName");
+ ndr->depth++;
+ if (flags & NDR_IN) {
+ ndr_print_struct(ndr, "in", "lsa_LookupPrivName");
+ ndr->depth++;
+ ndr_print_ptr(ndr, "handle", r->in.handle);
+ ndr->depth++;
+ ndr_print_policy_handle(ndr, "handle", r->in.handle);
+ ndr->depth--;
+ ndr_print_ptr(ndr, "luid", r->in.luid);
+ ndr->depth++;
+ ndr_print_lsa_LUID(ndr, "luid", r->in.luid);
+ ndr->depth--;
+ ndr->depth--;
+ }
+ if (flags & NDR_OUT) {
+ ndr_print_struct(ndr, "out", "lsa_LookupPrivName");
+ ndr->depth++;
+ ndr_print_ptr(ndr, "name", r->out.name);
+ ndr->depth++;
+ if (r->out.name) {
+ ndr_print_lsa_Name(ndr, "name", r->out.name);
+ }
+ ndr->depth--;
+ ndr->depth--;
+ }
+ ndr->depth--;
+}
+
+void ndr_print_PRIV_GET_DISPNAME(struct ndr_print *ndr, const char *name, int flags, struct PRIV_GET_DISPNAME *r)
+{
+ ndr_print_struct(ndr, name, "PRIV_GET_DISPNAME");
+ ndr->depth++;
+ if (flags & NDR_IN) {
+ ndr_print_struct(ndr, "in", "PRIV_GET_DISPNAME");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ if (flags & NDR_OUT) {
+ ndr_print_struct(ndr, "out", "PRIV_GET_DISPNAME");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ ndr->depth--;
+}
+
+void ndr_print_DELETEOBJECT(struct ndr_print *ndr, const char *name, int flags, struct DELETEOBJECT *r)
+{
+ ndr_print_struct(ndr, name, "DELETEOBJECT");
+ ndr->depth++;
+ if (flags & NDR_IN) {
+ ndr_print_struct(ndr, "in", "DELETEOBJECT");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ if (flags & NDR_OUT) {
+ ndr_print_struct(ndr, "out", "DELETEOBJECT");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ ndr->depth--;
+}
+
+void ndr_print_ENUMACCTWITHRIGHT(struct ndr_print *ndr, const char *name, int flags, struct ENUMACCTWITHRIGHT *r)
+{
+ ndr_print_struct(ndr, name, "ENUMACCTWITHRIGHT");
+ ndr->depth++;
+ if (flags & NDR_IN) {
+ ndr_print_struct(ndr, "in", "ENUMACCTWITHRIGHT");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ if (flags & NDR_OUT) {
+ ndr_print_struct(ndr, "out", "ENUMACCTWITHRIGHT");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ ndr->depth--;
+}
+
void ndr_print_lsa_RightAttribute(struct ndr_print *ndr, const char *name, struct lsa_RightAttribute *r)
{
ndr_print_struct(ndr, name, "lsa_RightAttribute");
@@ -2164,3 +2976,217 @@ void ndr_print_lsa_RightSet(struct ndr_print *ndr, const char *name, struct lsa_
ndr->depth--;
}
+void ndr_print_lsa_EnumAccountRights(struct ndr_print *ndr, const char *name, int flags, struct lsa_EnumAccountRights *r)
+{
+ ndr_print_struct(ndr, name, "lsa_EnumAccountRights");
+ ndr->depth++;
+ if (flags & NDR_IN) {
+ ndr_print_struct(ndr, "in", "lsa_EnumAccountRights");
+ ndr->depth++;
+ ndr_print_ptr(ndr, "handle", r->in.handle);
+ ndr->depth++;
+ ndr_print_policy_handle(ndr, "handle", r->in.handle);
+ ndr->depth--;
+ ndr_print_ptr(ndr, "sid", r->in.sid);
+ ndr->depth++;
+ ndr_print_dom_sid2(ndr, "sid", r->in.sid);
+ ndr->depth--;
+ ndr->depth--;
+ }
+ if (flags & NDR_OUT) {
+ ndr_print_struct(ndr, "out", "lsa_EnumAccountRights");
+ ndr->depth++;
+ ndr_print_ptr(ndr, "rights", r->out.rights);
+ ndr->depth++;
+ ndr_print_lsa_RightSet(ndr, "rights", r->out.rights);
+ ndr->depth--;
+ ndr->depth--;
+ }
+ ndr->depth--;
+}
+
+void ndr_print_ADDACCTRIGHTS(struct ndr_print *ndr, const char *name, int flags, struct ADDACCTRIGHTS *r)
+{
+ ndr_print_struct(ndr, name, "ADDACCTRIGHTS");
+ ndr->depth++;
+ if (flags & NDR_IN) {
+ ndr_print_struct(ndr, "in", "ADDACCTRIGHTS");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ if (flags & NDR_OUT) {
+ ndr_print_struct(ndr, "out", "ADDACCTRIGHTS");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ ndr->depth--;
+}
+
+void ndr_print_REMOVEACCTRIGHTS(struct ndr_print *ndr, const char *name, int flags, struct REMOVEACCTRIGHTS *r)
+{
+ ndr_print_struct(ndr, name, "REMOVEACCTRIGHTS");
+ ndr->depth++;
+ if (flags & NDR_IN) {
+ ndr_print_struct(ndr, "in", "REMOVEACCTRIGHTS");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ if (flags & NDR_OUT) {
+ ndr_print_struct(ndr, "out", "REMOVEACCTRIGHTS");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ ndr->depth--;
+}
+
+void ndr_print_QUERYTRUSTDOMINFO(struct ndr_print *ndr, const char *name, int flags, struct QUERYTRUSTDOMINFO *r)
+{
+ ndr_print_struct(ndr, name, "QUERYTRUSTDOMINFO");
+ ndr->depth++;
+ if (flags & NDR_IN) {
+ ndr_print_struct(ndr, "in", "QUERYTRUSTDOMINFO");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ if (flags & NDR_OUT) {
+ ndr_print_struct(ndr, "out", "QUERYTRUSTDOMINFO");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ ndr->depth--;
+}
+
+void ndr_print_SETTRUSTDOMINFO(struct ndr_print *ndr, const char *name, int flags, struct SETTRUSTDOMINFO *r)
+{
+ ndr_print_struct(ndr, name, "SETTRUSTDOMINFO");
+ ndr->depth++;
+ if (flags & NDR_IN) {
+ ndr_print_struct(ndr, "in", "SETTRUSTDOMINFO");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ if (flags & NDR_OUT) {
+ ndr_print_struct(ndr, "out", "SETTRUSTDOMINFO");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ ndr->depth--;
+}
+
+void ndr_print_DELETETRUSTDOM(struct ndr_print *ndr, const char *name, int flags, struct DELETETRUSTDOM *r)
+{
+ ndr_print_struct(ndr, name, "DELETETRUSTDOM");
+ ndr->depth++;
+ if (flags & NDR_IN) {
+ ndr_print_struct(ndr, "in", "DELETETRUSTDOM");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ if (flags & NDR_OUT) {
+ ndr_print_struct(ndr, "out", "DELETETRUSTDOM");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ ndr->depth--;
+}
+
+void ndr_print_STOREPRIVDATA(struct ndr_print *ndr, const char *name, int flags, struct STOREPRIVDATA *r)
+{
+ ndr_print_struct(ndr, name, "STOREPRIVDATA");
+ ndr->depth++;
+ if (flags & NDR_IN) {
+ ndr_print_struct(ndr, "in", "STOREPRIVDATA");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ if (flags & NDR_OUT) {
+ ndr_print_struct(ndr, "out", "STOREPRIVDATA");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ ndr->depth--;
+}
+
+void ndr_print_RETRPRIVDATA(struct ndr_print *ndr, const char *name, int flags, struct RETRPRIVDATA *r)
+{
+ ndr_print_struct(ndr, name, "RETRPRIVDATA");
+ ndr->depth++;
+ if (flags & NDR_IN) {
+ ndr_print_struct(ndr, "in", "RETRPRIVDATA");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ if (flags & NDR_OUT) {
+ ndr_print_struct(ndr, "out", "RETRPRIVDATA");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ ndr->depth--;
+}
+
+void ndr_print_lsa_OpenPolicy2(struct ndr_print *ndr, const char *name, int flags, struct lsa_OpenPolicy2 *r)
+{
+ ndr_print_struct(ndr, name, "lsa_OpenPolicy2");
+ ndr->depth++;
+ if (flags & NDR_IN) {
+ ndr_print_struct(ndr, "in", "lsa_OpenPolicy2");
+ ndr->depth++;
+ ndr_print_ptr(ndr, "system_name", r->in.system_name);
+ ndr->depth++;
+ if (r->in.system_name) {
+ ndr_print_unistr(ndr, "system_name", r->in.system_name);
+ }
+ ndr->depth--;
+ ndr_print_ptr(ndr, "attr", r->in.attr);
+ ndr->depth++;
+ ndr_print_lsa_ObjectAttribute(ndr, "attr", r->in.attr);
+ ndr->depth--;
+ ndr_print_uint32(ndr, "desired_access", r->in.desired_access);
+ ndr->depth--;
+ }
+ if (flags & NDR_OUT) {
+ ndr_print_struct(ndr, "out", "lsa_OpenPolicy2");
+ ndr->depth++;
+ ndr_print_ptr(ndr, "handle", r->out.handle);
+ ndr->depth++;
+ ndr_print_policy_handle(ndr, "handle", r->out.handle);
+ ndr->depth--;
+ ndr->depth--;
+ }
+ ndr->depth--;
+}
+
+void ndr_print_UNK_GET_CONNUSER(struct ndr_print *ndr, const char *name, int flags, struct UNK_GET_CONNUSER *r)
+{
+ ndr_print_struct(ndr, name, "UNK_GET_CONNUSER");
+ ndr->depth++;
+ if (flags & NDR_IN) {
+ ndr_print_struct(ndr, "in", "UNK_GET_CONNUSER");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ if (flags & NDR_OUT) {
+ ndr_print_struct(ndr, "out", "UNK_GET_CONNUSER");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ ndr->depth--;
+}
+
+void ndr_print_QUERYINFO2(struct ndr_print *ndr, const char *name, int flags, struct QUERYINFO2 *r)
+{
+ ndr_print_struct(ndr, name, "QUERYINFO2");
+ ndr->depth++;
+ if (flags & NDR_IN) {
+ ndr_print_struct(ndr, "in", "QUERYINFO2");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ if (flags & NDR_OUT) {
+ ndr_print_struct(ndr, "out", "QUERYINFO2");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ ndr->depth--;
+}
+
diff --git a/source4/librpc/ndr/ndr_samr.c b/source4/librpc/ndr/ndr_samr.c
index 33750b767d..03dec72356 100644
--- a/source4/librpc/ndr/ndr_samr.c
+++ b/source4/librpc/ndr/ndr_samr.c
@@ -2279,6 +2279,110 @@ NTSTATUS ndr_pull_samr_VALIDATE_PASSWORD(struct ndr_pull *ndr, struct samr_VALID
return NT_STATUS_OK;
}
+void ndr_print_samr_Connect(struct ndr_print *ndr, const char *name, int flags, struct samr_Connect *r)
+{
+ ndr_print_struct(ndr, name, "samr_Connect");
+ ndr->depth++;
+ if (flags & NDR_IN) {
+ ndr_print_struct(ndr, "in", "samr_Connect");
+ ndr->depth++;
+ ndr_print_ptr(ndr, "system_name", r->in.system_name);
+ ndr->depth++;
+ if (r->in.system_name) {
+ ndr_print_uint16(ndr, "system_name", *r->in.system_name);
+ }
+ ndr->depth--;
+ ndr_print_uint32(ndr, "access_mask", r->in.access_mask);
+ ndr->depth--;
+ }
+ if (flags & NDR_OUT) {
+ ndr_print_struct(ndr, "out", "samr_Connect");
+ ndr->depth++;
+ ndr_print_ptr(ndr, "handle", r->out.handle);
+ ndr->depth++;
+ ndr_print_policy_handle(ndr, "handle", r->out.handle);
+ ndr->depth--;
+ ndr->depth--;
+ }
+ ndr->depth--;
+}
+
+void ndr_print_samr_Close(struct ndr_print *ndr, const char *name, int flags, struct samr_Close *r)
+{
+ ndr_print_struct(ndr, name, "samr_Close");
+ ndr->depth++;
+ if (flags & NDR_IN) {
+ ndr_print_struct(ndr, "in", "samr_Close");
+ ndr->depth++;
+ ndr_print_ptr(ndr, "handle", r->in.handle);
+ ndr->depth++;
+ ndr_print_policy_handle(ndr, "handle", r->in.handle);
+ ndr->depth--;
+ ndr->depth--;
+ }
+ if (flags & NDR_OUT) {
+ ndr_print_struct(ndr, "out", "samr_Close");
+ ndr->depth++;
+ ndr_print_ptr(ndr, "handle", r->out.handle);
+ ndr->depth++;
+ ndr_print_policy_handle(ndr, "handle", r->out.handle);
+ ndr->depth--;
+ ndr->depth--;
+ }
+ ndr->depth--;
+}
+
+void ndr_print_samr_SetSecurity(struct ndr_print *ndr, const char *name, int flags, struct samr_SetSecurity *r)
+{
+ ndr_print_struct(ndr, name, "samr_SetSecurity");
+ ndr->depth++;
+ if (flags & NDR_IN) {
+ ndr_print_struct(ndr, "in", "samr_SetSecurity");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ if (flags & NDR_OUT) {
+ ndr_print_struct(ndr, "out", "samr_SetSecurity");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ ndr->depth--;
+}
+
+void ndr_print_samr_QuerySecurity(struct ndr_print *ndr, const char *name, int flags, struct samr_QuerySecurity *r)
+{
+ ndr_print_struct(ndr, name, "samr_QuerySecurity");
+ ndr->depth++;
+ if (flags & NDR_IN) {
+ ndr_print_struct(ndr, "in", "samr_QuerySecurity");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ if (flags & NDR_OUT) {
+ ndr_print_struct(ndr, "out", "samr_QuerySecurity");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ ndr->depth--;
+}
+
+void ndr_print_samr_Shutdown(struct ndr_print *ndr, const char *name, int flags, struct samr_Shutdown *r)
+{
+ ndr_print_struct(ndr, name, "samr_Shutdown");
+ ndr->depth++;
+ if (flags & NDR_IN) {
+ ndr_print_struct(ndr, "in", "samr_Shutdown");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ if (flags & NDR_OUT) {
+ ndr_print_struct(ndr, "out", "samr_Shutdown");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ ndr->depth--;
+}
+
void ndr_print_samr_Name(struct ndr_print *ndr, const char *name, struct samr_Name *r)
{
ndr_print_struct(ndr, name, "samr_Name");
@@ -2294,6 +2398,37 @@ void ndr_print_samr_Name(struct ndr_print *ndr, const char *name, struct samr_Na
ndr->depth--;
}
+void ndr_print_samr_LookupDomain(struct ndr_print *ndr, const char *name, int flags, struct samr_LookupDomain *r)
+{
+ ndr_print_struct(ndr, name, "samr_LookupDomain");
+ ndr->depth++;
+ if (flags & NDR_IN) {
+ ndr_print_struct(ndr, "in", "samr_LookupDomain");
+ ndr->depth++;
+ ndr_print_ptr(ndr, "handle", r->in.handle);
+ ndr->depth++;
+ ndr_print_policy_handle(ndr, "handle", r->in.handle);
+ ndr->depth--;
+ ndr_print_ptr(ndr, "domain", r->in.domain);
+ ndr->depth++;
+ ndr_print_samr_Name(ndr, "domain", r->in.domain);
+ ndr->depth--;
+ ndr->depth--;
+ }
+ if (flags & NDR_OUT) {
+ ndr_print_struct(ndr, "out", "samr_LookupDomain");
+ ndr->depth++;
+ ndr_print_ptr(ndr, "sid", r->out.sid);
+ ndr->depth++;
+ if (r->out.sid) {
+ ndr_print_dom_sid2(ndr, "sid", r->out.sid);
+ }
+ ndr->depth--;
+ ndr->depth--;
+ }
+ ndr->depth--;
+}
+
void ndr_print_samr_SamEntry(struct ndr_print *ndr, const char *name, struct samr_SamEntry *r)
{
ndr_print_struct(ndr, name, "samr_SamEntry");
@@ -2317,6 +2452,76 @@ void ndr_print_samr_SamArray(struct ndr_print *ndr, const char *name, struct sam
ndr->depth--;
}
+void ndr_print_samr_EnumDomains(struct ndr_print *ndr, const char *name, int flags, struct samr_EnumDomains *r)
+{
+ ndr_print_struct(ndr, name, "samr_EnumDomains");
+ ndr->depth++;
+ if (flags & NDR_IN) {
+ ndr_print_struct(ndr, "in", "samr_EnumDomains");
+ ndr->depth++;
+ ndr_print_ptr(ndr, "handle", r->in.handle);
+ ndr->depth++;
+ ndr_print_policy_handle(ndr, "handle", r->in.handle);
+ ndr->depth--;
+ ndr_print_ptr(ndr, "resume_handle", r->in.resume_handle);
+ ndr->depth++;
+ ndr_print_uint32(ndr, "resume_handle", *r->in.resume_handle);
+ ndr->depth--;
+ ndr_print_uint32(ndr, "buf_size", r->in.buf_size);
+ ndr->depth--;
+ }
+ if (flags & NDR_OUT) {
+ ndr_print_struct(ndr, "out", "samr_EnumDomains");
+ ndr->depth++;
+ ndr_print_ptr(ndr, "resume_handle", r->out.resume_handle);
+ ndr->depth++;
+ ndr_print_uint32(ndr, "resume_handle", *r->out.resume_handle);
+ ndr->depth--;
+ ndr_print_ptr(ndr, "sam", r->out.sam);
+ ndr->depth++;
+ if (r->out.sam) {
+ ndr_print_samr_SamArray(ndr, "sam", r->out.sam);
+ }
+ ndr->depth--;
+ ndr_print_ptr(ndr, "num_entries", r->out.num_entries);
+ ndr->depth++;
+ ndr_print_uint32(ndr, "num_entries", *r->out.num_entries);
+ ndr->depth--;
+ ndr->depth--;
+ }
+ ndr->depth--;
+}
+
+void ndr_print_samr_OpenDomain(struct ndr_print *ndr, const char *name, int flags, struct samr_OpenDomain *r)
+{
+ ndr_print_struct(ndr, name, "samr_OpenDomain");
+ ndr->depth++;
+ if (flags & NDR_IN) {
+ ndr_print_struct(ndr, "in", "samr_OpenDomain");
+ ndr->depth++;
+ ndr_print_ptr(ndr, "handle", r->in.handle);
+ ndr->depth++;
+ ndr_print_policy_handle(ndr, "handle", r->in.handle);
+ ndr->depth--;
+ ndr_print_uint32(ndr, "access_mask", r->in.access_mask);
+ ndr_print_ptr(ndr, "sid", r->in.sid);
+ ndr->depth++;
+ ndr_print_dom_sid2(ndr, "sid", r->in.sid);
+ ndr->depth--;
+ ndr->depth--;
+ }
+ if (flags & NDR_OUT) {
+ ndr_print_struct(ndr, "out", "samr_OpenDomain");
+ ndr->depth++;
+ ndr_print_ptr(ndr, "domain_handle", r->out.domain_handle);
+ ndr->depth++;
+ ndr_print_policy_handle(ndr, "domain_handle", r->out.domain_handle);
+ ndr->depth--;
+ ndr->depth--;
+ }
+ ndr->depth--;
+}
+
void ndr_print_samr_DomInfo1(struct ndr_print *ndr, const char *name, struct samr_DomInfo1 *r)
{
ndr_print_struct(ndr, name, "samr_DomInfo1");
@@ -2503,6 +2708,292 @@ void ndr_print_samr_DomainInfo(struct ndr_print *ndr, const char *name, uint16 l
}
}
+void ndr_print_samr_QueryDomainInfo(struct ndr_print *ndr, const char *name, int flags, struct samr_QueryDomainInfo *r)
+{
+ ndr_print_struct(ndr, name, "samr_QueryDomainInfo");
+ ndr->depth++;
+ if (flags & NDR_IN) {
+ ndr_print_struct(ndr, "in", "samr_QueryDomainInfo");
+ ndr->depth++;
+ ndr_print_ptr(ndr, "handle", r->in.handle);
+ ndr->depth++;
+ ndr_print_policy_handle(ndr, "handle", r->in.handle);
+ ndr->depth--;
+ ndr_print_uint16(ndr, "level", r->in.level);
+ ndr->depth--;
+ }
+ if (flags & NDR_OUT) {
+ ndr_print_struct(ndr, "out", "samr_QueryDomainInfo");
+ ndr->depth++;
+ ndr_print_ptr(ndr, "info", r->out.info);
+ ndr->depth++;
+ if (r->out.info) {
+ ndr_print_samr_DomainInfo(ndr, "info", r->in.level, r->out.info);
+ }
+ ndr->depth--;
+ ndr->depth--;
+ }
+ ndr->depth--;
+}
+
+void ndr_print_samr_SET_DOMAIN_INFO(struct ndr_print *ndr, const char *name, int flags, struct samr_SET_DOMAIN_INFO *r)
+{
+ ndr_print_struct(ndr, name, "samr_SET_DOMAIN_INFO");
+ ndr->depth++;
+ if (flags & NDR_IN) {
+ ndr_print_struct(ndr, "in", "samr_SET_DOMAIN_INFO");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ if (flags & NDR_OUT) {
+ ndr_print_struct(ndr, "out", "samr_SET_DOMAIN_INFO");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ ndr->depth--;
+}
+
+void ndr_print_samr_CREATE_DOM_GROUP(struct ndr_print *ndr, const char *name, int flags, struct samr_CREATE_DOM_GROUP *r)
+{
+ ndr_print_struct(ndr, name, "samr_CREATE_DOM_GROUP");
+ ndr->depth++;
+ if (flags & NDR_IN) {
+ ndr_print_struct(ndr, "in", "samr_CREATE_DOM_GROUP");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ if (flags & NDR_OUT) {
+ ndr_print_struct(ndr, "out", "samr_CREATE_DOM_GROUP");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ ndr->depth--;
+}
+
+void ndr_print_samr_EnumDomainGroups(struct ndr_print *ndr, const char *name, int flags, struct samr_EnumDomainGroups *r)
+{
+ ndr_print_struct(ndr, name, "samr_EnumDomainGroups");
+ ndr->depth++;
+ if (flags & NDR_IN) {
+ ndr_print_struct(ndr, "in", "samr_EnumDomainGroups");
+ ndr->depth++;
+ ndr_print_ptr(ndr, "handle", r->in.handle);
+ ndr->depth++;
+ ndr_print_policy_handle(ndr, "handle", r->in.handle);
+ ndr->depth--;
+ ndr_print_ptr(ndr, "resume_handle", r->in.resume_handle);
+ ndr->depth++;
+ ndr_print_uint32(ndr, "resume_handle", *r->in.resume_handle);
+ ndr->depth--;
+ ndr_print_uint32(ndr, "max_size", r->in.max_size);
+ ndr->depth--;
+ }
+ if (flags & NDR_OUT) {
+ ndr_print_struct(ndr, "out", "samr_EnumDomainGroups");
+ ndr->depth++;
+ ndr_print_ptr(ndr, "resume_handle", r->out.resume_handle);
+ ndr->depth++;
+ ndr_print_uint32(ndr, "resume_handle", *r->out.resume_handle);
+ ndr->depth--;
+ ndr_print_ptr(ndr, "sam", r->out.sam);
+ ndr->depth++;
+ if (r->out.sam) {
+ ndr_print_samr_SamArray(ndr, "sam", r->out.sam);
+ }
+ ndr->depth--;
+ ndr_print_uint32(ndr, "num_entries", r->out.num_entries);
+ ndr->depth--;
+ }
+ ndr->depth--;
+}
+
+void ndr_print_samr_CREATE_USER_IN_DOMAIN(struct ndr_print *ndr, const char *name, int flags, struct samr_CREATE_USER_IN_DOMAIN *r)
+{
+ ndr_print_struct(ndr, name, "samr_CREATE_USER_IN_DOMAIN");
+ ndr->depth++;
+ if (flags & NDR_IN) {
+ ndr_print_struct(ndr, "in", "samr_CREATE_USER_IN_DOMAIN");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ if (flags & NDR_OUT) {
+ ndr_print_struct(ndr, "out", "samr_CREATE_USER_IN_DOMAIN");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ ndr->depth--;
+}
+
+void ndr_print_samr_EnumDomainUsers(struct ndr_print *ndr, const char *name, int flags, struct samr_EnumDomainUsers *r)
+{
+ ndr_print_struct(ndr, name, "samr_EnumDomainUsers");
+ ndr->depth++;
+ if (flags & NDR_IN) {
+ ndr_print_struct(ndr, "in", "samr_EnumDomainUsers");
+ ndr->depth++;
+ ndr_print_ptr(ndr, "handle", r->in.handle);
+ ndr->depth++;
+ ndr_print_policy_handle(ndr, "handle", r->in.handle);
+ ndr->depth--;
+ ndr_print_ptr(ndr, "resume_handle", r->in.resume_handle);
+ ndr->depth++;
+ ndr_print_uint32(ndr, "resume_handle", *r->in.resume_handle);
+ ndr->depth--;
+ ndr_print_uint32(ndr, "acct_flags", r->in.acct_flags);
+ ndr_print_uint32(ndr, "max_size", r->in.max_size);
+ ndr->depth--;
+ }
+ if (flags & NDR_OUT) {
+ ndr_print_struct(ndr, "out", "samr_EnumDomainUsers");
+ ndr->depth++;
+ ndr_print_ptr(ndr, "resume_handle", r->out.resume_handle);
+ ndr->depth++;
+ ndr_print_uint32(ndr, "resume_handle", *r->out.resume_handle);
+ ndr->depth--;
+ ndr_print_ptr(ndr, "sam", r->out.sam);
+ ndr->depth++;
+ if (r->out.sam) {
+ ndr_print_samr_SamArray(ndr, "sam", r->out.sam);
+ }
+ ndr->depth--;
+ ndr_print_uint32(ndr, "num_entries", r->out.num_entries);
+ ndr->depth--;
+ }
+ ndr->depth--;
+}
+
+void ndr_print_samr_CREATE_DOM_ALIAS(struct ndr_print *ndr, const char *name, int flags, struct samr_CREATE_DOM_ALIAS *r)
+{
+ ndr_print_struct(ndr, name, "samr_CREATE_DOM_ALIAS");
+ ndr->depth++;
+ if (flags & NDR_IN) {
+ ndr_print_struct(ndr, "in", "samr_CREATE_DOM_ALIAS");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ if (flags & NDR_OUT) {
+ ndr_print_struct(ndr, "out", "samr_CREATE_DOM_ALIAS");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ ndr->depth--;
+}
+
+void ndr_print_samr_EnumDomainAliases(struct ndr_print *ndr, const char *name, int flags, struct samr_EnumDomainAliases *r)
+{
+ ndr_print_struct(ndr, name, "samr_EnumDomainAliases");
+ ndr->depth++;
+ if (flags & NDR_IN) {
+ ndr_print_struct(ndr, "in", "samr_EnumDomainAliases");
+ ndr->depth++;
+ ndr_print_ptr(ndr, "handle", r->in.handle);
+ ndr->depth++;
+ ndr_print_policy_handle(ndr, "handle", r->in.handle);
+ ndr->depth--;
+ ndr_print_ptr(ndr, "resume_handle", r->in.resume_handle);
+ ndr->depth++;
+ ndr_print_uint32(ndr, "resume_handle", *r->in.resume_handle);
+ ndr->depth--;
+ ndr_print_uint32(ndr, "max_size", r->in.max_size);
+ ndr->depth--;
+ }
+ if (flags & NDR_OUT) {
+ ndr_print_struct(ndr, "out", "samr_EnumDomainAliases");
+ ndr->depth++;
+ ndr_print_ptr(ndr, "resume_handle", r->out.resume_handle);
+ ndr->depth++;
+ ndr_print_uint32(ndr, "resume_handle", *r->out.resume_handle);
+ ndr->depth--;
+ ndr_print_ptr(ndr, "sam", r->out.sam);
+ ndr->depth++;
+ if (r->out.sam) {
+ ndr_print_samr_SamArray(ndr, "sam", r->out.sam);
+ }
+ ndr->depth--;
+ ndr_print_uint32(ndr, "num_entries", r->out.num_entries);
+ ndr->depth--;
+ }
+ ndr->depth--;
+}
+
+void ndr_print_samr_GET_ALIAS_MEMBERSHIP(struct ndr_print *ndr, const char *name, int flags, struct samr_GET_ALIAS_MEMBERSHIP *r)
+{
+ ndr_print_struct(ndr, name, "samr_GET_ALIAS_MEMBERSHIP");
+ ndr->depth++;
+ if (flags & NDR_IN) {
+ ndr_print_struct(ndr, "in", "samr_GET_ALIAS_MEMBERSHIP");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ if (flags & NDR_OUT) {
+ ndr_print_struct(ndr, "out", "samr_GET_ALIAS_MEMBERSHIP");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ ndr->depth--;
+}
+
+void ndr_print_samr_LOOKUP_NAMES(struct ndr_print *ndr, const char *name, int flags, struct samr_LOOKUP_NAMES *r)
+{
+ ndr_print_struct(ndr, name, "samr_LOOKUP_NAMES");
+ ndr->depth++;
+ if (flags & NDR_IN) {
+ ndr_print_struct(ndr, "in", "samr_LOOKUP_NAMES");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ if (flags & NDR_OUT) {
+ ndr_print_struct(ndr, "out", "samr_LOOKUP_NAMES");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ ndr->depth--;
+}
+
+void ndr_print_samr_LOOKUP_RIDS(struct ndr_print *ndr, const char *name, int flags, struct samr_LOOKUP_RIDS *r)
+{
+ ndr_print_struct(ndr, name, "samr_LOOKUP_RIDS");
+ ndr->depth++;
+ if (flags & NDR_IN) {
+ ndr_print_struct(ndr, "in", "samr_LOOKUP_RIDS");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ if (flags & NDR_OUT) {
+ ndr_print_struct(ndr, "out", "samr_LOOKUP_RIDS");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ ndr->depth--;
+}
+
+void ndr_print_samr_OpenGroup(struct ndr_print *ndr, const char *name, int flags, struct samr_OpenGroup *r)
+{
+ ndr_print_struct(ndr, name, "samr_OpenGroup");
+ ndr->depth++;
+ if (flags & NDR_IN) {
+ ndr_print_struct(ndr, "in", "samr_OpenGroup");
+ ndr->depth++;
+ ndr_print_ptr(ndr, "handle", r->in.handle);
+ ndr->depth++;
+ ndr_print_policy_handle(ndr, "handle", r->in.handle);
+ ndr->depth--;
+ ndr_print_uint32(ndr, "access_mask", r->in.access_mask);
+ ndr_print_uint32(ndr, "rid", r->in.rid);
+ ndr->depth--;
+ }
+ if (flags & NDR_OUT) {
+ ndr_print_struct(ndr, "out", "samr_OpenGroup");
+ ndr->depth++;
+ ndr_print_ptr(ndr, "acct_handle", r->out.acct_handle);
+ ndr->depth++;
+ ndr_print_policy_handle(ndr, "acct_handle", r->out.acct_handle);
+ ndr->depth--;
+ ndr->depth--;
+ }
+ ndr->depth--;
+}
+
void ndr_print_samr_GroupInfoAll(struct ndr_print *ndr, const char *name, struct samr_GroupInfoAll *r)
{
ndr_print_struct(ndr, name, "samr_GroupInfoAll");
@@ -2563,6 +3054,163 @@ void ndr_print_samr_GroupInfo(struct ndr_print *ndr, const char *name, uint16 le
}
}
+void ndr_print_samr_QueryGroupInfo(struct ndr_print *ndr, const char *name, int flags, struct samr_QueryGroupInfo *r)
+{
+ ndr_print_struct(ndr, name, "samr_QueryGroupInfo");
+ ndr->depth++;
+ if (flags & NDR_IN) {
+ ndr_print_struct(ndr, "in", "samr_QueryGroupInfo");
+ ndr->depth++;
+ ndr_print_ptr(ndr, "handle", r->in.handle);
+ ndr->depth++;
+ ndr_print_policy_handle(ndr, "handle", r->in.handle);
+ ndr->depth--;
+ ndr_print_uint16(ndr, "level", r->in.level);
+ ndr->depth--;
+ }
+ if (flags & NDR_OUT) {
+ ndr_print_struct(ndr, "out", "samr_QueryGroupInfo");
+ ndr->depth++;
+ ndr_print_ptr(ndr, "info", r->out.info);
+ ndr->depth++;
+ if (r->out.info) {
+ ndr_print_samr_GroupInfo(ndr, "info", r->in.level, r->out.info);
+ }
+ ndr->depth--;
+ ndr->depth--;
+ }
+ ndr->depth--;
+}
+
+void ndr_print_samr_SET_GROUPINFO(struct ndr_print *ndr, const char *name, int flags, struct samr_SET_GROUPINFO *r)
+{
+ ndr_print_struct(ndr, name, "samr_SET_GROUPINFO");
+ ndr->depth++;
+ if (flags & NDR_IN) {
+ ndr_print_struct(ndr, "in", "samr_SET_GROUPINFO");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ if (flags & NDR_OUT) {
+ ndr_print_struct(ndr, "out", "samr_SET_GROUPINFO");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ ndr->depth--;
+}
+
+void ndr_print_samr_ADD_GROUPMEM(struct ndr_print *ndr, const char *name, int flags, struct samr_ADD_GROUPMEM *r)
+{
+ ndr_print_struct(ndr, name, "samr_ADD_GROUPMEM");
+ ndr->depth++;
+ if (flags & NDR_IN) {
+ ndr_print_struct(ndr, "in", "samr_ADD_GROUPMEM");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ if (flags & NDR_OUT) {
+ ndr_print_struct(ndr, "out", "samr_ADD_GROUPMEM");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ ndr->depth--;
+}
+
+void ndr_print_samr_DELETE_DOM_GROUP(struct ndr_print *ndr, const char *name, int flags, struct samr_DELETE_DOM_GROUP *r)
+{
+ ndr_print_struct(ndr, name, "samr_DELETE_DOM_GROUP");
+ ndr->depth++;
+ if (flags & NDR_IN) {
+ ndr_print_struct(ndr, "in", "samr_DELETE_DOM_GROUP");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ if (flags & NDR_OUT) {
+ ndr_print_struct(ndr, "out", "samr_DELETE_DOM_GROUP");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ ndr->depth--;
+}
+
+void ndr_print_samr_DEL_GROUPMEM(struct ndr_print *ndr, const char *name, int flags, struct samr_DEL_GROUPMEM *r)
+{
+ ndr_print_struct(ndr, name, "samr_DEL_GROUPMEM");
+ ndr->depth++;
+ if (flags & NDR_IN) {
+ ndr_print_struct(ndr, "in", "samr_DEL_GROUPMEM");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ if (flags & NDR_OUT) {
+ ndr_print_struct(ndr, "out", "samr_DEL_GROUPMEM");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ ndr->depth--;
+}
+
+void ndr_print_samr_QUERY_GROUPMEM(struct ndr_print *ndr, const char *name, int flags, struct samr_QUERY_GROUPMEM *r)
+{
+ ndr_print_struct(ndr, name, "samr_QUERY_GROUPMEM");
+ ndr->depth++;
+ if (flags & NDR_IN) {
+ ndr_print_struct(ndr, "in", "samr_QUERY_GROUPMEM");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ if (flags & NDR_OUT) {
+ ndr_print_struct(ndr, "out", "samr_QUERY_GROUPMEM");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ ndr->depth--;
+}
+
+void ndr_print_samr_SET_MEMBER_ATTRIBUTES_OF_GROUP(struct ndr_print *ndr, const char *name, int flags, struct samr_SET_MEMBER_ATTRIBUTES_OF_GROUP *r)
+{
+ ndr_print_struct(ndr, name, "samr_SET_MEMBER_ATTRIBUTES_OF_GROUP");
+ ndr->depth++;
+ if (flags & NDR_IN) {
+ ndr_print_struct(ndr, "in", "samr_SET_MEMBER_ATTRIBUTES_OF_GROUP");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ if (flags & NDR_OUT) {
+ ndr_print_struct(ndr, "out", "samr_SET_MEMBER_ATTRIBUTES_OF_GROUP");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ ndr->depth--;
+}
+
+void ndr_print_samr_OpenAlias(struct ndr_print *ndr, const char *name, int flags, struct samr_OpenAlias *r)
+{
+ ndr_print_struct(ndr, name, "samr_OpenAlias");
+ ndr->depth++;
+ if (flags & NDR_IN) {
+ ndr_print_struct(ndr, "in", "samr_OpenAlias");
+ ndr->depth++;
+ ndr_print_ptr(ndr, "handle", r->in.handle);
+ ndr->depth++;
+ ndr_print_policy_handle(ndr, "handle", r->in.handle);
+ ndr->depth--;
+ ndr_print_uint32(ndr, "access_mask", r->in.access_mask);
+ ndr_print_uint32(ndr, "rid", r->in.rid);
+ ndr->depth--;
+ }
+ if (flags & NDR_OUT) {
+ ndr_print_struct(ndr, "out", "samr_OpenAlias");
+ ndr->depth++;
+ ndr_print_ptr(ndr, "acct_handle", r->out.acct_handle);
+ ndr->depth++;
+ ndr_print_policy_handle(ndr, "acct_handle", r->out.acct_handle);
+ ndr->depth--;
+ ndr->depth--;
+ }
+ ndr->depth--;
+}
+
void ndr_print_samr_AliasInfoAll(struct ndr_print *ndr, const char *name, struct samr_AliasInfoAll *r)
{
ndr_print_struct(ndr, name, "samr_AliasInfoAll");
@@ -2610,6 +3258,163 @@ void ndr_print_samr_AliasInfo(struct ndr_print *ndr, const char *name, uint16 le
}
}
+void ndr_print_samr_QueryAliasInfo(struct ndr_print *ndr, const char *name, int flags, struct samr_QueryAliasInfo *r)
+{
+ ndr_print_struct(ndr, name, "samr_QueryAliasInfo");
+ ndr->depth++;
+ if (flags & NDR_IN) {
+ ndr_print_struct(ndr, "in", "samr_QueryAliasInfo");
+ ndr->depth++;
+ ndr_print_ptr(ndr, "handle", r->in.handle);
+ ndr->depth++;
+ ndr_print_policy_handle(ndr, "handle", r->in.handle);
+ ndr->depth--;
+ ndr_print_uint16(ndr, "level", r->in.level);
+ ndr->depth--;
+ }
+ if (flags & NDR_OUT) {
+ ndr_print_struct(ndr, "out", "samr_QueryAliasInfo");
+ ndr->depth++;
+ ndr_print_ptr(ndr, "info", r->out.info);
+ ndr->depth++;
+ if (r->out.info) {
+ ndr_print_samr_AliasInfo(ndr, "info", r->in.level, r->out.info);
+ }
+ ndr->depth--;
+ ndr->depth--;
+ }
+ ndr->depth--;
+}
+
+void ndr_print_samr_SET_ALIASINFO(struct ndr_print *ndr, const char *name, int flags, struct samr_SET_ALIASINFO *r)
+{
+ ndr_print_struct(ndr, name, "samr_SET_ALIASINFO");
+ ndr->depth++;
+ if (flags & NDR_IN) {
+ ndr_print_struct(ndr, "in", "samr_SET_ALIASINFO");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ if (flags & NDR_OUT) {
+ ndr_print_struct(ndr, "out", "samr_SET_ALIASINFO");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ ndr->depth--;
+}
+
+void ndr_print_samr_DELETE_DOM_ALIAS(struct ndr_print *ndr, const char *name, int flags, struct samr_DELETE_DOM_ALIAS *r)
+{
+ ndr_print_struct(ndr, name, "samr_DELETE_DOM_ALIAS");
+ ndr->depth++;
+ if (flags & NDR_IN) {
+ ndr_print_struct(ndr, "in", "samr_DELETE_DOM_ALIAS");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ if (flags & NDR_OUT) {
+ ndr_print_struct(ndr, "out", "samr_DELETE_DOM_ALIAS");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ ndr->depth--;
+}
+
+void ndr_print_samr_ADD_ALIASMEM(struct ndr_print *ndr, const char *name, int flags, struct samr_ADD_ALIASMEM *r)
+{
+ ndr_print_struct(ndr, name, "samr_ADD_ALIASMEM");
+ ndr->depth++;
+ if (flags & NDR_IN) {
+ ndr_print_struct(ndr, "in", "samr_ADD_ALIASMEM");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ if (flags & NDR_OUT) {
+ ndr_print_struct(ndr, "out", "samr_ADD_ALIASMEM");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ ndr->depth--;
+}
+
+void ndr_print_samr_DEL_ALIASMEM(struct ndr_print *ndr, const char *name, int flags, struct samr_DEL_ALIASMEM *r)
+{
+ ndr_print_struct(ndr, name, "samr_DEL_ALIASMEM");
+ ndr->depth++;
+ if (flags & NDR_IN) {
+ ndr_print_struct(ndr, "in", "samr_DEL_ALIASMEM");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ if (flags & NDR_OUT) {
+ ndr_print_struct(ndr, "out", "samr_DEL_ALIASMEM");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ ndr->depth--;
+}
+
+void ndr_print_samr_GET_MEMBERS_IN_ALIAS(struct ndr_print *ndr, const char *name, int flags, struct samr_GET_MEMBERS_IN_ALIAS *r)
+{
+ ndr_print_struct(ndr, name, "samr_GET_MEMBERS_IN_ALIAS");
+ ndr->depth++;
+ if (flags & NDR_IN) {
+ ndr_print_struct(ndr, "in", "samr_GET_MEMBERS_IN_ALIAS");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ if (flags & NDR_OUT) {
+ ndr_print_struct(ndr, "out", "samr_GET_MEMBERS_IN_ALIAS");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ ndr->depth--;
+}
+
+void ndr_print_samr_OpenUser(struct ndr_print *ndr, const char *name, int flags, struct samr_OpenUser *r)
+{
+ ndr_print_struct(ndr, name, "samr_OpenUser");
+ ndr->depth++;
+ if (flags & NDR_IN) {
+ ndr_print_struct(ndr, "in", "samr_OpenUser");
+ ndr->depth++;
+ ndr_print_ptr(ndr, "handle", r->in.handle);
+ ndr->depth++;
+ ndr_print_policy_handle(ndr, "handle", r->in.handle);
+ ndr->depth--;
+ ndr_print_uint32(ndr, "access_mask", r->in.access_mask);
+ ndr_print_uint32(ndr, "rid", r->in.rid);
+ ndr->depth--;
+ }
+ if (flags & NDR_OUT) {
+ ndr_print_struct(ndr, "out", "samr_OpenUser");
+ ndr->depth++;
+ ndr_print_ptr(ndr, "acct_handle", r->out.acct_handle);
+ ndr->depth++;
+ ndr_print_policy_handle(ndr, "acct_handle", r->out.acct_handle);
+ ndr->depth--;
+ ndr->depth--;
+ }
+ ndr->depth--;
+}
+
+void ndr_print_samr_DELETE_DOM_USER(struct ndr_print *ndr, const char *name, int flags, struct samr_DELETE_DOM_USER *r)
+{
+ ndr_print_struct(ndr, name, "samr_DELETE_DOM_USER");
+ ndr->depth++;
+ if (flags & NDR_IN) {
+ ndr_print_struct(ndr, "in", "samr_DELETE_DOM_USER");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ if (flags & NDR_OUT) {
+ ndr_print_struct(ndr, "out", "samr_DELETE_DOM_USER");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ ndr->depth--;
+}
+
void ndr_print_samr_UserInfo1(struct ndr_print *ndr, const char *name, struct samr_UserInfo1 *r)
{
ndr_print_struct(ndr, name, "samr_UserInfo1");
@@ -2940,3 +3745,570 @@ void ndr_print_samr_UserInfo(struct ndr_print *ndr, const char *name, uint16 lev
}
}
+void ndr_print_samr_QueryUserInfo(struct ndr_print *ndr, const char *name, int flags, struct samr_QueryUserInfo *r)
+{
+ ndr_print_struct(ndr, name, "samr_QueryUserInfo");
+ ndr->depth++;
+ if (flags & NDR_IN) {
+ ndr_print_struct(ndr, "in", "samr_QueryUserInfo");
+ ndr->depth++;
+ ndr_print_ptr(ndr, "handle", r->in.handle);
+ ndr->depth++;
+ ndr_print_policy_handle(ndr, "handle", r->in.handle);
+ ndr->depth--;
+ ndr_print_uint16(ndr, "level", r->in.level);
+ ndr->depth--;
+ }
+ if (flags & NDR_OUT) {
+ ndr_print_struct(ndr, "out", "samr_QueryUserInfo");
+ ndr->depth++;
+ ndr_print_ptr(ndr, "info", r->out.info);
+ ndr->depth++;
+ if (r->out.info) {
+ ndr_print_samr_UserInfo(ndr, "info", r->in.level, r->out.info);
+ }
+ ndr->depth--;
+ ndr->depth--;
+ }
+ ndr->depth--;
+}
+
+void ndr_print_samr_SET_USERINFO(struct ndr_print *ndr, const char *name, int flags, struct samr_SET_USERINFO *r)
+{
+ ndr_print_struct(ndr, name, "samr_SET_USERINFO");
+ ndr->depth++;
+ if (flags & NDR_IN) {
+ ndr_print_struct(ndr, "in", "samr_SET_USERINFO");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ if (flags & NDR_OUT) {
+ ndr_print_struct(ndr, "out", "samr_SET_USERINFO");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ ndr->depth--;
+}
+
+void ndr_print_samr_CHANGE_PASSWORD_USER(struct ndr_print *ndr, const char *name, int flags, struct samr_CHANGE_PASSWORD_USER *r)
+{
+ ndr_print_struct(ndr, name, "samr_CHANGE_PASSWORD_USER");
+ ndr->depth++;
+ if (flags & NDR_IN) {
+ ndr_print_struct(ndr, "in", "samr_CHANGE_PASSWORD_USER");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ if (flags & NDR_OUT) {
+ ndr_print_struct(ndr, "out", "samr_CHANGE_PASSWORD_USER");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ ndr->depth--;
+}
+
+void ndr_print_samr_GET_GROUPS_FOR_USER(struct ndr_print *ndr, const char *name, int flags, struct samr_GET_GROUPS_FOR_USER *r)
+{
+ ndr_print_struct(ndr, name, "samr_GET_GROUPS_FOR_USER");
+ ndr->depth++;
+ if (flags & NDR_IN) {
+ ndr_print_struct(ndr, "in", "samr_GET_GROUPS_FOR_USER");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ if (flags & NDR_OUT) {
+ ndr_print_struct(ndr, "out", "samr_GET_GROUPS_FOR_USER");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ ndr->depth--;
+}
+
+void ndr_print_samr_QUERY_DISPINFO(struct ndr_print *ndr, const char *name, int flags, struct samr_QUERY_DISPINFO *r)
+{
+ ndr_print_struct(ndr, name, "samr_QUERY_DISPINFO");
+ ndr->depth++;
+ if (flags & NDR_IN) {
+ ndr_print_struct(ndr, "in", "samr_QUERY_DISPINFO");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ if (flags & NDR_OUT) {
+ ndr_print_struct(ndr, "out", "samr_QUERY_DISPINFO");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ ndr->depth--;
+}
+
+void ndr_print_samr_GET_DISPLAY_ENUMERATION_INDEX(struct ndr_print *ndr, const char *name, int flags, struct samr_GET_DISPLAY_ENUMERATION_INDEX *r)
+{
+ ndr_print_struct(ndr, name, "samr_GET_DISPLAY_ENUMERATION_INDEX");
+ ndr->depth++;
+ if (flags & NDR_IN) {
+ ndr_print_struct(ndr, "in", "samr_GET_DISPLAY_ENUMERATION_INDEX");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ if (flags & NDR_OUT) {
+ ndr_print_struct(ndr, "out", "samr_GET_DISPLAY_ENUMERATION_INDEX");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ ndr->depth--;
+}
+
+void ndr_print_samr_TEST_PRIVATE_FUNCTIONS_DOMAIN(struct ndr_print *ndr, const char *name, int flags, struct samr_TEST_PRIVATE_FUNCTIONS_DOMAIN *r)
+{
+ ndr_print_struct(ndr, name, "samr_TEST_PRIVATE_FUNCTIONS_DOMAIN");
+ ndr->depth++;
+ if (flags & NDR_IN) {
+ ndr_print_struct(ndr, "in", "samr_TEST_PRIVATE_FUNCTIONS_DOMAIN");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ if (flags & NDR_OUT) {
+ ndr_print_struct(ndr, "out", "samr_TEST_PRIVATE_FUNCTIONS_DOMAIN");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ ndr->depth--;
+}
+
+void ndr_print_samr_TEST_PRIVATE_FUNCTIONS_USER(struct ndr_print *ndr, const char *name, int flags, struct samr_TEST_PRIVATE_FUNCTIONS_USER *r)
+{
+ ndr_print_struct(ndr, name, "samr_TEST_PRIVATE_FUNCTIONS_USER");
+ ndr->depth++;
+ if (flags & NDR_IN) {
+ ndr_print_struct(ndr, "in", "samr_TEST_PRIVATE_FUNCTIONS_USER");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ if (flags & NDR_OUT) {
+ ndr_print_struct(ndr, "out", "samr_TEST_PRIVATE_FUNCTIONS_USER");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ ndr->depth--;
+}
+
+void ndr_print_samr_GET_USRDOM_PWINFO(struct ndr_print *ndr, const char *name, int flags, struct samr_GET_USRDOM_PWINFO *r)
+{
+ ndr_print_struct(ndr, name, "samr_GET_USRDOM_PWINFO");
+ ndr->depth++;
+ if (flags & NDR_IN) {
+ ndr_print_struct(ndr, "in", "samr_GET_USRDOM_PWINFO");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ if (flags & NDR_OUT) {
+ ndr_print_struct(ndr, "out", "samr_GET_USRDOM_PWINFO");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ ndr->depth--;
+}
+
+void ndr_print_samr_REMOVE_MEMBER_FROM_FOREIGN_DOMAIN(struct ndr_print *ndr, const char *name, int flags, struct samr_REMOVE_MEMBER_FROM_FOREIGN_DOMAIN *r)
+{
+ ndr_print_struct(ndr, name, "samr_REMOVE_MEMBER_FROM_FOREIGN_DOMAIN");
+ ndr->depth++;
+ if (flags & NDR_IN) {
+ ndr_print_struct(ndr, "in", "samr_REMOVE_MEMBER_FROM_FOREIGN_DOMAIN");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ if (flags & NDR_OUT) {
+ ndr_print_struct(ndr, "out", "samr_REMOVE_MEMBER_FROM_FOREIGN_DOMAIN");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ ndr->depth--;
+}
+
+void ndr_print_samr_QUERY_INFORMATION_DOMAIN2(struct ndr_print *ndr, const char *name, int flags, struct samr_QUERY_INFORMATION_DOMAIN2 *r)
+{
+ ndr_print_struct(ndr, name, "samr_QUERY_INFORMATION_DOMAIN2");
+ ndr->depth++;
+ if (flags & NDR_IN) {
+ ndr_print_struct(ndr, "in", "samr_QUERY_INFORMATION_DOMAIN2");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ if (flags & NDR_OUT) {
+ ndr_print_struct(ndr, "out", "samr_QUERY_INFORMATION_DOMAIN2");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ ndr->depth--;
+}
+
+void ndr_print_samr_QUERY_INFORMATION_USER2(struct ndr_print *ndr, const char *name, int flags, struct samr_QUERY_INFORMATION_USER2 *r)
+{
+ ndr_print_struct(ndr, name, "samr_QUERY_INFORMATION_USER2");
+ ndr->depth++;
+ if (flags & NDR_IN) {
+ ndr_print_struct(ndr, "in", "samr_QUERY_INFORMATION_USER2");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ if (flags & NDR_OUT) {
+ ndr_print_struct(ndr, "out", "samr_QUERY_INFORMATION_USER2");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ ndr->depth--;
+}
+
+void ndr_print_samr_QUERY_DISPINFO2(struct ndr_print *ndr, const char *name, int flags, struct samr_QUERY_DISPINFO2 *r)
+{
+ ndr_print_struct(ndr, name, "samr_QUERY_DISPINFO2");
+ ndr->depth++;
+ if (flags & NDR_IN) {
+ ndr_print_struct(ndr, "in", "samr_QUERY_DISPINFO2");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ if (flags & NDR_OUT) {
+ ndr_print_struct(ndr, "out", "samr_QUERY_DISPINFO2");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ ndr->depth--;
+}
+
+void ndr_print_samr_GET_DISPLAY_ENUMERATION_INDEX2(struct ndr_print *ndr, const char *name, int flags, struct samr_GET_DISPLAY_ENUMERATION_INDEX2 *r)
+{
+ ndr_print_struct(ndr, name, "samr_GET_DISPLAY_ENUMERATION_INDEX2");
+ ndr->depth++;
+ if (flags & NDR_IN) {
+ ndr_print_struct(ndr, "in", "samr_GET_DISPLAY_ENUMERATION_INDEX2");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ if (flags & NDR_OUT) {
+ ndr_print_struct(ndr, "out", "samr_GET_DISPLAY_ENUMERATION_INDEX2");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ ndr->depth--;
+}
+
+void ndr_print_samr_CREATE_USER2_IN_DOMAIN(struct ndr_print *ndr, const char *name, int flags, struct samr_CREATE_USER2_IN_DOMAIN *r)
+{
+ ndr_print_struct(ndr, name, "samr_CREATE_USER2_IN_DOMAIN");
+ ndr->depth++;
+ if (flags & NDR_IN) {
+ ndr_print_struct(ndr, "in", "samr_CREATE_USER2_IN_DOMAIN");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ if (flags & NDR_OUT) {
+ ndr_print_struct(ndr, "out", "samr_CREATE_USER2_IN_DOMAIN");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ ndr->depth--;
+}
+
+void ndr_print_samr_QUERY_DISPINFO3(struct ndr_print *ndr, const char *name, int flags, struct samr_QUERY_DISPINFO3 *r)
+{
+ ndr_print_struct(ndr, name, "samr_QUERY_DISPINFO3");
+ ndr->depth++;
+ if (flags & NDR_IN) {
+ ndr_print_struct(ndr, "in", "samr_QUERY_DISPINFO3");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ if (flags & NDR_OUT) {
+ ndr_print_struct(ndr, "out", "samr_QUERY_DISPINFO3");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ ndr->depth--;
+}
+
+void ndr_print_samr_ADD_MULTIPLE_MEMBERS_TO_ALIAS(struct ndr_print *ndr, const char *name, int flags, struct samr_ADD_MULTIPLE_MEMBERS_TO_ALIAS *r)
+{
+ ndr_print_struct(ndr, name, "samr_ADD_MULTIPLE_MEMBERS_TO_ALIAS");
+ ndr->depth++;
+ if (flags & NDR_IN) {
+ ndr_print_struct(ndr, "in", "samr_ADD_MULTIPLE_MEMBERS_TO_ALIAS");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ if (flags & NDR_OUT) {
+ ndr_print_struct(ndr, "out", "samr_ADD_MULTIPLE_MEMBERS_TO_ALIAS");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ ndr->depth--;
+}
+
+void ndr_print_samr_REMOVE_MULTIPLE_MEMBERS_FROM_ALIAS(struct ndr_print *ndr, const char *name, int flags, struct samr_REMOVE_MULTIPLE_MEMBERS_FROM_ALIAS *r)
+{
+ ndr_print_struct(ndr, name, "samr_REMOVE_MULTIPLE_MEMBERS_FROM_ALIAS");
+ ndr->depth++;
+ if (flags & NDR_IN) {
+ ndr_print_struct(ndr, "in", "samr_REMOVE_MULTIPLE_MEMBERS_FROM_ALIAS");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ if (flags & NDR_OUT) {
+ ndr_print_struct(ndr, "out", "samr_REMOVE_MULTIPLE_MEMBERS_FROM_ALIAS");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ ndr->depth--;
+}
+
+void ndr_print_samr_OEM_CHANGE_PASSWORD_USER2(struct ndr_print *ndr, const char *name, int flags, struct samr_OEM_CHANGE_PASSWORD_USER2 *r)
+{
+ ndr_print_struct(ndr, name, "samr_OEM_CHANGE_PASSWORD_USER2");
+ ndr->depth++;
+ if (flags & NDR_IN) {
+ ndr_print_struct(ndr, "in", "samr_OEM_CHANGE_PASSWORD_USER2");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ if (flags & NDR_OUT) {
+ ndr_print_struct(ndr, "out", "samr_OEM_CHANGE_PASSWORD_USER2");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ ndr->depth--;
+}
+
+void ndr_print_samr_UNICODE_CHANGE_PASSWORD_USER2(struct ndr_print *ndr, const char *name, int flags, struct samr_UNICODE_CHANGE_PASSWORD_USER2 *r)
+{
+ ndr_print_struct(ndr, name, "samr_UNICODE_CHANGE_PASSWORD_USER2");
+ ndr->depth++;
+ if (flags & NDR_IN) {
+ ndr_print_struct(ndr, "in", "samr_UNICODE_CHANGE_PASSWORD_USER2");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ if (flags & NDR_OUT) {
+ ndr_print_struct(ndr, "out", "samr_UNICODE_CHANGE_PASSWORD_USER2");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ ndr->depth--;
+}
+
+void ndr_print_samr_GET_DOM_PWINFO(struct ndr_print *ndr, const char *name, int flags, struct samr_GET_DOM_PWINFO *r)
+{
+ ndr_print_struct(ndr, name, "samr_GET_DOM_PWINFO");
+ ndr->depth++;
+ if (flags & NDR_IN) {
+ ndr_print_struct(ndr, "in", "samr_GET_DOM_PWINFO");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ if (flags & NDR_OUT) {
+ ndr_print_struct(ndr, "out", "samr_GET_DOM_PWINFO");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ ndr->depth--;
+}
+
+void ndr_print_samr_CONNECT2(struct ndr_print *ndr, const char *name, int flags, struct samr_CONNECT2 *r)
+{
+ ndr_print_struct(ndr, name, "samr_CONNECT2");
+ ndr->depth++;
+ if (flags & NDR_IN) {
+ ndr_print_struct(ndr, "in", "samr_CONNECT2");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ if (flags & NDR_OUT) {
+ ndr_print_struct(ndr, "out", "samr_CONNECT2");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ ndr->depth--;
+}
+
+void ndr_print_samr_SET_USERINFO2(struct ndr_print *ndr, const char *name, int flags, struct samr_SET_USERINFO2 *r)
+{
+ ndr_print_struct(ndr, name, "samr_SET_USERINFO2");
+ ndr->depth++;
+ if (flags & NDR_IN) {
+ ndr_print_struct(ndr, "in", "samr_SET_USERINFO2");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ if (flags & NDR_OUT) {
+ ndr_print_struct(ndr, "out", "samr_SET_USERINFO2");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ ndr->depth--;
+}
+
+void ndr_print_samr_SET_BOOT_KEY_INFORMATION(struct ndr_print *ndr, const char *name, int flags, struct samr_SET_BOOT_KEY_INFORMATION *r)
+{
+ ndr_print_struct(ndr, name, "samr_SET_BOOT_KEY_INFORMATION");
+ ndr->depth++;
+ if (flags & NDR_IN) {
+ ndr_print_struct(ndr, "in", "samr_SET_BOOT_KEY_INFORMATION");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ if (flags & NDR_OUT) {
+ ndr_print_struct(ndr, "out", "samr_SET_BOOT_KEY_INFORMATION");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ ndr->depth--;
+}
+
+void ndr_print_samr_GET_BOOT_KEY_INFORMATION(struct ndr_print *ndr, const char *name, int flags, struct samr_GET_BOOT_KEY_INFORMATION *r)
+{
+ ndr_print_struct(ndr, name, "samr_GET_BOOT_KEY_INFORMATION");
+ ndr->depth++;
+ if (flags & NDR_IN) {
+ ndr_print_struct(ndr, "in", "samr_GET_BOOT_KEY_INFORMATION");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ if (flags & NDR_OUT) {
+ ndr_print_struct(ndr, "out", "samr_GET_BOOT_KEY_INFORMATION");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ ndr->depth--;
+}
+
+void ndr_print_samr_CONNECT3(struct ndr_print *ndr, const char *name, int flags, struct samr_CONNECT3 *r)
+{
+ ndr_print_struct(ndr, name, "samr_CONNECT3");
+ ndr->depth++;
+ if (flags & NDR_IN) {
+ ndr_print_struct(ndr, "in", "samr_CONNECT3");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ if (flags & NDR_OUT) {
+ ndr_print_struct(ndr, "out", "samr_CONNECT3");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ ndr->depth--;
+}
+
+void ndr_print_samr_Connect4(struct ndr_print *ndr, const char *name, int flags, struct samr_Connect4 *r)
+{
+ ndr_print_struct(ndr, name, "samr_Connect4");
+ ndr->depth++;
+ if (flags & NDR_IN) {
+ ndr_print_struct(ndr, "in", "samr_Connect4");
+ ndr->depth++;
+ ndr_print_ptr(ndr, "system_name", r->in.system_name);
+ ndr->depth++;
+ if (r->in.system_name) {
+ ndr_print_unistr(ndr, "system_name", r->in.system_name);
+ }
+ ndr->depth--;
+ ndr_print_uint32(ndr, "unknown", r->in.unknown);
+ ndr_print_uint32(ndr, "access_mask", r->in.access_mask);
+ ndr->depth--;
+ }
+ if (flags & NDR_OUT) {
+ ndr_print_struct(ndr, "out", "samr_Connect4");
+ ndr->depth++;
+ ndr_print_ptr(ndr, "handle", r->out.handle);
+ ndr->depth++;
+ ndr_print_policy_handle(ndr, "handle", r->out.handle);
+ ndr->depth--;
+ ndr->depth--;
+ }
+ ndr->depth--;
+}
+
+void ndr_print_samr_UNICODE_CHANGE_PASSWORD_USER3(struct ndr_print *ndr, const char *name, int flags, struct samr_UNICODE_CHANGE_PASSWORD_USER3 *r)
+{
+ ndr_print_struct(ndr, name, "samr_UNICODE_CHANGE_PASSWORD_USER3");
+ ndr->depth++;
+ if (flags & NDR_IN) {
+ ndr_print_struct(ndr, "in", "samr_UNICODE_CHANGE_PASSWORD_USER3");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ if (flags & NDR_OUT) {
+ ndr_print_struct(ndr, "out", "samr_UNICODE_CHANGE_PASSWORD_USER3");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ ndr->depth--;
+}
+
+void ndr_print_samr_CONNECT5(struct ndr_print *ndr, const char *name, int flags, struct samr_CONNECT5 *r)
+{
+ ndr_print_struct(ndr, name, "samr_CONNECT5");
+ ndr->depth++;
+ if (flags & NDR_IN) {
+ ndr_print_struct(ndr, "in", "samr_CONNECT5");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ if (flags & NDR_OUT) {
+ ndr_print_struct(ndr, "out", "samr_CONNECT5");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ ndr->depth--;
+}
+
+void ndr_print_samr_RID_TO_SID(struct ndr_print *ndr, const char *name, int flags, struct samr_RID_TO_SID *r)
+{
+ ndr_print_struct(ndr, name, "samr_RID_TO_SID");
+ ndr->depth++;
+ if (flags & NDR_IN) {
+ ndr_print_struct(ndr, "in", "samr_RID_TO_SID");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ if (flags & NDR_OUT) {
+ ndr_print_struct(ndr, "out", "samr_RID_TO_SID");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ ndr->depth--;
+}
+
+void ndr_print_samr_SET_DSRM_PASSWORD(struct ndr_print *ndr, const char *name, int flags, struct samr_SET_DSRM_PASSWORD *r)
+{
+ ndr_print_struct(ndr, name, "samr_SET_DSRM_PASSWORD");
+ ndr->depth++;
+ if (flags & NDR_IN) {
+ ndr_print_struct(ndr, "in", "samr_SET_DSRM_PASSWORD");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ if (flags & NDR_OUT) {
+ ndr_print_struct(ndr, "out", "samr_SET_DSRM_PASSWORD");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ ndr->depth--;
+}
+
+void ndr_print_samr_VALIDATE_PASSWORD(struct ndr_print *ndr, const char *name, int flags, struct samr_VALIDATE_PASSWORD *r)
+{
+ ndr_print_struct(ndr, name, "samr_VALIDATE_PASSWORD");
+ ndr->depth++;
+ if (flags & NDR_IN) {
+ ndr_print_struct(ndr, "in", "samr_VALIDATE_PASSWORD");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ if (flags & NDR_OUT) {
+ ndr_print_struct(ndr, "out", "samr_VALIDATE_PASSWORD");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ ndr->depth--;
+}
+
diff --git a/source4/librpc/ndr/ndr_spoolss.c b/source4/librpc/ndr/ndr_spoolss.c
index 4f31fa682b..fe4aff53c6 100644
--- a/source4/librpc/ndr/ndr_spoolss.c
+++ b/source4/librpc/ndr/ndr_spoolss.c
@@ -172,6 +172,19 @@ done:
return NT_STATUS_OK;
}
+NTSTATUS ndr_push_spoolss_PrinterInfo6(struct ndr_push *ndr, int ndr_flags, struct spoolss_PrinterInfo6 *r)
+{
+ if (!(ndr_flags & NDR_SCALARS)) goto buffers;
+ NDR_CHECK(ndr_push_struct_start(ndr));
+ NDR_CHECK(ndr_push_align(ndr, 4));
+ NDR_CHECK(ndr_push_uint32(ndr, r->unknown));
+ ndr_push_struct_end(ndr);
+buffers:
+ if (!(ndr_flags & NDR_BUFFERS)) goto done;
+done:
+ return NT_STATUS_OK;
+}
+
NTSTATUS ndr_push_spoolss_PrinterInfo7(struct ndr_push *ndr, int ndr_flags, struct spoolss_PrinterInfo7 *r)
{
if (!(ndr_flags & NDR_SCALARS)) goto buffers;
@@ -212,6 +225,10 @@ NTSTATUS ndr_push_spoolss_PrinterInfo(struct ndr_push *ndr, int ndr_flags, uint1
NDR_CHECK(ndr_push_spoolss_PrinterInfo5(ndr, NDR_SCALARS, &r->info5));
break;
+ case 6:
+ NDR_CHECK(ndr_push_spoolss_PrinterInfo6(ndr, NDR_SCALARS, &r->info6));
+ break;
+
case 7:
NDR_CHECK(ndr_push_spoolss_PrinterInfo7(ndr, NDR_SCALARS, &r->info7));
break;
@@ -243,6 +260,10 @@ buffers:
NDR_CHECK(ndr_push_spoolss_PrinterInfo5(ndr, ndr_flags, &r->info5));
break;
+ case 6:
+ NDR_CHECK(ndr_push_spoolss_PrinterInfo6(ndr, ndr_flags, &r->info6));
+ break;
+
case 7:
NDR_CHECK(ndr_push_spoolss_PrinterInfo7(ndr, ndr_flags, &r->info7));
break;
@@ -1127,6 +1148,19 @@ done:
return NT_STATUS_OK;
}
+NTSTATUS ndr_pull_spoolss_PrinterInfo6(struct ndr_pull *ndr, int ndr_flags, struct spoolss_PrinterInfo6 *r)
+{
+ NDR_CHECK(ndr_pull_struct_start(ndr));
+ if (!(ndr_flags & NDR_SCALARS)) goto buffers;
+ NDR_CHECK(ndr_pull_align(ndr, 4));
+ NDR_CHECK(ndr_pull_uint32(ndr, &r->unknown));
+ ndr_pull_struct_end(ndr);
+buffers:
+ if (!(ndr_flags & NDR_BUFFERS)) goto done;
+done:
+ return NT_STATUS_OK;
+}
+
NTSTATUS ndr_pull_spoolss_PrinterInfo7(struct ndr_pull *ndr, int ndr_flags, struct spoolss_PrinterInfo7 *r)
{
NDR_CHECK(ndr_pull_struct_start(ndr));
@@ -1166,6 +1200,10 @@ NTSTATUS ndr_pull_spoolss_PrinterInfo(struct ndr_pull *ndr, int ndr_flags, uint1
NDR_CHECK(ndr_pull_spoolss_PrinterInfo5(ndr, NDR_SCALARS, &r->info5));
break; }
+ case 6: {
+ NDR_CHECK(ndr_pull_spoolss_PrinterInfo6(ndr, NDR_SCALARS, &r->info6));
+ break; }
+
case 7: {
NDR_CHECK(ndr_pull_spoolss_PrinterInfo7(ndr, NDR_SCALARS, &r->info7));
break; }
@@ -1197,6 +1235,10 @@ buffers:
NDR_CHECK(ndr_pull_spoolss_PrinterInfo5(ndr, NDR_BUFFERS, &r->info5));
break;
+ case 6:
+ NDR_CHECK(ndr_pull_spoolss_PrinterInfo6(ndr, NDR_BUFFERS, &r->info6));
+ break;
+
case 7:
NDR_CHECK(ndr_pull_spoolss_PrinterInfo7(ndr, NDR_BUFFERS, &r->info7));
break;
@@ -2070,6 +2112,14 @@ void ndr_print_spoolss_PrinterInfo5(struct ndr_print *ndr, const char *name, str
ndr->depth--;
}
+void ndr_print_spoolss_PrinterInfo6(struct ndr_print *ndr, const char *name, struct spoolss_PrinterInfo6 *r)
+{
+ ndr_print_struct(ndr, name, "spoolss_PrinterInfo6");
+ ndr->depth++;
+ ndr_print_uint32(ndr, "unknown", r->unknown);
+ ndr->depth--;
+}
+
void ndr_print_spoolss_PrinterInfo7(struct ndr_print *ndr, const char *name, struct spoolss_PrinterInfo7 *r)
{
ndr_print_struct(ndr, name, "spoolss_PrinterInfo7");
@@ -2103,6 +2153,10 @@ void ndr_print_spoolss_PrinterInfo(struct ndr_print *ndr, const char *name, uint
ndr_print_spoolss_PrinterInfo5(ndr, "info5", &r->info5);
break;
+ case 6:
+ ndr_print_spoolss_PrinterInfo6(ndr, "info6", &r->info6);
+ break;
+
case 7:
ndr_print_spoolss_PrinterInfo7(ndr, "info7", &r->info7);
break;
@@ -2112,6 +2166,1300 @@ void ndr_print_spoolss_PrinterInfo(struct ndr_print *ndr, const char *name, uint
}
}
+void ndr_print_spoolss_EnumPrinters(struct ndr_print *ndr, const char *name, int flags, struct spoolss_EnumPrinters *r)
+{
+ ndr_print_struct(ndr, name, "spoolss_EnumPrinters");
+ ndr->depth++;
+ if (flags & NDR_IN) {
+ ndr_print_struct(ndr, "in", "spoolss_EnumPrinters");
+ ndr->depth++;
+ ndr_print_uint32(ndr, "flags", r->in.flags);
+ ndr_print_ptr(ndr, "server", r->in.server);
+ ndr->depth++;
+ if (r->in.server) {
+ ndr_print_unistr(ndr, "server", r->in.server);
+ }
+ ndr->depth--;
+ ndr_print_uint32(ndr, "level", r->in.level);
+ ndr_print_ptr(ndr, "buffer", r->in.buffer);
+ ndr->depth++;
+ if (r->in.buffer) {
+ ndr_print_DATA_BLOB(ndr, "buffer", *r->in.buffer);
+ }
+ ndr->depth--;
+ ndr_print_ptr(ndr, "buf_size", r->in.buf_size);
+ ndr->depth++;
+ ndr_print_uint32(ndr, "buf_size", *r->in.buf_size);
+ ndr->depth--;
+ ndr->depth--;
+ }
+ if (flags & NDR_OUT) {
+ ndr_print_struct(ndr, "out", "spoolss_EnumPrinters");
+ ndr->depth++;
+ ndr_print_ptr(ndr, "buffer", r->out.buffer);
+ ndr->depth++;
+ if (r->out.buffer) {
+ ndr_print_DATA_BLOB(ndr, "buffer", *r->out.buffer);
+ }
+ ndr->depth--;
+ ndr_print_ptr(ndr, "buf_size", r->out.buf_size);
+ ndr->depth++;
+ ndr_print_uint32(ndr, "buf_size", *r->out.buf_size);
+ ndr->depth--;
+ ndr_print_uint32(ndr, "count", r->out.count);
+ ndr->depth--;
+ }
+ ndr->depth--;
+}
+
+void ndr_print_spoolss_OpenPrinter(struct ndr_print *ndr, const char *name, int flags, struct spoolss_OpenPrinter *r)
+{
+ ndr_print_struct(ndr, name, "spoolss_OpenPrinter");
+ ndr->depth++;
+ if (flags & NDR_IN) {
+ ndr_print_struct(ndr, "in", "spoolss_OpenPrinter");
+ ndr->depth++;
+ ndr_print_ptr(ndr, "server", r->in.server);
+ ndr->depth++;
+ if (r->in.server) {
+ ndr_print_unistr(ndr, "server", r->in.server);
+ }
+ ndr->depth--;
+ ndr_print_ptr(ndr, "printer", r->in.printer);
+ ndr->depth++;
+ if (r->in.printer) {
+ ndr_print_unistr(ndr, "printer", r->in.printer);
+ }
+ ndr->depth--;
+ ndr_print_ptr(ndr, "buffer", r->in.buffer);
+ ndr->depth++;
+ if (r->in.buffer) {
+ ndr_print_DATA_BLOB(ndr, "buffer", *r->in.buffer);
+ }
+ ndr->depth--;
+ ndr_print_uint32(ndr, "access_mask", r->in.access_mask);
+ ndr->depth--;
+ }
+ if (flags & NDR_OUT) {
+ ndr_print_struct(ndr, "out", "spoolss_OpenPrinter");
+ ndr->depth++;
+ ndr_print_ptr(ndr, "handle", r->out.handle);
+ ndr->depth++;
+ ndr_print_policy_handle(ndr, "handle", r->out.handle);
+ ndr->depth--;
+ ndr->depth--;
+ }
+ ndr->depth--;
+}
+
+void ndr_print_spoolss_02(struct ndr_print *ndr, const char *name, int flags, struct spoolss_02 *r)
+{
+ ndr_print_struct(ndr, name, "spoolss_02");
+ ndr->depth++;
+ if (flags & NDR_IN) {
+ ndr_print_struct(ndr, "in", "spoolss_02");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ if (flags & NDR_OUT) {
+ ndr_print_struct(ndr, "out", "spoolss_02");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ ndr->depth--;
+}
+
+void ndr_print_spoolss_03(struct ndr_print *ndr, const char *name, int flags, struct spoolss_03 *r)
+{
+ ndr_print_struct(ndr, name, "spoolss_03");
+ ndr->depth++;
+ if (flags & NDR_IN) {
+ ndr_print_struct(ndr, "in", "spoolss_03");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ if (flags & NDR_OUT) {
+ ndr_print_struct(ndr, "out", "spoolss_03");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ ndr->depth--;
+}
+
+void ndr_print_spoolss_EnumJobs(struct ndr_print *ndr, const char *name, int flags, struct spoolss_EnumJobs *r)
+{
+ ndr_print_struct(ndr, name, "spoolss_EnumJobs");
+ ndr->depth++;
+ if (flags & NDR_IN) {
+ ndr_print_struct(ndr, "in", "spoolss_EnumJobs");
+ ndr->depth++;
+ ndr_print_ptr(ndr, "handle", r->in.handle);
+ ndr->depth++;
+ ndr_print_policy_handle(ndr, "handle", r->in.handle);
+ ndr->depth--;
+ ndr_print_uint32(ndr, "firstjob", r->in.firstjob);
+ ndr_print_uint32(ndr, "numjobs", r->in.numjobs);
+ ndr_print_uint32(ndr, "level", r->in.level);
+ ndr_print_ptr(ndr, "buffer", r->in.buffer);
+ ndr->depth++;
+ if (r->in.buffer) {
+ ndr_print_DATA_BLOB(ndr, "buffer", *r->in.buffer);
+ }
+ ndr->depth--;
+ ndr_print_ptr(ndr, "buf_size", r->in.buf_size);
+ ndr->depth++;
+ ndr_print_uint32(ndr, "buf_size", *r->in.buf_size);
+ ndr->depth--;
+ ndr->depth--;
+ }
+ if (flags & NDR_OUT) {
+ ndr_print_struct(ndr, "out", "spoolss_EnumJobs");
+ ndr->depth++;
+ ndr_print_ptr(ndr, "buffer", r->out.buffer);
+ ndr->depth++;
+ if (r->out.buffer) {
+ ndr_print_DATA_BLOB(ndr, "buffer", *r->out.buffer);
+ }
+ ndr->depth--;
+ ndr_print_ptr(ndr, "buf_size", r->out.buf_size);
+ ndr->depth++;
+ ndr_print_uint32(ndr, "buf_size", *r->out.buf_size);
+ ndr->depth--;
+ ndr_print_uint32(ndr, "numjobs", r->out.numjobs);
+ ndr->depth--;
+ }
+ ndr->depth--;
+}
+
+void ndr_print_spoolss_05(struct ndr_print *ndr, const char *name, int flags, struct spoolss_05 *r)
+{
+ ndr_print_struct(ndr, name, "spoolss_05");
+ ndr->depth++;
+ if (flags & NDR_IN) {
+ ndr_print_struct(ndr, "in", "spoolss_05");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ if (flags & NDR_OUT) {
+ ndr_print_struct(ndr, "out", "spoolss_05");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ ndr->depth--;
+}
+
+void ndr_print_spoolss_06(struct ndr_print *ndr, const char *name, int flags, struct spoolss_06 *r)
+{
+ ndr_print_struct(ndr, name, "spoolss_06");
+ ndr->depth++;
+ if (flags & NDR_IN) {
+ ndr_print_struct(ndr, "in", "spoolss_06");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ if (flags & NDR_OUT) {
+ ndr_print_struct(ndr, "out", "spoolss_06");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ ndr->depth--;
+}
+
+void ndr_print_spoolss_07(struct ndr_print *ndr, const char *name, int flags, struct spoolss_07 *r)
+{
+ ndr_print_struct(ndr, name, "spoolss_07");
+ ndr->depth++;
+ if (flags & NDR_IN) {
+ ndr_print_struct(ndr, "in", "spoolss_07");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ if (flags & NDR_OUT) {
+ ndr_print_struct(ndr, "out", "spoolss_07");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ ndr->depth--;
+}
+
+void ndr_print_spoolss_GetPrinter(struct ndr_print *ndr, const char *name, int flags, struct spoolss_GetPrinter *r)
+{
+ ndr_print_struct(ndr, name, "spoolss_GetPrinter");
+ ndr->depth++;
+ if (flags & NDR_IN) {
+ ndr_print_struct(ndr, "in", "spoolss_GetPrinter");
+ ndr->depth++;
+ ndr_print_ptr(ndr, "handle", r->in.handle);
+ ndr->depth++;
+ ndr_print_policy_handle(ndr, "handle", r->in.handle);
+ ndr->depth--;
+ ndr_print_uint32(ndr, "level", r->in.level);
+ ndr_print_ptr(ndr, "buffer", r->in.buffer);
+ ndr->depth++;
+ if (r->in.buffer) {
+ ndr_print_DATA_BLOB(ndr, "buffer", *r->in.buffer);
+ }
+ ndr->depth--;
+ ndr_print_ptr(ndr, "buf_size", r->in.buf_size);
+ ndr->depth++;
+ ndr_print_uint32(ndr, "buf_size", *r->in.buf_size);
+ ndr->depth--;
+ ndr->depth--;
+ }
+ if (flags & NDR_OUT) {
+ ndr_print_struct(ndr, "out", "spoolss_GetPrinter");
+ ndr->depth++;
+ ndr_print_ptr(ndr, "info", r->out.info);
+ ndr->depth++;
+ if (r->out.info) {
+ ndr_print_spoolss_PrinterInfo(ndr, "info", r->in.level, r->out.info);
+ }
+ ndr->depth--;
+ ndr_print_ptr(ndr, "buf_size", r->out.buf_size);
+ ndr->depth++;
+ ndr_print_uint32(ndr, "buf_size", *r->out.buf_size);
+ ndr->depth--;
+ ndr->depth--;
+ }
+ ndr->depth--;
+}
+
+void ndr_print_spoolss_09(struct ndr_print *ndr, const char *name, int flags, struct spoolss_09 *r)
+{
+ ndr_print_struct(ndr, name, "spoolss_09");
+ ndr->depth++;
+ if (flags & NDR_IN) {
+ ndr_print_struct(ndr, "in", "spoolss_09");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ if (flags & NDR_OUT) {
+ ndr_print_struct(ndr, "out", "spoolss_09");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ ndr->depth--;
+}
+
+void ndr_print_spoolss_0a(struct ndr_print *ndr, const char *name, int flags, struct spoolss_0a *r)
+{
+ ndr_print_struct(ndr, name, "spoolss_0a");
+ ndr->depth++;
+ if (flags & NDR_IN) {
+ ndr_print_struct(ndr, "in", "spoolss_0a");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ if (flags & NDR_OUT) {
+ ndr_print_struct(ndr, "out", "spoolss_0a");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ ndr->depth--;
+}
+
+void ndr_print_spoolss_0b(struct ndr_print *ndr, const char *name, int flags, struct spoolss_0b *r)
+{
+ ndr_print_struct(ndr, name, "spoolss_0b");
+ ndr->depth++;
+ if (flags & NDR_IN) {
+ ndr_print_struct(ndr, "in", "spoolss_0b");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ if (flags & NDR_OUT) {
+ ndr_print_struct(ndr, "out", "spoolss_0b");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ ndr->depth--;
+}
+
+void ndr_print_spoolss_0c(struct ndr_print *ndr, const char *name, int flags, struct spoolss_0c *r)
+{
+ ndr_print_struct(ndr, name, "spoolss_0c");
+ ndr->depth++;
+ if (flags & NDR_IN) {
+ ndr_print_struct(ndr, "in", "spoolss_0c");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ if (flags & NDR_OUT) {
+ ndr_print_struct(ndr, "out", "spoolss_0c");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ ndr->depth--;
+}
+
+void ndr_print_spoolss_0d(struct ndr_print *ndr, const char *name, int flags, struct spoolss_0d *r)
+{
+ ndr_print_struct(ndr, name, "spoolss_0d");
+ ndr->depth++;
+ if (flags & NDR_IN) {
+ ndr_print_struct(ndr, "in", "spoolss_0d");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ if (flags & NDR_OUT) {
+ ndr_print_struct(ndr, "out", "spoolss_0d");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ ndr->depth--;
+}
+
+void ndr_print_spoolss_0e(struct ndr_print *ndr, const char *name, int flags, struct spoolss_0e *r)
+{
+ ndr_print_struct(ndr, name, "spoolss_0e");
+ ndr->depth++;
+ if (flags & NDR_IN) {
+ ndr_print_struct(ndr, "in", "spoolss_0e");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ if (flags & NDR_OUT) {
+ ndr_print_struct(ndr, "out", "spoolss_0e");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ ndr->depth--;
+}
+
+void ndr_print_spoolss_0f(struct ndr_print *ndr, const char *name, int flags, struct spoolss_0f *r)
+{
+ ndr_print_struct(ndr, name, "spoolss_0f");
+ ndr->depth++;
+ if (flags & NDR_IN) {
+ ndr_print_struct(ndr, "in", "spoolss_0f");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ if (flags & NDR_OUT) {
+ ndr_print_struct(ndr, "out", "spoolss_0f");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ ndr->depth--;
+}
+
+void ndr_print_spoolss_10(struct ndr_print *ndr, const char *name, int flags, struct spoolss_10 *r)
+{
+ ndr_print_struct(ndr, name, "spoolss_10");
+ ndr->depth++;
+ if (flags & NDR_IN) {
+ ndr_print_struct(ndr, "in", "spoolss_10");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ if (flags & NDR_OUT) {
+ ndr_print_struct(ndr, "out", "spoolss_10");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ ndr->depth--;
+}
+
+void ndr_print_spoolss_11(struct ndr_print *ndr, const char *name, int flags, struct spoolss_11 *r)
+{
+ ndr_print_struct(ndr, name, "spoolss_11");
+ ndr->depth++;
+ if (flags & NDR_IN) {
+ ndr_print_struct(ndr, "in", "spoolss_11");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ if (flags & NDR_OUT) {
+ ndr_print_struct(ndr, "out", "spoolss_11");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ ndr->depth--;
+}
+
+void ndr_print_spoolss_StartPagePrinter(struct ndr_print *ndr, const char *name, int flags, struct spoolss_StartPagePrinter *r)
+{
+ ndr_print_struct(ndr, name, "spoolss_StartPagePrinter");
+ ndr->depth++;
+ if (flags & NDR_IN) {
+ ndr_print_struct(ndr, "in", "spoolss_StartPagePrinter");
+ ndr->depth++;
+ ndr_print_ptr(ndr, "handle", r->in.handle);
+ ndr->depth++;
+ ndr_print_policy_handle(ndr, "handle", r->in.handle);
+ ndr->depth--;
+ ndr->depth--;
+ }
+ if (flags & NDR_OUT) {
+ ndr_print_struct(ndr, "out", "spoolss_StartPagePrinter");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ ndr->depth--;
+}
+
+void ndr_print_spoolss_13(struct ndr_print *ndr, const char *name, int flags, struct spoolss_13 *r)
+{
+ ndr_print_struct(ndr, name, "spoolss_13");
+ ndr->depth++;
+ if (flags & NDR_IN) {
+ ndr_print_struct(ndr, "in", "spoolss_13");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ if (flags & NDR_OUT) {
+ ndr_print_struct(ndr, "out", "spoolss_13");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ ndr->depth--;
+}
+
+void ndr_print_spoolss_EndPagePrinter(struct ndr_print *ndr, const char *name, int flags, struct spoolss_EndPagePrinter *r)
+{
+ ndr_print_struct(ndr, name, "spoolss_EndPagePrinter");
+ ndr->depth++;
+ if (flags & NDR_IN) {
+ ndr_print_struct(ndr, "in", "spoolss_EndPagePrinter");
+ ndr->depth++;
+ ndr_print_ptr(ndr, "handle", r->in.handle);
+ ndr->depth++;
+ ndr_print_policy_handle(ndr, "handle", r->in.handle);
+ ndr->depth--;
+ ndr->depth--;
+ }
+ if (flags & NDR_OUT) {
+ ndr_print_struct(ndr, "out", "spoolss_EndPagePrinter");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ ndr->depth--;
+}
+
+void ndr_print_spoolss_15(struct ndr_print *ndr, const char *name, int flags, struct spoolss_15 *r)
+{
+ ndr_print_struct(ndr, name, "spoolss_15");
+ ndr->depth++;
+ if (flags & NDR_IN) {
+ ndr_print_struct(ndr, "in", "spoolss_15");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ if (flags & NDR_OUT) {
+ ndr_print_struct(ndr, "out", "spoolss_15");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ ndr->depth--;
+}
+
+void ndr_print_spoolss_16(struct ndr_print *ndr, const char *name, int flags, struct spoolss_16 *r)
+{
+ ndr_print_struct(ndr, name, "spoolss_16");
+ ndr->depth++;
+ if (flags & NDR_IN) {
+ ndr_print_struct(ndr, "in", "spoolss_16");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ if (flags & NDR_OUT) {
+ ndr_print_struct(ndr, "out", "spoolss_16");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ ndr->depth--;
+}
+
+void ndr_print_spoolss_EndDocPrinter(struct ndr_print *ndr, const char *name, int flags, struct spoolss_EndDocPrinter *r)
+{
+ ndr_print_struct(ndr, name, "spoolss_EndDocPrinter");
+ ndr->depth++;
+ if (flags & NDR_IN) {
+ ndr_print_struct(ndr, "in", "spoolss_EndDocPrinter");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ if (flags & NDR_OUT) {
+ ndr_print_struct(ndr, "out", "spoolss_EndDocPrinter");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ ndr->depth--;
+}
+
+void ndr_print_spoolss_18(struct ndr_print *ndr, const char *name, int flags, struct spoolss_18 *r)
+{
+ ndr_print_struct(ndr, name, "spoolss_18");
+ ndr->depth++;
+ if (flags & NDR_IN) {
+ ndr_print_struct(ndr, "in", "spoolss_18");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ if (flags & NDR_OUT) {
+ ndr_print_struct(ndr, "out", "spoolss_18");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ ndr->depth--;
+}
+
+void ndr_print_spoolss_19(struct ndr_print *ndr, const char *name, int flags, struct spoolss_19 *r)
+{
+ ndr_print_struct(ndr, name, "spoolss_19");
+ ndr->depth++;
+ if (flags & NDR_IN) {
+ ndr_print_struct(ndr, "in", "spoolss_19");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ if (flags & NDR_OUT) {
+ ndr_print_struct(ndr, "out", "spoolss_19");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ ndr->depth--;
+}
+
+void ndr_print_spoolss_1a(struct ndr_print *ndr, const char *name, int flags, struct spoolss_1a *r)
+{
+ ndr_print_struct(ndr, name, "spoolss_1a");
+ ndr->depth++;
+ if (flags & NDR_IN) {
+ ndr_print_struct(ndr, "in", "spoolss_1a");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ if (flags & NDR_OUT) {
+ ndr_print_struct(ndr, "out", "spoolss_1a");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ ndr->depth--;
+}
+
+void ndr_print_spoolss_1b(struct ndr_print *ndr, const char *name, int flags, struct spoolss_1b *r)
+{
+ ndr_print_struct(ndr, name, "spoolss_1b");
+ ndr->depth++;
+ if (flags & NDR_IN) {
+ ndr_print_struct(ndr, "in", "spoolss_1b");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ if (flags & NDR_OUT) {
+ ndr_print_struct(ndr, "out", "spoolss_1b");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ ndr->depth--;
+}
+
+void ndr_print_spoolss_1c(struct ndr_print *ndr, const char *name, int flags, struct spoolss_1c *r)
+{
+ ndr_print_struct(ndr, name, "spoolss_1c");
+ ndr->depth++;
+ if (flags & NDR_IN) {
+ ndr_print_struct(ndr, "in", "spoolss_1c");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ if (flags & NDR_OUT) {
+ ndr_print_struct(ndr, "out", "spoolss_1c");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ ndr->depth--;
+}
+
+void ndr_print_spoolss_ClosePrinter(struct ndr_print *ndr, const char *name, int flags, struct spoolss_ClosePrinter *r)
+{
+ ndr_print_struct(ndr, name, "spoolss_ClosePrinter");
+ ndr->depth++;
+ if (flags & NDR_IN) {
+ ndr_print_struct(ndr, "in", "spoolss_ClosePrinter");
+ ndr->depth++;
+ ndr_print_ptr(ndr, "handle", r->in.handle);
+ ndr->depth++;
+ ndr_print_policy_handle(ndr, "handle", r->in.handle);
+ ndr->depth--;
+ ndr->depth--;
+ }
+ if (flags & NDR_OUT) {
+ ndr_print_struct(ndr, "out", "spoolss_ClosePrinter");
+ ndr->depth++;
+ ndr_print_ptr(ndr, "handle", r->out.handle);
+ ndr->depth++;
+ ndr_print_policy_handle(ndr, "handle", r->out.handle);
+ ndr->depth--;
+ ndr->depth--;
+ }
+ ndr->depth--;
+}
+
+void ndr_print_spoolss_1e(struct ndr_print *ndr, const char *name, int flags, struct spoolss_1e *r)
+{
+ ndr_print_struct(ndr, name, "spoolss_1e");
+ ndr->depth++;
+ if (flags & NDR_IN) {
+ ndr_print_struct(ndr, "in", "spoolss_1e");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ if (flags & NDR_OUT) {
+ ndr_print_struct(ndr, "out", "spoolss_1e");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ ndr->depth--;
+}
+
+void ndr_print_spoolss_1f(struct ndr_print *ndr, const char *name, int flags, struct spoolss_1f *r)
+{
+ ndr_print_struct(ndr, name, "spoolss_1f");
+ ndr->depth++;
+ if (flags & NDR_IN) {
+ ndr_print_struct(ndr, "in", "spoolss_1f");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ if (flags & NDR_OUT) {
+ ndr_print_struct(ndr, "out", "spoolss_1f");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ ndr->depth--;
+}
+
+void ndr_print_spoolss_20(struct ndr_print *ndr, const char *name, int flags, struct spoolss_20 *r)
+{
+ ndr_print_struct(ndr, name, "spoolss_20");
+ ndr->depth++;
+ if (flags & NDR_IN) {
+ ndr_print_struct(ndr, "in", "spoolss_20");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ if (flags & NDR_OUT) {
+ ndr_print_struct(ndr, "out", "spoolss_20");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ ndr->depth--;
+}
+
+void ndr_print_spoolss_21(struct ndr_print *ndr, const char *name, int flags, struct spoolss_21 *r)
+{
+ ndr_print_struct(ndr, name, "spoolss_21");
+ ndr->depth++;
+ if (flags & NDR_IN) {
+ ndr_print_struct(ndr, "in", "spoolss_21");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ if (flags & NDR_OUT) {
+ ndr_print_struct(ndr, "out", "spoolss_21");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ ndr->depth--;
+}
+
+void ndr_print_spoolss_22(struct ndr_print *ndr, const char *name, int flags, struct spoolss_22 *r)
+{
+ ndr_print_struct(ndr, name, "spoolss_22");
+ ndr->depth++;
+ if (flags & NDR_IN) {
+ ndr_print_struct(ndr, "in", "spoolss_22");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ if (flags & NDR_OUT) {
+ ndr_print_struct(ndr, "out", "spoolss_22");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ ndr->depth--;
+}
+
+void ndr_print_spoolss_23(struct ndr_print *ndr, const char *name, int flags, struct spoolss_23 *r)
+{
+ ndr_print_struct(ndr, name, "spoolss_23");
+ ndr->depth++;
+ if (flags & NDR_IN) {
+ ndr_print_struct(ndr, "in", "spoolss_23");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ if (flags & NDR_OUT) {
+ ndr_print_struct(ndr, "out", "spoolss_23");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ ndr->depth--;
+}
+
+void ndr_print_spoolss_24(struct ndr_print *ndr, const char *name, int flags, struct spoolss_24 *r)
+{
+ ndr_print_struct(ndr, name, "spoolss_24");
+ ndr->depth++;
+ if (flags & NDR_IN) {
+ ndr_print_struct(ndr, "in", "spoolss_24");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ if (flags & NDR_OUT) {
+ ndr_print_struct(ndr, "out", "spoolss_24");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ ndr->depth--;
+}
+
+void ndr_print_spoolss_25(struct ndr_print *ndr, const char *name, int flags, struct spoolss_25 *r)
+{
+ ndr_print_struct(ndr, name, "spoolss_25");
+ ndr->depth++;
+ if (flags & NDR_IN) {
+ ndr_print_struct(ndr, "in", "spoolss_25");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ if (flags & NDR_OUT) {
+ ndr_print_struct(ndr, "out", "spoolss_25");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ ndr->depth--;
+}
+
+void ndr_print_spoolss_26(struct ndr_print *ndr, const char *name, int flags, struct spoolss_26 *r)
+{
+ ndr_print_struct(ndr, name, "spoolss_26");
+ ndr->depth++;
+ if (flags & NDR_IN) {
+ ndr_print_struct(ndr, "in", "spoolss_26");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ if (flags & NDR_OUT) {
+ ndr_print_struct(ndr, "out", "spoolss_26");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ ndr->depth--;
+}
+
+void ndr_print_spoolss_27(struct ndr_print *ndr, const char *name, int flags, struct spoolss_27 *r)
+{
+ ndr_print_struct(ndr, name, "spoolss_27");
+ ndr->depth++;
+ if (flags & NDR_IN) {
+ ndr_print_struct(ndr, "in", "spoolss_27");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ if (flags & NDR_OUT) {
+ ndr_print_struct(ndr, "out", "spoolss_27");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ ndr->depth--;
+}
+
+void ndr_print_spoolss_28(struct ndr_print *ndr, const char *name, int flags, struct spoolss_28 *r)
+{
+ ndr_print_struct(ndr, name, "spoolss_28");
+ ndr->depth++;
+ if (flags & NDR_IN) {
+ ndr_print_struct(ndr, "in", "spoolss_28");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ if (flags & NDR_OUT) {
+ ndr_print_struct(ndr, "out", "spoolss_28");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ ndr->depth--;
+}
+
+void ndr_print_spoolss_29(struct ndr_print *ndr, const char *name, int flags, struct spoolss_29 *r)
+{
+ ndr_print_struct(ndr, name, "spoolss_29");
+ ndr->depth++;
+ if (flags & NDR_IN) {
+ ndr_print_struct(ndr, "in", "spoolss_29");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ if (flags & NDR_OUT) {
+ ndr_print_struct(ndr, "out", "spoolss_29");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ ndr->depth--;
+}
+
+void ndr_print_spoolss_2a(struct ndr_print *ndr, const char *name, int flags, struct spoolss_2a *r)
+{
+ ndr_print_struct(ndr, name, "spoolss_2a");
+ ndr->depth++;
+ if (flags & NDR_IN) {
+ ndr_print_struct(ndr, "in", "spoolss_2a");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ if (flags & NDR_OUT) {
+ ndr_print_struct(ndr, "out", "spoolss_2a");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ ndr->depth--;
+}
+
+void ndr_print_spoolss_2b(struct ndr_print *ndr, const char *name, int flags, struct spoolss_2b *r)
+{
+ ndr_print_struct(ndr, name, "spoolss_2b");
+ ndr->depth++;
+ if (flags & NDR_IN) {
+ ndr_print_struct(ndr, "in", "spoolss_2b");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ if (flags & NDR_OUT) {
+ ndr_print_struct(ndr, "out", "spoolss_2b");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ ndr->depth--;
+}
+
+void ndr_print_spoolss_2c(struct ndr_print *ndr, const char *name, int flags, struct spoolss_2c *r)
+{
+ ndr_print_struct(ndr, name, "spoolss_2c");
+ ndr->depth++;
+ if (flags & NDR_IN) {
+ ndr_print_struct(ndr, "in", "spoolss_2c");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ if (flags & NDR_OUT) {
+ ndr_print_struct(ndr, "out", "spoolss_2c");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ ndr->depth--;
+}
+
+void ndr_print_spoolss_2d(struct ndr_print *ndr, const char *name, int flags, struct spoolss_2d *r)
+{
+ ndr_print_struct(ndr, name, "spoolss_2d");
+ ndr->depth++;
+ if (flags & NDR_IN) {
+ ndr_print_struct(ndr, "in", "spoolss_2d");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ if (flags & NDR_OUT) {
+ ndr_print_struct(ndr, "out", "spoolss_2d");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ ndr->depth--;
+}
+
+void ndr_print_spoolss_2e(struct ndr_print *ndr, const char *name, int flags, struct spoolss_2e *r)
+{
+ ndr_print_struct(ndr, name, "spoolss_2e");
+ ndr->depth++;
+ if (flags & NDR_IN) {
+ ndr_print_struct(ndr, "in", "spoolss_2e");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ if (flags & NDR_OUT) {
+ ndr_print_struct(ndr, "out", "spoolss_2e");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ ndr->depth--;
+}
+
+void ndr_print_spoolss_2f(struct ndr_print *ndr, const char *name, int flags, struct spoolss_2f *r)
+{
+ ndr_print_struct(ndr, name, "spoolss_2f");
+ ndr->depth++;
+ if (flags & NDR_IN) {
+ ndr_print_struct(ndr, "in", "spoolss_2f");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ if (flags & NDR_OUT) {
+ ndr_print_struct(ndr, "out", "spoolss_2f");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ ndr->depth--;
+}
+
+void ndr_print_spoolss_30(struct ndr_print *ndr, const char *name, int flags, struct spoolss_30 *r)
+{
+ ndr_print_struct(ndr, name, "spoolss_30");
+ ndr->depth++;
+ if (flags & NDR_IN) {
+ ndr_print_struct(ndr, "in", "spoolss_30");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ if (flags & NDR_OUT) {
+ ndr_print_struct(ndr, "out", "spoolss_30");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ ndr->depth--;
+}
+
+void ndr_print_spoolss_31(struct ndr_print *ndr, const char *name, int flags, struct spoolss_31 *r)
+{
+ ndr_print_struct(ndr, name, "spoolss_31");
+ ndr->depth++;
+ if (flags & NDR_IN) {
+ ndr_print_struct(ndr, "in", "spoolss_31");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ if (flags & NDR_OUT) {
+ ndr_print_struct(ndr, "out", "spoolss_31");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ ndr->depth--;
+}
+
+void ndr_print_spoolss_32(struct ndr_print *ndr, const char *name, int flags, struct spoolss_32 *r)
+{
+ ndr_print_struct(ndr, name, "spoolss_32");
+ ndr->depth++;
+ if (flags & NDR_IN) {
+ ndr_print_struct(ndr, "in", "spoolss_32");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ if (flags & NDR_OUT) {
+ ndr_print_struct(ndr, "out", "spoolss_32");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ ndr->depth--;
+}
+
+void ndr_print_spoolss_33(struct ndr_print *ndr, const char *name, int flags, struct spoolss_33 *r)
+{
+ ndr_print_struct(ndr, name, "spoolss_33");
+ ndr->depth++;
+ if (flags & NDR_IN) {
+ ndr_print_struct(ndr, "in", "spoolss_33");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ if (flags & NDR_OUT) {
+ ndr_print_struct(ndr, "out", "spoolss_33");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ ndr->depth--;
+}
+
+void ndr_print_spoolss_34(struct ndr_print *ndr, const char *name, int flags, struct spoolss_34 *r)
+{
+ ndr_print_struct(ndr, name, "spoolss_34");
+ ndr->depth++;
+ if (flags & NDR_IN) {
+ ndr_print_struct(ndr, "in", "spoolss_34");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ if (flags & NDR_OUT) {
+ ndr_print_struct(ndr, "out", "spoolss_34");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ ndr->depth--;
+}
+
+void ndr_print_spoolss_35(struct ndr_print *ndr, const char *name, int flags, struct spoolss_35 *r)
+{
+ ndr_print_struct(ndr, name, "spoolss_35");
+ ndr->depth++;
+ if (flags & NDR_IN) {
+ ndr_print_struct(ndr, "in", "spoolss_35");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ if (flags & NDR_OUT) {
+ ndr_print_struct(ndr, "out", "spoolss_35");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ ndr->depth--;
+}
+
+void ndr_print_spoolss_36(struct ndr_print *ndr, const char *name, int flags, struct spoolss_36 *r)
+{
+ ndr_print_struct(ndr, name, "spoolss_36");
+ ndr->depth++;
+ if (flags & NDR_IN) {
+ ndr_print_struct(ndr, "in", "spoolss_36");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ if (flags & NDR_OUT) {
+ ndr_print_struct(ndr, "out", "spoolss_36");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ ndr->depth--;
+}
+
+void ndr_print_spoolss_37(struct ndr_print *ndr, const char *name, int flags, struct spoolss_37 *r)
+{
+ ndr_print_struct(ndr, name, "spoolss_37");
+ ndr->depth++;
+ if (flags & NDR_IN) {
+ ndr_print_struct(ndr, "in", "spoolss_37");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ if (flags & NDR_OUT) {
+ ndr_print_struct(ndr, "out", "spoolss_37");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ ndr->depth--;
+}
+
+void ndr_print_spoolss_38(struct ndr_print *ndr, const char *name, int flags, struct spoolss_38 *r)
+{
+ ndr_print_struct(ndr, name, "spoolss_38");
+ ndr->depth++;
+ if (flags & NDR_IN) {
+ ndr_print_struct(ndr, "in", "spoolss_38");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ if (flags & NDR_OUT) {
+ ndr_print_struct(ndr, "out", "spoolss_38");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ ndr->depth--;
+}
+
+void ndr_print_spoolss_39(struct ndr_print *ndr, const char *name, int flags, struct spoolss_39 *r)
+{
+ ndr_print_struct(ndr, name, "spoolss_39");
+ ndr->depth++;
+ if (flags & NDR_IN) {
+ ndr_print_struct(ndr, "in", "spoolss_39");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ if (flags & NDR_OUT) {
+ ndr_print_struct(ndr, "out", "spoolss_39");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ ndr->depth--;
+}
+
+void ndr_print_spoolss_3a(struct ndr_print *ndr, const char *name, int flags, struct spoolss_3a *r)
+{
+ ndr_print_struct(ndr, name, "spoolss_3a");
+ ndr->depth++;
+ if (flags & NDR_IN) {
+ ndr_print_struct(ndr, "in", "spoolss_3a");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ if (flags & NDR_OUT) {
+ ndr_print_struct(ndr, "out", "spoolss_3a");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ ndr->depth--;
+}
+
+void ndr_print_spoolss_3b(struct ndr_print *ndr, const char *name, int flags, struct spoolss_3b *r)
+{
+ ndr_print_struct(ndr, name, "spoolss_3b");
+ ndr->depth++;
+ if (flags & NDR_IN) {
+ ndr_print_struct(ndr, "in", "spoolss_3b");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ if (flags & NDR_OUT) {
+ ndr_print_struct(ndr, "out", "spoolss_3b");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ ndr->depth--;
+}
+
+void ndr_print_spoolss_3c(struct ndr_print *ndr, const char *name, int flags, struct spoolss_3c *r)
+{
+ ndr_print_struct(ndr, name, "spoolss_3c");
+ ndr->depth++;
+ if (flags & NDR_IN) {
+ ndr_print_struct(ndr, "in", "spoolss_3c");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ if (flags & NDR_OUT) {
+ ndr_print_struct(ndr, "out", "spoolss_3c");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ ndr->depth--;
+}
+
+void ndr_print_spoolss_3d(struct ndr_print *ndr, const char *name, int flags, struct spoolss_3d *r)
+{
+ ndr_print_struct(ndr, name, "spoolss_3d");
+ ndr->depth++;
+ if (flags & NDR_IN) {
+ ndr_print_struct(ndr, "in", "spoolss_3d");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ if (flags & NDR_OUT) {
+ ndr_print_struct(ndr, "out", "spoolss_3d");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ ndr->depth--;
+}
+
+void ndr_print_spoolss_3e(struct ndr_print *ndr, const char *name, int flags, struct spoolss_3e *r)
+{
+ ndr_print_struct(ndr, name, "spoolss_3e");
+ ndr->depth++;
+ if (flags & NDR_IN) {
+ ndr_print_struct(ndr, "in", "spoolss_3e");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ if (flags & NDR_OUT) {
+ ndr_print_struct(ndr, "out", "spoolss_3e");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ ndr->depth--;
+}
+
+void ndr_print_spoolss_3f(struct ndr_print *ndr, const char *name, int flags, struct spoolss_3f *r)
+{
+ ndr_print_struct(ndr, name, "spoolss_3f");
+ ndr->depth++;
+ if (flags & NDR_IN) {
+ ndr_print_struct(ndr, "in", "spoolss_3f");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ if (flags & NDR_OUT) {
+ ndr_print_struct(ndr, "out", "spoolss_3f");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ ndr->depth--;
+}
+
+void ndr_print_spoolss_40(struct ndr_print *ndr, const char *name, int flags, struct spoolss_40 *r)
+{
+ ndr_print_struct(ndr, name, "spoolss_40");
+ ndr->depth++;
+ if (flags & NDR_IN) {
+ ndr_print_struct(ndr, "in", "spoolss_40");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ if (flags & NDR_OUT) {
+ ndr_print_struct(ndr, "out", "spoolss_40");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ ndr->depth--;
+}
+
+void ndr_print_spoolss_41(struct ndr_print *ndr, const char *name, int flags, struct spoolss_41 *r)
+{
+ ndr_print_struct(ndr, name, "spoolss_41");
+ ndr->depth++;
+ if (flags & NDR_IN) {
+ ndr_print_struct(ndr, "in", "spoolss_41");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ if (flags & NDR_OUT) {
+ ndr_print_struct(ndr, "out", "spoolss_41");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ ndr->depth--;
+}
+
+void ndr_print_spoolss_42(struct ndr_print *ndr, const char *name, int flags, struct spoolss_42 *r)
+{
+ ndr_print_struct(ndr, name, "spoolss_42");
+ ndr->depth++;
+ if (flags & NDR_IN) {
+ ndr_print_struct(ndr, "in", "spoolss_42");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ if (flags & NDR_OUT) {
+ ndr_print_struct(ndr, "out", "spoolss_42");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ ndr->depth--;
+}
+
+void ndr_print_spoolss_43(struct ndr_print *ndr, const char *name, int flags, struct spoolss_43 *r)
+{
+ ndr_print_struct(ndr, name, "spoolss_43");
+ ndr->depth++;
+ if (flags & NDR_IN) {
+ ndr_print_struct(ndr, "in", "spoolss_43");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ if (flags & NDR_OUT) {
+ ndr_print_struct(ndr, "out", "spoolss_43");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ ndr->depth--;
+}
+
+void ndr_print_spoolss_44(struct ndr_print *ndr, const char *name, int flags, struct spoolss_44 *r)
+{
+ ndr_print_struct(ndr, name, "spoolss_44");
+ ndr->depth++;
+ if (flags & NDR_IN) {
+ ndr_print_struct(ndr, "in", "spoolss_44");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ if (flags & NDR_OUT) {
+ ndr_print_struct(ndr, "out", "spoolss_44");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ ndr->depth--;
+}
+
void ndr_print_spoolss_Devmode(struct ndr_print *ndr, const char *name, struct spoolss_Devmode *r)
{
ndr_print_struct(ndr, name, "spoolss_Devmode");
@@ -2176,3 +3524,517 @@ void ndr_print_spoolss_UserLevel(struct ndr_print *ndr, const char *name, uint16
}
}
+void ndr_print_spoolss_OpenPrinterEx(struct ndr_print *ndr, const char *name, int flags, struct spoolss_OpenPrinterEx *r)
+{
+ ndr_print_struct(ndr, name, "spoolss_OpenPrinterEx");
+ ndr->depth++;
+ if (flags & NDR_IN) {
+ ndr_print_struct(ndr, "in", "spoolss_OpenPrinterEx");
+ ndr->depth++;
+ ndr_print_ptr(ndr, "printername", r->in.printername);
+ ndr->depth++;
+ if (r->in.printername) {
+ ndr_print_unistr(ndr, "printername", r->in.printername);
+ }
+ ndr->depth--;
+ ndr_print_ptr(ndr, "datatype", r->in.datatype);
+ ndr->depth++;
+ if (r->in.datatype) {
+ ndr_print_unistr(ndr, "datatype", r->in.datatype);
+ }
+ ndr->depth--;
+ ndr_print_spoolss_DevmodeContainer(ndr, "devmode_ctr", &r->in.devmode_ctr);
+ ndr_print_uint32(ndr, "access_required", r->in.access_required);
+ ndr_print_uint32(ndr, "level", r->in.level);
+ ndr_print_spoolss_UserLevel(ndr, "userlevel", r->in.level, &r->in.userlevel);
+ ndr->depth--;
+ }
+ if (flags & NDR_OUT) {
+ ndr_print_struct(ndr, "out", "spoolss_OpenPrinterEx");
+ ndr->depth++;
+ ndr_print_ptr(ndr, "handle", r->out.handle);
+ ndr->depth++;
+ ndr_print_policy_handle(ndr, "handle", r->out.handle);
+ ndr->depth--;
+ ndr->depth--;
+ }
+ ndr->depth--;
+}
+
+void ndr_print_spoolss_46(struct ndr_print *ndr, const char *name, int flags, struct spoolss_46 *r)
+{
+ ndr_print_struct(ndr, name, "spoolss_46");
+ ndr->depth++;
+ if (flags & NDR_IN) {
+ ndr_print_struct(ndr, "in", "spoolss_46");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ if (flags & NDR_OUT) {
+ ndr_print_struct(ndr, "out", "spoolss_46");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ ndr->depth--;
+}
+
+void ndr_print_spoolss_47(struct ndr_print *ndr, const char *name, int flags, struct spoolss_47 *r)
+{
+ ndr_print_struct(ndr, name, "spoolss_47");
+ ndr->depth++;
+ if (flags & NDR_IN) {
+ ndr_print_struct(ndr, "in", "spoolss_47");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ if (flags & NDR_OUT) {
+ ndr_print_struct(ndr, "out", "spoolss_47");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ ndr->depth--;
+}
+
+void ndr_print_spoolss_EnumPrinterData(struct ndr_print *ndr, const char *name, int flags, struct spoolss_EnumPrinterData *r)
+{
+ ndr_print_struct(ndr, name, "spoolss_EnumPrinterData");
+ ndr->depth++;
+ if (flags & NDR_IN) {
+ ndr_print_struct(ndr, "in", "spoolss_EnumPrinterData");
+ ndr->depth++;
+ ndr_print_ptr(ndr, "handle", r->in.handle);
+ ndr->depth++;
+ ndr_print_policy_handle(ndr, "handle", r->in.handle);
+ ndr->depth--;
+ ndr_print_uint32(ndr, "enum_index", r->in.enum_index);
+ ndr_print_uint32(ndr, "value_offered", r->in.value_offered);
+ ndr_print_ptr(ndr, "buffer", r->in.buffer);
+ ndr->depth++;
+ if (r->in.buffer) {
+ ndr_print_DATA_BLOB(ndr, "buffer", *r->in.buffer);
+ }
+ ndr->depth--;
+ ndr_print_ptr(ndr, "buf_size", r->in.buf_size);
+ ndr->depth++;
+ ndr_print_uint32(ndr, "buf_size", *r->in.buf_size);
+ ndr->depth--;
+ ndr->depth--;
+ }
+ if (flags & NDR_OUT) {
+ ndr_print_struct(ndr, "out", "spoolss_EnumPrinterData");
+ ndr->depth++;
+ ndr_print_uint32(ndr, "value_len", r->out.value_len);
+ ndr_print_ptr(ndr, "value_name", r->out.value_name);
+ ndr->depth++;
+ if (r->out.value_name) {
+ ndr_print_unistr(ndr, "value_name", r->out.value_name);
+ }
+ ndr->depth--;
+ ndr_print_uint32(ndr, "value_needed", r->out.value_needed);
+ ndr_print_uint32(ndr, "printerdata_type", r->out.printerdata_type);
+ ndr_print_ptr(ndr, "buffer", r->out.buffer);
+ ndr->depth++;
+ if (r->out.buffer) {
+ ndr_print_DATA_BLOB(ndr, "buffer", *r->out.buffer);
+ }
+ ndr->depth--;
+ ndr_print_ptr(ndr, "buf_size", r->out.buf_size);
+ ndr->depth++;
+ ndr_print_uint32(ndr, "buf_size", *r->out.buf_size);
+ ndr->depth--;
+ ndr->depth--;
+ }
+ ndr->depth--;
+}
+
+void ndr_print_spoolss_49(struct ndr_print *ndr, const char *name, int flags, struct spoolss_49 *r)
+{
+ ndr_print_struct(ndr, name, "spoolss_49");
+ ndr->depth++;
+ if (flags & NDR_IN) {
+ ndr_print_struct(ndr, "in", "spoolss_49");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ if (flags & NDR_OUT) {
+ ndr_print_struct(ndr, "out", "spoolss_49");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ ndr->depth--;
+}
+
+void ndr_print_spoolss_4a(struct ndr_print *ndr, const char *name, int flags, struct spoolss_4a *r)
+{
+ ndr_print_struct(ndr, name, "spoolss_4a");
+ ndr->depth++;
+ if (flags & NDR_IN) {
+ ndr_print_struct(ndr, "in", "spoolss_4a");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ if (flags & NDR_OUT) {
+ ndr_print_struct(ndr, "out", "spoolss_4a");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ ndr->depth--;
+}
+
+void ndr_print_spoolss_4b(struct ndr_print *ndr, const char *name, int flags, struct spoolss_4b *r)
+{
+ ndr_print_struct(ndr, name, "spoolss_4b");
+ ndr->depth++;
+ if (flags & NDR_IN) {
+ ndr_print_struct(ndr, "in", "spoolss_4b");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ if (flags & NDR_OUT) {
+ ndr_print_struct(ndr, "out", "spoolss_4b");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ ndr->depth--;
+}
+
+void ndr_print_spoolss_4c(struct ndr_print *ndr, const char *name, int flags, struct spoolss_4c *r)
+{
+ ndr_print_struct(ndr, name, "spoolss_4c");
+ ndr->depth++;
+ if (flags & NDR_IN) {
+ ndr_print_struct(ndr, "in", "spoolss_4c");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ if (flags & NDR_OUT) {
+ ndr_print_struct(ndr, "out", "spoolss_4c");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ ndr->depth--;
+}
+
+void ndr_print_spoolss_4d(struct ndr_print *ndr, const char *name, int flags, struct spoolss_4d *r)
+{
+ ndr_print_struct(ndr, name, "spoolss_4d");
+ ndr->depth++;
+ if (flags & NDR_IN) {
+ ndr_print_struct(ndr, "in", "spoolss_4d");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ if (flags & NDR_OUT) {
+ ndr_print_struct(ndr, "out", "spoolss_4d");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ ndr->depth--;
+}
+
+void ndr_print_spoolss_4e(struct ndr_print *ndr, const char *name, int flags, struct spoolss_4e *r)
+{
+ ndr_print_struct(ndr, name, "spoolss_4e");
+ ndr->depth++;
+ if (flags & NDR_IN) {
+ ndr_print_struct(ndr, "in", "spoolss_4e");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ if (flags & NDR_OUT) {
+ ndr_print_struct(ndr, "out", "spoolss_4e");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ ndr->depth--;
+}
+
+void ndr_print_spoolss_4f(struct ndr_print *ndr, const char *name, int flags, struct spoolss_4f *r)
+{
+ ndr_print_struct(ndr, name, "spoolss_4f");
+ ndr->depth++;
+ if (flags & NDR_IN) {
+ ndr_print_struct(ndr, "in", "spoolss_4f");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ if (flags & NDR_OUT) {
+ ndr_print_struct(ndr, "out", "spoolss_4f");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ ndr->depth--;
+}
+
+void ndr_print_spoolss_50(struct ndr_print *ndr, const char *name, int flags, struct spoolss_50 *r)
+{
+ ndr_print_struct(ndr, name, "spoolss_50");
+ ndr->depth++;
+ if (flags & NDR_IN) {
+ ndr_print_struct(ndr, "in", "spoolss_50");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ if (flags & NDR_OUT) {
+ ndr_print_struct(ndr, "out", "spoolss_50");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ ndr->depth--;
+}
+
+void ndr_print_spoolss_51(struct ndr_print *ndr, const char *name, int flags, struct spoolss_51 *r)
+{
+ ndr_print_struct(ndr, name, "spoolss_51");
+ ndr->depth++;
+ if (flags & NDR_IN) {
+ ndr_print_struct(ndr, "in", "spoolss_51");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ if (flags & NDR_OUT) {
+ ndr_print_struct(ndr, "out", "spoolss_51");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ ndr->depth--;
+}
+
+void ndr_print_spoolss_52(struct ndr_print *ndr, const char *name, int flags, struct spoolss_52 *r)
+{
+ ndr_print_struct(ndr, name, "spoolss_52");
+ ndr->depth++;
+ if (flags & NDR_IN) {
+ ndr_print_struct(ndr, "in", "spoolss_52");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ if (flags & NDR_OUT) {
+ ndr_print_struct(ndr, "out", "spoolss_52");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ ndr->depth--;
+}
+
+void ndr_print_spoolss_53(struct ndr_print *ndr, const char *name, int flags, struct spoolss_53 *r)
+{
+ ndr_print_struct(ndr, name, "spoolss_53");
+ ndr->depth++;
+ if (flags & NDR_IN) {
+ ndr_print_struct(ndr, "in", "spoolss_53");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ if (flags & NDR_OUT) {
+ ndr_print_struct(ndr, "out", "spoolss_53");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ ndr->depth--;
+}
+
+void ndr_print_spoolss_54(struct ndr_print *ndr, const char *name, int flags, struct spoolss_54 *r)
+{
+ ndr_print_struct(ndr, name, "spoolss_54");
+ ndr->depth++;
+ if (flags & NDR_IN) {
+ ndr_print_struct(ndr, "in", "spoolss_54");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ if (flags & NDR_OUT) {
+ ndr_print_struct(ndr, "out", "spoolss_54");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ ndr->depth--;
+}
+
+void ndr_print_spoolss_55(struct ndr_print *ndr, const char *name, int flags, struct spoolss_55 *r)
+{
+ ndr_print_struct(ndr, name, "spoolss_55");
+ ndr->depth++;
+ if (flags & NDR_IN) {
+ ndr_print_struct(ndr, "in", "spoolss_55");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ if (flags & NDR_OUT) {
+ ndr_print_struct(ndr, "out", "spoolss_55");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ ndr->depth--;
+}
+
+void ndr_print_spoolss_56(struct ndr_print *ndr, const char *name, int flags, struct spoolss_56 *r)
+{
+ ndr_print_struct(ndr, name, "spoolss_56");
+ ndr->depth++;
+ if (flags & NDR_IN) {
+ ndr_print_struct(ndr, "in", "spoolss_56");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ if (flags & NDR_OUT) {
+ ndr_print_struct(ndr, "out", "spoolss_56");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ ndr->depth--;
+}
+
+void ndr_print_spoolss_57(struct ndr_print *ndr, const char *name, int flags, struct spoolss_57 *r)
+{
+ ndr_print_struct(ndr, name, "spoolss_57");
+ ndr->depth++;
+ if (flags & NDR_IN) {
+ ndr_print_struct(ndr, "in", "spoolss_57");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ if (flags & NDR_OUT) {
+ ndr_print_struct(ndr, "out", "spoolss_57");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ ndr->depth--;
+}
+
+void ndr_print_spoolss_58(struct ndr_print *ndr, const char *name, int flags, struct spoolss_58 *r)
+{
+ ndr_print_struct(ndr, name, "spoolss_58");
+ ndr->depth++;
+ if (flags & NDR_IN) {
+ ndr_print_struct(ndr, "in", "spoolss_58");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ if (flags & NDR_OUT) {
+ ndr_print_struct(ndr, "out", "spoolss_58");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ ndr->depth--;
+}
+
+void ndr_print_spoolss_59(struct ndr_print *ndr, const char *name, int flags, struct spoolss_59 *r)
+{
+ ndr_print_struct(ndr, name, "spoolss_59");
+ ndr->depth++;
+ if (flags & NDR_IN) {
+ ndr_print_struct(ndr, "in", "spoolss_59");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ if (flags & NDR_OUT) {
+ ndr_print_struct(ndr, "out", "spoolss_59");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ ndr->depth--;
+}
+
+void ndr_print_spoolss_5a(struct ndr_print *ndr, const char *name, int flags, struct spoolss_5a *r)
+{
+ ndr_print_struct(ndr, name, "spoolss_5a");
+ ndr->depth++;
+ if (flags & NDR_IN) {
+ ndr_print_struct(ndr, "in", "spoolss_5a");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ if (flags & NDR_OUT) {
+ ndr_print_struct(ndr, "out", "spoolss_5a");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ ndr->depth--;
+}
+
+void ndr_print_spoolss_5b(struct ndr_print *ndr, const char *name, int flags, struct spoolss_5b *r)
+{
+ ndr_print_struct(ndr, name, "spoolss_5b");
+ ndr->depth++;
+ if (flags & NDR_IN) {
+ ndr_print_struct(ndr, "in", "spoolss_5b");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ if (flags & NDR_OUT) {
+ ndr_print_struct(ndr, "out", "spoolss_5b");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ ndr->depth--;
+}
+
+void ndr_print_spoolss_5c(struct ndr_print *ndr, const char *name, int flags, struct spoolss_5c *r)
+{
+ ndr_print_struct(ndr, name, "spoolss_5c");
+ ndr->depth++;
+ if (flags & NDR_IN) {
+ ndr_print_struct(ndr, "in", "spoolss_5c");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ if (flags & NDR_OUT) {
+ ndr_print_struct(ndr, "out", "spoolss_5c");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ ndr->depth--;
+}
+
+void ndr_print_spoolss_5d(struct ndr_print *ndr, const char *name, int flags, struct spoolss_5d *r)
+{
+ ndr_print_struct(ndr, name, "spoolss_5d");
+ ndr->depth++;
+ if (flags & NDR_IN) {
+ ndr_print_struct(ndr, "in", "spoolss_5d");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ if (flags & NDR_OUT) {
+ ndr_print_struct(ndr, "out", "spoolss_5d");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ ndr->depth--;
+}
+
+void ndr_print_spoolss_5e(struct ndr_print *ndr, const char *name, int flags, struct spoolss_5e *r)
+{
+ ndr_print_struct(ndr, name, "spoolss_5e");
+ ndr->depth++;
+ if (flags & NDR_IN) {
+ ndr_print_struct(ndr, "in", "spoolss_5e");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ if (flags & NDR_OUT) {
+ ndr_print_struct(ndr, "out", "spoolss_5e");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ ndr->depth--;
+}
+
+void ndr_print_spoolss_5f(struct ndr_print *ndr, const char *name, int flags, struct spoolss_5f *r)
+{
+ ndr_print_struct(ndr, name, "spoolss_5f");
+ ndr->depth++;
+ if (flags & NDR_IN) {
+ ndr_print_struct(ndr, "in", "spoolss_5f");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ if (flags & NDR_OUT) {
+ ndr_print_struct(ndr, "out", "spoolss_5f");
+ ndr->depth++;
+ ndr->depth--;
+ }
+ ndr->depth--;
+}
+
diff --git a/source4/librpc/ndr/ndr_spoolss.h b/source4/librpc/ndr/ndr_spoolss.h
index 33881ab41b..c8d97dff45 100644
--- a/source4/librpc/ndr/ndr_spoolss.h
+++ b/source4/librpc/ndr/ndr_spoolss.h
@@ -88,6 +88,10 @@ struct spoolss_PrinterInfo5 {
uint32 transmission_retry_timeout;
};
+struct spoolss_PrinterInfo6 {
+ uint32 unknown;
+};
+
struct spoolss_PrinterInfo7 {
const char * guid;
uint32 action;
@@ -99,6 +103,7 @@ union spoolss_PrinterInfo {
/* [case(3)] */ struct spoolss_PrinterInfo3 info3;
/* [case(4)] */ struct spoolss_PrinterInfo4 info4;
/* [case(5)] */ struct spoolss_PrinterInfo5 info5;
+/* [case(6)] */ struct spoolss_PrinterInfo6 info6;
/* [case(7)] */ struct spoolss_PrinterInfo7 info7;
};
diff --git a/source4/torture/rpc/dfs.c b/source4/torture/rpc/dfs.c
index 77de4017d4..889abbdc78 100644
--- a/source4/torture/rpc/dfs.c
+++ b/source4/torture/rpc/dfs.c
@@ -36,7 +36,7 @@ static BOOL test_Exist(struct dcerpc_pipe *p, TALLOC_CTX *mem_ctx)
return False;
}
- printf("exist=%d\n", exist);
+ NDR_PRINT_BOTH_DEBUG(dfs_Exist, &r);
return True;
}
@@ -60,7 +60,7 @@ static BOOL test_InfoLevel(struct dcerpc_pipe *p, TALLOC_CTX *mem_ctx, uint16 le
return False;
}
- NDR_PRINT_UNION_DEBUG(dfs_Info, r.in.level, &r.out.info);
+ NDR_PRINT_BOTH_DEBUG(dfs_GetInfo, &r);
return True;
}
@@ -106,9 +106,7 @@ static BOOL test_EnumLevel(struct dcerpc_pipe *p, TALLOC_CTX *mem_ctx, uint16 le
return False;
}
- printf("Received %d records\n", r.out.total?*r.out.total:-1);
-
- NDR_PRINT_DEBUG(dfs_EnumStruct, r.out.info);
+ NDR_PRINT_BOTH_DEBUG(dfs_Enum, &r);
if (level == 1 && r.out.total) {
int i;
diff --git a/source4/torture/rpc/lsa.c b/source4/torture/rpc/lsa.c
index f65f49bafd..bcefde24d9 100644
--- a/source4/torture/rpc/lsa.c
+++ b/source4/torture/rpc/lsa.c
@@ -134,13 +134,7 @@ static BOOL test_LookupNames(struct dcerpc_pipe *p,
return False;
}
- if (r.out.domains) {
- NDR_PRINT_DEBUG(lsa_RefDomainList, r.out.domains);
- }
-
- printf("lookup gave %d sids (sids.count=%d)\n", count, sids.count);
-
- NDR_PRINT_DEBUG(lsa_TransSidArray, r.out.sids);
+ NDR_PRINT_BOTH_DEBUG(lsa_LookupNames, &r);
printf("\n");
@@ -177,11 +171,7 @@ static BOOL test_LookupSids(struct dcerpc_pipe *p,
return False;
}
- if (r.out.domains) {
- NDR_PRINT_DEBUG(lsa_RefDomainList, r.out.domains);
- }
-
- NDR_PRINT_DEBUG(lsa_TransNameArray, r.out.names);
+ NDR_PRINT_BOTH_DEBUG(lsa_LookupSids, &r);
printf("\n");
@@ -209,7 +199,7 @@ static BOOL test_LookupPrivName(struct dcerpc_pipe *p,
return False;
}
- NDR_PRINT_DEBUG(lsa_Name, r.out.name);
+ NDR_PRINT_BOTH_DEBUG(lsa_LookupPrivName, &r);
return True;
}
@@ -232,12 +222,10 @@ static BOOL test_EnumPrivsAccount(struct dcerpc_pipe *p,
return False;
}
- printf("received %d privileges\n",
- r.out.privs?r.out.privs->count:0);
+ NDR_PRINT_BOTH_DEBUG(lsa_EnumPrivsAccount, &r);
if (r.out.privs) {
int i;
- NDR_PRINT_DEBUG(lsa_PrivilegeSet, r.out.privs);
for (i=0;i<r.out.privs->count;i++) {
test_LookupPrivName(p, mem_ctx, handle,
&r.out.privs->set[i].luid);
@@ -268,7 +256,7 @@ static BOOL test_EnumAccountRights(struct dcerpc_pipe *p,
return False;
}
- NDR_PRINT_DEBUG(lsa_RightSet, r.out.rights);
+ NDR_PRINT_BOTH_DEBUG(lsa_EnumAccountRights, &r);
return True;
}
@@ -293,7 +281,7 @@ static BOOL test_QuerySecObj(struct dcerpc_pipe *p,
return False;
}
- NDR_PRINT_DEBUG(sec_desc_buf, r.out.sd);
+ NDR_PRINT_BOTH_DEBUG(lsa_QuerySecObj, &r);
return True;
}
@@ -356,9 +344,7 @@ static BOOL test_EnumAccounts(struct dcerpc_pipe *p,
return False;
}
- printf("Got %d sids resume_handle=%u\n", sids1.num_sids, resume_handle);
-
- NDR_PRINT_DEBUG(lsa_SidArray, r.out.sids);
+ NDR_PRINT_BOTH_DEBUG(lsa_EnumAccounts, &r);
if (!test_LookupSids(p, mem_ctx, handle, &sids1)) {
return False;
@@ -386,7 +372,7 @@ static BOOL test_EnumAccounts(struct dcerpc_pipe *p,
return False;
}
- NDR_PRINT_DEBUG(lsa_SidArray, r.out.sids);
+ NDR_PRINT_BOTH_DEBUG(lsa_EnumAccounts, &r);
if (sids2.num_sids != 1) {
printf("Returned wrong number of entries (%d)\n", sids2.num_sids);
@@ -421,9 +407,7 @@ static BOOL test_EnumPrivs(struct dcerpc_pipe *p,
return False;
}
- printf("Got %d privs resume_handle=%u\n", privs1.count, resume_handle);
-
- NDR_PRINT_DEBUG(lsa_PrivArray, r.out.privs);
+ NDR_PRINT_BOTH_DEBUG(lsa_EnumPrivs, &r);
return True;
}
@@ -452,9 +436,7 @@ static BOOL test_EnumTrustDom(struct dcerpc_pipe *p,
return False;
}
- printf("lookup gave %d domains\n", domains.count);
-
- NDR_PRINT_DEBUG(lsa_DomainList, r.out.domains);
+ NDR_PRINT_BOTH_DEBUG(lsa_EnumTrustDom, &r);
return True;
}
@@ -483,7 +465,7 @@ static BOOL test_QueryInfoPolicy(struct dcerpc_pipe *p,
continue;
}
- NDR_PRINT_UNION_DEBUG(lsa_PolicyInformation, r.in.level, r.out.info);
+ NDR_PRINT_BOTH_DEBUG(lsa_QueryInfoPolicy, &r);
}
return ret;
diff --git a/source4/torture/rpc/samr.c b/source4/torture/rpc/samr.c
index bfabd01149..60c55f01be 100644
--- a/source4/torture/rpc/samr.c
+++ b/source4/torture/rpc/samr.c
@@ -30,12 +30,16 @@ static BOOL test_Close(struct dcerpc_pipe *p, TALLOC_CTX *mem_ctx,
r.in.handle = handle;
r.out.handle = handle;
+ NDR_PRINT_IN_DEBUG(samr_Close, &r);
+
status = dcerpc_samr_Close(p, mem_ctx, &r);
if (!NT_STATUS_IS_OK(status)) {
printf("Close handle failed - %s\n", nt_errstr(status));
return False;
}
+ NDR_PRINT_OUT_DEBUG(samr_Close, &r);
+
return True;
}
@@ -63,7 +67,7 @@ static BOOL test_QueryAliasInfo(struct dcerpc_pipe *p, TALLOC_CTX *mem_ctx,
ret = False;
}
- NDR_PRINT_UNION_DEBUG(samr_AliasInfo, r.in.level, r.out.info);
+ NDR_PRINT_BOTH_DEBUG(samr_QueryAliasInfo, &r);
}
return ret;
@@ -91,7 +95,7 @@ static BOOL test_QueryGroupInfo(struct dcerpc_pipe *p, TALLOC_CTX *mem_ctx,
ret = False;
}
- NDR_PRINT_UNION_DEBUG(samr_GroupInfo, r.in.level, r.out.info);
+ NDR_PRINT_BOTH_DEBUG(samr_QueryGroupInfo, &r);
}
return ret;
@@ -120,7 +124,7 @@ static BOOL test_QueryUserInfo(struct dcerpc_pipe *p, TALLOC_CTX *mem_ctx,
ret = False;
}
- NDR_PRINT_UNION_DEBUG(samr_UserInfo, r.in.level, r.out.info);
+ NDR_PRINT_BOTH_DEBUG(samr_QueryUserInfo, &r);
}
return ret;
@@ -245,7 +249,7 @@ static BOOL test_EnumDomainUsers(struct dcerpc_pipe *p, TALLOC_CTX *mem_ctx,
return False;
}
- NDR_PRINT_DEBUG(samr_SamArray, r.out.sam);
+ NDR_PRINT_BOTH_DEBUG(samr_EnumDomainUsers, &r);
if (!r.out.sam) {
return False;
@@ -282,7 +286,7 @@ static BOOL test_EnumDomainGroups(struct dcerpc_pipe *p, TALLOC_CTX *mem_ctx,
return False;
}
- NDR_PRINT_DEBUG(samr_SamArray, r.out.sam);
+ NDR_PRINT_BOTH_DEBUG(samr_EnumDomainGroups, &r);
if (!r.out.sam) {
return False;
@@ -319,7 +323,7 @@ static BOOL test_EnumDomainAliases(struct dcerpc_pipe *p, TALLOC_CTX *mem_ctx,
return False;
}
- NDR_PRINT_DEBUG(samr_SamArray, r.out.sam);
+ NDR_PRINT_BOTH_DEBUG(samr_EnumDomainAliases, &r);
if (!r.out.sam) {
return False;
@@ -357,7 +361,7 @@ static BOOL test_QueryDomainInfo(struct dcerpc_pipe *p, TALLOC_CTX *mem_ctx,
continue;
}
- NDR_PRINT_UNION_DEBUG(samr_DomainInfo, r.in.level, r.out.info);
+ NDR_PRINT_BOTH_DEBUG(samr_QueryDomainInfo, &r);
}
return True;
@@ -424,7 +428,7 @@ static BOOL test_LookupDomain(struct dcerpc_pipe *p, TALLOC_CTX *mem_ctx,
return False;
}
- NDR_PRINT_DEBUG(dom_sid2, r.out.sid);
+ NDR_PRINT_BOTH_DEBUG(samr_LookupDomain, &r);
if (!test_OpenDomain(p, mem_ctx, handle, r.out.sid)) {
return False;
@@ -456,7 +460,7 @@ static BOOL test_EnumDomains(struct dcerpc_pipe *p, TALLOC_CTX *mem_ctx,
return False;
}
- NDR_PRINT_DEBUG(samr_SamArray, r.out.sam);
+ NDR_PRINT_BOTH_DEBUG(samr_EnumDomains, &r);
if (!r.out.sam) {
return False;
diff --git a/source4/torture/rpc/spoolss.c b/source4/torture/rpc/spoolss.c
index 895677eba3..df001e7721 100644
--- a/source4/torture/rpc/spoolss.c
+++ b/source4/torture/rpc/spoolss.c
@@ -62,7 +62,7 @@ BOOL test_GetPrinter(struct dcerpc_pipe *p, TALLOC_CTX *mem_ctx,
continue;
}
- NDR_PRINT_UNION_DEBUG(spoolss_PrinterInfo, r.in.level, r.out.info);
+ NDR_PRINT_FUNCTION_DEBUG(spoolss_GetPrinter, NDR_BOTH, &r);
}
return ret;