diff options
author | Andrew Tridgell <tridge@samba.org> | 2003-11-17 11:55:56 +0000 |
---|---|---|
committer | Andrew Tridgell <tridge@samba.org> | 2003-11-17 11:55:56 +0000 |
commit | d285c6f14f7ad7037e1a81d59da8b3c892a49884 (patch) | |
tree | 07c6ac5184aef953d5cf82b653f9f56dd6942cfd | |
parent | fb53302c8eb32603098b17bcf2fad16af66e9a60 (diff) | |
download | samba-d285c6f14f7ad7037e1a81d59da8b3c892a49884.tar.gz samba-d285c6f14f7ad7037e1a81d59da8b3c892a49884.tar.bz2 samba-d285c6f14f7ad7037e1a81d59da8b3c892a49884.zip |
* add another WERR err code
* use the top-level function argument printing to show more detail in
RPC-* tests
(This used to be commit 33bb8785625b1845750f28f2d810e7096afe9f8e)
-rw-r--r-- | source4/include/doserr.h | 1 | ||||
-rw-r--r-- | source4/libcli/util/doserr.c | 1 | ||||
-rw-r--r-- | source4/librpc/idl/spoolss.idl | 5 | ||||
-rw-r--r-- | source4/librpc/ndr/libndr.h | 12 | ||||
-rw-r--r-- | source4/librpc/ndr/ndr.c | 20 | ||||
-rw-r--r-- | source4/librpc/ndr/ndr_basic.c | 16 | ||||
-rw-r--r-- | source4/librpc/ndr/ndr_dfs.c | 193 | ||||
-rw-r--r-- | source4/librpc/ndr/ndr_echo.c | 118 | ||||
-rw-r--r-- | source4/librpc/ndr/ndr_lsa.c | 1026 | ||||
-rw-r--r-- | source4/librpc/ndr/ndr_samr.c | 1372 | ||||
-rw-r--r-- | source4/librpc/ndr/ndr_spoolss.c | 1862 | ||||
-rw-r--r-- | source4/librpc/ndr/ndr_spoolss.h | 5 | ||||
-rw-r--r-- | source4/torture/rpc/dfs.c | 8 | ||||
-rw-r--r-- | source4/torture/rpc/lsa.c | 40 | ||||
-rw-r--r-- | source4/torture/rpc/samr.c | 22 | ||||
-rw-r--r-- | source4/torture/rpc/spoolss.c | 2 |
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; |