summaryrefslogtreecommitdiff
path: root/source3/librpc
diff options
context:
space:
mode:
Diffstat (limited to 'source3/librpc')
-rw-r--r--source3/librpc/gen_ndr/cli_wkssvc.c319
-rw-r--r--source3/librpc/gen_ndr/cli_wkssvc.h50
-rw-r--r--source3/librpc/gen_ndr/ndr_wkssvc.c6854
-rw-r--r--source3/librpc/gen_ndr/ndr_wkssvc.h99
-rw-r--r--source3/librpc/gen_ndr/srv_wkssvc.c396
-rw-r--r--source3/librpc/gen_ndr/srv_wkssvc.h44
-rw-r--r--source3/librpc/gen_ndr/wkssvc.h581
-rw-r--r--source3/librpc/idl/wkssvc.idl543
8 files changed, 7851 insertions, 1035 deletions
diff --git a/source3/librpc/gen_ndr/cli_wkssvc.c b/source3/librpc/gen_ndr/cli_wkssvc.c
index 16b11277a2..8c58b6dbee 100644
--- a/source3/librpc/gen_ndr/cli_wkssvc.c
+++ b/source3/librpc/gen_ndr/cli_wkssvc.c
@@ -72,17 +72,16 @@ NTSTATUS rpccli_wkssvc_NetWkstaSetInfo(struct rpc_pipe_client *cli, TALLOC_CTX *
return werror_to_ntstatus(r.out.result);
}
-NTSTATUS rpccli_wkssvc_NetWkstaEnumUsers(struct rpc_pipe_client *cli, TALLOC_CTX *mem_ctx, const char *server_name, uint32_t level, union WKS_USER_ENUM_UNION *users, uint32_t prefmaxlen, uint32_t *entriesread, uint32_t *totalentries, uint32_t *resumehandle)
+NTSTATUS rpccli_wkssvc_NetWkstaEnumUsers(struct rpc_pipe_client *cli, TALLOC_CTX *mem_ctx, const char *server_name, struct wkssvc_NetWkstaEnumUsersInfo *info, uint32_t prefmaxlen, uint32_t *entries_read, uint32_t *resume_handle)
{
struct wkssvc_NetWkstaEnumUsers r;
NTSTATUS status;
/* In parameters */
r.in.server_name = server_name;
- r.in.level = level;
- r.in.users = users;
+ r.in.info = info;
r.in.prefmaxlen = prefmaxlen;
- r.in.resumehandle = resumehandle;
+ r.in.resume_handle = resume_handle;
if (DEBUGLEVEL >= 10)
NDR_PRINT_IN_DEBUG(wkssvc_NetWkstaEnumUsers, &r);
@@ -101,28 +100,27 @@ NTSTATUS rpccli_wkssvc_NetWkstaEnumUsers(struct rpc_pipe_client *cli, TALLOC_CTX
}
/* Return variables */
- *users = *r.out.users;
- if (entriesread && r.out.entriesread) {
- *entriesread = *r.out.entriesread;
- }
- if (totalentries && r.out.totalentries) {
- *totalentries = *r.out.totalentries;
+ *info = *r.out.info;
+ *entries_read = *r.out.entries_read;
+ if (resume_handle && r.out.resume_handle) {
+ *resume_handle = *r.out.resume_handle;
}
- *resumehandle = *r.out.resumehandle;
/* Return result */
return werror_to_ntstatus(r.out.result);
}
-NTSTATUS rpccli_WKSSVC_NETRWKSTAUSERGETINFO(struct rpc_pipe_client *cli, TALLOC_CTX *mem_ctx)
+NTSTATUS rpccli_wkssvc_NetrWkstaUserGetInfo(struct rpc_pipe_client *cli, TALLOC_CTX *mem_ctx, const char *unknown, uint32_t level, union wkssvc_NetrWkstaUserInfo *info)
{
- struct WKSSVC_NETRWKSTAUSERGETINFO r;
+ struct wkssvc_NetrWkstaUserGetInfo r;
NTSTATUS status;
/* In parameters */
+ r.in.unknown = unknown;
+ r.in.level = level;
if (DEBUGLEVEL >= 10)
- NDR_PRINT_IN_DEBUG(WKSSVC_NETRWKSTAUSERGETINFO, &r);
+ NDR_PRINT_IN_DEBUG(wkssvc_NetrWkstaUserGetInfo, &r);
status = cli_do_rpc_ndr(cli, mem_ctx, PI_WKSSVC, &ndr_table_wkssvc, NDR_WKSSVC_NETRWKSTAUSERGETINFO, &r);
@@ -131,27 +129,32 @@ NTSTATUS rpccli_WKSSVC_NETRWKSTAUSERGETINFO(struct rpc_pipe_client *cli, TALLOC_
}
if (DEBUGLEVEL >= 10)
- NDR_PRINT_OUT_DEBUG(WKSSVC_NETRWKSTAUSERGETINFO, &r);
+ NDR_PRINT_OUT_DEBUG(wkssvc_NetrWkstaUserGetInfo, &r);
if (NT_STATUS_IS_ERR(status)) {
return status;
}
/* Return variables */
+ *info = *r.out.info;
/* Return result */
return werror_to_ntstatus(r.out.result);
}
-NTSTATUS rpccli_WKSSVC_NETRWKSTAUSERSETINFO(struct rpc_pipe_client *cli, TALLOC_CTX *mem_ctx)
+NTSTATUS rpccli_wkssvc_NetrWkstaUserSetInfo(struct rpc_pipe_client *cli, TALLOC_CTX *mem_ctx, const char *unknown, uint32_t level, union wkssvc_NetrWkstaUserInfo *info, uint32_t *parm_err)
{
- struct WKSSVC_NETRWKSTAUSERSETINFO r;
+ struct wkssvc_NetrWkstaUserSetInfo r;
NTSTATUS status;
/* In parameters */
+ r.in.unknown = unknown;
+ r.in.level = level;
+ r.in.info = info;
+ r.in.parm_err = parm_err;
if (DEBUGLEVEL >= 10)
- NDR_PRINT_IN_DEBUG(WKSSVC_NETRWKSTAUSERSETINFO, &r);
+ NDR_PRINT_IN_DEBUG(wkssvc_NetrWkstaUserSetInfo, &r);
status = cli_do_rpc_ndr(cli, mem_ctx, PI_WKSSVC, &ndr_table_wkssvc, NDR_WKSSVC_NETRWKSTAUSERSETINFO, &r);
@@ -160,27 +163,29 @@ NTSTATUS rpccli_WKSSVC_NETRWKSTAUSERSETINFO(struct rpc_pipe_client *cli, TALLOC_
}
if (DEBUGLEVEL >= 10)
- NDR_PRINT_OUT_DEBUG(WKSSVC_NETRWKSTAUSERSETINFO, &r);
+ NDR_PRINT_OUT_DEBUG(wkssvc_NetrWkstaUserSetInfo, &r);
if (NT_STATUS_IS_ERR(status)) {
return status;
}
/* Return variables */
+ if (parm_err && r.out.parm_err) {
+ *parm_err = *r.out.parm_err;
+ }
/* Return result */
return werror_to_ntstatus(r.out.result);
}
-NTSTATUS rpccli_wkssvc_NetWkstaTransportEnum(struct rpc_pipe_client *cli, TALLOC_CTX *mem_ctx, const char *server_name, uint32_t *level, union wkssvc_NetWkstaTransportCtr *ctr, uint32_t max_buffer, uint32_t *totalentries, uint32_t *resume_handle)
+NTSTATUS rpccli_wkssvc_NetWkstaTransportEnum(struct rpc_pipe_client *cli, TALLOC_CTX *mem_ctx, const char *server_name, struct wkssvc_NetWkstaTransportInfo *info, uint32_t max_buffer, uint32_t *total_entries, uint32_t *resume_handle)
{
struct wkssvc_NetWkstaTransportEnum r;
NTSTATUS status;
/* In parameters */
r.in.server_name = server_name;
- r.in.level = level;
- r.in.ctr = ctr;
+ r.in.info = info;
r.in.max_buffer = max_buffer;
r.in.resume_handle = resume_handle;
@@ -201,26 +206,29 @@ NTSTATUS rpccli_wkssvc_NetWkstaTransportEnum(struct rpc_pipe_client *cli, TALLOC
}
/* Return variables */
- *level = *r.out.level;
- *ctr = *r.out.ctr;
- if (totalentries && r.out.totalentries) {
- *totalentries = *r.out.totalentries;
+ *info = *r.out.info;
+ *total_entries = *r.out.total_entries;
+ if (resume_handle && r.out.resume_handle) {
+ *resume_handle = *r.out.resume_handle;
}
- *resume_handle = *r.out.resume_handle;
/* Return result */
return werror_to_ntstatus(r.out.result);
}
-NTSTATUS rpccli_WKSSVC_NETRWKSTATRANSPORTADD(struct rpc_pipe_client *cli, TALLOC_CTX *mem_ctx)
+NTSTATUS rpccli_wkssvc_NetrWkstaTransportAdd(struct rpc_pipe_client *cli, TALLOC_CTX *mem_ctx, const char *server_name, uint32_t level, struct wkssvc_NetWkstaTransportInfo0 *info0, uint32_t *parm_err)
{
- struct WKSSVC_NETRWKSTATRANSPORTADD r;
+ struct wkssvc_NetrWkstaTransportAdd r;
NTSTATUS status;
/* In parameters */
+ r.in.server_name = server_name;
+ r.in.level = level;
+ r.in.info0 = info0;
+ r.in.parm_err = parm_err;
if (DEBUGLEVEL >= 10)
- NDR_PRINT_IN_DEBUG(WKSSVC_NETRWKSTATRANSPORTADD, &r);
+ NDR_PRINT_IN_DEBUG(wkssvc_NetrWkstaTransportAdd, &r);
status = cli_do_rpc_ndr(cli, mem_ctx, PI_WKSSVC, &ndr_table_wkssvc, NDR_WKSSVC_NETRWKSTATRANSPORTADD, &r);
@@ -229,27 +237,33 @@ NTSTATUS rpccli_WKSSVC_NETRWKSTATRANSPORTADD(struct rpc_pipe_client *cli, TALLOC
}
if (DEBUGLEVEL >= 10)
- NDR_PRINT_OUT_DEBUG(WKSSVC_NETRWKSTATRANSPORTADD, &r);
+ NDR_PRINT_OUT_DEBUG(wkssvc_NetrWkstaTransportAdd, &r);
if (NT_STATUS_IS_ERR(status)) {
return status;
}
/* Return variables */
+ if (parm_err && r.out.parm_err) {
+ *parm_err = *r.out.parm_err;
+ }
/* Return result */
return werror_to_ntstatus(r.out.result);
}
-NTSTATUS rpccli_WKSSVC_NETRWKSTATRANSPORTDEL(struct rpc_pipe_client *cli, TALLOC_CTX *mem_ctx)
+NTSTATUS rpccli_wkssvc_NetrWkstaTransportDel(struct rpc_pipe_client *cli, TALLOC_CTX *mem_ctx, const char *server_name, const char *transport_name, uint32_t unknown3)
{
- struct WKSSVC_NETRWKSTATRANSPORTDEL r;
+ struct wkssvc_NetrWkstaTransportDel r;
NTSTATUS status;
/* In parameters */
+ r.in.server_name = server_name;
+ r.in.transport_name = transport_name;
+ r.in.unknown3 = unknown3;
if (DEBUGLEVEL >= 10)
- NDR_PRINT_IN_DEBUG(WKSSVC_NETRWKSTATRANSPORTDEL, &r);
+ NDR_PRINT_IN_DEBUG(wkssvc_NetrWkstaTransportDel, &r);
status = cli_do_rpc_ndr(cli, mem_ctx, PI_WKSSVC, &ndr_table_wkssvc, NDR_WKSSVC_NETRWKSTATRANSPORTDEL, &r);
@@ -258,7 +272,7 @@ NTSTATUS rpccli_WKSSVC_NETRWKSTATRANSPORTDEL(struct rpc_pipe_client *cli, TALLOC
}
if (DEBUGLEVEL >= 10)
- NDR_PRINT_OUT_DEBUG(WKSSVC_NETRWKSTATRANSPORTDEL, &r);
+ NDR_PRINT_OUT_DEBUG(wkssvc_NetrWkstaTransportDel, &r);
if (NT_STATUS_IS_ERR(status)) {
return status;
@@ -270,15 +284,19 @@ NTSTATUS rpccli_WKSSVC_NETRWKSTATRANSPORTDEL(struct rpc_pipe_client *cli, TALLOC
return werror_to_ntstatus(r.out.result);
}
-NTSTATUS rpccli_WKSSVC_NETRUSEADD(struct rpc_pipe_client *cli, TALLOC_CTX *mem_ctx)
+NTSTATUS rpccli_wkssvc_NetrUseAdd(struct rpc_pipe_client *cli, TALLOC_CTX *mem_ctx, const char *server_name, uint32_t level, union wkssvc_NetrUseGetInfoCtr *ctr, uint32_t *parm_err)
{
- struct WKSSVC_NETRUSEADD r;
+ struct wkssvc_NetrUseAdd r;
NTSTATUS status;
/* In parameters */
+ r.in.server_name = server_name;
+ r.in.level = level;
+ r.in.ctr = ctr;
+ r.in.parm_err = parm_err;
if (DEBUGLEVEL >= 10)
- NDR_PRINT_IN_DEBUG(WKSSVC_NETRUSEADD, &r);
+ NDR_PRINT_IN_DEBUG(wkssvc_NetrUseAdd, &r);
status = cli_do_rpc_ndr(cli, mem_ctx, PI_WKSSVC, &ndr_table_wkssvc, NDR_WKSSVC_NETRUSEADD, &r);
@@ -287,27 +305,33 @@ NTSTATUS rpccli_WKSSVC_NETRUSEADD(struct rpc_pipe_client *cli, TALLOC_CTX *mem_c
}
if (DEBUGLEVEL >= 10)
- NDR_PRINT_OUT_DEBUG(WKSSVC_NETRUSEADD, &r);
+ NDR_PRINT_OUT_DEBUG(wkssvc_NetrUseAdd, &r);
if (NT_STATUS_IS_ERR(status)) {
return status;
}
/* Return variables */
+ if (parm_err && r.out.parm_err) {
+ *parm_err = *r.out.parm_err;
+ }
/* Return result */
return werror_to_ntstatus(r.out.result);
}
-NTSTATUS rpccli_WKSSVC_NETRUSEGETINFO(struct rpc_pipe_client *cli, TALLOC_CTX *mem_ctx)
+NTSTATUS rpccli_wkssvc_NetrUseGetInfo(struct rpc_pipe_client *cli, TALLOC_CTX *mem_ctx, const char *server_name, const char *use_name, uint32_t level, union wkssvc_NetrUseGetInfoCtr *ctr)
{
- struct WKSSVC_NETRUSEGETINFO r;
+ struct wkssvc_NetrUseGetInfo r;
NTSTATUS status;
/* In parameters */
+ r.in.server_name = server_name;
+ r.in.use_name = use_name;
+ r.in.level = level;
if (DEBUGLEVEL >= 10)
- NDR_PRINT_IN_DEBUG(WKSSVC_NETRUSEGETINFO, &r);
+ NDR_PRINT_IN_DEBUG(wkssvc_NetrUseGetInfo, &r);
status = cli_do_rpc_ndr(cli, mem_ctx, PI_WKSSVC, &ndr_table_wkssvc, NDR_WKSSVC_NETRUSEGETINFO, &r);
@@ -316,27 +340,31 @@ NTSTATUS rpccli_WKSSVC_NETRUSEGETINFO(struct rpc_pipe_client *cli, TALLOC_CTX *m
}
if (DEBUGLEVEL >= 10)
- NDR_PRINT_OUT_DEBUG(WKSSVC_NETRUSEGETINFO, &r);
+ NDR_PRINT_OUT_DEBUG(wkssvc_NetrUseGetInfo, &r);
if (NT_STATUS_IS_ERR(status)) {
return status;
}
/* Return variables */
+ *ctr = *r.out.ctr;
/* Return result */
return werror_to_ntstatus(r.out.result);
}
-NTSTATUS rpccli_WKSSVC_NETRUSEDEL(struct rpc_pipe_client *cli, TALLOC_CTX *mem_ctx)
+NTSTATUS rpccli_wkssvc_NetrUseDel(struct rpc_pipe_client *cli, TALLOC_CTX *mem_ctx, const char *server_name, const char *use_name, uint32_t force_cond)
{
- struct WKSSVC_NETRUSEDEL r;
+ struct wkssvc_NetrUseDel r;
NTSTATUS status;
/* In parameters */
+ r.in.server_name = server_name;
+ r.in.use_name = use_name;
+ r.in.force_cond = force_cond;
if (DEBUGLEVEL >= 10)
- NDR_PRINT_IN_DEBUG(WKSSVC_NETRUSEDEL, &r);
+ NDR_PRINT_IN_DEBUG(wkssvc_NetrUseDel, &r);
status = cli_do_rpc_ndr(cli, mem_ctx, PI_WKSSVC, &ndr_table_wkssvc, NDR_WKSSVC_NETRUSEDEL, &r);
@@ -345,7 +373,7 @@ NTSTATUS rpccli_WKSSVC_NETRUSEDEL(struct rpc_pipe_client *cli, TALLOC_CTX *mem_c
}
if (DEBUGLEVEL >= 10)
- NDR_PRINT_OUT_DEBUG(WKSSVC_NETRUSEDEL, &r);
+ NDR_PRINT_OUT_DEBUG(wkssvc_NetrUseDel, &r);
if (NT_STATUS_IS_ERR(status)) {
return status;
@@ -357,15 +385,19 @@ NTSTATUS rpccli_WKSSVC_NETRUSEDEL(struct rpc_pipe_client *cli, TALLOC_CTX *mem_c
return werror_to_ntstatus(r.out.result);
}
-NTSTATUS rpccli_WKSSVC_NETRUSEENUM(struct rpc_pipe_client *cli, TALLOC_CTX *mem_ctx)
+NTSTATUS rpccli_wkssvc_NetrUseEnum(struct rpc_pipe_client *cli, TALLOC_CTX *mem_ctx, const char *server_name, struct wkssvc_NetrUseEnumInfo *info, uint32_t prefmaxlen, uint32_t *entries_read, uint32_t *resume_handle)
{
- struct WKSSVC_NETRUSEENUM r;
+ struct wkssvc_NetrUseEnum r;
NTSTATUS status;
/* In parameters */
+ r.in.server_name = server_name;
+ r.in.info = info;
+ r.in.prefmaxlen = prefmaxlen;
+ r.in.resume_handle = resume_handle;
if (DEBUGLEVEL >= 10)
- NDR_PRINT_IN_DEBUG(WKSSVC_NETRUSEENUM, &r);
+ NDR_PRINT_IN_DEBUG(wkssvc_NetrUseEnum, &r);
status = cli_do_rpc_ndr(cli, mem_ctx, PI_WKSSVC, &ndr_table_wkssvc, NDR_WKSSVC_NETRUSEENUM, &r);
@@ -374,27 +406,37 @@ NTSTATUS rpccli_WKSSVC_NETRUSEENUM(struct rpc_pipe_client *cli, TALLOC_CTX *mem_
}
if (DEBUGLEVEL >= 10)
- NDR_PRINT_OUT_DEBUG(WKSSVC_NETRUSEENUM, &r);
+ NDR_PRINT_OUT_DEBUG(wkssvc_NetrUseEnum, &r);
if (NT_STATUS_IS_ERR(status)) {
return status;
}
/* Return variables */
+ *info = *r.out.info;
+ *entries_read = *r.out.entries_read;
+ if (resume_handle && r.out.resume_handle) {
+ *resume_handle = *r.out.resume_handle;
+ }
/* Return result */
return werror_to_ntstatus(r.out.result);
}
-NTSTATUS rpccli_WKSSVC_NETRMESSAGEBUFFERSEND(struct rpc_pipe_client *cli, TALLOC_CTX *mem_ctx)
+NTSTATUS rpccli_wkssvc_NetrMessageBufferSend(struct rpc_pipe_client *cli, TALLOC_CTX *mem_ctx, const char *server_name, const char *message_name, const char *message_sender_name, uint8_t *message_buffer, uint32_t message_size)
{
- struct WKSSVC_NETRMESSAGEBUFFERSEND r;
+ struct wkssvc_NetrMessageBufferSend r;
NTSTATUS status;
/* In parameters */
+ r.in.server_name = server_name;
+ r.in.message_name = message_name;
+ r.in.message_sender_name = message_sender_name;
+ r.in.message_buffer = message_buffer;
+ r.in.message_size = message_size;
if (DEBUGLEVEL >= 10)
- NDR_PRINT_IN_DEBUG(WKSSVC_NETRMESSAGEBUFFERSEND, &r);
+ NDR_PRINT_IN_DEBUG(wkssvc_NetrMessageBufferSend, &r);
status = cli_do_rpc_ndr(cli, mem_ctx, PI_WKSSVC, &ndr_table_wkssvc, NDR_WKSSVC_NETRMESSAGEBUFFERSEND, &r);
@@ -403,7 +445,7 @@ NTSTATUS rpccli_WKSSVC_NETRMESSAGEBUFFERSEND(struct rpc_pipe_client *cli, TALLOC
}
if (DEBUGLEVEL >= 10)
- NDR_PRINT_OUT_DEBUG(WKSSVC_NETRMESSAGEBUFFERSEND, &r);
+ NDR_PRINT_OUT_DEBUG(wkssvc_NetrMessageBufferSend, &r);
if (NT_STATUS_IS_ERR(status)) {
return status;
@@ -415,15 +457,19 @@ NTSTATUS rpccli_WKSSVC_NETRMESSAGEBUFFERSEND(struct rpc_pipe_client *cli, TALLOC
return werror_to_ntstatus(r.out.result);
}
-NTSTATUS rpccli_WKSSVC_NETRWORKSTATIONSTATISTICSGET(struct rpc_pipe_client *cli, TALLOC_CTX *mem_ctx)
+NTSTATUS rpccli_wkssvc_NetrWorkstationStatisticsGet(struct rpc_pipe_client *cli, TALLOC_CTX *mem_ctx, const char *server_name, const char *unknown2, uint32_t unknown3, uint32_t unknown4, struct wkssvc_NetrWorkstationStatistics **info)
{
- struct WKSSVC_NETRWORKSTATIONSTATISTICSGET r;
+ struct wkssvc_NetrWorkstationStatisticsGet r;
NTSTATUS status;
/* In parameters */
+ r.in.server_name = server_name;
+ r.in.unknown2 = unknown2;
+ r.in.unknown3 = unknown3;
+ r.in.unknown4 = unknown4;
if (DEBUGLEVEL >= 10)
- NDR_PRINT_IN_DEBUG(WKSSVC_NETRWORKSTATIONSTATISTICSGET, &r);
+ NDR_PRINT_IN_DEBUG(wkssvc_NetrWorkstationStatisticsGet, &r);
status = cli_do_rpc_ndr(cli, mem_ctx, PI_WKSSVC, &ndr_table_wkssvc, NDR_WKSSVC_NETRWORKSTATIONSTATISTICSGET, &r);
@@ -432,27 +478,29 @@ NTSTATUS rpccli_WKSSVC_NETRWORKSTATIONSTATISTICSGET(struct rpc_pipe_client *cli,
}
if (DEBUGLEVEL >= 10)
- NDR_PRINT_OUT_DEBUG(WKSSVC_NETRWORKSTATIONSTATISTICSGET, &r);
+ NDR_PRINT_OUT_DEBUG(wkssvc_NetrWorkstationStatisticsGet, &r);
if (NT_STATUS_IS_ERR(status)) {
return status;
}
/* Return variables */
+ *info = *r.out.info;
/* Return result */
return werror_to_ntstatus(r.out.result);
}
-NTSTATUS rpccli_WKSSVC_NETRLOGONDOMAINNAMEADD(struct rpc_pipe_client *cli, TALLOC_CTX *mem_ctx)
+NTSTATUS rpccli_wkssvc_NetrLogonDomainNameAdd(struct rpc_pipe_client *cli, TALLOC_CTX *mem_ctx, const char *domain_name)
{
- struct WKSSVC_NETRLOGONDOMAINNAMEADD r;
+ struct wkssvc_NetrLogonDomainNameAdd r;
NTSTATUS status;
/* In parameters */
+ r.in.domain_name = domain_name;
if (DEBUGLEVEL >= 10)
- NDR_PRINT_IN_DEBUG(WKSSVC_NETRLOGONDOMAINNAMEADD, &r);
+ NDR_PRINT_IN_DEBUG(wkssvc_NetrLogonDomainNameAdd, &r);
status = cli_do_rpc_ndr(cli, mem_ctx, PI_WKSSVC, &ndr_table_wkssvc, NDR_WKSSVC_NETRLOGONDOMAINNAMEADD, &r);
@@ -461,7 +509,7 @@ NTSTATUS rpccli_WKSSVC_NETRLOGONDOMAINNAMEADD(struct rpc_pipe_client *cli, TALLO
}
if (DEBUGLEVEL >= 10)
- NDR_PRINT_OUT_DEBUG(WKSSVC_NETRLOGONDOMAINNAMEADD, &r);
+ NDR_PRINT_OUT_DEBUG(wkssvc_NetrLogonDomainNameAdd, &r);
if (NT_STATUS_IS_ERR(status)) {
return status;
@@ -473,15 +521,16 @@ NTSTATUS rpccli_WKSSVC_NETRLOGONDOMAINNAMEADD(struct rpc_pipe_client *cli, TALLO
return werror_to_ntstatus(r.out.result);
}
-NTSTATUS rpccli_WKSSVC_NETRLOGONDOMAINNAMEDEL(struct rpc_pipe_client *cli, TALLOC_CTX *mem_ctx)
+NTSTATUS rpccli_wkssvc_NetrLogonDomainNameDel(struct rpc_pipe_client *cli, TALLOC_CTX *mem_ctx, const char *domain_name)
{
- struct WKSSVC_NETRLOGONDOMAINNAMEDEL r;
+ struct wkssvc_NetrLogonDomainNameDel r;
NTSTATUS status;
/* In parameters */
+ r.in.domain_name = domain_name;
if (DEBUGLEVEL >= 10)
- NDR_PRINT_IN_DEBUG(WKSSVC_NETRLOGONDOMAINNAMEDEL, &r);
+ NDR_PRINT_IN_DEBUG(wkssvc_NetrLogonDomainNameDel, &r);
status = cli_do_rpc_ndr(cli, mem_ctx, PI_WKSSVC, &ndr_table_wkssvc, NDR_WKSSVC_NETRLOGONDOMAINNAMEDEL, &r);
@@ -490,7 +539,7 @@ NTSTATUS rpccli_WKSSVC_NETRLOGONDOMAINNAMEDEL(struct rpc_pipe_client *cli, TALLO
}
if (DEBUGLEVEL >= 10)
- NDR_PRINT_OUT_DEBUG(WKSSVC_NETRLOGONDOMAINNAMEDEL, &r);
+ NDR_PRINT_OUT_DEBUG(wkssvc_NetrLogonDomainNameDel, &r);
if (NT_STATUS_IS_ERR(status)) {
return status;
@@ -502,15 +551,21 @@ NTSTATUS rpccli_WKSSVC_NETRLOGONDOMAINNAMEDEL(struct rpc_pipe_client *cli, TALLO
return werror_to_ntstatus(r.out.result);
}
-NTSTATUS rpccli_WKSSVC_NETRJOINDOMAIN(struct rpc_pipe_client *cli, TALLOC_CTX *mem_ctx)
+NTSTATUS rpccli_wkssvc_NetrJoinDomain(struct rpc_pipe_client *cli, TALLOC_CTX *mem_ctx, const char *server_name, const char *domain_name, const char *account_ou, const char *Account, const char *password, uint32_t join_flags)
{
- struct WKSSVC_NETRJOINDOMAIN r;
+ struct wkssvc_NetrJoinDomain r;
NTSTATUS status;
/* In parameters */
+ r.in.server_name = server_name;
+ r.in.domain_name = domain_name;
+ r.in.account_ou = account_ou;
+ r.in.Account = Account;
+ r.in.password = password;
+ r.in.join_flags = join_flags;
if (DEBUGLEVEL >= 10)
- NDR_PRINT_IN_DEBUG(WKSSVC_NETRJOINDOMAIN, &r);
+ NDR_PRINT_IN_DEBUG(wkssvc_NetrJoinDomain, &r);
status = cli_do_rpc_ndr(cli, mem_ctx, PI_WKSSVC, &ndr_table_wkssvc, NDR_WKSSVC_NETRJOINDOMAIN, &r);
@@ -519,7 +574,7 @@ NTSTATUS rpccli_WKSSVC_NETRJOINDOMAIN(struct rpc_pipe_client *cli, TALLOC_CTX *m
}
if (DEBUGLEVEL >= 10)
- NDR_PRINT_OUT_DEBUG(WKSSVC_NETRJOINDOMAIN, &r);
+ NDR_PRINT_OUT_DEBUG(wkssvc_NetrJoinDomain, &r);
if (NT_STATUS_IS_ERR(status)) {
return status;
@@ -531,15 +586,19 @@ NTSTATUS rpccli_WKSSVC_NETRJOINDOMAIN(struct rpc_pipe_client *cli, TALLOC_CTX *m
return werror_to_ntstatus(r.out.result);
}
-NTSTATUS rpccli_WKSSVC_NETRUNJOINDOMAIN(struct rpc_pipe_client *cli, TALLOC_CTX *mem_ctx)
+NTSTATUS rpccli_wkssvc_NetrUnjoinDomain(struct rpc_pipe_client *cli, TALLOC_CTX *mem_ctx, const char *server_name, const char *Account, const char *password, uint32_t unjoin_flags)
{
- struct WKSSVC_NETRUNJOINDOMAIN r;
+ struct wkssvc_NetrUnjoinDomain r;
NTSTATUS status;
/* In parameters */
+ r.in.server_name = server_name;
+ r.in.Account = Account;
+ r.in.password = password;
+ r.in.unjoin_flags = unjoin_flags;
if (DEBUGLEVEL >= 10)
- NDR_PRINT_IN_DEBUG(WKSSVC_NETRUNJOINDOMAIN, &r);
+ NDR_PRINT_IN_DEBUG(wkssvc_NetrUnjoinDomain, &r);
status = cli_do_rpc_ndr(cli, mem_ctx, PI_WKSSVC, &ndr_table_wkssvc, NDR_WKSSVC_NETRUNJOINDOMAIN, &r);
@@ -548,7 +607,7 @@ NTSTATUS rpccli_WKSSVC_NETRUNJOINDOMAIN(struct rpc_pipe_client *cli, TALLOC_CTX
}
if (DEBUGLEVEL >= 10)
- NDR_PRINT_OUT_DEBUG(WKSSVC_NETRUNJOINDOMAIN, &r);
+ NDR_PRINT_OUT_DEBUG(wkssvc_NetrUnjoinDomain, &r);
if (NT_STATUS_IS_ERR(status)) {
return status;
@@ -560,15 +619,20 @@ NTSTATUS rpccli_WKSSVC_NETRUNJOINDOMAIN(struct rpc_pipe_client *cli, TALLOC_CTX
return werror_to_ntstatus(r.out.result);
}
-NTSTATUS rpccli_WKSSVC_NETRRENAMEMACHINEINDOMAIN(struct rpc_pipe_client *cli, TALLOC_CTX *mem_ctx)
+NTSTATUS rpccli_wkssvc_NetrRenameMachineInDomain(struct rpc_pipe_client *cli, TALLOC_CTX *mem_ctx, const char *server_name, const char *NewMachineName, const char *Account, const char *password, uint32_t RenameOptions)
{
- struct WKSSVC_NETRRENAMEMACHINEINDOMAIN r;
+ struct wkssvc_NetrRenameMachineInDomain r;
NTSTATUS status;
/* In parameters */
+ r.in.server_name = server_name;
+ r.in.NewMachineName = NewMachineName;
+ r.in.Account = Account;
+ r.in.password = password;
+ r.in.RenameOptions = RenameOptions;
if (DEBUGLEVEL >= 10)
- NDR_PRINT_IN_DEBUG(WKSSVC_NETRRENAMEMACHINEINDOMAIN, &r);
+ NDR_PRINT_IN_DEBUG(wkssvc_NetrRenameMachineInDomain, &r);
status = cli_do_rpc_ndr(cli, mem_ctx, PI_WKSSVC, &ndr_table_wkssvc, NDR_WKSSVC_NETRRENAMEMACHINEINDOMAIN, &r);
@@ -577,7 +641,7 @@ NTSTATUS rpccli_WKSSVC_NETRRENAMEMACHINEINDOMAIN(struct rpc_pipe_client *cli, TA
}
if (DEBUGLEVEL >= 10)
- NDR_PRINT_OUT_DEBUG(WKSSVC_NETRRENAMEMACHINEINDOMAIN, &r);
+ NDR_PRINT_OUT_DEBUG(wkssvc_NetrRenameMachineInDomain, &r);
if (NT_STATUS_IS_ERR(status)) {
return status;
@@ -589,15 +653,20 @@ NTSTATUS rpccli_WKSSVC_NETRRENAMEMACHINEINDOMAIN(struct rpc_pipe_client *cli, TA
return werror_to_ntstatus(r.out.result);
}
-NTSTATUS rpccli_WKSSVC_NETRVALIDATENAME(struct rpc_pipe_client *cli, TALLOC_CTX *mem_ctx)
+NTSTATUS rpccli_wkssvc_NetrValidateName(struct rpc_pipe_client *cli, TALLOC_CTX *mem_ctx, const char *server_name, const char *name, const char *Account, const char *Password, enum wkssvc_NetValidateNameType name_type)
{
- struct WKSSVC_NETRVALIDATENAME r;
+ struct wkssvc_NetrValidateName r;
NTSTATUS status;
/* In parameters */
+ r.in.server_name = server_name;
+ r.in.name = name;
+ r.in.Account = Account;
+ r.in.Password = Password;
+ r.in.name_type = name_type;
if (DEBUGLEVEL >= 10)
- NDR_PRINT_IN_DEBUG(WKSSVC_NETRVALIDATENAME, &r);
+ NDR_PRINT_IN_DEBUG(wkssvc_NetrValidateName, &r);
status = cli_do_rpc_ndr(cli, mem_ctx, PI_WKSSVC, &ndr_table_wkssvc, NDR_WKSSVC_NETRVALIDATENAME, &r);
@@ -606,7 +675,7 @@ NTSTATUS rpccli_WKSSVC_NETRVALIDATENAME(struct rpc_pipe_client *cli, TALLOC_CTX
}
if (DEBUGLEVEL >= 10)
- NDR_PRINT_OUT_DEBUG(WKSSVC_NETRVALIDATENAME, &r);
+ NDR_PRINT_OUT_DEBUG(wkssvc_NetrValidateName, &r);
if (NT_STATUS_IS_ERR(status)) {
return status;
@@ -618,15 +687,17 @@ NTSTATUS rpccli_WKSSVC_NETRVALIDATENAME(struct rpc_pipe_client *cli, TALLOC_CTX
return werror_to_ntstatus(r.out.result);
}
-NTSTATUS rpccli_WKSSVC_NETRGETJOININFORMATION(struct rpc_pipe_client *cli, TALLOC_CTX *mem_ctx)
+NTSTATUS rpccli_wkssvc_NetrGetJoinInformation(struct rpc_pipe_client *cli, TALLOC_CTX *mem_ctx, const char *server_name, const char **name_buffer, enum wkssvc_NetJoinStatus *name_type)
{
- struct WKSSVC_NETRGETJOININFORMATION r;
+ struct wkssvc_NetrGetJoinInformation r;
NTSTATUS status;
/* In parameters */
+ r.in.server_name = server_name;
+ r.in.name_buffer = name_buffer;
if (DEBUGLEVEL >= 10)
- NDR_PRINT_IN_DEBUG(WKSSVC_NETRGETJOININFORMATION, &r);
+ NDR_PRINT_IN_DEBUG(wkssvc_NetrGetJoinInformation, &r);
status = cli_do_rpc_ndr(cli, mem_ctx, PI_WKSSVC, &ndr_table_wkssvc, NDR_WKSSVC_NETRGETJOININFORMATION, &r);
@@ -635,27 +706,34 @@ NTSTATUS rpccli_WKSSVC_NETRGETJOININFORMATION(struct rpc_pipe_client *cli, TALLO
}
if (DEBUGLEVEL >= 10)
- NDR_PRINT_OUT_DEBUG(WKSSVC_NETRGETJOININFORMATION, &r);
+ NDR_PRINT_OUT_DEBUG(wkssvc_NetrGetJoinInformation, &r);
if (NT_STATUS_IS_ERR(status)) {
return status;
}
/* Return variables */
+ *name_buffer = *r.out.name_buffer;
+ *name_type = *r.out.name_type;
/* Return result */
return werror_to_ntstatus(r.out.result);
}
-NTSTATUS rpccli_WKSSVC_NETRGETJOINABLEOUS(struct rpc_pipe_client *cli, TALLOC_CTX *mem_ctx)
+NTSTATUS rpccli_wkssvc_NetrGetJoinableOus(struct rpc_pipe_client *cli, TALLOC_CTX *mem_ctx, const char *server_name, const char *domain_name, const char *Account, const char *unknown, uint32_t *num_ous, const char ***ous)
{
- struct WKSSVC_NETRGETJOINABLEOUS r;
+ struct wkssvc_NetrGetJoinableOus r;
NTSTATUS status;
/* In parameters */
+ r.in.server_name = server_name;
+ r.in.domain_name = domain_name;
+ r.in.Account = Account;
+ r.in.unknown = unknown;
+ r.in.num_ous = num_ous;
if (DEBUGLEVEL >= 10)
- NDR_PRINT_IN_DEBUG(WKSSVC_NETRGETJOINABLEOUS, &r);
+ NDR_PRINT_IN_DEBUG(wkssvc_NetrGetJoinableOus, &r);
status = cli_do_rpc_ndr(cli, mem_ctx, PI_WKSSVC, &ndr_table_wkssvc, NDR_WKSSVC_NETRGETJOINABLEOUS, &r);
@@ -664,19 +742,21 @@ NTSTATUS rpccli_WKSSVC_NETRGETJOINABLEOUS(struct rpc_pipe_client *cli, TALLOC_CT
}
if (DEBUGLEVEL >= 10)
- NDR_PRINT_OUT_DEBUG(WKSSVC_NETRGETJOINABLEOUS, &r);
+ NDR_PRINT_OUT_DEBUG(wkssvc_NetrGetJoinableOus, &r);
if (NT_STATUS_IS_ERR(status)) {
return status;
}
/* Return variables */
+ *num_ous = *r.out.num_ous;
+ memcpy(ous, r.out.ous, *r.in.num_ous);
/* Return result */
return werror_to_ntstatus(r.out.result);
}
-NTSTATUS rpccli_wkssvc_NetrJoinDomain2(struct rpc_pipe_client *cli, TALLOC_CTX *mem_ctx, const char *server_name, const char *domain_name, const char *account_name, const char *admin_account, struct wkssvc_PasswordBuffer *encrypted_password, uint32_t join_flags)
+NTSTATUS rpccli_wkssvc_NetrJoinDomain2(struct rpc_pipe_client *cli, TALLOC_CTX *mem_ctx, const char *server_name, const char *domain_name, const char *account_ou, const char *admin_account, struct wkssvc_PasswordBuffer *encrypted_password, uint32_t join_flags)
{
struct wkssvc_NetrJoinDomain2 r;
NTSTATUS status;
@@ -684,7 +764,7 @@ NTSTATUS rpccli_wkssvc_NetrJoinDomain2(struct rpc_pipe_client *cli, TALLOC_CTX *
/* In parameters */
r.in.server_name = server_name;
r.in.domain_name = domain_name;
- r.in.account_name = account_name;
+ r.in.account_ou = account_ou;
r.in.admin_account = admin_account;
r.in.encrypted_password = encrypted_password;
r.in.join_flags = join_flags;
@@ -778,15 +858,20 @@ NTSTATUS rpccli_wkssvc_NetrRenameMachineInDomain2(struct rpc_pipe_client *cli, T
return werror_to_ntstatus(r.out.result);
}
-NTSTATUS rpccli_WKSSVC_NETRVALIDATENAME2(struct rpc_pipe_client *cli, TALLOC_CTX *mem_ctx)
+NTSTATUS rpccli_wkssvc_NetrValidateName2(struct rpc_pipe_client *cli, TALLOC_CTX *mem_ctx, const char *server_name, const char *name, const char *Account, struct wkssvc_PasswordBuffer *EncryptedPassword, enum wkssvc_NetValidateNameType name_type)
{
- struct WKSSVC_NETRVALIDATENAME2 r;
+ struct wkssvc_NetrValidateName2 r;
NTSTATUS status;
/* In parameters */
+ r.in.server_name = server_name;
+ r.in.name = name;
+ r.in.Account = Account;
+ r.in.EncryptedPassword = EncryptedPassword;
+ r.in.name_type = name_type;
if (DEBUGLEVEL >= 10)
- NDR_PRINT_IN_DEBUG(WKSSVC_NETRVALIDATENAME2, &r);
+ NDR_PRINT_IN_DEBUG(wkssvc_NetrValidateName2, &r);
status = cli_do_rpc_ndr(cli, mem_ctx, PI_WKSSVC, &ndr_table_wkssvc, NDR_WKSSVC_NETRVALIDATENAME2, &r);
@@ -795,7 +880,7 @@ NTSTATUS rpccli_WKSSVC_NETRVALIDATENAME2(struct rpc_pipe_client *cli, TALLOC_CTX
}
if (DEBUGLEVEL >= 10)
- NDR_PRINT_OUT_DEBUG(WKSSVC_NETRVALIDATENAME2, &r);
+ NDR_PRINT_OUT_DEBUG(wkssvc_NetrValidateName2, &r);
if (NT_STATUS_IS_ERR(status)) {
return status;
@@ -807,15 +892,20 @@ NTSTATUS rpccli_WKSSVC_NETRVALIDATENAME2(struct rpc_pipe_client *cli, TALLOC_CTX
return werror_to_ntstatus(r.out.result);
}
-NTSTATUS rpccli_WKSSVC_NETRGETJOINABLEOUS2(struct rpc_pipe_client *cli, TALLOC_CTX *mem_ctx)
+NTSTATUS rpccli_wkssvc_NetrGetJoinableOus2(struct rpc_pipe_client *cli, TALLOC_CTX *mem_ctx, const char *server_name, const char *domain_name, const char *Account, struct wkssvc_PasswordBuffer *EncryptedPassword, uint32_t *num_ous, const char ***ous)
{
- struct WKSSVC_NETRGETJOINABLEOUS2 r;
+ struct wkssvc_NetrGetJoinableOus2 r;
NTSTATUS status;
/* In parameters */
+ r.in.server_name = server_name;
+ r.in.domain_name = domain_name;
+ r.in.Account = Account;
+ r.in.EncryptedPassword = EncryptedPassword;
+ r.in.num_ous = num_ous;
if (DEBUGLEVEL >= 10)
- NDR_PRINT_IN_DEBUG(WKSSVC_NETRGETJOINABLEOUS2, &r);
+ NDR_PRINT_IN_DEBUG(wkssvc_NetrGetJoinableOus2, &r);
status = cli_do_rpc_ndr(cli, mem_ctx, PI_WKSSVC, &ndr_table_wkssvc, NDR_WKSSVC_NETRGETJOINABLEOUS2, &r);
@@ -824,13 +914,15 @@ NTSTATUS rpccli_WKSSVC_NETRGETJOINABLEOUS2(struct rpc_pipe_client *cli, TALLOC_C
}
if (DEBUGLEVEL >= 10)
- NDR_PRINT_OUT_DEBUG(WKSSVC_NETRGETJOINABLEOUS2, &r);
+ NDR_PRINT_OUT_DEBUG(wkssvc_NetrGetJoinableOus2, &r);
if (NT_STATUS_IS_ERR(status)) {
return status;
}
/* Return variables */
+ *num_ous = *r.out.num_ous;
+ memcpy(ous, r.out.ous, *r.in.num_ous);
/* Return result */
return werror_to_ntstatus(r.out.result);
@@ -904,15 +996,20 @@ NTSTATUS rpccli_wkssvc_NetrRemoveAlternateComputerName(struct rpc_pipe_client *c
return werror_to_ntstatus(r.out.result);
}
-NTSTATUS rpccli_WKSSVC_NETRSETPRIMARYCOMPUTERNAME(struct rpc_pipe_client *cli, TALLOC_CTX *mem_ctx)
+NTSTATUS rpccli_wkssvc_NetrSetPrimaryComputername(struct rpc_pipe_client *cli, TALLOC_CTX *mem_ctx, const char *server_name, const char *primary_name, const char *Account, struct wkssvc_PasswordBuffer *EncryptedPassword, uint32_t Reserved)
{
- struct WKSSVC_NETRSETPRIMARYCOMPUTERNAME r;
+ struct wkssvc_NetrSetPrimaryComputername r;
NTSTATUS status;
/* In parameters */
+ r.in.server_name = server_name;
+ r.in.primary_name = primary_name;
+ r.in.Account = Account;
+ r.in.EncryptedPassword = EncryptedPassword;
+ r.in.Reserved = Reserved;
if (DEBUGLEVEL >= 10)
- NDR_PRINT_IN_DEBUG(WKSSVC_NETRSETPRIMARYCOMPUTERNAME, &r);
+ NDR_PRINT_IN_DEBUG(wkssvc_NetrSetPrimaryComputername, &r);
status = cli_do_rpc_ndr(cli, mem_ctx, PI_WKSSVC, &ndr_table_wkssvc, NDR_WKSSVC_NETRSETPRIMARYCOMPUTERNAME, &r);
@@ -921,7 +1018,7 @@ NTSTATUS rpccli_WKSSVC_NETRSETPRIMARYCOMPUTERNAME(struct rpc_pipe_client *cli, T
}
if (DEBUGLEVEL >= 10)
- NDR_PRINT_OUT_DEBUG(WKSSVC_NETRSETPRIMARYCOMPUTERNAME, &r);
+ NDR_PRINT_OUT_DEBUG(wkssvc_NetrSetPrimaryComputername, &r);
if (NT_STATUS_IS_ERR(status)) {
return status;
@@ -933,15 +1030,18 @@ NTSTATUS rpccli_WKSSVC_NETRSETPRIMARYCOMPUTERNAME(struct rpc_pipe_client *cli, T
return werror_to_ntstatus(r.out.result);
}
-NTSTATUS rpccli_WKSSVC_NETRENUMERATECOMPUTERNAMES(struct rpc_pipe_client *cli, TALLOC_CTX *mem_ctx)
+NTSTATUS rpccli_wkssvc_NetrEnumerateComputerNames(struct rpc_pipe_client *cli, TALLOC_CTX *mem_ctx, const char *server_name, enum wkssvc_ComputerNameType name_type, uint32_t Reserved, struct wkssvc_ComputerNamesCtr **ctr)
{
- struct WKSSVC_NETRENUMERATECOMPUTERNAMES r;
+ struct wkssvc_NetrEnumerateComputerNames r;
NTSTATUS status;
/* In parameters */
+ r.in.server_name = server_name;
+ r.in.name_type = name_type;
+ r.in.Reserved = Reserved;
if (DEBUGLEVEL >= 10)
- NDR_PRINT_IN_DEBUG(WKSSVC_NETRENUMERATECOMPUTERNAMES, &r);
+ NDR_PRINT_IN_DEBUG(wkssvc_NetrEnumerateComputerNames, &r);
status = cli_do_rpc_ndr(cli, mem_ctx, PI_WKSSVC, &ndr_table_wkssvc, NDR_WKSSVC_NETRENUMERATECOMPUTERNAMES, &r);
@@ -950,13 +1050,14 @@ NTSTATUS rpccli_WKSSVC_NETRENUMERATECOMPUTERNAMES(struct rpc_pipe_client *cli, T
}
if (DEBUGLEVEL >= 10)
- NDR_PRINT_OUT_DEBUG(WKSSVC_NETRENUMERATECOMPUTERNAMES, &r);
+ NDR_PRINT_OUT_DEBUG(wkssvc_NetrEnumerateComputerNames, &r);
if (NT_STATUS_IS_ERR(status)) {
return status;
}
/* Return variables */
+ *ctr = *r.out.ctr;
/* Return result */
return werror_to_ntstatus(r.out.result);
diff --git a/source3/librpc/gen_ndr/cli_wkssvc.h b/source3/librpc/gen_ndr/cli_wkssvc.h
index 1cbe0dd23e..62deb10c21 100644
--- a/source3/librpc/gen_ndr/cli_wkssvc.h
+++ b/source3/librpc/gen_ndr/cli_wkssvc.h
@@ -3,33 +3,33 @@
#define __CLI_WKSSVC__
NTSTATUS rpccli_wkssvc_NetWkstaGetInfo(struct rpc_pipe_client *cli, TALLOC_CTX *mem_ctx, const char *server_name, uint32_t level, union wkssvc_NetWkstaInfo *info);
NTSTATUS rpccli_wkssvc_NetWkstaSetInfo(struct rpc_pipe_client *cli, TALLOC_CTX *mem_ctx, const char *server_name, uint32_t level, union wkssvc_NetWkstaInfo *info, uint32_t *parm_error);
-NTSTATUS rpccli_wkssvc_NetWkstaEnumUsers(struct rpc_pipe_client *cli, TALLOC_CTX *mem_ctx, const char *server_name, uint32_t level, union WKS_USER_ENUM_UNION *users, uint32_t prefmaxlen, uint32_t *entriesread, uint32_t *totalentries, uint32_t *resumehandle);
-NTSTATUS rpccli_WKSSVC_NETRWKSTAUSERGETINFO(struct rpc_pipe_client *cli, TALLOC_CTX *mem_ctx);
-NTSTATUS rpccli_WKSSVC_NETRWKSTAUSERSETINFO(struct rpc_pipe_client *cli, TALLOC_CTX *mem_ctx);
-NTSTATUS rpccli_wkssvc_NetWkstaTransportEnum(struct rpc_pipe_client *cli, TALLOC_CTX *mem_ctx, const char *server_name, uint32_t *level, union wkssvc_NetWkstaTransportCtr *ctr, uint32_t max_buffer, uint32_t *totalentries, uint32_t *resume_handle);
-NTSTATUS rpccli_WKSSVC_NETRWKSTATRANSPORTADD(struct rpc_pipe_client *cli, TALLOC_CTX *mem_ctx);
-NTSTATUS rpccli_WKSSVC_NETRWKSTATRANSPORTDEL(struct rpc_pipe_client *cli, TALLOC_CTX *mem_ctx);
-NTSTATUS rpccli_WKSSVC_NETRUSEADD(struct rpc_pipe_client *cli, TALLOC_CTX *mem_ctx);
-NTSTATUS rpccli_WKSSVC_NETRUSEGETINFO(struct rpc_pipe_client *cli, TALLOC_CTX *mem_ctx);
-NTSTATUS rpccli_WKSSVC_NETRUSEDEL(struct rpc_pipe_client *cli, TALLOC_CTX *mem_ctx);
-NTSTATUS rpccli_WKSSVC_NETRUSEENUM(struct rpc_pipe_client *cli, TALLOC_CTX *mem_ctx);
-NTSTATUS rpccli_WKSSVC_NETRMESSAGEBUFFERSEND(struct rpc_pipe_client *cli, TALLOC_CTX *mem_ctx);
-NTSTATUS rpccli_WKSSVC_NETRWORKSTATIONSTATISTICSGET(struct rpc_pipe_client *cli, TALLOC_CTX *mem_ctx);
-NTSTATUS rpccli_WKSSVC_NETRLOGONDOMAINNAMEADD(struct rpc_pipe_client *cli, TALLOC_CTX *mem_ctx);
-NTSTATUS rpccli_WKSSVC_NETRLOGONDOMAINNAMEDEL(struct rpc_pipe_client *cli, TALLOC_CTX *mem_ctx);
-NTSTATUS rpccli_WKSSVC_NETRJOINDOMAIN(struct rpc_pipe_client *cli, TALLOC_CTX *mem_ctx);
-NTSTATUS rpccli_WKSSVC_NETRUNJOINDOMAIN(struct rpc_pipe_client *cli, TALLOC_CTX *mem_ctx);
-NTSTATUS rpccli_WKSSVC_NETRRENAMEMACHINEINDOMAIN(struct rpc_pipe_client *cli, TALLOC_CTX *mem_ctx);
-NTSTATUS rpccli_WKSSVC_NETRVALIDATENAME(struct rpc_pipe_client *cli, TALLOC_CTX *mem_ctx);
-NTSTATUS rpccli_WKSSVC_NETRGETJOININFORMATION(struct rpc_pipe_client *cli, TALLOC_CTX *mem_ctx);
-NTSTATUS rpccli_WKSSVC_NETRGETJOINABLEOUS(struct rpc_pipe_client *cli, TALLOC_CTX *mem_ctx);
-NTSTATUS rpccli_wkssvc_NetrJoinDomain2(struct rpc_pipe_client *cli, TALLOC_CTX *mem_ctx, const char *server_name, const char *domain_name, const char *account_name, const char *admin_account, struct wkssvc_PasswordBuffer *encrypted_password, uint32_t join_flags);
+NTSTATUS rpccli_wkssvc_NetWkstaEnumUsers(struct rpc_pipe_client *cli, TALLOC_CTX *mem_ctx, const char *server_name, struct wkssvc_NetWkstaEnumUsersInfo *info, uint32_t prefmaxlen, uint32_t *entries_read, uint32_t *resume_handle);
+NTSTATUS rpccli_wkssvc_NetrWkstaUserGetInfo(struct rpc_pipe_client *cli, TALLOC_CTX *mem_ctx, const char *unknown, uint32_t level, union wkssvc_NetrWkstaUserInfo *info);
+NTSTATUS rpccli_wkssvc_NetrWkstaUserSetInfo(struct rpc_pipe_client *cli, TALLOC_CTX *mem_ctx, const char *unknown, uint32_t level, union wkssvc_NetrWkstaUserInfo *info, uint32_t *parm_err);
+NTSTATUS rpccli_wkssvc_NetWkstaTransportEnum(struct rpc_pipe_client *cli, TALLOC_CTX *mem_ctx, const char *server_name, struct wkssvc_NetWkstaTransportInfo *info, uint32_t max_buffer, uint32_t *total_entries, uint32_t *resume_handle);
+NTSTATUS rpccli_wkssvc_NetrWkstaTransportAdd(struct rpc_pipe_client *cli, TALLOC_CTX *mem_ctx, const char *server_name, uint32_t level, struct wkssvc_NetWkstaTransportInfo0 *info0, uint32_t *parm_err);
+NTSTATUS rpccli_wkssvc_NetrWkstaTransportDel(struct rpc_pipe_client *cli, TALLOC_CTX *mem_ctx, const char *server_name, const char *transport_name, uint32_t unknown3);
+NTSTATUS rpccli_wkssvc_NetrUseAdd(struct rpc_pipe_client *cli, TALLOC_CTX *mem_ctx, const char *server_name, uint32_t level, union wkssvc_NetrUseGetInfoCtr *ctr, uint32_t *parm_err);
+NTSTATUS rpccli_wkssvc_NetrUseGetInfo(struct rpc_pipe_client *cli, TALLOC_CTX *mem_ctx, const char *server_name, const char *use_name, uint32_t level, union wkssvc_NetrUseGetInfoCtr *ctr);
+NTSTATUS rpccli_wkssvc_NetrUseDel(struct rpc_pipe_client *cli, TALLOC_CTX *mem_ctx, const char *server_name, const char *use_name, uint32_t force_cond);
+NTSTATUS rpccli_wkssvc_NetrUseEnum(struct rpc_pipe_client *cli, TALLOC_CTX *mem_ctx, const char *server_name, struct wkssvc_NetrUseEnumInfo *info, uint32_t prefmaxlen, uint32_t *entries_read, uint32_t *resume_handle);
+NTSTATUS rpccli_wkssvc_NetrMessageBufferSend(struct rpc_pipe_client *cli, TALLOC_CTX *mem_ctx, const char *server_name, const char *message_name, const char *message_sender_name, uint8_t *message_buffer, uint32_t message_size);
+NTSTATUS rpccli_wkssvc_NetrWorkstationStatisticsGet(struct rpc_pipe_client *cli, TALLOC_CTX *mem_ctx, const char *server_name, const char *unknown2, uint32_t unknown3, uint32_t unknown4, struct wkssvc_NetrWorkstationStatistics **info);
+NTSTATUS rpccli_wkssvc_NetrLogonDomainNameAdd(struct rpc_pipe_client *cli, TALLOC_CTX *mem_ctx, const char *domain_name);
+NTSTATUS rpccli_wkssvc_NetrLogonDomainNameDel(struct rpc_pipe_client *cli, TALLOC_CTX *mem_ctx, const char *domain_name);
+NTSTATUS rpccli_wkssvc_NetrJoinDomain(struct rpc_pipe_client *cli, TALLOC_CTX *mem_ctx, const char *server_name, const char *domain_name, const char *account_ou, const char *Account, const char *password, uint32_t join_flags);
+NTSTATUS rpccli_wkssvc_NetrUnjoinDomain(struct rpc_pipe_client *cli, TALLOC_CTX *mem_ctx, const char *server_name, const char *Account, const char *password, uint32_t unjoin_flags);
+NTSTATUS rpccli_wkssvc_NetrRenameMachineInDomain(struct rpc_pipe_client *cli, TALLOC_CTX *mem_ctx, const char *server_name, const char *NewMachineName, const char *Account, const char *password, uint32_t RenameOptions);
+NTSTATUS rpccli_wkssvc_NetrValidateName(struct rpc_pipe_client *cli, TALLOC_CTX *mem_ctx, const char *server_name, const char *name, const char *Account, const char *Password, enum wkssvc_NetValidateNameType name_type);
+NTSTATUS rpccli_wkssvc_NetrGetJoinInformation(struct rpc_pipe_client *cli, TALLOC_CTX *mem_ctx, const char *server_name, const char **name_buffer, enum wkssvc_NetJoinStatus *name_type);
+NTSTATUS rpccli_wkssvc_NetrGetJoinableOus(struct rpc_pipe_client *cli, TALLOC_CTX *mem_ctx, const char *server_name, const char *domain_name, const char *Account, const char *unknown, uint32_t *num_ous, const char ***ous);
+NTSTATUS rpccli_wkssvc_NetrJoinDomain2(struct rpc_pipe_client *cli, TALLOC_CTX *mem_ctx, const char *server_name, const char *domain_name, const char *account_ou, const char *admin_account, struct wkssvc_PasswordBuffer *encrypted_password, uint32_t join_flags);
NTSTATUS rpccli_wkssvc_NetrUnjoinDomain2(struct rpc_pipe_client *cli, TALLOC_CTX *mem_ctx, const char *server_name, const char *account, struct wkssvc_PasswordBuffer *encrypted_password, uint32_t unjoin_flags);
NTSTATUS rpccli_wkssvc_NetrRenameMachineInDomain2(struct rpc_pipe_client *cli, TALLOC_CTX *mem_ctx, const char *server_name, const char *NewMachineName, const char *Account, struct wkssvc_PasswordBuffer *EncryptedPassword, uint32_t RenameOptions);
-NTSTATUS rpccli_WKSSVC_NETRVALIDATENAME2(struct rpc_pipe_client *cli, TALLOC_CTX *mem_ctx);
-NTSTATUS rpccli_WKSSVC_NETRGETJOINABLEOUS2(struct rpc_pipe_client *cli, TALLOC_CTX *mem_ctx);
+NTSTATUS rpccli_wkssvc_NetrValidateName2(struct rpc_pipe_client *cli, TALLOC_CTX *mem_ctx, const char *server_name, const char *name, const char *Account, struct wkssvc_PasswordBuffer *EncryptedPassword, enum wkssvc_NetValidateNameType name_type);
+NTSTATUS rpccli_wkssvc_NetrGetJoinableOus2(struct rpc_pipe_client *cli, TALLOC_CTX *mem_ctx, const char *server_name, const char *domain_name, const char *Account, struct wkssvc_PasswordBuffer *EncryptedPassword, uint32_t *num_ous, const char ***ous);
NTSTATUS rpccli_wkssvc_NetrAddAlternateComputerName(struct rpc_pipe_client *cli, TALLOC_CTX *mem_ctx, const char *server_name, const char *NewAlternateMachineName, const char *Account, struct wkssvc_PasswordBuffer *EncryptedPassword, uint32_t Reserved);
NTSTATUS rpccli_wkssvc_NetrRemoveAlternateComputerName(struct rpc_pipe_client *cli, TALLOC_CTX *mem_ctx, const char *server_name, const char *AlternateMachineNameToRemove, const char *Account, struct wkssvc_PasswordBuffer *EncryptedPassword, uint32_t Reserved);
-NTSTATUS rpccli_WKSSVC_NETRSETPRIMARYCOMPUTERNAME(struct rpc_pipe_client *cli, TALLOC_CTX *mem_ctx);
-NTSTATUS rpccli_WKSSVC_NETRENUMERATECOMPUTERNAMES(struct rpc_pipe_client *cli, TALLOC_CTX *mem_ctx);
+NTSTATUS rpccli_wkssvc_NetrSetPrimaryComputername(struct rpc_pipe_client *cli, TALLOC_CTX *mem_ctx, const char *server_name, const char *primary_name, const char *Account, struct wkssvc_PasswordBuffer *EncryptedPassword, uint32_t Reserved);
+NTSTATUS rpccli_wkssvc_NetrEnumerateComputerNames(struct rpc_pipe_client *cli, TALLOC_CTX *mem_ctx, const char *server_name, enum wkssvc_ComputerNameType name_type, uint32_t Reserved, struct wkssvc_ComputerNamesCtr **ctr);
#endif /* __CLI_WKSSVC__ */
diff --git a/source3/librpc/gen_ndr/ndr_wkssvc.c b/source3/librpc/gen_ndr/ndr_wkssvc.c
index 026a446e8c..c3a1f706cd 100644
--- a/source3/librpc/gen_ndr/ndr_wkssvc.c
+++ b/source3/librpc/gen_ndr/ndr_wkssvc.c
@@ -4,11 +4,12 @@
#include "librpc/gen_ndr/ndr_wkssvc.h"
#include "librpc/gen_ndr/ndr_srvsvc.h"
+#include "librpc/gen_ndr/ndr_lsa.h"
static enum ndr_err_code ndr_push_wkssvc_NetWkstaInfo100(struct ndr_push *ndr, int ndr_flags, const struct wkssvc_NetWkstaInfo100 *r)
{
if (ndr_flags & NDR_SCALARS) {
NDR_CHECK(ndr_push_align(ndr, 4));
- NDR_CHECK(ndr_push_uint16(ndr, NDR_SCALARS, r->platform_id));
+ NDR_CHECK(ndr_push_srvsvc_PlatformId(ndr, NDR_SCALARS, r->platform_id));
NDR_CHECK(ndr_push_unique_ptr(ndr, r->server_name));
NDR_CHECK(ndr_push_unique_ptr(ndr, r->domain_name));
NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->version_major));
@@ -39,7 +40,7 @@ static enum ndr_err_code ndr_pull_wkssvc_NetWkstaInfo100(struct ndr_pull *ndr, i
TALLOC_CTX *_mem_save_domain_name_0;
if (ndr_flags & NDR_SCALARS) {
NDR_CHECK(ndr_pull_align(ndr, 4));
- NDR_CHECK(ndr_pull_uint16(ndr, NDR_SCALARS, &r->platform_id));
+ NDR_CHECK(ndr_pull_srvsvc_PlatformId(ndr, NDR_SCALARS, &r->platform_id));
NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_server_name));
if (_ptr_server_name) {
NDR_PULL_ALLOC(ndr, r->server_name);
@@ -88,7 +89,7 @@ _PUBLIC_ void ndr_print_wkssvc_NetWkstaInfo100(struct ndr_print *ndr, const char
{
ndr_print_struct(ndr, name, "wkssvc_NetWkstaInfo100");
ndr->depth++;
- ndr_print_uint16(ndr, "platform_id", r->platform_id);
+ ndr_print_srvsvc_PlatformId(ndr, "platform_id", r->platform_id);
ndr_print_ptr(ndr, "server_name", r->server_name);
ndr->depth++;
if (r->server_name) {
@@ -110,7 +111,7 @@ static enum ndr_err_code ndr_push_wkssvc_NetWkstaInfo101(struct ndr_push *ndr, i
{
if (ndr_flags & NDR_SCALARS) {
NDR_CHECK(ndr_push_align(ndr, 4));
- NDR_CHECK(ndr_push_uint16(ndr, NDR_SCALARS, r->platform_id));
+ NDR_CHECK(ndr_push_srvsvc_PlatformId(ndr, NDR_SCALARS, r->platform_id));
NDR_CHECK(ndr_push_unique_ptr(ndr, r->server_name));
NDR_CHECK(ndr_push_unique_ptr(ndr, r->domain_name));
NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->version_major));
@@ -150,7 +151,7 @@ static enum ndr_err_code ndr_pull_wkssvc_NetWkstaInfo101(struct ndr_pull *ndr, i
TALLOC_CTX *_mem_save_lan_root_0;
if (ndr_flags & NDR_SCALARS) {
NDR_CHECK(ndr_pull_align(ndr, 4));
- NDR_CHECK(ndr_pull_uint16(ndr, NDR_SCALARS, &r->platform_id));
+ NDR_CHECK(ndr_pull_srvsvc_PlatformId(ndr, NDR_SCALARS, &r->platform_id));
NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_server_name));
if (_ptr_server_name) {
NDR_PULL_ALLOC(ndr, r->server_name);
@@ -217,7 +218,7 @@ _PUBLIC_ void ndr_print_wkssvc_NetWkstaInfo101(struct ndr_print *ndr, const char
{
ndr_print_struct(ndr, name, "wkssvc_NetWkstaInfo101");
ndr->depth++;
- ndr_print_uint16(ndr, "platform_id", r->platform_id);
+ ndr_print_srvsvc_PlatformId(ndr, "platform_id", r->platform_id);
ndr_print_ptr(ndr, "server_name", r->server_name);
ndr->depth++;
if (r->server_name) {
@@ -245,7 +246,7 @@ static enum ndr_err_code ndr_push_wkssvc_NetWkstaInfo102(struct ndr_push *ndr, i
{
if (ndr_flags & NDR_SCALARS) {
NDR_CHECK(ndr_push_align(ndr, 4));
- NDR_CHECK(ndr_push_uint16(ndr, NDR_SCALARS, r->platform_id));
+ NDR_CHECK(ndr_push_srvsvc_PlatformId(ndr, NDR_SCALARS, r->platform_id));
NDR_CHECK(ndr_push_unique_ptr(ndr, r->server_name));
NDR_CHECK(ndr_push_unique_ptr(ndr, r->domain_name));
NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->version_major));
@@ -286,7 +287,7 @@ static enum ndr_err_code ndr_pull_wkssvc_NetWkstaInfo102(struct ndr_pull *ndr, i
TALLOC_CTX *_mem_save_lan_root_0;
if (ndr_flags & NDR_SCALARS) {
NDR_CHECK(ndr_pull_align(ndr, 4));
- NDR_CHECK(ndr_pull_uint16(ndr, NDR_SCALARS, &r->platform_id));
+ NDR_CHECK(ndr_pull_srvsvc_PlatformId(ndr, NDR_SCALARS, &r->platform_id));
NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_server_name));
if (_ptr_server_name) {
NDR_PULL_ALLOC(ndr, r->server_name);
@@ -354,7 +355,7 @@ _PUBLIC_ void ndr_print_wkssvc_NetWkstaInfo102(struct ndr_print *ndr, const char
{
ndr_print_struct(ndr, name, "wkssvc_NetWkstaInfo102");
ndr->depth++;
- ndr_print_uint16(ndr, "platform_id", r->platform_id);
+ ndr_print_srvsvc_PlatformId(ndr, "platform_id", r->platform_id);
ndr_print_ptr(ndr, "server_name", r->server_name);
ndr->depth++;
if (r->server_name) {
@@ -721,6 +722,66 @@ _PUBLIC_ void ndr_print_wkssvc_NetWkstaInfo1027(struct ndr_print *ndr, const cha
ndr->depth--;
}
+static enum ndr_err_code ndr_push_wkssvc_NetWkstaInfo1028(struct ndr_push *ndr, int ndr_flags, const struct wkssvc_NetWkstaInfo1028 *r)
+{
+ if (ndr_flags & NDR_SCALARS) {
+ NDR_CHECK(ndr_push_align(ndr, 4));
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->print_buf_time));
+ }
+ if (ndr_flags & NDR_BUFFERS) {
+ }
+ return NDR_ERR_SUCCESS;
+}
+
+static enum ndr_err_code ndr_pull_wkssvc_NetWkstaInfo1028(struct ndr_pull *ndr, int ndr_flags, struct wkssvc_NetWkstaInfo1028 *r)
+{
+ if (ndr_flags & NDR_SCALARS) {
+ NDR_CHECK(ndr_pull_align(ndr, 4));
+ NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->print_buf_time));
+ }
+ if (ndr_flags & NDR_BUFFERS) {
+ }
+ return NDR_ERR_SUCCESS;
+}
+
+_PUBLIC_ void ndr_print_wkssvc_NetWkstaInfo1028(struct ndr_print *ndr, const char *name, const struct wkssvc_NetWkstaInfo1028 *r)
+{
+ ndr_print_struct(ndr, name, "wkssvc_NetWkstaInfo1028");
+ ndr->depth++;
+ ndr_print_uint32(ndr, "print_buf_time", r->print_buf_time);
+ ndr->depth--;
+}
+
+static enum ndr_err_code ndr_push_wkssvc_NetWkstaInfo1032(struct ndr_push *ndr, int ndr_flags, const struct wkssvc_NetWkstaInfo1032 *r)
+{
+ if (ndr_flags & NDR_SCALARS) {
+ NDR_CHECK(ndr_push_align(ndr, 4));
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->wrk_heuristics));
+ }
+ if (ndr_flags & NDR_BUFFERS) {
+ }
+ return NDR_ERR_SUCCESS;
+}
+
+static enum ndr_err_code ndr_pull_wkssvc_NetWkstaInfo1032(struct ndr_pull *ndr, int ndr_flags, struct wkssvc_NetWkstaInfo1032 *r)
+{
+ if (ndr_flags & NDR_SCALARS) {
+ NDR_CHECK(ndr_pull_align(ndr, 4));
+ NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->wrk_heuristics));
+ }
+ if (ndr_flags & NDR_BUFFERS) {
+ }
+ return NDR_ERR_SUCCESS;
+}
+
+_PUBLIC_ void ndr_print_wkssvc_NetWkstaInfo1032(struct ndr_print *ndr, const char *name, const struct wkssvc_NetWkstaInfo1032 *r)
+{
+ ndr_print_struct(ndr, name, "wkssvc_NetWkstaInfo1032");
+ ndr->depth++;
+ ndr_print_uint32(ndr, "wrk_heuristics", r->wrk_heuristics);
+ ndr->depth--;
+}
+
static enum ndr_err_code ndr_push_wkssvc_NetWkstaInfo1033(struct ndr_push *ndr, int ndr_flags, const struct wkssvc_NetWkstaInfo1033 *r)
{
if (ndr_flags & NDR_SCALARS) {
@@ -751,6 +812,666 @@ _PUBLIC_ void ndr_print_wkssvc_NetWkstaInfo1033(struct ndr_print *ndr, const cha
ndr->depth--;
}
+static enum ndr_err_code ndr_push_wkssvc_NetWkstaInfo1041(struct ndr_push *ndr, int ndr_flags, const struct wkssvc_NetWkstaInfo1041 *r)
+{
+ if (ndr_flags & NDR_SCALARS) {
+ NDR_CHECK(ndr_push_align(ndr, 4));
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->lock_quota));
+ }
+ if (ndr_flags & NDR_BUFFERS) {
+ }
+ return NDR_ERR_SUCCESS;
+}
+
+static enum ndr_err_code ndr_pull_wkssvc_NetWkstaInfo1041(struct ndr_pull *ndr, int ndr_flags, struct wkssvc_NetWkstaInfo1041 *r)
+{
+ if (ndr_flags & NDR_SCALARS) {
+ NDR_CHECK(ndr_pull_align(ndr, 4));
+ NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->lock_quota));
+ }
+ if (ndr_flags & NDR_BUFFERS) {
+ }
+ return NDR_ERR_SUCCESS;
+}
+
+_PUBLIC_ void ndr_print_wkssvc_NetWkstaInfo1041(struct ndr_print *ndr, const char *name, const struct wkssvc_NetWkstaInfo1041 *r)
+{
+ ndr_print_struct(ndr, name, "wkssvc_NetWkstaInfo1041");
+ ndr->depth++;
+ ndr_print_uint32(ndr, "lock_quota", r->lock_quota);
+ ndr->depth--;
+}
+
+static enum ndr_err_code ndr_push_wkssvc_NetWkstaInfo1042(struct ndr_push *ndr, int ndr_flags, const struct wkssvc_NetWkstaInfo1042 *r)
+{
+ if (ndr_flags & NDR_SCALARS) {
+ NDR_CHECK(ndr_push_align(ndr, 4));
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->lock_increment));
+ }
+ if (ndr_flags & NDR_BUFFERS) {
+ }
+ return NDR_ERR_SUCCESS;
+}
+
+static enum ndr_err_code ndr_pull_wkssvc_NetWkstaInfo1042(struct ndr_pull *ndr, int ndr_flags, struct wkssvc_NetWkstaInfo1042 *r)
+{
+ if (ndr_flags & NDR_SCALARS) {
+ NDR_CHECK(ndr_pull_align(ndr, 4));
+ NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->lock_increment));
+ }
+ if (ndr_flags & NDR_BUFFERS) {
+ }
+ return NDR_ERR_SUCCESS;
+}
+
+_PUBLIC_ void ndr_print_wkssvc_NetWkstaInfo1042(struct ndr_print *ndr, const char *name, const struct wkssvc_NetWkstaInfo1042 *r)
+{
+ ndr_print_struct(ndr, name, "wkssvc_NetWkstaInfo1042");
+ ndr->depth++;
+ ndr_print_uint32(ndr, "lock_increment", r->lock_increment);
+ ndr->depth--;
+}
+
+static enum ndr_err_code ndr_push_wkssvc_NetWkstaInfo1043(struct ndr_push *ndr, int ndr_flags, const struct wkssvc_NetWkstaInfo1043 *r)
+{
+ if (ndr_flags & NDR_SCALARS) {
+ NDR_CHECK(ndr_push_align(ndr, 4));
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->lock_maximum));
+ }
+ if (ndr_flags & NDR_BUFFERS) {
+ }
+ return NDR_ERR_SUCCESS;
+}
+
+static enum ndr_err_code ndr_pull_wkssvc_NetWkstaInfo1043(struct ndr_pull *ndr, int ndr_flags, struct wkssvc_NetWkstaInfo1043 *r)
+{
+ if (ndr_flags & NDR_SCALARS) {
+ NDR_CHECK(ndr_pull_align(ndr, 4));
+ NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->lock_maximum));
+ }
+ if (ndr_flags & NDR_BUFFERS) {
+ }
+ return NDR_ERR_SUCCESS;
+}
+
+_PUBLIC_ void ndr_print_wkssvc_NetWkstaInfo1043(struct ndr_print *ndr, const char *name, const struct wkssvc_NetWkstaInfo1043 *r)
+{
+ ndr_print_struct(ndr, name, "wkssvc_NetWkstaInfo1043");
+ ndr->depth++;
+ ndr_print_uint32(ndr, "lock_maximum", r->lock_maximum);
+ ndr->depth--;
+}
+
+static enum ndr_err_code ndr_push_wkssvc_NetWkstaInfo1044(struct ndr_push *ndr, int ndr_flags, const struct wkssvc_NetWkstaInfo1044 *r)
+{
+ if (ndr_flags & NDR_SCALARS) {
+ NDR_CHECK(ndr_push_align(ndr, 4));
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->pipe_increment));
+ }
+ if (ndr_flags & NDR_BUFFERS) {
+ }
+ return NDR_ERR_SUCCESS;
+}
+
+static enum ndr_err_code ndr_pull_wkssvc_NetWkstaInfo1044(struct ndr_pull *ndr, int ndr_flags, struct wkssvc_NetWkstaInfo1044 *r)
+{
+ if (ndr_flags & NDR_SCALARS) {
+ NDR_CHECK(ndr_pull_align(ndr, 4));
+ NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->pipe_increment));
+ }
+ if (ndr_flags & NDR_BUFFERS) {
+ }
+ return NDR_ERR_SUCCESS;
+}
+
+_PUBLIC_ void ndr_print_wkssvc_NetWkstaInfo1044(struct ndr_print *ndr, const char *name, const struct wkssvc_NetWkstaInfo1044 *r)
+{
+ ndr_print_struct(ndr, name, "wkssvc_NetWkstaInfo1044");
+ ndr->depth++;
+ ndr_print_uint32(ndr, "pipe_increment", r->pipe_increment);
+ ndr->depth--;
+}
+
+static enum ndr_err_code ndr_push_wkssvc_NetWkstaInfo1045(struct ndr_push *ndr, int ndr_flags, const struct wkssvc_NetWkstaInfo1045 *r)
+{
+ if (ndr_flags & NDR_SCALARS) {
+ NDR_CHECK(ndr_push_align(ndr, 4));
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->pipe_maximum));
+ }
+ if (ndr_flags & NDR_BUFFERS) {
+ }
+ return NDR_ERR_SUCCESS;
+}
+
+static enum ndr_err_code ndr_pull_wkssvc_NetWkstaInfo1045(struct ndr_pull *ndr, int ndr_flags, struct wkssvc_NetWkstaInfo1045 *r)
+{
+ if (ndr_flags & NDR_SCALARS) {
+ NDR_CHECK(ndr_pull_align(ndr, 4));
+ NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->pipe_maximum));
+ }
+ if (ndr_flags & NDR_BUFFERS) {
+ }
+ return NDR_ERR_SUCCESS;
+}
+
+_PUBLIC_ void ndr_print_wkssvc_NetWkstaInfo1045(struct ndr_print *ndr, const char *name, const struct wkssvc_NetWkstaInfo1045 *r)
+{
+ ndr_print_struct(ndr, name, "wkssvc_NetWkstaInfo1045");
+ ndr->depth++;
+ ndr_print_uint32(ndr, "pipe_maximum", r->pipe_maximum);
+ ndr->depth--;
+}
+
+static enum ndr_err_code ndr_push_wkssvc_NetWkstaInfo1046(struct ndr_push *ndr, int ndr_flags, const struct wkssvc_NetWkstaInfo1046 *r)
+{
+ if (ndr_flags & NDR_SCALARS) {
+ NDR_CHECK(ndr_push_align(ndr, 4));
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->dormant_file_limit));
+ }
+ if (ndr_flags & NDR_BUFFERS) {
+ }
+ return NDR_ERR_SUCCESS;
+}
+
+static enum ndr_err_code ndr_pull_wkssvc_NetWkstaInfo1046(struct ndr_pull *ndr, int ndr_flags, struct wkssvc_NetWkstaInfo1046 *r)
+{
+ if (ndr_flags & NDR_SCALARS) {
+ NDR_CHECK(ndr_pull_align(ndr, 4));
+ NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->dormant_file_limit));
+ }
+ if (ndr_flags & NDR_BUFFERS) {
+ }
+ return NDR_ERR_SUCCESS;
+}
+
+_PUBLIC_ void ndr_print_wkssvc_NetWkstaInfo1046(struct ndr_print *ndr, const char *name, const struct wkssvc_NetWkstaInfo1046 *r)
+{
+ ndr_print_struct(ndr, name, "wkssvc_NetWkstaInfo1046");
+ ndr->depth++;
+ ndr_print_uint32(ndr, "dormant_file_limit", r->dormant_file_limit);
+ ndr->depth--;
+}
+
+static enum ndr_err_code ndr_push_wkssvc_NetWkstaInfo1047(struct ndr_push *ndr, int ndr_flags, const struct wkssvc_NetWkstaInfo1047 *r)
+{
+ if (ndr_flags & NDR_SCALARS) {
+ NDR_CHECK(ndr_push_align(ndr, 4));
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->cache_file_timeout));
+ }
+ if (ndr_flags & NDR_BUFFERS) {
+ }
+ return NDR_ERR_SUCCESS;
+}
+
+static enum ndr_err_code ndr_pull_wkssvc_NetWkstaInfo1047(struct ndr_pull *ndr, int ndr_flags, struct wkssvc_NetWkstaInfo1047 *r)
+{
+ if (ndr_flags & NDR_SCALARS) {
+ NDR_CHECK(ndr_pull_align(ndr, 4));
+ NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->cache_file_timeout));
+ }
+ if (ndr_flags & NDR_BUFFERS) {
+ }
+ return NDR_ERR_SUCCESS;
+}
+
+_PUBLIC_ void ndr_print_wkssvc_NetWkstaInfo1047(struct ndr_print *ndr, const char *name, const struct wkssvc_NetWkstaInfo1047 *r)
+{
+ ndr_print_struct(ndr, name, "wkssvc_NetWkstaInfo1047");
+ ndr->depth++;
+ ndr_print_uint32(ndr, "cache_file_timeout", r->cache_file_timeout);
+ ndr->depth--;
+}
+
+static enum ndr_err_code ndr_push_wkssvc_NetWkstaInfo1048(struct ndr_push *ndr, int ndr_flags, const struct wkssvc_NetWkstaInfo1048 *r)
+{
+ if (ndr_flags & NDR_SCALARS) {
+ NDR_CHECK(ndr_push_align(ndr, 4));
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->use_opportunistic_locking));
+ }
+ if (ndr_flags & NDR_BUFFERS) {
+ }
+ return NDR_ERR_SUCCESS;
+}
+
+static enum ndr_err_code ndr_pull_wkssvc_NetWkstaInfo1048(struct ndr_pull *ndr, int ndr_flags, struct wkssvc_NetWkstaInfo1048 *r)
+{
+ if (ndr_flags & NDR_SCALARS) {
+ NDR_CHECK(ndr_pull_align(ndr, 4));
+ NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->use_opportunistic_locking));
+ }
+ if (ndr_flags & NDR_BUFFERS) {
+ }
+ return NDR_ERR_SUCCESS;
+}
+
+_PUBLIC_ void ndr_print_wkssvc_NetWkstaInfo1048(struct ndr_print *ndr, const char *name, const struct wkssvc_NetWkstaInfo1048 *r)
+{
+ ndr_print_struct(ndr, name, "wkssvc_NetWkstaInfo1048");
+ ndr->depth++;
+ ndr_print_uint32(ndr, "use_opportunistic_locking", r->use_opportunistic_locking);
+ ndr->depth--;
+}
+
+static enum ndr_err_code ndr_push_wkssvc_NetWkstaInfo1049(struct ndr_push *ndr, int ndr_flags, const struct wkssvc_NetWkstaInfo1049 *r)
+{
+ if (ndr_flags & NDR_SCALARS) {
+ NDR_CHECK(ndr_push_align(ndr, 4));
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->use_unlock_behind));
+ }
+ if (ndr_flags & NDR_BUFFERS) {
+ }
+ return NDR_ERR_SUCCESS;
+}
+
+static enum ndr_err_code ndr_pull_wkssvc_NetWkstaInfo1049(struct ndr_pull *ndr, int ndr_flags, struct wkssvc_NetWkstaInfo1049 *r)
+{
+ if (ndr_flags & NDR_SCALARS) {
+ NDR_CHECK(ndr_pull_align(ndr, 4));
+ NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->use_unlock_behind));
+ }
+ if (ndr_flags & NDR_BUFFERS) {
+ }
+ return NDR_ERR_SUCCESS;
+}
+
+_PUBLIC_ void ndr_print_wkssvc_NetWkstaInfo1049(struct ndr_print *ndr, const char *name, const struct wkssvc_NetWkstaInfo1049 *r)
+{
+ ndr_print_struct(ndr, name, "wkssvc_NetWkstaInfo1049");
+ ndr->depth++;
+ ndr_print_uint32(ndr, "use_unlock_behind", r->use_unlock_behind);
+ ndr->depth--;
+}
+
+static enum ndr_err_code ndr_push_wkssvc_NetWkstaInfo1050(struct ndr_push *ndr, int ndr_flags, const struct wkssvc_NetWkstaInfo1050 *r)
+{
+ if (ndr_flags & NDR_SCALARS) {
+ NDR_CHECK(ndr_push_align(ndr, 4));
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->use_close_behind));
+ }
+ if (ndr_flags & NDR_BUFFERS) {
+ }
+ return NDR_ERR_SUCCESS;
+}
+
+static enum ndr_err_code ndr_pull_wkssvc_NetWkstaInfo1050(struct ndr_pull *ndr, int ndr_flags, struct wkssvc_NetWkstaInfo1050 *r)
+{
+ if (ndr_flags & NDR_SCALARS) {
+ NDR_CHECK(ndr_pull_align(ndr, 4));
+ NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->use_close_behind));
+ }
+ if (ndr_flags & NDR_BUFFERS) {
+ }
+ return NDR_ERR_SUCCESS;
+}
+
+_PUBLIC_ void ndr_print_wkssvc_NetWkstaInfo1050(struct ndr_print *ndr, const char *name, const struct wkssvc_NetWkstaInfo1050 *r)
+{
+ ndr_print_struct(ndr, name, "wkssvc_NetWkstaInfo1050");
+ ndr->depth++;
+ ndr_print_uint32(ndr, "use_close_behind", r->use_close_behind);
+ ndr->depth--;
+}
+
+static enum ndr_err_code ndr_push_wkssvc_NetWkstaInfo1051(struct ndr_push *ndr, int ndr_flags, const struct wkssvc_NetWkstaInfo1051 *r)
+{
+ if (ndr_flags & NDR_SCALARS) {
+ NDR_CHECK(ndr_push_align(ndr, 4));
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->buf_named_pipes));
+ }
+ if (ndr_flags & NDR_BUFFERS) {
+ }
+ return NDR_ERR_SUCCESS;
+}
+
+static enum ndr_err_code ndr_pull_wkssvc_NetWkstaInfo1051(struct ndr_pull *ndr, int ndr_flags, struct wkssvc_NetWkstaInfo1051 *r)
+{
+ if (ndr_flags & NDR_SCALARS) {
+ NDR_CHECK(ndr_pull_align(ndr, 4));
+ NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->buf_named_pipes));
+ }
+ if (ndr_flags & NDR_BUFFERS) {
+ }
+ return NDR_ERR_SUCCESS;
+}
+
+_PUBLIC_ void ndr_print_wkssvc_NetWkstaInfo1051(struct ndr_print *ndr, const char *name, const struct wkssvc_NetWkstaInfo1051 *r)
+{
+ ndr_print_struct(ndr, name, "wkssvc_NetWkstaInfo1051");
+ ndr->depth++;
+ ndr_print_uint32(ndr, "buf_named_pipes", r->buf_named_pipes);
+ ndr->depth--;
+}
+
+static enum ndr_err_code ndr_push_wkssvc_NetWkstaInfo1052(struct ndr_push *ndr, int ndr_flags, const struct wkssvc_NetWkstaInfo1052 *r)
+{
+ if (ndr_flags & NDR_SCALARS) {
+ NDR_CHECK(ndr_push_align(ndr, 4));
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->use_lock_read_unlock));
+ }
+ if (ndr_flags & NDR_BUFFERS) {
+ }
+ return NDR_ERR_SUCCESS;
+}
+
+static enum ndr_err_code ndr_pull_wkssvc_NetWkstaInfo1052(struct ndr_pull *ndr, int ndr_flags, struct wkssvc_NetWkstaInfo1052 *r)
+{
+ if (ndr_flags & NDR_SCALARS) {
+ NDR_CHECK(ndr_pull_align(ndr, 4));
+ NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->use_lock_read_unlock));
+ }
+ if (ndr_flags & NDR_BUFFERS) {
+ }
+ return NDR_ERR_SUCCESS;
+}
+
+_PUBLIC_ void ndr_print_wkssvc_NetWkstaInfo1052(struct ndr_print *ndr, const char *name, const struct wkssvc_NetWkstaInfo1052 *r)
+{
+ ndr_print_struct(ndr, name, "wkssvc_NetWkstaInfo1052");
+ ndr->depth++;
+ ndr_print_uint32(ndr, "use_lock_read_unlock", r->use_lock_read_unlock);
+ ndr->depth--;
+}
+
+static enum ndr_err_code ndr_push_wkssvc_NetWkstaInfo1053(struct ndr_push *ndr, int ndr_flags, const struct wkssvc_NetWkstaInfo1053 *r)
+{
+ if (ndr_flags & NDR_SCALARS) {
+ NDR_CHECK(ndr_push_align(ndr, 4));
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->utilize_nt_caching));
+ }
+ if (ndr_flags & NDR_BUFFERS) {
+ }
+ return NDR_ERR_SUCCESS;
+}
+
+static enum ndr_err_code ndr_pull_wkssvc_NetWkstaInfo1053(struct ndr_pull *ndr, int ndr_flags, struct wkssvc_NetWkstaInfo1053 *r)
+{
+ if (ndr_flags & NDR_SCALARS) {
+ NDR_CHECK(ndr_pull_align(ndr, 4));
+ NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->utilize_nt_caching));
+ }
+ if (ndr_flags & NDR_BUFFERS) {
+ }
+ return NDR_ERR_SUCCESS;
+}
+
+_PUBLIC_ void ndr_print_wkssvc_NetWkstaInfo1053(struct ndr_print *ndr, const char *name, const struct wkssvc_NetWkstaInfo1053 *r)
+{
+ ndr_print_struct(ndr, name, "wkssvc_NetWkstaInfo1053");
+ ndr->depth++;
+ ndr_print_uint32(ndr, "utilize_nt_caching", r->utilize_nt_caching);
+ ndr->depth--;
+}
+
+static enum ndr_err_code ndr_push_wkssvc_NetWkstaInfo1054(struct ndr_push *ndr, int ndr_flags, const struct wkssvc_NetWkstaInfo1054 *r)
+{
+ if (ndr_flags & NDR_SCALARS) {
+ NDR_CHECK(ndr_push_align(ndr, 4));
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->use_raw_read));
+ }
+ if (ndr_flags & NDR_BUFFERS) {
+ }
+ return NDR_ERR_SUCCESS;
+}
+
+static enum ndr_err_code ndr_pull_wkssvc_NetWkstaInfo1054(struct ndr_pull *ndr, int ndr_flags, struct wkssvc_NetWkstaInfo1054 *r)
+{
+ if (ndr_flags & NDR_SCALARS) {
+ NDR_CHECK(ndr_pull_align(ndr, 4));
+ NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->use_raw_read));
+ }
+ if (ndr_flags & NDR_BUFFERS) {
+ }
+ return NDR_ERR_SUCCESS;
+}
+
+_PUBLIC_ void ndr_print_wkssvc_NetWkstaInfo1054(struct ndr_print *ndr, const char *name, const struct wkssvc_NetWkstaInfo1054 *r)
+{
+ ndr_print_struct(ndr, name, "wkssvc_NetWkstaInfo1054");
+ ndr->depth++;
+ ndr_print_uint32(ndr, "use_raw_read", r->use_raw_read);
+ ndr->depth--;
+}
+
+static enum ndr_err_code ndr_push_wkssvc_NetWkstaInfo1055(struct ndr_push *ndr, int ndr_flags, const struct wkssvc_NetWkstaInfo1055 *r)
+{
+ if (ndr_flags & NDR_SCALARS) {
+ NDR_CHECK(ndr_push_align(ndr, 4));
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->use_raw_write));
+ }
+ if (ndr_flags & NDR_BUFFERS) {
+ }
+ return NDR_ERR_SUCCESS;
+}
+
+static enum ndr_err_code ndr_pull_wkssvc_NetWkstaInfo1055(struct ndr_pull *ndr, int ndr_flags, struct wkssvc_NetWkstaInfo1055 *r)
+{
+ if (ndr_flags & NDR_SCALARS) {
+ NDR_CHECK(ndr_pull_align(ndr, 4));
+ NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->use_raw_write));
+ }
+ if (ndr_flags & NDR_BUFFERS) {
+ }
+ return NDR_ERR_SUCCESS;
+}
+
+_PUBLIC_ void ndr_print_wkssvc_NetWkstaInfo1055(struct ndr_print *ndr, const char *name, const struct wkssvc_NetWkstaInfo1055 *r)
+{
+ ndr_print_struct(ndr, name, "wkssvc_NetWkstaInfo1055");
+ ndr->depth++;
+ ndr_print_uint32(ndr, "use_raw_write", r->use_raw_write);
+ ndr->depth--;
+}
+
+static enum ndr_err_code ndr_push_wkssvc_NetWkstaInfo1056(struct ndr_push *ndr, int ndr_flags, const struct wkssvc_NetWkstaInfo1056 *r)
+{
+ if (ndr_flags & NDR_SCALARS) {
+ NDR_CHECK(ndr_push_align(ndr, 4));
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->use_write_raw_data));
+ }
+ if (ndr_flags & NDR_BUFFERS) {
+ }
+ return NDR_ERR_SUCCESS;
+}
+
+static enum ndr_err_code ndr_pull_wkssvc_NetWkstaInfo1056(struct ndr_pull *ndr, int ndr_flags, struct wkssvc_NetWkstaInfo1056 *r)
+{
+ if (ndr_flags & NDR_SCALARS) {
+ NDR_CHECK(ndr_pull_align(ndr, 4));
+ NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->use_write_raw_data));
+ }
+ if (ndr_flags & NDR_BUFFERS) {
+ }
+ return NDR_ERR_SUCCESS;
+}
+
+_PUBLIC_ void ndr_print_wkssvc_NetWkstaInfo1056(struct ndr_print *ndr, const char *name, const struct wkssvc_NetWkstaInfo1056 *r)
+{
+ ndr_print_struct(ndr, name, "wkssvc_NetWkstaInfo1056");
+ ndr->depth++;
+ ndr_print_uint32(ndr, "use_write_raw_data", r->use_write_raw_data);
+ ndr->depth--;
+}
+
+static enum ndr_err_code ndr_push_wkssvc_NetWkstaInfo1057(struct ndr_push *ndr, int ndr_flags, const struct wkssvc_NetWkstaInfo1057 *r)
+{
+ if (ndr_flags & NDR_SCALARS) {
+ NDR_CHECK(ndr_push_align(ndr, 4));
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->use_encryption));
+ }
+ if (ndr_flags & NDR_BUFFERS) {
+ }
+ return NDR_ERR_SUCCESS;
+}
+
+static enum ndr_err_code ndr_pull_wkssvc_NetWkstaInfo1057(struct ndr_pull *ndr, int ndr_flags, struct wkssvc_NetWkstaInfo1057 *r)
+{
+ if (ndr_flags & NDR_SCALARS) {
+ NDR_CHECK(ndr_pull_align(ndr, 4));
+ NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->use_encryption));
+ }
+ if (ndr_flags & NDR_BUFFERS) {
+ }
+ return NDR_ERR_SUCCESS;
+}
+
+_PUBLIC_ void ndr_print_wkssvc_NetWkstaInfo1057(struct ndr_print *ndr, const char *name, const struct wkssvc_NetWkstaInfo1057 *r)
+{
+ ndr_print_struct(ndr, name, "wkssvc_NetWkstaInfo1057");
+ ndr->depth++;
+ ndr_print_uint32(ndr, "use_encryption", r->use_encryption);
+ ndr->depth--;
+}
+
+static enum ndr_err_code ndr_push_wkssvc_NetWkstaInfo1058(struct ndr_push *ndr, int ndr_flags, const struct wkssvc_NetWkstaInfo1058 *r)
+{
+ if (ndr_flags & NDR_SCALARS) {
+ NDR_CHECK(ndr_push_align(ndr, 4));
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->buf_files_deny_write));
+ }
+ if (ndr_flags & NDR_BUFFERS) {
+ }
+ return NDR_ERR_SUCCESS;
+}
+
+static enum ndr_err_code ndr_pull_wkssvc_NetWkstaInfo1058(struct ndr_pull *ndr, int ndr_flags, struct wkssvc_NetWkstaInfo1058 *r)
+{
+ if (ndr_flags & NDR_SCALARS) {
+ NDR_CHECK(ndr_pull_align(ndr, 4));
+ NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->buf_files_deny_write));
+ }
+ if (ndr_flags & NDR_BUFFERS) {
+ }
+ return NDR_ERR_SUCCESS;
+}
+
+_PUBLIC_ void ndr_print_wkssvc_NetWkstaInfo1058(struct ndr_print *ndr, const char *name, const struct wkssvc_NetWkstaInfo1058 *r)
+{
+ ndr_print_struct(ndr, name, "wkssvc_NetWkstaInfo1058");
+ ndr->depth++;
+ ndr_print_uint32(ndr, "buf_files_deny_write", r->buf_files_deny_write);
+ ndr->depth--;
+}
+
+static enum ndr_err_code ndr_push_wkssvc_NetWkstaInfo1059(struct ndr_push *ndr, int ndr_flags, const struct wkssvc_NetWkstaInfo1059 *r)
+{
+ if (ndr_flags & NDR_SCALARS) {
+ NDR_CHECK(ndr_push_align(ndr, 4));
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->buf_read_only_files));
+ }
+ if (ndr_flags & NDR_BUFFERS) {
+ }
+ return NDR_ERR_SUCCESS;
+}
+
+static enum ndr_err_code ndr_pull_wkssvc_NetWkstaInfo1059(struct ndr_pull *ndr, int ndr_flags, struct wkssvc_NetWkstaInfo1059 *r)
+{
+ if (ndr_flags & NDR_SCALARS) {
+ NDR_CHECK(ndr_pull_align(ndr, 4));
+ NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->buf_read_only_files));
+ }
+ if (ndr_flags & NDR_BUFFERS) {
+ }
+ return NDR_ERR_SUCCESS;
+}
+
+_PUBLIC_ void ndr_print_wkssvc_NetWkstaInfo1059(struct ndr_print *ndr, const char *name, const struct wkssvc_NetWkstaInfo1059 *r)
+{
+ ndr_print_struct(ndr, name, "wkssvc_NetWkstaInfo1059");
+ ndr->depth++;
+ ndr_print_uint32(ndr, "buf_read_only_files", r->buf_read_only_files);
+ ndr->depth--;
+}
+
+static enum ndr_err_code ndr_push_wkssvc_NetWkstaInfo1060(struct ndr_push *ndr, int ndr_flags, const struct wkssvc_NetWkstaInfo1060 *r)
+{
+ if (ndr_flags & NDR_SCALARS) {
+ NDR_CHECK(ndr_push_align(ndr, 4));
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->force_core_create_mode));
+ }
+ if (ndr_flags & NDR_BUFFERS) {
+ }
+ return NDR_ERR_SUCCESS;
+}
+
+static enum ndr_err_code ndr_pull_wkssvc_NetWkstaInfo1060(struct ndr_pull *ndr, int ndr_flags, struct wkssvc_NetWkstaInfo1060 *r)
+{
+ if (ndr_flags & NDR_SCALARS) {
+ NDR_CHECK(ndr_pull_align(ndr, 4));
+ NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->force_core_create_mode));
+ }
+ if (ndr_flags & NDR_BUFFERS) {
+ }
+ return NDR_ERR_SUCCESS;
+}
+
+_PUBLIC_ void ndr_print_wkssvc_NetWkstaInfo1060(struct ndr_print *ndr, const char *name, const struct wkssvc_NetWkstaInfo1060 *r)
+{
+ ndr_print_struct(ndr, name, "wkssvc_NetWkstaInfo1060");
+ ndr->depth++;
+ ndr_print_uint32(ndr, "force_core_create_mode", r->force_core_create_mode);
+ ndr->depth--;
+}
+
+static enum ndr_err_code ndr_push_wkssvc_NetWkstaInfo1061(struct ndr_push *ndr, int ndr_flags, const struct wkssvc_NetWkstaInfo1061 *r)
+{
+ if (ndr_flags & NDR_SCALARS) {
+ NDR_CHECK(ndr_push_align(ndr, 4));
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->use_512_byte_max_transfer));
+ }
+ if (ndr_flags & NDR_BUFFERS) {
+ }
+ return NDR_ERR_SUCCESS;
+}
+
+static enum ndr_err_code ndr_pull_wkssvc_NetWkstaInfo1061(struct ndr_pull *ndr, int ndr_flags, struct wkssvc_NetWkstaInfo1061 *r)
+{
+ if (ndr_flags & NDR_SCALARS) {
+ NDR_CHECK(ndr_pull_align(ndr, 4));
+ NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->use_512_byte_max_transfer));
+ }
+ if (ndr_flags & NDR_BUFFERS) {
+ }
+ return NDR_ERR_SUCCESS;
+}
+
+_PUBLIC_ void ndr_print_wkssvc_NetWkstaInfo1061(struct ndr_print *ndr, const char *name, const struct wkssvc_NetWkstaInfo1061 *r)
+{
+ ndr_print_struct(ndr, name, "wkssvc_NetWkstaInfo1061");
+ ndr->depth++;
+ ndr_print_uint32(ndr, "use_512_byte_max_transfer", r->use_512_byte_max_transfer);
+ ndr->depth--;
+}
+
+static enum ndr_err_code ndr_push_wkssvc_NetWkstaInfo1062(struct ndr_push *ndr, int ndr_flags, const struct wkssvc_NetWkstaInfo1062 *r)
+{
+ if (ndr_flags & NDR_SCALARS) {
+ NDR_CHECK(ndr_push_align(ndr, 4));
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->read_ahead_throughput));
+ }
+ if (ndr_flags & NDR_BUFFERS) {
+ }
+ return NDR_ERR_SUCCESS;
+}
+
+static enum ndr_err_code ndr_pull_wkssvc_NetWkstaInfo1062(struct ndr_pull *ndr, int ndr_flags, struct wkssvc_NetWkstaInfo1062 *r)
+{
+ if (ndr_flags & NDR_SCALARS) {
+ NDR_CHECK(ndr_pull_align(ndr, 4));
+ NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->read_ahead_throughput));
+ }
+ if (ndr_flags & NDR_BUFFERS) {
+ }
+ return NDR_ERR_SUCCESS;
+}
+
+_PUBLIC_ void ndr_print_wkssvc_NetWkstaInfo1062(struct ndr_print *ndr, const char *name, const struct wkssvc_NetWkstaInfo1062 *r)
+{
+ ndr_print_struct(ndr, name, "wkssvc_NetWkstaInfo1062");
+ ndr->depth++;
+ ndr_print_uint32(ndr, "read_ahead_throughput", r->read_ahead_throughput);
+ ndr->depth--;
+}
+
static enum ndr_err_code ndr_push_wkssvc_NetWkstaInfo(struct ndr_push *ndr, int ndr_flags, const union wkssvc_NetWkstaInfo *r)
{
if (ndr_flags & NDR_SCALARS) {
@@ -801,10 +1522,106 @@ static enum ndr_err_code ndr_push_wkssvc_NetWkstaInfo(struct ndr_push *ndr, int
NDR_CHECK(ndr_push_unique_ptr(ndr, r->info1027));
break;
+ case 1028:
+ NDR_CHECK(ndr_push_unique_ptr(ndr, r->info1028));
+ break;
+
+ case 1032:
+ NDR_CHECK(ndr_push_unique_ptr(ndr, r->info1032));
+ break;
+
case 1033:
NDR_CHECK(ndr_push_unique_ptr(ndr, r->info1033));
break;
+ case 1041:
+ NDR_CHECK(ndr_push_unique_ptr(ndr, r->info1041));
+ break;
+
+ case 1042:
+ NDR_CHECK(ndr_push_unique_ptr(ndr, r->info1042));
+ break;
+
+ case 1043:
+ NDR_CHECK(ndr_push_unique_ptr(ndr, r->info1043));
+ break;
+
+ case 1044:
+ NDR_CHECK(ndr_push_unique_ptr(ndr, r->info1044));
+ break;
+
+ case 1045:
+ NDR_CHECK(ndr_push_unique_ptr(ndr, r->info1045));
+ break;
+
+ case 1046:
+ NDR_CHECK(ndr_push_unique_ptr(ndr, r->info1046));
+ break;
+
+ case 1047:
+ NDR_CHECK(ndr_push_unique_ptr(ndr, r->info1047));
+ break;
+
+ case 1048:
+ NDR_CHECK(ndr_push_unique_ptr(ndr, r->info1048));
+ break;
+
+ case 1049:
+ NDR_CHECK(ndr_push_unique_ptr(ndr, r->info1049));
+ break;
+
+ case 1050:
+ NDR_CHECK(ndr_push_unique_ptr(ndr, r->info1050));
+ break;
+
+ case 1051:
+ NDR_CHECK(ndr_push_unique_ptr(ndr, r->info1051));
+ break;
+
+ case 1052:
+ NDR_CHECK(ndr_push_unique_ptr(ndr, r->info1052));
+ break;
+
+ case 1053:
+ NDR_CHECK(ndr_push_unique_ptr(ndr, r->info1053));
+ break;
+
+ case 1054:
+ NDR_CHECK(ndr_push_unique_ptr(ndr, r->info1054));
+ break;
+
+ case 1055:
+ NDR_CHECK(ndr_push_unique_ptr(ndr, r->info1055));
+ break;
+
+ case 1056:
+ NDR_CHECK(ndr_push_unique_ptr(ndr, r->info1056));
+ break;
+
+ case 1057:
+ NDR_CHECK(ndr_push_unique_ptr(ndr, r->info1057));
+ break;
+
+ case 1058:
+ NDR_CHECK(ndr_push_unique_ptr(ndr, r->info1058));
+ break;
+
+ case 1059:
+ NDR_CHECK(ndr_push_unique_ptr(ndr, r->info1059));
+ break;
+
+ case 1060:
+ NDR_CHECK(ndr_push_unique_ptr(ndr, r->info1060));
+ break;
+
+ case 1061:
+ NDR_CHECK(ndr_push_unique_ptr(ndr, r->info1061));
+ break;
+
+ case 1062:
+ NDR_CHECK(ndr_push_unique_ptr(ndr, r->info1062));
+ break;
+
default:
break;
@@ -879,12 +1696,156 @@ static enum ndr_err_code ndr_push_wkssvc_NetWkstaInfo(struct ndr_push *ndr, int
}
break;
+ case 1028:
+ if (r->info1028) {
+ NDR_CHECK(ndr_push_wkssvc_NetWkstaInfo1028(ndr, NDR_SCALARS, r->info1028));
+ }
+ break;
+
+ case 1032:
+ if (r->info1032) {
+ NDR_CHECK(ndr_push_wkssvc_NetWkstaInfo1032(ndr, NDR_SCALARS, r->info1032));
+ }
+ break;
+
case 1033:
if (r->info1033) {
NDR_CHECK(ndr_push_wkssvc_NetWkstaInfo1033(ndr, NDR_SCALARS, r->info1033));
}
break;
+ case 1041:
+ if (r->info1041) {
+ NDR_CHECK(ndr_push_wkssvc_NetWkstaInfo1041(ndr, NDR_SCALARS, r->info1041));
+ }
+ break;
+
+ case 1042:
+ if (r->info1042) {
+ NDR_CHECK(ndr_push_wkssvc_NetWkstaInfo1042(ndr, NDR_SCALARS, r->info1042));
+ }
+ break;
+
+ case 1043:
+ if (r->info1043) {
+ NDR_CHECK(ndr_push_wkssvc_NetWkstaInfo1043(ndr, NDR_SCALARS, r->info1043));
+ }
+ break;
+
+ case 1044:
+ if (r->info1044) {
+ NDR_CHECK(ndr_push_wkssvc_NetWkstaInfo1044(ndr, NDR_SCALARS, r->info1044));
+ }
+ break;
+
+ case 1045:
+ if (r->info1045) {
+ NDR_CHECK(ndr_push_wkssvc_NetWkstaInfo1045(ndr, NDR_SCALARS, r->info1045));
+ }
+ break;
+
+ case 1046:
+ if (r->info1046) {
+ NDR_CHECK(ndr_push_wkssvc_NetWkstaInfo1046(ndr, NDR_SCALARS, r->info1046));
+ }
+ break;
+
+ case 1047:
+ if (r->info1047) {
+ NDR_CHECK(ndr_push_wkssvc_NetWkstaInfo1047(ndr, NDR_SCALARS, r->info1047));
+ }
+ break;
+
+ case 1048:
+ if (r->info1048) {
+ NDR_CHECK(ndr_push_wkssvc_NetWkstaInfo1048(ndr, NDR_SCALARS, r->info1048));
+ }
+ break;
+
+ case 1049:
+ if (r->info1049) {
+ NDR_CHECK(ndr_push_wkssvc_NetWkstaInfo1049(ndr, NDR_SCALARS, r->info1049));
+ }
+ break;
+
+ case 1050:
+ if (r->info1050) {
+ NDR_CHECK(ndr_push_wkssvc_NetWkstaInfo1050(ndr, NDR_SCALARS, r->info1050));
+ }
+ break;
+
+ case 1051:
+ if (r->info1051) {
+ NDR_CHECK(ndr_push_wkssvc_NetWkstaInfo1051(ndr, NDR_SCALARS, r->info1051));
+ }
+ break;
+
+ case 1052:
+ if (r->info1052) {
+ NDR_CHECK(ndr_push_wkssvc_NetWkstaInfo1052(ndr, NDR_SCALARS, r->info1052));
+ }
+ break;
+
+ case 1053:
+ if (r->info1053) {
+ NDR_CHECK(ndr_push_wkssvc_NetWkstaInfo1053(ndr, NDR_SCALARS, r->info1053));
+ }
+ break;
+
+ case 1054:
+ if (r->info1054) {
+ NDR_CHECK(ndr_push_wkssvc_NetWkstaInfo1054(ndr, NDR_SCALARS, r->info1054));
+ }
+ break;
+
+ case 1055:
+ if (r->info1055) {
+ NDR_CHECK(ndr_push_wkssvc_NetWkstaInfo1055(ndr, NDR_SCALARS, r->info1055));
+ }
+ break;
+
+ case 1056:
+ if (r->info1056) {
+ NDR_CHECK(ndr_push_wkssvc_NetWkstaInfo1056(ndr, NDR_SCALARS, r->info1056));
+ }
+ break;
+
+ case 1057:
+ if (r->info1057) {
+ NDR_CHECK(ndr_push_wkssvc_NetWkstaInfo1057(ndr, NDR_SCALARS, r->info1057));
+ }
+ break;
+
+ case 1058:
+ if (r->info1058) {
+ NDR_CHECK(ndr_push_wkssvc_NetWkstaInfo1058(ndr, NDR_SCALARS, r->info1058));
+ }
+ break;
+
+ case 1059:
+ if (r->info1059) {
+ NDR_CHECK(ndr_push_wkssvc_NetWkstaInfo1059(ndr, NDR_SCALARS, r->info1059));
+ }
+ break;
+
+ case 1060:
+ if (r->info1060) {
+ NDR_CHECK(ndr_push_wkssvc_NetWkstaInfo1060(ndr, NDR_SCALARS, r->info1060));
+ }
+ break;
+
+ case 1061:
+ if (r->info1061) {
+ NDR_CHECK(ndr_push_wkssvc_NetWkstaInfo1061(ndr, NDR_SCALARS, r->info1061));
+ }
+ break;
+
+ case 1062:
+ if (r->info1062) {
+ NDR_CHECK(ndr_push_wkssvc_NetWkstaInfo1062(ndr, NDR_SCALARS, r->info1062));
+ }
+ break;
+
default:
break;
@@ -908,7 +1869,31 @@ static enum ndr_err_code ndr_pull_wkssvc_NetWkstaInfo(struct ndr_pull *ndr, int
TALLOC_CTX *_mem_save_info1018_0;
TALLOC_CTX *_mem_save_info1023_0;
TALLOC_CTX *_mem_save_info1027_0;
+ TALLOC_CTX *_mem_save_info1028_0;
+ TALLOC_CTX *_mem_save_info1032_0;
TALLOC_CTX *_mem_save_info1033_0;
+ TALLOC_CTX *_mem_save_info1041_0;
+ TALLOC_CTX *_mem_save_info1042_0;
+ TALLOC_CTX *_mem_save_info1043_0;
+ TALLOC_CTX *_mem_save_info1044_0;
+ TALLOC_CTX *_mem_save_info1045_0;
+ TALLOC_CTX *_mem_save_info1046_0;
+ TALLOC_CTX *_mem_save_info1047_0;
+ TALLOC_CTX *_mem_save_info1048_0;
+ TALLOC_CTX *_mem_save_info1049_0;
+ TALLOC_CTX *_mem_save_info1050_0;
+ TALLOC_CTX *_mem_save_info1051_0;
+ TALLOC_CTX *_mem_save_info1052_0;
+ TALLOC_CTX *_mem_save_info1053_0;
+ TALLOC_CTX *_mem_save_info1054_0;
+ TALLOC_CTX *_mem_save_info1055_0;
+ TALLOC_CTX *_mem_save_info1056_0;
+ TALLOC_CTX *_mem_save_info1057_0;
+ TALLOC_CTX *_mem_save_info1058_0;
+ TALLOC_CTX *_mem_save_info1059_0;
+ TALLOC_CTX *_mem_save_info1060_0;
+ TALLOC_CTX *_mem_save_info1061_0;
+ TALLOC_CTX *_mem_save_info1062_0;
level = ndr_pull_get_switch_value(ndr, r);
if (ndr_flags & NDR_SCALARS) {
NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &_level));
@@ -1026,6 +2011,26 @@ static enum ndr_err_code ndr_pull_wkssvc_NetWkstaInfo(struct ndr_pull *ndr, int
}
break; }
+ case 1028: {
+ uint32_t _ptr_info1028;
+ NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_info1028));
+ if (_ptr_info1028) {
+ NDR_PULL_ALLOC(ndr, r->info1028);
+ } else {
+ r->info1028 = NULL;
+ }
+ break; }
+
+ case 1032: {
+ uint32_t _ptr_info1032;
+ NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_info1032));
+ if (_ptr_info1032) {
+ NDR_PULL_ALLOC(ndr, r->info1032);
+ } else {
+ r->info1032 = NULL;
+ }
+ break; }
+
case 1033: {
uint32_t _ptr_info1033;
NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_info1033));
@@ -1036,6 +2041,226 @@ static enum ndr_err_code ndr_pull_wkssvc_NetWkstaInfo(struct ndr_pull *ndr, int
}
break; }
+ case 1041: {
+ uint32_t _ptr_info1041;
+ NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_info1041));
+ if (_ptr_info1041) {
+ NDR_PULL_ALLOC(ndr, r->info1041);
+ } else {
+ r->info1041 = NULL;
+ }
+ break; }
+
+ case 1042: {
+ uint32_t _ptr_info1042;
+ NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_info1042));
+ if (_ptr_info1042) {
+ NDR_PULL_ALLOC(ndr, r->info1042);
+ } else {
+ r->info1042 = NULL;
+ }
+ break; }
+
+ case 1043: {
+ uint32_t _ptr_info1043;
+ NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_info1043));
+ if (_ptr_info1043) {
+ NDR_PULL_ALLOC(ndr, r->info1043);
+ } else {
+ r->info1043 = NULL;
+ }
+ break; }
+
+ case 1044: {
+ uint32_t _ptr_info1044;
+ NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_info1044));
+ if (_ptr_info1044) {
+ NDR_PULL_ALLOC(ndr, r->info1044);
+ } else {
+ r->info1044 = NULL;
+ }
+ break; }
+
+ case 1045: {
+ uint32_t _ptr_info1045;
+ NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_info1045));
+ if (_ptr_info1045) {
+ NDR_PULL_ALLOC(ndr, r->info1045);
+ } else {
+ r->info1045 = NULL;
+ }
+ break; }
+
+ case 1046: {
+ uint32_t _ptr_info1046;
+ NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_info1046));
+ if (_ptr_info1046) {
+ NDR_PULL_ALLOC(ndr, r->info1046);
+ } else {
+ r->info1046 = NULL;
+ }
+ break; }
+
+ case 1047: {
+ uint32_t _ptr_info1047;
+ NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_info1047));
+ if (_ptr_info1047) {
+ NDR_PULL_ALLOC(ndr, r->info1047);
+ } else {
+ r->info1047 = NULL;
+ }
+ break; }
+
+ case 1048: {
+ uint32_t _ptr_info1048;
+ NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_info1048));
+ if (_ptr_info1048) {
+ NDR_PULL_ALLOC(ndr, r->info1048);
+ } else {
+ r->info1048 = NULL;
+ }
+ break; }
+
+ case 1049: {
+ uint32_t _ptr_info1049;
+ NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_info1049));
+ if (_ptr_info1049) {
+ NDR_PULL_ALLOC(ndr, r->info1049);
+ } else {
+ r->info1049 = NULL;
+ }
+ break; }
+
+ case 1050: {
+ uint32_t _ptr_info1050;
+ NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_info1050));
+ if (_ptr_info1050) {
+ NDR_PULL_ALLOC(ndr, r->info1050);
+ } else {
+ r->info1050 = NULL;
+ }
+ break; }
+
+ case 1051: {
+ uint32_t _ptr_info1051;
+ NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_info1051));
+ if (_ptr_info1051) {
+ NDR_PULL_ALLOC(ndr, r->info1051);
+ } else {
+ r->info1051 = NULL;
+ }
+ break; }
+
+ case 1052: {
+ uint32_t _ptr_info1052;
+ NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_info1052));
+ if (_ptr_info1052) {
+ NDR_PULL_ALLOC(ndr, r->info1052);
+ } else {
+ r->info1052 = NULL;
+ }
+ break; }
+
+ case 1053: {
+ uint32_t _ptr_info1053;
+ NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_info1053));
+ if (_ptr_info1053) {
+ NDR_PULL_ALLOC(ndr, r->info1053);
+ } else {
+ r->info1053 = NULL;
+ }
+ break; }
+
+ case 1054: {
+ uint32_t _ptr_info1054;
+ NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_info1054));
+ if (_ptr_info1054) {
+ NDR_PULL_ALLOC(ndr, r->info1054);
+ } else {
+ r->info1054 = NULL;
+ }
+ break; }
+
+ case 1055: {
+ uint32_t _ptr_info1055;
+ NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_info1055));
+ if (_ptr_info1055) {
+ NDR_PULL_ALLOC(ndr, r->info1055);
+ } else {
+ r->info1055 = NULL;
+ }
+ break; }
+
+ case 1056: {
+ uint32_t _ptr_info1056;
+ NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_info1056));
+ if (_ptr_info1056) {
+ NDR_PULL_ALLOC(ndr, r->info1056);
+ } else {
+ r->info1056 = NULL;
+ }
+ break; }
+
+ case 1057: {
+ uint32_t _ptr_info1057;
+ NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_info1057));
+ if (_ptr_info1057) {
+ NDR_PULL_ALLOC(ndr, r->info1057);
+ } else {
+ r->info1057 = NULL;
+ }
+ break; }
+
+ case 1058: {
+ uint32_t _ptr_info1058;
+ NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_info1058));
+ if (_ptr_info1058) {
+ NDR_PULL_ALLOC(ndr, r->info1058);
+ } else {
+ r->info1058 = NULL;
+ }
+ break; }
+
+ case 1059: {
+ uint32_t _ptr_info1059;
+ NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_info1059));
+ if (_ptr_info1059) {
+ NDR_PULL_ALLOC(ndr, r->info1059);
+ } else {
+ r->info1059 = NULL;
+ }
+ break; }
+
+ case 1060: {
+ uint32_t _ptr_info1060;
+ NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_info1060));
+ if (_ptr_info1060) {
+ NDR_PULL_ALLOC(ndr, r->info1060);
+ } else {
+ r->info1060 = NULL;
+ }
+ break; }
+
+ case 1061: {
+ uint32_t _ptr_info1061;
+ NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_info1061));
+ if (_ptr_info1061) {
+ NDR_PULL_ALLOC(ndr, r->info1061);
+ } else {
+ r->info1061 = NULL;
+ }
+ break; }
+
+ case 1062: {
+ uint32_t _ptr_info1062;
+ NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_info1062));
+ if (_ptr_info1062) {
+ NDR_PULL_ALLOC(ndr, r->info1062);
+ } else {
+ r->info1062 = NULL;
+ }
+ break; }
+
default: {
break; }
@@ -1142,6 +2367,24 @@ static enum ndr_err_code ndr_pull_wkssvc_NetWkstaInfo(struct ndr_pull *ndr, int
}
break;
+ case 1028:
+ if (r->info1028) {
+ _mem_save_info1028_0 = NDR_PULL_GET_MEM_CTX(ndr);
+ NDR_PULL_SET_MEM_CTX(ndr, r->info1028, 0);
+ NDR_CHECK(ndr_pull_wkssvc_NetWkstaInfo1028(ndr, NDR_SCALARS, r->info1028));
+ NDR_PULL_SET_MEM_CTX(ndr, _mem_save_info1028_0, 0);
+ }
+ break;
+
+ case 1032:
+ if (r->info1032) {
+ _mem_save_info1032_0 = NDR_PULL_GET_MEM_CTX(ndr);
+ NDR_PULL_SET_MEM_CTX(ndr, r->info1032, 0);
+ NDR_CHECK(ndr_pull_wkssvc_NetWkstaInfo1032(ndr, NDR_SCALARS, r->info1032));
+ NDR_PULL_SET_MEM_CTX(ndr, _mem_save_info1032_0, 0);
+ }
+ break;
+
case 1033:
if (r->info1033) {
_mem_save_info1033_0 = NDR_PULL_GET_MEM_CTX(ndr);
@@ -1151,6 +2394,204 @@ static enum ndr_err_code ndr_pull_wkssvc_NetWkstaInfo(struct ndr_pull *ndr, int
}
break;
+ case 1041:
+ if (r->info1041) {
+ _mem_save_info1041_0 = NDR_PULL_GET_MEM_CTX(ndr);
+ NDR_PULL_SET_MEM_CTX(ndr, r->info1041, 0);
+ NDR_CHECK(ndr_pull_wkssvc_NetWkstaInfo1041(ndr, NDR_SCALARS, r->info1041));
+ NDR_PULL_SET_MEM_CTX(ndr, _mem_save_info1041_0, 0);
+ }
+ break;
+
+ case 1042:
+ if (r->info1042) {
+ _mem_save_info1042_0 = NDR_PULL_GET_MEM_CTX(ndr);
+ NDR_PULL_SET_MEM_CTX(ndr, r->info1042, 0);
+ NDR_CHECK(ndr_pull_wkssvc_NetWkstaInfo1042(ndr, NDR_SCALARS, r->info1042));
+ NDR_PULL_SET_MEM_CTX(ndr, _mem_save_info1042_0, 0);
+ }
+ break;
+
+ case 1043:
+ if (r->info1043) {
+ _mem_save_info1043_0 = NDR_PULL_GET_MEM_CTX(ndr);
+ NDR_PULL_SET_MEM_CTX(ndr, r->info1043, 0);
+ NDR_CHECK(ndr_pull_wkssvc_NetWkstaInfo1043(ndr, NDR_SCALARS, r->info1043));
+ NDR_PULL_SET_MEM_CTX(ndr, _mem_save_info1043_0, 0);
+ }
+ break;
+
+ case 1044:
+ if (r->info1044) {
+ _mem_save_info1044_0 = NDR_PULL_GET_MEM_CTX(ndr);
+ NDR_PULL_SET_MEM_CTX(ndr, r->info1044, 0);
+ NDR_CHECK(ndr_pull_wkssvc_NetWkstaInfo1044(ndr, NDR_SCALARS, r->info1044));
+ NDR_PULL_SET_MEM_CTX(ndr, _mem_save_info1044_0, 0);
+ }
+ break;
+
+ case 1045:
+ if (r->info1045) {
+ _mem_save_info1045_0 = NDR_PULL_GET_MEM_CTX(ndr);
+ NDR_PULL_SET_MEM_CTX(ndr, r->info1045, 0);
+ NDR_CHECK(ndr_pull_wkssvc_NetWkstaInfo1045(ndr, NDR_SCALARS, r->info1045));
+ NDR_PULL_SET_MEM_CTX(ndr, _mem_save_info1045_0, 0);
+ }
+ break;
+
+ case 1046:
+ if (r->info1046) {
+ _mem_save_info1046_0 = NDR_PULL_GET_MEM_CTX(ndr);
+ NDR_PULL_SET_MEM_CTX(ndr, r->info1046, 0);
+ NDR_CHECK(ndr_pull_wkssvc_NetWkstaInfo1046(ndr, NDR_SCALARS, r->info1046));
+ NDR_PULL_SET_MEM_CTX(ndr, _mem_save_info1046_0, 0);
+ }
+ break;
+
+ case 1047:
+ if (r->info1047) {
+ _mem_save_info1047_0 = NDR_PULL_GET_MEM_CTX(ndr);
+ NDR_PULL_SET_MEM_CTX(ndr, r->info1047, 0);
+ NDR_CHECK(ndr_pull_wkssvc_NetWkstaInfo1047(ndr, NDR_SCALARS, r->info1047));
+ NDR_PULL_SET_MEM_CTX(ndr, _mem_save_info1047_0, 0);
+ }
+ break;
+
+ case 1048:
+ if (r->info1048) {
+ _mem_save_info1048_0 = NDR_PULL_GET_MEM_CTX(ndr);
+ NDR_PULL_SET_MEM_CTX(ndr, r->info1048, 0);
+ NDR_CHECK(ndr_pull_wkssvc_NetWkstaInfo1048(ndr, NDR_SCALARS, r->info1048));
+ NDR_PULL_SET_MEM_CTX(ndr, _mem_save_info1048_0, 0);
+ }
+ break;
+
+ case 1049:
+ if (r->info1049) {
+ _mem_save_info1049_0 = NDR_PULL_GET_MEM_CTX(ndr);
+ NDR_PULL_SET_MEM_CTX(ndr, r->info1049, 0);
+ NDR_CHECK(ndr_pull_wkssvc_NetWkstaInfo1049(ndr, NDR_SCALARS, r->info1049));
+ NDR_PULL_SET_MEM_CTX(ndr, _mem_save_info1049_0, 0);
+ }
+ break;
+
+ case 1050:
+ if (r->info1050) {
+ _mem_save_info1050_0 = NDR_PULL_GET_MEM_CTX(ndr);
+ NDR_PULL_SET_MEM_CTX(ndr, r->info1050, 0);
+ NDR_CHECK(ndr_pull_wkssvc_NetWkstaInfo1050(ndr, NDR_SCALARS, r->info1050));
+ NDR_PULL_SET_MEM_CTX(ndr, _mem_save_info1050_0, 0);
+ }
+ break;
+
+ case 1051:
+ if (r->info1051) {
+ _mem_save_info1051_0 = NDR_PULL_GET_MEM_CTX(ndr);
+ NDR_PULL_SET_MEM_CTX(ndr, r->info1051, 0);
+ NDR_CHECK(ndr_pull_wkssvc_NetWkstaInfo1051(ndr, NDR_SCALARS, r->info1051));
+ NDR_PULL_SET_MEM_CTX(ndr, _mem_save_info1051_0, 0);
+ }
+ break;
+
+ case 1052:
+ if (r->info1052) {
+ _mem_save_info1052_0 = NDR_PULL_GET_MEM_CTX(ndr);
+ NDR_PULL_SET_MEM_CTX(ndr, r->info1052, 0);
+ NDR_CHECK(ndr_pull_wkssvc_NetWkstaInfo1052(ndr, NDR_SCALARS, r->info1052));
+ NDR_PULL_SET_MEM_CTX(ndr, _mem_save_info1052_0, 0);
+ }
+ break;
+
+ case 1053:
+ if (r->info1053) {
+ _mem_save_info1053_0 = NDR_PULL_GET_MEM_CTX(ndr);
+ NDR_PULL_SET_MEM_CTX(ndr, r->info1053, 0);
+ NDR_CHECK(ndr_pull_wkssvc_NetWkstaInfo1053(ndr, NDR_SCALARS, r->info1053));
+ NDR_PULL_SET_MEM_CTX(ndr, _mem_save_info1053_0, 0);
+ }
+ break;
+
+ case 1054:
+ if (r->info1054) {
+ _mem_save_info1054_0 = NDR_PULL_GET_MEM_CTX(ndr);
+ NDR_PULL_SET_MEM_CTX(ndr, r->info1054, 0);
+ NDR_CHECK(ndr_pull_wkssvc_NetWkstaInfo1054(ndr, NDR_SCALARS, r->info1054));
+ NDR_PULL_SET_MEM_CTX(ndr, _mem_save_info1054_0, 0);
+ }
+ break;
+
+ case 1055:
+ if (r->info1055) {
+ _mem_save_info1055_0 = NDR_PULL_GET_MEM_CTX(ndr);
+ NDR_PULL_SET_MEM_CTX(ndr, r->info1055, 0);
+ NDR_CHECK(ndr_pull_wkssvc_NetWkstaInfo1055(ndr, NDR_SCALARS, r->info1055));
+ NDR_PULL_SET_MEM_CTX(ndr, _mem_save_info1055_0, 0);
+ }
+ break;
+
+ case 1056:
+ if (r->info1056) {
+ _mem_save_info1056_0 = NDR_PULL_GET_MEM_CTX(ndr);
+ NDR_PULL_SET_MEM_CTX(ndr, r->info1056, 0);
+ NDR_CHECK(ndr_pull_wkssvc_NetWkstaInfo1056(ndr, NDR_SCALARS, r->info1056));
+ NDR_PULL_SET_MEM_CTX(ndr, _mem_save_info1056_0, 0);
+ }
+ break;
+
+ case 1057:
+ if (r->info1057) {
+ _mem_save_info1057_0 = NDR_PULL_GET_MEM_CTX(ndr);
+ NDR_PULL_SET_MEM_CTX(ndr, r->info1057, 0);
+ NDR_CHECK(ndr_pull_wkssvc_NetWkstaInfo1057(ndr, NDR_SCALARS, r->info1057));
+ NDR_PULL_SET_MEM_CTX(ndr, _mem_save_info1057_0, 0);
+ }
+ break;
+
+ case 1058:
+ if (r->info1058) {
+ _mem_save_info1058_0 = NDR_PULL_GET_MEM_CTX(ndr);
+ NDR_PULL_SET_MEM_CTX(ndr, r->info1058, 0);
+ NDR_CHECK(ndr_pull_wkssvc_NetWkstaInfo1058(ndr, NDR_SCALARS, r->info1058));
+ NDR_PULL_SET_MEM_CTX(ndr, _mem_save_info1058_0, 0);
+ }
+ break;
+
+ case 1059:
+ if (r->info1059) {
+ _mem_save_info1059_0 = NDR_PULL_GET_MEM_CTX(ndr);
+ NDR_PULL_SET_MEM_CTX(ndr, r->info1059, 0);
+ NDR_CHECK(ndr_pull_wkssvc_NetWkstaInfo1059(ndr, NDR_SCALARS, r->info1059));
+ NDR_PULL_SET_MEM_CTX(ndr, _mem_save_info1059_0, 0);
+ }
+ break;
+
+ case 1060:
+ if (r->info1060) {
+ _mem_save_info1060_0 = NDR_PULL_GET_MEM_CTX(ndr);
+ NDR_PULL_SET_MEM_CTX(ndr, r->info1060, 0);
+ NDR_CHECK(ndr_pull_wkssvc_NetWkstaInfo1060(ndr, NDR_SCALARS, r->info1060));
+ NDR_PULL_SET_MEM_CTX(ndr, _mem_save_info1060_0, 0);
+ }
+ break;
+
+ case 1061:
+ if (r->info1061) {
+ _mem_save_info1061_0 = NDR_PULL_GET_MEM_CTX(ndr);
+ NDR_PULL_SET_MEM_CTX(ndr, r->info1061, 0);
+ NDR_CHECK(ndr_pull_wkssvc_NetWkstaInfo1061(ndr, NDR_SCALARS, r->info1061));
+ NDR_PULL_SET_MEM_CTX(ndr, _mem_save_info1061_0, 0);
+ }
+ break;
+
+ case 1062:
+ if (r->info1062) {
+ _mem_save_info1062_0 = NDR_PULL_GET_MEM_CTX(ndr);
+ NDR_PULL_SET_MEM_CTX(ndr, r->info1062, 0);
+ NDR_CHECK(ndr_pull_wkssvc_NetWkstaInfo1062(ndr, NDR_SCALARS, r->info1062));
+ NDR_PULL_SET_MEM_CTX(ndr, _mem_save_info1062_0, 0);
+ }
+ break;
+
default:
break;
@@ -1264,6 +2705,24 @@ _PUBLIC_ void ndr_print_wkssvc_NetWkstaInfo(struct ndr_print *ndr, const char *n
ndr->depth--;
break;
+ case 1028:
+ ndr_print_ptr(ndr, "info1028", r->info1028);
+ ndr->depth++;
+ if (r->info1028) {
+ ndr_print_wkssvc_NetWkstaInfo1028(ndr, "info1028", r->info1028);
+ }
+ ndr->depth--;
+ break;
+
+ case 1032:
+ ndr_print_ptr(ndr, "info1032", r->info1032);
+ ndr->depth++;
+ if (r->info1032) {
+ ndr_print_wkssvc_NetWkstaInfo1032(ndr, "info1032", r->info1032);
+ }
+ ndr->depth--;
+ break;
+
case 1033:
ndr_print_ptr(ndr, "info1033", r->info1033);
ndr->depth++;
@@ -1273,73 +2732,271 @@ _PUBLIC_ void ndr_print_wkssvc_NetWkstaInfo(struct ndr_print *ndr, const char *n
ndr->depth--;
break;
+ case 1041:
+ ndr_print_ptr(ndr, "info1041", r->info1041);
+ ndr->depth++;
+ if (r->info1041) {
+ ndr_print_wkssvc_NetWkstaInfo1041(ndr, "info1041", r->info1041);
+ }
+ ndr->depth--;
+ break;
+
+ case 1042:
+ ndr_print_ptr(ndr, "info1042", r->info1042);
+ ndr->depth++;
+ if (r->info1042) {
+ ndr_print_wkssvc_NetWkstaInfo1042(ndr, "info1042", r->info1042);
+ }
+ ndr->depth--;
+ break;
+
+ case 1043:
+ ndr_print_ptr(ndr, "info1043", r->info1043);
+ ndr->depth++;
+ if (r->info1043) {
+ ndr_print_wkssvc_NetWkstaInfo1043(ndr, "info1043", r->info1043);
+ }
+ ndr->depth--;
+ break;
+
+ case 1044:
+ ndr_print_ptr(ndr, "info1044", r->info1044);
+ ndr->depth++;
+ if (r->info1044) {
+ ndr_print_wkssvc_NetWkstaInfo1044(ndr, "info1044", r->info1044);
+ }
+ ndr->depth--;
+ break;
+
+ case 1045:
+ ndr_print_ptr(ndr, "info1045", r->info1045);
+ ndr->depth++;
+ if (r->info1045) {
+ ndr_print_wkssvc_NetWkstaInfo1045(ndr, "info1045", r->info1045);
+ }
+ ndr->depth--;
+ break;
+
+ case 1046:
+ ndr_print_ptr(ndr, "info1046", r->info1046);
+ ndr->depth++;
+ if (r->info1046) {
+ ndr_print_wkssvc_NetWkstaInfo1046(ndr, "info1046", r->info1046);
+ }
+ ndr->depth--;
+ break;
+
+ case 1047:
+ ndr_print_ptr(ndr, "info1047", r->info1047);
+ ndr->depth++;
+ if (r->info1047) {
+ ndr_print_wkssvc_NetWkstaInfo1047(ndr, "info1047", r->info1047);
+ }
+ ndr->depth--;
+ break;
+
+ case 1048:
+ ndr_print_ptr(ndr, "info1048", r->info1048);
+ ndr->depth++;
+ if (r->info1048) {
+ ndr_print_wkssvc_NetWkstaInfo1048(ndr, "info1048", r->info1048);
+ }
+ ndr->depth--;
+ break;
+
+ case 1049:
+ ndr_print_ptr(ndr, "info1049", r->info1049);
+ ndr->depth++;
+ if (r->info1049) {
+ ndr_print_wkssvc_NetWkstaInfo1049(ndr, "info1049", r->info1049);
+ }
+ ndr->depth--;
+ break;
+
+ case 1050:
+ ndr_print_ptr(ndr, "info1050", r->info1050);
+ ndr->depth++;
+ if (r->info1050) {
+ ndr_print_wkssvc_NetWkstaInfo1050(ndr, "info1050", r->info1050);
+ }
+ ndr->depth--;
+ break;
+
+ case 1051:
+ ndr_print_ptr(ndr, "info1051", r->info1051);
+ ndr->depth++;
+ if (r->info1051) {
+ ndr_print_wkssvc_NetWkstaInfo1051(ndr, "info1051", r->info1051);
+ }
+ ndr->depth--;
+ break;
+
+ case 1052:
+ ndr_print_ptr(ndr, "info1052", r->info1052);
+ ndr->depth++;
+ if (r->info1052) {
+ ndr_print_wkssvc_NetWkstaInfo1052(ndr, "info1052", r->info1052);
+ }
+ ndr->depth--;
+ break;
+
+ case 1053:
+ ndr_print_ptr(ndr, "info1053", r->info1053);
+ ndr->depth++;
+ if (r->info1053) {
+ ndr_print_wkssvc_NetWkstaInfo1053(ndr, "info1053", r->info1053);
+ }
+ ndr->depth--;
+ break;
+
+ case 1054:
+ ndr_print_ptr(ndr, "info1054", r->info1054);
+ ndr->depth++;
+ if (r->info1054) {
+ ndr_print_wkssvc_NetWkstaInfo1054(ndr, "info1054", r->info1054);
+ }
+ ndr->depth--;
+ break;
+
+ case 1055:
+ ndr_print_ptr(ndr, "info1055", r->info1055);
+ ndr->depth++;
+ if (r->info1055) {
+ ndr_print_wkssvc_NetWkstaInfo1055(ndr, "info1055", r->info1055);
+ }
+ ndr->depth--;
+ break;
+
+ case 1056:
+ ndr_print_ptr(ndr, "info1056", r->info1056);
+ ndr->depth++;
+ if (r->info1056) {
+ ndr_print_wkssvc_NetWkstaInfo1056(ndr, "info1056", r->info1056);
+ }
+ ndr->depth--;
+ break;
+
+ case 1057:
+ ndr_print_ptr(ndr, "info1057", r->info1057);
+ ndr->depth++;
+ if (r->info1057) {
+ ndr_print_wkssvc_NetWkstaInfo1057(ndr, "info1057", r->info1057);
+ }
+ ndr->depth--;
+ break;
+
+ case 1058:
+ ndr_print_ptr(ndr, "info1058", r->info1058);
+ ndr->depth++;
+ if (r->info1058) {
+ ndr_print_wkssvc_NetWkstaInfo1058(ndr, "info1058", r->info1058);
+ }
+ ndr->depth--;
+ break;
+
+ case 1059:
+ ndr_print_ptr(ndr, "info1059", r->info1059);
+ ndr->depth++;
+ if (r->info1059) {
+ ndr_print_wkssvc_NetWkstaInfo1059(ndr, "info1059", r->info1059);
+ }
+ ndr->depth--;
+ break;
+
+ case 1060:
+ ndr_print_ptr(ndr, "info1060", r->info1060);
+ ndr->depth++;
+ if (r->info1060) {
+ ndr_print_wkssvc_NetWkstaInfo1060(ndr, "info1060", r->info1060);
+ }
+ ndr->depth--;
+ break;
+
+ case 1061:
+ ndr_print_ptr(ndr, "info1061", r->info1061);
+ ndr->depth++;
+ if (r->info1061) {
+ ndr_print_wkssvc_NetWkstaInfo1061(ndr, "info1061", r->info1061);
+ }
+ ndr->depth--;
+ break;
+
+ case 1062:
+ ndr_print_ptr(ndr, "info1062", r->info1062);
+ ndr->depth++;
+ if (r->info1062) {
+ ndr_print_wkssvc_NetWkstaInfo1062(ndr, "info1062", r->info1062);
+ }
+ ndr->depth--;
+ break;
+
default:
break;
}
}
-static enum ndr_err_code ndr_push_USER_INFO_0(struct ndr_push *ndr, int ndr_flags, const struct USER_INFO_0 *r)
+static enum ndr_err_code ndr_push_wkssvc_NetrWkstaUserInfo0(struct ndr_push *ndr, int ndr_flags, const struct wkssvc_NetrWkstaUserInfo0 *r)
{
if (ndr_flags & NDR_SCALARS) {
NDR_CHECK(ndr_push_align(ndr, 4));
- NDR_CHECK(ndr_push_unique_ptr(ndr, r->user));
+ NDR_CHECK(ndr_push_unique_ptr(ndr, r->user_name));
}
if (ndr_flags & NDR_BUFFERS) {
- if (r->user) {
- NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->user, CH_UTF16)));
+ if (r->user_name) {
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->user_name, CH_UTF16)));
NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 0));
- NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->user, CH_UTF16)));
- NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->user, ndr_charset_length(r->user, CH_UTF16), sizeof(uint16_t), CH_UTF16));
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->user_name, CH_UTF16)));
+ NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->user_name, ndr_charset_length(r->user_name, CH_UTF16), sizeof(uint16_t), CH_UTF16));
}
}
return NDR_ERR_SUCCESS;
}
-static enum ndr_err_code ndr_pull_USER_INFO_0(struct ndr_pull *ndr, int ndr_flags, struct USER_INFO_0 *r)
+static enum ndr_err_code ndr_pull_wkssvc_NetrWkstaUserInfo0(struct ndr_pull *ndr, int ndr_flags, struct wkssvc_NetrWkstaUserInfo0 *r)
{
- uint32_t _ptr_user;
- TALLOC_CTX *_mem_save_user_0;
+ uint32_t _ptr_user_name;
+ TALLOC_CTX *_mem_save_user_name_0;
if (ndr_flags & NDR_SCALARS) {
NDR_CHECK(ndr_pull_align(ndr, 4));
- NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_user));
- if (_ptr_user) {
- NDR_PULL_ALLOC(ndr, r->user);
+ NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_user_name));
+ if (_ptr_user_name) {
+ NDR_PULL_ALLOC(ndr, r->user_name);
} else {
- r->user = NULL;
+ r->user_name = NULL;
}
}
if (ndr_flags & NDR_BUFFERS) {
- if (r->user) {
- _mem_save_user_0 = NDR_PULL_GET_MEM_CTX(ndr);
- NDR_PULL_SET_MEM_CTX(ndr, r->user, 0);
- NDR_CHECK(ndr_pull_array_size(ndr, &r->user));
- NDR_CHECK(ndr_pull_array_length(ndr, &r->user));
- if (ndr_get_array_length(ndr, &r->user) > ndr_get_array_size(ndr, &r->user)) {
- return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", ndr_get_array_size(ndr, &r->user), ndr_get_array_length(ndr, &r->user));
+ if (r->user_name) {
+ _mem_save_user_name_0 = NDR_PULL_GET_MEM_CTX(ndr);
+ NDR_PULL_SET_MEM_CTX(ndr, r->user_name, 0);
+ NDR_CHECK(ndr_pull_array_size(ndr, &r->user_name));
+ NDR_CHECK(ndr_pull_array_length(ndr, &r->user_name));
+ if (ndr_get_array_length(ndr, &r->user_name) > ndr_get_array_size(ndr, &r->user_name)) {
+ return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", ndr_get_array_size(ndr, &r->user_name), ndr_get_array_length(ndr, &r->user_name));
}
- NDR_CHECK(ndr_check_string_terminator(ndr, ndr_get_array_length(ndr, &r->user), sizeof(uint16_t)));
- NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->user, ndr_get_array_length(ndr, &r->user), sizeof(uint16_t), CH_UTF16));
- NDR_PULL_SET_MEM_CTX(ndr, _mem_save_user_0, 0);
+ NDR_CHECK(ndr_check_string_terminator(ndr, ndr_get_array_length(ndr, &r->user_name), sizeof(uint16_t)));
+ NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->user_name, ndr_get_array_length(ndr, &r->user_name), sizeof(uint16_t), CH_UTF16));
+ NDR_PULL_SET_MEM_CTX(ndr, _mem_save_user_name_0, 0);
}
}
return NDR_ERR_SUCCESS;
}
-_PUBLIC_ void ndr_print_USER_INFO_0(struct ndr_print *ndr, const char *name, const struct USER_INFO_0 *r)
+_PUBLIC_ void ndr_print_wkssvc_NetrWkstaUserInfo0(struct ndr_print *ndr, const char *name, const struct wkssvc_NetrWkstaUserInfo0 *r)
{
- ndr_print_struct(ndr, name, "USER_INFO_0");
+ ndr_print_struct(ndr, name, "wkssvc_NetrWkstaUserInfo0");
ndr->depth++;
- ndr_print_ptr(ndr, "user", r->user);
+ ndr_print_ptr(ndr, "user_name", r->user_name);
ndr->depth++;
- if (r->user) {
- ndr_print_string(ndr, "user", r->user);
+ if (r->user_name) {
+ ndr_print_string(ndr, "user_name", r->user_name);
}
ndr->depth--;
ndr->depth--;
}
-static enum ndr_err_code ndr_push_USER_INFO_0_CONTAINER(struct ndr_push *ndr, int ndr_flags, const struct USER_INFO_0_CONTAINER *r)
+static enum ndr_err_code ndr_push_wkssvc_NetWkstaEnumUsersCtr0(struct ndr_push *ndr, int ndr_flags, const struct wkssvc_NetWkstaEnumUsersCtr0 *r)
{
uint32_t cntr_user0_1;
if (ndr_flags & NDR_SCALARS) {
@@ -1351,17 +3008,17 @@ static enum ndr_err_code ndr_push_USER_INFO_0_CONTAINER(struct ndr_push *ndr, in
if (r->user0) {
NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->entries_read));
for (cntr_user0_1 = 0; cntr_user0_1 < r->entries_read; cntr_user0_1++) {
- NDR_CHECK(ndr_push_USER_INFO_0(ndr, NDR_SCALARS, &r->user0[cntr_user0_1]));
+ NDR_CHECK(ndr_push_wkssvc_NetrWkstaUserInfo0(ndr, NDR_SCALARS, &r->user0[cntr_user0_1]));
}
for (cntr_user0_1 = 0; cntr_user0_1 < r->entries_read; cntr_user0_1++) {
- NDR_CHECK(ndr_push_USER_INFO_0(ndr, NDR_BUFFERS, &r->user0[cntr_user0_1]));
+ NDR_CHECK(ndr_push_wkssvc_NetrWkstaUserInfo0(ndr, NDR_BUFFERS, &r->user0[cntr_user0_1]));
}
}
}
return NDR_ERR_SUCCESS;
}
-static enum ndr_err_code ndr_pull_USER_INFO_0_CONTAINER(struct ndr_pull *ndr, int ndr_flags, struct USER_INFO_0_CONTAINER *r)
+static enum ndr_err_code ndr_pull_wkssvc_NetWkstaEnumUsersCtr0(struct ndr_pull *ndr, int ndr_flags, struct wkssvc_NetWkstaEnumUsersCtr0 *r)
{
uint32_t _ptr_user0;
uint32_t cntr_user0_1;
@@ -1386,10 +3043,10 @@ static enum ndr_err_code ndr_pull_USER_INFO_0_CONTAINER(struct ndr_pull *ndr, in
_mem_save_user0_1 = NDR_PULL_GET_MEM_CTX(ndr);
NDR_PULL_SET_MEM_CTX(ndr, r->user0, 0);
for (cntr_user0_1 = 0; cntr_user0_1 < r->entries_read; cntr_user0_1++) {
- NDR_CHECK(ndr_pull_USER_INFO_0(ndr, NDR_SCALARS, &r->user0[cntr_user0_1]));
+ NDR_CHECK(ndr_pull_wkssvc_NetrWkstaUserInfo0(ndr, NDR_SCALARS, &r->user0[cntr_user0_1]));
}
for (cntr_user0_1 = 0; cntr_user0_1 < r->entries_read; cntr_user0_1++) {
- NDR_CHECK(ndr_pull_USER_INFO_0(ndr, NDR_BUFFERS, &r->user0[cntr_user0_1]));
+ NDR_CHECK(ndr_pull_wkssvc_NetrWkstaUserInfo0(ndr, NDR_BUFFERS, &r->user0[cntr_user0_1]));
}
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_user0_1, 0);
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_user0_0, 0);
@@ -1401,10 +3058,10 @@ static enum ndr_err_code ndr_pull_USER_INFO_0_CONTAINER(struct ndr_pull *ndr, in
return NDR_ERR_SUCCESS;
}
-_PUBLIC_ void ndr_print_USER_INFO_0_CONTAINER(struct ndr_print *ndr, const char *name, const struct USER_INFO_0_CONTAINER *r)
+_PUBLIC_ void ndr_print_wkssvc_NetWkstaEnumUsersCtr0(struct ndr_print *ndr, const char *name, const struct wkssvc_NetWkstaEnumUsersCtr0 *r)
{
uint32_t cntr_user0_1;
- ndr_print_struct(ndr, name, "USER_INFO_0_CONTAINER");
+ ndr_print_struct(ndr, name, "wkssvc_NetWkstaEnumUsersCtr0");
ndr->depth++;
ndr_print_uint32(ndr, "entries_read", r->entries_read);
ndr_print_ptr(ndr, "user0", r->user0);
@@ -1416,7 +3073,7 @@ _PUBLIC_ void ndr_print_USER_INFO_0_CONTAINER(struct ndr_print *ndr, const char
char *idx_1=NULL;
asprintf(&idx_1, "[%d]", cntr_user0_1);
if (idx_1) {
- ndr_print_USER_INFO_0(ndr, "user0", &r->user0[cntr_user0_1]);
+ ndr_print_wkssvc_NetrWkstaUserInfo0(ndr, "user0", &r->user0[cntr_user0_1]);
free(idx_1);
}
}
@@ -1426,7 +3083,7 @@ _PUBLIC_ void ndr_print_USER_INFO_0_CONTAINER(struct ndr_print *ndr, const char
ndr->depth--;
}
-static enum ndr_err_code ndr_push_USER_INFO_1(struct ndr_push *ndr, int ndr_flags, const struct USER_INFO_1 *r)
+static enum ndr_err_code ndr_push_wkssvc_NetrWkstaUserInfo1(struct ndr_push *ndr, int ndr_flags, const struct wkssvc_NetrWkstaUserInfo1 *r)
{
if (ndr_flags & NDR_SCALARS) {
NDR_CHECK(ndr_push_align(ndr, 4));
@@ -1464,7 +3121,7 @@ static enum ndr_err_code ndr_push_USER_INFO_1(struct ndr_push *ndr, int ndr_flag
return NDR_ERR_SUCCESS;
}
-static enum ndr_err_code ndr_pull_USER_INFO_1(struct ndr_pull *ndr, int ndr_flags, struct USER_INFO_1 *r)
+static enum ndr_err_code ndr_pull_wkssvc_NetrWkstaUserInfo1(struct ndr_pull *ndr, int ndr_flags, struct wkssvc_NetrWkstaUserInfo1 *r)
{
uint32_t _ptr_user_name;
TALLOC_CTX *_mem_save_user_name_0;
@@ -1554,9 +3211,9 @@ static enum ndr_err_code ndr_pull_USER_INFO_1(struct ndr_pull *ndr, int ndr_flag
return NDR_ERR_SUCCESS;
}
-_PUBLIC_ void ndr_print_USER_INFO_1(struct ndr_print *ndr, const char *name, const struct USER_INFO_1 *r)
+_PUBLIC_ void ndr_print_wkssvc_NetrWkstaUserInfo1(struct ndr_print *ndr, const char *name, const struct wkssvc_NetrWkstaUserInfo1 *r)
{
- ndr_print_struct(ndr, name, "USER_INFO_1");
+ ndr_print_struct(ndr, name, "wkssvc_NetrWkstaUserInfo1");
ndr->depth++;
ndr_print_ptr(ndr, "user_name", r->user_name);
ndr->depth++;
@@ -1585,7 +3242,7 @@ _PUBLIC_ void ndr_print_USER_INFO_1(struct ndr_print *ndr, const char *name, con
ndr->depth--;
}
-static enum ndr_err_code ndr_push_USER_INFO_1_CONTAINER(struct ndr_push *ndr, int ndr_flags, const struct USER_INFO_1_CONTAINER *r)
+static enum ndr_err_code ndr_push_wkssvc_NetWkstaEnumUsersCtr1(struct ndr_push *ndr, int ndr_flags, const struct wkssvc_NetWkstaEnumUsersCtr1 *r)
{
uint32_t cntr_user1_1;
if (ndr_flags & NDR_SCALARS) {
@@ -1597,17 +3254,17 @@ static enum ndr_err_code ndr_push_USER_INFO_1_CONTAINER(struct ndr_push *ndr, in
if (r->user1) {
NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->entries_read));
for (cntr_user1_1 = 0; cntr_user1_1 < r->entries_read; cntr_user1_1++) {
- NDR_CHECK(ndr_push_USER_INFO_1(ndr, NDR_SCALARS, &r->user1[cntr_user1_1]));
+ NDR_CHECK(ndr_push_wkssvc_NetrWkstaUserInfo1(ndr, NDR_SCALARS, &r->user1[cntr_user1_1]));
}
for (cntr_user1_1 = 0; cntr_user1_1 < r->entries_read; cntr_user1_1++) {
- NDR_CHECK(ndr_push_USER_INFO_1(ndr, NDR_BUFFERS, &r->user1[cntr_user1_1]));
+ NDR_CHECK(ndr_push_wkssvc_NetrWkstaUserInfo1(ndr, NDR_BUFFERS, &r->user1[cntr_user1_1]));
}
}
}
return NDR_ERR_SUCCESS;
}
-static enum ndr_err_code ndr_pull_USER_INFO_1_CONTAINER(struct ndr_pull *ndr, int ndr_flags, struct USER_INFO_1_CONTAINER *r)
+static enum ndr_err_code ndr_pull_wkssvc_NetWkstaEnumUsersCtr1(struct ndr_pull *ndr, int ndr_flags, struct wkssvc_NetWkstaEnumUsersCtr1 *r)
{
uint32_t _ptr_user1;
uint32_t cntr_user1_1;
@@ -1632,10 +3289,10 @@ static enum ndr_err_code ndr_pull_USER_INFO_1_CONTAINER(struct ndr_pull *ndr, in
_mem_save_user1_1 = NDR_PULL_GET_MEM_CTX(ndr);
NDR_PULL_SET_MEM_CTX(ndr, r->user1, 0);
for (cntr_user1_1 = 0; cntr_user1_1 < r->entries_read; cntr_user1_1++) {
- NDR_CHECK(ndr_pull_USER_INFO_1(ndr, NDR_SCALARS, &r->user1[cntr_user1_1]));
+ NDR_CHECK(ndr_pull_wkssvc_NetrWkstaUserInfo1(ndr, NDR_SCALARS, &r->user1[cntr_user1_1]));
}
for (cntr_user1_1 = 0; cntr_user1_1 < r->entries_read; cntr_user1_1++) {
- NDR_CHECK(ndr_pull_USER_INFO_1(ndr, NDR_BUFFERS, &r->user1[cntr_user1_1]));
+ NDR_CHECK(ndr_pull_wkssvc_NetrWkstaUserInfo1(ndr, NDR_BUFFERS, &r->user1[cntr_user1_1]));
}
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_user1_1, 0);
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_user1_0, 0);
@@ -1647,10 +3304,10 @@ static enum ndr_err_code ndr_pull_USER_INFO_1_CONTAINER(struct ndr_pull *ndr, in
return NDR_ERR_SUCCESS;
}
-_PUBLIC_ void ndr_print_USER_INFO_1_CONTAINER(struct ndr_print *ndr, const char *name, const struct USER_INFO_1_CONTAINER *r)
+_PUBLIC_ void ndr_print_wkssvc_NetWkstaEnumUsersCtr1(struct ndr_print *ndr, const char *name, const struct wkssvc_NetWkstaEnumUsersCtr1 *r)
{
uint32_t cntr_user1_1;
- ndr_print_struct(ndr, name, "USER_INFO_1_CONTAINER");
+ ndr_print_struct(ndr, name, "wkssvc_NetWkstaEnumUsersCtr1");
ndr->depth++;
ndr_print_uint32(ndr, "entries_read", r->entries_read);
ndr_print_ptr(ndr, "user1", r->user1);
@@ -1662,7 +3319,7 @@ _PUBLIC_ void ndr_print_USER_INFO_1_CONTAINER(struct ndr_print *ndr, const char
char *idx_1=NULL;
asprintf(&idx_1, "[%d]", cntr_user1_1);
if (idx_1) {
- ndr_print_USER_INFO_1(ndr, "user1", &r->user1[cntr_user1_1]);
+ ndr_print_wkssvc_NetrWkstaUserInfo1(ndr, "user1", &r->user1[cntr_user1_1]);
free(idx_1);
}
}
@@ -1672,7 +3329,7 @@ _PUBLIC_ void ndr_print_USER_INFO_1_CONTAINER(struct ndr_print *ndr, const char
ndr->depth--;
}
-static enum ndr_err_code ndr_push_WKS_USER_ENUM_UNION(struct ndr_push *ndr, int ndr_flags, const union WKS_USER_ENUM_UNION *r)
+static enum ndr_err_code ndr_push_wkssvc_NetWkstaEnumUsersCtr(struct ndr_push *ndr, int ndr_flags, const union wkssvc_NetWkstaEnumUsersCtr *r)
{
if (ndr_flags & NDR_SCALARS) {
int level = ndr_push_get_switch_value(ndr, r);
@@ -1695,13 +3352,13 @@ static enum ndr_err_code ndr_push_WKS_USER_ENUM_UNION(struct ndr_push *ndr, int
switch (level) {
case 0:
if (r->user0) {
- NDR_CHECK(ndr_push_USER_INFO_0_CONTAINER(ndr, NDR_SCALARS|NDR_BUFFERS, r->user0));
+ NDR_CHECK(ndr_push_wkssvc_NetWkstaEnumUsersCtr0(ndr, NDR_SCALARS|NDR_BUFFERS, r->user0));
}
break;
case 1:
if (r->user1) {
- NDR_CHECK(ndr_push_USER_INFO_1_CONTAINER(ndr, NDR_SCALARS|NDR_BUFFERS, r->user1));
+ NDR_CHECK(ndr_push_wkssvc_NetWkstaEnumUsersCtr1(ndr, NDR_SCALARS|NDR_BUFFERS, r->user1));
}
break;
@@ -1712,7 +3369,7 @@ static enum ndr_err_code ndr_push_WKS_USER_ENUM_UNION(struct ndr_push *ndr, int
return NDR_ERR_SUCCESS;
}
-static enum ndr_err_code ndr_pull_WKS_USER_ENUM_UNION(struct ndr_pull *ndr, int ndr_flags, union WKS_USER_ENUM_UNION *r)
+static enum ndr_err_code ndr_pull_wkssvc_NetWkstaEnumUsersCtr(struct ndr_pull *ndr, int ndr_flags, union wkssvc_NetWkstaEnumUsersCtr *r)
{
int level;
uint32_t _level;
@@ -1755,7 +3412,7 @@ static enum ndr_err_code ndr_pull_WKS_USER_ENUM_UNION(struct ndr_pull *ndr, int
if (r->user0) {
_mem_save_user0_0 = NDR_PULL_GET_MEM_CTX(ndr);
NDR_PULL_SET_MEM_CTX(ndr, r->user0, 0);
- NDR_CHECK(ndr_pull_USER_INFO_0_CONTAINER(ndr, NDR_SCALARS|NDR_BUFFERS, r->user0));
+ NDR_CHECK(ndr_pull_wkssvc_NetWkstaEnumUsersCtr0(ndr, NDR_SCALARS|NDR_BUFFERS, r->user0));
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_user0_0, 0);
}
break;
@@ -1764,7 +3421,7 @@ static enum ndr_err_code ndr_pull_WKS_USER_ENUM_UNION(struct ndr_pull *ndr, int
if (r->user1) {
_mem_save_user1_0 = NDR_PULL_GET_MEM_CTX(ndr);
NDR_PULL_SET_MEM_CTX(ndr, r->user1, 0);
- NDR_CHECK(ndr_pull_USER_INFO_1_CONTAINER(ndr, NDR_SCALARS|NDR_BUFFERS, r->user1));
+ NDR_CHECK(ndr_pull_wkssvc_NetWkstaEnumUsersCtr1(ndr, NDR_SCALARS|NDR_BUFFERS, r->user1));
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_user1_0, 0);
}
break;
@@ -1776,17 +3433,17 @@ static enum ndr_err_code ndr_pull_WKS_USER_ENUM_UNION(struct ndr_pull *ndr, int
return NDR_ERR_SUCCESS;
}
-_PUBLIC_ void ndr_print_WKS_USER_ENUM_UNION(struct ndr_print *ndr, const char *name, const union WKS_USER_ENUM_UNION *r)
+_PUBLIC_ void ndr_print_wkssvc_NetWkstaEnumUsersCtr(struct ndr_print *ndr, const char *name, const union wkssvc_NetWkstaEnumUsersCtr *r)
{
int level;
level = ndr_print_get_switch_value(ndr, r);
- ndr_print_union(ndr, name, level, "WKS_USER_ENUM_UNION");
+ ndr_print_union(ndr, name, level, "wkssvc_NetWkstaEnumUsersCtr");
switch (level) {
case 0:
ndr_print_ptr(ndr, "user0", r->user0);
ndr->depth++;
if (r->user0) {
- ndr_print_USER_INFO_0_CONTAINER(ndr, "user0", r->user0);
+ ndr_print_wkssvc_NetWkstaEnumUsersCtr0(ndr, "user0", r->user0);
}
ndr->depth--;
break;
@@ -1795,7 +3452,277 @@ _PUBLIC_ void ndr_print_WKS_USER_ENUM_UNION(struct ndr_print *ndr, const char *n
ndr_print_ptr(ndr, "user1", r->user1);
ndr->depth++;
if (r->user1) {
- ndr_print_USER_INFO_1_CONTAINER(ndr, "user1", r->user1);
+ ndr_print_wkssvc_NetWkstaEnumUsersCtr1(ndr, "user1", r->user1);
+ }
+ ndr->depth--;
+ break;
+
+ default:
+ ndr_print_bad_level(ndr, name, level);
+ }
+}
+
+static enum ndr_err_code ndr_push_wkssvc_NetWkstaEnumUsersInfo(struct ndr_push *ndr, int ndr_flags, const struct wkssvc_NetWkstaEnumUsersInfo *r)
+{
+ if (ndr_flags & NDR_SCALARS) {
+ NDR_CHECK(ndr_push_align(ndr, 4));
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->level));
+ NDR_CHECK(ndr_push_set_switch_value(ndr, &r->ctr, r->level));
+ NDR_CHECK(ndr_push_wkssvc_NetWkstaEnumUsersCtr(ndr, NDR_SCALARS, &r->ctr));
+ }
+ if (ndr_flags & NDR_BUFFERS) {
+ NDR_CHECK(ndr_push_wkssvc_NetWkstaEnumUsersCtr(ndr, NDR_BUFFERS, &r->ctr));
+ }
+ return NDR_ERR_SUCCESS;
+}
+
+static enum ndr_err_code ndr_pull_wkssvc_NetWkstaEnumUsersInfo(struct ndr_pull *ndr, int ndr_flags, struct wkssvc_NetWkstaEnumUsersInfo *r)
+{
+ if (ndr_flags & NDR_SCALARS) {
+ NDR_CHECK(ndr_pull_align(ndr, 4));
+ NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->level));
+ NDR_CHECK(ndr_pull_set_switch_value(ndr, &r->ctr, r->level));
+ NDR_CHECK(ndr_pull_wkssvc_NetWkstaEnumUsersCtr(ndr, NDR_SCALARS, &r->ctr));
+ }
+ if (ndr_flags & NDR_BUFFERS) {
+ NDR_CHECK(ndr_pull_wkssvc_NetWkstaEnumUsersCtr(ndr, NDR_BUFFERS, &r->ctr));
+ }
+ return NDR_ERR_SUCCESS;
+}
+
+_PUBLIC_ void ndr_print_wkssvc_NetWkstaEnumUsersInfo(struct ndr_print *ndr, const char *name, const struct wkssvc_NetWkstaEnumUsersInfo *r)
+{
+ ndr_print_struct(ndr, name, "wkssvc_NetWkstaEnumUsersInfo");
+ ndr->depth++;
+ ndr_print_uint32(ndr, "level", r->level);
+ ndr_print_set_switch_value(ndr, &r->ctr, r->level);
+ ndr_print_wkssvc_NetWkstaEnumUsersCtr(ndr, "ctr", &r->ctr);
+ ndr->depth--;
+}
+
+static enum ndr_err_code ndr_push_wkssvc_NetrWkstaUserInfo1101(struct ndr_push *ndr, int ndr_flags, const struct wkssvc_NetrWkstaUserInfo1101 *r)
+{
+ if (ndr_flags & NDR_SCALARS) {
+ NDR_CHECK(ndr_push_align(ndr, 4));
+ NDR_CHECK(ndr_push_unique_ptr(ndr, r->other_domains));
+ }
+ if (ndr_flags & NDR_BUFFERS) {
+ if (r->other_domains) {
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->other_domains, CH_UTF16)));
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 0));
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->other_domains, CH_UTF16)));
+ NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->other_domains, ndr_charset_length(r->other_domains, CH_UTF16), sizeof(uint16_t), CH_UTF16));
+ }
+ }
+ return NDR_ERR_SUCCESS;
+}
+
+static enum ndr_err_code ndr_pull_wkssvc_NetrWkstaUserInfo1101(struct ndr_pull *ndr, int ndr_flags, struct wkssvc_NetrWkstaUserInfo1101 *r)
+{
+ uint32_t _ptr_other_domains;
+ TALLOC_CTX *_mem_save_other_domains_0;
+ if (ndr_flags & NDR_SCALARS) {
+ NDR_CHECK(ndr_pull_align(ndr, 4));
+ NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_other_domains));
+ if (_ptr_other_domains) {
+ NDR_PULL_ALLOC(ndr, r->other_domains);
+ } else {
+ r->other_domains = NULL;
+ }
+ }
+ if (ndr_flags & NDR_BUFFERS) {
+ if (r->other_domains) {
+ _mem_save_other_domains_0 = NDR_PULL_GET_MEM_CTX(ndr);
+ NDR_PULL_SET_MEM_CTX(ndr, r->other_domains, 0);
+ NDR_CHECK(ndr_pull_array_size(ndr, &r->other_domains));
+ NDR_CHECK(ndr_pull_array_length(ndr, &r->other_domains));
+ if (ndr_get_array_length(ndr, &r->other_domains) > ndr_get_array_size(ndr, &r->other_domains)) {
+ return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", ndr_get_array_size(ndr, &r->other_domains), ndr_get_array_length(ndr, &r->other_domains));
+ }
+ NDR_CHECK(ndr_check_string_terminator(ndr, ndr_get_array_length(ndr, &r->other_domains), sizeof(uint16_t)));
+ NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->other_domains, ndr_get_array_length(ndr, &r->other_domains), sizeof(uint16_t), CH_UTF16));
+ NDR_PULL_SET_MEM_CTX(ndr, _mem_save_other_domains_0, 0);
+ }
+ }
+ return NDR_ERR_SUCCESS;
+}
+
+_PUBLIC_ void ndr_print_wkssvc_NetrWkstaUserInfo1101(struct ndr_print *ndr, const char *name, const struct wkssvc_NetrWkstaUserInfo1101 *r)
+{
+ ndr_print_struct(ndr, name, "wkssvc_NetrWkstaUserInfo1101");
+ ndr->depth++;
+ ndr_print_ptr(ndr, "other_domains", r->other_domains);
+ ndr->depth++;
+ if (r->other_domains) {
+ ndr_print_string(ndr, "other_domains", r->other_domains);
+ }
+ ndr->depth--;
+ ndr->depth--;
+}
+
+static enum ndr_err_code ndr_push_wkssvc_NetrWkstaUserInfo(struct ndr_push *ndr, int ndr_flags, const union wkssvc_NetrWkstaUserInfo *r)
+{
+ if (ndr_flags & NDR_SCALARS) {
+ int level = ndr_push_get_switch_value(ndr, r);
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, level));
+ switch (level) {
+ case 0:
+ NDR_CHECK(ndr_push_unique_ptr(ndr, r->info0));
+ break;
+
+ case 1:
+ NDR_CHECK(ndr_push_unique_ptr(ndr, r->info1));
+ break;
+
+ case 1101:
+ NDR_CHECK(ndr_push_unique_ptr(ndr, r->info1101));
+ break;
+
+ default:
+ return ndr_push_error(ndr, NDR_ERR_BAD_SWITCH, "Bad switch value %u", level);
+ }
+ }
+ if (ndr_flags & NDR_BUFFERS) {
+ int level = ndr_push_get_switch_value(ndr, r);
+ switch (level) {
+ case 0:
+ if (r->info0) {
+ NDR_CHECK(ndr_push_wkssvc_NetrWkstaUserInfo0(ndr, NDR_SCALARS|NDR_BUFFERS, r->info0));
+ }
+ break;
+
+ case 1:
+ if (r->info1) {
+ NDR_CHECK(ndr_push_wkssvc_NetrWkstaUserInfo1(ndr, NDR_SCALARS|NDR_BUFFERS, r->info1));
+ }
+ break;
+
+ case 1101:
+ if (r->info1101) {
+ NDR_CHECK(ndr_push_wkssvc_NetrWkstaUserInfo1101(ndr, NDR_SCALARS|NDR_BUFFERS, r->info1101));
+ }
+ break;
+
+ default:
+ return ndr_push_error(ndr, NDR_ERR_BAD_SWITCH, "Bad switch value %u", level);
+ }
+ }
+ return NDR_ERR_SUCCESS;
+}
+
+static enum ndr_err_code ndr_pull_wkssvc_NetrWkstaUserInfo(struct ndr_pull *ndr, int ndr_flags, union wkssvc_NetrWkstaUserInfo *r)
+{
+ int level;
+ uint32_t _level;
+ TALLOC_CTX *_mem_save_info0_0;
+ TALLOC_CTX *_mem_save_info1_0;
+ TALLOC_CTX *_mem_save_info1101_0;
+ level = ndr_pull_get_switch_value(ndr, r);
+ if (ndr_flags & NDR_SCALARS) {
+ NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &_level));
+ if (_level != level) {
+ return ndr_pull_error(ndr, NDR_ERR_BAD_SWITCH, "Bad switch value %u for r", _level);
+ }
+ switch (level) {
+ case 0: {
+ uint32_t _ptr_info0;
+ NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_info0));
+ if (_ptr_info0) {
+ NDR_PULL_ALLOC(ndr, r->info0);
+ } else {
+ r->info0 = NULL;
+ }
+ break; }
+
+ case 1: {
+ uint32_t _ptr_info1;
+ NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_info1));
+ if (_ptr_info1) {
+ NDR_PULL_ALLOC(ndr, r->info1);
+ } else {
+ r->info1 = NULL;
+ }
+ break; }
+
+ case 1101: {
+ uint32_t _ptr_info1101;
+ NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_info1101));
+ if (_ptr_info1101) {
+ NDR_PULL_ALLOC(ndr, r->info1101);
+ } else {
+ r->info1101 = NULL;
+ }
+ break; }
+
+ default:
+ return ndr_pull_error(ndr, NDR_ERR_BAD_SWITCH, "Bad switch value %u", level);
+ }
+ }
+ if (ndr_flags & NDR_BUFFERS) {
+ switch (level) {
+ case 0:
+ if (r->info0) {
+ _mem_save_info0_0 = NDR_PULL_GET_MEM_CTX(ndr);
+ NDR_PULL_SET_MEM_CTX(ndr, r->info0, 0);
+ NDR_CHECK(ndr_pull_wkssvc_NetrWkstaUserInfo0(ndr, NDR_SCALARS|NDR_BUFFERS, r->info0));
+ NDR_PULL_SET_MEM_CTX(ndr, _mem_save_info0_0, 0);
+ }
+ break;
+
+ case 1:
+ if (r->info1) {
+ _mem_save_info1_0 = NDR_PULL_GET_MEM_CTX(ndr);
+ NDR_PULL_SET_MEM_CTX(ndr, r->info1, 0);
+ NDR_CHECK(ndr_pull_wkssvc_NetrWkstaUserInfo1(ndr, NDR_SCALARS|NDR_BUFFERS, r->info1));
+ NDR_PULL_SET_MEM_CTX(ndr, _mem_save_info1_0, 0);
+ }
+ break;
+
+ case 1101:
+ if (r->info1101) {
+ _mem_save_info1101_0 = NDR_PULL_GET_MEM_CTX(ndr);
+ NDR_PULL_SET_MEM_CTX(ndr, r->info1101, 0);
+ NDR_CHECK(ndr_pull_wkssvc_NetrWkstaUserInfo1101(ndr, NDR_SCALARS|NDR_BUFFERS, r->info1101));
+ NDR_PULL_SET_MEM_CTX(ndr, _mem_save_info1101_0, 0);
+ }
+ break;
+
+ default:
+ return ndr_pull_error(ndr, NDR_ERR_BAD_SWITCH, "Bad switch value %u", level);
+ }
+ }
+ return NDR_ERR_SUCCESS;
+}
+
+_PUBLIC_ void ndr_print_wkssvc_NetrWkstaUserInfo(struct ndr_print *ndr, const char *name, const union wkssvc_NetrWkstaUserInfo *r)
+{
+ int level;
+ level = ndr_print_get_switch_value(ndr, r);
+ ndr_print_union(ndr, name, level, "wkssvc_NetrWkstaUserInfo");
+ switch (level) {
+ case 0:
+ ndr_print_ptr(ndr, "info0", r->info0);
+ ndr->depth++;
+ if (r->info0) {
+ ndr_print_wkssvc_NetrWkstaUserInfo0(ndr, "info0", r->info0);
+ }
+ ndr->depth--;
+ break;
+
+ case 1:
+ ndr_print_ptr(ndr, "info1", r->info1);
+ ndr->depth++;
+ if (r->info1) {
+ ndr_print_wkssvc_NetrWkstaUserInfo1(ndr, "info1", r->info1);
+ }
+ ndr->depth--;
+ break;
+
+ case 1101:
+ ndr_print_ptr(ndr, "info1101", r->info1101);
+ ndr->depth++;
+ if (r->info1101) {
+ ndr_print_wkssvc_NetrWkstaUserInfo1101(ndr, "info1101", r->info1101);
}
ndr->depth--;
break;
@@ -2005,8 +3932,7 @@ static enum ndr_err_code ndr_push_wkssvc_NetWkstaTransportCtr(struct ndr_push *n
break;
default:
- break;
-
+ return ndr_push_error(ndr, NDR_ERR_BAD_SWITCH, "Bad switch value %u", level);
}
}
if (ndr_flags & NDR_BUFFERS) {
@@ -2019,8 +3945,7 @@ static enum ndr_err_code ndr_push_wkssvc_NetWkstaTransportCtr(struct ndr_push *n
break;
default:
- break;
-
+ return ndr_push_error(ndr, NDR_ERR_BAD_SWITCH, "Bad switch value %u", level);
}
}
return NDR_ERR_SUCCESS;
@@ -2048,9 +3973,8 @@ static enum ndr_err_code ndr_pull_wkssvc_NetWkstaTransportCtr(struct ndr_pull *n
}
break; }
- default: {
- break; }
-
+ default:
+ return ndr_pull_error(ndr, NDR_ERR_BAD_SWITCH, "Bad switch value %u", level);
}
}
if (ndr_flags & NDR_BUFFERS) {
@@ -2065,8 +3989,7 @@ static enum ndr_err_code ndr_pull_wkssvc_NetWkstaTransportCtr(struct ndr_pull *n
break;
default:
- break;
-
+ return ndr_pull_error(ndr, NDR_ERR_BAD_SWITCH, "Bad switch value %u", level);
}
}
return NDR_ERR_SUCCESS;
@@ -2088,41 +4011,1528 @@ _PUBLIC_ void ndr_print_wkssvc_NetWkstaTransportCtr(struct ndr_print *ndr, const
break;
default:
+ ndr_print_bad_level(ndr, name, level);
+ }
+}
+
+static enum ndr_err_code ndr_push_wkssvc_NetWkstaTransportInfo(struct ndr_push *ndr, int ndr_flags, const struct wkssvc_NetWkstaTransportInfo *r)
+{
+ if (ndr_flags & NDR_SCALARS) {
+ NDR_CHECK(ndr_push_align(ndr, 4));
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->level));
+ NDR_CHECK(ndr_push_set_switch_value(ndr, &r->ctr, r->level));
+ NDR_CHECK(ndr_push_wkssvc_NetWkstaTransportCtr(ndr, NDR_SCALARS, &r->ctr));
+ }
+ if (ndr_flags & NDR_BUFFERS) {
+ NDR_CHECK(ndr_push_wkssvc_NetWkstaTransportCtr(ndr, NDR_BUFFERS, &r->ctr));
+ }
+ return NDR_ERR_SUCCESS;
+}
+
+static enum ndr_err_code ndr_pull_wkssvc_NetWkstaTransportInfo(struct ndr_pull *ndr, int ndr_flags, struct wkssvc_NetWkstaTransportInfo *r)
+{
+ if (ndr_flags & NDR_SCALARS) {
+ NDR_CHECK(ndr_pull_align(ndr, 4));
+ NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->level));
+ NDR_CHECK(ndr_pull_set_switch_value(ndr, &r->ctr, r->level));
+ NDR_CHECK(ndr_pull_wkssvc_NetWkstaTransportCtr(ndr, NDR_SCALARS, &r->ctr));
+ }
+ if (ndr_flags & NDR_BUFFERS) {
+ NDR_CHECK(ndr_pull_wkssvc_NetWkstaTransportCtr(ndr, NDR_BUFFERS, &r->ctr));
+ }
+ return NDR_ERR_SUCCESS;
+}
+
+_PUBLIC_ void ndr_print_wkssvc_NetWkstaTransportInfo(struct ndr_print *ndr, const char *name, const struct wkssvc_NetWkstaTransportInfo *r)
+{
+ ndr_print_struct(ndr, name, "wkssvc_NetWkstaTransportInfo");
+ ndr->depth++;
+ ndr_print_uint32(ndr, "level", r->level);
+ ndr_print_set_switch_value(ndr, &r->ctr, r->level);
+ ndr_print_wkssvc_NetWkstaTransportCtr(ndr, "ctr", &r->ctr);
+ ndr->depth--;
+}
+
+static enum ndr_err_code ndr_push_wkssvc_NetrUseInfo3(struct ndr_push *ndr, int ndr_flags, const struct wkssvc_NetrUseInfo3 *r)
+{
+ if (ndr_flags & NDR_SCALARS) {
+ NDR_CHECK(ndr_push_align(ndr, 4));
+ NDR_CHECK(ndr_push_unique_ptr(ndr, r->unknown1));
+ NDR_CHECK(ndr_push_unique_ptr(ndr, r->unknown2));
+ }
+ if (ndr_flags & NDR_BUFFERS) {
+ if (r->unknown1) {
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->unknown1, CH_UTF16)));
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 0));
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->unknown1, CH_UTF16)));
+ NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->unknown1, ndr_charset_length(r->unknown1, CH_UTF16), sizeof(uint16_t), CH_UTF16));
+ }
+ if (r->unknown2) {
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->unknown2, CH_UTF16)));
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 0));
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->unknown2, CH_UTF16)));
+ NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->unknown2, ndr_charset_length(r->unknown2, CH_UTF16), sizeof(uint16_t), CH_UTF16));
+ }
+ }
+ return NDR_ERR_SUCCESS;
+}
+
+static enum ndr_err_code ndr_pull_wkssvc_NetrUseInfo3(struct ndr_pull *ndr, int ndr_flags, struct wkssvc_NetrUseInfo3 *r)
+{
+ uint32_t _ptr_unknown1;
+ TALLOC_CTX *_mem_save_unknown1_0;
+ uint32_t _ptr_unknown2;
+ TALLOC_CTX *_mem_save_unknown2_0;
+ if (ndr_flags & NDR_SCALARS) {
+ NDR_CHECK(ndr_pull_align(ndr, 4));
+ NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_unknown1));
+ if (_ptr_unknown1) {
+ NDR_PULL_ALLOC(ndr, r->unknown1);
+ } else {
+ r->unknown1 = NULL;
+ }
+ NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_unknown2));
+ if (_ptr_unknown2) {
+ NDR_PULL_ALLOC(ndr, r->unknown2);
+ } else {
+ r->unknown2 = NULL;
+ }
+ }
+ if (ndr_flags & NDR_BUFFERS) {
+ if (r->unknown1) {
+ _mem_save_unknown1_0 = NDR_PULL_GET_MEM_CTX(ndr);
+ NDR_PULL_SET_MEM_CTX(ndr, r->unknown1, 0);
+ NDR_CHECK(ndr_pull_array_size(ndr, &r->unknown1));
+ NDR_CHECK(ndr_pull_array_length(ndr, &r->unknown1));
+ if (ndr_get_array_length(ndr, &r->unknown1) > ndr_get_array_size(ndr, &r->unknown1)) {
+ return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", ndr_get_array_size(ndr, &r->unknown1), ndr_get_array_length(ndr, &r->unknown1));
+ }
+ NDR_CHECK(ndr_check_string_terminator(ndr, ndr_get_array_length(ndr, &r->unknown1), sizeof(uint16_t)));
+ NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->unknown1, ndr_get_array_length(ndr, &r->unknown1), sizeof(uint16_t), CH_UTF16));
+ NDR_PULL_SET_MEM_CTX(ndr, _mem_save_unknown1_0, 0);
+ }
+ if (r->unknown2) {
+ _mem_save_unknown2_0 = NDR_PULL_GET_MEM_CTX(ndr);
+ NDR_PULL_SET_MEM_CTX(ndr, r->unknown2, 0);
+ NDR_CHECK(ndr_pull_array_size(ndr, &r->unknown2));
+ NDR_CHECK(ndr_pull_array_length(ndr, &r->unknown2));
+ if (ndr_get_array_length(ndr, &r->unknown2) > ndr_get_array_size(ndr, &r->unknown2)) {
+ return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", ndr_get_array_size(ndr, &r->unknown2), ndr_get_array_length(ndr, &r->unknown2));
+ }
+ NDR_CHECK(ndr_check_string_terminator(ndr, ndr_get_array_length(ndr, &r->unknown2), sizeof(uint16_t)));
+ NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->unknown2, ndr_get_array_length(ndr, &r->unknown2), sizeof(uint16_t), CH_UTF16));
+ NDR_PULL_SET_MEM_CTX(ndr, _mem_save_unknown2_0, 0);
+ }
+ }
+ return NDR_ERR_SUCCESS;
+}
+
+_PUBLIC_ void ndr_print_wkssvc_NetrUseInfo3(struct ndr_print *ndr, const char *name, const struct wkssvc_NetrUseInfo3 *r)
+{
+ ndr_print_struct(ndr, name, "wkssvc_NetrUseInfo3");
+ ndr->depth++;
+ ndr_print_ptr(ndr, "unknown1", r->unknown1);
+ ndr->depth++;
+ if (r->unknown1) {
+ ndr_print_string(ndr, "unknown1", r->unknown1);
+ }
+ ndr->depth--;
+ ndr_print_ptr(ndr, "unknown2", r->unknown2);
+ ndr->depth++;
+ if (r->unknown2) {
+ ndr_print_string(ndr, "unknown2", r->unknown2);
+ }
+ ndr->depth--;
+ ndr->depth--;
+}
+
+static enum ndr_err_code ndr_push_wkssvc_NetrUseInfo2(struct ndr_push *ndr, int ndr_flags, const struct wkssvc_NetrUseInfo2 *r)
+{
+ if (ndr_flags & NDR_SCALARS) {
+ NDR_CHECK(ndr_push_align(ndr, 4));
+ NDR_CHECK(ndr_push_unique_ptr(ndr, r->local));
+ NDR_CHECK(ndr_push_unique_ptr(ndr, r->remote));
+ NDR_CHECK(ndr_push_unique_ptr(ndr, r->password));
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->status));
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->asg_type));
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->ref_count));
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->use_count));
+ NDR_CHECK(ndr_push_unique_ptr(ndr, r->user_name));
+ NDR_CHECK(ndr_push_unique_ptr(ndr, r->domain_name));
+ }
+ if (ndr_flags & NDR_BUFFERS) {
+ if (r->local) {
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->local, CH_UTF16)));
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 0));
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->local, CH_UTF16)));
+ NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->local, ndr_charset_length(r->local, CH_UTF16), sizeof(uint16_t), CH_UTF16));
+ }
+ if (r->remote) {
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->remote, CH_UTF16)));
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 0));
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->remote, CH_UTF16)));
+ NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->remote, ndr_charset_length(r->remote, CH_UTF16), sizeof(uint16_t), CH_UTF16));
+ }
+ if (r->password) {
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->password, CH_UTF16)));
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 0));
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->password, CH_UTF16)));
+ NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->password, ndr_charset_length(r->password, CH_UTF16), sizeof(uint16_t), CH_UTF16));
+ }
+ if (r->user_name) {
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->user_name, CH_UTF16)));
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 0));
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->user_name, CH_UTF16)));
+ NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->user_name, ndr_charset_length(r->user_name, CH_UTF16), sizeof(uint16_t), CH_UTF16));
+ }
+ if (r->domain_name) {
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->domain_name, CH_UTF16)));
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 0));
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->domain_name, CH_UTF16)));
+ NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->domain_name, ndr_charset_length(r->domain_name, CH_UTF16), sizeof(uint16_t), CH_UTF16));
+ }
+ }
+ return NDR_ERR_SUCCESS;
+}
+
+static enum ndr_err_code ndr_pull_wkssvc_NetrUseInfo2(struct ndr_pull *ndr, int ndr_flags, struct wkssvc_NetrUseInfo2 *r)
+{
+ uint32_t _ptr_local;
+ TALLOC_CTX *_mem_save_local_0;
+ uint32_t _ptr_remote;
+ TALLOC_CTX *_mem_save_remote_0;
+ uint32_t _ptr_password;
+ TALLOC_CTX *_mem_save_password_0;
+ uint32_t _ptr_user_name;
+ TALLOC_CTX *_mem_save_user_name_0;
+ uint32_t _ptr_domain_name;
+ TALLOC_CTX *_mem_save_domain_name_0;
+ if (ndr_flags & NDR_SCALARS) {
+ NDR_CHECK(ndr_pull_align(ndr, 4));
+ NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_local));
+ if (_ptr_local) {
+ NDR_PULL_ALLOC(ndr, r->local);
+ } else {
+ r->local = NULL;
+ }
+ NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_remote));
+ if (_ptr_remote) {
+ NDR_PULL_ALLOC(ndr, r->remote);
+ } else {
+ r->remote = NULL;
+ }
+ NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_password));
+ if (_ptr_password) {
+ NDR_PULL_ALLOC(ndr, r->password);
+ } else {
+ r->password = NULL;
+ }
+ NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->status));
+ NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->asg_type));
+ NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->ref_count));
+ NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->use_count));
+ NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_user_name));
+ if (_ptr_user_name) {
+ NDR_PULL_ALLOC(ndr, r->user_name);
+ } else {
+ r->user_name = NULL;
+ }
+ NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_domain_name));
+ if (_ptr_domain_name) {
+ NDR_PULL_ALLOC(ndr, r->domain_name);
+ } else {
+ r->domain_name = NULL;
+ }
+ }
+ if (ndr_flags & NDR_BUFFERS) {
+ if (r->local) {
+ _mem_save_local_0 = NDR_PULL_GET_MEM_CTX(ndr);
+ NDR_PULL_SET_MEM_CTX(ndr, r->local, 0);
+ NDR_CHECK(ndr_pull_array_size(ndr, &r->local));
+ NDR_CHECK(ndr_pull_array_length(ndr, &r->local));
+ if (ndr_get_array_length(ndr, &r->local) > ndr_get_array_size(ndr, &r->local)) {
+ return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", ndr_get_array_size(ndr, &r->local), ndr_get_array_length(ndr, &r->local));
+ }
+ NDR_CHECK(ndr_check_string_terminator(ndr, ndr_get_array_length(ndr, &r->local), sizeof(uint16_t)));
+ NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->local, ndr_get_array_length(ndr, &r->local), sizeof(uint16_t), CH_UTF16));
+ NDR_PULL_SET_MEM_CTX(ndr, _mem_save_local_0, 0);
+ }
+ if (r->remote) {
+ _mem_save_remote_0 = NDR_PULL_GET_MEM_CTX(ndr);
+ NDR_PULL_SET_MEM_CTX(ndr, r->remote, 0);
+ NDR_CHECK(ndr_pull_array_size(ndr, &r->remote));
+ NDR_CHECK(ndr_pull_array_length(ndr, &r->remote));
+ if (ndr_get_array_length(ndr, &r->remote) > ndr_get_array_size(ndr, &r->remote)) {
+ return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", ndr_get_array_size(ndr, &r->remote), ndr_get_array_length(ndr, &r->remote));
+ }
+ NDR_CHECK(ndr_check_string_terminator(ndr, ndr_get_array_length(ndr, &r->remote), sizeof(uint16_t)));
+ NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->remote, ndr_get_array_length(ndr, &r->remote), sizeof(uint16_t), CH_UTF16));
+ NDR_PULL_SET_MEM_CTX(ndr, _mem_save_remote_0, 0);
+ }
+ if (r->password) {
+ _mem_save_password_0 = NDR_PULL_GET_MEM_CTX(ndr);
+ NDR_PULL_SET_MEM_CTX(ndr, r->password, 0);
+ NDR_CHECK(ndr_pull_array_size(ndr, &r->password));
+ NDR_CHECK(ndr_pull_array_length(ndr, &r->password));
+ if (ndr_get_array_length(ndr, &r->password) > ndr_get_array_size(ndr, &r->password)) {
+ return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", ndr_get_array_size(ndr, &r->password), ndr_get_array_length(ndr, &r->password));
+ }
+ NDR_CHECK(ndr_check_string_terminator(ndr, ndr_get_array_length(ndr, &r->password), sizeof(uint16_t)));
+ NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->password, ndr_get_array_length(ndr, &r->password), sizeof(uint16_t), CH_UTF16));
+ NDR_PULL_SET_MEM_CTX(ndr, _mem_save_password_0, 0);
+ }
+ if (r->user_name) {
+ _mem_save_user_name_0 = NDR_PULL_GET_MEM_CTX(ndr);
+ NDR_PULL_SET_MEM_CTX(ndr, r->user_name, 0);
+ NDR_CHECK(ndr_pull_array_size(ndr, &r->user_name));
+ NDR_CHECK(ndr_pull_array_length(ndr, &r->user_name));
+ if (ndr_get_array_length(ndr, &r->user_name) > ndr_get_array_size(ndr, &r->user_name)) {
+ return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", ndr_get_array_size(ndr, &r->user_name), ndr_get_array_length(ndr, &r->user_name));
+ }
+ NDR_CHECK(ndr_check_string_terminator(ndr, ndr_get_array_length(ndr, &r->user_name), sizeof(uint16_t)));
+ NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->user_name, ndr_get_array_length(ndr, &r->user_name), sizeof(uint16_t), CH_UTF16));
+ NDR_PULL_SET_MEM_CTX(ndr, _mem_save_user_name_0, 0);
+ }
+ if (r->domain_name) {
+ _mem_save_domain_name_0 = NDR_PULL_GET_MEM_CTX(ndr);
+ NDR_PULL_SET_MEM_CTX(ndr, r->domain_name, 0);
+ NDR_CHECK(ndr_pull_array_size(ndr, &r->domain_name));
+ NDR_CHECK(ndr_pull_array_length(ndr, &r->domain_name));
+ if (ndr_get_array_length(ndr, &r->domain_name) > ndr_get_array_size(ndr, &r->domain_name)) {
+ return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", ndr_get_array_size(ndr, &r->domain_name), ndr_get_array_length(ndr, &r->domain_name));
+ }
+ NDR_CHECK(ndr_check_string_terminator(ndr, ndr_get_array_length(ndr, &r->domain_name), sizeof(uint16_t)));
+ NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->domain_name, ndr_get_array_length(ndr, &r->domain_name), sizeof(uint16_t), CH_UTF16));
+ NDR_PULL_SET_MEM_CTX(ndr, _mem_save_domain_name_0, 0);
+ }
+ }
+ return NDR_ERR_SUCCESS;
+}
+
+_PUBLIC_ void ndr_print_wkssvc_NetrUseInfo2(struct ndr_print *ndr, const char *name, const struct wkssvc_NetrUseInfo2 *r)
+{
+ ndr_print_struct(ndr, name, "wkssvc_NetrUseInfo2");
+ ndr->depth++;
+ ndr_print_ptr(ndr, "local", r->local);
+ ndr->depth++;
+ if (r->local) {
+ ndr_print_string(ndr, "local", r->local);
+ }
+ ndr->depth--;
+ ndr_print_ptr(ndr, "remote", r->remote);
+ ndr->depth++;
+ if (r->remote) {
+ ndr_print_string(ndr, "remote", r->remote);
+ }
+ ndr->depth--;
+ ndr_print_ptr(ndr, "password", r->password);
+ ndr->depth++;
+ if (r->password) {
+ ndr_print_string(ndr, "password", r->password);
+ }
+ ndr->depth--;
+ ndr_print_uint32(ndr, "status", r->status);
+ ndr_print_uint32(ndr, "asg_type", r->asg_type);
+ ndr_print_uint32(ndr, "ref_count", r->ref_count);
+ ndr_print_uint32(ndr, "use_count", r->use_count);
+ ndr_print_ptr(ndr, "user_name", r->user_name);
+ ndr->depth++;
+ if (r->user_name) {
+ ndr_print_string(ndr, "user_name", r->user_name);
+ }
+ ndr->depth--;
+ ndr_print_ptr(ndr, "domain_name", r->domain_name);
+ ndr->depth++;
+ if (r->domain_name) {
+ ndr_print_string(ndr, "domain_name", r->domain_name);
+ }
+ ndr->depth--;
+ ndr->depth--;
+}
+
+static enum ndr_err_code ndr_push_wkssvc_NetrUseInfo1(struct ndr_push *ndr, int ndr_flags, const struct wkssvc_NetrUseInfo1 *r)
+{
+ if (ndr_flags & NDR_SCALARS) {
+ NDR_CHECK(ndr_push_align(ndr, 4));
+ NDR_CHECK(ndr_push_unique_ptr(ndr, r->local));
+ NDR_CHECK(ndr_push_unique_ptr(ndr, r->remote));
+ NDR_CHECK(ndr_push_unique_ptr(ndr, r->password));
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->status));
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->asg_type));
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->ref_count));
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->use_count));
+ }
+ if (ndr_flags & NDR_BUFFERS) {
+ if (r->local) {
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->local, CH_UTF16)));
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 0));
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->local, CH_UTF16)));
+ NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->local, ndr_charset_length(r->local, CH_UTF16), sizeof(uint16_t), CH_UTF16));
+ }
+ if (r->remote) {
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->remote, CH_UTF16)));
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 0));
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->remote, CH_UTF16)));
+ NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->remote, ndr_charset_length(r->remote, CH_UTF16), sizeof(uint16_t), CH_UTF16));
+ }
+ if (r->password) {
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->password, CH_UTF16)));
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 0));
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->password, CH_UTF16)));
+ NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->password, ndr_charset_length(r->password, CH_UTF16), sizeof(uint16_t), CH_UTF16));
+ }
+ }
+ return NDR_ERR_SUCCESS;
+}
+
+static enum ndr_err_code ndr_pull_wkssvc_NetrUseInfo1(struct ndr_pull *ndr, int ndr_flags, struct wkssvc_NetrUseInfo1 *r)
+{
+ uint32_t _ptr_local;
+ TALLOC_CTX *_mem_save_local_0;
+ uint32_t _ptr_remote;
+ TALLOC_CTX *_mem_save_remote_0;
+ uint32_t _ptr_password;
+ TALLOC_CTX *_mem_save_password_0;
+ if (ndr_flags & NDR_SCALARS) {
+ NDR_CHECK(ndr_pull_align(ndr, 4));
+ NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_local));
+ if (_ptr_local) {
+ NDR_PULL_ALLOC(ndr, r->local);
+ } else {
+ r->local = NULL;
+ }
+ NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_remote));
+ if (_ptr_remote) {
+ NDR_PULL_ALLOC(ndr, r->remote);
+ } else {
+ r->remote = NULL;
+ }
+ NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_password));
+ if (_ptr_password) {
+ NDR_PULL_ALLOC(ndr, r->password);
+ } else {
+ r->password = NULL;
+ }
+ NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->status));
+ NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->asg_type));
+ NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->ref_count));
+ NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->use_count));
+ }
+ if (ndr_flags & NDR_BUFFERS) {
+ if (r->local) {
+ _mem_save_local_0 = NDR_PULL_GET_MEM_CTX(ndr);
+ NDR_PULL_SET_MEM_CTX(ndr, r->local, 0);
+ NDR_CHECK(ndr_pull_array_size(ndr, &r->local));
+ NDR_CHECK(ndr_pull_array_length(ndr, &r->local));
+ if (ndr_get_array_length(ndr, &r->local) > ndr_get_array_size(ndr, &r->local)) {
+ return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", ndr_get_array_size(ndr, &r->local), ndr_get_array_length(ndr, &r->local));
+ }
+ NDR_CHECK(ndr_check_string_terminator(ndr, ndr_get_array_length(ndr, &r->local), sizeof(uint16_t)));
+ NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->local, ndr_get_array_length(ndr, &r->local), sizeof(uint16_t), CH_UTF16));
+ NDR_PULL_SET_MEM_CTX(ndr, _mem_save_local_0, 0);
+ }
+ if (r->remote) {
+ _mem_save_remote_0 = NDR_PULL_GET_MEM_CTX(ndr);
+ NDR_PULL_SET_MEM_CTX(ndr, r->remote, 0);
+ NDR_CHECK(ndr_pull_array_size(ndr, &r->remote));
+ NDR_CHECK(ndr_pull_array_length(ndr, &r->remote));
+ if (ndr_get_array_length(ndr, &r->remote) > ndr_get_array_size(ndr, &r->remote)) {
+ return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", ndr_get_array_size(ndr, &r->remote), ndr_get_array_length(ndr, &r->remote));
+ }
+ NDR_CHECK(ndr_check_string_terminator(ndr, ndr_get_array_length(ndr, &r->remote), sizeof(uint16_t)));
+ NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->remote, ndr_get_array_length(ndr, &r->remote), sizeof(uint16_t), CH_UTF16));
+ NDR_PULL_SET_MEM_CTX(ndr, _mem_save_remote_0, 0);
+ }
+ if (r->password) {
+ _mem_save_password_0 = NDR_PULL_GET_MEM_CTX(ndr);
+ NDR_PULL_SET_MEM_CTX(ndr, r->password, 0);
+ NDR_CHECK(ndr_pull_array_size(ndr, &r->password));
+ NDR_CHECK(ndr_pull_array_length(ndr, &r->password));
+ if (ndr_get_array_length(ndr, &r->password) > ndr_get_array_size(ndr, &r->password)) {
+ return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", ndr_get_array_size(ndr, &r->password), ndr_get_array_length(ndr, &r->password));
+ }
+ NDR_CHECK(ndr_check_string_terminator(ndr, ndr_get_array_length(ndr, &r->password), sizeof(uint16_t)));
+ NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->password, ndr_get_array_length(ndr, &r->password), sizeof(uint16_t), CH_UTF16));
+ NDR_PULL_SET_MEM_CTX(ndr, _mem_save_password_0, 0);
+ }
+ }
+ return NDR_ERR_SUCCESS;
+}
+
+_PUBLIC_ void ndr_print_wkssvc_NetrUseInfo1(struct ndr_print *ndr, const char *name, const struct wkssvc_NetrUseInfo1 *r)
+{
+ ndr_print_struct(ndr, name, "wkssvc_NetrUseInfo1");
+ ndr->depth++;
+ ndr_print_ptr(ndr, "local", r->local);
+ ndr->depth++;
+ if (r->local) {
+ ndr_print_string(ndr, "local", r->local);
+ }
+ ndr->depth--;
+ ndr_print_ptr(ndr, "remote", r->remote);
+ ndr->depth++;
+ if (r->remote) {
+ ndr_print_string(ndr, "remote", r->remote);
+ }
+ ndr->depth--;
+ ndr_print_ptr(ndr, "password", r->password);
+ ndr->depth++;
+ if (r->password) {
+ ndr_print_string(ndr, "password", r->password);
+ }
+ ndr->depth--;
+ ndr_print_uint32(ndr, "status", r->status);
+ ndr_print_uint32(ndr, "asg_type", r->asg_type);
+ ndr_print_uint32(ndr, "ref_count", r->ref_count);
+ ndr_print_uint32(ndr, "use_count", r->use_count);
+ ndr->depth--;
+}
+
+static enum ndr_err_code ndr_push_wkssvc_NetrUseInfo0(struct ndr_push *ndr, int ndr_flags, const struct wkssvc_NetrUseInfo0 *r)
+{
+ if (ndr_flags & NDR_SCALARS) {
+ NDR_CHECK(ndr_push_align(ndr, 4));
+ NDR_CHECK(ndr_push_unique_ptr(ndr, r->local));
+ NDR_CHECK(ndr_push_unique_ptr(ndr, r->remote));
+ }
+ if (ndr_flags & NDR_BUFFERS) {
+ if (r->local) {
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->local, CH_UTF16)));
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 0));
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->local, CH_UTF16)));
+ NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->local, ndr_charset_length(r->local, CH_UTF16), sizeof(uint16_t), CH_UTF16));
+ }
+ if (r->remote) {
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->remote, CH_UTF16)));
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 0));
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->remote, CH_UTF16)));
+ NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->remote, ndr_charset_length(r->remote, CH_UTF16), sizeof(uint16_t), CH_UTF16));
+ }
+ }
+ return NDR_ERR_SUCCESS;
+}
+
+static enum ndr_err_code ndr_pull_wkssvc_NetrUseInfo0(struct ndr_pull *ndr, int ndr_flags, struct wkssvc_NetrUseInfo0 *r)
+{
+ uint32_t _ptr_local;
+ TALLOC_CTX *_mem_save_local_0;
+ uint32_t _ptr_remote;
+ TALLOC_CTX *_mem_save_remote_0;
+ if (ndr_flags & NDR_SCALARS) {
+ NDR_CHECK(ndr_pull_align(ndr, 4));
+ NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_local));
+ if (_ptr_local) {
+ NDR_PULL_ALLOC(ndr, r->local);
+ } else {
+ r->local = NULL;
+ }
+ NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_remote));
+ if (_ptr_remote) {
+ NDR_PULL_ALLOC(ndr, r->remote);
+ } else {
+ r->remote = NULL;
+ }
+ }
+ if (ndr_flags & NDR_BUFFERS) {
+ if (r->local) {
+ _mem_save_local_0 = NDR_PULL_GET_MEM_CTX(ndr);
+ NDR_PULL_SET_MEM_CTX(ndr, r->local, 0);
+ NDR_CHECK(ndr_pull_array_size(ndr, &r->local));
+ NDR_CHECK(ndr_pull_array_length(ndr, &r->local));
+ if (ndr_get_array_length(ndr, &r->local) > ndr_get_array_size(ndr, &r->local)) {
+ return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", ndr_get_array_size(ndr, &r->local), ndr_get_array_length(ndr, &r->local));
+ }
+ NDR_CHECK(ndr_check_string_terminator(ndr, ndr_get_array_length(ndr, &r->local), sizeof(uint16_t)));
+ NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->local, ndr_get_array_length(ndr, &r->local), sizeof(uint16_t), CH_UTF16));
+ NDR_PULL_SET_MEM_CTX(ndr, _mem_save_local_0, 0);
+ }
+ if (r->remote) {
+ _mem_save_remote_0 = NDR_PULL_GET_MEM_CTX(ndr);
+ NDR_PULL_SET_MEM_CTX(ndr, r->remote, 0);
+ NDR_CHECK(ndr_pull_array_size(ndr, &r->remote));
+ NDR_CHECK(ndr_pull_array_length(ndr, &r->remote));
+ if (ndr_get_array_length(ndr, &r->remote) > ndr_get_array_size(ndr, &r->remote)) {
+ return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", ndr_get_array_size(ndr, &r->remote), ndr_get_array_length(ndr, &r->remote));
+ }
+ NDR_CHECK(ndr_check_string_terminator(ndr, ndr_get_array_length(ndr, &r->remote), sizeof(uint16_t)));
+ NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->remote, ndr_get_array_length(ndr, &r->remote), sizeof(uint16_t), CH_UTF16));
+ NDR_PULL_SET_MEM_CTX(ndr, _mem_save_remote_0, 0);
+ }
+ }
+ return NDR_ERR_SUCCESS;
+}
+
+_PUBLIC_ void ndr_print_wkssvc_NetrUseInfo0(struct ndr_print *ndr, const char *name, const struct wkssvc_NetrUseInfo0 *r)
+{
+ ndr_print_struct(ndr, name, "wkssvc_NetrUseInfo0");
+ ndr->depth++;
+ ndr_print_ptr(ndr, "local", r->local);
+ ndr->depth++;
+ if (r->local) {
+ ndr_print_string(ndr, "local", r->local);
+ }
+ ndr->depth--;
+ ndr_print_ptr(ndr, "remote", r->remote);
+ ndr->depth++;
+ if (r->remote) {
+ ndr_print_string(ndr, "remote", r->remote);
+ }
+ ndr->depth--;
+ ndr->depth--;
+}
+
+static enum ndr_err_code ndr_push_wkssvc_NetrUseGetInfoCtr(struct ndr_push *ndr, int ndr_flags, const union wkssvc_NetrUseGetInfoCtr *r)
+{
+ if (ndr_flags & NDR_SCALARS) {
+ int level = ndr_push_get_switch_value(ndr, r);
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, level));
+ switch (level) {
+ case 0:
+ NDR_CHECK(ndr_push_unique_ptr(ndr, r->info0));
+ break;
+
+ case 1:
+ NDR_CHECK(ndr_push_unique_ptr(ndr, r->info1));
+ break;
+
+ case 2:
+ NDR_CHECK(ndr_push_unique_ptr(ndr, r->info2));
+ break;
+
+ case 3:
+ NDR_CHECK(ndr_push_unique_ptr(ndr, r->info3));
+ break;
+
+ default:
+ return ndr_push_error(ndr, NDR_ERR_BAD_SWITCH, "Bad switch value %u", level);
+ }
+ }
+ if (ndr_flags & NDR_BUFFERS) {
+ int level = ndr_push_get_switch_value(ndr, r);
+ switch (level) {
+ case 0:
+ if (r->info0) {
+ NDR_CHECK(ndr_push_wkssvc_NetrUseInfo0(ndr, NDR_SCALARS|NDR_BUFFERS, r->info0));
+ }
+ break;
+
+ case 1:
+ if (r->info1) {
+ NDR_CHECK(ndr_push_wkssvc_NetrUseInfo1(ndr, NDR_SCALARS|NDR_BUFFERS, r->info1));
+ }
+ break;
+
+ case 2:
+ if (r->info2) {
+ NDR_CHECK(ndr_push_wkssvc_NetrUseInfo2(ndr, NDR_SCALARS|NDR_BUFFERS, r->info2));
+ }
+ break;
+
+ case 3:
+ if (r->info3) {
+ NDR_CHECK(ndr_push_wkssvc_NetrUseInfo3(ndr, NDR_SCALARS|NDR_BUFFERS, r->info3));
+ }
+ break;
+
+ default:
+ return ndr_push_error(ndr, NDR_ERR_BAD_SWITCH, "Bad switch value %u", level);
+ }
+ }
+ return NDR_ERR_SUCCESS;
+}
+
+static enum ndr_err_code ndr_pull_wkssvc_NetrUseGetInfoCtr(struct ndr_pull *ndr, int ndr_flags, union wkssvc_NetrUseGetInfoCtr *r)
+{
+ int level;
+ uint32_t _level;
+ TALLOC_CTX *_mem_save_info0_0;
+ TALLOC_CTX *_mem_save_info1_0;
+ TALLOC_CTX *_mem_save_info2_0;
+ TALLOC_CTX *_mem_save_info3_0;
+ level = ndr_pull_get_switch_value(ndr, r);
+ if (ndr_flags & NDR_SCALARS) {
+ NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &_level));
+ if (_level != level) {
+ return ndr_pull_error(ndr, NDR_ERR_BAD_SWITCH, "Bad switch value %u for r", _level);
+ }
+ switch (level) {
+ case 0: {
+ uint32_t _ptr_info0;
+ NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_info0));
+ if (_ptr_info0) {
+ NDR_PULL_ALLOC(ndr, r->info0);
+ } else {
+ r->info0 = NULL;
+ }
+ break; }
+
+ case 1: {
+ uint32_t _ptr_info1;
+ NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_info1));
+ if (_ptr_info1) {
+ NDR_PULL_ALLOC(ndr, r->info1);
+ } else {
+ r->info1 = NULL;
+ }
+ break; }
+
+ case 2: {
+ uint32_t _ptr_info2;
+ NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_info2));
+ if (_ptr_info2) {
+ NDR_PULL_ALLOC(ndr, r->info2);
+ } else {
+ r->info2 = NULL;
+ }
+ break; }
+
+ case 3: {
+ uint32_t _ptr_info3;
+ NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_info3));
+ if (_ptr_info3) {
+ NDR_PULL_ALLOC(ndr, r->info3);
+ } else {
+ r->info3 = NULL;
+ }
+ break; }
+
+ default:
+ return ndr_pull_error(ndr, NDR_ERR_BAD_SWITCH, "Bad switch value %u", level);
+ }
+ }
+ if (ndr_flags & NDR_BUFFERS) {
+ switch (level) {
+ case 0:
+ if (r->info0) {
+ _mem_save_info0_0 = NDR_PULL_GET_MEM_CTX(ndr);
+ NDR_PULL_SET_MEM_CTX(ndr, r->info0, 0);
+ NDR_CHECK(ndr_pull_wkssvc_NetrUseInfo0(ndr, NDR_SCALARS|NDR_BUFFERS, r->info0));
+ NDR_PULL_SET_MEM_CTX(ndr, _mem_save_info0_0, 0);
+ }
+ break;
+
+ case 1:
+ if (r->info1) {
+ _mem_save_info1_0 = NDR_PULL_GET_MEM_CTX(ndr);
+ NDR_PULL_SET_MEM_CTX(ndr, r->info1, 0);
+ NDR_CHECK(ndr_pull_wkssvc_NetrUseInfo1(ndr, NDR_SCALARS|NDR_BUFFERS, r->info1));
+ NDR_PULL_SET_MEM_CTX(ndr, _mem_save_info1_0, 0);
+ }
+ break;
+
+ case 2:
+ if (r->info2) {
+ _mem_save_info2_0 = NDR_PULL_GET_MEM_CTX(ndr);
+ NDR_PULL_SET_MEM_CTX(ndr, r->info2, 0);
+ NDR_CHECK(ndr_pull_wkssvc_NetrUseInfo2(ndr, NDR_SCALARS|NDR_BUFFERS, r->info2));
+ NDR_PULL_SET_MEM_CTX(ndr, _mem_save_info2_0, 0);
+ }
+ break;
+
+ case 3:
+ if (r->info3) {
+ _mem_save_info3_0 = NDR_PULL_GET_MEM_CTX(ndr);
+ NDR_PULL_SET_MEM_CTX(ndr, r->info3, 0);
+ NDR_CHECK(ndr_pull_wkssvc_NetrUseInfo3(ndr, NDR_SCALARS|NDR_BUFFERS, r->info3));
+ NDR_PULL_SET_MEM_CTX(ndr, _mem_save_info3_0, 0);
+ }
+ break;
+
+ default:
+ return ndr_pull_error(ndr, NDR_ERR_BAD_SWITCH, "Bad switch value %u", level);
+ }
+ }
+ return NDR_ERR_SUCCESS;
+}
+
+_PUBLIC_ void ndr_print_wkssvc_NetrUseGetInfoCtr(struct ndr_print *ndr, const char *name, const union wkssvc_NetrUseGetInfoCtr *r)
+{
+ int level;
+ level = ndr_print_get_switch_value(ndr, r);
+ ndr_print_union(ndr, name, level, "wkssvc_NetrUseGetInfoCtr");
+ switch (level) {
+ case 0:
+ ndr_print_ptr(ndr, "info0", r->info0);
+ ndr->depth++;
+ if (r->info0) {
+ ndr_print_wkssvc_NetrUseInfo0(ndr, "info0", r->info0);
+ }
+ ndr->depth--;
break;
+ case 1:
+ ndr_print_ptr(ndr, "info1", r->info1);
+ ndr->depth++;
+ if (r->info1) {
+ ndr_print_wkssvc_NetrUseInfo1(ndr, "info1", r->info1);
+ }
+ ndr->depth--;
+ break;
+
+ case 2:
+ ndr_print_ptr(ndr, "info2", r->info2);
+ ndr->depth++;
+ if (r->info2) {
+ ndr_print_wkssvc_NetrUseInfo2(ndr, "info2", r->info2);
+ }
+ ndr->depth--;
+ break;
+
+ case 3:
+ ndr_print_ptr(ndr, "info3", r->info3);
+ ndr->depth++;
+ if (r->info3) {
+ ndr_print_wkssvc_NetrUseInfo3(ndr, "info3", r->info3);
+ }
+ ndr->depth--;
+ break;
+
+ default:
+ ndr_print_bad_level(ndr, name, level);
}
}
-static enum ndr_err_code ndr_push_wkssvc_PasswordBuffer(struct ndr_push *ndr, int ndr_flags, const struct wkssvc_PasswordBuffer *r)
+static enum ndr_err_code ndr_push_wkssvc_NetrUseEnumCtr2(struct ndr_push *ndr, int ndr_flags, const struct wkssvc_NetrUseEnumCtr2 *r)
+{
+ uint32_t cntr_array_1;
+ if (ndr_flags & NDR_SCALARS) {
+ NDR_CHECK(ndr_push_align(ndr, 4));
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->count));
+ NDR_CHECK(ndr_push_unique_ptr(ndr, r->array));
+ }
+ if (ndr_flags & NDR_BUFFERS) {
+ if (r->array) {
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->count));
+ for (cntr_array_1 = 0; cntr_array_1 < r->count; cntr_array_1++) {
+ NDR_CHECK(ndr_push_wkssvc_NetrUseInfo2(ndr, NDR_SCALARS, &r->array[cntr_array_1]));
+ }
+ for (cntr_array_1 = 0; cntr_array_1 < r->count; cntr_array_1++) {
+ NDR_CHECK(ndr_push_wkssvc_NetrUseInfo2(ndr, NDR_BUFFERS, &r->array[cntr_array_1]));
+ }
+ }
+ }
+ return NDR_ERR_SUCCESS;
+}
+
+static enum ndr_err_code ndr_pull_wkssvc_NetrUseEnumCtr2(struct ndr_pull *ndr, int ndr_flags, struct wkssvc_NetrUseEnumCtr2 *r)
{
+ uint32_t _ptr_array;
+ uint32_t cntr_array_1;
+ TALLOC_CTX *_mem_save_array_0;
+ TALLOC_CTX *_mem_save_array_1;
if (ndr_flags & NDR_SCALARS) {
- NDR_CHECK(ndr_push_align(ndr, 1));
- NDR_CHECK(ndr_push_array_uint8(ndr, NDR_SCALARS, r->data, 524));
+ NDR_CHECK(ndr_pull_align(ndr, 4));
+ NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->count));
+ NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_array));
+ if (_ptr_array) {
+ NDR_PULL_ALLOC(ndr, r->array);
+ } else {
+ r->array = NULL;
+ }
}
if (ndr_flags & NDR_BUFFERS) {
+ if (r->array) {
+ _mem_save_array_0 = NDR_PULL_GET_MEM_CTX(ndr);
+ NDR_PULL_SET_MEM_CTX(ndr, r->array, 0);
+ NDR_CHECK(ndr_pull_array_size(ndr, &r->array));
+ NDR_PULL_ALLOC_N(ndr, r->array, ndr_get_array_size(ndr, &r->array));
+ _mem_save_array_1 = NDR_PULL_GET_MEM_CTX(ndr);
+ NDR_PULL_SET_MEM_CTX(ndr, r->array, 0);
+ for (cntr_array_1 = 0; cntr_array_1 < r->count; cntr_array_1++) {
+ NDR_CHECK(ndr_pull_wkssvc_NetrUseInfo2(ndr, NDR_SCALARS, &r->array[cntr_array_1]));
+ }
+ for (cntr_array_1 = 0; cntr_array_1 < r->count; cntr_array_1++) {
+ NDR_CHECK(ndr_pull_wkssvc_NetrUseInfo2(ndr, NDR_BUFFERS, &r->array[cntr_array_1]));
+ }
+ NDR_PULL_SET_MEM_CTX(ndr, _mem_save_array_1, 0);
+ NDR_PULL_SET_MEM_CTX(ndr, _mem_save_array_0, 0);
+ }
+ if (r->array) {
+ NDR_CHECK(ndr_check_array_size(ndr, (void*)&r->array, r->count));
+ }
}
return NDR_ERR_SUCCESS;
}
-static enum ndr_err_code ndr_pull_wkssvc_PasswordBuffer(struct ndr_pull *ndr, int ndr_flags, struct wkssvc_PasswordBuffer *r)
+_PUBLIC_ void ndr_print_wkssvc_NetrUseEnumCtr2(struct ndr_print *ndr, const char *name, const struct wkssvc_NetrUseEnumCtr2 *r)
+{
+ uint32_t cntr_array_1;
+ ndr_print_struct(ndr, name, "wkssvc_NetrUseEnumCtr2");
+ ndr->depth++;
+ ndr_print_uint32(ndr, "count", r->count);
+ ndr_print_ptr(ndr, "array", r->array);
+ ndr->depth++;
+ if (r->array) {
+ ndr->print(ndr, "%s: ARRAY(%d)", "array", r->count);
+ ndr->depth++;
+ for (cntr_array_1=0;cntr_array_1<r->count;cntr_array_1++) {
+ char *idx_1=NULL;
+ asprintf(&idx_1, "[%d]", cntr_array_1);
+ if (idx_1) {
+ ndr_print_wkssvc_NetrUseInfo2(ndr, "array", &r->array[cntr_array_1]);
+ free(idx_1);
+ }
+ }
+ ndr->depth--;
+ }
+ ndr->depth--;
+ ndr->depth--;
+}
+
+static enum ndr_err_code ndr_push_wkssvc_NetrUseEnumCtr1(struct ndr_push *ndr, int ndr_flags, const struct wkssvc_NetrUseEnumCtr1 *r)
{
+ uint32_t cntr_array_1;
if (ndr_flags & NDR_SCALARS) {
- NDR_CHECK(ndr_pull_align(ndr, 1));
- NDR_CHECK(ndr_pull_array_uint8(ndr, NDR_SCALARS, r->data, 524));
+ NDR_CHECK(ndr_push_align(ndr, 4));
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->count));
+ NDR_CHECK(ndr_push_unique_ptr(ndr, r->array));
}
if (ndr_flags & NDR_BUFFERS) {
+ if (r->array) {
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->count));
+ for (cntr_array_1 = 0; cntr_array_1 < r->count; cntr_array_1++) {
+ NDR_CHECK(ndr_push_wkssvc_NetrUseInfo1(ndr, NDR_SCALARS, &r->array[cntr_array_1]));
+ }
+ for (cntr_array_1 = 0; cntr_array_1 < r->count; cntr_array_1++) {
+ NDR_CHECK(ndr_push_wkssvc_NetrUseInfo1(ndr, NDR_BUFFERS, &r->array[cntr_array_1]));
+ }
+ }
}
return NDR_ERR_SUCCESS;
}
-_PUBLIC_ void ndr_print_wkssvc_PasswordBuffer(struct ndr_print *ndr, const char *name, const struct wkssvc_PasswordBuffer *r)
+static enum ndr_err_code ndr_pull_wkssvc_NetrUseEnumCtr1(struct ndr_pull *ndr, int ndr_flags, struct wkssvc_NetrUseEnumCtr1 *r)
{
- ndr_print_struct(ndr, name, "wkssvc_PasswordBuffer");
+ uint32_t _ptr_array;
+ uint32_t cntr_array_1;
+ TALLOC_CTX *_mem_save_array_0;
+ TALLOC_CTX *_mem_save_array_1;
+ if (ndr_flags & NDR_SCALARS) {
+ NDR_CHECK(ndr_pull_align(ndr, 4));
+ NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->count));
+ NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_array));
+ if (_ptr_array) {
+ NDR_PULL_ALLOC(ndr, r->array);
+ } else {
+ r->array = NULL;
+ }
+ }
+ if (ndr_flags & NDR_BUFFERS) {
+ if (r->array) {
+ _mem_save_array_0 = NDR_PULL_GET_MEM_CTX(ndr);
+ NDR_PULL_SET_MEM_CTX(ndr, r->array, 0);
+ NDR_CHECK(ndr_pull_array_size(ndr, &r->array));
+ NDR_PULL_ALLOC_N(ndr, r->array, ndr_get_array_size(ndr, &r->array));
+ _mem_save_array_1 = NDR_PULL_GET_MEM_CTX(ndr);
+ NDR_PULL_SET_MEM_CTX(ndr, r->array, 0);
+ for (cntr_array_1 = 0; cntr_array_1 < r->count; cntr_array_1++) {
+ NDR_CHECK(ndr_pull_wkssvc_NetrUseInfo1(ndr, NDR_SCALARS, &r->array[cntr_array_1]));
+ }
+ for (cntr_array_1 = 0; cntr_array_1 < r->count; cntr_array_1++) {
+ NDR_CHECK(ndr_pull_wkssvc_NetrUseInfo1(ndr, NDR_BUFFERS, &r->array[cntr_array_1]));
+ }
+ NDR_PULL_SET_MEM_CTX(ndr, _mem_save_array_1, 0);
+ NDR_PULL_SET_MEM_CTX(ndr, _mem_save_array_0, 0);
+ }
+ if (r->array) {
+ NDR_CHECK(ndr_check_array_size(ndr, (void*)&r->array, r->count));
+ }
+ }
+ return NDR_ERR_SUCCESS;
+}
+
+_PUBLIC_ void ndr_print_wkssvc_NetrUseEnumCtr1(struct ndr_print *ndr, const char *name, const struct wkssvc_NetrUseEnumCtr1 *r)
+{
+ uint32_t cntr_array_1;
+ ndr_print_struct(ndr, name, "wkssvc_NetrUseEnumCtr1");
+ ndr->depth++;
+ ndr_print_uint32(ndr, "count", r->count);
+ ndr_print_ptr(ndr, "array", r->array);
+ ndr->depth++;
+ if (r->array) {
+ ndr->print(ndr, "%s: ARRAY(%d)", "array", r->count);
+ ndr->depth++;
+ for (cntr_array_1=0;cntr_array_1<r->count;cntr_array_1++) {
+ char *idx_1=NULL;
+ asprintf(&idx_1, "[%d]", cntr_array_1);
+ if (idx_1) {
+ ndr_print_wkssvc_NetrUseInfo1(ndr, "array", &r->array[cntr_array_1]);
+ free(idx_1);
+ }
+ }
+ ndr->depth--;
+ }
+ ndr->depth--;
+ ndr->depth--;
+}
+
+static enum ndr_err_code ndr_push_wkssvc_NetrUseEnumCtr0(struct ndr_push *ndr, int ndr_flags, const struct wkssvc_NetrUseEnumCtr0 *r)
+{
+ uint32_t cntr_array_1;
+ if (ndr_flags & NDR_SCALARS) {
+ NDR_CHECK(ndr_push_align(ndr, 4));
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->count));
+ NDR_CHECK(ndr_push_unique_ptr(ndr, r->array));
+ }
+ if (ndr_flags & NDR_BUFFERS) {
+ if (r->array) {
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->count));
+ for (cntr_array_1 = 0; cntr_array_1 < r->count; cntr_array_1++) {
+ NDR_CHECK(ndr_push_wkssvc_NetrUseInfo0(ndr, NDR_SCALARS, &r->array[cntr_array_1]));
+ }
+ for (cntr_array_1 = 0; cntr_array_1 < r->count; cntr_array_1++) {
+ NDR_CHECK(ndr_push_wkssvc_NetrUseInfo0(ndr, NDR_BUFFERS, &r->array[cntr_array_1]));
+ }
+ }
+ }
+ return NDR_ERR_SUCCESS;
+}
+
+static enum ndr_err_code ndr_pull_wkssvc_NetrUseEnumCtr0(struct ndr_pull *ndr, int ndr_flags, struct wkssvc_NetrUseEnumCtr0 *r)
+{
+ uint32_t _ptr_array;
+ uint32_t cntr_array_1;
+ TALLOC_CTX *_mem_save_array_0;
+ TALLOC_CTX *_mem_save_array_1;
+ if (ndr_flags & NDR_SCALARS) {
+ NDR_CHECK(ndr_pull_align(ndr, 4));
+ NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->count));
+ NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_array));
+ if (_ptr_array) {
+ NDR_PULL_ALLOC(ndr, r->array);
+ } else {
+ r->array = NULL;
+ }
+ }
+ if (ndr_flags & NDR_BUFFERS) {
+ if (r->array) {
+ _mem_save_array_0 = NDR_PULL_GET_MEM_CTX(ndr);
+ NDR_PULL_SET_MEM_CTX(ndr, r->array, 0);
+ NDR_CHECK(ndr_pull_array_size(ndr, &r->array));
+ NDR_PULL_ALLOC_N(ndr, r->array, ndr_get_array_size(ndr, &r->array));
+ _mem_save_array_1 = NDR_PULL_GET_MEM_CTX(ndr);
+ NDR_PULL_SET_MEM_CTX(ndr, r->array, 0);
+ for (cntr_array_1 = 0; cntr_array_1 < r->count; cntr_array_1++) {
+ NDR_CHECK(ndr_pull_wkssvc_NetrUseInfo0(ndr, NDR_SCALARS, &r->array[cntr_array_1]));
+ }
+ for (cntr_array_1 = 0; cntr_array_1 < r->count; cntr_array_1++) {
+ NDR_CHECK(ndr_pull_wkssvc_NetrUseInfo0(ndr, NDR_BUFFERS, &r->array[cntr_array_1]));
+ }
+ NDR_PULL_SET_MEM_CTX(ndr, _mem_save_array_1, 0);
+ NDR_PULL_SET_MEM_CTX(ndr, _mem_save_array_0, 0);
+ }
+ if (r->array) {
+ NDR_CHECK(ndr_check_array_size(ndr, (void*)&r->array, r->count));
+ }
+ }
+ return NDR_ERR_SUCCESS;
+}
+
+_PUBLIC_ void ndr_print_wkssvc_NetrUseEnumCtr0(struct ndr_print *ndr, const char *name, const struct wkssvc_NetrUseEnumCtr0 *r)
+{
+ uint32_t cntr_array_1;
+ ndr_print_struct(ndr, name, "wkssvc_NetrUseEnumCtr0");
+ ndr->depth++;
+ ndr_print_uint32(ndr, "count", r->count);
+ ndr_print_ptr(ndr, "array", r->array);
ndr->depth++;
- ndr_print_array_uint8(ndr, "data", r->data, 524);
+ if (r->array) {
+ ndr->print(ndr, "%s: ARRAY(%d)", "array", r->count);
+ ndr->depth++;
+ for (cntr_array_1=0;cntr_array_1<r->count;cntr_array_1++) {
+ char *idx_1=NULL;
+ asprintf(&idx_1, "[%d]", cntr_array_1);
+ if (idx_1) {
+ ndr_print_wkssvc_NetrUseInfo0(ndr, "array", &r->array[cntr_array_1]);
+ free(idx_1);
+ }
+ }
+ ndr->depth--;
+ }
+ ndr->depth--;
ndr->depth--;
}
+static enum ndr_err_code ndr_push_wkssvc_NetrUseEnumCtr(struct ndr_push *ndr, int ndr_flags, const union wkssvc_NetrUseEnumCtr *r)
+{
+ if (ndr_flags & NDR_SCALARS) {
+ int level = ndr_push_get_switch_value(ndr, r);
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, level));
+ switch (level) {
+ case 0:
+ NDR_CHECK(ndr_push_unique_ptr(ndr, r->ctr0));
+ break;
+
+ case 1:
+ NDR_CHECK(ndr_push_unique_ptr(ndr, r->ctr1));
+ break;
+
+ case 2:
+ NDR_CHECK(ndr_push_unique_ptr(ndr, r->ctr2));
+ break;
+
+ default:
+ return ndr_push_error(ndr, NDR_ERR_BAD_SWITCH, "Bad switch value %u", level);
+ }
+ }
+ if (ndr_flags & NDR_BUFFERS) {
+ int level = ndr_push_get_switch_value(ndr, r);
+ switch (level) {
+ case 0:
+ if (r->ctr0) {
+ NDR_CHECK(ndr_push_wkssvc_NetrUseEnumCtr0(ndr, NDR_SCALARS|NDR_BUFFERS, r->ctr0));
+ }
+ break;
+
+ case 1:
+ if (r->ctr1) {
+ NDR_CHECK(ndr_push_wkssvc_NetrUseEnumCtr1(ndr, NDR_SCALARS|NDR_BUFFERS, r->ctr1));
+ }
+ break;
+
+ case 2:
+ if (r->ctr2) {
+ NDR_CHECK(ndr_push_wkssvc_NetrUseEnumCtr2(ndr, NDR_SCALARS|NDR_BUFFERS, r->ctr2));
+ }
+ break;
+
+ default:
+ return ndr_push_error(ndr, NDR_ERR_BAD_SWITCH, "Bad switch value %u", level);
+ }
+ }
+ return NDR_ERR_SUCCESS;
+}
+
+static enum ndr_err_code ndr_pull_wkssvc_NetrUseEnumCtr(struct ndr_pull *ndr, int ndr_flags, union wkssvc_NetrUseEnumCtr *r)
+{
+ int level;
+ uint32_t _level;
+ TALLOC_CTX *_mem_save_ctr0_0;
+ TALLOC_CTX *_mem_save_ctr1_0;
+ TALLOC_CTX *_mem_save_ctr2_0;
+ level = ndr_pull_get_switch_value(ndr, r);
+ if (ndr_flags & NDR_SCALARS) {
+ NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &_level));
+ if (_level != level) {
+ return ndr_pull_error(ndr, NDR_ERR_BAD_SWITCH, "Bad switch value %u for r", _level);
+ }
+ switch (level) {
+ case 0: {
+ uint32_t _ptr_ctr0;
+ NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_ctr0));
+ if (_ptr_ctr0) {
+ NDR_PULL_ALLOC(ndr, r->ctr0);
+ } else {
+ r->ctr0 = NULL;
+ }
+ break; }
+
+ case 1: {
+ uint32_t _ptr_ctr1;
+ NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_ctr1));
+ if (_ptr_ctr1) {
+ NDR_PULL_ALLOC(ndr, r->ctr1);
+ } else {
+ r->ctr1 = NULL;
+ }
+ break; }
+
+ case 2: {
+ uint32_t _ptr_ctr2;
+ NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_ctr2));
+ if (_ptr_ctr2) {
+ NDR_PULL_ALLOC(ndr, r->ctr2);
+ } else {
+ r->ctr2 = NULL;
+ }
+ break; }
+
+ default:
+ return ndr_pull_error(ndr, NDR_ERR_BAD_SWITCH, "Bad switch value %u", level);
+ }
+ }
+ if (ndr_flags & NDR_BUFFERS) {
+ switch (level) {
+ case 0:
+ if (r->ctr0) {
+ _mem_save_ctr0_0 = NDR_PULL_GET_MEM_CTX(ndr);
+ NDR_PULL_SET_MEM_CTX(ndr, r->ctr0, 0);
+ NDR_CHECK(ndr_pull_wkssvc_NetrUseEnumCtr0(ndr, NDR_SCALARS|NDR_BUFFERS, r->ctr0));
+ NDR_PULL_SET_MEM_CTX(ndr, _mem_save_ctr0_0, 0);
+ }
+ break;
+
+ case 1:
+ if (r->ctr1) {
+ _mem_save_ctr1_0 = NDR_PULL_GET_MEM_CTX(ndr);
+ NDR_PULL_SET_MEM_CTX(ndr, r->ctr1, 0);
+ NDR_CHECK(ndr_pull_wkssvc_NetrUseEnumCtr1(ndr, NDR_SCALARS|NDR_BUFFERS, r->ctr1));
+ NDR_PULL_SET_MEM_CTX(ndr, _mem_save_ctr1_0, 0);
+ }
+ break;
+
+ case 2:
+ if (r->ctr2) {
+ _mem_save_ctr2_0 = NDR_PULL_GET_MEM_CTX(ndr);
+ NDR_PULL_SET_MEM_CTX(ndr, r->ctr2, 0);
+ NDR_CHECK(ndr_pull_wkssvc_NetrUseEnumCtr2(ndr, NDR_SCALARS|NDR_BUFFERS, r->ctr2));
+ NDR_PULL_SET_MEM_CTX(ndr, _mem_save_ctr2_0, 0);
+ }
+ break;
+
+ default:
+ return ndr_pull_error(ndr, NDR_ERR_BAD_SWITCH, "Bad switch value %u", level);
+ }
+ }
+ return NDR_ERR_SUCCESS;
+}
+
+_PUBLIC_ void ndr_print_wkssvc_NetrUseEnumCtr(struct ndr_print *ndr, const char *name, const union wkssvc_NetrUseEnumCtr *r)
+{
+ int level;
+ level = ndr_print_get_switch_value(ndr, r);
+ ndr_print_union(ndr, name, level, "wkssvc_NetrUseEnumCtr");
+ switch (level) {
+ case 0:
+ ndr_print_ptr(ndr, "ctr0", r->ctr0);
+ ndr->depth++;
+ if (r->ctr0) {
+ ndr_print_wkssvc_NetrUseEnumCtr0(ndr, "ctr0", r->ctr0);
+ }
+ ndr->depth--;
+ break;
+
+ case 1:
+ ndr_print_ptr(ndr, "ctr1", r->ctr1);
+ ndr->depth++;
+ if (r->ctr1) {
+ ndr_print_wkssvc_NetrUseEnumCtr1(ndr, "ctr1", r->ctr1);
+ }
+ ndr->depth--;
+ break;
+
+ case 2:
+ ndr_print_ptr(ndr, "ctr2", r->ctr2);
+ ndr->depth++;
+ if (r->ctr2) {
+ ndr_print_wkssvc_NetrUseEnumCtr2(ndr, "ctr2", r->ctr2);
+ }
+ ndr->depth--;
+ break;
+
+ default:
+ ndr_print_bad_level(ndr, name, level);
+ }
+}
+
+static enum ndr_err_code ndr_push_wkssvc_NetrUseEnumInfo(struct ndr_push *ndr, int ndr_flags, const struct wkssvc_NetrUseEnumInfo *r)
+{
+ if (ndr_flags & NDR_SCALARS) {
+ NDR_CHECK(ndr_push_align(ndr, 4));
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->level));
+ NDR_CHECK(ndr_push_set_switch_value(ndr, &r->ctr, r->level));
+ NDR_CHECK(ndr_push_wkssvc_NetrUseEnumCtr(ndr, NDR_SCALARS, &r->ctr));
+ }
+ if (ndr_flags & NDR_BUFFERS) {
+ NDR_CHECK(ndr_push_wkssvc_NetrUseEnumCtr(ndr, NDR_BUFFERS, &r->ctr));
+ }
+ return NDR_ERR_SUCCESS;
+}
+
+static enum ndr_err_code ndr_pull_wkssvc_NetrUseEnumInfo(struct ndr_pull *ndr, int ndr_flags, struct wkssvc_NetrUseEnumInfo *r)
+{
+ if (ndr_flags & NDR_SCALARS) {
+ NDR_CHECK(ndr_pull_align(ndr, 4));
+ NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->level));
+ NDR_CHECK(ndr_pull_set_switch_value(ndr, &r->ctr, r->level));
+ NDR_CHECK(ndr_pull_wkssvc_NetrUseEnumCtr(ndr, NDR_SCALARS, &r->ctr));
+ }
+ if (ndr_flags & NDR_BUFFERS) {
+ NDR_CHECK(ndr_pull_wkssvc_NetrUseEnumCtr(ndr, NDR_BUFFERS, &r->ctr));
+ }
+ return NDR_ERR_SUCCESS;
+}
+
+_PUBLIC_ void ndr_print_wkssvc_NetrUseEnumInfo(struct ndr_print *ndr, const char *name, const struct wkssvc_NetrUseEnumInfo *r)
+{
+ ndr_print_struct(ndr, name, "wkssvc_NetrUseEnumInfo");
+ ndr->depth++;
+ ndr_print_uint32(ndr, "level", r->level);
+ ndr_print_set_switch_value(ndr, &r->ctr, r->level);
+ ndr_print_wkssvc_NetrUseEnumCtr(ndr, "ctr", &r->ctr);
+ ndr->depth--;
+}
+
+static enum ndr_err_code ndr_push_wkssvc_NetrWorkstationStatistics(struct ndr_push *ndr, int ndr_flags, const struct wkssvc_NetrWorkstationStatistics *r)
+{
+ if (ndr_flags & NDR_SCALARS) {
+ NDR_CHECK(ndr_push_align(ndr, 8));
+ NDR_CHECK(ndr_push_hyper(ndr, NDR_SCALARS, r->unknown1));
+ NDR_CHECK(ndr_push_hyper(ndr, NDR_SCALARS, r->unknown2));
+ NDR_CHECK(ndr_push_hyper(ndr, NDR_SCALARS, r->unknown3));
+ NDR_CHECK(ndr_push_hyper(ndr, NDR_SCALARS, r->unknown4));
+ NDR_CHECK(ndr_push_hyper(ndr, NDR_SCALARS, r->unknown5));
+ NDR_CHECK(ndr_push_hyper(ndr, NDR_SCALARS, r->unknown6));
+ NDR_CHECK(ndr_push_hyper(ndr, NDR_SCALARS, r->unknown7));
+ NDR_CHECK(ndr_push_hyper(ndr, NDR_SCALARS, r->unknown8));
+ NDR_CHECK(ndr_push_hyper(ndr, NDR_SCALARS, r->unknown9));
+ NDR_CHECK(ndr_push_hyper(ndr, NDR_SCALARS, r->unknown10));
+ NDR_CHECK(ndr_push_hyper(ndr, NDR_SCALARS, r->unknown11));
+ NDR_CHECK(ndr_push_hyper(ndr, NDR_SCALARS, r->unknown12));
+ NDR_CHECK(ndr_push_hyper(ndr, NDR_SCALARS, r->unknown13));
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->unknown14));
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->unknown15));
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->unknown16));
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->unknown17));
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->unknown18));
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->unknown19));
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->unknown20));
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->unknown21));
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->unknown22));
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->unknown23));
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->unknown24));
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->unknown25));
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->unknown26));
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->unknown27));
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->unknown28));
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->unknown29));
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->unknown30));
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->unknown31));
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->unknown32));
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->unknown33));
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->unknown34));
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->unknown35));
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->unknown36));
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->unknown37));
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->unknown38));
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->unknown39));
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->unknown40));
+ }
+ if (ndr_flags & NDR_BUFFERS) {
+ }
+ return NDR_ERR_SUCCESS;
+}
+
+static enum ndr_err_code ndr_pull_wkssvc_NetrWorkstationStatistics(struct ndr_pull *ndr, int ndr_flags, struct wkssvc_NetrWorkstationStatistics *r)
+{
+ if (ndr_flags & NDR_SCALARS) {
+ NDR_CHECK(ndr_pull_align(ndr, 8));
+ NDR_CHECK(ndr_pull_hyper(ndr, NDR_SCALARS, &r->unknown1));
+ NDR_CHECK(ndr_pull_hyper(ndr, NDR_SCALARS, &r->unknown2));
+ NDR_CHECK(ndr_pull_hyper(ndr, NDR_SCALARS, &r->unknown3));
+ NDR_CHECK(ndr_pull_hyper(ndr, NDR_SCALARS, &r->unknown4));
+ NDR_CHECK(ndr_pull_hyper(ndr, NDR_SCALARS, &r->unknown5));
+ NDR_CHECK(ndr_pull_hyper(ndr, NDR_SCALARS, &r->unknown6));
+ NDR_CHECK(ndr_pull_hyper(ndr, NDR_SCALARS, &r->unknown7));
+ NDR_CHECK(ndr_pull_hyper(ndr, NDR_SCALARS, &r->unknown8));
+ NDR_CHECK(ndr_pull_hyper(ndr, NDR_SCALARS, &r->unknown9));
+ NDR_CHECK(ndr_pull_hyper(ndr, NDR_SCALARS, &r->unknown10));
+ NDR_CHECK(ndr_pull_hyper(ndr, NDR_SCALARS, &r->unknown11));
+ NDR_CHECK(ndr_pull_hyper(ndr, NDR_SCALARS, &r->unknown12));
+ NDR_CHECK(ndr_pull_hyper(ndr, NDR_SCALARS, &r->unknown13));
+ NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->unknown14));
+ NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->unknown15));
+ NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->unknown16));
+ NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->unknown17));
+ NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->unknown18));
+ NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->unknown19));
+ NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->unknown20));
+ NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->unknown21));
+ NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->unknown22));
+ NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->unknown23));
+ NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->unknown24));
+ NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->unknown25));
+ NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->unknown26));
+ NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->unknown27));
+ NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->unknown28));
+ NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->unknown29));
+ NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->unknown30));
+ NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->unknown31));
+ NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->unknown32));
+ NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->unknown33));
+ NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->unknown34));
+ NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->unknown35));
+ NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->unknown36));
+ NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->unknown37));
+ NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->unknown38));
+ NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->unknown39));
+ NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->unknown40));
+ }
+ if (ndr_flags & NDR_BUFFERS) {
+ }
+ return NDR_ERR_SUCCESS;
+}
+
+_PUBLIC_ void ndr_print_wkssvc_NetrWorkstationStatistics(struct ndr_print *ndr, const char *name, const struct wkssvc_NetrWorkstationStatistics *r)
+{
+ ndr_print_struct(ndr, name, "wkssvc_NetrWorkstationStatistics");
+ ndr->depth++;
+ ndr_print_hyper(ndr, "unknown1", r->unknown1);
+ ndr_print_hyper(ndr, "unknown2", r->unknown2);
+ ndr_print_hyper(ndr, "unknown3", r->unknown3);
+ ndr_print_hyper(ndr, "unknown4", r->unknown4);
+ ndr_print_hyper(ndr, "unknown5", r->unknown5);
+ ndr_print_hyper(ndr, "unknown6", r->unknown6);
+ ndr_print_hyper(ndr, "unknown7", r->unknown7);
+ ndr_print_hyper(ndr, "unknown8", r->unknown8);
+ ndr_print_hyper(ndr, "unknown9", r->unknown9);
+ ndr_print_hyper(ndr, "unknown10", r->unknown10);
+ ndr_print_hyper(ndr, "unknown11", r->unknown11);
+ ndr_print_hyper(ndr, "unknown12", r->unknown12);
+ ndr_print_hyper(ndr, "unknown13", r->unknown13);
+ ndr_print_uint32(ndr, "unknown14", r->unknown14);
+ ndr_print_uint32(ndr, "unknown15", r->unknown15);
+ ndr_print_uint32(ndr, "unknown16", r->unknown16);
+ ndr_print_uint32(ndr, "unknown17", r->unknown17);
+ ndr_print_uint32(ndr, "unknown18", r->unknown18);
+ ndr_print_uint32(ndr, "unknown19", r->unknown19);
+ ndr_print_uint32(ndr, "unknown20", r->unknown20);
+ ndr_print_uint32(ndr, "unknown21", r->unknown21);
+ ndr_print_uint32(ndr, "unknown22", r->unknown22);
+ ndr_print_uint32(ndr, "unknown23", r->unknown23);
+ ndr_print_uint32(ndr, "unknown24", r->unknown24);
+ ndr_print_uint32(ndr, "unknown25", r->unknown25);
+ ndr_print_uint32(ndr, "unknown26", r->unknown26);
+ ndr_print_uint32(ndr, "unknown27", r->unknown27);
+ ndr_print_uint32(ndr, "unknown28", r->unknown28);
+ ndr_print_uint32(ndr, "unknown29", r->unknown29);
+ ndr_print_uint32(ndr, "unknown30", r->unknown30);
+ ndr_print_uint32(ndr, "unknown31", r->unknown31);
+ ndr_print_uint32(ndr, "unknown32", r->unknown32);
+ ndr_print_uint32(ndr, "unknown33", r->unknown33);
+ ndr_print_uint32(ndr, "unknown34", r->unknown34);
+ ndr_print_uint32(ndr, "unknown35", r->unknown35);
+ ndr_print_uint32(ndr, "unknown36", r->unknown36);
+ ndr_print_uint32(ndr, "unknown37", r->unknown37);
+ ndr_print_uint32(ndr, "unknown38", r->unknown38);
+ ndr_print_uint32(ndr, "unknown39", r->unknown39);
+ ndr_print_uint32(ndr, "unknown40", r->unknown40);
+ ndr->depth--;
+}
+
+static enum ndr_err_code ndr_push_wkssvc_renameflags(struct ndr_push *ndr, int ndr_flags, uint32_t r)
+{
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r));
+ return NDR_ERR_SUCCESS;
+}
+
+static enum ndr_err_code ndr_pull_wkssvc_renameflags(struct ndr_pull *ndr, int ndr_flags, uint32_t *r)
+{
+ uint32_t v;
+ NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &v));
+ *r = v;
+ return NDR_ERR_SUCCESS;
+}
+
+_PUBLIC_ void ndr_print_wkssvc_renameflags(struct ndr_print *ndr, const char *name, uint32_t r)
+{
+ ndr_print_uint32(ndr, name, r);
+ ndr->depth++;
+ ndr_print_bitmap_flag(ndr, sizeof(uint32_t), "WKSSVC_JOIN_FLAGS_ACCOUNT_CREATE", WKSSVC_JOIN_FLAGS_ACCOUNT_CREATE, r);
+ ndr->depth--;
+}
+
+static enum ndr_err_code ndr_push_wkssvc_NetValidateNameType(struct ndr_push *ndr, int ndr_flags, enum wkssvc_NetValidateNameType r)
+{
+ NDR_CHECK(ndr_push_uint16(ndr, NDR_SCALARS, r));
+ return NDR_ERR_SUCCESS;
+}
+
+static enum ndr_err_code ndr_pull_wkssvc_NetValidateNameType(struct ndr_pull *ndr, int ndr_flags, enum wkssvc_NetValidateNameType *r)
+{
+ uint16_t v;
+ NDR_CHECK(ndr_pull_uint16(ndr, NDR_SCALARS, &v));
+ *r = v;
+ return NDR_ERR_SUCCESS;
+}
+
+_PUBLIC_ void ndr_print_wkssvc_NetValidateNameType(struct ndr_print *ndr, const char *name, enum wkssvc_NetValidateNameType r)
+{
+ const char *val = NULL;
+
+ switch (r) {
+ case NetSetupUnknown: val = "NetSetupUnknown"; break;
+ case NetSetupMachine: val = "NetSetupMachine"; break;
+ case NetSetupWorkgroup: val = "NetSetupWorkgroup"; break;
+ case NetSetupDomain: val = "NetSetupDomain"; break;
+ case NetSetupNonExistentDomain: val = "NetSetupNonExistentDomain"; break;
+ case NetSetupDnsMachine: val = "NetSetupDnsMachine"; break;
+ }
+ ndr_print_enum(ndr, name, "ENUM", val, r);
+}
+
+static enum ndr_err_code ndr_push_wkssvc_NetJoinStatus(struct ndr_push *ndr, int ndr_flags, enum wkssvc_NetJoinStatus r)
+{
+ NDR_CHECK(ndr_push_uint16(ndr, NDR_SCALARS, r));
+ return NDR_ERR_SUCCESS;
+}
+
+static enum ndr_err_code ndr_pull_wkssvc_NetJoinStatus(struct ndr_pull *ndr, int ndr_flags, enum wkssvc_NetJoinStatus *r)
+{
+ uint16_t v;
+ NDR_CHECK(ndr_pull_uint16(ndr, NDR_SCALARS, &v));
+ *r = v;
+ return NDR_ERR_SUCCESS;
+}
+
+_PUBLIC_ void ndr_print_wkssvc_NetJoinStatus(struct ndr_print *ndr, const char *name, enum wkssvc_NetJoinStatus r)
+{
+ const char *val = NULL;
+
+ switch (r) {
+ case NetSetupUnknownStatus: val = "NetSetupUnknownStatus"; break;
+ case NetSetupUnjoined: val = "NetSetupUnjoined"; break;
+ case NetSetupWorkgroupName: val = "NetSetupWorkgroupName"; break;
+ case NetSetupDomainName: val = "NetSetupDomainName"; break;
+ }
+ ndr_print_enum(ndr, name, "ENUM", val, r);
+}
+
+static enum ndr_err_code ndr_push_wkssvc_PasswordBuffer(struct ndr_push *ndr, int ndr_flags, const struct wkssvc_PasswordBuffer *r)
+{
+ {
+ uint32_t _flags_save_STRUCT = ndr->flags;
+ ndr_set_flags(&ndr->flags, LIBNDR_PRINT_ARRAY_HEX);
+ if (ndr_flags & NDR_SCALARS) {
+ NDR_CHECK(ndr_push_align(ndr, 1));
+ NDR_CHECK(ndr_push_array_uint8(ndr, NDR_SCALARS, r->data, 524));
+ }
+ if (ndr_flags & NDR_BUFFERS) {
+ }
+ ndr->flags = _flags_save_STRUCT;
+ }
+ return NDR_ERR_SUCCESS;
+}
+
+static enum ndr_err_code ndr_pull_wkssvc_PasswordBuffer(struct ndr_pull *ndr, int ndr_flags, struct wkssvc_PasswordBuffer *r)
+{
+ {
+ uint32_t _flags_save_STRUCT = ndr->flags;
+ ndr_set_flags(&ndr->flags, LIBNDR_PRINT_ARRAY_HEX);
+ if (ndr_flags & NDR_SCALARS) {
+ NDR_CHECK(ndr_pull_align(ndr, 1));
+ NDR_CHECK(ndr_pull_array_uint8(ndr, NDR_SCALARS, r->data, 524));
+ }
+ if (ndr_flags & NDR_BUFFERS) {
+ }
+ ndr->flags = _flags_save_STRUCT;
+ }
+ return NDR_ERR_SUCCESS;
+}
+
+_PUBLIC_ void ndr_print_wkssvc_PasswordBuffer(struct ndr_print *ndr, const char *name, const struct wkssvc_PasswordBuffer *r)
+{
+ ndr_print_struct(ndr, name, "wkssvc_PasswordBuffer");
+ {
+ uint32_t _flags_save_STRUCT = ndr->flags;
+ ndr_set_flags(&ndr->flags, LIBNDR_PRINT_ARRAY_HEX);
+ ndr->depth++;
+ ndr_print_array_uint8(ndr, "data", r->data, 524);
+ ndr->depth--;
+ ndr->flags = _flags_save_STRUCT;
+ }
+}
+
static enum ndr_err_code ndr_push_wkssvc_joinflags(struct ndr_push *ndr, int ndr_flags, uint32_t r)
{
NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r));
@@ -2141,6 +5551,8 @@ _PUBLIC_ void ndr_print_wkssvc_joinflags(struct ndr_print *ndr, const char *name
{
ndr_print_uint32(ndr, name, r);
ndr->depth++;
+ ndr_print_bitmap_flag(ndr, sizeof(uint32_t), "WKSSVC_JOIN_FLAGS_JOIN_WITH_NEW_NAME", WKSSVC_JOIN_FLAGS_JOIN_WITH_NEW_NAME, r);
+ ndr_print_bitmap_flag(ndr, sizeof(uint32_t), "WKSSVC_JOIN_FLAGS_JOIN_DC_ACCOUNT", WKSSVC_JOIN_FLAGS_JOIN_DC_ACCOUNT, r);
ndr_print_bitmap_flag(ndr, sizeof(uint32_t), "WKSSVC_JOIN_FLAGS_DEFER_SPN", WKSSVC_JOIN_FLAGS_DEFER_SPN, r);
ndr_print_bitmap_flag(ndr, sizeof(uint32_t), "WKSSVC_JOIN_FLAGS_MACHINE_PWD_PASSED", WKSSVC_JOIN_FLAGS_MACHINE_PWD_PASSED, r);
ndr_print_bitmap_flag(ndr, sizeof(uint32_t), "WKSSVC_JOIN_FLAGS_JOIN_UNSECURE", WKSSVC_JOIN_FLAGS_JOIN_UNSECURE, r);
@@ -2152,25 +5564,117 @@ _PUBLIC_ void ndr_print_wkssvc_joinflags(struct ndr_print *ndr, const char *name
ndr->depth--;
}
-static enum ndr_err_code ndr_push_wkssvc_renameflags(struct ndr_push *ndr, int ndr_flags, uint32_t r)
+static enum ndr_err_code ndr_push_wkssvc_ComputerNameType(struct ndr_push *ndr, int ndr_flags, enum wkssvc_ComputerNameType r)
{
- NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r));
+ NDR_CHECK(ndr_push_uint16(ndr, NDR_SCALARS, r));
return NDR_ERR_SUCCESS;
}
-static enum ndr_err_code ndr_pull_wkssvc_renameflags(struct ndr_pull *ndr, int ndr_flags, uint32_t *r)
+static enum ndr_err_code ndr_pull_wkssvc_ComputerNameType(struct ndr_pull *ndr, int ndr_flags, enum wkssvc_ComputerNameType *r)
{
- uint32_t v;
- NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &v));
+ uint16_t v;
+ NDR_CHECK(ndr_pull_uint16(ndr, NDR_SCALARS, &v));
*r = v;
return NDR_ERR_SUCCESS;
}
-_PUBLIC_ void ndr_print_wkssvc_renameflags(struct ndr_print *ndr, const char *name, uint32_t r)
+_PUBLIC_ void ndr_print_wkssvc_ComputerNameType(struct ndr_print *ndr, const char *name, enum wkssvc_ComputerNameType r)
{
- ndr_print_uint32(ndr, name, r);
+ const char *val = NULL;
+
+ switch (r) {
+ case NetPrimaryComputerName: val = "NetPrimaryComputerName"; break;
+ case NetAlternateComputerNames: val = "NetAlternateComputerNames"; break;
+ case NetAllComputerNames: val = "NetAllComputerNames"; break;
+ case NetComputerNameTypeMax: val = "NetComputerNameTypeMax"; break;
+ }
+ ndr_print_enum(ndr, name, "ENUM", val, r);
+}
+
+static enum ndr_err_code ndr_push_wkssvc_ComputerNamesCtr(struct ndr_push *ndr, int ndr_flags, const struct wkssvc_ComputerNamesCtr *r)
+{
+ uint32_t cntr_computer_name_1;
+ if (ndr_flags & NDR_SCALARS) {
+ NDR_CHECK(ndr_push_align(ndr, 4));
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->count));
+ NDR_CHECK(ndr_push_unique_ptr(ndr, r->computer_name));
+ }
+ if (ndr_flags & NDR_BUFFERS) {
+ if (r->computer_name) {
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->count));
+ for (cntr_computer_name_1 = 0; cntr_computer_name_1 < r->count; cntr_computer_name_1++) {
+ NDR_CHECK(ndr_push_lsa_String(ndr, NDR_SCALARS, &r->computer_name[cntr_computer_name_1]));
+ }
+ for (cntr_computer_name_1 = 0; cntr_computer_name_1 < r->count; cntr_computer_name_1++) {
+ NDR_CHECK(ndr_push_lsa_String(ndr, NDR_BUFFERS, &r->computer_name[cntr_computer_name_1]));
+ }
+ }
+ }
+ return NDR_ERR_SUCCESS;
+}
+
+static enum ndr_err_code ndr_pull_wkssvc_ComputerNamesCtr(struct ndr_pull *ndr, int ndr_flags, struct wkssvc_ComputerNamesCtr *r)
+{
+ uint32_t _ptr_computer_name;
+ uint32_t cntr_computer_name_1;
+ TALLOC_CTX *_mem_save_computer_name_0;
+ TALLOC_CTX *_mem_save_computer_name_1;
+ if (ndr_flags & NDR_SCALARS) {
+ NDR_CHECK(ndr_pull_align(ndr, 4));
+ NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->count));
+ NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_computer_name));
+ if (_ptr_computer_name) {
+ NDR_PULL_ALLOC(ndr, r->computer_name);
+ } else {
+ r->computer_name = NULL;
+ }
+ }
+ if (ndr_flags & NDR_BUFFERS) {
+ if (r->computer_name) {
+ _mem_save_computer_name_0 = NDR_PULL_GET_MEM_CTX(ndr);
+ NDR_PULL_SET_MEM_CTX(ndr, r->computer_name, 0);
+ NDR_CHECK(ndr_pull_array_size(ndr, &r->computer_name));
+ NDR_PULL_ALLOC_N(ndr, r->computer_name, ndr_get_array_size(ndr, &r->computer_name));
+ _mem_save_computer_name_1 = NDR_PULL_GET_MEM_CTX(ndr);
+ NDR_PULL_SET_MEM_CTX(ndr, r->computer_name, 0);
+ for (cntr_computer_name_1 = 0; cntr_computer_name_1 < r->count; cntr_computer_name_1++) {
+ NDR_CHECK(ndr_pull_lsa_String(ndr, NDR_SCALARS, &r->computer_name[cntr_computer_name_1]));
+ }
+ for (cntr_computer_name_1 = 0; cntr_computer_name_1 < r->count; cntr_computer_name_1++) {
+ NDR_CHECK(ndr_pull_lsa_String(ndr, NDR_BUFFERS, &r->computer_name[cntr_computer_name_1]));
+ }
+ NDR_PULL_SET_MEM_CTX(ndr, _mem_save_computer_name_1, 0);
+ NDR_PULL_SET_MEM_CTX(ndr, _mem_save_computer_name_0, 0);
+ }
+ if (r->computer_name) {
+ NDR_CHECK(ndr_check_array_size(ndr, (void*)&r->computer_name, r->count));
+ }
+ }
+ return NDR_ERR_SUCCESS;
+}
+
+_PUBLIC_ void ndr_print_wkssvc_ComputerNamesCtr(struct ndr_print *ndr, const char *name, const struct wkssvc_ComputerNamesCtr *r)
+{
+ uint32_t cntr_computer_name_1;
+ ndr_print_struct(ndr, name, "wkssvc_ComputerNamesCtr");
ndr->depth++;
- ndr_print_bitmap_flag(ndr, sizeof(uint32_t), "WKSSVC_JOIN_FLAGS_ACCOUNT_CREATE", WKSSVC_JOIN_FLAGS_ACCOUNT_CREATE, r);
+ ndr_print_uint32(ndr, "count", r->count);
+ ndr_print_ptr(ndr, "computer_name", r->computer_name);
+ ndr->depth++;
+ if (r->computer_name) {
+ ndr->print(ndr, "%s: ARRAY(%d)", "computer_name", r->count);
+ ndr->depth++;
+ for (cntr_computer_name_1=0;cntr_computer_name_1<r->count;cntr_computer_name_1++) {
+ char *idx_1=NULL;
+ asprintf(&idx_1, "[%d]", cntr_computer_name_1);
+ if (idx_1) {
+ ndr_print_lsa_String(ndr, "computer_name", &r->computer_name[cntr_computer_name_1]);
+ free(idx_1);
+ }
+ }
+ ndr->depth--;
+ }
+ ndr->depth--;
ndr->depth--;
}
@@ -2415,34 +5919,29 @@ static enum ndr_err_code ndr_push_wkssvc_NetWkstaEnumUsers(struct ndr_push *ndr,
NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.server_name, CH_UTF16)));
NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->in.server_name, ndr_charset_length(r->in.server_name, CH_UTF16), sizeof(uint16_t), CH_UTF16));
}
- NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->in.level));
- if (r->in.users == NULL) {
+ if (r->in.info == NULL) {
return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
}
- NDR_CHECK(ndr_push_WKS_USER_ENUM_UNION(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.users));
+ NDR_CHECK(ndr_push_wkssvc_NetWkstaEnumUsersInfo(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.info));
NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->in.prefmaxlen));
- if (r->in.resumehandle == NULL) {
- return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
+ NDR_CHECK(ndr_push_unique_ptr(ndr, r->in.resume_handle));
+ if (r->in.resume_handle) {
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, *r->in.resume_handle));
}
- NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, *r->in.resumehandle));
}
if (flags & NDR_OUT) {
- if (r->out.users == NULL) {
+ if (r->out.info == NULL) {
return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
}
- NDR_CHECK(ndr_push_WKS_USER_ENUM_UNION(ndr, NDR_SCALARS|NDR_BUFFERS, r->out.users));
- NDR_CHECK(ndr_push_unique_ptr(ndr, r->out.entriesread));
- if (r->out.entriesread) {
- NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, *r->out.entriesread));
- }
- NDR_CHECK(ndr_push_unique_ptr(ndr, r->out.totalentries));
- if (r->out.totalentries) {
- NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, *r->out.totalentries));
- }
- if (r->out.resumehandle == NULL) {
+ NDR_CHECK(ndr_push_wkssvc_NetWkstaEnumUsersInfo(ndr, NDR_SCALARS|NDR_BUFFERS, r->out.info));
+ if (r->out.entries_read == NULL) {
return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
}
- NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, *r->out.resumehandle));
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, *r->out.entries_read));
+ NDR_CHECK(ndr_push_unique_ptr(ndr, r->out.resume_handle));
+ if (r->out.resume_handle) {
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, *r->out.resume_handle));
+ }
NDR_CHECK(ndr_push_WERROR(ndr, NDR_SCALARS, r->out.result));
}
return NDR_ERR_SUCCESS;
@@ -2451,13 +5950,11 @@ static enum ndr_err_code ndr_push_wkssvc_NetWkstaEnumUsers(struct ndr_push *ndr,
static enum ndr_err_code ndr_pull_wkssvc_NetWkstaEnumUsers(struct ndr_pull *ndr, int flags, struct wkssvc_NetWkstaEnumUsers *r)
{
uint32_t _ptr_server_name;
- uint32_t _ptr_entriesread;
- uint32_t _ptr_totalentries;
+ uint32_t _ptr_resume_handle;
TALLOC_CTX *_mem_save_server_name_0;
- TALLOC_CTX *_mem_save_users_0;
- TALLOC_CTX *_mem_save_entriesread_0;
- TALLOC_CTX *_mem_save_totalentries_0;
- TALLOC_CTX *_mem_save_resumehandle_0;
+ TALLOC_CTX *_mem_save_info_0;
+ TALLOC_CTX *_mem_save_entries_read_0;
+ TALLOC_CTX *_mem_save_resume_handle_0;
if (flags & NDR_IN) {
ZERO_STRUCT(r->out);
@@ -2479,66 +5976,58 @@ static enum ndr_err_code ndr_pull_wkssvc_NetWkstaEnumUsers(struct ndr_pull *ndr,
NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->in.server_name, ndr_get_array_length(ndr, &r->in.server_name), sizeof(uint16_t), CH_UTF16));
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_server_name_0, 0);
}
- NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->in.level));
if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
- NDR_PULL_ALLOC(ndr, r->in.users);
+ NDR_PULL_ALLOC(ndr, r->in.info);
}
- _mem_save_users_0 = NDR_PULL_GET_MEM_CTX(ndr);
- NDR_PULL_SET_MEM_CTX(ndr, r->in.users, LIBNDR_FLAG_REF_ALLOC);
- NDR_CHECK(ndr_pull_WKS_USER_ENUM_UNION(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.users));
- NDR_PULL_SET_MEM_CTX(ndr, _mem_save_users_0, LIBNDR_FLAG_REF_ALLOC);
+ _mem_save_info_0 = NDR_PULL_GET_MEM_CTX(ndr);
+ NDR_PULL_SET_MEM_CTX(ndr, r->in.info, LIBNDR_FLAG_REF_ALLOC);
+ NDR_CHECK(ndr_pull_wkssvc_NetWkstaEnumUsersInfo(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.info));
+ NDR_PULL_SET_MEM_CTX(ndr, _mem_save_info_0, LIBNDR_FLAG_REF_ALLOC);
NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->in.prefmaxlen));
- if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
- NDR_PULL_ALLOC(ndr, r->in.resumehandle);
+ NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_resume_handle));
+ if (_ptr_resume_handle) {
+ NDR_PULL_ALLOC(ndr, r->in.resume_handle);
+ } else {
+ r->in.resume_handle = NULL;
}
- _mem_save_resumehandle_0 = NDR_PULL_GET_MEM_CTX(ndr);
- NDR_PULL_SET_MEM_CTX(ndr, r->in.resumehandle, LIBNDR_FLAG_REF_ALLOC);
- NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, r->in.resumehandle));
- NDR_PULL_SET_MEM_CTX(ndr, _mem_save_resumehandle_0, LIBNDR_FLAG_REF_ALLOC);
- NDR_PULL_ALLOC(ndr, r->out.users);
- *r->out.users = *r->in.users;
- NDR_PULL_ALLOC(ndr, r->out.resumehandle);
- *r->out.resumehandle = *r->in.resumehandle;
+ if (r->in.resume_handle) {
+ _mem_save_resume_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
+ NDR_PULL_SET_MEM_CTX(ndr, r->in.resume_handle, 0);
+ NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, r->in.resume_handle));
+ NDR_PULL_SET_MEM_CTX(ndr, _mem_save_resume_handle_0, 0);
+ }
+ NDR_PULL_ALLOC(ndr, r->out.info);
+ *r->out.info = *r->in.info;
+ NDR_PULL_ALLOC(ndr, r->out.entries_read);
+ ZERO_STRUCTP(r->out.entries_read);
}
if (flags & NDR_OUT) {
if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
- NDR_PULL_ALLOC(ndr, r->out.users);
- }
- _mem_save_users_0 = NDR_PULL_GET_MEM_CTX(ndr);
- NDR_PULL_SET_MEM_CTX(ndr, r->out.users, LIBNDR_FLAG_REF_ALLOC);
- NDR_CHECK(ndr_pull_WKS_USER_ENUM_UNION(ndr, NDR_SCALARS|NDR_BUFFERS, r->out.users));
- NDR_PULL_SET_MEM_CTX(ndr, _mem_save_users_0, LIBNDR_FLAG_REF_ALLOC);
- NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_entriesread));
- if (_ptr_entriesread) {
- NDR_PULL_ALLOC(ndr, r->out.entriesread);
- } else {
- r->out.entriesread = NULL;
- }
- if (r->out.entriesread) {
- _mem_save_entriesread_0 = NDR_PULL_GET_MEM_CTX(ndr);
- NDR_PULL_SET_MEM_CTX(ndr, r->out.entriesread, 0);
- NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, r->out.entriesread));
- NDR_PULL_SET_MEM_CTX(ndr, _mem_save_entriesread_0, 0);
+ NDR_PULL_ALLOC(ndr, r->out.info);
}
- NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_totalentries));
- if (_ptr_totalentries) {
- NDR_PULL_ALLOC(ndr, r->out.totalentries);
+ _mem_save_info_0 = NDR_PULL_GET_MEM_CTX(ndr);
+ NDR_PULL_SET_MEM_CTX(ndr, r->out.info, LIBNDR_FLAG_REF_ALLOC);
+ NDR_CHECK(ndr_pull_wkssvc_NetWkstaEnumUsersInfo(ndr, NDR_SCALARS|NDR_BUFFERS, r->out.info));
+ NDR_PULL_SET_MEM_CTX(ndr, _mem_save_info_0, LIBNDR_FLAG_REF_ALLOC);
+ if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
+ NDR_PULL_ALLOC(ndr, r->out.entries_read);
+ }
+ _mem_save_entries_read_0 = NDR_PULL_GET_MEM_CTX(ndr);
+ NDR_PULL_SET_MEM_CTX(ndr, r->out.entries_read, LIBNDR_FLAG_REF_ALLOC);
+ NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, r->out.entries_read));
+ NDR_PULL_SET_MEM_CTX(ndr, _mem_save_entries_read_0, LIBNDR_FLAG_REF_ALLOC);
+ NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_resume_handle));
+ if (_ptr_resume_handle) {
+ NDR_PULL_ALLOC(ndr, r->out.resume_handle);
} else {
- r->out.totalentries = NULL;
+ r->out.resume_handle = NULL;
}
- if (r->out.totalentries) {
- _mem_save_totalentries_0 = NDR_PULL_GET_MEM_CTX(ndr);
- NDR_PULL_SET_MEM_CTX(ndr, r->out.totalentries, 0);
- NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, r->out.totalentries));
- NDR_PULL_SET_MEM_CTX(ndr, _mem_save_totalentries_0, 0);
+ if (r->out.resume_handle) {
+ _mem_save_resume_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
+ NDR_PULL_SET_MEM_CTX(ndr, r->out.resume_handle, 0);
+ NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, r->out.resume_handle));
+ NDR_PULL_SET_MEM_CTX(ndr, _mem_save_resume_handle_0, 0);
}
- if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
- NDR_PULL_ALLOC(ndr, r->out.resumehandle);
- }
- _mem_save_resumehandle_0 = NDR_PULL_GET_MEM_CTX(ndr);
- NDR_PULL_SET_MEM_CTX(ndr, r->out.resumehandle, LIBNDR_FLAG_REF_ALLOC);
- NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, r->out.resumehandle));
- NDR_PULL_SET_MEM_CTX(ndr, _mem_save_resumehandle_0, LIBNDR_FLAG_REF_ALLOC);
NDR_CHECK(ndr_pull_WERROR(ndr, NDR_SCALARS, &r->out.result));
}
return NDR_ERR_SUCCESS;
@@ -2560,123 +6049,280 @@ _PUBLIC_ void ndr_print_wkssvc_NetWkstaEnumUsers(struct ndr_print *ndr, const ch
ndr_print_string(ndr, "server_name", r->in.server_name);
}
ndr->depth--;
- ndr_print_uint32(ndr, "level", r->in.level);
- ndr_print_ptr(ndr, "users", r->in.users);
+ ndr_print_ptr(ndr, "info", r->in.info);
ndr->depth++;
- ndr_print_WKS_USER_ENUM_UNION(ndr, "users", r->in.users);
+ ndr_print_wkssvc_NetWkstaEnumUsersInfo(ndr, "info", r->in.info);
ndr->depth--;
ndr_print_uint32(ndr, "prefmaxlen", r->in.prefmaxlen);
- ndr_print_ptr(ndr, "resumehandle", r->in.resumehandle);
+ ndr_print_ptr(ndr, "resume_handle", r->in.resume_handle);
ndr->depth++;
- ndr_print_uint32(ndr, "resumehandle", *r->in.resumehandle);
+ if (r->in.resume_handle) {
+ ndr_print_uint32(ndr, "resume_handle", *r->in.resume_handle);
+ }
ndr->depth--;
ndr->depth--;
}
if (flags & NDR_OUT) {
ndr_print_struct(ndr, "out", "wkssvc_NetWkstaEnumUsers");
ndr->depth++;
- ndr_print_ptr(ndr, "users", r->out.users);
+ ndr_print_ptr(ndr, "info", r->out.info);
ndr->depth++;
- ndr_print_WKS_USER_ENUM_UNION(ndr, "users", r->out.users);
+ ndr_print_wkssvc_NetWkstaEnumUsersInfo(ndr, "info", r->out.info);
ndr->depth--;
- ndr_print_ptr(ndr, "entriesread", r->out.entriesread);
+ ndr_print_ptr(ndr, "entries_read", r->out.entries_read);
ndr->depth++;
- if (r->out.entriesread) {
- ndr_print_uint32(ndr, "entriesread", *r->out.entriesread);
- }
+ ndr_print_uint32(ndr, "entries_read", *r->out.entries_read);
ndr->depth--;
- ndr_print_ptr(ndr, "totalentries", r->out.totalentries);
+ ndr_print_ptr(ndr, "resume_handle", r->out.resume_handle);
ndr->depth++;
- if (r->out.totalentries) {
- ndr_print_uint32(ndr, "totalentries", *r->out.totalentries);
+ if (r->out.resume_handle) {
+ ndr_print_uint32(ndr, "resume_handle", *r->out.resume_handle);
}
ndr->depth--;
- ndr_print_ptr(ndr, "resumehandle", r->out.resumehandle);
- ndr->depth++;
- ndr_print_uint32(ndr, "resumehandle", *r->out.resumehandle);
- ndr->depth--;
ndr_print_WERROR(ndr, "result", r->out.result);
ndr->depth--;
}
ndr->depth--;
}
-static enum ndr_err_code ndr_push_WKSSVC_NETRWKSTAUSERGETINFO(struct ndr_push *ndr, int flags, const struct WKSSVC_NETRWKSTAUSERGETINFO *r)
+static enum ndr_err_code ndr_push_wkssvc_NetrWkstaUserGetInfo(struct ndr_push *ndr, int flags, const struct wkssvc_NetrWkstaUserGetInfo *r)
{
if (flags & NDR_IN) {
+ NDR_CHECK(ndr_push_unique_ptr(ndr, r->in.unknown));
+ if (r->in.unknown) {
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.unknown, CH_UTF16)));
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 0));
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.unknown, CH_UTF16)));
+ NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->in.unknown, ndr_charset_length(r->in.unknown, CH_UTF16), sizeof(uint16_t), CH_UTF16));
+ }
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->in.level));
}
if (flags & NDR_OUT) {
+ if (r->out.info == NULL) {
+ return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
+ }
+ NDR_CHECK(ndr_push_set_switch_value(ndr, r->out.info, r->in.level));
+ NDR_CHECK(ndr_push_wkssvc_NetrWkstaUserInfo(ndr, NDR_SCALARS|NDR_BUFFERS, r->out.info));
NDR_CHECK(ndr_push_WERROR(ndr, NDR_SCALARS, r->out.result));
}
return NDR_ERR_SUCCESS;
}
-static enum ndr_err_code ndr_pull_WKSSVC_NETRWKSTAUSERGETINFO(struct ndr_pull *ndr, int flags, struct WKSSVC_NETRWKSTAUSERGETINFO *r)
+static enum ndr_err_code ndr_pull_wkssvc_NetrWkstaUserGetInfo(struct ndr_pull *ndr, int flags, struct wkssvc_NetrWkstaUserGetInfo *r)
{
+ uint32_t _ptr_unknown;
+ TALLOC_CTX *_mem_save_unknown_0;
+ TALLOC_CTX *_mem_save_info_0;
if (flags & NDR_IN) {
+ ZERO_STRUCT(r->out);
+
+ NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_unknown));
+ if (_ptr_unknown) {
+ NDR_PULL_ALLOC(ndr, r->in.unknown);
+ } else {
+ r->in.unknown = NULL;
+ }
+ if (r->in.unknown) {
+ _mem_save_unknown_0 = NDR_PULL_GET_MEM_CTX(ndr);
+ NDR_PULL_SET_MEM_CTX(ndr, r->in.unknown, 0);
+ NDR_CHECK(ndr_pull_array_size(ndr, &r->in.unknown));
+ NDR_CHECK(ndr_pull_array_length(ndr, &r->in.unknown));
+ if (ndr_get_array_length(ndr, &r->in.unknown) > ndr_get_array_size(ndr, &r->in.unknown)) {
+ return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", ndr_get_array_size(ndr, &r->in.unknown), ndr_get_array_length(ndr, &r->in.unknown));
+ }
+ NDR_CHECK(ndr_check_string_terminator(ndr, ndr_get_array_length(ndr, &r->in.unknown), sizeof(uint16_t)));
+ NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->in.unknown, ndr_get_array_length(ndr, &r->in.unknown), sizeof(uint16_t), CH_UTF16));
+ NDR_PULL_SET_MEM_CTX(ndr, _mem_save_unknown_0, 0);
+ }
+ NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->in.level));
+ NDR_PULL_ALLOC(ndr, r->out.info);
+ ZERO_STRUCTP(r->out.info);
}
if (flags & NDR_OUT) {
+ if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
+ NDR_PULL_ALLOC(ndr, r->out.info);
+ }
+ _mem_save_info_0 = NDR_PULL_GET_MEM_CTX(ndr);
+ NDR_PULL_SET_MEM_CTX(ndr, r->out.info, LIBNDR_FLAG_REF_ALLOC);
+ NDR_CHECK(ndr_pull_set_switch_value(ndr, r->out.info, r->in.level));
+ NDR_CHECK(ndr_pull_wkssvc_NetrWkstaUserInfo(ndr, NDR_SCALARS|NDR_BUFFERS, r->out.info));
+ NDR_PULL_SET_MEM_CTX(ndr, _mem_save_info_0, LIBNDR_FLAG_REF_ALLOC);
NDR_CHECK(ndr_pull_WERROR(ndr, NDR_SCALARS, &r->out.result));
}
return NDR_ERR_SUCCESS;
}
-_PUBLIC_ void ndr_print_WKSSVC_NETRWKSTAUSERGETINFO(struct ndr_print *ndr, const char *name, int flags, const struct WKSSVC_NETRWKSTAUSERGETINFO *r)
+_PUBLIC_ void ndr_print_wkssvc_NetrWkstaUserGetInfo(struct ndr_print *ndr, const char *name, int flags, const struct wkssvc_NetrWkstaUserGetInfo *r)
{
- ndr_print_struct(ndr, name, "WKSSVC_NETRWKSTAUSERGETINFO");
+ ndr_print_struct(ndr, name, "wkssvc_NetrWkstaUserGetInfo");
ndr->depth++;
if (flags & NDR_SET_VALUES) {
ndr->flags |= LIBNDR_PRINT_SET_VALUES;
}
if (flags & NDR_IN) {
- ndr_print_struct(ndr, "in", "WKSSVC_NETRWKSTAUSERGETINFO");
+ ndr_print_struct(ndr, "in", "wkssvc_NetrWkstaUserGetInfo");
+ ndr->depth++;
+ ndr_print_ptr(ndr, "unknown", r->in.unknown);
ndr->depth++;
+ if (r->in.unknown) {
+ ndr_print_string(ndr, "unknown", r->in.unknown);
+ }
+ ndr->depth--;
+ ndr_print_uint32(ndr, "level", r->in.level);
ndr->depth--;
}
if (flags & NDR_OUT) {
- ndr_print_struct(ndr, "out", "WKSSVC_NETRWKSTAUSERGETINFO");
+ ndr_print_struct(ndr, "out", "wkssvc_NetrWkstaUserGetInfo");
ndr->depth++;
+ ndr_print_ptr(ndr, "info", r->out.info);
+ ndr->depth++;
+ ndr_print_set_switch_value(ndr, r->out.info, r->in.level);
+ ndr_print_wkssvc_NetrWkstaUserInfo(ndr, "info", r->out.info);
+ ndr->depth--;
ndr_print_WERROR(ndr, "result", r->out.result);
ndr->depth--;
}
ndr->depth--;
}
-static enum ndr_err_code ndr_push_WKSSVC_NETRWKSTAUSERSETINFO(struct ndr_push *ndr, int flags, const struct WKSSVC_NETRWKSTAUSERSETINFO *r)
+static enum ndr_err_code ndr_push_wkssvc_NetrWkstaUserSetInfo(struct ndr_push *ndr, int flags, const struct wkssvc_NetrWkstaUserSetInfo *r)
{
if (flags & NDR_IN) {
+ NDR_CHECK(ndr_push_unique_ptr(ndr, r->in.unknown));
+ if (r->in.unknown) {
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.unknown, CH_UTF16)));
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 0));
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.unknown, CH_UTF16)));
+ NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->in.unknown, ndr_charset_length(r->in.unknown, CH_UTF16), sizeof(uint16_t), CH_UTF16));
+ }
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->in.level));
+ if (r->in.info == NULL) {
+ return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
+ }
+ NDR_CHECK(ndr_push_set_switch_value(ndr, r->in.info, r->in.level));
+ NDR_CHECK(ndr_push_wkssvc_NetrWkstaUserInfo(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.info));
+ NDR_CHECK(ndr_push_unique_ptr(ndr, r->in.parm_err));
+ if (r->in.parm_err) {
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, *r->in.parm_err));
+ }
}
if (flags & NDR_OUT) {
+ NDR_CHECK(ndr_push_unique_ptr(ndr, r->out.parm_err));
+ if (r->out.parm_err) {
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, *r->out.parm_err));
+ }
NDR_CHECK(ndr_push_WERROR(ndr, NDR_SCALARS, r->out.result));
}
return NDR_ERR_SUCCESS;
}
-static enum ndr_err_code ndr_pull_WKSSVC_NETRWKSTAUSERSETINFO(struct ndr_pull *ndr, int flags, struct WKSSVC_NETRWKSTAUSERSETINFO *r)
+static enum ndr_err_code ndr_pull_wkssvc_NetrWkstaUserSetInfo(struct ndr_pull *ndr, int flags, struct wkssvc_NetrWkstaUserSetInfo *r)
{
+ uint32_t _ptr_unknown;
+ uint32_t _ptr_parm_err;
+ TALLOC_CTX *_mem_save_unknown_0;
+ TALLOC_CTX *_mem_save_info_0;
+ TALLOC_CTX *_mem_save_parm_err_0;
if (flags & NDR_IN) {
+ ZERO_STRUCT(r->out);
+
+ NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_unknown));
+ if (_ptr_unknown) {
+ NDR_PULL_ALLOC(ndr, r->in.unknown);
+ } else {
+ r->in.unknown = NULL;
+ }
+ if (r->in.unknown) {
+ _mem_save_unknown_0 = NDR_PULL_GET_MEM_CTX(ndr);
+ NDR_PULL_SET_MEM_CTX(ndr, r->in.unknown, 0);
+ NDR_CHECK(ndr_pull_array_size(ndr, &r->in.unknown));
+ NDR_CHECK(ndr_pull_array_length(ndr, &r->in.unknown));
+ if (ndr_get_array_length(ndr, &r->in.unknown) > ndr_get_array_size(ndr, &r->in.unknown)) {
+ return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", ndr_get_array_size(ndr, &r->in.unknown), ndr_get_array_length(ndr, &r->in.unknown));
+ }
+ NDR_CHECK(ndr_check_string_terminator(ndr, ndr_get_array_length(ndr, &r->in.unknown), sizeof(uint16_t)));
+ NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->in.unknown, ndr_get_array_length(ndr, &r->in.unknown), sizeof(uint16_t), CH_UTF16));
+ NDR_PULL_SET_MEM_CTX(ndr, _mem_save_unknown_0, 0);
+ }
+ NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->in.level));
+ if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
+ NDR_PULL_ALLOC(ndr, r->in.info);
+ }
+ _mem_save_info_0 = NDR_PULL_GET_MEM_CTX(ndr);
+ NDR_PULL_SET_MEM_CTX(ndr, r->in.info, LIBNDR_FLAG_REF_ALLOC);
+ NDR_CHECK(ndr_pull_set_switch_value(ndr, r->in.info, r->in.level));
+ NDR_CHECK(ndr_pull_wkssvc_NetrWkstaUserInfo(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.info));
+ NDR_PULL_SET_MEM_CTX(ndr, _mem_save_info_0, LIBNDR_FLAG_REF_ALLOC);
+ NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_parm_err));
+ if (_ptr_parm_err) {
+ NDR_PULL_ALLOC(ndr, r->in.parm_err);
+ } else {
+ r->in.parm_err = NULL;
+ }
+ if (r->in.parm_err) {
+ _mem_save_parm_err_0 = NDR_PULL_GET_MEM_CTX(ndr);
+ NDR_PULL_SET_MEM_CTX(ndr, r->in.parm_err, 0);
+ NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, r->in.parm_err));
+ NDR_PULL_SET_MEM_CTX(ndr, _mem_save_parm_err_0, 0);
+ }
}
if (flags & NDR_OUT) {
+ NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_parm_err));
+ if (_ptr_parm_err) {
+ NDR_PULL_ALLOC(ndr, r->out.parm_err);
+ } else {
+ r->out.parm_err = NULL;
+ }
+ if (r->out.parm_err) {
+ _mem_save_parm_err_0 = NDR_PULL_GET_MEM_CTX(ndr);
+ NDR_PULL_SET_MEM_CTX(ndr, r->out.parm_err, 0);
+ NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, r->out.parm_err));
+ NDR_PULL_SET_MEM_CTX(ndr, _mem_save_parm_err_0, 0);
+ }
NDR_CHECK(ndr_pull_WERROR(ndr, NDR_SCALARS, &r->out.result));
}
return NDR_ERR_SUCCESS;
}
-_PUBLIC_ void ndr_print_WKSSVC_NETRWKSTAUSERSETINFO(struct ndr_print *ndr, const char *name, int flags, const struct WKSSVC_NETRWKSTAUSERSETINFO *r)
+_PUBLIC_ void ndr_print_wkssvc_NetrWkstaUserSetInfo(struct ndr_print *ndr, const char *name, int flags, const struct wkssvc_NetrWkstaUserSetInfo *r)
{
- ndr_print_struct(ndr, name, "WKSSVC_NETRWKSTAUSERSETINFO");
+ ndr_print_struct(ndr, name, "wkssvc_NetrWkstaUserSetInfo");
ndr->depth++;
if (flags & NDR_SET_VALUES) {
ndr->flags |= LIBNDR_PRINT_SET_VALUES;
}
if (flags & NDR_IN) {
- ndr_print_struct(ndr, "in", "WKSSVC_NETRWKSTAUSERSETINFO");
+ ndr_print_struct(ndr, "in", "wkssvc_NetrWkstaUserSetInfo");
ndr->depth++;
+ ndr_print_ptr(ndr, "unknown", r->in.unknown);
+ ndr->depth++;
+ if (r->in.unknown) {
+ ndr_print_string(ndr, "unknown", r->in.unknown);
+ }
+ ndr->depth--;
+ ndr_print_uint32(ndr, "level", r->in.level);
+ ndr_print_ptr(ndr, "info", r->in.info);
+ ndr->depth++;
+ ndr_print_set_switch_value(ndr, r->in.info, r->in.level);
+ ndr_print_wkssvc_NetrWkstaUserInfo(ndr, "info", r->in.info);
+ ndr->depth--;
+ ndr_print_ptr(ndr, "parm_err", r->in.parm_err);
+ ndr->depth++;
+ if (r->in.parm_err) {
+ ndr_print_uint32(ndr, "parm_err", *r->in.parm_err);
+ }
+ ndr->depth--;
ndr->depth--;
}
if (flags & NDR_OUT) {
- ndr_print_struct(ndr, "out", "WKSSVC_NETRWKSTAUSERSETINFO");
+ ndr_print_struct(ndr, "out", "wkssvc_NetrWkstaUserSetInfo");
ndr->depth++;
+ ndr_print_ptr(ndr, "parm_err", r->out.parm_err);
+ ndr->depth++;
+ if (r->out.parm_err) {
+ ndr_print_uint32(ndr, "parm_err", *r->out.parm_err);
+ }
+ ndr->depth--;
ndr_print_WERROR(ndr, "result", r->out.result);
ndr->depth--;
}
@@ -2693,39 +6339,29 @@ static enum ndr_err_code ndr_push_wkssvc_NetWkstaTransportEnum(struct ndr_push *
NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.server_name, CH_UTF16)));
NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->in.server_name, ndr_charset_length(r->in.server_name, CH_UTF16), sizeof(uint16_t), CH_UTF16));
}
- if (r->in.level == NULL) {
- return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
- }
- NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, *r->in.level));
- if (r->in.ctr == NULL) {
+ if (r->in.info == NULL) {
return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
}
- NDR_CHECK(ndr_push_set_switch_value(ndr, r->in.ctr, *r->in.level));
- NDR_CHECK(ndr_push_wkssvc_NetWkstaTransportCtr(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.ctr));
+ NDR_CHECK(ndr_push_wkssvc_NetWkstaTransportInfo(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.info));
NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->in.max_buffer));
- if (r->in.resume_handle == NULL) {
- return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
+ NDR_CHECK(ndr_push_unique_ptr(ndr, r->in.resume_handle));
+ if (r->in.resume_handle) {
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, *r->in.resume_handle));
}
- NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, *r->in.resume_handle));
}
if (flags & NDR_OUT) {
- if (r->out.level == NULL) {
+ if (r->out.info == NULL) {
return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
}
- NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, *r->out.level));
- if (r->out.ctr == NULL) {
+ NDR_CHECK(ndr_push_wkssvc_NetWkstaTransportInfo(ndr, NDR_SCALARS|NDR_BUFFERS, r->out.info));
+ if (r->out.total_entries == NULL) {
return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
}
- NDR_CHECK(ndr_push_set_switch_value(ndr, r->out.ctr, *r->out.level));
- NDR_CHECK(ndr_push_wkssvc_NetWkstaTransportCtr(ndr, NDR_SCALARS|NDR_BUFFERS, r->out.ctr));
- NDR_CHECK(ndr_push_unique_ptr(ndr, r->out.totalentries));
- if (r->out.totalentries) {
- NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, *r->out.totalentries));
- }
- if (r->out.resume_handle == NULL) {
- return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, *r->out.total_entries));
+ NDR_CHECK(ndr_push_unique_ptr(ndr, r->out.resume_handle));
+ if (r->out.resume_handle) {
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, *r->out.resume_handle));
}
- NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, *r->out.resume_handle));
NDR_CHECK(ndr_push_WERROR(ndr, NDR_SCALARS, r->out.result));
}
return NDR_ERR_SUCCESS;
@@ -2734,11 +6370,10 @@ static enum ndr_err_code ndr_push_wkssvc_NetWkstaTransportEnum(struct ndr_push *
static enum ndr_err_code ndr_pull_wkssvc_NetWkstaTransportEnum(struct ndr_pull *ndr, int flags, struct wkssvc_NetWkstaTransportEnum *r)
{
uint32_t _ptr_server_name;
- uint32_t _ptr_totalentries;
+ uint32_t _ptr_resume_handle;
TALLOC_CTX *_mem_save_server_name_0;
- TALLOC_CTX *_mem_save_level_0;
- TALLOC_CTX *_mem_save_ctr_0;
- TALLOC_CTX *_mem_save_totalentries_0;
+ TALLOC_CTX *_mem_save_info_0;
+ TALLOC_CTX *_mem_save_total_entries_0;
TALLOC_CTX *_mem_save_resume_handle_0;
if (flags & NDR_IN) {
ZERO_STRUCT(r->out);
@@ -2762,70 +6397,57 @@ static enum ndr_err_code ndr_pull_wkssvc_NetWkstaTransportEnum(struct ndr_pull *
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_server_name_0, 0);
}
if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
- NDR_PULL_ALLOC(ndr, r->in.level);
- }
- _mem_save_level_0 = NDR_PULL_GET_MEM_CTX(ndr);
- NDR_PULL_SET_MEM_CTX(ndr, r->in.level, LIBNDR_FLAG_REF_ALLOC);
- NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, r->in.level));
- NDR_PULL_SET_MEM_CTX(ndr, _mem_save_level_0, LIBNDR_FLAG_REF_ALLOC);
- if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
- NDR_PULL_ALLOC(ndr, r->in.ctr);
+ NDR_PULL_ALLOC(ndr, r->in.info);
}
- _mem_save_ctr_0 = NDR_PULL_GET_MEM_CTX(ndr);
- NDR_PULL_SET_MEM_CTX(ndr, r->in.ctr, LIBNDR_FLAG_REF_ALLOC);
- NDR_CHECK(ndr_pull_set_switch_value(ndr, r->in.ctr, *r->in.level));
- NDR_CHECK(ndr_pull_wkssvc_NetWkstaTransportCtr(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.ctr));
- NDR_PULL_SET_MEM_CTX(ndr, _mem_save_ctr_0, LIBNDR_FLAG_REF_ALLOC);
+ _mem_save_info_0 = NDR_PULL_GET_MEM_CTX(ndr);
+ NDR_PULL_SET_MEM_CTX(ndr, r->in.info, LIBNDR_FLAG_REF_ALLOC);
+ NDR_CHECK(ndr_pull_wkssvc_NetWkstaTransportInfo(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.info));
+ NDR_PULL_SET_MEM_CTX(ndr, _mem_save_info_0, LIBNDR_FLAG_REF_ALLOC);
NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->in.max_buffer));
- if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
+ NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_resume_handle));
+ if (_ptr_resume_handle) {
NDR_PULL_ALLOC(ndr, r->in.resume_handle);
+ } else {
+ r->in.resume_handle = NULL;
}
- _mem_save_resume_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
- NDR_PULL_SET_MEM_CTX(ndr, r->in.resume_handle, LIBNDR_FLAG_REF_ALLOC);
- NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, r->in.resume_handle));
- NDR_PULL_SET_MEM_CTX(ndr, _mem_save_resume_handle_0, LIBNDR_FLAG_REF_ALLOC);
- NDR_PULL_ALLOC(ndr, r->out.level);
- *r->out.level = *r->in.level;
- NDR_PULL_ALLOC(ndr, r->out.ctr);
- *r->out.ctr = *r->in.ctr;
- NDR_PULL_ALLOC(ndr, r->out.resume_handle);
- *r->out.resume_handle = *r->in.resume_handle;
+ if (r->in.resume_handle) {
+ _mem_save_resume_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
+ NDR_PULL_SET_MEM_CTX(ndr, r->in.resume_handle, 0);
+ NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, r->in.resume_handle));
+ NDR_PULL_SET_MEM_CTX(ndr, _mem_save_resume_handle_0, 0);
+ }
+ NDR_PULL_ALLOC(ndr, r->out.info);
+ *r->out.info = *r->in.info;
+ NDR_PULL_ALLOC(ndr, r->out.total_entries);
+ ZERO_STRUCTP(r->out.total_entries);
}
if (flags & NDR_OUT) {
if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
- NDR_PULL_ALLOC(ndr, r->out.level);
+ NDR_PULL_ALLOC(ndr, r->out.info);
}
- _mem_save_level_0 = NDR_PULL_GET_MEM_CTX(ndr);
- NDR_PULL_SET_MEM_CTX(ndr, r->out.level, LIBNDR_FLAG_REF_ALLOC);
- NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, r->out.level));
- NDR_PULL_SET_MEM_CTX(ndr, _mem_save_level_0, LIBNDR_FLAG_REF_ALLOC);
+ _mem_save_info_0 = NDR_PULL_GET_MEM_CTX(ndr);
+ NDR_PULL_SET_MEM_CTX(ndr, r->out.info, LIBNDR_FLAG_REF_ALLOC);
+ NDR_CHECK(ndr_pull_wkssvc_NetWkstaTransportInfo(ndr, NDR_SCALARS|NDR_BUFFERS, r->out.info));
+ NDR_PULL_SET_MEM_CTX(ndr, _mem_save_info_0, LIBNDR_FLAG_REF_ALLOC);
if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
- NDR_PULL_ALLOC(ndr, r->out.ctr);
- }
- _mem_save_ctr_0 = NDR_PULL_GET_MEM_CTX(ndr);
- NDR_PULL_SET_MEM_CTX(ndr, r->out.ctr, LIBNDR_FLAG_REF_ALLOC);
- NDR_CHECK(ndr_pull_set_switch_value(ndr, r->out.ctr, *r->out.level));
- NDR_CHECK(ndr_pull_wkssvc_NetWkstaTransportCtr(ndr, NDR_SCALARS|NDR_BUFFERS, r->out.ctr));
- NDR_PULL_SET_MEM_CTX(ndr, _mem_save_ctr_0, LIBNDR_FLAG_REF_ALLOC);
- NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_totalentries));
- if (_ptr_totalentries) {
- NDR_PULL_ALLOC(ndr, r->out.totalentries);
+ NDR_PULL_ALLOC(ndr, r->out.total_entries);
+ }
+ _mem_save_total_entries_0 = NDR_PULL_GET_MEM_CTX(ndr);
+ NDR_PULL_SET_MEM_CTX(ndr, r->out.total_entries, LIBNDR_FLAG_REF_ALLOC);
+ NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, r->out.total_entries));
+ NDR_PULL_SET_MEM_CTX(ndr, _mem_save_total_entries_0, LIBNDR_FLAG_REF_ALLOC);
+ NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_resume_handle));
+ if (_ptr_resume_handle) {
+ NDR_PULL_ALLOC(ndr, r->out.resume_handle);
} else {
- r->out.totalentries = NULL;
+ r->out.resume_handle = NULL;
}
- if (r->out.totalentries) {
- _mem_save_totalentries_0 = NDR_PULL_GET_MEM_CTX(ndr);
- NDR_PULL_SET_MEM_CTX(ndr, r->out.totalentries, 0);
- NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, r->out.totalentries));
- NDR_PULL_SET_MEM_CTX(ndr, _mem_save_totalentries_0, 0);
+ if (r->out.resume_handle) {
+ _mem_save_resume_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
+ NDR_PULL_SET_MEM_CTX(ndr, r->out.resume_handle, 0);
+ NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, r->out.resume_handle));
+ NDR_PULL_SET_MEM_CTX(ndr, _mem_save_resume_handle_0, 0);
}
- if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
- NDR_PULL_ALLOC(ndr, r->out.resume_handle);
- }
- _mem_save_resume_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
- NDR_PULL_SET_MEM_CTX(ndr, r->out.resume_handle, LIBNDR_FLAG_REF_ALLOC);
- NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, r->out.resume_handle));
- NDR_PULL_SET_MEM_CTX(ndr, _mem_save_resume_handle_0, LIBNDR_FLAG_REF_ALLOC);
NDR_CHECK(ndr_pull_WERROR(ndr, NDR_SCALARS, &r->out.result));
}
return NDR_ERR_SUCCESS;
@@ -2847,43 +6469,35 @@ _PUBLIC_ void ndr_print_wkssvc_NetWkstaTransportEnum(struct ndr_print *ndr, cons
ndr_print_string(ndr, "server_name", r->in.server_name);
}
ndr->depth--;
- ndr_print_ptr(ndr, "level", r->in.level);
- ndr->depth++;
- ndr_print_uint32(ndr, "level", *r->in.level);
- ndr->depth--;
- ndr_print_ptr(ndr, "ctr", r->in.ctr);
+ ndr_print_ptr(ndr, "info", r->in.info);
ndr->depth++;
- ndr_print_set_switch_value(ndr, r->in.ctr, *r->in.level);
- ndr_print_wkssvc_NetWkstaTransportCtr(ndr, "ctr", r->in.ctr);
+ ndr_print_wkssvc_NetWkstaTransportInfo(ndr, "info", r->in.info);
ndr->depth--;
ndr_print_uint32(ndr, "max_buffer", r->in.max_buffer);
ndr_print_ptr(ndr, "resume_handle", r->in.resume_handle);
ndr->depth++;
- ndr_print_uint32(ndr, "resume_handle", *r->in.resume_handle);
+ if (r->in.resume_handle) {
+ ndr_print_uint32(ndr, "resume_handle", *r->in.resume_handle);
+ }
ndr->depth--;
ndr->depth--;
}
if (flags & NDR_OUT) {
ndr_print_struct(ndr, "out", "wkssvc_NetWkstaTransportEnum");
ndr->depth++;
- ndr_print_ptr(ndr, "level", r->out.level);
- ndr->depth++;
- ndr_print_uint32(ndr, "level", *r->out.level);
- ndr->depth--;
- ndr_print_ptr(ndr, "ctr", r->out.ctr);
+ ndr_print_ptr(ndr, "info", r->out.info);
ndr->depth++;
- ndr_print_set_switch_value(ndr, r->out.ctr, *r->out.level);
- ndr_print_wkssvc_NetWkstaTransportCtr(ndr, "ctr", r->out.ctr);
+ ndr_print_wkssvc_NetWkstaTransportInfo(ndr, "info", r->out.info);
ndr->depth--;
- ndr_print_ptr(ndr, "totalentries", r->out.totalentries);
+ ndr_print_ptr(ndr, "total_entries", r->out.total_entries);
ndr->depth++;
- if (r->out.totalentries) {
- ndr_print_uint32(ndr, "totalentries", *r->out.totalentries);
- }
+ ndr_print_uint32(ndr, "total_entries", *r->out.total_entries);
ndr->depth--;
ndr_print_ptr(ndr, "resume_handle", r->out.resume_handle);
ndr->depth++;
- ndr_print_uint32(ndr, "resume_handle", *r->out.resume_handle);
+ if (r->out.resume_handle) {
+ ndr_print_uint32(ndr, "resume_handle", *r->out.resume_handle);
+ }
ndr->depth--;
ndr_print_WERROR(ndr, "result", r->out.result);
ndr->depth--;
@@ -2891,50 +6505,165 @@ _PUBLIC_ void ndr_print_wkssvc_NetWkstaTransportEnum(struct ndr_print *ndr, cons
ndr->depth--;
}
-static enum ndr_err_code ndr_push_WKSSVC_NETRWKSTATRANSPORTADD(struct ndr_push *ndr, int flags, const struct WKSSVC_NETRWKSTATRANSPORTADD *r)
+static enum ndr_err_code ndr_push_wkssvc_NetrWkstaTransportAdd(struct ndr_push *ndr, int flags, const struct wkssvc_NetrWkstaTransportAdd *r)
{
if (flags & NDR_IN) {
+ NDR_CHECK(ndr_push_unique_ptr(ndr, r->in.server_name));
+ if (r->in.server_name) {
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.server_name, CH_UTF16)));
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 0));
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.server_name, CH_UTF16)));
+ NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->in.server_name, ndr_charset_length(r->in.server_name, CH_UTF16), sizeof(uint16_t), CH_UTF16));
+ }
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->in.level));
+ if (r->in.info0 == NULL) {
+ return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
+ }
+ NDR_CHECK(ndr_push_wkssvc_NetWkstaTransportInfo0(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.info0));
+ NDR_CHECK(ndr_push_unique_ptr(ndr, r->in.parm_err));
+ if (r->in.parm_err) {
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, *r->in.parm_err));
+ }
}
if (flags & NDR_OUT) {
+ NDR_CHECK(ndr_push_unique_ptr(ndr, r->out.parm_err));
+ if (r->out.parm_err) {
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, *r->out.parm_err));
+ }
NDR_CHECK(ndr_push_WERROR(ndr, NDR_SCALARS, r->out.result));
}
return NDR_ERR_SUCCESS;
}
-static enum ndr_err_code ndr_pull_WKSSVC_NETRWKSTATRANSPORTADD(struct ndr_pull *ndr, int flags, struct WKSSVC_NETRWKSTATRANSPORTADD *r)
+static enum ndr_err_code ndr_pull_wkssvc_NetrWkstaTransportAdd(struct ndr_pull *ndr, int flags, struct wkssvc_NetrWkstaTransportAdd *r)
{
+ uint32_t _ptr_server_name;
+ uint32_t _ptr_parm_err;
+ TALLOC_CTX *_mem_save_server_name_0;
+ TALLOC_CTX *_mem_save_info0_0;
+ TALLOC_CTX *_mem_save_parm_err_0;
if (flags & NDR_IN) {
+ ZERO_STRUCT(r->out);
+
+ NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_server_name));
+ if (_ptr_server_name) {
+ NDR_PULL_ALLOC(ndr, r->in.server_name);
+ } else {
+ r->in.server_name = NULL;
+ }
+ if (r->in.server_name) {
+ _mem_save_server_name_0 = NDR_PULL_GET_MEM_CTX(ndr);
+ NDR_PULL_SET_MEM_CTX(ndr, r->in.server_name, 0);
+ NDR_CHECK(ndr_pull_array_size(ndr, &r->in.server_name));
+ NDR_CHECK(ndr_pull_array_length(ndr, &r->in.server_name));
+ if (ndr_get_array_length(ndr, &r->in.server_name) > ndr_get_array_size(ndr, &r->in.server_name)) {
+ return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", ndr_get_array_size(ndr, &r->in.server_name), ndr_get_array_length(ndr, &r->in.server_name));
+ }
+ NDR_CHECK(ndr_check_string_terminator(ndr, ndr_get_array_length(ndr, &r->in.server_name), sizeof(uint16_t)));
+ NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->in.server_name, ndr_get_array_length(ndr, &r->in.server_name), sizeof(uint16_t), CH_UTF16));
+ NDR_PULL_SET_MEM_CTX(ndr, _mem_save_server_name_0, 0);
+ }
+ NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->in.level));
+ if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
+ NDR_PULL_ALLOC(ndr, r->in.info0);
+ }
+ _mem_save_info0_0 = NDR_PULL_GET_MEM_CTX(ndr);
+ NDR_PULL_SET_MEM_CTX(ndr, r->in.info0, LIBNDR_FLAG_REF_ALLOC);
+ NDR_CHECK(ndr_pull_wkssvc_NetWkstaTransportInfo0(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.info0));
+ NDR_PULL_SET_MEM_CTX(ndr, _mem_save_info0_0, LIBNDR_FLAG_REF_ALLOC);
+ NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_parm_err));
+ if (_ptr_parm_err) {
+ NDR_PULL_ALLOC(ndr, r->in.parm_err);
+ } else {
+ r->in.parm_err = NULL;
+ }
+ if (r->in.parm_err) {
+ _mem_save_parm_err_0 = NDR_PULL_GET_MEM_CTX(ndr);
+ NDR_PULL_SET_MEM_CTX(ndr, r->in.parm_err, 0);
+ NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, r->in.parm_err));
+ NDR_PULL_SET_MEM_CTX(ndr, _mem_save_parm_err_0, 0);
+ }
}
if (flags & NDR_OUT) {
+ NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_parm_err));
+ if (_ptr_parm_err) {
+ NDR_PULL_ALLOC(ndr, r->out.parm_err);
+ } else {
+ r->out.parm_err = NULL;
+ }
+ if (r->out.parm_err) {
+ _mem_save_parm_err_0 = NDR_PULL_GET_MEM_CTX(ndr);
+ NDR_PULL_SET_MEM_CTX(ndr, r->out.parm_err, 0);
+ NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, r->out.parm_err));
+ NDR_PULL_SET_MEM_CTX(ndr, _mem_save_parm_err_0, 0);
+ }
NDR_CHECK(ndr_pull_WERROR(ndr, NDR_SCALARS, &r->out.result));
}
return NDR_ERR_SUCCESS;
}
-_PUBLIC_ void ndr_print_WKSSVC_NETRWKSTATRANSPORTADD(struct ndr_print *ndr, const char *name, int flags, const struct WKSSVC_NETRWKSTATRANSPORTADD *r)
+_PUBLIC_ void ndr_print_wkssvc_NetrWkstaTransportAdd(struct ndr_print *ndr, const char *name, int flags, const struct wkssvc_NetrWkstaTransportAdd *r)
{
- ndr_print_struct(ndr, name, "WKSSVC_NETRWKSTATRANSPORTADD");
+ ndr_print_struct(ndr, name, "wkssvc_NetrWkstaTransportAdd");
ndr->depth++;
if (flags & NDR_SET_VALUES) {
ndr->flags |= LIBNDR_PRINT_SET_VALUES;
}
if (flags & NDR_IN) {
- ndr_print_struct(ndr, "in", "WKSSVC_NETRWKSTATRANSPORTADD");
+ ndr_print_struct(ndr, "in", "wkssvc_NetrWkstaTransportAdd");
+ ndr->depth++;
+ ndr_print_ptr(ndr, "server_name", r->in.server_name);
+ ndr->depth++;
+ if (r->in.server_name) {
+ ndr_print_string(ndr, "server_name", r->in.server_name);
+ }
+ ndr->depth--;
+ ndr_print_uint32(ndr, "level", r->in.level);
+ ndr_print_ptr(ndr, "info0", r->in.info0);
ndr->depth++;
+ ndr_print_wkssvc_NetWkstaTransportInfo0(ndr, "info0", r->in.info0);
+ ndr->depth--;
+ ndr_print_ptr(ndr, "parm_err", r->in.parm_err);
+ ndr->depth++;
+ if (r->in.parm_err) {
+ ndr_print_uint32(ndr, "parm_err", *r->in.parm_err);
+ }
+ ndr->depth--;
ndr->depth--;
}
if (flags & NDR_OUT) {
- ndr_print_struct(ndr, "out", "WKSSVC_NETRWKSTATRANSPORTADD");
+ ndr_print_struct(ndr, "out", "wkssvc_NetrWkstaTransportAdd");
ndr->depth++;
+ ndr_print_ptr(ndr, "parm_err", r->out.parm_err);
+ ndr->depth++;
+ if (r->out.parm_err) {
+ ndr_print_uint32(ndr, "parm_err", *r->out.parm_err);
+ }
+ ndr->depth--;
ndr_print_WERROR(ndr, "result", r->out.result);
ndr->depth--;
}
ndr->depth--;
}
-static enum ndr_err_code ndr_push_WKSSVC_NETRWKSTATRANSPORTDEL(struct ndr_push *ndr, int flags, const struct WKSSVC_NETRWKSTATRANSPORTDEL *r)
+static enum ndr_err_code ndr_push_wkssvc_NetrWkstaTransportDel(struct ndr_push *ndr, int flags, const struct wkssvc_NetrWkstaTransportDel *r)
{
if (flags & NDR_IN) {
+ NDR_CHECK(ndr_push_unique_ptr(ndr, r->in.server_name));
+ if (r->in.server_name) {
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.server_name, CH_UTF16)));
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 0));
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.server_name, CH_UTF16)));
+ NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->in.server_name, ndr_charset_length(r->in.server_name, CH_UTF16), sizeof(uint16_t), CH_UTF16));
+ }
+ NDR_CHECK(ndr_push_unique_ptr(ndr, r->in.transport_name));
+ if (r->in.transport_name) {
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.transport_name, CH_UTF16)));
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 0));
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.transport_name, CH_UTF16)));
+ NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->in.transport_name, ndr_charset_length(r->in.transport_name, CH_UTF16), sizeof(uint16_t), CH_UTF16));
+ }
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->in.unknown3));
}
if (flags & NDR_OUT) {
NDR_CHECK(ndr_push_WERROR(ndr, NDR_SCALARS, r->out.result));
@@ -2942,9 +6671,50 @@ static enum ndr_err_code ndr_push_WKSSVC_NETRWKSTATRANSPORTDEL(struct ndr_push *
return NDR_ERR_SUCCESS;
}
-static enum ndr_err_code ndr_pull_WKSSVC_NETRWKSTATRANSPORTDEL(struct ndr_pull *ndr, int flags, struct WKSSVC_NETRWKSTATRANSPORTDEL *r)
+static enum ndr_err_code ndr_pull_wkssvc_NetrWkstaTransportDel(struct ndr_pull *ndr, int flags, struct wkssvc_NetrWkstaTransportDel *r)
{
+ uint32_t _ptr_server_name;
+ uint32_t _ptr_transport_name;
+ TALLOC_CTX *_mem_save_server_name_0;
+ TALLOC_CTX *_mem_save_transport_name_0;
if (flags & NDR_IN) {
+ NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_server_name));
+ if (_ptr_server_name) {
+ NDR_PULL_ALLOC(ndr, r->in.server_name);
+ } else {
+ r->in.server_name = NULL;
+ }
+ if (r->in.server_name) {
+ _mem_save_server_name_0 = NDR_PULL_GET_MEM_CTX(ndr);
+ NDR_PULL_SET_MEM_CTX(ndr, r->in.server_name, 0);
+ NDR_CHECK(ndr_pull_array_size(ndr, &r->in.server_name));
+ NDR_CHECK(ndr_pull_array_length(ndr, &r->in.server_name));
+ if (ndr_get_array_length(ndr, &r->in.server_name) > ndr_get_array_size(ndr, &r->in.server_name)) {
+ return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", ndr_get_array_size(ndr, &r->in.server_name), ndr_get_array_length(ndr, &r->in.server_name));
+ }
+ NDR_CHECK(ndr_check_string_terminator(ndr, ndr_get_array_length(ndr, &r->in.server_name), sizeof(uint16_t)));
+ NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->in.server_name, ndr_get_array_length(ndr, &r->in.server_name), sizeof(uint16_t), CH_UTF16));
+ NDR_PULL_SET_MEM_CTX(ndr, _mem_save_server_name_0, 0);
+ }
+ NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_transport_name));
+ if (_ptr_transport_name) {
+ NDR_PULL_ALLOC(ndr, r->in.transport_name);
+ } else {
+ r->in.transport_name = NULL;
+ }
+ if (r->in.transport_name) {
+ _mem_save_transport_name_0 = NDR_PULL_GET_MEM_CTX(ndr);
+ NDR_PULL_SET_MEM_CTX(ndr, r->in.transport_name, 0);
+ NDR_CHECK(ndr_pull_array_size(ndr, &r->in.transport_name));
+ NDR_CHECK(ndr_pull_array_length(ndr, &r->in.transport_name));
+ if (ndr_get_array_length(ndr, &r->in.transport_name) > ndr_get_array_size(ndr, &r->in.transport_name)) {
+ return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", ndr_get_array_size(ndr, &r->in.transport_name), ndr_get_array_length(ndr, &r->in.transport_name));
+ }
+ NDR_CHECK(ndr_check_string_terminator(ndr, ndr_get_array_length(ndr, &r->in.transport_name), sizeof(uint16_t)));
+ NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->in.transport_name, ndr_get_array_length(ndr, &r->in.transport_name), sizeof(uint16_t), CH_UTF16));
+ NDR_PULL_SET_MEM_CTX(ndr, _mem_save_transport_name_0, 0);
+ }
+ NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->in.unknown3));
}
if (flags & NDR_OUT) {
NDR_CHECK(ndr_pull_WERROR(ndr, NDR_SCALARS, &r->out.result));
@@ -2952,20 +6722,33 @@ static enum ndr_err_code ndr_pull_WKSSVC_NETRWKSTATRANSPORTDEL(struct ndr_pull *
return NDR_ERR_SUCCESS;
}
-_PUBLIC_ void ndr_print_WKSSVC_NETRWKSTATRANSPORTDEL(struct ndr_print *ndr, const char *name, int flags, const struct WKSSVC_NETRWKSTATRANSPORTDEL *r)
+_PUBLIC_ void ndr_print_wkssvc_NetrWkstaTransportDel(struct ndr_print *ndr, const char *name, int flags, const struct wkssvc_NetrWkstaTransportDel *r)
{
- ndr_print_struct(ndr, name, "WKSSVC_NETRWKSTATRANSPORTDEL");
+ ndr_print_struct(ndr, name, "wkssvc_NetrWkstaTransportDel");
ndr->depth++;
if (flags & NDR_SET_VALUES) {
ndr->flags |= LIBNDR_PRINT_SET_VALUES;
}
if (flags & NDR_IN) {
- ndr_print_struct(ndr, "in", "WKSSVC_NETRWKSTATRANSPORTDEL");
+ ndr_print_struct(ndr, "in", "wkssvc_NetrWkstaTransportDel");
+ ndr->depth++;
+ ndr_print_ptr(ndr, "server_name", r->in.server_name);
+ ndr->depth++;
+ if (r->in.server_name) {
+ ndr_print_string(ndr, "server_name", r->in.server_name);
+ }
+ ndr->depth--;
+ ndr_print_ptr(ndr, "transport_name", r->in.transport_name);
ndr->depth++;
+ if (r->in.transport_name) {
+ ndr_print_string(ndr, "transport_name", r->in.transport_name);
+ }
+ ndr->depth--;
+ ndr_print_uint32(ndr, "unknown3", r->in.unknown3);
ndr->depth--;
}
if (flags & NDR_OUT) {
- ndr_print_struct(ndr, "out", "WKSSVC_NETRWKSTATRANSPORTDEL");
+ ndr_print_struct(ndr, "out", "wkssvc_NetrWkstaTransportDel");
ndr->depth++;
ndr_print_WERROR(ndr, "result", r->out.result);
ndr->depth--;
@@ -2973,91 +6756,286 @@ _PUBLIC_ void ndr_print_WKSSVC_NETRWKSTATRANSPORTDEL(struct ndr_print *ndr, cons
ndr->depth--;
}
-static enum ndr_err_code ndr_push_WKSSVC_NETRUSEADD(struct ndr_push *ndr, int flags, const struct WKSSVC_NETRUSEADD *r)
+static enum ndr_err_code ndr_push_wkssvc_NetrUseAdd(struct ndr_push *ndr, int flags, const struct wkssvc_NetrUseAdd *r)
{
if (flags & NDR_IN) {
+ NDR_CHECK(ndr_push_unique_ptr(ndr, r->in.server_name));
+ if (r->in.server_name) {
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.server_name, CH_UTF16)));
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 0));
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.server_name, CH_UTF16)));
+ NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->in.server_name, ndr_charset_length(r->in.server_name, CH_UTF16), sizeof(uint16_t), CH_UTF16));
+ }
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->in.level));
+ if (r->in.ctr == NULL) {
+ return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
+ }
+ NDR_CHECK(ndr_push_set_switch_value(ndr, r->in.ctr, r->in.level));
+ NDR_CHECK(ndr_push_wkssvc_NetrUseGetInfoCtr(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.ctr));
+ NDR_CHECK(ndr_push_unique_ptr(ndr, r->in.parm_err));
+ if (r->in.parm_err) {
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, *r->in.parm_err));
+ }
}
if (flags & NDR_OUT) {
+ NDR_CHECK(ndr_push_unique_ptr(ndr, r->out.parm_err));
+ if (r->out.parm_err) {
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, *r->out.parm_err));
+ }
NDR_CHECK(ndr_push_WERROR(ndr, NDR_SCALARS, r->out.result));
}
return NDR_ERR_SUCCESS;
}
-static enum ndr_err_code ndr_pull_WKSSVC_NETRUSEADD(struct ndr_pull *ndr, int flags, struct WKSSVC_NETRUSEADD *r)
+static enum ndr_err_code ndr_pull_wkssvc_NetrUseAdd(struct ndr_pull *ndr, int flags, struct wkssvc_NetrUseAdd *r)
{
+ uint32_t _ptr_server_name;
+ uint32_t _ptr_parm_err;
+ TALLOC_CTX *_mem_save_server_name_0;
+ TALLOC_CTX *_mem_save_ctr_0;
+ TALLOC_CTX *_mem_save_parm_err_0;
if (flags & NDR_IN) {
+ ZERO_STRUCT(r->out);
+
+ NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_server_name));
+ if (_ptr_server_name) {
+ NDR_PULL_ALLOC(ndr, r->in.server_name);
+ } else {
+ r->in.server_name = NULL;
+ }
+ if (r->in.server_name) {
+ _mem_save_server_name_0 = NDR_PULL_GET_MEM_CTX(ndr);
+ NDR_PULL_SET_MEM_CTX(ndr, r->in.server_name, 0);
+ NDR_CHECK(ndr_pull_array_size(ndr, &r->in.server_name));
+ NDR_CHECK(ndr_pull_array_length(ndr, &r->in.server_name));
+ if (ndr_get_array_length(ndr, &r->in.server_name) > ndr_get_array_size(ndr, &r->in.server_name)) {
+ return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", ndr_get_array_size(ndr, &r->in.server_name), ndr_get_array_length(ndr, &r->in.server_name));
+ }
+ NDR_CHECK(ndr_check_string_terminator(ndr, ndr_get_array_length(ndr, &r->in.server_name), sizeof(uint16_t)));
+ NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->in.server_name, ndr_get_array_length(ndr, &r->in.server_name), sizeof(uint16_t), CH_UTF16));
+ NDR_PULL_SET_MEM_CTX(ndr, _mem_save_server_name_0, 0);
+ }
+ NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->in.level));
+ if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
+ NDR_PULL_ALLOC(ndr, r->in.ctr);
+ }
+ _mem_save_ctr_0 = NDR_PULL_GET_MEM_CTX(ndr);
+ NDR_PULL_SET_MEM_CTX(ndr, r->in.ctr, LIBNDR_FLAG_REF_ALLOC);
+ NDR_CHECK(ndr_pull_set_switch_value(ndr, r->in.ctr, r->in.level));
+ NDR_CHECK(ndr_pull_wkssvc_NetrUseGetInfoCtr(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.ctr));
+ NDR_PULL_SET_MEM_CTX(ndr, _mem_save_ctr_0, LIBNDR_FLAG_REF_ALLOC);
+ NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_parm_err));
+ if (_ptr_parm_err) {
+ NDR_PULL_ALLOC(ndr, r->in.parm_err);
+ } else {
+ r->in.parm_err = NULL;
+ }
+ if (r->in.parm_err) {
+ _mem_save_parm_err_0 = NDR_PULL_GET_MEM_CTX(ndr);
+ NDR_PULL_SET_MEM_CTX(ndr, r->in.parm_err, 0);
+ NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, r->in.parm_err));
+ NDR_PULL_SET_MEM_CTX(ndr, _mem_save_parm_err_0, 0);
+ }
}
if (flags & NDR_OUT) {
+ NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_parm_err));
+ if (_ptr_parm_err) {
+ NDR_PULL_ALLOC(ndr, r->out.parm_err);
+ } else {
+ r->out.parm_err = NULL;
+ }
+ if (r->out.parm_err) {
+ _mem_save_parm_err_0 = NDR_PULL_GET_MEM_CTX(ndr);
+ NDR_PULL_SET_MEM_CTX(ndr, r->out.parm_err, 0);
+ NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, r->out.parm_err));
+ NDR_PULL_SET_MEM_CTX(ndr, _mem_save_parm_err_0, 0);
+ }
NDR_CHECK(ndr_pull_WERROR(ndr, NDR_SCALARS, &r->out.result));
}
return NDR_ERR_SUCCESS;
}
-_PUBLIC_ void ndr_print_WKSSVC_NETRUSEADD(struct ndr_print *ndr, const char *name, int flags, const struct WKSSVC_NETRUSEADD *r)
+_PUBLIC_ void ndr_print_wkssvc_NetrUseAdd(struct ndr_print *ndr, const char *name, int flags, const struct wkssvc_NetrUseAdd *r)
{
- ndr_print_struct(ndr, name, "WKSSVC_NETRUSEADD");
+ ndr_print_struct(ndr, name, "wkssvc_NetrUseAdd");
ndr->depth++;
if (flags & NDR_SET_VALUES) {
ndr->flags |= LIBNDR_PRINT_SET_VALUES;
}
if (flags & NDR_IN) {
- ndr_print_struct(ndr, "in", "WKSSVC_NETRUSEADD");
+ ndr_print_struct(ndr, "in", "wkssvc_NetrUseAdd");
+ ndr->depth++;
+ ndr_print_ptr(ndr, "server_name", r->in.server_name);
+ ndr->depth++;
+ if (r->in.server_name) {
+ ndr_print_string(ndr, "server_name", r->in.server_name);
+ }
+ ndr->depth--;
+ ndr_print_uint32(ndr, "level", r->in.level);
+ ndr_print_ptr(ndr, "ctr", r->in.ctr);
+ ndr->depth++;
+ ndr_print_set_switch_value(ndr, r->in.ctr, r->in.level);
+ ndr_print_wkssvc_NetrUseGetInfoCtr(ndr, "ctr", r->in.ctr);
+ ndr->depth--;
+ ndr_print_ptr(ndr, "parm_err", r->in.parm_err);
ndr->depth++;
+ if (r->in.parm_err) {
+ ndr_print_uint32(ndr, "parm_err", *r->in.parm_err);
+ }
+ ndr->depth--;
ndr->depth--;
}
if (flags & NDR_OUT) {
- ndr_print_struct(ndr, "out", "WKSSVC_NETRUSEADD");
+ ndr_print_struct(ndr, "out", "wkssvc_NetrUseAdd");
+ ndr->depth++;
+ ndr_print_ptr(ndr, "parm_err", r->out.parm_err);
ndr->depth++;
+ if (r->out.parm_err) {
+ ndr_print_uint32(ndr, "parm_err", *r->out.parm_err);
+ }
+ ndr->depth--;
ndr_print_WERROR(ndr, "result", r->out.result);
ndr->depth--;
}
ndr->depth--;
}
-static enum ndr_err_code ndr_push_WKSSVC_NETRUSEGETINFO(struct ndr_push *ndr, int flags, const struct WKSSVC_NETRUSEGETINFO *r)
+static enum ndr_err_code ndr_push_wkssvc_NetrUseGetInfo(struct ndr_push *ndr, int flags, const struct wkssvc_NetrUseGetInfo *r)
{
if (flags & NDR_IN) {
+ NDR_CHECK(ndr_push_unique_ptr(ndr, r->in.server_name));
+ if (r->in.server_name) {
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.server_name, CH_UTF16)));
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 0));
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.server_name, CH_UTF16)));
+ NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->in.server_name, ndr_charset_length(r->in.server_name, CH_UTF16), sizeof(uint16_t), CH_UTF16));
+ }
+ if (r->in.use_name == NULL) {
+ return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
+ }
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.use_name, CH_UTF16)));
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 0));
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.use_name, CH_UTF16)));
+ NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->in.use_name, ndr_charset_length(r->in.use_name, CH_UTF16), sizeof(uint16_t), CH_UTF16));
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->in.level));
}
if (flags & NDR_OUT) {
+ if (r->out.ctr == NULL) {
+ return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
+ }
+ NDR_CHECK(ndr_push_set_switch_value(ndr, r->out.ctr, r->in.level));
+ NDR_CHECK(ndr_push_wkssvc_NetrUseGetInfoCtr(ndr, NDR_SCALARS|NDR_BUFFERS, r->out.ctr));
NDR_CHECK(ndr_push_WERROR(ndr, NDR_SCALARS, r->out.result));
}
return NDR_ERR_SUCCESS;
}
-static enum ndr_err_code ndr_pull_WKSSVC_NETRUSEGETINFO(struct ndr_pull *ndr, int flags, struct WKSSVC_NETRUSEGETINFO *r)
+static enum ndr_err_code ndr_pull_wkssvc_NetrUseGetInfo(struct ndr_pull *ndr, int flags, struct wkssvc_NetrUseGetInfo *r)
{
+ uint32_t _ptr_server_name;
+ TALLOC_CTX *_mem_save_server_name_0;
+ TALLOC_CTX *_mem_save_ctr_0;
if (flags & NDR_IN) {
+ ZERO_STRUCT(r->out);
+
+ NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_server_name));
+ if (_ptr_server_name) {
+ NDR_PULL_ALLOC(ndr, r->in.server_name);
+ } else {
+ r->in.server_name = NULL;
+ }
+ if (r->in.server_name) {
+ _mem_save_server_name_0 = NDR_PULL_GET_MEM_CTX(ndr);
+ NDR_PULL_SET_MEM_CTX(ndr, r->in.server_name, 0);
+ NDR_CHECK(ndr_pull_array_size(ndr, &r->in.server_name));
+ NDR_CHECK(ndr_pull_array_length(ndr, &r->in.server_name));
+ if (ndr_get_array_length(ndr, &r->in.server_name) > ndr_get_array_size(ndr, &r->in.server_name)) {
+ return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", ndr_get_array_size(ndr, &r->in.server_name), ndr_get_array_length(ndr, &r->in.server_name));
+ }
+ NDR_CHECK(ndr_check_string_terminator(ndr, ndr_get_array_length(ndr, &r->in.server_name), sizeof(uint16_t)));
+ NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->in.server_name, ndr_get_array_length(ndr, &r->in.server_name), sizeof(uint16_t), CH_UTF16));
+ NDR_PULL_SET_MEM_CTX(ndr, _mem_save_server_name_0, 0);
+ }
+ NDR_CHECK(ndr_pull_array_size(ndr, &r->in.use_name));
+ NDR_CHECK(ndr_pull_array_length(ndr, &r->in.use_name));
+ if (ndr_get_array_length(ndr, &r->in.use_name) > ndr_get_array_size(ndr, &r->in.use_name)) {
+ return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", ndr_get_array_size(ndr, &r->in.use_name), ndr_get_array_length(ndr, &r->in.use_name));
+ }
+ NDR_CHECK(ndr_check_string_terminator(ndr, ndr_get_array_length(ndr, &r->in.use_name), sizeof(uint16_t)));
+ NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->in.use_name, ndr_get_array_length(ndr, &r->in.use_name), sizeof(uint16_t), CH_UTF16));
+ NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->in.level));
+ NDR_PULL_ALLOC(ndr, r->out.ctr);
+ ZERO_STRUCTP(r->out.ctr);
}
if (flags & NDR_OUT) {
+ if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
+ NDR_PULL_ALLOC(ndr, r->out.ctr);
+ }
+ _mem_save_ctr_0 = NDR_PULL_GET_MEM_CTX(ndr);
+ NDR_PULL_SET_MEM_CTX(ndr, r->out.ctr, LIBNDR_FLAG_REF_ALLOC);
+ NDR_CHECK(ndr_pull_set_switch_value(ndr, r->out.ctr, r->in.level));
+ NDR_CHECK(ndr_pull_wkssvc_NetrUseGetInfoCtr(ndr, NDR_SCALARS|NDR_BUFFERS, r->out.ctr));
+ NDR_PULL_SET_MEM_CTX(ndr, _mem_save_ctr_0, LIBNDR_FLAG_REF_ALLOC);
NDR_CHECK(ndr_pull_WERROR(ndr, NDR_SCALARS, &r->out.result));
}
return NDR_ERR_SUCCESS;
}
-_PUBLIC_ void ndr_print_WKSSVC_NETRUSEGETINFO(struct ndr_print *ndr, const char *name, int flags, const struct WKSSVC_NETRUSEGETINFO *r)
+_PUBLIC_ void ndr_print_wkssvc_NetrUseGetInfo(struct ndr_print *ndr, const char *name, int flags, const struct wkssvc_NetrUseGetInfo *r)
{
- ndr_print_struct(ndr, name, "WKSSVC_NETRUSEGETINFO");
+ ndr_print_struct(ndr, name, "wkssvc_NetrUseGetInfo");
ndr->depth++;
if (flags & NDR_SET_VALUES) {
ndr->flags |= LIBNDR_PRINT_SET_VALUES;
}
if (flags & NDR_IN) {
- ndr_print_struct(ndr, "in", "WKSSVC_NETRUSEGETINFO");
+ ndr_print_struct(ndr, "in", "wkssvc_NetrUseGetInfo");
+ ndr->depth++;
+ ndr_print_ptr(ndr, "server_name", r->in.server_name);
+ ndr->depth++;
+ if (r->in.server_name) {
+ ndr_print_string(ndr, "server_name", r->in.server_name);
+ }
+ ndr->depth--;
+ ndr_print_ptr(ndr, "use_name", r->in.use_name);
ndr->depth++;
+ ndr_print_string(ndr, "use_name", r->in.use_name);
+ ndr->depth--;
+ ndr_print_uint32(ndr, "level", r->in.level);
ndr->depth--;
}
if (flags & NDR_OUT) {
- ndr_print_struct(ndr, "out", "WKSSVC_NETRUSEGETINFO");
+ ndr_print_struct(ndr, "out", "wkssvc_NetrUseGetInfo");
+ ndr->depth++;
+ ndr_print_ptr(ndr, "ctr", r->out.ctr);
ndr->depth++;
+ ndr_print_set_switch_value(ndr, r->out.ctr, r->in.level);
+ ndr_print_wkssvc_NetrUseGetInfoCtr(ndr, "ctr", r->out.ctr);
+ ndr->depth--;
ndr_print_WERROR(ndr, "result", r->out.result);
ndr->depth--;
}
ndr->depth--;
}
-static enum ndr_err_code ndr_push_WKSSVC_NETRUSEDEL(struct ndr_push *ndr, int flags, const struct WKSSVC_NETRUSEDEL *r)
+static enum ndr_err_code ndr_push_wkssvc_NetrUseDel(struct ndr_push *ndr, int flags, const struct wkssvc_NetrUseDel *r)
{
if (flags & NDR_IN) {
+ NDR_CHECK(ndr_push_unique_ptr(ndr, r->in.server_name));
+ if (r->in.server_name) {
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.server_name, CH_UTF16)));
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 0));
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.server_name, CH_UTF16)));
+ NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->in.server_name, ndr_charset_length(r->in.server_name, CH_UTF16), sizeof(uint16_t), CH_UTF16));
+ }
+ if (r->in.use_name == NULL) {
+ return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
+ }
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.use_name, CH_UTF16)));
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 0));
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.use_name, CH_UTF16)));
+ NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->in.use_name, ndr_charset_length(r->in.use_name, CH_UTF16), sizeof(uint16_t), CH_UTF16));
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->in.force_cond));
}
if (flags & NDR_OUT) {
NDR_CHECK(ndr_push_WERROR(ndr, NDR_SCALARS, r->out.result));
@@ -3065,9 +7043,37 @@ static enum ndr_err_code ndr_push_WKSSVC_NETRUSEDEL(struct ndr_push *ndr, int fl
return NDR_ERR_SUCCESS;
}
-static enum ndr_err_code ndr_pull_WKSSVC_NETRUSEDEL(struct ndr_pull *ndr, int flags, struct WKSSVC_NETRUSEDEL *r)
+static enum ndr_err_code ndr_pull_wkssvc_NetrUseDel(struct ndr_pull *ndr, int flags, struct wkssvc_NetrUseDel *r)
{
+ uint32_t _ptr_server_name;
+ TALLOC_CTX *_mem_save_server_name_0;
if (flags & NDR_IN) {
+ NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_server_name));
+ if (_ptr_server_name) {
+ NDR_PULL_ALLOC(ndr, r->in.server_name);
+ } else {
+ r->in.server_name = NULL;
+ }
+ if (r->in.server_name) {
+ _mem_save_server_name_0 = NDR_PULL_GET_MEM_CTX(ndr);
+ NDR_PULL_SET_MEM_CTX(ndr, r->in.server_name, 0);
+ NDR_CHECK(ndr_pull_array_size(ndr, &r->in.server_name));
+ NDR_CHECK(ndr_pull_array_length(ndr, &r->in.server_name));
+ if (ndr_get_array_length(ndr, &r->in.server_name) > ndr_get_array_size(ndr, &r->in.server_name)) {
+ return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", ndr_get_array_size(ndr, &r->in.server_name), ndr_get_array_length(ndr, &r->in.server_name));
+ }
+ NDR_CHECK(ndr_check_string_terminator(ndr, ndr_get_array_length(ndr, &r->in.server_name), sizeof(uint16_t)));
+ NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->in.server_name, ndr_get_array_length(ndr, &r->in.server_name), sizeof(uint16_t), CH_UTF16));
+ NDR_PULL_SET_MEM_CTX(ndr, _mem_save_server_name_0, 0);
+ }
+ NDR_CHECK(ndr_pull_array_size(ndr, &r->in.use_name));
+ NDR_CHECK(ndr_pull_array_length(ndr, &r->in.use_name));
+ if (ndr_get_array_length(ndr, &r->in.use_name) > ndr_get_array_size(ndr, &r->in.use_name)) {
+ return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", ndr_get_array_size(ndr, &r->in.use_name), ndr_get_array_length(ndr, &r->in.use_name));
+ }
+ NDR_CHECK(ndr_check_string_terminator(ndr, ndr_get_array_length(ndr, &r->in.use_name), sizeof(uint16_t)));
+ NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->in.use_name, ndr_get_array_length(ndr, &r->in.use_name), sizeof(uint16_t), CH_UTF16));
+ NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->in.force_cond));
}
if (flags & NDR_OUT) {
NDR_CHECK(ndr_pull_WERROR(ndr, NDR_SCALARS, &r->out.result));
@@ -3075,20 +7081,31 @@ static enum ndr_err_code ndr_pull_WKSSVC_NETRUSEDEL(struct ndr_pull *ndr, int fl
return NDR_ERR_SUCCESS;
}
-_PUBLIC_ void ndr_print_WKSSVC_NETRUSEDEL(struct ndr_print *ndr, const char *name, int flags, const struct WKSSVC_NETRUSEDEL *r)
+_PUBLIC_ void ndr_print_wkssvc_NetrUseDel(struct ndr_print *ndr, const char *name, int flags, const struct wkssvc_NetrUseDel *r)
{
- ndr_print_struct(ndr, name, "WKSSVC_NETRUSEDEL");
+ ndr_print_struct(ndr, name, "wkssvc_NetrUseDel");
ndr->depth++;
if (flags & NDR_SET_VALUES) {
ndr->flags |= LIBNDR_PRINT_SET_VALUES;
}
if (flags & NDR_IN) {
- ndr_print_struct(ndr, "in", "WKSSVC_NETRUSEDEL");
+ ndr_print_struct(ndr, "in", "wkssvc_NetrUseDel");
+ ndr->depth++;
+ ndr_print_ptr(ndr, "server_name", r->in.server_name);
ndr->depth++;
+ if (r->in.server_name) {
+ ndr_print_string(ndr, "server_name", r->in.server_name);
+ }
+ ndr->depth--;
+ ndr_print_ptr(ndr, "use_name", r->in.use_name);
+ ndr->depth++;
+ ndr_print_string(ndr, "use_name", r->in.use_name);
+ ndr->depth--;
+ ndr_print_uint32(ndr, "force_cond", r->in.force_cond);
ndr->depth--;
}
if (flags & NDR_OUT) {
- ndr_print_struct(ndr, "out", "WKSSVC_NETRUSEDEL");
+ ndr_print_struct(ndr, "out", "wkssvc_NetrUseDel");
ndr->depth++;
ndr_print_WERROR(ndr, "result", r->out.result);
ndr->depth--;
@@ -3096,50 +7113,212 @@ _PUBLIC_ void ndr_print_WKSSVC_NETRUSEDEL(struct ndr_print *ndr, const char *nam
ndr->depth--;
}
-static enum ndr_err_code ndr_push_WKSSVC_NETRUSEENUM(struct ndr_push *ndr, int flags, const struct WKSSVC_NETRUSEENUM *r)
+static enum ndr_err_code ndr_push_wkssvc_NetrUseEnum(struct ndr_push *ndr, int flags, const struct wkssvc_NetrUseEnum *r)
{
if (flags & NDR_IN) {
+ NDR_CHECK(ndr_push_unique_ptr(ndr, r->in.server_name));
+ if (r->in.server_name) {
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.server_name, CH_UTF16)));
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 0));
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.server_name, CH_UTF16)));
+ NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->in.server_name, ndr_charset_length(r->in.server_name, CH_UTF16), sizeof(uint16_t), CH_UTF16));
+ }
+ if (r->in.info == NULL) {
+ return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
+ }
+ NDR_CHECK(ndr_push_wkssvc_NetrUseEnumInfo(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.info));
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->in.prefmaxlen));
+ NDR_CHECK(ndr_push_unique_ptr(ndr, r->in.resume_handle));
+ if (r->in.resume_handle) {
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, *r->in.resume_handle));
+ }
}
if (flags & NDR_OUT) {
+ if (r->out.info == NULL) {
+ return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
+ }
+ NDR_CHECK(ndr_push_wkssvc_NetrUseEnumInfo(ndr, NDR_SCALARS|NDR_BUFFERS, r->out.info));
+ if (r->out.entries_read == NULL) {
+ return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
+ }
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, *r->out.entries_read));
+ NDR_CHECK(ndr_push_unique_ptr(ndr, r->out.resume_handle));
+ if (r->out.resume_handle) {
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, *r->out.resume_handle));
+ }
NDR_CHECK(ndr_push_WERROR(ndr, NDR_SCALARS, r->out.result));
}
return NDR_ERR_SUCCESS;
}
-static enum ndr_err_code ndr_pull_WKSSVC_NETRUSEENUM(struct ndr_pull *ndr, int flags, struct WKSSVC_NETRUSEENUM *r)
+static enum ndr_err_code ndr_pull_wkssvc_NetrUseEnum(struct ndr_pull *ndr, int flags, struct wkssvc_NetrUseEnum *r)
{
+ uint32_t _ptr_server_name;
+ uint32_t _ptr_resume_handle;
+ TALLOC_CTX *_mem_save_server_name_0;
+ TALLOC_CTX *_mem_save_info_0;
+ TALLOC_CTX *_mem_save_entries_read_0;
+ TALLOC_CTX *_mem_save_resume_handle_0;
if (flags & NDR_IN) {
+ ZERO_STRUCT(r->out);
+
+ NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_server_name));
+ if (_ptr_server_name) {
+ NDR_PULL_ALLOC(ndr, r->in.server_name);
+ } else {
+ r->in.server_name = NULL;
+ }
+ if (r->in.server_name) {
+ _mem_save_server_name_0 = NDR_PULL_GET_MEM_CTX(ndr);
+ NDR_PULL_SET_MEM_CTX(ndr, r->in.server_name, 0);
+ NDR_CHECK(ndr_pull_array_size(ndr, &r->in.server_name));
+ NDR_CHECK(ndr_pull_array_length(ndr, &r->in.server_name));
+ if (ndr_get_array_length(ndr, &r->in.server_name) > ndr_get_array_size(ndr, &r->in.server_name)) {
+ return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", ndr_get_array_size(ndr, &r->in.server_name), ndr_get_array_length(ndr, &r->in.server_name));
+ }
+ NDR_CHECK(ndr_check_string_terminator(ndr, ndr_get_array_length(ndr, &r->in.server_name), sizeof(uint16_t)));
+ NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->in.server_name, ndr_get_array_length(ndr, &r->in.server_name), sizeof(uint16_t), CH_UTF16));
+ NDR_PULL_SET_MEM_CTX(ndr, _mem_save_server_name_0, 0);
+ }
+ if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
+ NDR_PULL_ALLOC(ndr, r->in.info);
+ }
+ _mem_save_info_0 = NDR_PULL_GET_MEM_CTX(ndr);
+ NDR_PULL_SET_MEM_CTX(ndr, r->in.info, LIBNDR_FLAG_REF_ALLOC);
+ NDR_CHECK(ndr_pull_wkssvc_NetrUseEnumInfo(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.info));
+ NDR_PULL_SET_MEM_CTX(ndr, _mem_save_info_0, LIBNDR_FLAG_REF_ALLOC);
+ NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->in.prefmaxlen));
+ NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_resume_handle));
+ if (_ptr_resume_handle) {
+ NDR_PULL_ALLOC(ndr, r->in.resume_handle);
+ } else {
+ r->in.resume_handle = NULL;
+ }
+ if (r->in.resume_handle) {
+ _mem_save_resume_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
+ NDR_PULL_SET_MEM_CTX(ndr, r->in.resume_handle, 0);
+ NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, r->in.resume_handle));
+ NDR_PULL_SET_MEM_CTX(ndr, _mem_save_resume_handle_0, 0);
+ }
+ NDR_PULL_ALLOC(ndr, r->out.info);
+ *r->out.info = *r->in.info;
+ NDR_PULL_ALLOC(ndr, r->out.entries_read);
+ ZERO_STRUCTP(r->out.entries_read);
}
if (flags & NDR_OUT) {
+ if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
+ NDR_PULL_ALLOC(ndr, r->out.info);
+ }
+ _mem_save_info_0 = NDR_PULL_GET_MEM_CTX(ndr);
+ NDR_PULL_SET_MEM_CTX(ndr, r->out.info, LIBNDR_FLAG_REF_ALLOC);
+ NDR_CHECK(ndr_pull_wkssvc_NetrUseEnumInfo(ndr, NDR_SCALARS|NDR_BUFFERS, r->out.info));
+ NDR_PULL_SET_MEM_CTX(ndr, _mem_save_info_0, LIBNDR_FLAG_REF_ALLOC);
+ if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
+ NDR_PULL_ALLOC(ndr, r->out.entries_read);
+ }
+ _mem_save_entries_read_0 = NDR_PULL_GET_MEM_CTX(ndr);
+ NDR_PULL_SET_MEM_CTX(ndr, r->out.entries_read, LIBNDR_FLAG_REF_ALLOC);
+ NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, r->out.entries_read));
+ NDR_PULL_SET_MEM_CTX(ndr, _mem_save_entries_read_0, LIBNDR_FLAG_REF_ALLOC);
+ NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_resume_handle));
+ if (_ptr_resume_handle) {
+ NDR_PULL_ALLOC(ndr, r->out.resume_handle);
+ } else {
+ r->out.resume_handle = NULL;
+ }
+ if (r->out.resume_handle) {
+ _mem_save_resume_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
+ NDR_PULL_SET_MEM_CTX(ndr, r->out.resume_handle, 0);
+ NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, r->out.resume_handle));
+ NDR_PULL_SET_MEM_CTX(ndr, _mem_save_resume_handle_0, 0);
+ }
NDR_CHECK(ndr_pull_WERROR(ndr, NDR_SCALARS, &r->out.result));
}
return NDR_ERR_SUCCESS;
}
-_PUBLIC_ void ndr_print_WKSSVC_NETRUSEENUM(struct ndr_print *ndr, const char *name, int flags, const struct WKSSVC_NETRUSEENUM *r)
+_PUBLIC_ void ndr_print_wkssvc_NetrUseEnum(struct ndr_print *ndr, const char *name, int flags, const struct wkssvc_NetrUseEnum *r)
{
- ndr_print_struct(ndr, name, "WKSSVC_NETRUSEENUM");
+ ndr_print_struct(ndr, name, "wkssvc_NetrUseEnum");
ndr->depth++;
if (flags & NDR_SET_VALUES) {
ndr->flags |= LIBNDR_PRINT_SET_VALUES;
}
if (flags & NDR_IN) {
- ndr_print_struct(ndr, "in", "WKSSVC_NETRUSEENUM");
+ ndr_print_struct(ndr, "in", "wkssvc_NetrUseEnum");
+ ndr->depth++;
+ ndr_print_ptr(ndr, "server_name", r->in.server_name);
+ ndr->depth++;
+ if (r->in.server_name) {
+ ndr_print_string(ndr, "server_name", r->in.server_name);
+ }
+ ndr->depth--;
+ ndr_print_ptr(ndr, "info", r->in.info);
+ ndr->depth++;
+ ndr_print_wkssvc_NetrUseEnumInfo(ndr, "info", r->in.info);
+ ndr->depth--;
+ ndr_print_uint32(ndr, "prefmaxlen", r->in.prefmaxlen);
+ ndr_print_ptr(ndr, "resume_handle", r->in.resume_handle);
ndr->depth++;
+ if (r->in.resume_handle) {
+ ndr_print_uint32(ndr, "resume_handle", *r->in.resume_handle);
+ }
+ ndr->depth--;
ndr->depth--;
}
if (flags & NDR_OUT) {
- ndr_print_struct(ndr, "out", "WKSSVC_NETRUSEENUM");
+ ndr_print_struct(ndr, "out", "wkssvc_NetrUseEnum");
+ ndr->depth++;
+ ndr_print_ptr(ndr, "info", r->out.info);
+ ndr->depth++;
+ ndr_print_wkssvc_NetrUseEnumInfo(ndr, "info", r->out.info);
+ ndr->depth--;
+ ndr_print_ptr(ndr, "entries_read", r->out.entries_read);
+ ndr->depth++;
+ ndr_print_uint32(ndr, "entries_read", *r->out.entries_read);
+ ndr->depth--;
+ ndr_print_ptr(ndr, "resume_handle", r->out.resume_handle);
ndr->depth++;
+ if (r->out.resume_handle) {
+ ndr_print_uint32(ndr, "resume_handle", *r->out.resume_handle);
+ }
+ ndr->depth--;
ndr_print_WERROR(ndr, "result", r->out.result);
ndr->depth--;
}
ndr->depth--;
}
-static enum ndr_err_code ndr_push_WKSSVC_NETRMESSAGEBUFFERSEND(struct ndr_push *ndr, int flags, const struct WKSSVC_NETRMESSAGEBUFFERSEND *r)
+static enum ndr_err_code ndr_push_wkssvc_NetrMessageBufferSend(struct ndr_push *ndr, int flags, const struct wkssvc_NetrMessageBufferSend *r)
{
if (flags & NDR_IN) {
+ NDR_CHECK(ndr_push_unique_ptr(ndr, r->in.server_name));
+ if (r->in.server_name) {
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.server_name, CH_UTF16)));
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 0));
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.server_name, CH_UTF16)));
+ NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->in.server_name, ndr_charset_length(r->in.server_name, CH_UTF16), sizeof(uint16_t), CH_UTF16));
+ }
+ if (r->in.message_name == NULL) {
+ return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
+ }
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.message_name, CH_UTF16)));
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 0));
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.message_name, CH_UTF16)));
+ NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->in.message_name, ndr_charset_length(r->in.message_name, CH_UTF16), sizeof(uint16_t), CH_UTF16));
+ NDR_CHECK(ndr_push_unique_ptr(ndr, r->in.message_sender_name));
+ if (r->in.message_sender_name) {
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.message_sender_name, CH_UTF16)));
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 0));
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.message_sender_name, CH_UTF16)));
+ NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->in.message_sender_name, ndr_charset_length(r->in.message_sender_name, CH_UTF16), sizeof(uint16_t), CH_UTF16));
+ }
+ if (r->in.message_buffer == NULL) {
+ return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
+ }
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->in.message_size));
+ NDR_CHECK(ndr_push_array_uint8(ndr, NDR_SCALARS, r->in.message_buffer, r->in.message_size));
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->in.message_size));
}
if (flags & NDR_OUT) {
NDR_CHECK(ndr_push_WERROR(ndr, NDR_SCALARS, r->out.result));
@@ -3147,9 +7326,65 @@ static enum ndr_err_code ndr_push_WKSSVC_NETRMESSAGEBUFFERSEND(struct ndr_push *
return NDR_ERR_SUCCESS;
}
-static enum ndr_err_code ndr_pull_WKSSVC_NETRMESSAGEBUFFERSEND(struct ndr_pull *ndr, int flags, struct WKSSVC_NETRMESSAGEBUFFERSEND *r)
+static enum ndr_err_code ndr_pull_wkssvc_NetrMessageBufferSend(struct ndr_pull *ndr, int flags, struct wkssvc_NetrMessageBufferSend *r)
{
+ uint32_t _ptr_server_name;
+ uint32_t _ptr_message_sender_name;
+ TALLOC_CTX *_mem_save_server_name_0;
+ TALLOC_CTX *_mem_save_message_sender_name_0;
if (flags & NDR_IN) {
+ NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_server_name));
+ if (_ptr_server_name) {
+ NDR_PULL_ALLOC(ndr, r->in.server_name);
+ } else {
+ r->in.server_name = NULL;
+ }
+ if (r->in.server_name) {
+ _mem_save_server_name_0 = NDR_PULL_GET_MEM_CTX(ndr);
+ NDR_PULL_SET_MEM_CTX(ndr, r->in.server_name, 0);
+ NDR_CHECK(ndr_pull_array_size(ndr, &r->in.server_name));
+ NDR_CHECK(ndr_pull_array_length(ndr, &r->in.server_name));
+ if (ndr_get_array_length(ndr, &r->in.server_name) > ndr_get_array_size(ndr, &r->in.server_name)) {
+ return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", ndr_get_array_size(ndr, &r->in.server_name), ndr_get_array_length(ndr, &r->in.server_name));
+ }
+ NDR_CHECK(ndr_check_string_terminator(ndr, ndr_get_array_length(ndr, &r->in.server_name), sizeof(uint16_t)));
+ NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->in.server_name, ndr_get_array_length(ndr, &r->in.server_name), sizeof(uint16_t), CH_UTF16));
+ NDR_PULL_SET_MEM_CTX(ndr, _mem_save_server_name_0, 0);
+ }
+ NDR_CHECK(ndr_pull_array_size(ndr, &r->in.message_name));
+ NDR_CHECK(ndr_pull_array_length(ndr, &r->in.message_name));
+ if (ndr_get_array_length(ndr, &r->in.message_name) > ndr_get_array_size(ndr, &r->in.message_name)) {
+ return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", ndr_get_array_size(ndr, &r->in.message_name), ndr_get_array_length(ndr, &r->in.message_name));
+ }
+ NDR_CHECK(ndr_check_string_terminator(ndr, ndr_get_array_length(ndr, &r->in.message_name), sizeof(uint16_t)));
+ NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->in.message_name, ndr_get_array_length(ndr, &r->in.message_name), sizeof(uint16_t), CH_UTF16));
+ NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_message_sender_name));
+ if (_ptr_message_sender_name) {
+ NDR_PULL_ALLOC(ndr, r->in.message_sender_name);
+ } else {
+ r->in.message_sender_name = NULL;
+ }
+ if (r->in.message_sender_name) {
+ _mem_save_message_sender_name_0 = NDR_PULL_GET_MEM_CTX(ndr);
+ NDR_PULL_SET_MEM_CTX(ndr, r->in.message_sender_name, 0);
+ NDR_CHECK(ndr_pull_array_size(ndr, &r->in.message_sender_name));
+ NDR_CHECK(ndr_pull_array_length(ndr, &r->in.message_sender_name));
+ if (ndr_get_array_length(ndr, &r->in.message_sender_name) > ndr_get_array_size(ndr, &r->in.message_sender_name)) {
+ return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", ndr_get_array_size(ndr, &r->in.message_sender_name), ndr_get_array_length(ndr, &r->in.message_sender_name));
+ }
+ NDR_CHECK(ndr_check_string_terminator(ndr, ndr_get_array_length(ndr, &r->in.message_sender_name), sizeof(uint16_t)));
+ NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->in.message_sender_name, ndr_get_array_length(ndr, &r->in.message_sender_name), sizeof(uint16_t), CH_UTF16));
+ NDR_PULL_SET_MEM_CTX(ndr, _mem_save_message_sender_name_0, 0);
+ }
+ NDR_CHECK(ndr_pull_array_size(ndr, &r->in.message_buffer));
+ if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
+ NDR_PULL_ALLOC_N(ndr, r->in.message_buffer, ndr_get_array_size(ndr, &r->in.message_buffer));
+ }
+ NDR_CHECK(ndr_pull_array_uint8(ndr, NDR_SCALARS, r->in.message_buffer, ndr_get_array_size(ndr, &r->in.message_buffer)));
+ NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->in.message_size));
+ if (r->in.message_buffer) {
+ NDR_CHECK(ndr_check_array_size(ndr, (void*)&r->in.message_buffer, r->in.message_size));
+ }
}
if (flags & NDR_OUT) {
NDR_CHECK(ndr_pull_WERROR(ndr, NDR_SCALARS, &r->out.result));
@@ -3157,20 +7392,41 @@ static enum ndr_err_code ndr_pull_WKSSVC_NETRMESSAGEBUFFERSEND(struct ndr_pull *
return NDR_ERR_SUCCESS;
}
-_PUBLIC_ void ndr_print_WKSSVC_NETRMESSAGEBUFFERSEND(struct ndr_print *ndr, const char *name, int flags, const struct WKSSVC_NETRMESSAGEBUFFERSEND *r)
+_PUBLIC_ void ndr_print_wkssvc_NetrMessageBufferSend(struct ndr_print *ndr, const char *name, int flags, const struct wkssvc_NetrMessageBufferSend *r)
{
- ndr_print_struct(ndr, name, "WKSSVC_NETRMESSAGEBUFFERSEND");
+ ndr_print_struct(ndr, name, "wkssvc_NetrMessageBufferSend");
ndr->depth++;
if (flags & NDR_SET_VALUES) {
ndr->flags |= LIBNDR_PRINT_SET_VALUES;
}
if (flags & NDR_IN) {
- ndr_print_struct(ndr, "in", "WKSSVC_NETRMESSAGEBUFFERSEND");
+ ndr_print_struct(ndr, "in", "wkssvc_NetrMessageBufferSend");
ndr->depth++;
+ ndr_print_ptr(ndr, "server_name", r->in.server_name);
+ ndr->depth++;
+ if (r->in.server_name) {
+ ndr_print_string(ndr, "server_name", r->in.server_name);
+ }
+ ndr->depth--;
+ ndr_print_ptr(ndr, "message_name", r->in.message_name);
+ ndr->depth++;
+ ndr_print_string(ndr, "message_name", r->in.message_name);
+ ndr->depth--;
+ ndr_print_ptr(ndr, "message_sender_name", r->in.message_sender_name);
+ ndr->depth++;
+ if (r->in.message_sender_name) {
+ ndr_print_string(ndr, "message_sender_name", r->in.message_sender_name);
+ }
+ ndr->depth--;
+ ndr_print_ptr(ndr, "message_buffer", r->in.message_buffer);
+ ndr->depth++;
+ ndr_print_array_uint8(ndr, "message_buffer", r->in.message_buffer, r->in.message_size);
+ ndr->depth--;
+ ndr_print_uint32(ndr, "message_size", r->in.message_size);
ndr->depth--;
}
if (flags & NDR_OUT) {
- ndr_print_struct(ndr, "out", "WKSSVC_NETRMESSAGEBUFFERSEND");
+ ndr_print_struct(ndr, "out", "wkssvc_NetrMessageBufferSend");
ndr->depth++;
ndr_print_WERROR(ndr, "result", r->out.result);
ndr->depth--;
@@ -3178,50 +7434,165 @@ _PUBLIC_ void ndr_print_WKSSVC_NETRMESSAGEBUFFERSEND(struct ndr_print *ndr, cons
ndr->depth--;
}
-static enum ndr_err_code ndr_push_WKSSVC_NETRWORKSTATIONSTATISTICSGET(struct ndr_push *ndr, int flags, const struct WKSSVC_NETRWORKSTATIONSTATISTICSGET *r)
+static enum ndr_err_code ndr_push_wkssvc_NetrWorkstationStatisticsGet(struct ndr_push *ndr, int flags, const struct wkssvc_NetrWorkstationStatisticsGet *r)
{
if (flags & NDR_IN) {
+ NDR_CHECK(ndr_push_unique_ptr(ndr, r->in.server_name));
+ if (r->in.server_name) {
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.server_name, CH_UTF16)));
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 0));
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.server_name, CH_UTF16)));
+ NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->in.server_name, ndr_charset_length(r->in.server_name, CH_UTF16), sizeof(uint16_t), CH_UTF16));
+ }
+ NDR_CHECK(ndr_push_unique_ptr(ndr, r->in.unknown2));
+ if (r->in.unknown2) {
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.unknown2, CH_UTF16)));
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 0));
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.unknown2, CH_UTF16)));
+ NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->in.unknown2, ndr_charset_length(r->in.unknown2, CH_UTF16), sizeof(uint16_t), CH_UTF16));
+ }
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->in.unknown3));
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->in.unknown4));
}
if (flags & NDR_OUT) {
+ if (r->out.info == NULL) {
+ return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
+ }
+ if (*r->out.info == NULL) {
+ return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
+ }
+ NDR_CHECK(ndr_push_ref_ptr(ndr));
+ NDR_CHECK(ndr_push_wkssvc_NetrWorkstationStatistics(ndr, NDR_SCALARS, *r->out.info));
NDR_CHECK(ndr_push_WERROR(ndr, NDR_SCALARS, r->out.result));
}
return NDR_ERR_SUCCESS;
}
-static enum ndr_err_code ndr_pull_WKSSVC_NETRWORKSTATIONSTATISTICSGET(struct ndr_pull *ndr, int flags, struct WKSSVC_NETRWORKSTATIONSTATISTICSGET *r)
+static enum ndr_err_code ndr_pull_wkssvc_NetrWorkstationStatisticsGet(struct ndr_pull *ndr, int flags, struct wkssvc_NetrWorkstationStatisticsGet *r)
{
+ uint32_t _ptr_server_name;
+ uint32_t _ptr_unknown2;
+ uint32_t _ptr_info;
+ TALLOC_CTX *_mem_save_server_name_0;
+ TALLOC_CTX *_mem_save_unknown2_0;
+ TALLOC_CTX *_mem_save_info_0;
+ TALLOC_CTX *_mem_save_info_1;
if (flags & NDR_IN) {
+ ZERO_STRUCT(r->out);
+
+ NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_server_name));
+ if (_ptr_server_name) {
+ NDR_PULL_ALLOC(ndr, r->in.server_name);
+ } else {
+ r->in.server_name = NULL;
+ }
+ if (r->in.server_name) {
+ _mem_save_server_name_0 = NDR_PULL_GET_MEM_CTX(ndr);
+ NDR_PULL_SET_MEM_CTX(ndr, r->in.server_name, 0);
+ NDR_CHECK(ndr_pull_array_size(ndr, &r->in.server_name));
+ NDR_CHECK(ndr_pull_array_length(ndr, &r->in.server_name));
+ if (ndr_get_array_length(ndr, &r->in.server_name) > ndr_get_array_size(ndr, &r->in.server_name)) {
+ return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", ndr_get_array_size(ndr, &r->in.server_name), ndr_get_array_length(ndr, &r->in.server_name));
+ }
+ NDR_CHECK(ndr_check_string_terminator(ndr, ndr_get_array_length(ndr, &r->in.server_name), sizeof(uint16_t)));
+ NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->in.server_name, ndr_get_array_length(ndr, &r->in.server_name), sizeof(uint16_t), CH_UTF16));
+ NDR_PULL_SET_MEM_CTX(ndr, _mem_save_server_name_0, 0);
+ }
+ NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_unknown2));
+ if (_ptr_unknown2) {
+ NDR_PULL_ALLOC(ndr, r->in.unknown2);
+ } else {
+ r->in.unknown2 = NULL;
+ }
+ if (r->in.unknown2) {
+ _mem_save_unknown2_0 = NDR_PULL_GET_MEM_CTX(ndr);
+ NDR_PULL_SET_MEM_CTX(ndr, r->in.unknown2, 0);
+ NDR_CHECK(ndr_pull_array_size(ndr, &r->in.unknown2));
+ NDR_CHECK(ndr_pull_array_length(ndr, &r->in.unknown2));
+ if (ndr_get_array_length(ndr, &r->in.unknown2) > ndr_get_array_size(ndr, &r->in.unknown2)) {
+ return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", ndr_get_array_size(ndr, &r->in.unknown2), ndr_get_array_length(ndr, &r->in.unknown2));
+ }
+ NDR_CHECK(ndr_check_string_terminator(ndr, ndr_get_array_length(ndr, &r->in.unknown2), sizeof(uint16_t)));
+ NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->in.unknown2, ndr_get_array_length(ndr, &r->in.unknown2), sizeof(uint16_t), CH_UTF16));
+ NDR_PULL_SET_MEM_CTX(ndr, _mem_save_unknown2_0, 0);
+ }
+ NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->in.unknown3));
+ NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->in.unknown4));
+ NDR_PULL_ALLOC(ndr, r->out.info);
+ ZERO_STRUCTP(r->out.info);
}
if (flags & NDR_OUT) {
+ if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
+ NDR_PULL_ALLOC(ndr, r->out.info);
+ }
+ _mem_save_info_0 = NDR_PULL_GET_MEM_CTX(ndr);
+ NDR_PULL_SET_MEM_CTX(ndr, r->out.info, LIBNDR_FLAG_REF_ALLOC);
+ NDR_CHECK(ndr_pull_ref_ptr(ndr, &_ptr_info));
+ if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
+ NDR_PULL_ALLOC(ndr, *r->out.info);
+ }
+ _mem_save_info_1 = NDR_PULL_GET_MEM_CTX(ndr);
+ NDR_PULL_SET_MEM_CTX(ndr, *r->out.info, LIBNDR_FLAG_REF_ALLOC);
+ NDR_CHECK(ndr_pull_wkssvc_NetrWorkstationStatistics(ndr, NDR_SCALARS, *r->out.info));
+ NDR_PULL_SET_MEM_CTX(ndr, _mem_save_info_1, LIBNDR_FLAG_REF_ALLOC);
+ NDR_PULL_SET_MEM_CTX(ndr, _mem_save_info_0, LIBNDR_FLAG_REF_ALLOC);
NDR_CHECK(ndr_pull_WERROR(ndr, NDR_SCALARS, &r->out.result));
}
return NDR_ERR_SUCCESS;
}
-_PUBLIC_ void ndr_print_WKSSVC_NETRWORKSTATIONSTATISTICSGET(struct ndr_print *ndr, const char *name, int flags, const struct WKSSVC_NETRWORKSTATIONSTATISTICSGET *r)
+_PUBLIC_ void ndr_print_wkssvc_NetrWorkstationStatisticsGet(struct ndr_print *ndr, const char *name, int flags, const struct wkssvc_NetrWorkstationStatisticsGet *r)
{
- ndr_print_struct(ndr, name, "WKSSVC_NETRWORKSTATIONSTATISTICSGET");
+ ndr_print_struct(ndr, name, "wkssvc_NetrWorkstationStatisticsGet");
ndr->depth++;
if (flags & NDR_SET_VALUES) {
ndr->flags |= LIBNDR_PRINT_SET_VALUES;
}
if (flags & NDR_IN) {
- ndr_print_struct(ndr, "in", "WKSSVC_NETRWORKSTATIONSTATISTICSGET");
+ ndr_print_struct(ndr, "in", "wkssvc_NetrWorkstationStatisticsGet");
ndr->depth++;
+ ndr_print_ptr(ndr, "server_name", r->in.server_name);
+ ndr->depth++;
+ if (r->in.server_name) {
+ ndr_print_string(ndr, "server_name", r->in.server_name);
+ }
+ ndr->depth--;
+ ndr_print_ptr(ndr, "unknown2", r->in.unknown2);
+ ndr->depth++;
+ if (r->in.unknown2) {
+ ndr_print_string(ndr, "unknown2", r->in.unknown2);
+ }
+ ndr->depth--;
+ ndr_print_uint32(ndr, "unknown3", r->in.unknown3);
+ ndr_print_uint32(ndr, "unknown4", r->in.unknown4);
ndr->depth--;
}
if (flags & NDR_OUT) {
- ndr_print_struct(ndr, "out", "WKSSVC_NETRWORKSTATIONSTATISTICSGET");
+ ndr_print_struct(ndr, "out", "wkssvc_NetrWorkstationStatisticsGet");
+ ndr->depth++;
+ ndr_print_ptr(ndr, "info", r->out.info);
ndr->depth++;
+ ndr_print_ptr(ndr, "info", *r->out.info);
+ ndr->depth++;
+ ndr_print_wkssvc_NetrWorkstationStatistics(ndr, "info", *r->out.info);
+ ndr->depth--;
+ ndr->depth--;
ndr_print_WERROR(ndr, "result", r->out.result);
ndr->depth--;
}
ndr->depth--;
}
-static enum ndr_err_code ndr_push_WKSSVC_NETRLOGONDOMAINNAMEADD(struct ndr_push *ndr, int flags, const struct WKSSVC_NETRLOGONDOMAINNAMEADD *r)
+static enum ndr_err_code ndr_push_wkssvc_NetrLogonDomainNameAdd(struct ndr_push *ndr, int flags, const struct wkssvc_NetrLogonDomainNameAdd *r)
{
if (flags & NDR_IN) {
+ if (r->in.domain_name == NULL) {
+ return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
+ }
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.domain_name, CH_UTF16)));
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 0));
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.domain_name, CH_UTF16)));
+ NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->in.domain_name, ndr_charset_length(r->in.domain_name, CH_UTF16), sizeof(uint16_t), CH_UTF16));
}
if (flags & NDR_OUT) {
NDR_CHECK(ndr_push_WERROR(ndr, NDR_SCALARS, r->out.result));
@@ -3229,9 +7600,16 @@ static enum ndr_err_code ndr_push_WKSSVC_NETRLOGONDOMAINNAMEADD(struct ndr_push
return NDR_ERR_SUCCESS;
}
-static enum ndr_err_code ndr_pull_WKSSVC_NETRLOGONDOMAINNAMEADD(struct ndr_pull *ndr, int flags, struct WKSSVC_NETRLOGONDOMAINNAMEADD *r)
+static enum ndr_err_code ndr_pull_wkssvc_NetrLogonDomainNameAdd(struct ndr_pull *ndr, int flags, struct wkssvc_NetrLogonDomainNameAdd *r)
{
if (flags & NDR_IN) {
+ NDR_CHECK(ndr_pull_array_size(ndr, &r->in.domain_name));
+ NDR_CHECK(ndr_pull_array_length(ndr, &r->in.domain_name));
+ if (ndr_get_array_length(ndr, &r->in.domain_name) > ndr_get_array_size(ndr, &r->in.domain_name)) {
+ return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", ndr_get_array_size(ndr, &r->in.domain_name), ndr_get_array_length(ndr, &r->in.domain_name));
+ }
+ NDR_CHECK(ndr_check_string_terminator(ndr, ndr_get_array_length(ndr, &r->in.domain_name), sizeof(uint16_t)));
+ NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->in.domain_name, ndr_get_array_length(ndr, &r->in.domain_name), sizeof(uint16_t), CH_UTF16));
}
if (flags & NDR_OUT) {
NDR_CHECK(ndr_pull_WERROR(ndr, NDR_SCALARS, &r->out.result));
@@ -3239,20 +7617,24 @@ static enum ndr_err_code ndr_pull_WKSSVC_NETRLOGONDOMAINNAMEADD(struct ndr_pull
return NDR_ERR_SUCCESS;
}
-_PUBLIC_ void ndr_print_WKSSVC_NETRLOGONDOMAINNAMEADD(struct ndr_print *ndr, const char *name, int flags, const struct WKSSVC_NETRLOGONDOMAINNAMEADD *r)
+_PUBLIC_ void ndr_print_wkssvc_NetrLogonDomainNameAdd(struct ndr_print *ndr, const char *name, int flags, const struct wkssvc_NetrLogonDomainNameAdd *r)
{
- ndr_print_struct(ndr, name, "WKSSVC_NETRLOGONDOMAINNAMEADD");
+ ndr_print_struct(ndr, name, "wkssvc_NetrLogonDomainNameAdd");
ndr->depth++;
if (flags & NDR_SET_VALUES) {
ndr->flags |= LIBNDR_PRINT_SET_VALUES;
}
if (flags & NDR_IN) {
- ndr_print_struct(ndr, "in", "WKSSVC_NETRLOGONDOMAINNAMEADD");
+ ndr_print_struct(ndr, "in", "wkssvc_NetrLogonDomainNameAdd");
+ ndr->depth++;
+ ndr_print_ptr(ndr, "domain_name", r->in.domain_name);
ndr->depth++;
+ ndr_print_string(ndr, "domain_name", r->in.domain_name);
+ ndr->depth--;
ndr->depth--;
}
if (flags & NDR_OUT) {
- ndr_print_struct(ndr, "out", "WKSSVC_NETRLOGONDOMAINNAMEADD");
+ ndr_print_struct(ndr, "out", "wkssvc_NetrLogonDomainNameAdd");
ndr->depth++;
ndr_print_WERROR(ndr, "result", r->out.result);
ndr->depth--;
@@ -3260,9 +7642,16 @@ _PUBLIC_ void ndr_print_WKSSVC_NETRLOGONDOMAINNAMEADD(struct ndr_print *ndr, con
ndr->depth--;
}
-static enum ndr_err_code ndr_push_WKSSVC_NETRLOGONDOMAINNAMEDEL(struct ndr_push *ndr, int flags, const struct WKSSVC_NETRLOGONDOMAINNAMEDEL *r)
+static enum ndr_err_code ndr_push_wkssvc_NetrLogonDomainNameDel(struct ndr_push *ndr, int flags, const struct wkssvc_NetrLogonDomainNameDel *r)
{
if (flags & NDR_IN) {
+ if (r->in.domain_name == NULL) {
+ return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
+ }
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.domain_name, CH_UTF16)));
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 0));
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.domain_name, CH_UTF16)));
+ NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->in.domain_name, ndr_charset_length(r->in.domain_name, CH_UTF16), sizeof(uint16_t), CH_UTF16));
}
if (flags & NDR_OUT) {
NDR_CHECK(ndr_push_WERROR(ndr, NDR_SCALARS, r->out.result));
@@ -3270,9 +7659,16 @@ static enum ndr_err_code ndr_push_WKSSVC_NETRLOGONDOMAINNAMEDEL(struct ndr_push
return NDR_ERR_SUCCESS;
}
-static enum ndr_err_code ndr_pull_WKSSVC_NETRLOGONDOMAINNAMEDEL(struct ndr_pull *ndr, int flags, struct WKSSVC_NETRLOGONDOMAINNAMEDEL *r)
+static enum ndr_err_code ndr_pull_wkssvc_NetrLogonDomainNameDel(struct ndr_pull *ndr, int flags, struct wkssvc_NetrLogonDomainNameDel *r)
{
if (flags & NDR_IN) {
+ NDR_CHECK(ndr_pull_array_size(ndr, &r->in.domain_name));
+ NDR_CHECK(ndr_pull_array_length(ndr, &r->in.domain_name));
+ if (ndr_get_array_length(ndr, &r->in.domain_name) > ndr_get_array_size(ndr, &r->in.domain_name)) {
+ return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", ndr_get_array_size(ndr, &r->in.domain_name), ndr_get_array_length(ndr, &r->in.domain_name));
+ }
+ NDR_CHECK(ndr_check_string_terminator(ndr, ndr_get_array_length(ndr, &r->in.domain_name), sizeof(uint16_t)));
+ NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->in.domain_name, ndr_get_array_length(ndr, &r->in.domain_name), sizeof(uint16_t), CH_UTF16));
}
if (flags & NDR_OUT) {
NDR_CHECK(ndr_pull_WERROR(ndr, NDR_SCALARS, &r->out.result));
@@ -3280,20 +7676,24 @@ static enum ndr_err_code ndr_pull_WKSSVC_NETRLOGONDOMAINNAMEDEL(struct ndr_pull
return NDR_ERR_SUCCESS;
}
-_PUBLIC_ void ndr_print_WKSSVC_NETRLOGONDOMAINNAMEDEL(struct ndr_print *ndr, const char *name, int flags, const struct WKSSVC_NETRLOGONDOMAINNAMEDEL *r)
+_PUBLIC_ void ndr_print_wkssvc_NetrLogonDomainNameDel(struct ndr_print *ndr, const char *name, int flags, const struct wkssvc_NetrLogonDomainNameDel *r)
{
- ndr_print_struct(ndr, name, "WKSSVC_NETRLOGONDOMAINNAMEDEL");
+ ndr_print_struct(ndr, name, "wkssvc_NetrLogonDomainNameDel");
ndr->depth++;
if (flags & NDR_SET_VALUES) {
ndr->flags |= LIBNDR_PRINT_SET_VALUES;
}
if (flags & NDR_IN) {
- ndr_print_struct(ndr, "in", "WKSSVC_NETRLOGONDOMAINNAMEDEL");
+ ndr_print_struct(ndr, "in", "wkssvc_NetrLogonDomainNameDel");
+ ndr->depth++;
+ ndr_print_ptr(ndr, "domain_name", r->in.domain_name);
ndr->depth++;
+ ndr_print_string(ndr, "domain_name", r->in.domain_name);
+ ndr->depth--;
ndr->depth--;
}
if (flags & NDR_OUT) {
- ndr_print_struct(ndr, "out", "WKSSVC_NETRLOGONDOMAINNAMEDEL");
+ ndr_print_struct(ndr, "out", "wkssvc_NetrLogonDomainNameDel");
ndr->depth++;
ndr_print_WERROR(ndr, "result", r->out.result);
ndr->depth--;
@@ -3301,9 +7701,45 @@ _PUBLIC_ void ndr_print_WKSSVC_NETRLOGONDOMAINNAMEDEL(struct ndr_print *ndr, con
ndr->depth--;
}
-static enum ndr_err_code ndr_push_WKSSVC_NETRJOINDOMAIN(struct ndr_push *ndr, int flags, const struct WKSSVC_NETRJOINDOMAIN *r)
+static enum ndr_err_code ndr_push_wkssvc_NetrJoinDomain(struct ndr_push *ndr, int flags, const struct wkssvc_NetrJoinDomain *r)
{
if (flags & NDR_IN) {
+ NDR_CHECK(ndr_push_unique_ptr(ndr, r->in.server_name));
+ if (r->in.server_name) {
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.server_name, CH_UTF16)));
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 0));
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.server_name, CH_UTF16)));
+ NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->in.server_name, ndr_charset_length(r->in.server_name, CH_UTF16), sizeof(uint16_t), CH_UTF16));
+ }
+ if (r->in.domain_name == NULL) {
+ return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
+ }
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.domain_name, CH_UTF16)));
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 0));
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.domain_name, CH_UTF16)));
+ NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->in.domain_name, ndr_charset_length(r->in.domain_name, CH_UTF16), sizeof(uint16_t), CH_UTF16));
+ NDR_CHECK(ndr_push_unique_ptr(ndr, r->in.account_ou));
+ if (r->in.account_ou) {
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.account_ou, CH_UTF16)));
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 0));
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.account_ou, CH_UTF16)));
+ NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->in.account_ou, ndr_charset_length(r->in.account_ou, CH_UTF16), sizeof(uint16_t), CH_UTF16));
+ }
+ NDR_CHECK(ndr_push_unique_ptr(ndr, r->in.Account));
+ if (r->in.Account) {
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.Account, CH_UTF16)));
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 0));
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.Account, CH_UTF16)));
+ NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->in.Account, ndr_charset_length(r->in.Account, CH_UTF16), sizeof(uint16_t), CH_UTF16));
+ }
+ NDR_CHECK(ndr_push_unique_ptr(ndr, r->in.password));
+ if (r->in.password) {
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.password, CH_UTF16)));
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 0));
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.password, CH_UTF16)));
+ NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->in.password, ndr_charset_length(r->in.password, CH_UTF16), sizeof(uint16_t), CH_UTF16));
+ }
+ NDR_CHECK(ndr_push_wkssvc_joinflags(ndr, NDR_SCALARS, r->in.join_flags));
}
if (flags & NDR_OUT) {
NDR_CHECK(ndr_push_WERROR(ndr, NDR_SCALARS, r->out.result));
@@ -3311,9 +7747,97 @@ static enum ndr_err_code ndr_push_WKSSVC_NETRJOINDOMAIN(struct ndr_push *ndr, in
return NDR_ERR_SUCCESS;
}
-static enum ndr_err_code ndr_pull_WKSSVC_NETRJOINDOMAIN(struct ndr_pull *ndr, int flags, struct WKSSVC_NETRJOINDOMAIN *r)
+static enum ndr_err_code ndr_pull_wkssvc_NetrJoinDomain(struct ndr_pull *ndr, int flags, struct wkssvc_NetrJoinDomain *r)
{
+ uint32_t _ptr_server_name;
+ uint32_t _ptr_account_ou;
+ uint32_t _ptr_Account;
+ uint32_t _ptr_password;
+ TALLOC_CTX *_mem_save_server_name_0;
+ TALLOC_CTX *_mem_save_account_ou_0;
+ TALLOC_CTX *_mem_save_Account_0;
+ TALLOC_CTX *_mem_save_password_0;
if (flags & NDR_IN) {
+ NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_server_name));
+ if (_ptr_server_name) {
+ NDR_PULL_ALLOC(ndr, r->in.server_name);
+ } else {
+ r->in.server_name = NULL;
+ }
+ if (r->in.server_name) {
+ _mem_save_server_name_0 = NDR_PULL_GET_MEM_CTX(ndr);
+ NDR_PULL_SET_MEM_CTX(ndr, r->in.server_name, 0);
+ NDR_CHECK(ndr_pull_array_size(ndr, &r->in.server_name));
+ NDR_CHECK(ndr_pull_array_length(ndr, &r->in.server_name));
+ if (ndr_get_array_length(ndr, &r->in.server_name) > ndr_get_array_size(ndr, &r->in.server_name)) {
+ return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", ndr_get_array_size(ndr, &r->in.server_name), ndr_get_array_length(ndr, &r->in.server_name));
+ }
+ NDR_CHECK(ndr_check_string_terminator(ndr, ndr_get_array_length(ndr, &r->in.server_name), sizeof(uint16_t)));
+ NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->in.server_name, ndr_get_array_length(ndr, &r->in.server_name), sizeof(uint16_t), CH_UTF16));
+ NDR_PULL_SET_MEM_CTX(ndr, _mem_save_server_name_0, 0);
+ }
+ NDR_CHECK(ndr_pull_array_size(ndr, &r->in.domain_name));
+ NDR_CHECK(ndr_pull_array_length(ndr, &r->in.domain_name));
+ if (ndr_get_array_length(ndr, &r->in.domain_name) > ndr_get_array_size(ndr, &r->in.domain_name)) {
+ return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", ndr_get_array_size(ndr, &r->in.domain_name), ndr_get_array_length(ndr, &r->in.domain_name));
+ }
+ NDR_CHECK(ndr_check_string_terminator(ndr, ndr_get_array_length(ndr, &r->in.domain_name), sizeof(uint16_t)));
+ NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->in.domain_name, ndr_get_array_length(ndr, &r->in.domain_name), sizeof(uint16_t), CH_UTF16));
+ NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_account_ou));
+ if (_ptr_account_ou) {
+ NDR_PULL_ALLOC(ndr, r->in.account_ou);
+ } else {
+ r->in.account_ou = NULL;
+ }
+ if (r->in.account_ou) {
+ _mem_save_account_ou_0 = NDR_PULL_GET_MEM_CTX(ndr);
+ NDR_PULL_SET_MEM_CTX(ndr, r->in.account_ou, 0);
+ NDR_CHECK(ndr_pull_array_size(ndr, &r->in.account_ou));
+ NDR_CHECK(ndr_pull_array_length(ndr, &r->in.account_ou));
+ if (ndr_get_array_length(ndr, &r->in.account_ou) > ndr_get_array_size(ndr, &r->in.account_ou)) {
+ return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", ndr_get_array_size(ndr, &r->in.account_ou), ndr_get_array_length(ndr, &r->in.account_ou));
+ }
+ NDR_CHECK(ndr_check_string_terminator(ndr, ndr_get_array_length(ndr, &r->in.account_ou), sizeof(uint16_t)));
+ NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->in.account_ou, ndr_get_array_length(ndr, &r->in.account_ou), sizeof(uint16_t), CH_UTF16));
+ NDR_PULL_SET_MEM_CTX(ndr, _mem_save_account_ou_0, 0);
+ }
+ NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_Account));
+ if (_ptr_Account) {
+ NDR_PULL_ALLOC(ndr, r->in.Account);
+ } else {
+ r->in.Account = NULL;
+ }
+ if (r->in.Account) {
+ _mem_save_Account_0 = NDR_PULL_GET_MEM_CTX(ndr);
+ NDR_PULL_SET_MEM_CTX(ndr, r->in.Account, 0);
+ NDR_CHECK(ndr_pull_array_size(ndr, &r->in.Account));
+ NDR_CHECK(ndr_pull_array_length(ndr, &r->in.Account));
+ if (ndr_get_array_length(ndr, &r->in.Account) > ndr_get_array_size(ndr, &r->in.Account)) {
+ return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", ndr_get_array_size(ndr, &r->in.Account), ndr_get_array_length(ndr, &r->in.Account));
+ }
+ NDR_CHECK(ndr_check_string_terminator(ndr, ndr_get_array_length(ndr, &r->in.Account), sizeof(uint16_t)));
+ NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->in.Account, ndr_get_array_length(ndr, &r->in.Account), sizeof(uint16_t), CH_UTF16));
+ NDR_PULL_SET_MEM_CTX(ndr, _mem_save_Account_0, 0);
+ }
+ NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_password));
+ if (_ptr_password) {
+ NDR_PULL_ALLOC(ndr, r->in.password);
+ } else {
+ r->in.password = NULL;
+ }
+ if (r->in.password) {
+ _mem_save_password_0 = NDR_PULL_GET_MEM_CTX(ndr);
+ NDR_PULL_SET_MEM_CTX(ndr, r->in.password, 0);
+ NDR_CHECK(ndr_pull_array_size(ndr, &r->in.password));
+ NDR_CHECK(ndr_pull_array_length(ndr, &r->in.password));
+ if (ndr_get_array_length(ndr, &r->in.password) > ndr_get_array_size(ndr, &r->in.password)) {
+ return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", ndr_get_array_size(ndr, &r->in.password), ndr_get_array_length(ndr, &r->in.password));
+ }
+ NDR_CHECK(ndr_check_string_terminator(ndr, ndr_get_array_length(ndr, &r->in.password), sizeof(uint16_t)));
+ NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->in.password, ndr_get_array_length(ndr, &r->in.password), sizeof(uint16_t), CH_UTF16));
+ NDR_PULL_SET_MEM_CTX(ndr, _mem_save_password_0, 0);
+ }
+ NDR_CHECK(ndr_pull_wkssvc_joinflags(ndr, NDR_SCALARS, &r->in.join_flags));
}
if (flags & NDR_OUT) {
NDR_CHECK(ndr_pull_WERROR(ndr, NDR_SCALARS, &r->out.result));
@@ -3321,20 +7845,49 @@ static enum ndr_err_code ndr_pull_WKSSVC_NETRJOINDOMAIN(struct ndr_pull *ndr, in
return NDR_ERR_SUCCESS;
}
-_PUBLIC_ void ndr_print_WKSSVC_NETRJOINDOMAIN(struct ndr_print *ndr, const char *name, int flags, const struct WKSSVC_NETRJOINDOMAIN *r)
+_PUBLIC_ void ndr_print_wkssvc_NetrJoinDomain(struct ndr_print *ndr, const char *name, int flags, const struct wkssvc_NetrJoinDomain *r)
{
- ndr_print_struct(ndr, name, "WKSSVC_NETRJOINDOMAIN");
+ ndr_print_struct(ndr, name, "wkssvc_NetrJoinDomain");
ndr->depth++;
if (flags & NDR_SET_VALUES) {
ndr->flags |= LIBNDR_PRINT_SET_VALUES;
}
if (flags & NDR_IN) {
- ndr_print_struct(ndr, "in", "WKSSVC_NETRJOINDOMAIN");
+ ndr_print_struct(ndr, "in", "wkssvc_NetrJoinDomain");
+ ndr->depth++;
+ ndr_print_ptr(ndr, "server_name", r->in.server_name);
ndr->depth++;
+ if (r->in.server_name) {
+ ndr_print_string(ndr, "server_name", r->in.server_name);
+ }
+ ndr->depth--;
+ ndr_print_ptr(ndr, "domain_name", r->in.domain_name);
+ ndr->depth++;
+ ndr_print_string(ndr, "domain_name", r->in.domain_name);
+ ndr->depth--;
+ ndr_print_ptr(ndr, "account_ou", r->in.account_ou);
+ ndr->depth++;
+ if (r->in.account_ou) {
+ ndr_print_string(ndr, "account_ou", r->in.account_ou);
+ }
+ ndr->depth--;
+ ndr_print_ptr(ndr, "Account", r->in.Account);
+ ndr->depth++;
+ if (r->in.Account) {
+ ndr_print_string(ndr, "Account", r->in.Account);
+ }
+ ndr->depth--;
+ ndr_print_ptr(ndr, "password", r->in.password);
+ ndr->depth++;
+ if (r->in.password) {
+ ndr_print_string(ndr, "password", r->in.password);
+ }
+ ndr->depth--;
+ ndr_print_wkssvc_joinflags(ndr, "join_flags", r->in.join_flags);
ndr->depth--;
}
if (flags & NDR_OUT) {
- ndr_print_struct(ndr, "out", "WKSSVC_NETRJOINDOMAIN");
+ ndr_print_struct(ndr, "out", "wkssvc_NetrJoinDomain");
ndr->depth++;
ndr_print_WERROR(ndr, "result", r->out.result);
ndr->depth--;
@@ -3342,9 +7895,31 @@ _PUBLIC_ void ndr_print_WKSSVC_NETRJOINDOMAIN(struct ndr_print *ndr, const char
ndr->depth--;
}
-static enum ndr_err_code ndr_push_WKSSVC_NETRUNJOINDOMAIN(struct ndr_push *ndr, int flags, const struct WKSSVC_NETRUNJOINDOMAIN *r)
+static enum ndr_err_code ndr_push_wkssvc_NetrUnjoinDomain(struct ndr_push *ndr, int flags, const struct wkssvc_NetrUnjoinDomain *r)
{
if (flags & NDR_IN) {
+ NDR_CHECK(ndr_push_unique_ptr(ndr, r->in.server_name));
+ if (r->in.server_name) {
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.server_name, CH_UTF16)));
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 0));
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.server_name, CH_UTF16)));
+ NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->in.server_name, ndr_charset_length(r->in.server_name, CH_UTF16), sizeof(uint16_t), CH_UTF16));
+ }
+ NDR_CHECK(ndr_push_unique_ptr(ndr, r->in.Account));
+ if (r->in.Account) {
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.Account, CH_UTF16)));
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 0));
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.Account, CH_UTF16)));
+ NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->in.Account, ndr_charset_length(r->in.Account, CH_UTF16), sizeof(uint16_t), CH_UTF16));
+ }
+ NDR_CHECK(ndr_push_unique_ptr(ndr, r->in.password));
+ if (r->in.password) {
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.password, CH_UTF16)));
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 0));
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.password, CH_UTF16)));
+ NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->in.password, ndr_charset_length(r->in.password, CH_UTF16), sizeof(uint16_t), CH_UTF16));
+ }
+ NDR_CHECK(ndr_push_wkssvc_joinflags(ndr, NDR_SCALARS, r->in.unjoin_flags));
}
if (flags & NDR_OUT) {
NDR_CHECK(ndr_push_WERROR(ndr, NDR_SCALARS, r->out.result));
@@ -3352,9 +7927,70 @@ static enum ndr_err_code ndr_push_WKSSVC_NETRUNJOINDOMAIN(struct ndr_push *ndr,
return NDR_ERR_SUCCESS;
}
-static enum ndr_err_code ndr_pull_WKSSVC_NETRUNJOINDOMAIN(struct ndr_pull *ndr, int flags, struct WKSSVC_NETRUNJOINDOMAIN *r)
+static enum ndr_err_code ndr_pull_wkssvc_NetrUnjoinDomain(struct ndr_pull *ndr, int flags, struct wkssvc_NetrUnjoinDomain *r)
{
+ uint32_t _ptr_server_name;
+ uint32_t _ptr_Account;
+ uint32_t _ptr_password;
+ TALLOC_CTX *_mem_save_server_name_0;
+ TALLOC_CTX *_mem_save_Account_0;
+ TALLOC_CTX *_mem_save_password_0;
if (flags & NDR_IN) {
+ NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_server_name));
+ if (_ptr_server_name) {
+ NDR_PULL_ALLOC(ndr, r->in.server_name);
+ } else {
+ r->in.server_name = NULL;
+ }
+ if (r->in.server_name) {
+ _mem_save_server_name_0 = NDR_PULL_GET_MEM_CTX(ndr);
+ NDR_PULL_SET_MEM_CTX(ndr, r->in.server_name, 0);
+ NDR_CHECK(ndr_pull_array_size(ndr, &r->in.server_name));
+ NDR_CHECK(ndr_pull_array_length(ndr, &r->in.server_name));
+ if (ndr_get_array_length(ndr, &r->in.server_name) > ndr_get_array_size(ndr, &r->in.server_name)) {
+ return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", ndr_get_array_size(ndr, &r->in.server_name), ndr_get_array_length(ndr, &r->in.server_name));
+ }
+ NDR_CHECK(ndr_check_string_terminator(ndr, ndr_get_array_length(ndr, &r->in.server_name), sizeof(uint16_t)));
+ NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->in.server_name, ndr_get_array_length(ndr, &r->in.server_name), sizeof(uint16_t), CH_UTF16));
+ NDR_PULL_SET_MEM_CTX(ndr, _mem_save_server_name_0, 0);
+ }
+ NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_Account));
+ if (_ptr_Account) {
+ NDR_PULL_ALLOC(ndr, r->in.Account);
+ } else {
+ r->in.Account = NULL;
+ }
+ if (r->in.Account) {
+ _mem_save_Account_0 = NDR_PULL_GET_MEM_CTX(ndr);
+ NDR_PULL_SET_MEM_CTX(ndr, r->in.Account, 0);
+ NDR_CHECK(ndr_pull_array_size(ndr, &r->in.Account));
+ NDR_CHECK(ndr_pull_array_length(ndr, &r->in.Account));
+ if (ndr_get_array_length(ndr, &r->in.Account) > ndr_get_array_size(ndr, &r->in.Account)) {
+ return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", ndr_get_array_size(ndr, &r->in.Account), ndr_get_array_length(ndr, &r->in.Account));
+ }
+ NDR_CHECK(ndr_check_string_terminator(ndr, ndr_get_array_length(ndr, &r->in.Account), sizeof(uint16_t)));
+ NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->in.Account, ndr_get_array_length(ndr, &r->in.Account), sizeof(uint16_t), CH_UTF16));
+ NDR_PULL_SET_MEM_CTX(ndr, _mem_save_Account_0, 0);
+ }
+ NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_password));
+ if (_ptr_password) {
+ NDR_PULL_ALLOC(ndr, r->in.password);
+ } else {
+ r->in.password = NULL;
+ }
+ if (r->in.password) {
+ _mem_save_password_0 = NDR_PULL_GET_MEM_CTX(ndr);
+ NDR_PULL_SET_MEM_CTX(ndr, r->in.password, 0);
+ NDR_CHECK(ndr_pull_array_size(ndr, &r->in.password));
+ NDR_CHECK(ndr_pull_array_length(ndr, &r->in.password));
+ if (ndr_get_array_length(ndr, &r->in.password) > ndr_get_array_size(ndr, &r->in.password)) {
+ return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", ndr_get_array_size(ndr, &r->in.password), ndr_get_array_length(ndr, &r->in.password));
+ }
+ NDR_CHECK(ndr_check_string_terminator(ndr, ndr_get_array_length(ndr, &r->in.password), sizeof(uint16_t)));
+ NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->in.password, ndr_get_array_length(ndr, &r->in.password), sizeof(uint16_t), CH_UTF16));
+ NDR_PULL_SET_MEM_CTX(ndr, _mem_save_password_0, 0);
+ }
+ NDR_CHECK(ndr_pull_wkssvc_joinflags(ndr, NDR_SCALARS, &r->in.unjoin_flags));
}
if (flags & NDR_OUT) {
NDR_CHECK(ndr_pull_WERROR(ndr, NDR_SCALARS, &r->out.result));
@@ -3362,20 +7998,39 @@ static enum ndr_err_code ndr_pull_WKSSVC_NETRUNJOINDOMAIN(struct ndr_pull *ndr,
return NDR_ERR_SUCCESS;
}
-_PUBLIC_ void ndr_print_WKSSVC_NETRUNJOINDOMAIN(struct ndr_print *ndr, const char *name, int flags, const struct WKSSVC_NETRUNJOINDOMAIN *r)
+_PUBLIC_ void ndr_print_wkssvc_NetrUnjoinDomain(struct ndr_print *ndr, const char *name, int flags, const struct wkssvc_NetrUnjoinDomain *r)
{
- ndr_print_struct(ndr, name, "WKSSVC_NETRUNJOINDOMAIN");
+ ndr_print_struct(ndr, name, "wkssvc_NetrUnjoinDomain");
ndr->depth++;
if (flags & NDR_SET_VALUES) {
ndr->flags |= LIBNDR_PRINT_SET_VALUES;
}
if (flags & NDR_IN) {
- ndr_print_struct(ndr, "in", "WKSSVC_NETRUNJOINDOMAIN");
+ ndr_print_struct(ndr, "in", "wkssvc_NetrUnjoinDomain");
ndr->depth++;
+ ndr_print_ptr(ndr, "server_name", r->in.server_name);
+ ndr->depth++;
+ if (r->in.server_name) {
+ ndr_print_string(ndr, "server_name", r->in.server_name);
+ }
+ ndr->depth--;
+ ndr_print_ptr(ndr, "Account", r->in.Account);
+ ndr->depth++;
+ if (r->in.Account) {
+ ndr_print_string(ndr, "Account", r->in.Account);
+ }
+ ndr->depth--;
+ ndr_print_ptr(ndr, "password", r->in.password);
+ ndr->depth++;
+ if (r->in.password) {
+ ndr_print_string(ndr, "password", r->in.password);
+ }
+ ndr->depth--;
+ ndr_print_wkssvc_joinflags(ndr, "unjoin_flags", r->in.unjoin_flags);
ndr->depth--;
}
if (flags & NDR_OUT) {
- ndr_print_struct(ndr, "out", "WKSSVC_NETRUNJOINDOMAIN");
+ ndr_print_struct(ndr, "out", "wkssvc_NetrUnjoinDomain");
ndr->depth++;
ndr_print_WERROR(ndr, "result", r->out.result);
ndr->depth--;
@@ -3383,9 +8038,38 @@ _PUBLIC_ void ndr_print_WKSSVC_NETRUNJOINDOMAIN(struct ndr_print *ndr, const cha
ndr->depth--;
}
-static enum ndr_err_code ndr_push_WKSSVC_NETRRENAMEMACHINEINDOMAIN(struct ndr_push *ndr, int flags, const struct WKSSVC_NETRRENAMEMACHINEINDOMAIN *r)
+static enum ndr_err_code ndr_push_wkssvc_NetrRenameMachineInDomain(struct ndr_push *ndr, int flags, const struct wkssvc_NetrRenameMachineInDomain *r)
{
if (flags & NDR_IN) {
+ NDR_CHECK(ndr_push_unique_ptr(ndr, r->in.server_name));
+ if (r->in.server_name) {
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.server_name, CH_UTF16)));
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 0));
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.server_name, CH_UTF16)));
+ NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->in.server_name, ndr_charset_length(r->in.server_name, CH_UTF16), sizeof(uint16_t), CH_UTF16));
+ }
+ NDR_CHECK(ndr_push_unique_ptr(ndr, r->in.NewMachineName));
+ if (r->in.NewMachineName) {
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.NewMachineName, CH_UTF16)));
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 0));
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.NewMachineName, CH_UTF16)));
+ NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->in.NewMachineName, ndr_charset_length(r->in.NewMachineName, CH_UTF16), sizeof(uint16_t), CH_UTF16));
+ }
+ NDR_CHECK(ndr_push_unique_ptr(ndr, r->in.Account));
+ if (r->in.Account) {
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.Account, CH_UTF16)));
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 0));
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.Account, CH_UTF16)));
+ NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->in.Account, ndr_charset_length(r->in.Account, CH_UTF16), sizeof(uint16_t), CH_UTF16));
+ }
+ NDR_CHECK(ndr_push_unique_ptr(ndr, r->in.password));
+ if (r->in.password) {
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.password, CH_UTF16)));
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 0));
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.password, CH_UTF16)));
+ NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->in.password, ndr_charset_length(r->in.password, CH_UTF16), sizeof(uint16_t), CH_UTF16));
+ }
+ NDR_CHECK(ndr_push_wkssvc_renameflags(ndr, NDR_SCALARS, r->in.RenameOptions));
}
if (flags & NDR_OUT) {
NDR_CHECK(ndr_push_WERROR(ndr, NDR_SCALARS, r->out.result));
@@ -3393,9 +8077,90 @@ static enum ndr_err_code ndr_push_WKSSVC_NETRRENAMEMACHINEINDOMAIN(struct ndr_pu
return NDR_ERR_SUCCESS;
}
-static enum ndr_err_code ndr_pull_WKSSVC_NETRRENAMEMACHINEINDOMAIN(struct ndr_pull *ndr, int flags, struct WKSSVC_NETRRENAMEMACHINEINDOMAIN *r)
+static enum ndr_err_code ndr_pull_wkssvc_NetrRenameMachineInDomain(struct ndr_pull *ndr, int flags, struct wkssvc_NetrRenameMachineInDomain *r)
{
+ uint32_t _ptr_server_name;
+ uint32_t _ptr_NewMachineName;
+ uint32_t _ptr_Account;
+ uint32_t _ptr_password;
+ TALLOC_CTX *_mem_save_server_name_0;
+ TALLOC_CTX *_mem_save_NewMachineName_0;
+ TALLOC_CTX *_mem_save_Account_0;
+ TALLOC_CTX *_mem_save_password_0;
if (flags & NDR_IN) {
+ NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_server_name));
+ if (_ptr_server_name) {
+ NDR_PULL_ALLOC(ndr, r->in.server_name);
+ } else {
+ r->in.server_name = NULL;
+ }
+ if (r->in.server_name) {
+ _mem_save_server_name_0 = NDR_PULL_GET_MEM_CTX(ndr);
+ NDR_PULL_SET_MEM_CTX(ndr, r->in.server_name, 0);
+ NDR_CHECK(ndr_pull_array_size(ndr, &r->in.server_name));
+ NDR_CHECK(ndr_pull_array_length(ndr, &r->in.server_name));
+ if (ndr_get_array_length(ndr, &r->in.server_name) > ndr_get_array_size(ndr, &r->in.server_name)) {
+ return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", ndr_get_array_size(ndr, &r->in.server_name), ndr_get_array_length(ndr, &r->in.server_name));
+ }
+ NDR_CHECK(ndr_check_string_terminator(ndr, ndr_get_array_length(ndr, &r->in.server_name), sizeof(uint16_t)));
+ NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->in.server_name, ndr_get_array_length(ndr, &r->in.server_name), sizeof(uint16_t), CH_UTF16));
+ NDR_PULL_SET_MEM_CTX(ndr, _mem_save_server_name_0, 0);
+ }
+ NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_NewMachineName));
+ if (_ptr_NewMachineName) {
+ NDR_PULL_ALLOC(ndr, r->in.NewMachineName);
+ } else {
+ r->in.NewMachineName = NULL;
+ }
+ if (r->in.NewMachineName) {
+ _mem_save_NewMachineName_0 = NDR_PULL_GET_MEM_CTX(ndr);
+ NDR_PULL_SET_MEM_CTX(ndr, r->in.NewMachineName, 0);
+ NDR_CHECK(ndr_pull_array_size(ndr, &r->in.NewMachineName));
+ NDR_CHECK(ndr_pull_array_length(ndr, &r->in.NewMachineName));
+ if (ndr_get_array_length(ndr, &r->in.NewMachineName) > ndr_get_array_size(ndr, &r->in.NewMachineName)) {
+ return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", ndr_get_array_size(ndr, &r->in.NewMachineName), ndr_get_array_length(ndr, &r->in.NewMachineName));
+ }
+ NDR_CHECK(ndr_check_string_terminator(ndr, ndr_get_array_length(ndr, &r->in.NewMachineName), sizeof(uint16_t)));
+ NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->in.NewMachineName, ndr_get_array_length(ndr, &r->in.NewMachineName), sizeof(uint16_t), CH_UTF16));
+ NDR_PULL_SET_MEM_CTX(ndr, _mem_save_NewMachineName_0, 0);
+ }
+ NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_Account));
+ if (_ptr_Account) {
+ NDR_PULL_ALLOC(ndr, r->in.Account);
+ } else {
+ r->in.Account = NULL;
+ }
+ if (r->in.Account) {
+ _mem_save_Account_0 = NDR_PULL_GET_MEM_CTX(ndr);
+ NDR_PULL_SET_MEM_CTX(ndr, r->in.Account, 0);
+ NDR_CHECK(ndr_pull_array_size(ndr, &r->in.Account));
+ NDR_CHECK(ndr_pull_array_length(ndr, &r->in.Account));
+ if (ndr_get_array_length(ndr, &r->in.Account) > ndr_get_array_size(ndr, &r->in.Account)) {
+ return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", ndr_get_array_size(ndr, &r->in.Account), ndr_get_array_length(ndr, &r->in.Account));
+ }
+ NDR_CHECK(ndr_check_string_terminator(ndr, ndr_get_array_length(ndr, &r->in.Account), sizeof(uint16_t)));
+ NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->in.Account, ndr_get_array_length(ndr, &r->in.Account), sizeof(uint16_t), CH_UTF16));
+ NDR_PULL_SET_MEM_CTX(ndr, _mem_save_Account_0, 0);
+ }
+ NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_password));
+ if (_ptr_password) {
+ NDR_PULL_ALLOC(ndr, r->in.password);
+ } else {
+ r->in.password = NULL;
+ }
+ if (r->in.password) {
+ _mem_save_password_0 = NDR_PULL_GET_MEM_CTX(ndr);
+ NDR_PULL_SET_MEM_CTX(ndr, r->in.password, 0);
+ NDR_CHECK(ndr_pull_array_size(ndr, &r->in.password));
+ NDR_CHECK(ndr_pull_array_length(ndr, &r->in.password));
+ if (ndr_get_array_length(ndr, &r->in.password) > ndr_get_array_size(ndr, &r->in.password)) {
+ return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", ndr_get_array_size(ndr, &r->in.password), ndr_get_array_length(ndr, &r->in.password));
+ }
+ NDR_CHECK(ndr_check_string_terminator(ndr, ndr_get_array_length(ndr, &r->in.password), sizeof(uint16_t)));
+ NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->in.password, ndr_get_array_length(ndr, &r->in.password), sizeof(uint16_t), CH_UTF16));
+ NDR_PULL_SET_MEM_CTX(ndr, _mem_save_password_0, 0);
+ }
+ NDR_CHECK(ndr_pull_wkssvc_renameflags(ndr, NDR_SCALARS, &r->in.RenameOptions));
}
if (flags & NDR_OUT) {
NDR_CHECK(ndr_pull_WERROR(ndr, NDR_SCALARS, &r->out.result));
@@ -3403,20 +8168,45 @@ static enum ndr_err_code ndr_pull_WKSSVC_NETRRENAMEMACHINEINDOMAIN(struct ndr_pu
return NDR_ERR_SUCCESS;
}
-_PUBLIC_ void ndr_print_WKSSVC_NETRRENAMEMACHINEINDOMAIN(struct ndr_print *ndr, const char *name, int flags, const struct WKSSVC_NETRRENAMEMACHINEINDOMAIN *r)
+_PUBLIC_ void ndr_print_wkssvc_NetrRenameMachineInDomain(struct ndr_print *ndr, const char *name, int flags, const struct wkssvc_NetrRenameMachineInDomain *r)
{
- ndr_print_struct(ndr, name, "WKSSVC_NETRRENAMEMACHINEINDOMAIN");
+ ndr_print_struct(ndr, name, "wkssvc_NetrRenameMachineInDomain");
ndr->depth++;
if (flags & NDR_SET_VALUES) {
ndr->flags |= LIBNDR_PRINT_SET_VALUES;
}
if (flags & NDR_IN) {
- ndr_print_struct(ndr, "in", "WKSSVC_NETRRENAMEMACHINEINDOMAIN");
+ ndr_print_struct(ndr, "in", "wkssvc_NetrRenameMachineInDomain");
ndr->depth++;
+ ndr_print_ptr(ndr, "server_name", r->in.server_name);
+ ndr->depth++;
+ if (r->in.server_name) {
+ ndr_print_string(ndr, "server_name", r->in.server_name);
+ }
+ ndr->depth--;
+ ndr_print_ptr(ndr, "NewMachineName", r->in.NewMachineName);
+ ndr->depth++;
+ if (r->in.NewMachineName) {
+ ndr_print_string(ndr, "NewMachineName", r->in.NewMachineName);
+ }
+ ndr->depth--;
+ ndr_print_ptr(ndr, "Account", r->in.Account);
+ ndr->depth++;
+ if (r->in.Account) {
+ ndr_print_string(ndr, "Account", r->in.Account);
+ }
+ ndr->depth--;
+ ndr_print_ptr(ndr, "password", r->in.password);
+ ndr->depth++;
+ if (r->in.password) {
+ ndr_print_string(ndr, "password", r->in.password);
+ }
+ ndr->depth--;
+ ndr_print_wkssvc_renameflags(ndr, "RenameOptions", r->in.RenameOptions);
ndr->depth--;
}
if (flags & NDR_OUT) {
- ndr_print_struct(ndr, "out", "WKSSVC_NETRRENAMEMACHINEINDOMAIN");
+ ndr_print_struct(ndr, "out", "wkssvc_NetrRenameMachineInDomain");
ndr->depth++;
ndr_print_WERROR(ndr, "result", r->out.result);
ndr->depth--;
@@ -3424,9 +8214,38 @@ _PUBLIC_ void ndr_print_WKSSVC_NETRRENAMEMACHINEINDOMAIN(struct ndr_print *ndr,
ndr->depth--;
}
-static enum ndr_err_code ndr_push_WKSSVC_NETRVALIDATENAME(struct ndr_push *ndr, int flags, const struct WKSSVC_NETRVALIDATENAME *r)
+static enum ndr_err_code ndr_push_wkssvc_NetrValidateName(struct ndr_push *ndr, int flags, const struct wkssvc_NetrValidateName *r)
{
if (flags & NDR_IN) {
+ NDR_CHECK(ndr_push_unique_ptr(ndr, r->in.server_name));
+ if (r->in.server_name) {
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.server_name, CH_UTF16)));
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 0));
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.server_name, CH_UTF16)));
+ NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->in.server_name, ndr_charset_length(r->in.server_name, CH_UTF16), sizeof(uint16_t), CH_UTF16));
+ }
+ if (r->in.name == NULL) {
+ return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
+ }
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.name, CH_UTF16)));
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 0));
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.name, CH_UTF16)));
+ NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->in.name, ndr_charset_length(r->in.name, CH_UTF16), sizeof(uint16_t), CH_UTF16));
+ NDR_CHECK(ndr_push_unique_ptr(ndr, r->in.Account));
+ if (r->in.Account) {
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.Account, CH_UTF16)));
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 0));
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.Account, CH_UTF16)));
+ NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->in.Account, ndr_charset_length(r->in.Account, CH_UTF16), sizeof(uint16_t), CH_UTF16));
+ }
+ NDR_CHECK(ndr_push_unique_ptr(ndr, r->in.Password));
+ if (r->in.Password) {
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.Password, CH_UTF16)));
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 0));
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.Password, CH_UTF16)));
+ NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->in.Password, ndr_charset_length(r->in.Password, CH_UTF16), sizeof(uint16_t), CH_UTF16));
+ }
+ NDR_CHECK(ndr_push_wkssvc_NetValidateNameType(ndr, NDR_SCALARS, r->in.name_type));
}
if (flags & NDR_OUT) {
NDR_CHECK(ndr_push_WERROR(ndr, NDR_SCALARS, r->out.result));
@@ -3434,9 +8253,77 @@ static enum ndr_err_code ndr_push_WKSSVC_NETRVALIDATENAME(struct ndr_push *ndr,
return NDR_ERR_SUCCESS;
}
-static enum ndr_err_code ndr_pull_WKSSVC_NETRVALIDATENAME(struct ndr_pull *ndr, int flags, struct WKSSVC_NETRVALIDATENAME *r)
+static enum ndr_err_code ndr_pull_wkssvc_NetrValidateName(struct ndr_pull *ndr, int flags, struct wkssvc_NetrValidateName *r)
{
+ uint32_t _ptr_server_name;
+ uint32_t _ptr_Account;
+ uint32_t _ptr_Password;
+ TALLOC_CTX *_mem_save_server_name_0;
+ TALLOC_CTX *_mem_save_Account_0;
+ TALLOC_CTX *_mem_save_Password_0;
if (flags & NDR_IN) {
+ NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_server_name));
+ if (_ptr_server_name) {
+ NDR_PULL_ALLOC(ndr, r->in.server_name);
+ } else {
+ r->in.server_name = NULL;
+ }
+ if (r->in.server_name) {
+ _mem_save_server_name_0 = NDR_PULL_GET_MEM_CTX(ndr);
+ NDR_PULL_SET_MEM_CTX(ndr, r->in.server_name, 0);
+ NDR_CHECK(ndr_pull_array_size(ndr, &r->in.server_name));
+ NDR_CHECK(ndr_pull_array_length(ndr, &r->in.server_name));
+ if (ndr_get_array_length(ndr, &r->in.server_name) > ndr_get_array_size(ndr, &r->in.server_name)) {
+ return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", ndr_get_array_size(ndr, &r->in.server_name), ndr_get_array_length(ndr, &r->in.server_name));
+ }
+ NDR_CHECK(ndr_check_string_terminator(ndr, ndr_get_array_length(ndr, &r->in.server_name), sizeof(uint16_t)));
+ NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->in.server_name, ndr_get_array_length(ndr, &r->in.server_name), sizeof(uint16_t), CH_UTF16));
+ NDR_PULL_SET_MEM_CTX(ndr, _mem_save_server_name_0, 0);
+ }
+ NDR_CHECK(ndr_pull_array_size(ndr, &r->in.name));
+ NDR_CHECK(ndr_pull_array_length(ndr, &r->in.name));
+ if (ndr_get_array_length(ndr, &r->in.name) > ndr_get_array_size(ndr, &r->in.name)) {
+ return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", ndr_get_array_size(ndr, &r->in.name), ndr_get_array_length(ndr, &r->in.name));
+ }
+ NDR_CHECK(ndr_check_string_terminator(ndr, ndr_get_array_length(ndr, &r->in.name), sizeof(uint16_t)));
+ NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->in.name, ndr_get_array_length(ndr, &r->in.name), sizeof(uint16_t), CH_UTF16));
+ NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_Account));
+ if (_ptr_Account) {
+ NDR_PULL_ALLOC(ndr, r->in.Account);
+ } else {
+ r->in.Account = NULL;
+ }
+ if (r->in.Account) {
+ _mem_save_Account_0 = NDR_PULL_GET_MEM_CTX(ndr);
+ NDR_PULL_SET_MEM_CTX(ndr, r->in.Account, 0);
+ NDR_CHECK(ndr_pull_array_size(ndr, &r->in.Account));
+ NDR_CHECK(ndr_pull_array_length(ndr, &r->in.Account));
+ if (ndr_get_array_length(ndr, &r->in.Account) > ndr_get_array_size(ndr, &r->in.Account)) {
+ return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", ndr_get_array_size(ndr, &r->in.Account), ndr_get_array_length(ndr, &r->in.Account));
+ }
+ NDR_CHECK(ndr_check_string_terminator(ndr, ndr_get_array_length(ndr, &r->in.Account), sizeof(uint16_t)));
+ NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->in.Account, ndr_get_array_length(ndr, &r->in.Account), sizeof(uint16_t), CH_UTF16));
+ NDR_PULL_SET_MEM_CTX(ndr, _mem_save_Account_0, 0);
+ }
+ NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_Password));
+ if (_ptr_Password) {
+ NDR_PULL_ALLOC(ndr, r->in.Password);
+ } else {
+ r->in.Password = NULL;
+ }
+ if (r->in.Password) {
+ _mem_save_Password_0 = NDR_PULL_GET_MEM_CTX(ndr);
+ NDR_PULL_SET_MEM_CTX(ndr, r->in.Password, 0);
+ NDR_CHECK(ndr_pull_array_size(ndr, &r->in.Password));
+ NDR_CHECK(ndr_pull_array_length(ndr, &r->in.Password));
+ if (ndr_get_array_length(ndr, &r->in.Password) > ndr_get_array_size(ndr, &r->in.Password)) {
+ return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", ndr_get_array_size(ndr, &r->in.Password), ndr_get_array_length(ndr, &r->in.Password));
+ }
+ NDR_CHECK(ndr_check_string_terminator(ndr, ndr_get_array_length(ndr, &r->in.Password), sizeof(uint16_t)));
+ NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->in.Password, ndr_get_array_length(ndr, &r->in.Password), sizeof(uint16_t), CH_UTF16));
+ NDR_PULL_SET_MEM_CTX(ndr, _mem_save_Password_0, 0);
+ }
+ NDR_CHECK(ndr_pull_wkssvc_NetValidateNameType(ndr, NDR_SCALARS, &r->in.name_type));
}
if (flags & NDR_OUT) {
NDR_CHECK(ndr_pull_WERROR(ndr, NDR_SCALARS, &r->out.result));
@@ -3444,20 +8331,43 @@ static enum ndr_err_code ndr_pull_WKSSVC_NETRVALIDATENAME(struct ndr_pull *ndr,
return NDR_ERR_SUCCESS;
}
-_PUBLIC_ void ndr_print_WKSSVC_NETRVALIDATENAME(struct ndr_print *ndr, const char *name, int flags, const struct WKSSVC_NETRVALIDATENAME *r)
+_PUBLIC_ void ndr_print_wkssvc_NetrValidateName(struct ndr_print *ndr, const char *name, int flags, const struct wkssvc_NetrValidateName *r)
{
- ndr_print_struct(ndr, name, "WKSSVC_NETRVALIDATENAME");
+ ndr_print_struct(ndr, name, "wkssvc_NetrValidateName");
ndr->depth++;
if (flags & NDR_SET_VALUES) {
ndr->flags |= LIBNDR_PRINT_SET_VALUES;
}
if (flags & NDR_IN) {
- ndr_print_struct(ndr, "in", "WKSSVC_NETRVALIDATENAME");
+ ndr_print_struct(ndr, "in", "wkssvc_NetrValidateName");
+ ndr->depth++;
+ ndr_print_ptr(ndr, "server_name", r->in.server_name);
+ ndr->depth++;
+ if (r->in.server_name) {
+ ndr_print_string(ndr, "server_name", r->in.server_name);
+ }
+ ndr->depth--;
+ ndr_print_ptr(ndr, "name", r->in.name);
+ ndr->depth++;
+ ndr_print_string(ndr, "name", r->in.name);
+ ndr->depth--;
+ ndr_print_ptr(ndr, "Account", r->in.Account);
ndr->depth++;
+ if (r->in.Account) {
+ ndr_print_string(ndr, "Account", r->in.Account);
+ }
+ ndr->depth--;
+ ndr_print_ptr(ndr, "Password", r->in.Password);
+ ndr->depth++;
+ if (r->in.Password) {
+ ndr_print_string(ndr, "Password", r->in.Password);
+ }
+ ndr->depth--;
+ ndr_print_wkssvc_NetValidateNameType(ndr, "name_type", r->in.name_type);
ndr->depth--;
}
if (flags & NDR_OUT) {
- ndr_print_struct(ndr, "out", "WKSSVC_NETRVALIDATENAME");
+ ndr_print_struct(ndr, "out", "wkssvc_NetrValidateName");
ndr->depth++;
ndr_print_WERROR(ndr, "result", r->out.result);
ndr->depth--;
@@ -3465,82 +8375,409 @@ _PUBLIC_ void ndr_print_WKSSVC_NETRVALIDATENAME(struct ndr_print *ndr, const cha
ndr->depth--;
}
-static enum ndr_err_code ndr_push_WKSSVC_NETRGETJOININFORMATION(struct ndr_push *ndr, int flags, const struct WKSSVC_NETRGETJOININFORMATION *r)
+static enum ndr_err_code ndr_push_wkssvc_NetrGetJoinInformation(struct ndr_push *ndr, int flags, const struct wkssvc_NetrGetJoinInformation *r)
{
if (flags & NDR_IN) {
+ NDR_CHECK(ndr_push_unique_ptr(ndr, r->in.server_name));
+ if (r->in.server_name) {
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.server_name, CH_UTF16)));
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 0));
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.server_name, CH_UTF16)));
+ NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->in.server_name, ndr_charset_length(r->in.server_name, CH_UTF16), sizeof(uint16_t), CH_UTF16));
+ }
+ if (r->in.name_buffer == NULL) {
+ return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
+ }
+ if (*r->in.name_buffer == NULL) {
+ return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
+ }
+ NDR_CHECK(ndr_push_ref_ptr(ndr));
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(*r->in.name_buffer, CH_UTF16)));
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 0));
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(*r->in.name_buffer, CH_UTF16)));
+ NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, *r->in.name_buffer, ndr_charset_length(*r->in.name_buffer, CH_UTF16), sizeof(uint16_t), CH_UTF16));
}
if (flags & NDR_OUT) {
+ if (r->out.name_buffer == NULL) {
+ return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
+ }
+ if (*r->out.name_buffer == NULL) {
+ return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
+ }
+ NDR_CHECK(ndr_push_ref_ptr(ndr));
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(*r->out.name_buffer, CH_UTF16)));
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 0));
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(*r->out.name_buffer, CH_UTF16)));
+ NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, *r->out.name_buffer, ndr_charset_length(*r->out.name_buffer, CH_UTF16), sizeof(uint16_t), CH_UTF16));
+ if (r->out.name_type == NULL) {
+ return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
+ }
+ NDR_CHECK(ndr_push_wkssvc_NetJoinStatus(ndr, NDR_SCALARS, *r->out.name_type));
NDR_CHECK(ndr_push_WERROR(ndr, NDR_SCALARS, r->out.result));
}
return NDR_ERR_SUCCESS;
}
-static enum ndr_err_code ndr_pull_WKSSVC_NETRGETJOININFORMATION(struct ndr_pull *ndr, int flags, struct WKSSVC_NETRGETJOININFORMATION *r)
+static enum ndr_err_code ndr_pull_wkssvc_NetrGetJoinInformation(struct ndr_pull *ndr, int flags, struct wkssvc_NetrGetJoinInformation *r)
{
+ uint32_t _ptr_server_name;
+ uint32_t _ptr_name_buffer;
+ TALLOC_CTX *_mem_save_server_name_0;
+ TALLOC_CTX *_mem_save_name_buffer_0;
+ TALLOC_CTX *_mem_save_name_type_0;
if (flags & NDR_IN) {
+ ZERO_STRUCT(r->out);
+
+ NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_server_name));
+ if (_ptr_server_name) {
+ NDR_PULL_ALLOC(ndr, r->in.server_name);
+ } else {
+ r->in.server_name = NULL;
+ }
+ if (r->in.server_name) {
+ _mem_save_server_name_0 = NDR_PULL_GET_MEM_CTX(ndr);
+ NDR_PULL_SET_MEM_CTX(ndr, r->in.server_name, 0);
+ NDR_CHECK(ndr_pull_array_size(ndr, &r->in.server_name));
+ NDR_CHECK(ndr_pull_array_length(ndr, &r->in.server_name));
+ if (ndr_get_array_length(ndr, &r->in.server_name) > ndr_get_array_size(ndr, &r->in.server_name)) {
+ return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", ndr_get_array_size(ndr, &r->in.server_name), ndr_get_array_length(ndr, &r->in.server_name));
+ }
+ NDR_CHECK(ndr_check_string_terminator(ndr, ndr_get_array_length(ndr, &r->in.server_name), sizeof(uint16_t)));
+ NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->in.server_name, ndr_get_array_length(ndr, &r->in.server_name), sizeof(uint16_t), CH_UTF16));
+ NDR_PULL_SET_MEM_CTX(ndr, _mem_save_server_name_0, 0);
+ }
+ if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
+ NDR_PULL_ALLOC(ndr, r->in.name_buffer);
+ }
+ _mem_save_name_buffer_0 = NDR_PULL_GET_MEM_CTX(ndr);
+ NDR_PULL_SET_MEM_CTX(ndr, r->in.name_buffer, LIBNDR_FLAG_REF_ALLOC);
+ NDR_CHECK(ndr_pull_ref_ptr(ndr, &_ptr_name_buffer));
+ NDR_CHECK(ndr_pull_array_size(ndr, r->in.name_buffer));
+ NDR_CHECK(ndr_pull_array_length(ndr, r->in.name_buffer));
+ if (ndr_get_array_length(ndr, r->in.name_buffer) > ndr_get_array_size(ndr, r->in.name_buffer)) {
+ return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", ndr_get_array_size(ndr, r->in.name_buffer), ndr_get_array_length(ndr, r->in.name_buffer));
+ }
+ NDR_CHECK(ndr_check_string_terminator(ndr, ndr_get_array_length(ndr, r->in.name_buffer), sizeof(uint16_t)));
+ NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, r->in.name_buffer, ndr_get_array_length(ndr, r->in.name_buffer), sizeof(uint16_t), CH_UTF16));
+ NDR_PULL_SET_MEM_CTX(ndr, _mem_save_name_buffer_0, LIBNDR_FLAG_REF_ALLOC);
+ NDR_PULL_ALLOC(ndr, r->out.name_buffer);
+ *r->out.name_buffer = *r->in.name_buffer;
+ NDR_PULL_ALLOC(ndr, r->out.name_type);
+ ZERO_STRUCTP(r->out.name_type);
}
if (flags & NDR_OUT) {
+ if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
+ NDR_PULL_ALLOC(ndr, r->out.name_buffer);
+ }
+ _mem_save_name_buffer_0 = NDR_PULL_GET_MEM_CTX(ndr);
+ NDR_PULL_SET_MEM_CTX(ndr, r->out.name_buffer, LIBNDR_FLAG_REF_ALLOC);
+ NDR_CHECK(ndr_pull_ref_ptr(ndr, &_ptr_name_buffer));
+ NDR_CHECK(ndr_pull_array_size(ndr, r->out.name_buffer));
+ NDR_CHECK(ndr_pull_array_length(ndr, r->out.name_buffer));
+ if (ndr_get_array_length(ndr, r->out.name_buffer) > ndr_get_array_size(ndr, r->out.name_buffer)) {
+ return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", ndr_get_array_size(ndr, r->out.name_buffer), ndr_get_array_length(ndr, r->out.name_buffer));
+ }
+ NDR_CHECK(ndr_check_string_terminator(ndr, ndr_get_array_length(ndr, r->out.name_buffer), sizeof(uint16_t)));
+ NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, r->out.name_buffer, ndr_get_array_length(ndr, r->out.name_buffer), sizeof(uint16_t), CH_UTF16));
+ NDR_PULL_SET_MEM_CTX(ndr, _mem_save_name_buffer_0, LIBNDR_FLAG_REF_ALLOC);
+ if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
+ NDR_PULL_ALLOC(ndr, r->out.name_type);
+ }
+ _mem_save_name_type_0 = NDR_PULL_GET_MEM_CTX(ndr);
+ NDR_PULL_SET_MEM_CTX(ndr, r->out.name_type, LIBNDR_FLAG_REF_ALLOC);
+ NDR_CHECK(ndr_pull_wkssvc_NetJoinStatus(ndr, NDR_SCALARS, r->out.name_type));
+ NDR_PULL_SET_MEM_CTX(ndr, _mem_save_name_type_0, LIBNDR_FLAG_REF_ALLOC);
NDR_CHECK(ndr_pull_WERROR(ndr, NDR_SCALARS, &r->out.result));
}
return NDR_ERR_SUCCESS;
}
-_PUBLIC_ void ndr_print_WKSSVC_NETRGETJOININFORMATION(struct ndr_print *ndr, const char *name, int flags, const struct WKSSVC_NETRGETJOININFORMATION *r)
+_PUBLIC_ void ndr_print_wkssvc_NetrGetJoinInformation(struct ndr_print *ndr, const char *name, int flags, const struct wkssvc_NetrGetJoinInformation *r)
{
- ndr_print_struct(ndr, name, "WKSSVC_NETRGETJOININFORMATION");
+ ndr_print_struct(ndr, name, "wkssvc_NetrGetJoinInformation");
ndr->depth++;
if (flags & NDR_SET_VALUES) {
ndr->flags |= LIBNDR_PRINT_SET_VALUES;
}
if (flags & NDR_IN) {
- ndr_print_struct(ndr, "in", "WKSSVC_NETRGETJOININFORMATION");
+ ndr_print_struct(ndr, "in", "wkssvc_NetrGetJoinInformation");
+ ndr->depth++;
+ ndr_print_ptr(ndr, "server_name", r->in.server_name);
+ ndr->depth++;
+ if (r->in.server_name) {
+ ndr_print_string(ndr, "server_name", r->in.server_name);
+ }
+ ndr->depth--;
+ ndr_print_ptr(ndr, "name_buffer", r->in.name_buffer);
ndr->depth++;
+ ndr_print_ptr(ndr, "name_buffer", *r->in.name_buffer);
+ ndr->depth++;
+ ndr_print_string(ndr, "name_buffer", *r->in.name_buffer);
+ ndr->depth--;
+ ndr->depth--;
ndr->depth--;
}
if (flags & NDR_OUT) {
- ndr_print_struct(ndr, "out", "WKSSVC_NETRGETJOININFORMATION");
+ ndr_print_struct(ndr, "out", "wkssvc_NetrGetJoinInformation");
+ ndr->depth++;
+ ndr_print_ptr(ndr, "name_buffer", r->out.name_buffer);
ndr->depth++;
+ ndr_print_ptr(ndr, "name_buffer", *r->out.name_buffer);
+ ndr->depth++;
+ ndr_print_string(ndr, "name_buffer", *r->out.name_buffer);
+ ndr->depth--;
+ ndr->depth--;
+ ndr_print_ptr(ndr, "name_type", r->out.name_type);
+ ndr->depth++;
+ ndr_print_wkssvc_NetJoinStatus(ndr, "name_type", *r->out.name_type);
+ ndr->depth--;
ndr_print_WERROR(ndr, "result", r->out.result);
ndr->depth--;
}
ndr->depth--;
}
-static enum ndr_err_code ndr_push_WKSSVC_NETRGETJOINABLEOUS(struct ndr_push *ndr, int flags, const struct WKSSVC_NETRGETJOINABLEOUS *r)
+static enum ndr_err_code ndr_push_wkssvc_NetrGetJoinableOus(struct ndr_push *ndr, int flags, const struct wkssvc_NetrGetJoinableOus *r)
{
+ uint32_t cntr_ous_1;
if (flags & NDR_IN) {
+ NDR_CHECK(ndr_push_unique_ptr(ndr, r->in.server_name));
+ if (r->in.server_name) {
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.server_name, CH_UTF16)));
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 0));
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.server_name, CH_UTF16)));
+ NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->in.server_name, ndr_charset_length(r->in.server_name, CH_UTF16), sizeof(uint16_t), CH_UTF16));
+ }
+ if (r->in.domain_name == NULL) {
+ return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
+ }
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.domain_name, CH_UTF16)));
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 0));
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.domain_name, CH_UTF16)));
+ NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->in.domain_name, ndr_charset_length(r->in.domain_name, CH_UTF16), sizeof(uint16_t), CH_UTF16));
+ NDR_CHECK(ndr_push_unique_ptr(ndr, r->in.Account));
+ if (r->in.Account) {
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.Account, CH_UTF16)));
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 0));
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.Account, CH_UTF16)));
+ NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->in.Account, ndr_charset_length(r->in.Account, CH_UTF16), sizeof(uint16_t), CH_UTF16));
+ }
+ NDR_CHECK(ndr_push_unique_ptr(ndr, r->in.unknown));
+ if (r->in.unknown) {
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.unknown, CH_UTF16)));
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 0));
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.unknown, CH_UTF16)));
+ NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->in.unknown, ndr_charset_length(r->in.unknown, CH_UTF16), sizeof(uint16_t), CH_UTF16));
+ }
+ if (r->in.num_ous == NULL) {
+ return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
+ }
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, *r->in.num_ous));
}
if (flags & NDR_OUT) {
+ if (r->out.num_ous == NULL) {
+ return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
+ }
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, *r->out.num_ous));
+ if (r->out.ous == NULL) {
+ return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
+ }
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, *r->out.num_ous));
+ for (cntr_ous_1 = 0; cntr_ous_1 < *r->out.num_ous; cntr_ous_1++) {
+ if (r->out.ous[cntr_ous_1] == NULL) {
+ return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
+ }
+ NDR_CHECK(ndr_push_ref_ptr(ndr));
+ }
NDR_CHECK(ndr_push_WERROR(ndr, NDR_SCALARS, r->out.result));
}
return NDR_ERR_SUCCESS;
}
-static enum ndr_err_code ndr_pull_WKSSVC_NETRGETJOINABLEOUS(struct ndr_pull *ndr, int flags, struct WKSSVC_NETRGETJOINABLEOUS *r)
+static enum ndr_err_code ndr_pull_wkssvc_NetrGetJoinableOus(struct ndr_pull *ndr, int flags, struct wkssvc_NetrGetJoinableOus *r)
{
+ uint32_t _ptr_server_name;
+ uint32_t _ptr_Account;
+ uint32_t _ptr_unknown;
+ uint32_t _ptr_ous;
+ uint32_t cntr_ous_1;
+ TALLOC_CTX *_mem_save_server_name_0;
+ TALLOC_CTX *_mem_save_Account_0;
+ TALLOC_CTX *_mem_save_unknown_0;
+ TALLOC_CTX *_mem_save_num_ous_0;
+ TALLOC_CTX *_mem_save_ous_1;
+ TALLOC_CTX *_mem_save_ous_2;
if (flags & NDR_IN) {
+ ZERO_STRUCT(r->out);
+
+ NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_server_name));
+ if (_ptr_server_name) {
+ NDR_PULL_ALLOC(ndr, r->in.server_name);
+ } else {
+ r->in.server_name = NULL;
+ }
+ if (r->in.server_name) {
+ _mem_save_server_name_0 = NDR_PULL_GET_MEM_CTX(ndr);
+ NDR_PULL_SET_MEM_CTX(ndr, r->in.server_name, 0);
+ NDR_CHECK(ndr_pull_array_size(ndr, &r->in.server_name));
+ NDR_CHECK(ndr_pull_array_length(ndr, &r->in.server_name));
+ if (ndr_get_array_length(ndr, &r->in.server_name) > ndr_get_array_size(ndr, &r->in.server_name)) {
+ return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", ndr_get_array_size(ndr, &r->in.server_name), ndr_get_array_length(ndr, &r->in.server_name));
+ }
+ NDR_CHECK(ndr_check_string_terminator(ndr, ndr_get_array_length(ndr, &r->in.server_name), sizeof(uint16_t)));
+ NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->in.server_name, ndr_get_array_length(ndr, &r->in.server_name), sizeof(uint16_t), CH_UTF16));
+ NDR_PULL_SET_MEM_CTX(ndr, _mem_save_server_name_0, 0);
+ }
+ NDR_CHECK(ndr_pull_array_size(ndr, &r->in.domain_name));
+ NDR_CHECK(ndr_pull_array_length(ndr, &r->in.domain_name));
+ if (ndr_get_array_length(ndr, &r->in.domain_name) > ndr_get_array_size(ndr, &r->in.domain_name)) {
+ return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", ndr_get_array_size(ndr, &r->in.domain_name), ndr_get_array_length(ndr, &r->in.domain_name));
+ }
+ NDR_CHECK(ndr_check_string_terminator(ndr, ndr_get_array_length(ndr, &r->in.domain_name), sizeof(uint16_t)));
+ NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->in.domain_name, ndr_get_array_length(ndr, &r->in.domain_name), sizeof(uint16_t), CH_UTF16));
+ NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_Account));
+ if (_ptr_Account) {
+ NDR_PULL_ALLOC(ndr, r->in.Account);
+ } else {
+ r->in.Account = NULL;
+ }
+ if (r->in.Account) {
+ _mem_save_Account_0 = NDR_PULL_GET_MEM_CTX(ndr);
+ NDR_PULL_SET_MEM_CTX(ndr, r->in.Account, 0);
+ NDR_CHECK(ndr_pull_array_size(ndr, &r->in.Account));
+ NDR_CHECK(ndr_pull_array_length(ndr, &r->in.Account));
+ if (ndr_get_array_length(ndr, &r->in.Account) > ndr_get_array_size(ndr, &r->in.Account)) {
+ return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", ndr_get_array_size(ndr, &r->in.Account), ndr_get_array_length(ndr, &r->in.Account));
+ }
+ NDR_CHECK(ndr_check_string_terminator(ndr, ndr_get_array_length(ndr, &r->in.Account), sizeof(uint16_t)));
+ NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->in.Account, ndr_get_array_length(ndr, &r->in.Account), sizeof(uint16_t), CH_UTF16));
+ NDR_PULL_SET_MEM_CTX(ndr, _mem_save_Account_0, 0);
+ }
+ NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_unknown));
+ if (_ptr_unknown) {
+ NDR_PULL_ALLOC(ndr, r->in.unknown);
+ } else {
+ r->in.unknown = NULL;
+ }
+ if (r->in.unknown) {
+ _mem_save_unknown_0 = NDR_PULL_GET_MEM_CTX(ndr);
+ NDR_PULL_SET_MEM_CTX(ndr, r->in.unknown, 0);
+ NDR_CHECK(ndr_pull_array_size(ndr, &r->in.unknown));
+ NDR_CHECK(ndr_pull_array_length(ndr, &r->in.unknown));
+ if (ndr_get_array_length(ndr, &r->in.unknown) > ndr_get_array_size(ndr, &r->in.unknown)) {
+ return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", ndr_get_array_size(ndr, &r->in.unknown), ndr_get_array_length(ndr, &r->in.unknown));
+ }
+ NDR_CHECK(ndr_check_string_terminator(ndr, ndr_get_array_length(ndr, &r->in.unknown), sizeof(uint16_t)));
+ NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->in.unknown, ndr_get_array_length(ndr, &r->in.unknown), sizeof(uint16_t), CH_UTF16));
+ NDR_PULL_SET_MEM_CTX(ndr, _mem_save_unknown_0, 0);
+ }
+ if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
+ NDR_PULL_ALLOC(ndr, r->in.num_ous);
+ }
+ _mem_save_num_ous_0 = NDR_PULL_GET_MEM_CTX(ndr);
+ NDR_PULL_SET_MEM_CTX(ndr, r->in.num_ous, LIBNDR_FLAG_REF_ALLOC);
+ NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, r->in.num_ous));
+ NDR_PULL_SET_MEM_CTX(ndr, _mem_save_num_ous_0, LIBNDR_FLAG_REF_ALLOC);
+ NDR_PULL_ALLOC(ndr, r->out.num_ous);
+ *r->out.num_ous = *r->in.num_ous;
+ NDR_PULL_ALLOC_N(ndr, r->out.ous, *r->in.num_ous);
+ memset(r->out.ous, 0, *r->in.num_ous * sizeof(*r->out.ous));
}
if (flags & NDR_OUT) {
+ if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
+ NDR_PULL_ALLOC(ndr, r->out.num_ous);
+ }
+ _mem_save_num_ous_0 = NDR_PULL_GET_MEM_CTX(ndr);
+ NDR_PULL_SET_MEM_CTX(ndr, r->out.num_ous, LIBNDR_FLAG_REF_ALLOC);
+ NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, r->out.num_ous));
+ NDR_PULL_SET_MEM_CTX(ndr, _mem_save_num_ous_0, LIBNDR_FLAG_REF_ALLOC);
+ NDR_CHECK(ndr_pull_array_size(ndr, &r->out.ous));
+ if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
+ NDR_PULL_ALLOC_N(ndr, r->out.ous, ndr_get_array_size(ndr, &r->out.ous));
+ }
+ _mem_save_ous_1 = NDR_PULL_GET_MEM_CTX(ndr);
+ NDR_PULL_SET_MEM_CTX(ndr, r->out.ous, 0);
+ for (cntr_ous_1 = 0; cntr_ous_1 < *r->out.num_ous; cntr_ous_1++) {
+ NDR_CHECK(ndr_pull_ref_ptr(ndr, &_ptr_ous));
+ if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
+ NDR_PULL_ALLOC(ndr, r->out.ous[cntr_ous_1]);
+ }
+ }
+ NDR_PULL_SET_MEM_CTX(ndr, _mem_save_ous_1, 0);
NDR_CHECK(ndr_pull_WERROR(ndr, NDR_SCALARS, &r->out.result));
+ if (r->out.ous) {
+ NDR_CHECK(ndr_check_array_size(ndr, (void*)&r->out.ous, *r->out.num_ous));
+ }
}
return NDR_ERR_SUCCESS;
}
-_PUBLIC_ void ndr_print_WKSSVC_NETRGETJOINABLEOUS(struct ndr_print *ndr, const char *name, int flags, const struct WKSSVC_NETRGETJOINABLEOUS *r)
+_PUBLIC_ void ndr_print_wkssvc_NetrGetJoinableOus(struct ndr_print *ndr, const char *name, int flags, const struct wkssvc_NetrGetJoinableOus *r)
{
- ndr_print_struct(ndr, name, "WKSSVC_NETRGETJOINABLEOUS");
+ uint32_t cntr_ous_1;
+ ndr_print_struct(ndr, name, "wkssvc_NetrGetJoinableOus");
ndr->depth++;
if (flags & NDR_SET_VALUES) {
ndr->flags |= LIBNDR_PRINT_SET_VALUES;
}
if (flags & NDR_IN) {
- ndr_print_struct(ndr, "in", "WKSSVC_NETRGETJOINABLEOUS");
+ ndr_print_struct(ndr, "in", "wkssvc_NetrGetJoinableOus");
+ ndr->depth++;
+ ndr_print_ptr(ndr, "server_name", r->in.server_name);
+ ndr->depth++;
+ if (r->in.server_name) {
+ ndr_print_string(ndr, "server_name", r->in.server_name);
+ }
+ ndr->depth--;
+ ndr_print_ptr(ndr, "domain_name", r->in.domain_name);
+ ndr->depth++;
+ ndr_print_string(ndr, "domain_name", r->in.domain_name);
+ ndr->depth--;
+ ndr_print_ptr(ndr, "Account", r->in.Account);
+ ndr->depth++;
+ if (r->in.Account) {
+ ndr_print_string(ndr, "Account", r->in.Account);
+ }
+ ndr->depth--;
+ ndr_print_ptr(ndr, "unknown", r->in.unknown);
+ ndr->depth++;
+ if (r->in.unknown) {
+ ndr_print_string(ndr, "unknown", r->in.unknown);
+ }
+ ndr->depth--;
+ ndr_print_ptr(ndr, "num_ous", r->in.num_ous);
ndr->depth++;
+ ndr_print_uint32(ndr, "num_ous", *r->in.num_ous);
+ ndr->depth--;
ndr->depth--;
}
if (flags & NDR_OUT) {
- ndr_print_struct(ndr, "out", "WKSSVC_NETRGETJOINABLEOUS");
+ ndr_print_struct(ndr, "out", "wkssvc_NetrGetJoinableOus");
+ ndr->depth++;
+ ndr_print_ptr(ndr, "num_ous", r->out.num_ous);
ndr->depth++;
+ ndr_print_uint32(ndr, "num_ous", *r->out.num_ous);
+ ndr->depth--;
+ ndr_print_ptr(ndr, "ous", r->out.ous);
+ ndr->depth++;
+ ndr->print(ndr, "%s: ARRAY(%d)", "ous", *r->out.num_ous);
+ ndr->depth++;
+ for (cntr_ous_1=0;cntr_ous_1<*r->out.num_ous;cntr_ous_1++) {
+ char *idx_1=NULL;
+ asprintf(&idx_1, "[%d]", cntr_ous_1);
+ if (idx_1) {
+ ndr_print_ptr(ndr, "ous", r->out.ous[cntr_ous_1]);
+ ndr->depth++;
+ ndr_print_ptr(ndr, "ous", *r->out.ous[cntr_ous_1]);
+ ndr->depth++;
+ ndr_print_string(ndr, "ous", *r->out.ous[cntr_ous_1]);
+ ndr->depth--;
+ ndr->depth--;
+ free(idx_1);
+ }
+ }
+ ndr->depth--;
+ ndr->depth--;
ndr_print_WERROR(ndr, "result", r->out.result);
ndr->depth--;
}
@@ -3564,12 +8801,12 @@ static enum ndr_err_code ndr_push_wkssvc_NetrJoinDomain2(struct ndr_push *ndr, i
NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 0));
NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.domain_name, CH_UTF16)));
NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->in.domain_name, ndr_charset_length(r->in.domain_name, CH_UTF16), sizeof(uint16_t), CH_UTF16));
- NDR_CHECK(ndr_push_unique_ptr(ndr, r->in.account_name));
- if (r->in.account_name) {
- NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.account_name, CH_UTF16)));
+ NDR_CHECK(ndr_push_unique_ptr(ndr, r->in.account_ou));
+ if (r->in.account_ou) {
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.account_ou, CH_UTF16)));
NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 0));
- NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.account_name, CH_UTF16)));
- NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->in.account_name, ndr_charset_length(r->in.account_name, CH_UTF16), sizeof(uint16_t), CH_UTF16));
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.account_ou, CH_UTF16)));
+ NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->in.account_ou, ndr_charset_length(r->in.account_ou, CH_UTF16), sizeof(uint16_t), CH_UTF16));
}
NDR_CHECK(ndr_push_unique_ptr(ndr, r->in.admin_account));
if (r->in.admin_account) {
@@ -3593,11 +8830,11 @@ static enum ndr_err_code ndr_push_wkssvc_NetrJoinDomain2(struct ndr_push *ndr, i
static enum ndr_err_code ndr_pull_wkssvc_NetrJoinDomain2(struct ndr_pull *ndr, int flags, struct wkssvc_NetrJoinDomain2 *r)
{
uint32_t _ptr_server_name;
- uint32_t _ptr_account_name;
+ uint32_t _ptr_account_ou;
uint32_t _ptr_admin_account;
uint32_t _ptr_encrypted_password;
TALLOC_CTX *_mem_save_server_name_0;
- TALLOC_CTX *_mem_save_account_name_0;
+ TALLOC_CTX *_mem_save_account_ou_0;
TALLOC_CTX *_mem_save_admin_account_0;
TALLOC_CTX *_mem_save_encrypted_password_0;
if (flags & NDR_IN) {
@@ -3626,23 +8863,23 @@ static enum ndr_err_code ndr_pull_wkssvc_NetrJoinDomain2(struct ndr_pull *ndr, i
}
NDR_CHECK(ndr_check_string_terminator(ndr, ndr_get_array_length(ndr, &r->in.domain_name), sizeof(uint16_t)));
NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->in.domain_name, ndr_get_array_length(ndr, &r->in.domain_name), sizeof(uint16_t), CH_UTF16));
- NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_account_name));
- if (_ptr_account_name) {
- NDR_PULL_ALLOC(ndr, r->in.account_name);
+ NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_account_ou));
+ if (_ptr_account_ou) {
+ NDR_PULL_ALLOC(ndr, r->in.account_ou);
} else {
- r->in.account_name = NULL;
- }
- if (r->in.account_name) {
- _mem_save_account_name_0 = NDR_PULL_GET_MEM_CTX(ndr);
- NDR_PULL_SET_MEM_CTX(ndr, r->in.account_name, 0);
- NDR_CHECK(ndr_pull_array_size(ndr, &r->in.account_name));
- NDR_CHECK(ndr_pull_array_length(ndr, &r->in.account_name));
- if (ndr_get_array_length(ndr, &r->in.account_name) > ndr_get_array_size(ndr, &r->in.account_name)) {
- return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", ndr_get_array_size(ndr, &r->in.account_name), ndr_get_array_length(ndr, &r->in.account_name));
+ r->in.account_ou = NULL;
+ }
+ if (r->in.account_ou) {
+ _mem_save_account_ou_0 = NDR_PULL_GET_MEM_CTX(ndr);
+ NDR_PULL_SET_MEM_CTX(ndr, r->in.account_ou, 0);
+ NDR_CHECK(ndr_pull_array_size(ndr, &r->in.account_ou));
+ NDR_CHECK(ndr_pull_array_length(ndr, &r->in.account_ou));
+ if (ndr_get_array_length(ndr, &r->in.account_ou) > ndr_get_array_size(ndr, &r->in.account_ou)) {
+ return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", ndr_get_array_size(ndr, &r->in.account_ou), ndr_get_array_length(ndr, &r->in.account_ou));
}
- NDR_CHECK(ndr_check_string_terminator(ndr, ndr_get_array_length(ndr, &r->in.account_name), sizeof(uint16_t)));
- NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->in.account_name, ndr_get_array_length(ndr, &r->in.account_name), sizeof(uint16_t), CH_UTF16));
- NDR_PULL_SET_MEM_CTX(ndr, _mem_save_account_name_0, 0);
+ NDR_CHECK(ndr_check_string_terminator(ndr, ndr_get_array_length(ndr, &r->in.account_ou), sizeof(uint16_t)));
+ NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->in.account_ou, ndr_get_array_length(ndr, &r->in.account_ou), sizeof(uint16_t), CH_UTF16));
+ NDR_PULL_SET_MEM_CTX(ndr, _mem_save_account_ou_0, 0);
}
NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_admin_account));
if (_ptr_admin_account) {
@@ -3702,10 +8939,10 @@ _PUBLIC_ void ndr_print_wkssvc_NetrJoinDomain2(struct ndr_print *ndr, const char
ndr->depth++;
ndr_print_string(ndr, "domain_name", r->in.domain_name);
ndr->depth--;
- ndr_print_ptr(ndr, "account_name", r->in.account_name);
+ ndr_print_ptr(ndr, "account_ou", r->in.account_ou);
ndr->depth++;
- if (r->in.account_name) {
- ndr_print_string(ndr, "account_name", r->in.account_name);
+ if (r->in.account_ou) {
+ ndr_print_string(ndr, "account_ou", r->in.account_ou);
}
ndr->depth--;
ndr_print_ptr(ndr, "admin_account", r->in.admin_account);
@@ -4033,9 +9270,35 @@ _PUBLIC_ void ndr_print_wkssvc_NetrRenameMachineInDomain2(struct ndr_print *ndr,
ndr->depth--;
}
-static enum ndr_err_code ndr_push_WKSSVC_NETRVALIDATENAME2(struct ndr_push *ndr, int flags, const struct WKSSVC_NETRVALIDATENAME2 *r)
+static enum ndr_err_code ndr_push_wkssvc_NetrValidateName2(struct ndr_push *ndr, int flags, const struct wkssvc_NetrValidateName2 *r)
{
if (flags & NDR_IN) {
+ NDR_CHECK(ndr_push_unique_ptr(ndr, r->in.server_name));
+ if (r->in.server_name) {
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.server_name, CH_UTF16)));
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 0));
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.server_name, CH_UTF16)));
+ NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->in.server_name, ndr_charset_length(r->in.server_name, CH_UTF16), sizeof(uint16_t), CH_UTF16));
+ }
+ if (r->in.name == NULL) {
+ return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
+ }
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.name, CH_UTF16)));
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 0));
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.name, CH_UTF16)));
+ NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->in.name, ndr_charset_length(r->in.name, CH_UTF16), sizeof(uint16_t), CH_UTF16));
+ NDR_CHECK(ndr_push_unique_ptr(ndr, r->in.Account));
+ if (r->in.Account) {
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.Account, CH_UTF16)));
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 0));
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.Account, CH_UTF16)));
+ NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->in.Account, ndr_charset_length(r->in.Account, CH_UTF16), sizeof(uint16_t), CH_UTF16));
+ }
+ NDR_CHECK(ndr_push_unique_ptr(ndr, r->in.EncryptedPassword));
+ if (r->in.EncryptedPassword) {
+ NDR_CHECK(ndr_push_wkssvc_PasswordBuffer(ndr, NDR_SCALARS, r->in.EncryptedPassword));
+ }
+ NDR_CHECK(ndr_push_wkssvc_NetValidateNameType(ndr, NDR_SCALARS, r->in.name_type));
}
if (flags & NDR_OUT) {
NDR_CHECK(ndr_push_WERROR(ndr, NDR_SCALARS, r->out.result));
@@ -4043,9 +9306,71 @@ static enum ndr_err_code ndr_push_WKSSVC_NETRVALIDATENAME2(struct ndr_push *ndr,
return NDR_ERR_SUCCESS;
}
-static enum ndr_err_code ndr_pull_WKSSVC_NETRVALIDATENAME2(struct ndr_pull *ndr, int flags, struct WKSSVC_NETRVALIDATENAME2 *r)
+static enum ndr_err_code ndr_pull_wkssvc_NetrValidateName2(struct ndr_pull *ndr, int flags, struct wkssvc_NetrValidateName2 *r)
{
+ uint32_t _ptr_server_name;
+ uint32_t _ptr_Account;
+ uint32_t _ptr_EncryptedPassword;
+ TALLOC_CTX *_mem_save_server_name_0;
+ TALLOC_CTX *_mem_save_Account_0;
+ TALLOC_CTX *_mem_save_EncryptedPassword_0;
if (flags & NDR_IN) {
+ NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_server_name));
+ if (_ptr_server_name) {
+ NDR_PULL_ALLOC(ndr, r->in.server_name);
+ } else {
+ r->in.server_name = NULL;
+ }
+ if (r->in.server_name) {
+ _mem_save_server_name_0 = NDR_PULL_GET_MEM_CTX(ndr);
+ NDR_PULL_SET_MEM_CTX(ndr, r->in.server_name, 0);
+ NDR_CHECK(ndr_pull_array_size(ndr, &r->in.server_name));
+ NDR_CHECK(ndr_pull_array_length(ndr, &r->in.server_name));
+ if (ndr_get_array_length(ndr, &r->in.server_name) > ndr_get_array_size(ndr, &r->in.server_name)) {
+ return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", ndr_get_array_size(ndr, &r->in.server_name), ndr_get_array_length(ndr, &r->in.server_name));
+ }
+ NDR_CHECK(ndr_check_string_terminator(ndr, ndr_get_array_length(ndr, &r->in.server_name), sizeof(uint16_t)));
+ NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->in.server_name, ndr_get_array_length(ndr, &r->in.server_name), sizeof(uint16_t), CH_UTF16));
+ NDR_PULL_SET_MEM_CTX(ndr, _mem_save_server_name_0, 0);
+ }
+ NDR_CHECK(ndr_pull_array_size(ndr, &r->in.name));
+ NDR_CHECK(ndr_pull_array_length(ndr, &r->in.name));
+ if (ndr_get_array_length(ndr, &r->in.name) > ndr_get_array_size(ndr, &r->in.name)) {
+ return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", ndr_get_array_size(ndr, &r->in.name), ndr_get_array_length(ndr, &r->in.name));
+ }
+ NDR_CHECK(ndr_check_string_terminator(ndr, ndr_get_array_length(ndr, &r->in.name), sizeof(uint16_t)));
+ NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->in.name, ndr_get_array_length(ndr, &r->in.name), sizeof(uint16_t), CH_UTF16));
+ NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_Account));
+ if (_ptr_Account) {
+ NDR_PULL_ALLOC(ndr, r->in.Account);
+ } else {
+ r->in.Account = NULL;
+ }
+ if (r->in.Account) {
+ _mem_save_Account_0 = NDR_PULL_GET_MEM_CTX(ndr);
+ NDR_PULL_SET_MEM_CTX(ndr, r->in.Account, 0);
+ NDR_CHECK(ndr_pull_array_size(ndr, &r->in.Account));
+ NDR_CHECK(ndr_pull_array_length(ndr, &r->in.Account));
+ if (ndr_get_array_length(ndr, &r->in.Account) > ndr_get_array_size(ndr, &r->in.Account)) {
+ return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", ndr_get_array_size(ndr, &r->in.Account), ndr_get_array_length(ndr, &r->in.Account));
+ }
+ NDR_CHECK(ndr_check_string_terminator(ndr, ndr_get_array_length(ndr, &r->in.Account), sizeof(uint16_t)));
+ NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->in.Account, ndr_get_array_length(ndr, &r->in.Account), sizeof(uint16_t), CH_UTF16));
+ NDR_PULL_SET_MEM_CTX(ndr, _mem_save_Account_0, 0);
+ }
+ NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_EncryptedPassword));
+ if (_ptr_EncryptedPassword) {
+ NDR_PULL_ALLOC(ndr, r->in.EncryptedPassword);
+ } else {
+ r->in.EncryptedPassword = NULL;
+ }
+ if (r->in.EncryptedPassword) {
+ _mem_save_EncryptedPassword_0 = NDR_PULL_GET_MEM_CTX(ndr);
+ NDR_PULL_SET_MEM_CTX(ndr, r->in.EncryptedPassword, 0);
+ NDR_CHECK(ndr_pull_wkssvc_PasswordBuffer(ndr, NDR_SCALARS, r->in.EncryptedPassword));
+ NDR_PULL_SET_MEM_CTX(ndr, _mem_save_EncryptedPassword_0, 0);
+ }
+ NDR_CHECK(ndr_pull_wkssvc_NetValidateNameType(ndr, NDR_SCALARS, &r->in.name_type));
}
if (flags & NDR_OUT) {
NDR_CHECK(ndr_pull_WERROR(ndr, NDR_SCALARS, &r->out.result));
@@ -4053,20 +9378,43 @@ static enum ndr_err_code ndr_pull_WKSSVC_NETRVALIDATENAME2(struct ndr_pull *ndr,
return NDR_ERR_SUCCESS;
}
-_PUBLIC_ void ndr_print_WKSSVC_NETRVALIDATENAME2(struct ndr_print *ndr, const char *name, int flags, const struct WKSSVC_NETRVALIDATENAME2 *r)
+_PUBLIC_ void ndr_print_wkssvc_NetrValidateName2(struct ndr_print *ndr, const char *name, int flags, const struct wkssvc_NetrValidateName2 *r)
{
- ndr_print_struct(ndr, name, "WKSSVC_NETRVALIDATENAME2");
+ ndr_print_struct(ndr, name, "wkssvc_NetrValidateName2");
ndr->depth++;
if (flags & NDR_SET_VALUES) {
ndr->flags |= LIBNDR_PRINT_SET_VALUES;
}
if (flags & NDR_IN) {
- ndr_print_struct(ndr, "in", "WKSSVC_NETRVALIDATENAME2");
+ ndr_print_struct(ndr, "in", "wkssvc_NetrValidateName2");
+ ndr->depth++;
+ ndr_print_ptr(ndr, "server_name", r->in.server_name);
ndr->depth++;
+ if (r->in.server_name) {
+ ndr_print_string(ndr, "server_name", r->in.server_name);
+ }
+ ndr->depth--;
+ ndr_print_ptr(ndr, "name", r->in.name);
+ ndr->depth++;
+ ndr_print_string(ndr, "name", r->in.name);
+ ndr->depth--;
+ ndr_print_ptr(ndr, "Account", r->in.Account);
+ ndr->depth++;
+ if (r->in.Account) {
+ ndr_print_string(ndr, "Account", r->in.Account);
+ }
+ ndr->depth--;
+ ndr_print_ptr(ndr, "EncryptedPassword", r->in.EncryptedPassword);
+ ndr->depth++;
+ if (r->in.EncryptedPassword) {
+ ndr_print_wkssvc_PasswordBuffer(ndr, "EncryptedPassword", r->in.EncryptedPassword);
+ }
+ ndr->depth--;
+ ndr_print_wkssvc_NetValidateNameType(ndr, "name_type", r->in.name_type);
ndr->depth--;
}
if (flags & NDR_OUT) {
- ndr_print_struct(ndr, "out", "WKSSVC_NETRVALIDATENAME2");
+ ndr_print_struct(ndr, "out", "wkssvc_NetrValidateName2");
ndr->depth++;
ndr_print_WERROR(ndr, "result", r->out.result);
ndr->depth--;
@@ -4074,41 +9422,238 @@ _PUBLIC_ void ndr_print_WKSSVC_NETRVALIDATENAME2(struct ndr_print *ndr, const ch
ndr->depth--;
}
-static enum ndr_err_code ndr_push_WKSSVC_NETRGETJOINABLEOUS2(struct ndr_push *ndr, int flags, const struct WKSSVC_NETRGETJOINABLEOUS2 *r)
+static enum ndr_err_code ndr_push_wkssvc_NetrGetJoinableOus2(struct ndr_push *ndr, int flags, const struct wkssvc_NetrGetJoinableOus2 *r)
{
+ uint32_t cntr_ous_1;
if (flags & NDR_IN) {
+ NDR_CHECK(ndr_push_unique_ptr(ndr, r->in.server_name));
+ if (r->in.server_name) {
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.server_name, CH_UTF16)));
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 0));
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.server_name, CH_UTF16)));
+ NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->in.server_name, ndr_charset_length(r->in.server_name, CH_UTF16), sizeof(uint16_t), CH_UTF16));
+ }
+ if (r->in.domain_name == NULL) {
+ return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
+ }
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.domain_name, CH_UTF16)));
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 0));
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.domain_name, CH_UTF16)));
+ NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->in.domain_name, ndr_charset_length(r->in.domain_name, CH_UTF16), sizeof(uint16_t), CH_UTF16));
+ NDR_CHECK(ndr_push_unique_ptr(ndr, r->in.Account));
+ if (r->in.Account) {
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.Account, CH_UTF16)));
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 0));
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.Account, CH_UTF16)));
+ NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->in.Account, ndr_charset_length(r->in.Account, CH_UTF16), sizeof(uint16_t), CH_UTF16));
+ }
+ NDR_CHECK(ndr_push_unique_ptr(ndr, r->in.EncryptedPassword));
+ if (r->in.EncryptedPassword) {
+ NDR_CHECK(ndr_push_wkssvc_PasswordBuffer(ndr, NDR_SCALARS, r->in.EncryptedPassword));
+ }
+ if (r->in.num_ous == NULL) {
+ return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
+ }
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, *r->in.num_ous));
}
if (flags & NDR_OUT) {
+ if (r->out.num_ous == NULL) {
+ return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
+ }
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, *r->out.num_ous));
+ if (r->out.ous == NULL) {
+ return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
+ }
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, *r->out.num_ous));
+ for (cntr_ous_1 = 0; cntr_ous_1 < *r->out.num_ous; cntr_ous_1++) {
+ if (r->out.ous[cntr_ous_1] == NULL) {
+ return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
+ }
+ NDR_CHECK(ndr_push_ref_ptr(ndr));
+ }
NDR_CHECK(ndr_push_WERROR(ndr, NDR_SCALARS, r->out.result));
}
return NDR_ERR_SUCCESS;
}
-static enum ndr_err_code ndr_pull_WKSSVC_NETRGETJOINABLEOUS2(struct ndr_pull *ndr, int flags, struct WKSSVC_NETRGETJOINABLEOUS2 *r)
+static enum ndr_err_code ndr_pull_wkssvc_NetrGetJoinableOus2(struct ndr_pull *ndr, int flags, struct wkssvc_NetrGetJoinableOus2 *r)
{
+ uint32_t _ptr_server_name;
+ uint32_t _ptr_Account;
+ uint32_t _ptr_EncryptedPassword;
+ uint32_t _ptr_ous;
+ uint32_t cntr_ous_1;
+ TALLOC_CTX *_mem_save_server_name_0;
+ TALLOC_CTX *_mem_save_Account_0;
+ TALLOC_CTX *_mem_save_EncryptedPassword_0;
+ TALLOC_CTX *_mem_save_num_ous_0;
+ TALLOC_CTX *_mem_save_ous_1;
+ TALLOC_CTX *_mem_save_ous_2;
if (flags & NDR_IN) {
+ ZERO_STRUCT(r->out);
+
+ NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_server_name));
+ if (_ptr_server_name) {
+ NDR_PULL_ALLOC(ndr, r->in.server_name);
+ } else {
+ r->in.server_name = NULL;
+ }
+ if (r->in.server_name) {
+ _mem_save_server_name_0 = NDR_PULL_GET_MEM_CTX(ndr);
+ NDR_PULL_SET_MEM_CTX(ndr, r->in.server_name, 0);
+ NDR_CHECK(ndr_pull_array_size(ndr, &r->in.server_name));
+ NDR_CHECK(ndr_pull_array_length(ndr, &r->in.server_name));
+ if (ndr_get_array_length(ndr, &r->in.server_name) > ndr_get_array_size(ndr, &r->in.server_name)) {
+ return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", ndr_get_array_size(ndr, &r->in.server_name), ndr_get_array_length(ndr, &r->in.server_name));
+ }
+ NDR_CHECK(ndr_check_string_terminator(ndr, ndr_get_array_length(ndr, &r->in.server_name), sizeof(uint16_t)));
+ NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->in.server_name, ndr_get_array_length(ndr, &r->in.server_name), sizeof(uint16_t), CH_UTF16));
+ NDR_PULL_SET_MEM_CTX(ndr, _mem_save_server_name_0, 0);
+ }
+ NDR_CHECK(ndr_pull_array_size(ndr, &r->in.domain_name));
+ NDR_CHECK(ndr_pull_array_length(ndr, &r->in.domain_name));
+ if (ndr_get_array_length(ndr, &r->in.domain_name) > ndr_get_array_size(ndr, &r->in.domain_name)) {
+ return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", ndr_get_array_size(ndr, &r->in.domain_name), ndr_get_array_length(ndr, &r->in.domain_name));
+ }
+ NDR_CHECK(ndr_check_string_terminator(ndr, ndr_get_array_length(ndr, &r->in.domain_name), sizeof(uint16_t)));
+ NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->in.domain_name, ndr_get_array_length(ndr, &r->in.domain_name), sizeof(uint16_t), CH_UTF16));
+ NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_Account));
+ if (_ptr_Account) {
+ NDR_PULL_ALLOC(ndr, r->in.Account);
+ } else {
+ r->in.Account = NULL;
+ }
+ if (r->in.Account) {
+ _mem_save_Account_0 = NDR_PULL_GET_MEM_CTX(ndr);
+ NDR_PULL_SET_MEM_CTX(ndr, r->in.Account, 0);
+ NDR_CHECK(ndr_pull_array_size(ndr, &r->in.Account));
+ NDR_CHECK(ndr_pull_array_length(ndr, &r->in.Account));
+ if (ndr_get_array_length(ndr, &r->in.Account) > ndr_get_array_size(ndr, &r->in.Account)) {
+ return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", ndr_get_array_size(ndr, &r->in.Account), ndr_get_array_length(ndr, &r->in.Account));
+ }
+ NDR_CHECK(ndr_check_string_terminator(ndr, ndr_get_array_length(ndr, &r->in.Account), sizeof(uint16_t)));
+ NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->in.Account, ndr_get_array_length(ndr, &r->in.Account), sizeof(uint16_t), CH_UTF16));
+ NDR_PULL_SET_MEM_CTX(ndr, _mem_save_Account_0, 0);
+ }
+ NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_EncryptedPassword));
+ if (_ptr_EncryptedPassword) {
+ NDR_PULL_ALLOC(ndr, r->in.EncryptedPassword);
+ } else {
+ r->in.EncryptedPassword = NULL;
+ }
+ if (r->in.EncryptedPassword) {
+ _mem_save_EncryptedPassword_0 = NDR_PULL_GET_MEM_CTX(ndr);
+ NDR_PULL_SET_MEM_CTX(ndr, r->in.EncryptedPassword, 0);
+ NDR_CHECK(ndr_pull_wkssvc_PasswordBuffer(ndr, NDR_SCALARS, r->in.EncryptedPassword));
+ NDR_PULL_SET_MEM_CTX(ndr, _mem_save_EncryptedPassword_0, 0);
+ }
+ if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
+ NDR_PULL_ALLOC(ndr, r->in.num_ous);
+ }
+ _mem_save_num_ous_0 = NDR_PULL_GET_MEM_CTX(ndr);
+ NDR_PULL_SET_MEM_CTX(ndr, r->in.num_ous, LIBNDR_FLAG_REF_ALLOC);
+ NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, r->in.num_ous));
+ NDR_PULL_SET_MEM_CTX(ndr, _mem_save_num_ous_0, LIBNDR_FLAG_REF_ALLOC);
+ NDR_PULL_ALLOC(ndr, r->out.num_ous);
+ *r->out.num_ous = *r->in.num_ous;
+ NDR_PULL_ALLOC_N(ndr, r->out.ous, *r->in.num_ous);
+ memset(r->out.ous, 0, *r->in.num_ous * sizeof(*r->out.ous));
}
if (flags & NDR_OUT) {
+ if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
+ NDR_PULL_ALLOC(ndr, r->out.num_ous);
+ }
+ _mem_save_num_ous_0 = NDR_PULL_GET_MEM_CTX(ndr);
+ NDR_PULL_SET_MEM_CTX(ndr, r->out.num_ous, LIBNDR_FLAG_REF_ALLOC);
+ NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, r->out.num_ous));
+ NDR_PULL_SET_MEM_CTX(ndr, _mem_save_num_ous_0, LIBNDR_FLAG_REF_ALLOC);
+ NDR_CHECK(ndr_pull_array_size(ndr, &r->out.ous));
+ if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
+ NDR_PULL_ALLOC_N(ndr, r->out.ous, ndr_get_array_size(ndr, &r->out.ous));
+ }
+ _mem_save_ous_1 = NDR_PULL_GET_MEM_CTX(ndr);
+ NDR_PULL_SET_MEM_CTX(ndr, r->out.ous, 0);
+ for (cntr_ous_1 = 0; cntr_ous_1 < *r->out.num_ous; cntr_ous_1++) {
+ NDR_CHECK(ndr_pull_ref_ptr(ndr, &_ptr_ous));
+ if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
+ NDR_PULL_ALLOC(ndr, r->out.ous[cntr_ous_1]);
+ }
+ }
+ NDR_PULL_SET_MEM_CTX(ndr, _mem_save_ous_1, 0);
NDR_CHECK(ndr_pull_WERROR(ndr, NDR_SCALARS, &r->out.result));
+ if (r->out.ous) {
+ NDR_CHECK(ndr_check_array_size(ndr, (void*)&r->out.ous, *r->out.num_ous));
+ }
}
return NDR_ERR_SUCCESS;
}
-_PUBLIC_ void ndr_print_WKSSVC_NETRGETJOINABLEOUS2(struct ndr_print *ndr, const char *name, int flags, const struct WKSSVC_NETRGETJOINABLEOUS2 *r)
+_PUBLIC_ void ndr_print_wkssvc_NetrGetJoinableOus2(struct ndr_print *ndr, const char *name, int flags, const struct wkssvc_NetrGetJoinableOus2 *r)
{
- ndr_print_struct(ndr, name, "WKSSVC_NETRGETJOINABLEOUS2");
+ uint32_t cntr_ous_1;
+ ndr_print_struct(ndr, name, "wkssvc_NetrGetJoinableOus2");
ndr->depth++;
if (flags & NDR_SET_VALUES) {
ndr->flags |= LIBNDR_PRINT_SET_VALUES;
}
if (flags & NDR_IN) {
- ndr_print_struct(ndr, "in", "WKSSVC_NETRGETJOINABLEOUS2");
+ ndr_print_struct(ndr, "in", "wkssvc_NetrGetJoinableOus2");
+ ndr->depth++;
+ ndr_print_ptr(ndr, "server_name", r->in.server_name);
+ ndr->depth++;
+ if (r->in.server_name) {
+ ndr_print_string(ndr, "server_name", r->in.server_name);
+ }
+ ndr->depth--;
+ ndr_print_ptr(ndr, "domain_name", r->in.domain_name);
+ ndr->depth++;
+ ndr_print_string(ndr, "domain_name", r->in.domain_name);
+ ndr->depth--;
+ ndr_print_ptr(ndr, "Account", r->in.Account);
+ ndr->depth++;
+ if (r->in.Account) {
+ ndr_print_string(ndr, "Account", r->in.Account);
+ }
+ ndr->depth--;
+ ndr_print_ptr(ndr, "EncryptedPassword", r->in.EncryptedPassword);
+ ndr->depth++;
+ if (r->in.EncryptedPassword) {
+ ndr_print_wkssvc_PasswordBuffer(ndr, "EncryptedPassword", r->in.EncryptedPassword);
+ }
+ ndr->depth--;
+ ndr_print_ptr(ndr, "num_ous", r->in.num_ous);
ndr->depth++;
+ ndr_print_uint32(ndr, "num_ous", *r->in.num_ous);
+ ndr->depth--;
ndr->depth--;
}
if (flags & NDR_OUT) {
- ndr_print_struct(ndr, "out", "WKSSVC_NETRGETJOINABLEOUS2");
+ ndr_print_struct(ndr, "out", "wkssvc_NetrGetJoinableOus2");
+ ndr->depth++;
+ ndr_print_ptr(ndr, "num_ous", r->out.num_ous);
ndr->depth++;
+ ndr_print_uint32(ndr, "num_ous", *r->out.num_ous);
+ ndr->depth--;
+ ndr_print_ptr(ndr, "ous", r->out.ous);
+ ndr->depth++;
+ ndr->print(ndr, "%s: ARRAY(%d)", "ous", *r->out.num_ous);
+ ndr->depth++;
+ for (cntr_ous_1=0;cntr_ous_1<*r->out.num_ous;cntr_ous_1++) {
+ char *idx_1=NULL;
+ asprintf(&idx_1, "[%d]", cntr_ous_1);
+ if (idx_1) {
+ ndr_print_ptr(ndr, "ous", r->out.ous[cntr_ous_1]);
+ ndr->depth++;
+ ndr_print_ptr(ndr, "ous", *r->out.ous[cntr_ous_1]);
+ ndr->depth++;
+ ndr_print_string(ndr, "ous", *r->out.ous[cntr_ous_1]);
+ ndr->depth--;
+ ndr->depth--;
+ free(idx_1);
+ }
+ }
+ ndr->depth--;
+ ndr->depth--;
ndr_print_WERROR(ndr, "result", r->out.result);
ndr->depth--;
}
@@ -4449,9 +9994,35 @@ _PUBLIC_ void ndr_print_wkssvc_NetrRemoveAlternateComputerName(struct ndr_print
ndr->depth--;
}
-static enum ndr_err_code ndr_push_WKSSVC_NETRSETPRIMARYCOMPUTERNAME(struct ndr_push *ndr, int flags, const struct WKSSVC_NETRSETPRIMARYCOMPUTERNAME *r)
+static enum ndr_err_code ndr_push_wkssvc_NetrSetPrimaryComputername(struct ndr_push *ndr, int flags, const struct wkssvc_NetrSetPrimaryComputername *r)
{
if (flags & NDR_IN) {
+ NDR_CHECK(ndr_push_unique_ptr(ndr, r->in.server_name));
+ if (r->in.server_name) {
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.server_name, CH_UTF16)));
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 0));
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.server_name, CH_UTF16)));
+ NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->in.server_name, ndr_charset_length(r->in.server_name, CH_UTF16), sizeof(uint16_t), CH_UTF16));
+ }
+ NDR_CHECK(ndr_push_unique_ptr(ndr, r->in.primary_name));
+ if (r->in.primary_name) {
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.primary_name, CH_UTF16)));
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 0));
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.primary_name, CH_UTF16)));
+ NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->in.primary_name, ndr_charset_length(r->in.primary_name, CH_UTF16), sizeof(uint16_t), CH_UTF16));
+ }
+ NDR_CHECK(ndr_push_unique_ptr(ndr, r->in.Account));
+ if (r->in.Account) {
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.Account, CH_UTF16)));
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 0));
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.Account, CH_UTF16)));
+ NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->in.Account, ndr_charset_length(r->in.Account, CH_UTF16), sizeof(uint16_t), CH_UTF16));
+ }
+ NDR_CHECK(ndr_push_unique_ptr(ndr, r->in.EncryptedPassword));
+ if (r->in.EncryptedPassword) {
+ NDR_CHECK(ndr_push_wkssvc_PasswordBuffer(ndr, NDR_SCALARS, r->in.EncryptedPassword));
+ }
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->in.Reserved));
}
if (flags & NDR_OUT) {
NDR_CHECK(ndr_push_WERROR(ndr, NDR_SCALARS, r->out.result));
@@ -4459,9 +10030,84 @@ static enum ndr_err_code ndr_push_WKSSVC_NETRSETPRIMARYCOMPUTERNAME(struct ndr_p
return NDR_ERR_SUCCESS;
}
-static enum ndr_err_code ndr_pull_WKSSVC_NETRSETPRIMARYCOMPUTERNAME(struct ndr_pull *ndr, int flags, struct WKSSVC_NETRSETPRIMARYCOMPUTERNAME *r)
+static enum ndr_err_code ndr_pull_wkssvc_NetrSetPrimaryComputername(struct ndr_pull *ndr, int flags, struct wkssvc_NetrSetPrimaryComputername *r)
{
+ uint32_t _ptr_server_name;
+ uint32_t _ptr_primary_name;
+ uint32_t _ptr_Account;
+ uint32_t _ptr_EncryptedPassword;
+ TALLOC_CTX *_mem_save_server_name_0;
+ TALLOC_CTX *_mem_save_primary_name_0;
+ TALLOC_CTX *_mem_save_Account_0;
+ TALLOC_CTX *_mem_save_EncryptedPassword_0;
if (flags & NDR_IN) {
+ NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_server_name));
+ if (_ptr_server_name) {
+ NDR_PULL_ALLOC(ndr, r->in.server_name);
+ } else {
+ r->in.server_name = NULL;
+ }
+ if (r->in.server_name) {
+ _mem_save_server_name_0 = NDR_PULL_GET_MEM_CTX(ndr);
+ NDR_PULL_SET_MEM_CTX(ndr, r->in.server_name, 0);
+ NDR_CHECK(ndr_pull_array_size(ndr, &r->in.server_name));
+ NDR_CHECK(ndr_pull_array_length(ndr, &r->in.server_name));
+ if (ndr_get_array_length(ndr, &r->in.server_name) > ndr_get_array_size(ndr, &r->in.server_name)) {
+ return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", ndr_get_array_size(ndr, &r->in.server_name), ndr_get_array_length(ndr, &r->in.server_name));
+ }
+ NDR_CHECK(ndr_check_string_terminator(ndr, ndr_get_array_length(ndr, &r->in.server_name), sizeof(uint16_t)));
+ NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->in.server_name, ndr_get_array_length(ndr, &r->in.server_name), sizeof(uint16_t), CH_UTF16));
+ NDR_PULL_SET_MEM_CTX(ndr, _mem_save_server_name_0, 0);
+ }
+ NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_primary_name));
+ if (_ptr_primary_name) {
+ NDR_PULL_ALLOC(ndr, r->in.primary_name);
+ } else {
+ r->in.primary_name = NULL;
+ }
+ if (r->in.primary_name) {
+ _mem_save_primary_name_0 = NDR_PULL_GET_MEM_CTX(ndr);
+ NDR_PULL_SET_MEM_CTX(ndr, r->in.primary_name, 0);
+ NDR_CHECK(ndr_pull_array_size(ndr, &r->in.primary_name));
+ NDR_CHECK(ndr_pull_array_length(ndr, &r->in.primary_name));
+ if (ndr_get_array_length(ndr, &r->in.primary_name) > ndr_get_array_size(ndr, &r->in.primary_name)) {
+ return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", ndr_get_array_size(ndr, &r->in.primary_name), ndr_get_array_length(ndr, &r->in.primary_name));
+ }
+ NDR_CHECK(ndr_check_string_terminator(ndr, ndr_get_array_length(ndr, &r->in.primary_name), sizeof(uint16_t)));
+ NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->in.primary_name, ndr_get_array_length(ndr, &r->in.primary_name), sizeof(uint16_t), CH_UTF16));
+ NDR_PULL_SET_MEM_CTX(ndr, _mem_save_primary_name_0, 0);
+ }
+ NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_Account));
+ if (_ptr_Account) {
+ NDR_PULL_ALLOC(ndr, r->in.Account);
+ } else {
+ r->in.Account = NULL;
+ }
+ if (r->in.Account) {
+ _mem_save_Account_0 = NDR_PULL_GET_MEM_CTX(ndr);
+ NDR_PULL_SET_MEM_CTX(ndr, r->in.Account, 0);
+ NDR_CHECK(ndr_pull_array_size(ndr, &r->in.Account));
+ NDR_CHECK(ndr_pull_array_length(ndr, &r->in.Account));
+ if (ndr_get_array_length(ndr, &r->in.Account) > ndr_get_array_size(ndr, &r->in.Account)) {
+ return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", ndr_get_array_size(ndr, &r->in.Account), ndr_get_array_length(ndr, &r->in.Account));
+ }
+ NDR_CHECK(ndr_check_string_terminator(ndr, ndr_get_array_length(ndr, &r->in.Account), sizeof(uint16_t)));
+ NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->in.Account, ndr_get_array_length(ndr, &r->in.Account), sizeof(uint16_t), CH_UTF16));
+ NDR_PULL_SET_MEM_CTX(ndr, _mem_save_Account_0, 0);
+ }
+ NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_EncryptedPassword));
+ if (_ptr_EncryptedPassword) {
+ NDR_PULL_ALLOC(ndr, r->in.EncryptedPassword);
+ } else {
+ r->in.EncryptedPassword = NULL;
+ }
+ if (r->in.EncryptedPassword) {
+ _mem_save_EncryptedPassword_0 = NDR_PULL_GET_MEM_CTX(ndr);
+ NDR_PULL_SET_MEM_CTX(ndr, r->in.EncryptedPassword, 0);
+ NDR_CHECK(ndr_pull_wkssvc_PasswordBuffer(ndr, NDR_SCALARS, r->in.EncryptedPassword));
+ NDR_PULL_SET_MEM_CTX(ndr, _mem_save_EncryptedPassword_0, 0);
+ }
+ NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->in.Reserved));
}
if (flags & NDR_OUT) {
NDR_CHECK(ndr_pull_WERROR(ndr, NDR_SCALARS, &r->out.result));
@@ -4469,20 +10115,45 @@ static enum ndr_err_code ndr_pull_WKSSVC_NETRSETPRIMARYCOMPUTERNAME(struct ndr_p
return NDR_ERR_SUCCESS;
}
-_PUBLIC_ void ndr_print_WKSSVC_NETRSETPRIMARYCOMPUTERNAME(struct ndr_print *ndr, const char *name, int flags, const struct WKSSVC_NETRSETPRIMARYCOMPUTERNAME *r)
+_PUBLIC_ void ndr_print_wkssvc_NetrSetPrimaryComputername(struct ndr_print *ndr, const char *name, int flags, const struct wkssvc_NetrSetPrimaryComputername *r)
{
- ndr_print_struct(ndr, name, "WKSSVC_NETRSETPRIMARYCOMPUTERNAME");
+ ndr_print_struct(ndr, name, "wkssvc_NetrSetPrimaryComputername");
ndr->depth++;
if (flags & NDR_SET_VALUES) {
ndr->flags |= LIBNDR_PRINT_SET_VALUES;
}
if (flags & NDR_IN) {
- ndr_print_struct(ndr, "in", "WKSSVC_NETRSETPRIMARYCOMPUTERNAME");
+ ndr_print_struct(ndr, "in", "wkssvc_NetrSetPrimaryComputername");
+ ndr->depth++;
+ ndr_print_ptr(ndr, "server_name", r->in.server_name);
+ ndr->depth++;
+ if (r->in.server_name) {
+ ndr_print_string(ndr, "server_name", r->in.server_name);
+ }
+ ndr->depth--;
+ ndr_print_ptr(ndr, "primary_name", r->in.primary_name);
ndr->depth++;
+ if (r->in.primary_name) {
+ ndr_print_string(ndr, "primary_name", r->in.primary_name);
+ }
+ ndr->depth--;
+ ndr_print_ptr(ndr, "Account", r->in.Account);
+ ndr->depth++;
+ if (r->in.Account) {
+ ndr_print_string(ndr, "Account", r->in.Account);
+ }
+ ndr->depth--;
+ ndr_print_ptr(ndr, "EncryptedPassword", r->in.EncryptedPassword);
+ ndr->depth++;
+ if (r->in.EncryptedPassword) {
+ ndr_print_wkssvc_PasswordBuffer(ndr, "EncryptedPassword", r->in.EncryptedPassword);
+ }
+ ndr->depth--;
+ ndr_print_uint32(ndr, "Reserved", r->in.Reserved);
ndr->depth--;
}
if (flags & NDR_OUT) {
- ndr_print_struct(ndr, "out", "WKSSVC_NETRSETPRIMARYCOMPUTERNAME");
+ ndr_print_struct(ndr, "out", "wkssvc_NetrSetPrimaryComputername");
ndr->depth++;
ndr_print_WERROR(ndr, "result", r->out.result);
ndr->depth--;
@@ -4490,41 +10161,116 @@ _PUBLIC_ void ndr_print_WKSSVC_NETRSETPRIMARYCOMPUTERNAME(struct ndr_print *ndr,
ndr->depth--;
}
-static enum ndr_err_code ndr_push_WKSSVC_NETRENUMERATECOMPUTERNAMES(struct ndr_push *ndr, int flags, const struct WKSSVC_NETRENUMERATECOMPUTERNAMES *r)
+static enum ndr_err_code ndr_push_wkssvc_NetrEnumerateComputerNames(struct ndr_push *ndr, int flags, const struct wkssvc_NetrEnumerateComputerNames *r)
{
if (flags & NDR_IN) {
+ NDR_CHECK(ndr_push_unique_ptr(ndr, r->in.server_name));
+ if (r->in.server_name) {
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.server_name, CH_UTF16)));
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 0));
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.server_name, CH_UTF16)));
+ NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->in.server_name, ndr_charset_length(r->in.server_name, CH_UTF16), sizeof(uint16_t), CH_UTF16));
+ }
+ NDR_CHECK(ndr_push_wkssvc_ComputerNameType(ndr, NDR_SCALARS, r->in.name_type));
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->in.Reserved));
}
if (flags & NDR_OUT) {
+ if (r->out.ctr == NULL) {
+ return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
+ }
+ if (*r->out.ctr == NULL) {
+ return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
+ }
+ NDR_CHECK(ndr_push_ref_ptr(ndr));
+ NDR_CHECK(ndr_push_wkssvc_ComputerNamesCtr(ndr, NDR_SCALARS|NDR_BUFFERS, *r->out.ctr));
NDR_CHECK(ndr_push_WERROR(ndr, NDR_SCALARS, r->out.result));
}
return NDR_ERR_SUCCESS;
}
-static enum ndr_err_code ndr_pull_WKSSVC_NETRENUMERATECOMPUTERNAMES(struct ndr_pull *ndr, int flags, struct WKSSVC_NETRENUMERATECOMPUTERNAMES *r)
+static enum ndr_err_code ndr_pull_wkssvc_NetrEnumerateComputerNames(struct ndr_pull *ndr, int flags, struct wkssvc_NetrEnumerateComputerNames *r)
{
+ uint32_t _ptr_server_name;
+ uint32_t _ptr_ctr;
+ TALLOC_CTX *_mem_save_server_name_0;
+ TALLOC_CTX *_mem_save_ctr_0;
+ TALLOC_CTX *_mem_save_ctr_1;
if (flags & NDR_IN) {
+ ZERO_STRUCT(r->out);
+
+ NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_server_name));
+ if (_ptr_server_name) {
+ NDR_PULL_ALLOC(ndr, r->in.server_name);
+ } else {
+ r->in.server_name = NULL;
+ }
+ if (r->in.server_name) {
+ _mem_save_server_name_0 = NDR_PULL_GET_MEM_CTX(ndr);
+ NDR_PULL_SET_MEM_CTX(ndr, r->in.server_name, 0);
+ NDR_CHECK(ndr_pull_array_size(ndr, &r->in.server_name));
+ NDR_CHECK(ndr_pull_array_length(ndr, &r->in.server_name));
+ if (ndr_get_array_length(ndr, &r->in.server_name) > ndr_get_array_size(ndr, &r->in.server_name)) {
+ return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", ndr_get_array_size(ndr, &r->in.server_name), ndr_get_array_length(ndr, &r->in.server_name));
+ }
+ NDR_CHECK(ndr_check_string_terminator(ndr, ndr_get_array_length(ndr, &r->in.server_name), sizeof(uint16_t)));
+ NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->in.server_name, ndr_get_array_length(ndr, &r->in.server_name), sizeof(uint16_t), CH_UTF16));
+ NDR_PULL_SET_MEM_CTX(ndr, _mem_save_server_name_0, 0);
+ }
+ NDR_CHECK(ndr_pull_wkssvc_ComputerNameType(ndr, NDR_SCALARS, &r->in.name_type));
+ NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->in.Reserved));
+ NDR_PULL_ALLOC(ndr, r->out.ctr);
+ ZERO_STRUCTP(r->out.ctr);
}
if (flags & NDR_OUT) {
+ if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
+ NDR_PULL_ALLOC(ndr, r->out.ctr);
+ }
+ _mem_save_ctr_0 = NDR_PULL_GET_MEM_CTX(ndr);
+ NDR_PULL_SET_MEM_CTX(ndr, r->out.ctr, LIBNDR_FLAG_REF_ALLOC);
+ NDR_CHECK(ndr_pull_ref_ptr(ndr, &_ptr_ctr));
+ if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
+ NDR_PULL_ALLOC(ndr, *r->out.ctr);
+ }
+ _mem_save_ctr_1 = NDR_PULL_GET_MEM_CTX(ndr);
+ NDR_PULL_SET_MEM_CTX(ndr, *r->out.ctr, LIBNDR_FLAG_REF_ALLOC);
+ NDR_CHECK(ndr_pull_wkssvc_ComputerNamesCtr(ndr, NDR_SCALARS|NDR_BUFFERS, *r->out.ctr));
+ NDR_PULL_SET_MEM_CTX(ndr, _mem_save_ctr_1, LIBNDR_FLAG_REF_ALLOC);
+ NDR_PULL_SET_MEM_CTX(ndr, _mem_save_ctr_0, LIBNDR_FLAG_REF_ALLOC);
NDR_CHECK(ndr_pull_WERROR(ndr, NDR_SCALARS, &r->out.result));
}
return NDR_ERR_SUCCESS;
}
-_PUBLIC_ void ndr_print_WKSSVC_NETRENUMERATECOMPUTERNAMES(struct ndr_print *ndr, const char *name, int flags, const struct WKSSVC_NETRENUMERATECOMPUTERNAMES *r)
+_PUBLIC_ void ndr_print_wkssvc_NetrEnumerateComputerNames(struct ndr_print *ndr, const char *name, int flags, const struct wkssvc_NetrEnumerateComputerNames *r)
{
- ndr_print_struct(ndr, name, "WKSSVC_NETRENUMERATECOMPUTERNAMES");
+ ndr_print_struct(ndr, name, "wkssvc_NetrEnumerateComputerNames");
ndr->depth++;
if (flags & NDR_SET_VALUES) {
ndr->flags |= LIBNDR_PRINT_SET_VALUES;
}
if (flags & NDR_IN) {
- ndr_print_struct(ndr, "in", "WKSSVC_NETRENUMERATECOMPUTERNAMES");
+ ndr_print_struct(ndr, "in", "wkssvc_NetrEnumerateComputerNames");
+ ndr->depth++;
+ ndr_print_ptr(ndr, "server_name", r->in.server_name);
ndr->depth++;
+ if (r->in.server_name) {
+ ndr_print_string(ndr, "server_name", r->in.server_name);
+ }
+ ndr->depth--;
+ ndr_print_wkssvc_ComputerNameType(ndr, "name_type", r->in.name_type);
+ ndr_print_uint32(ndr, "Reserved", r->in.Reserved);
ndr->depth--;
}
if (flags & NDR_OUT) {
- ndr_print_struct(ndr, "out", "WKSSVC_NETRENUMERATECOMPUTERNAMES");
+ ndr_print_struct(ndr, "out", "wkssvc_NetrEnumerateComputerNames");
+ ndr->depth++;
+ ndr_print_ptr(ndr, "ctr", r->out.ctr);
ndr->depth++;
+ ndr_print_ptr(ndr, "ctr", *r->out.ctr);
+ ndr->depth++;
+ ndr_print_wkssvc_ComputerNamesCtr(ndr, "ctr", *r->out.ctr);
+ ndr->depth--;
+ ndr->depth--;
ndr_print_WERROR(ndr, "result", r->out.result);
ndr->depth--;
}
@@ -4557,19 +10303,19 @@ static const struct ndr_interface_call wkssvc_calls[] = {
false,
},
{
- "WKSSVC_NETRWKSTAUSERGETINFO",
- sizeof(struct WKSSVC_NETRWKSTAUSERGETINFO),
- (ndr_push_flags_fn_t) ndr_push_WKSSVC_NETRWKSTAUSERGETINFO,
- (ndr_pull_flags_fn_t) ndr_pull_WKSSVC_NETRWKSTAUSERGETINFO,
- (ndr_print_function_t) ndr_print_WKSSVC_NETRWKSTAUSERGETINFO,
+ "wkssvc_NetrWkstaUserGetInfo",
+ sizeof(struct wkssvc_NetrWkstaUserGetInfo),
+ (ndr_push_flags_fn_t) ndr_push_wkssvc_NetrWkstaUserGetInfo,
+ (ndr_pull_flags_fn_t) ndr_pull_wkssvc_NetrWkstaUserGetInfo,
+ (ndr_print_function_t) ndr_print_wkssvc_NetrWkstaUserGetInfo,
false,
},
{
- "WKSSVC_NETRWKSTAUSERSETINFO",
- sizeof(struct WKSSVC_NETRWKSTAUSERSETINFO),
- (ndr_push_flags_fn_t) ndr_push_WKSSVC_NETRWKSTAUSERSETINFO,
- (ndr_pull_flags_fn_t) ndr_pull_WKSSVC_NETRWKSTAUSERSETINFO,
- (ndr_print_function_t) ndr_print_WKSSVC_NETRWKSTAUSERSETINFO,
+ "wkssvc_NetrWkstaUserSetInfo",
+ sizeof(struct wkssvc_NetrWkstaUserSetInfo),
+ (ndr_push_flags_fn_t) ndr_push_wkssvc_NetrWkstaUserSetInfo,
+ (ndr_pull_flags_fn_t) ndr_pull_wkssvc_NetrWkstaUserSetInfo,
+ (ndr_print_function_t) ndr_print_wkssvc_NetrWkstaUserSetInfo,
false,
},
{
@@ -4581,131 +10327,131 @@ static const struct ndr_interface_call wkssvc_calls[] = {
false,
},
{
- "WKSSVC_NETRWKSTATRANSPORTADD",
- sizeof(struct WKSSVC_NETRWKSTATRANSPORTADD),
- (ndr_push_flags_fn_t) ndr_push_WKSSVC_NETRWKSTATRANSPORTADD,
- (ndr_pull_flags_fn_t) ndr_pull_WKSSVC_NETRWKSTATRANSPORTADD,
- (ndr_print_function_t) ndr_print_WKSSVC_NETRWKSTATRANSPORTADD,
+ "wkssvc_NetrWkstaTransportAdd",
+ sizeof(struct wkssvc_NetrWkstaTransportAdd),
+ (ndr_push_flags_fn_t) ndr_push_wkssvc_NetrWkstaTransportAdd,
+ (ndr_pull_flags_fn_t) ndr_pull_wkssvc_NetrWkstaTransportAdd,
+ (ndr_print_function_t) ndr_print_wkssvc_NetrWkstaTransportAdd,
false,
},
{
- "WKSSVC_NETRWKSTATRANSPORTDEL",
- sizeof(struct WKSSVC_NETRWKSTATRANSPORTDEL),
- (ndr_push_flags_fn_t) ndr_push_WKSSVC_NETRWKSTATRANSPORTDEL,
- (ndr_pull_flags_fn_t) ndr_pull_WKSSVC_NETRWKSTATRANSPORTDEL,
- (ndr_print_function_t) ndr_print_WKSSVC_NETRWKSTATRANSPORTDEL,
+ "wkssvc_NetrWkstaTransportDel",
+ sizeof(struct wkssvc_NetrWkstaTransportDel),
+ (ndr_push_flags_fn_t) ndr_push_wkssvc_NetrWkstaTransportDel,
+ (ndr_pull_flags_fn_t) ndr_pull_wkssvc_NetrWkstaTransportDel,
+ (ndr_print_function_t) ndr_print_wkssvc_NetrWkstaTransportDel,
false,
},
{
- "WKSSVC_NETRUSEADD",
- sizeof(struct WKSSVC_NETRUSEADD),
- (ndr_push_flags_fn_t) ndr_push_WKSSVC_NETRUSEADD,
- (ndr_pull_flags_fn_t) ndr_pull_WKSSVC_NETRUSEADD,
- (ndr_print_function_t) ndr_print_WKSSVC_NETRUSEADD,
+ "wkssvc_NetrUseAdd",
+ sizeof(struct wkssvc_NetrUseAdd),
+ (ndr_push_flags_fn_t) ndr_push_wkssvc_NetrUseAdd,
+ (ndr_pull_flags_fn_t) ndr_pull_wkssvc_NetrUseAdd,
+ (ndr_print_function_t) ndr_print_wkssvc_NetrUseAdd,
false,
},
{
- "WKSSVC_NETRUSEGETINFO",
- sizeof(struct WKSSVC_NETRUSEGETINFO),
- (ndr_push_flags_fn_t) ndr_push_WKSSVC_NETRUSEGETINFO,
- (ndr_pull_flags_fn_t) ndr_pull_WKSSVC_NETRUSEGETINFO,
- (ndr_print_function_t) ndr_print_WKSSVC_NETRUSEGETINFO,
+ "wkssvc_NetrUseGetInfo",
+ sizeof(struct wkssvc_NetrUseGetInfo),
+ (ndr_push_flags_fn_t) ndr_push_wkssvc_NetrUseGetInfo,
+ (ndr_pull_flags_fn_t) ndr_pull_wkssvc_NetrUseGetInfo,
+ (ndr_print_function_t) ndr_print_wkssvc_NetrUseGetInfo,
false,
},
{
- "WKSSVC_NETRUSEDEL",
- sizeof(struct WKSSVC_NETRUSEDEL),
- (ndr_push_flags_fn_t) ndr_push_WKSSVC_NETRUSEDEL,
- (ndr_pull_flags_fn_t) ndr_pull_WKSSVC_NETRUSEDEL,
- (ndr_print_function_t) ndr_print_WKSSVC_NETRUSEDEL,
+ "wkssvc_NetrUseDel",
+ sizeof(struct wkssvc_NetrUseDel),
+ (ndr_push_flags_fn_t) ndr_push_wkssvc_NetrUseDel,
+ (ndr_pull_flags_fn_t) ndr_pull_wkssvc_NetrUseDel,
+ (ndr_print_function_t) ndr_print_wkssvc_NetrUseDel,
false,
},
{
- "WKSSVC_NETRUSEENUM",
- sizeof(struct WKSSVC_NETRUSEENUM),
- (ndr_push_flags_fn_t) ndr_push_WKSSVC_NETRUSEENUM,
- (ndr_pull_flags_fn_t) ndr_pull_WKSSVC_NETRUSEENUM,
- (ndr_print_function_t) ndr_print_WKSSVC_NETRUSEENUM,
+ "wkssvc_NetrUseEnum",
+ sizeof(struct wkssvc_NetrUseEnum),
+ (ndr_push_flags_fn_t) ndr_push_wkssvc_NetrUseEnum,
+ (ndr_pull_flags_fn_t) ndr_pull_wkssvc_NetrUseEnum,
+ (ndr_print_function_t) ndr_print_wkssvc_NetrUseEnum,
false,
},
{
- "WKSSVC_NETRMESSAGEBUFFERSEND",
- sizeof(struct WKSSVC_NETRMESSAGEBUFFERSEND),
- (ndr_push_flags_fn_t) ndr_push_WKSSVC_NETRMESSAGEBUFFERSEND,
- (ndr_pull_flags_fn_t) ndr_pull_WKSSVC_NETRMESSAGEBUFFERSEND,
- (ndr_print_function_t) ndr_print_WKSSVC_NETRMESSAGEBUFFERSEND,
+ "wkssvc_NetrMessageBufferSend",
+ sizeof(struct wkssvc_NetrMessageBufferSend),
+ (ndr_push_flags_fn_t) ndr_push_wkssvc_NetrMessageBufferSend,
+ (ndr_pull_flags_fn_t) ndr_pull_wkssvc_NetrMessageBufferSend,
+ (ndr_print_function_t) ndr_print_wkssvc_NetrMessageBufferSend,
false,
},
{
- "WKSSVC_NETRWORKSTATIONSTATISTICSGET",
- sizeof(struct WKSSVC_NETRWORKSTATIONSTATISTICSGET),
- (ndr_push_flags_fn_t) ndr_push_WKSSVC_NETRWORKSTATIONSTATISTICSGET,
- (ndr_pull_flags_fn_t) ndr_pull_WKSSVC_NETRWORKSTATIONSTATISTICSGET,
- (ndr_print_function_t) ndr_print_WKSSVC_NETRWORKSTATIONSTATISTICSGET,
+ "wkssvc_NetrWorkstationStatisticsGet",
+ sizeof(struct wkssvc_NetrWorkstationStatisticsGet),
+ (ndr_push_flags_fn_t) ndr_push_wkssvc_NetrWorkstationStatisticsGet,
+ (ndr_pull_flags_fn_t) ndr_pull_wkssvc_NetrWorkstationStatisticsGet,
+ (ndr_print_function_t) ndr_print_wkssvc_NetrWorkstationStatisticsGet,
false,
},
{
- "WKSSVC_NETRLOGONDOMAINNAMEADD",
- sizeof(struct WKSSVC_NETRLOGONDOMAINNAMEADD),
- (ndr_push_flags_fn_t) ndr_push_WKSSVC_NETRLOGONDOMAINNAMEADD,
- (ndr_pull_flags_fn_t) ndr_pull_WKSSVC_NETRLOGONDOMAINNAMEADD,
- (ndr_print_function_t) ndr_print_WKSSVC_NETRLOGONDOMAINNAMEADD,
+ "wkssvc_NetrLogonDomainNameAdd",
+ sizeof(struct wkssvc_NetrLogonDomainNameAdd),
+ (ndr_push_flags_fn_t) ndr_push_wkssvc_NetrLogonDomainNameAdd,
+ (ndr_pull_flags_fn_t) ndr_pull_wkssvc_NetrLogonDomainNameAdd,
+ (ndr_print_function_t) ndr_print_wkssvc_NetrLogonDomainNameAdd,
false,
},
{
- "WKSSVC_NETRLOGONDOMAINNAMEDEL",
- sizeof(struct WKSSVC_NETRLOGONDOMAINNAMEDEL),
- (ndr_push_flags_fn_t) ndr_push_WKSSVC_NETRLOGONDOMAINNAMEDEL,
- (ndr_pull_flags_fn_t) ndr_pull_WKSSVC_NETRLOGONDOMAINNAMEDEL,
- (ndr_print_function_t) ndr_print_WKSSVC_NETRLOGONDOMAINNAMEDEL,
+ "wkssvc_NetrLogonDomainNameDel",
+ sizeof(struct wkssvc_NetrLogonDomainNameDel),
+ (ndr_push_flags_fn_t) ndr_push_wkssvc_NetrLogonDomainNameDel,
+ (ndr_pull_flags_fn_t) ndr_pull_wkssvc_NetrLogonDomainNameDel,
+ (ndr_print_function_t) ndr_print_wkssvc_NetrLogonDomainNameDel,
false,
},
{
- "WKSSVC_NETRJOINDOMAIN",
- sizeof(struct WKSSVC_NETRJOINDOMAIN),
- (ndr_push_flags_fn_t) ndr_push_WKSSVC_NETRJOINDOMAIN,
- (ndr_pull_flags_fn_t) ndr_pull_WKSSVC_NETRJOINDOMAIN,
- (ndr_print_function_t) ndr_print_WKSSVC_NETRJOINDOMAIN,
+ "wkssvc_NetrJoinDomain",
+ sizeof(struct wkssvc_NetrJoinDomain),
+ (ndr_push_flags_fn_t) ndr_push_wkssvc_NetrJoinDomain,
+ (ndr_pull_flags_fn_t) ndr_pull_wkssvc_NetrJoinDomain,
+ (ndr_print_function_t) ndr_print_wkssvc_NetrJoinDomain,
false,
},
{
- "WKSSVC_NETRUNJOINDOMAIN",
- sizeof(struct WKSSVC_NETRUNJOINDOMAIN),
- (ndr_push_flags_fn_t) ndr_push_WKSSVC_NETRUNJOINDOMAIN,
- (ndr_pull_flags_fn_t) ndr_pull_WKSSVC_NETRUNJOINDOMAIN,
- (ndr_print_function_t) ndr_print_WKSSVC_NETRUNJOINDOMAIN,
+ "wkssvc_NetrUnjoinDomain",
+ sizeof(struct wkssvc_NetrUnjoinDomain),
+ (ndr_push_flags_fn_t) ndr_push_wkssvc_NetrUnjoinDomain,
+ (ndr_pull_flags_fn_t) ndr_pull_wkssvc_NetrUnjoinDomain,
+ (ndr_print_function_t) ndr_print_wkssvc_NetrUnjoinDomain,
false,
},
{
- "WKSSVC_NETRRENAMEMACHINEINDOMAIN",
- sizeof(struct WKSSVC_NETRRENAMEMACHINEINDOMAIN),
- (ndr_push_flags_fn_t) ndr_push_WKSSVC_NETRRENAMEMACHINEINDOMAIN,
- (ndr_pull_flags_fn_t) ndr_pull_WKSSVC_NETRRENAMEMACHINEINDOMAIN,
- (ndr_print_function_t) ndr_print_WKSSVC_NETRRENAMEMACHINEINDOMAIN,
+ "wkssvc_NetrRenameMachineInDomain",
+ sizeof(struct wkssvc_NetrRenameMachineInDomain),
+ (ndr_push_flags_fn_t) ndr_push_wkssvc_NetrRenameMachineInDomain,
+ (ndr_pull_flags_fn_t) ndr_pull_wkssvc_NetrRenameMachineInDomain,
+ (ndr_print_function_t) ndr_print_wkssvc_NetrRenameMachineInDomain,
false,
},
{
- "WKSSVC_NETRVALIDATENAME",
- sizeof(struct WKSSVC_NETRVALIDATENAME),
- (ndr_push_flags_fn_t) ndr_push_WKSSVC_NETRVALIDATENAME,
- (ndr_pull_flags_fn_t) ndr_pull_WKSSVC_NETRVALIDATENAME,
- (ndr_print_function_t) ndr_print_WKSSVC_NETRVALIDATENAME,
+ "wkssvc_NetrValidateName",
+ sizeof(struct wkssvc_NetrValidateName),
+ (ndr_push_flags_fn_t) ndr_push_wkssvc_NetrValidateName,
+ (ndr_pull_flags_fn_t) ndr_pull_wkssvc_NetrValidateName,
+ (ndr_print_function_t) ndr_print_wkssvc_NetrValidateName,
false,
},
{
- "WKSSVC_NETRGETJOININFORMATION",
- sizeof(struct WKSSVC_NETRGETJOININFORMATION),
- (ndr_push_flags_fn_t) ndr_push_WKSSVC_NETRGETJOININFORMATION,
- (ndr_pull_flags_fn_t) ndr_pull_WKSSVC_NETRGETJOININFORMATION,
- (ndr_print_function_t) ndr_print_WKSSVC_NETRGETJOININFORMATION,
+ "wkssvc_NetrGetJoinInformation",
+ sizeof(struct wkssvc_NetrGetJoinInformation),
+ (ndr_push_flags_fn_t) ndr_push_wkssvc_NetrGetJoinInformation,
+ (ndr_pull_flags_fn_t) ndr_pull_wkssvc_NetrGetJoinInformation,
+ (ndr_print_function_t) ndr_print_wkssvc_NetrGetJoinInformation,
false,
},
{
- "WKSSVC_NETRGETJOINABLEOUS",
- sizeof(struct WKSSVC_NETRGETJOINABLEOUS),
- (ndr_push_flags_fn_t) ndr_push_WKSSVC_NETRGETJOINABLEOUS,
- (ndr_pull_flags_fn_t) ndr_pull_WKSSVC_NETRGETJOINABLEOUS,
- (ndr_print_function_t) ndr_print_WKSSVC_NETRGETJOINABLEOUS,
+ "wkssvc_NetrGetJoinableOus",
+ sizeof(struct wkssvc_NetrGetJoinableOus),
+ (ndr_push_flags_fn_t) ndr_push_wkssvc_NetrGetJoinableOus,
+ (ndr_pull_flags_fn_t) ndr_pull_wkssvc_NetrGetJoinableOus,
+ (ndr_print_function_t) ndr_print_wkssvc_NetrGetJoinableOus,
false,
},
{
@@ -4733,19 +10479,19 @@ static const struct ndr_interface_call wkssvc_calls[] = {
false,
},
{
- "WKSSVC_NETRVALIDATENAME2",
- sizeof(struct WKSSVC_NETRVALIDATENAME2),
- (ndr_push_flags_fn_t) ndr_push_WKSSVC_NETRVALIDATENAME2,
- (ndr_pull_flags_fn_t) ndr_pull_WKSSVC_NETRVALIDATENAME2,
- (ndr_print_function_t) ndr_print_WKSSVC_NETRVALIDATENAME2,
+ "wkssvc_NetrValidateName2",
+ sizeof(struct wkssvc_NetrValidateName2),
+ (ndr_push_flags_fn_t) ndr_push_wkssvc_NetrValidateName2,
+ (ndr_pull_flags_fn_t) ndr_pull_wkssvc_NetrValidateName2,
+ (ndr_print_function_t) ndr_print_wkssvc_NetrValidateName2,
false,
},
{
- "WKSSVC_NETRGETJOINABLEOUS2",
- sizeof(struct WKSSVC_NETRGETJOINABLEOUS2),
- (ndr_push_flags_fn_t) ndr_push_WKSSVC_NETRGETJOINABLEOUS2,
- (ndr_pull_flags_fn_t) ndr_pull_WKSSVC_NETRGETJOINABLEOUS2,
- (ndr_print_function_t) ndr_print_WKSSVC_NETRGETJOINABLEOUS2,
+ "wkssvc_NetrGetJoinableOus2",
+ sizeof(struct wkssvc_NetrGetJoinableOus2),
+ (ndr_push_flags_fn_t) ndr_push_wkssvc_NetrGetJoinableOus2,
+ (ndr_pull_flags_fn_t) ndr_pull_wkssvc_NetrGetJoinableOus2,
+ (ndr_print_function_t) ndr_print_wkssvc_NetrGetJoinableOus2,
false,
},
{
@@ -4765,19 +10511,19 @@ static const struct ndr_interface_call wkssvc_calls[] = {
false,
},
{
- "WKSSVC_NETRSETPRIMARYCOMPUTERNAME",
- sizeof(struct WKSSVC_NETRSETPRIMARYCOMPUTERNAME),
- (ndr_push_flags_fn_t) ndr_push_WKSSVC_NETRSETPRIMARYCOMPUTERNAME,
- (ndr_pull_flags_fn_t) ndr_pull_WKSSVC_NETRSETPRIMARYCOMPUTERNAME,
- (ndr_print_function_t) ndr_print_WKSSVC_NETRSETPRIMARYCOMPUTERNAME,
+ "wkssvc_NetrSetPrimaryComputername",
+ sizeof(struct wkssvc_NetrSetPrimaryComputername),
+ (ndr_push_flags_fn_t) ndr_push_wkssvc_NetrSetPrimaryComputername,
+ (ndr_pull_flags_fn_t) ndr_pull_wkssvc_NetrSetPrimaryComputername,
+ (ndr_print_function_t) ndr_print_wkssvc_NetrSetPrimaryComputername,
false,
},
{
- "WKSSVC_NETRENUMERATECOMPUTERNAMES",
- sizeof(struct WKSSVC_NETRENUMERATECOMPUTERNAMES),
- (ndr_push_flags_fn_t) ndr_push_WKSSVC_NETRENUMERATECOMPUTERNAMES,
- (ndr_pull_flags_fn_t) ndr_pull_WKSSVC_NETRENUMERATECOMPUTERNAMES,
- (ndr_print_function_t) ndr_print_WKSSVC_NETRENUMERATECOMPUTERNAMES,
+ "wkssvc_NetrEnumerateComputerNames",
+ sizeof(struct wkssvc_NetrEnumerateComputerNames),
+ (ndr_push_flags_fn_t) ndr_push_wkssvc_NetrEnumerateComputerNames,
+ (ndr_pull_flags_fn_t) ndr_pull_wkssvc_NetrEnumerateComputerNames,
+ (ndr_print_function_t) ndr_print_wkssvc_NetrEnumerateComputerNames,
false,
},
{ NULL, 0, NULL, NULL, NULL, false }
@@ -4785,10 +10531,12 @@ static const struct ndr_interface_call wkssvc_calls[] = {
static const char * const wkssvc_endpoint_strings[] = {
"ncacn_np:[\\pipe\\wkssvc]",
+ "ncacn_ip_tcp:",
+ "ncalrpc:",
};
static const struct ndr_interface_string_array wkssvc_endpoints = {
- .count = 1,
+ .count = 3,
.names = wkssvc_endpoint_strings
};
@@ -4797,7 +10545,7 @@ static const char * const wkssvc_authservice_strings[] = {
};
static const struct ndr_interface_string_array wkssvc_authservices = {
- .count = 1,
+ .count = 3,
.names = wkssvc_authservice_strings
};
diff --git a/source3/librpc/gen_ndr/ndr_wkssvc.h b/source3/librpc/gen_ndr/ndr_wkssvc.h
index 7d140997f0..0fa4d3f8d4 100644
--- a/source3/librpc/gen_ndr/ndr_wkssvc.h
+++ b/source3/librpc/gen_ndr/ndr_wkssvc.h
@@ -85,48 +85,91 @@ void ndr_print_wkssvc_NetWkstaInfo1013(struct ndr_print *ndr, const char *name,
void ndr_print_wkssvc_NetWkstaInfo1018(struct ndr_print *ndr, const char *name, const struct wkssvc_NetWkstaInfo1018 *r);
void ndr_print_wkssvc_NetWkstaInfo1023(struct ndr_print *ndr, const char *name, const struct wkssvc_NetWkstaInfo1023 *r);
void ndr_print_wkssvc_NetWkstaInfo1027(struct ndr_print *ndr, const char *name, const struct wkssvc_NetWkstaInfo1027 *r);
+void ndr_print_wkssvc_NetWkstaInfo1028(struct ndr_print *ndr, const char *name, const struct wkssvc_NetWkstaInfo1028 *r);
+void ndr_print_wkssvc_NetWkstaInfo1032(struct ndr_print *ndr, const char *name, const struct wkssvc_NetWkstaInfo1032 *r);
void ndr_print_wkssvc_NetWkstaInfo1033(struct ndr_print *ndr, const char *name, const struct wkssvc_NetWkstaInfo1033 *r);
+void ndr_print_wkssvc_NetWkstaInfo1041(struct ndr_print *ndr, const char *name, const struct wkssvc_NetWkstaInfo1041 *r);
+void ndr_print_wkssvc_NetWkstaInfo1042(struct ndr_print *ndr, const char *name, const struct wkssvc_NetWkstaInfo1042 *r);
+void ndr_print_wkssvc_NetWkstaInfo1043(struct ndr_print *ndr, const char *name, const struct wkssvc_NetWkstaInfo1043 *r);
+void ndr_print_wkssvc_NetWkstaInfo1044(struct ndr_print *ndr, const char *name, const struct wkssvc_NetWkstaInfo1044 *r);
+void ndr_print_wkssvc_NetWkstaInfo1045(struct ndr_print *ndr, const char *name, const struct wkssvc_NetWkstaInfo1045 *r);
+void ndr_print_wkssvc_NetWkstaInfo1046(struct ndr_print *ndr, const char *name, const struct wkssvc_NetWkstaInfo1046 *r);
+void ndr_print_wkssvc_NetWkstaInfo1047(struct ndr_print *ndr, const char *name, const struct wkssvc_NetWkstaInfo1047 *r);
+void ndr_print_wkssvc_NetWkstaInfo1048(struct ndr_print *ndr, const char *name, const struct wkssvc_NetWkstaInfo1048 *r);
+void ndr_print_wkssvc_NetWkstaInfo1049(struct ndr_print *ndr, const char *name, const struct wkssvc_NetWkstaInfo1049 *r);
+void ndr_print_wkssvc_NetWkstaInfo1050(struct ndr_print *ndr, const char *name, const struct wkssvc_NetWkstaInfo1050 *r);
+void ndr_print_wkssvc_NetWkstaInfo1051(struct ndr_print *ndr, const char *name, const struct wkssvc_NetWkstaInfo1051 *r);
+void ndr_print_wkssvc_NetWkstaInfo1052(struct ndr_print *ndr, const char *name, const struct wkssvc_NetWkstaInfo1052 *r);
+void ndr_print_wkssvc_NetWkstaInfo1053(struct ndr_print *ndr, const char *name, const struct wkssvc_NetWkstaInfo1053 *r);
+void ndr_print_wkssvc_NetWkstaInfo1054(struct ndr_print *ndr, const char *name, const struct wkssvc_NetWkstaInfo1054 *r);
+void ndr_print_wkssvc_NetWkstaInfo1055(struct ndr_print *ndr, const char *name, const struct wkssvc_NetWkstaInfo1055 *r);
+void ndr_print_wkssvc_NetWkstaInfo1056(struct ndr_print *ndr, const char *name, const struct wkssvc_NetWkstaInfo1056 *r);
+void ndr_print_wkssvc_NetWkstaInfo1057(struct ndr_print *ndr, const char *name, const struct wkssvc_NetWkstaInfo1057 *r);
+void ndr_print_wkssvc_NetWkstaInfo1058(struct ndr_print *ndr, const char *name, const struct wkssvc_NetWkstaInfo1058 *r);
+void ndr_print_wkssvc_NetWkstaInfo1059(struct ndr_print *ndr, const char *name, const struct wkssvc_NetWkstaInfo1059 *r);
+void ndr_print_wkssvc_NetWkstaInfo1060(struct ndr_print *ndr, const char *name, const struct wkssvc_NetWkstaInfo1060 *r);
+void ndr_print_wkssvc_NetWkstaInfo1061(struct ndr_print *ndr, const char *name, const struct wkssvc_NetWkstaInfo1061 *r);
+void ndr_print_wkssvc_NetWkstaInfo1062(struct ndr_print *ndr, const char *name, const struct wkssvc_NetWkstaInfo1062 *r);
void ndr_print_wkssvc_NetWkstaInfo(struct ndr_print *ndr, const char *name, const union wkssvc_NetWkstaInfo *r);
-void ndr_print_USER_INFO_0(struct ndr_print *ndr, const char *name, const struct USER_INFO_0 *r);
-void ndr_print_USER_INFO_0_CONTAINER(struct ndr_print *ndr, const char *name, const struct USER_INFO_0_CONTAINER *r);
-void ndr_print_USER_INFO_1(struct ndr_print *ndr, const char *name, const struct USER_INFO_1 *r);
-void ndr_print_USER_INFO_1_CONTAINER(struct ndr_print *ndr, const char *name, const struct USER_INFO_1_CONTAINER *r);
-void ndr_print_WKS_USER_ENUM_UNION(struct ndr_print *ndr, const char *name, const union WKS_USER_ENUM_UNION *r);
+void ndr_print_wkssvc_NetrWkstaUserInfo0(struct ndr_print *ndr, const char *name, const struct wkssvc_NetrWkstaUserInfo0 *r);
+void ndr_print_wkssvc_NetWkstaEnumUsersCtr0(struct ndr_print *ndr, const char *name, const struct wkssvc_NetWkstaEnumUsersCtr0 *r);
+void ndr_print_wkssvc_NetrWkstaUserInfo1(struct ndr_print *ndr, const char *name, const struct wkssvc_NetrWkstaUserInfo1 *r);
+void ndr_print_wkssvc_NetWkstaEnumUsersCtr1(struct ndr_print *ndr, const char *name, const struct wkssvc_NetWkstaEnumUsersCtr1 *r);
+void ndr_print_wkssvc_NetWkstaEnumUsersCtr(struct ndr_print *ndr, const char *name, const union wkssvc_NetWkstaEnumUsersCtr *r);
+void ndr_print_wkssvc_NetWkstaEnumUsersInfo(struct ndr_print *ndr, const char *name, const struct wkssvc_NetWkstaEnumUsersInfo *r);
+void ndr_print_wkssvc_NetrWkstaUserInfo1101(struct ndr_print *ndr, const char *name, const struct wkssvc_NetrWkstaUserInfo1101 *r);
+void ndr_print_wkssvc_NetrWkstaUserInfo(struct ndr_print *ndr, const char *name, const union wkssvc_NetrWkstaUserInfo *r);
void ndr_print_wkssvc_NetWkstaTransportInfo0(struct ndr_print *ndr, const char *name, const struct wkssvc_NetWkstaTransportInfo0 *r);
void ndr_print_wkssvc_NetWkstaTransportCtr0(struct ndr_print *ndr, const char *name, const struct wkssvc_NetWkstaTransportCtr0 *r);
void ndr_print_wkssvc_NetWkstaTransportCtr(struct ndr_print *ndr, const char *name, const union wkssvc_NetWkstaTransportCtr *r);
+void ndr_print_wkssvc_NetWkstaTransportInfo(struct ndr_print *ndr, const char *name, const struct wkssvc_NetWkstaTransportInfo *r);
+void ndr_print_wkssvc_NetrUseInfo3(struct ndr_print *ndr, const char *name, const struct wkssvc_NetrUseInfo3 *r);
+void ndr_print_wkssvc_NetrUseInfo2(struct ndr_print *ndr, const char *name, const struct wkssvc_NetrUseInfo2 *r);
+void ndr_print_wkssvc_NetrUseInfo1(struct ndr_print *ndr, const char *name, const struct wkssvc_NetrUseInfo1 *r);
+void ndr_print_wkssvc_NetrUseInfo0(struct ndr_print *ndr, const char *name, const struct wkssvc_NetrUseInfo0 *r);
+void ndr_print_wkssvc_NetrUseGetInfoCtr(struct ndr_print *ndr, const char *name, const union wkssvc_NetrUseGetInfoCtr *r);
+void ndr_print_wkssvc_NetrUseEnumCtr2(struct ndr_print *ndr, const char *name, const struct wkssvc_NetrUseEnumCtr2 *r);
+void ndr_print_wkssvc_NetrUseEnumCtr1(struct ndr_print *ndr, const char *name, const struct wkssvc_NetrUseEnumCtr1 *r);
+void ndr_print_wkssvc_NetrUseEnumCtr0(struct ndr_print *ndr, const char *name, const struct wkssvc_NetrUseEnumCtr0 *r);
+void ndr_print_wkssvc_NetrUseEnumCtr(struct ndr_print *ndr, const char *name, const union wkssvc_NetrUseEnumCtr *r);
+void ndr_print_wkssvc_NetrUseEnumInfo(struct ndr_print *ndr, const char *name, const struct wkssvc_NetrUseEnumInfo *r);
+void ndr_print_wkssvc_NetrWorkstationStatistics(struct ndr_print *ndr, const char *name, const struct wkssvc_NetrWorkstationStatistics *r);
+void ndr_print_wkssvc_renameflags(struct ndr_print *ndr, const char *name, uint32_t r);
+void ndr_print_wkssvc_NetValidateNameType(struct ndr_print *ndr, const char *name, enum wkssvc_NetValidateNameType r);
+void ndr_print_wkssvc_NetJoinStatus(struct ndr_print *ndr, const char *name, enum wkssvc_NetJoinStatus r);
void ndr_print_wkssvc_PasswordBuffer(struct ndr_print *ndr, const char *name, const struct wkssvc_PasswordBuffer *r);
void ndr_print_wkssvc_joinflags(struct ndr_print *ndr, const char *name, uint32_t r);
-void ndr_print_wkssvc_renameflags(struct ndr_print *ndr, const char *name, uint32_t r);
+void ndr_print_wkssvc_ComputerNameType(struct ndr_print *ndr, const char *name, enum wkssvc_ComputerNameType r);
+void ndr_print_wkssvc_ComputerNamesCtr(struct ndr_print *ndr, const char *name, const struct wkssvc_ComputerNamesCtr *r);
void ndr_print_wkssvc_NetWkstaGetInfo(struct ndr_print *ndr, const char *name, int flags, const struct wkssvc_NetWkstaGetInfo *r);
void ndr_print_wkssvc_NetWkstaSetInfo(struct ndr_print *ndr, const char *name, int flags, const struct wkssvc_NetWkstaSetInfo *r);
void ndr_print_wkssvc_NetWkstaEnumUsers(struct ndr_print *ndr, const char *name, int flags, const struct wkssvc_NetWkstaEnumUsers *r);
-void ndr_print_WKSSVC_NETRWKSTAUSERGETINFO(struct ndr_print *ndr, const char *name, int flags, const struct WKSSVC_NETRWKSTAUSERGETINFO *r);
-void ndr_print_WKSSVC_NETRWKSTAUSERSETINFO(struct ndr_print *ndr, const char *name, int flags, const struct WKSSVC_NETRWKSTAUSERSETINFO *r);
+void ndr_print_wkssvc_NetrWkstaUserGetInfo(struct ndr_print *ndr, const char *name, int flags, const struct wkssvc_NetrWkstaUserGetInfo *r);
+void ndr_print_wkssvc_NetrWkstaUserSetInfo(struct ndr_print *ndr, const char *name, int flags, const struct wkssvc_NetrWkstaUserSetInfo *r);
void ndr_print_wkssvc_NetWkstaTransportEnum(struct ndr_print *ndr, const char *name, int flags, const struct wkssvc_NetWkstaTransportEnum *r);
-void ndr_print_WKSSVC_NETRWKSTATRANSPORTADD(struct ndr_print *ndr, const char *name, int flags, const struct WKSSVC_NETRWKSTATRANSPORTADD *r);
-void ndr_print_WKSSVC_NETRWKSTATRANSPORTDEL(struct ndr_print *ndr, const char *name, int flags, const struct WKSSVC_NETRWKSTATRANSPORTDEL *r);
-void ndr_print_WKSSVC_NETRUSEADD(struct ndr_print *ndr, const char *name, int flags, const struct WKSSVC_NETRUSEADD *r);
-void ndr_print_WKSSVC_NETRUSEGETINFO(struct ndr_print *ndr, const char *name, int flags, const struct WKSSVC_NETRUSEGETINFO *r);
-void ndr_print_WKSSVC_NETRUSEDEL(struct ndr_print *ndr, const char *name, int flags, const struct WKSSVC_NETRUSEDEL *r);
-void ndr_print_WKSSVC_NETRUSEENUM(struct ndr_print *ndr, const char *name, int flags, const struct WKSSVC_NETRUSEENUM *r);
-void ndr_print_WKSSVC_NETRMESSAGEBUFFERSEND(struct ndr_print *ndr, const char *name, int flags, const struct WKSSVC_NETRMESSAGEBUFFERSEND *r);
-void ndr_print_WKSSVC_NETRWORKSTATIONSTATISTICSGET(struct ndr_print *ndr, const char *name, int flags, const struct WKSSVC_NETRWORKSTATIONSTATISTICSGET *r);
-void ndr_print_WKSSVC_NETRLOGONDOMAINNAMEADD(struct ndr_print *ndr, const char *name, int flags, const struct WKSSVC_NETRLOGONDOMAINNAMEADD *r);
-void ndr_print_WKSSVC_NETRLOGONDOMAINNAMEDEL(struct ndr_print *ndr, const char *name, int flags, const struct WKSSVC_NETRLOGONDOMAINNAMEDEL *r);
-void ndr_print_WKSSVC_NETRJOINDOMAIN(struct ndr_print *ndr, const char *name, int flags, const struct WKSSVC_NETRJOINDOMAIN *r);
-void ndr_print_WKSSVC_NETRUNJOINDOMAIN(struct ndr_print *ndr, const char *name, int flags, const struct WKSSVC_NETRUNJOINDOMAIN *r);
-void ndr_print_WKSSVC_NETRRENAMEMACHINEINDOMAIN(struct ndr_print *ndr, const char *name, int flags, const struct WKSSVC_NETRRENAMEMACHINEINDOMAIN *r);
-void ndr_print_WKSSVC_NETRVALIDATENAME(struct ndr_print *ndr, const char *name, int flags, const struct WKSSVC_NETRVALIDATENAME *r);
-void ndr_print_WKSSVC_NETRGETJOININFORMATION(struct ndr_print *ndr, const char *name, int flags, const struct WKSSVC_NETRGETJOININFORMATION *r);
-void ndr_print_WKSSVC_NETRGETJOINABLEOUS(struct ndr_print *ndr, const char *name, int flags, const struct WKSSVC_NETRGETJOINABLEOUS *r);
+void ndr_print_wkssvc_NetrWkstaTransportAdd(struct ndr_print *ndr, const char *name, int flags, const struct wkssvc_NetrWkstaTransportAdd *r);
+void ndr_print_wkssvc_NetrWkstaTransportDel(struct ndr_print *ndr, const char *name, int flags, const struct wkssvc_NetrWkstaTransportDel *r);
+void ndr_print_wkssvc_NetrUseAdd(struct ndr_print *ndr, const char *name, int flags, const struct wkssvc_NetrUseAdd *r);
+void ndr_print_wkssvc_NetrUseGetInfo(struct ndr_print *ndr, const char *name, int flags, const struct wkssvc_NetrUseGetInfo *r);
+void ndr_print_wkssvc_NetrUseDel(struct ndr_print *ndr, const char *name, int flags, const struct wkssvc_NetrUseDel *r);
+void ndr_print_wkssvc_NetrUseEnum(struct ndr_print *ndr, const char *name, int flags, const struct wkssvc_NetrUseEnum *r);
+void ndr_print_wkssvc_NetrMessageBufferSend(struct ndr_print *ndr, const char *name, int flags, const struct wkssvc_NetrMessageBufferSend *r);
+void ndr_print_wkssvc_NetrWorkstationStatisticsGet(struct ndr_print *ndr, const char *name, int flags, const struct wkssvc_NetrWorkstationStatisticsGet *r);
+void ndr_print_wkssvc_NetrLogonDomainNameAdd(struct ndr_print *ndr, const char *name, int flags, const struct wkssvc_NetrLogonDomainNameAdd *r);
+void ndr_print_wkssvc_NetrLogonDomainNameDel(struct ndr_print *ndr, const char *name, int flags, const struct wkssvc_NetrLogonDomainNameDel *r);
+void ndr_print_wkssvc_NetrJoinDomain(struct ndr_print *ndr, const char *name, int flags, const struct wkssvc_NetrJoinDomain *r);
+void ndr_print_wkssvc_NetrUnjoinDomain(struct ndr_print *ndr, const char *name, int flags, const struct wkssvc_NetrUnjoinDomain *r);
+void ndr_print_wkssvc_NetrRenameMachineInDomain(struct ndr_print *ndr, const char *name, int flags, const struct wkssvc_NetrRenameMachineInDomain *r);
+void ndr_print_wkssvc_NetrValidateName(struct ndr_print *ndr, const char *name, int flags, const struct wkssvc_NetrValidateName *r);
+void ndr_print_wkssvc_NetrGetJoinInformation(struct ndr_print *ndr, const char *name, int flags, const struct wkssvc_NetrGetJoinInformation *r);
+void ndr_print_wkssvc_NetrGetJoinableOus(struct ndr_print *ndr, const char *name, int flags, const struct wkssvc_NetrGetJoinableOus *r);
void ndr_print_wkssvc_NetrJoinDomain2(struct ndr_print *ndr, const char *name, int flags, const struct wkssvc_NetrJoinDomain2 *r);
void ndr_print_wkssvc_NetrUnjoinDomain2(struct ndr_print *ndr, const char *name, int flags, const struct wkssvc_NetrUnjoinDomain2 *r);
void ndr_print_wkssvc_NetrRenameMachineInDomain2(struct ndr_print *ndr, const char *name, int flags, const struct wkssvc_NetrRenameMachineInDomain2 *r);
-void ndr_print_WKSSVC_NETRVALIDATENAME2(struct ndr_print *ndr, const char *name, int flags, const struct WKSSVC_NETRVALIDATENAME2 *r);
-void ndr_print_WKSSVC_NETRGETJOINABLEOUS2(struct ndr_print *ndr, const char *name, int flags, const struct WKSSVC_NETRGETJOINABLEOUS2 *r);
+void ndr_print_wkssvc_NetrValidateName2(struct ndr_print *ndr, const char *name, int flags, const struct wkssvc_NetrValidateName2 *r);
+void ndr_print_wkssvc_NetrGetJoinableOus2(struct ndr_print *ndr, const char *name, int flags, const struct wkssvc_NetrGetJoinableOus2 *r);
void ndr_print_wkssvc_NetrAddAlternateComputerName(struct ndr_print *ndr, const char *name, int flags, const struct wkssvc_NetrAddAlternateComputerName *r);
void ndr_print_wkssvc_NetrRemoveAlternateComputerName(struct ndr_print *ndr, const char *name, int flags, const struct wkssvc_NetrRemoveAlternateComputerName *r);
-void ndr_print_WKSSVC_NETRSETPRIMARYCOMPUTERNAME(struct ndr_print *ndr, const char *name, int flags, const struct WKSSVC_NETRSETPRIMARYCOMPUTERNAME *r);
-void ndr_print_WKSSVC_NETRENUMERATECOMPUTERNAMES(struct ndr_print *ndr, const char *name, int flags, const struct WKSSVC_NETRENUMERATECOMPUTERNAMES *r);
+void ndr_print_wkssvc_NetrSetPrimaryComputername(struct ndr_print *ndr, const char *name, int flags, const struct wkssvc_NetrSetPrimaryComputername *r);
+void ndr_print_wkssvc_NetrEnumerateComputerNames(struct ndr_print *ndr, const char *name, int flags, const struct wkssvc_NetrEnumerateComputerNames *r);
#endif /* _HEADER_NDR_wkssvc */
diff --git a/source3/librpc/gen_ndr/srv_wkssvc.c b/source3/librpc/gen_ndr/srv_wkssvc.c
index 48ee7360c9..ff8c1e2603 100644
--- a/source3/librpc/gen_ndr/srv_wkssvc.c
+++ b/source3/librpc/gen_ndr/srv_wkssvc.c
@@ -195,20 +195,14 @@ static bool api_wkssvc_NetWkstaEnumUsers(pipes_struct *p)
NDR_PRINT_IN_DEBUG(wkssvc_NetWkstaEnumUsers, r);
ZERO_STRUCT(r->out);
- r->out.users = r->in.users;
- r->out.entriesread = talloc_zero(r, uint32_t);
- if (r->out.entriesread == NULL) {
+ r->out.info = r->in.info;
+ r->out.entries_read = talloc_zero(r, uint32_t);
+ if (r->out.entries_read == NULL) {
talloc_free(r);
return False;
}
- r->out.totalentries = talloc_zero(r, uint32_t);
- if (r->out.totalentries == NULL) {
- talloc_free(r);
- return False;
- }
-
- r->out.resumehandle = r->in.resumehandle;
+ r->out.resume_handle = r->in.resume_handle;
r->out.result = _wkssvc_NetWkstaEnumUsers(p, r);
if (p->rng_fault_state) {
@@ -243,18 +237,18 @@ static bool api_wkssvc_NetWkstaEnumUsers(pipes_struct *p)
return True;
}
-static bool api_WKSSVC_NETRWKSTAUSERGETINFO(pipes_struct *p)
+static bool api_wkssvc_NetrWkstaUserGetInfo(pipes_struct *p)
{
const struct ndr_interface_call *call;
struct ndr_pull *pull;
struct ndr_push *push;
enum ndr_err_code ndr_err;
DATA_BLOB blob;
- struct WKSSVC_NETRWKSTAUSERGETINFO *r;
+ struct wkssvc_NetrWkstaUserGetInfo *r;
call = &ndr_table_wkssvc.calls[NDR_WKSSVC_NETRWKSTAUSERGETINFO];
- r = talloc(NULL, struct WKSSVC_NETRWKSTAUSERGETINFO);
+ r = talloc(NULL, struct wkssvc_NetrWkstaUserGetInfo);
if (r == NULL) {
return False;
}
@@ -278,9 +272,16 @@ static bool api_WKSSVC_NETRWKSTAUSERGETINFO(pipes_struct *p)
}
if (DEBUGLEVEL >= 10)
- NDR_PRINT_IN_DEBUG(WKSSVC_NETRWKSTAUSERGETINFO, r);
+ NDR_PRINT_IN_DEBUG(wkssvc_NetrWkstaUserGetInfo, r);
- r->out.result = _WKSSVC_NETRWKSTAUSERGETINFO(p, r);
+ ZERO_STRUCT(r->out);
+ r->out.info = talloc_zero(r, union wkssvc_NetrWkstaUserInfo);
+ if (r->out.info == NULL) {
+ talloc_free(r);
+ return False;
+ }
+
+ r->out.result = _wkssvc_NetrWkstaUserGetInfo(p, r);
if (p->rng_fault_state) {
talloc_free(r);
@@ -289,7 +290,7 @@ static bool api_WKSSVC_NETRWKSTAUSERGETINFO(pipes_struct *p)
}
if (DEBUGLEVEL >= 10)
- NDR_PRINT_OUT_DEBUG(WKSSVC_NETRWKSTAUSERGETINFO, r);
+ NDR_PRINT_OUT_DEBUG(wkssvc_NetrWkstaUserGetInfo, r);
push = ndr_push_init_ctx(r);
if (push == NULL) {
@@ -314,18 +315,18 @@ static bool api_WKSSVC_NETRWKSTAUSERGETINFO(pipes_struct *p)
return True;
}
-static bool api_WKSSVC_NETRWKSTAUSERSETINFO(pipes_struct *p)
+static bool api_wkssvc_NetrWkstaUserSetInfo(pipes_struct *p)
{
const struct ndr_interface_call *call;
struct ndr_pull *pull;
struct ndr_push *push;
enum ndr_err_code ndr_err;
DATA_BLOB blob;
- struct WKSSVC_NETRWKSTAUSERSETINFO *r;
+ struct wkssvc_NetrWkstaUserSetInfo *r;
call = &ndr_table_wkssvc.calls[NDR_WKSSVC_NETRWKSTAUSERSETINFO];
- r = talloc(NULL, struct WKSSVC_NETRWKSTAUSERSETINFO);
+ r = talloc(NULL, struct wkssvc_NetrWkstaUserSetInfo);
if (r == NULL) {
return False;
}
@@ -349,9 +350,11 @@ static bool api_WKSSVC_NETRWKSTAUSERSETINFO(pipes_struct *p)
}
if (DEBUGLEVEL >= 10)
- NDR_PRINT_IN_DEBUG(WKSSVC_NETRWKSTAUSERSETINFO, r);
+ NDR_PRINT_IN_DEBUG(wkssvc_NetrWkstaUserSetInfo, r);
- r->out.result = _WKSSVC_NETRWKSTAUSERSETINFO(p, r);
+ ZERO_STRUCT(r->out);
+ r->out.parm_err = r->in.parm_err;
+ r->out.result = _wkssvc_NetrWkstaUserSetInfo(p, r);
if (p->rng_fault_state) {
talloc_free(r);
@@ -360,7 +363,7 @@ static bool api_WKSSVC_NETRWKSTAUSERSETINFO(pipes_struct *p)
}
if (DEBUGLEVEL >= 10)
- NDR_PRINT_OUT_DEBUG(WKSSVC_NETRWKSTAUSERSETINFO, r);
+ NDR_PRINT_OUT_DEBUG(wkssvc_NetrWkstaUserSetInfo, r);
push = ndr_push_init_ctx(r);
if (push == NULL) {
@@ -423,10 +426,9 @@ static bool api_wkssvc_NetWkstaTransportEnum(pipes_struct *p)
NDR_PRINT_IN_DEBUG(wkssvc_NetWkstaTransportEnum, r);
ZERO_STRUCT(r->out);
- r->out.level = r->in.level;
- r->out.ctr = r->in.ctr;
- r->out.totalentries = talloc_zero(r, uint32_t);
- if (r->out.totalentries == NULL) {
+ r->out.info = r->in.info;
+ r->out.total_entries = talloc_zero(r, uint32_t);
+ if (r->out.total_entries == NULL) {
talloc_free(r);
return False;
}
@@ -466,18 +468,18 @@ static bool api_wkssvc_NetWkstaTransportEnum(pipes_struct *p)
return True;
}
-static bool api_WKSSVC_NETRWKSTATRANSPORTADD(pipes_struct *p)
+static bool api_wkssvc_NetrWkstaTransportAdd(pipes_struct *p)
{
const struct ndr_interface_call *call;
struct ndr_pull *pull;
struct ndr_push *push;
enum ndr_err_code ndr_err;
DATA_BLOB blob;
- struct WKSSVC_NETRWKSTATRANSPORTADD *r;
+ struct wkssvc_NetrWkstaTransportAdd *r;
call = &ndr_table_wkssvc.calls[NDR_WKSSVC_NETRWKSTATRANSPORTADD];
- r = talloc(NULL, struct WKSSVC_NETRWKSTATRANSPORTADD);
+ r = talloc(NULL, struct wkssvc_NetrWkstaTransportAdd);
if (r == NULL) {
return False;
}
@@ -501,9 +503,11 @@ static bool api_WKSSVC_NETRWKSTATRANSPORTADD(pipes_struct *p)
}
if (DEBUGLEVEL >= 10)
- NDR_PRINT_IN_DEBUG(WKSSVC_NETRWKSTATRANSPORTADD, r);
+ NDR_PRINT_IN_DEBUG(wkssvc_NetrWkstaTransportAdd, r);
- r->out.result = _WKSSVC_NETRWKSTATRANSPORTADD(p, r);
+ ZERO_STRUCT(r->out);
+ r->out.parm_err = r->in.parm_err;
+ r->out.result = _wkssvc_NetrWkstaTransportAdd(p, r);
if (p->rng_fault_state) {
talloc_free(r);
@@ -512,7 +516,7 @@ static bool api_WKSSVC_NETRWKSTATRANSPORTADD(pipes_struct *p)
}
if (DEBUGLEVEL >= 10)
- NDR_PRINT_OUT_DEBUG(WKSSVC_NETRWKSTATRANSPORTADD, r);
+ NDR_PRINT_OUT_DEBUG(wkssvc_NetrWkstaTransportAdd, r);
push = ndr_push_init_ctx(r);
if (push == NULL) {
@@ -537,18 +541,18 @@ static bool api_WKSSVC_NETRWKSTATRANSPORTADD(pipes_struct *p)
return True;
}
-static bool api_WKSSVC_NETRWKSTATRANSPORTDEL(pipes_struct *p)
+static bool api_wkssvc_NetrWkstaTransportDel(pipes_struct *p)
{
const struct ndr_interface_call *call;
struct ndr_pull *pull;
struct ndr_push *push;
enum ndr_err_code ndr_err;
DATA_BLOB blob;
- struct WKSSVC_NETRWKSTATRANSPORTDEL *r;
+ struct wkssvc_NetrWkstaTransportDel *r;
call = &ndr_table_wkssvc.calls[NDR_WKSSVC_NETRWKSTATRANSPORTDEL];
- r = talloc(NULL, struct WKSSVC_NETRWKSTATRANSPORTDEL);
+ r = talloc(NULL, struct wkssvc_NetrWkstaTransportDel);
if (r == NULL) {
return False;
}
@@ -572,9 +576,9 @@ static bool api_WKSSVC_NETRWKSTATRANSPORTDEL(pipes_struct *p)
}
if (DEBUGLEVEL >= 10)
- NDR_PRINT_IN_DEBUG(WKSSVC_NETRWKSTATRANSPORTDEL, r);
+ NDR_PRINT_IN_DEBUG(wkssvc_NetrWkstaTransportDel, r);
- r->out.result = _WKSSVC_NETRWKSTATRANSPORTDEL(p, r);
+ r->out.result = _wkssvc_NetrWkstaTransportDel(p, r);
if (p->rng_fault_state) {
talloc_free(r);
@@ -583,7 +587,7 @@ static bool api_WKSSVC_NETRWKSTATRANSPORTDEL(pipes_struct *p)
}
if (DEBUGLEVEL >= 10)
- NDR_PRINT_OUT_DEBUG(WKSSVC_NETRWKSTATRANSPORTDEL, r);
+ NDR_PRINT_OUT_DEBUG(wkssvc_NetrWkstaTransportDel, r);
push = ndr_push_init_ctx(r);
if (push == NULL) {
@@ -608,18 +612,18 @@ static bool api_WKSSVC_NETRWKSTATRANSPORTDEL(pipes_struct *p)
return True;
}
-static bool api_WKSSVC_NETRUSEADD(pipes_struct *p)
+static bool api_wkssvc_NetrUseAdd(pipes_struct *p)
{
const struct ndr_interface_call *call;
struct ndr_pull *pull;
struct ndr_push *push;
enum ndr_err_code ndr_err;
DATA_BLOB blob;
- struct WKSSVC_NETRUSEADD *r;
+ struct wkssvc_NetrUseAdd *r;
call = &ndr_table_wkssvc.calls[NDR_WKSSVC_NETRUSEADD];
- r = talloc(NULL, struct WKSSVC_NETRUSEADD);
+ r = talloc(NULL, struct wkssvc_NetrUseAdd);
if (r == NULL) {
return False;
}
@@ -643,9 +647,11 @@ static bool api_WKSSVC_NETRUSEADD(pipes_struct *p)
}
if (DEBUGLEVEL >= 10)
- NDR_PRINT_IN_DEBUG(WKSSVC_NETRUSEADD, r);
+ NDR_PRINT_IN_DEBUG(wkssvc_NetrUseAdd, r);
- r->out.result = _WKSSVC_NETRUSEADD(p, r);
+ ZERO_STRUCT(r->out);
+ r->out.parm_err = r->in.parm_err;
+ r->out.result = _wkssvc_NetrUseAdd(p, r);
if (p->rng_fault_state) {
talloc_free(r);
@@ -654,7 +660,7 @@ static bool api_WKSSVC_NETRUSEADD(pipes_struct *p)
}
if (DEBUGLEVEL >= 10)
- NDR_PRINT_OUT_DEBUG(WKSSVC_NETRUSEADD, r);
+ NDR_PRINT_OUT_DEBUG(wkssvc_NetrUseAdd, r);
push = ndr_push_init_ctx(r);
if (push == NULL) {
@@ -679,18 +685,18 @@ static bool api_WKSSVC_NETRUSEADD(pipes_struct *p)
return True;
}
-static bool api_WKSSVC_NETRUSEGETINFO(pipes_struct *p)
+static bool api_wkssvc_NetrUseGetInfo(pipes_struct *p)
{
const struct ndr_interface_call *call;
struct ndr_pull *pull;
struct ndr_push *push;
enum ndr_err_code ndr_err;
DATA_BLOB blob;
- struct WKSSVC_NETRUSEGETINFO *r;
+ struct wkssvc_NetrUseGetInfo *r;
call = &ndr_table_wkssvc.calls[NDR_WKSSVC_NETRUSEGETINFO];
- r = talloc(NULL, struct WKSSVC_NETRUSEGETINFO);
+ r = talloc(NULL, struct wkssvc_NetrUseGetInfo);
if (r == NULL) {
return False;
}
@@ -714,9 +720,16 @@ static bool api_WKSSVC_NETRUSEGETINFO(pipes_struct *p)
}
if (DEBUGLEVEL >= 10)
- NDR_PRINT_IN_DEBUG(WKSSVC_NETRUSEGETINFO, r);
+ NDR_PRINT_IN_DEBUG(wkssvc_NetrUseGetInfo, r);
- r->out.result = _WKSSVC_NETRUSEGETINFO(p, r);
+ ZERO_STRUCT(r->out);
+ r->out.ctr = talloc_zero(r, union wkssvc_NetrUseGetInfoCtr);
+ if (r->out.ctr == NULL) {
+ talloc_free(r);
+ return False;
+ }
+
+ r->out.result = _wkssvc_NetrUseGetInfo(p, r);
if (p->rng_fault_state) {
talloc_free(r);
@@ -725,7 +738,7 @@ static bool api_WKSSVC_NETRUSEGETINFO(pipes_struct *p)
}
if (DEBUGLEVEL >= 10)
- NDR_PRINT_OUT_DEBUG(WKSSVC_NETRUSEGETINFO, r);
+ NDR_PRINT_OUT_DEBUG(wkssvc_NetrUseGetInfo, r);
push = ndr_push_init_ctx(r);
if (push == NULL) {
@@ -750,18 +763,18 @@ static bool api_WKSSVC_NETRUSEGETINFO(pipes_struct *p)
return True;
}
-static bool api_WKSSVC_NETRUSEDEL(pipes_struct *p)
+static bool api_wkssvc_NetrUseDel(pipes_struct *p)
{
const struct ndr_interface_call *call;
struct ndr_pull *pull;
struct ndr_push *push;
enum ndr_err_code ndr_err;
DATA_BLOB blob;
- struct WKSSVC_NETRUSEDEL *r;
+ struct wkssvc_NetrUseDel *r;
call = &ndr_table_wkssvc.calls[NDR_WKSSVC_NETRUSEDEL];
- r = talloc(NULL, struct WKSSVC_NETRUSEDEL);
+ r = talloc(NULL, struct wkssvc_NetrUseDel);
if (r == NULL) {
return False;
}
@@ -785,9 +798,9 @@ static bool api_WKSSVC_NETRUSEDEL(pipes_struct *p)
}
if (DEBUGLEVEL >= 10)
- NDR_PRINT_IN_DEBUG(WKSSVC_NETRUSEDEL, r);
+ NDR_PRINT_IN_DEBUG(wkssvc_NetrUseDel, r);
- r->out.result = _WKSSVC_NETRUSEDEL(p, r);
+ r->out.result = _wkssvc_NetrUseDel(p, r);
if (p->rng_fault_state) {
talloc_free(r);
@@ -796,7 +809,7 @@ static bool api_WKSSVC_NETRUSEDEL(pipes_struct *p)
}
if (DEBUGLEVEL >= 10)
- NDR_PRINT_OUT_DEBUG(WKSSVC_NETRUSEDEL, r);
+ NDR_PRINT_OUT_DEBUG(wkssvc_NetrUseDel, r);
push = ndr_push_init_ctx(r);
if (push == NULL) {
@@ -821,18 +834,18 @@ static bool api_WKSSVC_NETRUSEDEL(pipes_struct *p)
return True;
}
-static bool api_WKSSVC_NETRUSEENUM(pipes_struct *p)
+static bool api_wkssvc_NetrUseEnum(pipes_struct *p)
{
const struct ndr_interface_call *call;
struct ndr_pull *pull;
struct ndr_push *push;
enum ndr_err_code ndr_err;
DATA_BLOB blob;
- struct WKSSVC_NETRUSEENUM *r;
+ struct wkssvc_NetrUseEnum *r;
call = &ndr_table_wkssvc.calls[NDR_WKSSVC_NETRUSEENUM];
- r = talloc(NULL, struct WKSSVC_NETRUSEENUM);
+ r = talloc(NULL, struct wkssvc_NetrUseEnum);
if (r == NULL) {
return False;
}
@@ -856,9 +869,18 @@ static bool api_WKSSVC_NETRUSEENUM(pipes_struct *p)
}
if (DEBUGLEVEL >= 10)
- NDR_PRINT_IN_DEBUG(WKSSVC_NETRUSEENUM, r);
+ NDR_PRINT_IN_DEBUG(wkssvc_NetrUseEnum, r);
- r->out.result = _WKSSVC_NETRUSEENUM(p, r);
+ ZERO_STRUCT(r->out);
+ r->out.info = r->in.info;
+ r->out.entries_read = talloc_zero(r, uint32_t);
+ if (r->out.entries_read == NULL) {
+ talloc_free(r);
+ return False;
+ }
+
+ r->out.resume_handle = r->in.resume_handle;
+ r->out.result = _wkssvc_NetrUseEnum(p, r);
if (p->rng_fault_state) {
talloc_free(r);
@@ -867,7 +889,7 @@ static bool api_WKSSVC_NETRUSEENUM(pipes_struct *p)
}
if (DEBUGLEVEL >= 10)
- NDR_PRINT_OUT_DEBUG(WKSSVC_NETRUSEENUM, r);
+ NDR_PRINT_OUT_DEBUG(wkssvc_NetrUseEnum, r);
push = ndr_push_init_ctx(r);
if (push == NULL) {
@@ -892,18 +914,18 @@ static bool api_WKSSVC_NETRUSEENUM(pipes_struct *p)
return True;
}
-static bool api_WKSSVC_NETRMESSAGEBUFFERSEND(pipes_struct *p)
+static bool api_wkssvc_NetrMessageBufferSend(pipes_struct *p)
{
const struct ndr_interface_call *call;
struct ndr_pull *pull;
struct ndr_push *push;
enum ndr_err_code ndr_err;
DATA_BLOB blob;
- struct WKSSVC_NETRMESSAGEBUFFERSEND *r;
+ struct wkssvc_NetrMessageBufferSend *r;
call = &ndr_table_wkssvc.calls[NDR_WKSSVC_NETRMESSAGEBUFFERSEND];
- r = talloc(NULL, struct WKSSVC_NETRMESSAGEBUFFERSEND);
+ r = talloc(NULL, struct wkssvc_NetrMessageBufferSend);
if (r == NULL) {
return False;
}
@@ -927,9 +949,9 @@ static bool api_WKSSVC_NETRMESSAGEBUFFERSEND(pipes_struct *p)
}
if (DEBUGLEVEL >= 10)
- NDR_PRINT_IN_DEBUG(WKSSVC_NETRMESSAGEBUFFERSEND, r);
+ NDR_PRINT_IN_DEBUG(wkssvc_NetrMessageBufferSend, r);
- r->out.result = _WKSSVC_NETRMESSAGEBUFFERSEND(p, r);
+ r->out.result = _wkssvc_NetrMessageBufferSend(p, r);
if (p->rng_fault_state) {
talloc_free(r);
@@ -938,7 +960,7 @@ static bool api_WKSSVC_NETRMESSAGEBUFFERSEND(pipes_struct *p)
}
if (DEBUGLEVEL >= 10)
- NDR_PRINT_OUT_DEBUG(WKSSVC_NETRMESSAGEBUFFERSEND, r);
+ NDR_PRINT_OUT_DEBUG(wkssvc_NetrMessageBufferSend, r);
push = ndr_push_init_ctx(r);
if (push == NULL) {
@@ -963,18 +985,18 @@ static bool api_WKSSVC_NETRMESSAGEBUFFERSEND(pipes_struct *p)
return True;
}
-static bool api_WKSSVC_NETRWORKSTATIONSTATISTICSGET(pipes_struct *p)
+static bool api_wkssvc_NetrWorkstationStatisticsGet(pipes_struct *p)
{
const struct ndr_interface_call *call;
struct ndr_pull *pull;
struct ndr_push *push;
enum ndr_err_code ndr_err;
DATA_BLOB blob;
- struct WKSSVC_NETRWORKSTATIONSTATISTICSGET *r;
+ struct wkssvc_NetrWorkstationStatisticsGet *r;
call = &ndr_table_wkssvc.calls[NDR_WKSSVC_NETRWORKSTATIONSTATISTICSGET];
- r = talloc(NULL, struct WKSSVC_NETRWORKSTATIONSTATISTICSGET);
+ r = talloc(NULL, struct wkssvc_NetrWorkstationStatisticsGet);
if (r == NULL) {
return False;
}
@@ -998,9 +1020,16 @@ static bool api_WKSSVC_NETRWORKSTATIONSTATISTICSGET(pipes_struct *p)
}
if (DEBUGLEVEL >= 10)
- NDR_PRINT_IN_DEBUG(WKSSVC_NETRWORKSTATIONSTATISTICSGET, r);
+ NDR_PRINT_IN_DEBUG(wkssvc_NetrWorkstationStatisticsGet, r);
- r->out.result = _WKSSVC_NETRWORKSTATIONSTATISTICSGET(p, r);
+ ZERO_STRUCT(r->out);
+ r->out.info = talloc_zero(r, struct wkssvc_NetrWorkstationStatistics *);
+ if (r->out.info == NULL) {
+ talloc_free(r);
+ return False;
+ }
+
+ r->out.result = _wkssvc_NetrWorkstationStatisticsGet(p, r);
if (p->rng_fault_state) {
talloc_free(r);
@@ -1009,7 +1038,7 @@ static bool api_WKSSVC_NETRWORKSTATIONSTATISTICSGET(pipes_struct *p)
}
if (DEBUGLEVEL >= 10)
- NDR_PRINT_OUT_DEBUG(WKSSVC_NETRWORKSTATIONSTATISTICSGET, r);
+ NDR_PRINT_OUT_DEBUG(wkssvc_NetrWorkstationStatisticsGet, r);
push = ndr_push_init_ctx(r);
if (push == NULL) {
@@ -1034,18 +1063,18 @@ static bool api_WKSSVC_NETRWORKSTATIONSTATISTICSGET(pipes_struct *p)
return True;
}
-static bool api_WKSSVC_NETRLOGONDOMAINNAMEADD(pipes_struct *p)
+static bool api_wkssvc_NetrLogonDomainNameAdd(pipes_struct *p)
{
const struct ndr_interface_call *call;
struct ndr_pull *pull;
struct ndr_push *push;
enum ndr_err_code ndr_err;
DATA_BLOB blob;
- struct WKSSVC_NETRLOGONDOMAINNAMEADD *r;
+ struct wkssvc_NetrLogonDomainNameAdd *r;
call = &ndr_table_wkssvc.calls[NDR_WKSSVC_NETRLOGONDOMAINNAMEADD];
- r = talloc(NULL, struct WKSSVC_NETRLOGONDOMAINNAMEADD);
+ r = talloc(NULL, struct wkssvc_NetrLogonDomainNameAdd);
if (r == NULL) {
return False;
}
@@ -1069,9 +1098,9 @@ static bool api_WKSSVC_NETRLOGONDOMAINNAMEADD(pipes_struct *p)
}
if (DEBUGLEVEL >= 10)
- NDR_PRINT_IN_DEBUG(WKSSVC_NETRLOGONDOMAINNAMEADD, r);
+ NDR_PRINT_IN_DEBUG(wkssvc_NetrLogonDomainNameAdd, r);
- r->out.result = _WKSSVC_NETRLOGONDOMAINNAMEADD(p, r);
+ r->out.result = _wkssvc_NetrLogonDomainNameAdd(p, r);
if (p->rng_fault_state) {
talloc_free(r);
@@ -1080,7 +1109,7 @@ static bool api_WKSSVC_NETRLOGONDOMAINNAMEADD(pipes_struct *p)
}
if (DEBUGLEVEL >= 10)
- NDR_PRINT_OUT_DEBUG(WKSSVC_NETRLOGONDOMAINNAMEADD, r);
+ NDR_PRINT_OUT_DEBUG(wkssvc_NetrLogonDomainNameAdd, r);
push = ndr_push_init_ctx(r);
if (push == NULL) {
@@ -1105,18 +1134,18 @@ static bool api_WKSSVC_NETRLOGONDOMAINNAMEADD(pipes_struct *p)
return True;
}
-static bool api_WKSSVC_NETRLOGONDOMAINNAMEDEL(pipes_struct *p)
+static bool api_wkssvc_NetrLogonDomainNameDel(pipes_struct *p)
{
const struct ndr_interface_call *call;
struct ndr_pull *pull;
struct ndr_push *push;
enum ndr_err_code ndr_err;
DATA_BLOB blob;
- struct WKSSVC_NETRLOGONDOMAINNAMEDEL *r;
+ struct wkssvc_NetrLogonDomainNameDel *r;
call = &ndr_table_wkssvc.calls[NDR_WKSSVC_NETRLOGONDOMAINNAMEDEL];
- r = talloc(NULL, struct WKSSVC_NETRLOGONDOMAINNAMEDEL);
+ r = talloc(NULL, struct wkssvc_NetrLogonDomainNameDel);
if (r == NULL) {
return False;
}
@@ -1140,9 +1169,9 @@ static bool api_WKSSVC_NETRLOGONDOMAINNAMEDEL(pipes_struct *p)
}
if (DEBUGLEVEL >= 10)
- NDR_PRINT_IN_DEBUG(WKSSVC_NETRLOGONDOMAINNAMEDEL, r);
+ NDR_PRINT_IN_DEBUG(wkssvc_NetrLogonDomainNameDel, r);
- r->out.result = _WKSSVC_NETRLOGONDOMAINNAMEDEL(p, r);
+ r->out.result = _wkssvc_NetrLogonDomainNameDel(p, r);
if (p->rng_fault_state) {
talloc_free(r);
@@ -1151,7 +1180,7 @@ static bool api_WKSSVC_NETRLOGONDOMAINNAMEDEL(pipes_struct *p)
}
if (DEBUGLEVEL >= 10)
- NDR_PRINT_OUT_DEBUG(WKSSVC_NETRLOGONDOMAINNAMEDEL, r);
+ NDR_PRINT_OUT_DEBUG(wkssvc_NetrLogonDomainNameDel, r);
push = ndr_push_init_ctx(r);
if (push == NULL) {
@@ -1176,18 +1205,18 @@ static bool api_WKSSVC_NETRLOGONDOMAINNAMEDEL(pipes_struct *p)
return True;
}
-static bool api_WKSSVC_NETRJOINDOMAIN(pipes_struct *p)
+static bool api_wkssvc_NetrJoinDomain(pipes_struct *p)
{
const struct ndr_interface_call *call;
struct ndr_pull *pull;
struct ndr_push *push;
enum ndr_err_code ndr_err;
DATA_BLOB blob;
- struct WKSSVC_NETRJOINDOMAIN *r;
+ struct wkssvc_NetrJoinDomain *r;
call = &ndr_table_wkssvc.calls[NDR_WKSSVC_NETRJOINDOMAIN];
- r = talloc(NULL, struct WKSSVC_NETRJOINDOMAIN);
+ r = talloc(NULL, struct wkssvc_NetrJoinDomain);
if (r == NULL) {
return False;
}
@@ -1211,9 +1240,9 @@ static bool api_WKSSVC_NETRJOINDOMAIN(pipes_struct *p)
}
if (DEBUGLEVEL >= 10)
- NDR_PRINT_IN_DEBUG(WKSSVC_NETRJOINDOMAIN, r);
+ NDR_PRINT_IN_DEBUG(wkssvc_NetrJoinDomain, r);
- r->out.result = _WKSSVC_NETRJOINDOMAIN(p, r);
+ r->out.result = _wkssvc_NetrJoinDomain(p, r);
if (p->rng_fault_state) {
talloc_free(r);
@@ -1222,7 +1251,7 @@ static bool api_WKSSVC_NETRJOINDOMAIN(pipes_struct *p)
}
if (DEBUGLEVEL >= 10)
- NDR_PRINT_OUT_DEBUG(WKSSVC_NETRJOINDOMAIN, r);
+ NDR_PRINT_OUT_DEBUG(wkssvc_NetrJoinDomain, r);
push = ndr_push_init_ctx(r);
if (push == NULL) {
@@ -1247,18 +1276,18 @@ static bool api_WKSSVC_NETRJOINDOMAIN(pipes_struct *p)
return True;
}
-static bool api_WKSSVC_NETRUNJOINDOMAIN(pipes_struct *p)
+static bool api_wkssvc_NetrUnjoinDomain(pipes_struct *p)
{
const struct ndr_interface_call *call;
struct ndr_pull *pull;
struct ndr_push *push;
enum ndr_err_code ndr_err;
DATA_BLOB blob;
- struct WKSSVC_NETRUNJOINDOMAIN *r;
+ struct wkssvc_NetrUnjoinDomain *r;
call = &ndr_table_wkssvc.calls[NDR_WKSSVC_NETRUNJOINDOMAIN];
- r = talloc(NULL, struct WKSSVC_NETRUNJOINDOMAIN);
+ r = talloc(NULL, struct wkssvc_NetrUnjoinDomain);
if (r == NULL) {
return False;
}
@@ -1282,9 +1311,9 @@ static bool api_WKSSVC_NETRUNJOINDOMAIN(pipes_struct *p)
}
if (DEBUGLEVEL >= 10)
- NDR_PRINT_IN_DEBUG(WKSSVC_NETRUNJOINDOMAIN, r);
+ NDR_PRINT_IN_DEBUG(wkssvc_NetrUnjoinDomain, r);
- r->out.result = _WKSSVC_NETRUNJOINDOMAIN(p, r);
+ r->out.result = _wkssvc_NetrUnjoinDomain(p, r);
if (p->rng_fault_state) {
talloc_free(r);
@@ -1293,7 +1322,7 @@ static bool api_WKSSVC_NETRUNJOINDOMAIN(pipes_struct *p)
}
if (DEBUGLEVEL >= 10)
- NDR_PRINT_OUT_DEBUG(WKSSVC_NETRUNJOINDOMAIN, r);
+ NDR_PRINT_OUT_DEBUG(wkssvc_NetrUnjoinDomain, r);
push = ndr_push_init_ctx(r);
if (push == NULL) {
@@ -1318,18 +1347,18 @@ static bool api_WKSSVC_NETRUNJOINDOMAIN(pipes_struct *p)
return True;
}
-static bool api_WKSSVC_NETRRENAMEMACHINEINDOMAIN(pipes_struct *p)
+static bool api_wkssvc_NetrRenameMachineInDomain(pipes_struct *p)
{
const struct ndr_interface_call *call;
struct ndr_pull *pull;
struct ndr_push *push;
enum ndr_err_code ndr_err;
DATA_BLOB blob;
- struct WKSSVC_NETRRENAMEMACHINEINDOMAIN *r;
+ struct wkssvc_NetrRenameMachineInDomain *r;
call = &ndr_table_wkssvc.calls[NDR_WKSSVC_NETRRENAMEMACHINEINDOMAIN];
- r = talloc(NULL, struct WKSSVC_NETRRENAMEMACHINEINDOMAIN);
+ r = talloc(NULL, struct wkssvc_NetrRenameMachineInDomain);
if (r == NULL) {
return False;
}
@@ -1353,9 +1382,9 @@ static bool api_WKSSVC_NETRRENAMEMACHINEINDOMAIN(pipes_struct *p)
}
if (DEBUGLEVEL >= 10)
- NDR_PRINT_IN_DEBUG(WKSSVC_NETRRENAMEMACHINEINDOMAIN, r);
+ NDR_PRINT_IN_DEBUG(wkssvc_NetrRenameMachineInDomain, r);
- r->out.result = _WKSSVC_NETRRENAMEMACHINEINDOMAIN(p, r);
+ r->out.result = _wkssvc_NetrRenameMachineInDomain(p, r);
if (p->rng_fault_state) {
talloc_free(r);
@@ -1364,7 +1393,7 @@ static bool api_WKSSVC_NETRRENAMEMACHINEINDOMAIN(pipes_struct *p)
}
if (DEBUGLEVEL >= 10)
- NDR_PRINT_OUT_DEBUG(WKSSVC_NETRRENAMEMACHINEINDOMAIN, r);
+ NDR_PRINT_OUT_DEBUG(wkssvc_NetrRenameMachineInDomain, r);
push = ndr_push_init_ctx(r);
if (push == NULL) {
@@ -1389,18 +1418,18 @@ static bool api_WKSSVC_NETRRENAMEMACHINEINDOMAIN(pipes_struct *p)
return True;
}
-static bool api_WKSSVC_NETRVALIDATENAME(pipes_struct *p)
+static bool api_wkssvc_NetrValidateName(pipes_struct *p)
{
const struct ndr_interface_call *call;
struct ndr_pull *pull;
struct ndr_push *push;
enum ndr_err_code ndr_err;
DATA_BLOB blob;
- struct WKSSVC_NETRVALIDATENAME *r;
+ struct wkssvc_NetrValidateName *r;
call = &ndr_table_wkssvc.calls[NDR_WKSSVC_NETRVALIDATENAME];
- r = talloc(NULL, struct WKSSVC_NETRVALIDATENAME);
+ r = talloc(NULL, struct wkssvc_NetrValidateName);
if (r == NULL) {
return False;
}
@@ -1424,9 +1453,9 @@ static bool api_WKSSVC_NETRVALIDATENAME(pipes_struct *p)
}
if (DEBUGLEVEL >= 10)
- NDR_PRINT_IN_DEBUG(WKSSVC_NETRVALIDATENAME, r);
+ NDR_PRINT_IN_DEBUG(wkssvc_NetrValidateName, r);
- r->out.result = _WKSSVC_NETRVALIDATENAME(p, r);
+ r->out.result = _wkssvc_NetrValidateName(p, r);
if (p->rng_fault_state) {
talloc_free(r);
@@ -1435,7 +1464,7 @@ static bool api_WKSSVC_NETRVALIDATENAME(pipes_struct *p)
}
if (DEBUGLEVEL >= 10)
- NDR_PRINT_OUT_DEBUG(WKSSVC_NETRVALIDATENAME, r);
+ NDR_PRINT_OUT_DEBUG(wkssvc_NetrValidateName, r);
push = ndr_push_init_ctx(r);
if (push == NULL) {
@@ -1460,18 +1489,18 @@ static bool api_WKSSVC_NETRVALIDATENAME(pipes_struct *p)
return True;
}
-static bool api_WKSSVC_NETRGETJOININFORMATION(pipes_struct *p)
+static bool api_wkssvc_NetrGetJoinInformation(pipes_struct *p)
{
const struct ndr_interface_call *call;
struct ndr_pull *pull;
struct ndr_push *push;
enum ndr_err_code ndr_err;
DATA_BLOB blob;
- struct WKSSVC_NETRGETJOININFORMATION *r;
+ struct wkssvc_NetrGetJoinInformation *r;
call = &ndr_table_wkssvc.calls[NDR_WKSSVC_NETRGETJOININFORMATION];
- r = talloc(NULL, struct WKSSVC_NETRGETJOININFORMATION);
+ r = talloc(NULL, struct wkssvc_NetrGetJoinInformation);
if (r == NULL) {
return False;
}
@@ -1495,9 +1524,17 @@ static bool api_WKSSVC_NETRGETJOININFORMATION(pipes_struct *p)
}
if (DEBUGLEVEL >= 10)
- NDR_PRINT_IN_DEBUG(WKSSVC_NETRGETJOININFORMATION, r);
+ NDR_PRINT_IN_DEBUG(wkssvc_NetrGetJoinInformation, r);
- r->out.result = _WKSSVC_NETRGETJOININFORMATION(p, r);
+ ZERO_STRUCT(r->out);
+ r->out.name_buffer = r->in.name_buffer;
+ r->out.name_type = talloc_zero(r, enum wkssvc_NetJoinStatus);
+ if (r->out.name_type == NULL) {
+ talloc_free(r);
+ return False;
+ }
+
+ r->out.result = _wkssvc_NetrGetJoinInformation(p, r);
if (p->rng_fault_state) {
talloc_free(r);
@@ -1506,7 +1543,7 @@ static bool api_WKSSVC_NETRGETJOININFORMATION(pipes_struct *p)
}
if (DEBUGLEVEL >= 10)
- NDR_PRINT_OUT_DEBUG(WKSSVC_NETRGETJOININFORMATION, r);
+ NDR_PRINT_OUT_DEBUG(wkssvc_NetrGetJoinInformation, r);
push = ndr_push_init_ctx(r);
if (push == NULL) {
@@ -1531,18 +1568,18 @@ static bool api_WKSSVC_NETRGETJOININFORMATION(pipes_struct *p)
return True;
}
-static bool api_WKSSVC_NETRGETJOINABLEOUS(pipes_struct *p)
+static bool api_wkssvc_NetrGetJoinableOus(pipes_struct *p)
{
const struct ndr_interface_call *call;
struct ndr_pull *pull;
struct ndr_push *push;
enum ndr_err_code ndr_err;
DATA_BLOB blob;
- struct WKSSVC_NETRGETJOINABLEOUS *r;
+ struct wkssvc_NetrGetJoinableOus *r;
call = &ndr_table_wkssvc.calls[NDR_WKSSVC_NETRGETJOINABLEOUS];
- r = talloc(NULL, struct WKSSVC_NETRGETJOINABLEOUS);
+ r = talloc(NULL, struct wkssvc_NetrGetJoinableOus);
if (r == NULL) {
return False;
}
@@ -1566,9 +1603,17 @@ static bool api_WKSSVC_NETRGETJOINABLEOUS(pipes_struct *p)
}
if (DEBUGLEVEL >= 10)
- NDR_PRINT_IN_DEBUG(WKSSVC_NETRGETJOINABLEOUS, r);
+ NDR_PRINT_IN_DEBUG(wkssvc_NetrGetJoinableOus, r);
- r->out.result = _WKSSVC_NETRGETJOINABLEOUS(p, r);
+ ZERO_STRUCT(r->out);
+ r->out.num_ous = r->in.num_ous;
+ r->out.ous = talloc_zero_array(r, const char **, *r->out.num_ous);
+ if (r->out.ous == NULL) {
+ talloc_free(r);
+ return False;
+ }
+
+ r->out.result = _wkssvc_NetrGetJoinableOus(p, r);
if (p->rng_fault_state) {
talloc_free(r);
@@ -1577,7 +1622,7 @@ static bool api_WKSSVC_NETRGETJOINABLEOUS(pipes_struct *p)
}
if (DEBUGLEVEL >= 10)
- NDR_PRINT_OUT_DEBUG(WKSSVC_NETRGETJOINABLEOUS, r);
+ NDR_PRINT_OUT_DEBUG(wkssvc_NetrGetJoinableOus, r);
push = ndr_push_init_ctx(r);
if (push == NULL) {
@@ -1815,18 +1860,18 @@ static bool api_wkssvc_NetrRenameMachineInDomain2(pipes_struct *p)
return True;
}
-static bool api_WKSSVC_NETRVALIDATENAME2(pipes_struct *p)
+static bool api_wkssvc_NetrValidateName2(pipes_struct *p)
{
const struct ndr_interface_call *call;
struct ndr_pull *pull;
struct ndr_push *push;
enum ndr_err_code ndr_err;
DATA_BLOB blob;
- struct WKSSVC_NETRVALIDATENAME2 *r;
+ struct wkssvc_NetrValidateName2 *r;
call = &ndr_table_wkssvc.calls[NDR_WKSSVC_NETRVALIDATENAME2];
- r = talloc(NULL, struct WKSSVC_NETRVALIDATENAME2);
+ r = talloc(NULL, struct wkssvc_NetrValidateName2);
if (r == NULL) {
return False;
}
@@ -1850,9 +1895,9 @@ static bool api_WKSSVC_NETRVALIDATENAME2(pipes_struct *p)
}
if (DEBUGLEVEL >= 10)
- NDR_PRINT_IN_DEBUG(WKSSVC_NETRVALIDATENAME2, r);
+ NDR_PRINT_IN_DEBUG(wkssvc_NetrValidateName2, r);
- r->out.result = _WKSSVC_NETRVALIDATENAME2(p, r);
+ r->out.result = _wkssvc_NetrValidateName2(p, r);
if (p->rng_fault_state) {
talloc_free(r);
@@ -1861,7 +1906,7 @@ static bool api_WKSSVC_NETRVALIDATENAME2(pipes_struct *p)
}
if (DEBUGLEVEL >= 10)
- NDR_PRINT_OUT_DEBUG(WKSSVC_NETRVALIDATENAME2, r);
+ NDR_PRINT_OUT_DEBUG(wkssvc_NetrValidateName2, r);
push = ndr_push_init_ctx(r);
if (push == NULL) {
@@ -1886,18 +1931,18 @@ static bool api_WKSSVC_NETRVALIDATENAME2(pipes_struct *p)
return True;
}
-static bool api_WKSSVC_NETRGETJOINABLEOUS2(pipes_struct *p)
+static bool api_wkssvc_NetrGetJoinableOus2(pipes_struct *p)
{
const struct ndr_interface_call *call;
struct ndr_pull *pull;
struct ndr_push *push;
enum ndr_err_code ndr_err;
DATA_BLOB blob;
- struct WKSSVC_NETRGETJOINABLEOUS2 *r;
+ struct wkssvc_NetrGetJoinableOus2 *r;
call = &ndr_table_wkssvc.calls[NDR_WKSSVC_NETRGETJOINABLEOUS2];
- r = talloc(NULL, struct WKSSVC_NETRGETJOINABLEOUS2);
+ r = talloc(NULL, struct wkssvc_NetrGetJoinableOus2);
if (r == NULL) {
return False;
}
@@ -1921,9 +1966,17 @@ static bool api_WKSSVC_NETRGETJOINABLEOUS2(pipes_struct *p)
}
if (DEBUGLEVEL >= 10)
- NDR_PRINT_IN_DEBUG(WKSSVC_NETRGETJOINABLEOUS2, r);
+ NDR_PRINT_IN_DEBUG(wkssvc_NetrGetJoinableOus2, r);
+
+ ZERO_STRUCT(r->out);
+ r->out.num_ous = r->in.num_ous;
+ r->out.ous = talloc_zero_array(r, const char **, *r->out.num_ous);
+ if (r->out.ous == NULL) {
+ talloc_free(r);
+ return False;
+ }
- r->out.result = _WKSSVC_NETRGETJOINABLEOUS2(p, r);
+ r->out.result = _wkssvc_NetrGetJoinableOus2(p, r);
if (p->rng_fault_state) {
talloc_free(r);
@@ -1932,7 +1985,7 @@ static bool api_WKSSVC_NETRGETJOINABLEOUS2(pipes_struct *p)
}
if (DEBUGLEVEL >= 10)
- NDR_PRINT_OUT_DEBUG(WKSSVC_NETRGETJOINABLEOUS2, r);
+ NDR_PRINT_OUT_DEBUG(wkssvc_NetrGetJoinableOus2, r);
push = ndr_push_init_ctx(r);
if (push == NULL) {
@@ -2099,18 +2152,18 @@ static bool api_wkssvc_NetrRemoveAlternateComputerName(pipes_struct *p)
return True;
}
-static bool api_WKSSVC_NETRSETPRIMARYCOMPUTERNAME(pipes_struct *p)
+static bool api_wkssvc_NetrSetPrimaryComputername(pipes_struct *p)
{
const struct ndr_interface_call *call;
struct ndr_pull *pull;
struct ndr_push *push;
enum ndr_err_code ndr_err;
DATA_BLOB blob;
- struct WKSSVC_NETRSETPRIMARYCOMPUTERNAME *r;
+ struct wkssvc_NetrSetPrimaryComputername *r;
call = &ndr_table_wkssvc.calls[NDR_WKSSVC_NETRSETPRIMARYCOMPUTERNAME];
- r = talloc(NULL, struct WKSSVC_NETRSETPRIMARYCOMPUTERNAME);
+ r = talloc(NULL, struct wkssvc_NetrSetPrimaryComputername);
if (r == NULL) {
return False;
}
@@ -2134,9 +2187,9 @@ static bool api_WKSSVC_NETRSETPRIMARYCOMPUTERNAME(pipes_struct *p)
}
if (DEBUGLEVEL >= 10)
- NDR_PRINT_IN_DEBUG(WKSSVC_NETRSETPRIMARYCOMPUTERNAME, r);
+ NDR_PRINT_IN_DEBUG(wkssvc_NetrSetPrimaryComputername, r);
- r->out.result = _WKSSVC_NETRSETPRIMARYCOMPUTERNAME(p, r);
+ r->out.result = _wkssvc_NetrSetPrimaryComputername(p, r);
if (p->rng_fault_state) {
talloc_free(r);
@@ -2145,7 +2198,7 @@ static bool api_WKSSVC_NETRSETPRIMARYCOMPUTERNAME(pipes_struct *p)
}
if (DEBUGLEVEL >= 10)
- NDR_PRINT_OUT_DEBUG(WKSSVC_NETRSETPRIMARYCOMPUTERNAME, r);
+ NDR_PRINT_OUT_DEBUG(wkssvc_NetrSetPrimaryComputername, r);
push = ndr_push_init_ctx(r);
if (push == NULL) {
@@ -2170,18 +2223,18 @@ static bool api_WKSSVC_NETRSETPRIMARYCOMPUTERNAME(pipes_struct *p)
return True;
}
-static bool api_WKSSVC_NETRENUMERATECOMPUTERNAMES(pipes_struct *p)
+static bool api_wkssvc_NetrEnumerateComputerNames(pipes_struct *p)
{
const struct ndr_interface_call *call;
struct ndr_pull *pull;
struct ndr_push *push;
enum ndr_err_code ndr_err;
DATA_BLOB blob;
- struct WKSSVC_NETRENUMERATECOMPUTERNAMES *r;
+ struct wkssvc_NetrEnumerateComputerNames *r;
call = &ndr_table_wkssvc.calls[NDR_WKSSVC_NETRENUMERATECOMPUTERNAMES];
- r = talloc(NULL, struct WKSSVC_NETRENUMERATECOMPUTERNAMES);
+ r = talloc(NULL, struct wkssvc_NetrEnumerateComputerNames);
if (r == NULL) {
return False;
}
@@ -2205,9 +2258,16 @@ static bool api_WKSSVC_NETRENUMERATECOMPUTERNAMES(pipes_struct *p)
}
if (DEBUGLEVEL >= 10)
- NDR_PRINT_IN_DEBUG(WKSSVC_NETRENUMERATECOMPUTERNAMES, r);
+ NDR_PRINT_IN_DEBUG(wkssvc_NetrEnumerateComputerNames, r);
+
+ ZERO_STRUCT(r->out);
+ r->out.ctr = talloc_zero(r, struct wkssvc_ComputerNamesCtr *);
+ if (r->out.ctr == NULL) {
+ talloc_free(r);
+ return False;
+ }
- r->out.result = _WKSSVC_NETRENUMERATECOMPUTERNAMES(p, r);
+ r->out.result = _wkssvc_NetrEnumerateComputerNames(p, r);
if (p->rng_fault_state) {
talloc_free(r);
@@ -2216,7 +2276,7 @@ static bool api_WKSSVC_NETRENUMERATECOMPUTERNAMES(pipes_struct *p)
}
if (DEBUGLEVEL >= 10)
- NDR_PRINT_OUT_DEBUG(WKSSVC_NETRENUMERATECOMPUTERNAMES, r);
+ NDR_PRINT_OUT_DEBUG(wkssvc_NetrEnumerateComputerNames, r);
push = ndr_push_init_ctx(r);
if (push == NULL) {
@@ -2248,34 +2308,34 @@ static struct api_struct api_wkssvc_cmds[] =
{"WKSSVC_NETWKSTAGETINFO", NDR_WKSSVC_NETWKSTAGETINFO, api_wkssvc_NetWkstaGetInfo},
{"WKSSVC_NETWKSTASETINFO", NDR_WKSSVC_NETWKSTASETINFO, api_wkssvc_NetWkstaSetInfo},
{"WKSSVC_NETWKSTAENUMUSERS", NDR_WKSSVC_NETWKSTAENUMUSERS, api_wkssvc_NetWkstaEnumUsers},
- {"WKSSVC_NETRWKSTAUSERGETINFO", NDR_WKSSVC_NETRWKSTAUSERGETINFO, api_WKSSVC_NETRWKSTAUSERGETINFO},
- {"WKSSVC_NETRWKSTAUSERSETINFO", NDR_WKSSVC_NETRWKSTAUSERSETINFO, api_WKSSVC_NETRWKSTAUSERSETINFO},
+ {"WKSSVC_NETRWKSTAUSERGETINFO", NDR_WKSSVC_NETRWKSTAUSERGETINFO, api_wkssvc_NetrWkstaUserGetInfo},
+ {"WKSSVC_NETRWKSTAUSERSETINFO", NDR_WKSSVC_NETRWKSTAUSERSETINFO, api_wkssvc_NetrWkstaUserSetInfo},
{"WKSSVC_NETWKSTATRANSPORTENUM", NDR_WKSSVC_NETWKSTATRANSPORTENUM, api_wkssvc_NetWkstaTransportEnum},
- {"WKSSVC_NETRWKSTATRANSPORTADD", NDR_WKSSVC_NETRWKSTATRANSPORTADD, api_WKSSVC_NETRWKSTATRANSPORTADD},
- {"WKSSVC_NETRWKSTATRANSPORTDEL", NDR_WKSSVC_NETRWKSTATRANSPORTDEL, api_WKSSVC_NETRWKSTATRANSPORTDEL},
- {"WKSSVC_NETRUSEADD", NDR_WKSSVC_NETRUSEADD, api_WKSSVC_NETRUSEADD},
- {"WKSSVC_NETRUSEGETINFO", NDR_WKSSVC_NETRUSEGETINFO, api_WKSSVC_NETRUSEGETINFO},
- {"WKSSVC_NETRUSEDEL", NDR_WKSSVC_NETRUSEDEL, api_WKSSVC_NETRUSEDEL},
- {"WKSSVC_NETRUSEENUM", NDR_WKSSVC_NETRUSEENUM, api_WKSSVC_NETRUSEENUM},
- {"WKSSVC_NETRMESSAGEBUFFERSEND", NDR_WKSSVC_NETRMESSAGEBUFFERSEND, api_WKSSVC_NETRMESSAGEBUFFERSEND},
- {"WKSSVC_NETRWORKSTATIONSTATISTICSGET", NDR_WKSSVC_NETRWORKSTATIONSTATISTICSGET, api_WKSSVC_NETRWORKSTATIONSTATISTICSGET},
- {"WKSSVC_NETRLOGONDOMAINNAMEADD", NDR_WKSSVC_NETRLOGONDOMAINNAMEADD, api_WKSSVC_NETRLOGONDOMAINNAMEADD},
- {"WKSSVC_NETRLOGONDOMAINNAMEDEL", NDR_WKSSVC_NETRLOGONDOMAINNAMEDEL, api_WKSSVC_NETRLOGONDOMAINNAMEDEL},
- {"WKSSVC_NETRJOINDOMAIN", NDR_WKSSVC_NETRJOINDOMAIN, api_WKSSVC_NETRJOINDOMAIN},
- {"WKSSVC_NETRUNJOINDOMAIN", NDR_WKSSVC_NETRUNJOINDOMAIN, api_WKSSVC_NETRUNJOINDOMAIN},
- {"WKSSVC_NETRRENAMEMACHINEINDOMAIN", NDR_WKSSVC_NETRRENAMEMACHINEINDOMAIN, api_WKSSVC_NETRRENAMEMACHINEINDOMAIN},
- {"WKSSVC_NETRVALIDATENAME", NDR_WKSSVC_NETRVALIDATENAME, api_WKSSVC_NETRVALIDATENAME},
- {"WKSSVC_NETRGETJOININFORMATION", NDR_WKSSVC_NETRGETJOININFORMATION, api_WKSSVC_NETRGETJOININFORMATION},
- {"WKSSVC_NETRGETJOINABLEOUS", NDR_WKSSVC_NETRGETJOINABLEOUS, api_WKSSVC_NETRGETJOINABLEOUS},
+ {"WKSSVC_NETRWKSTATRANSPORTADD", NDR_WKSSVC_NETRWKSTATRANSPORTADD, api_wkssvc_NetrWkstaTransportAdd},
+ {"WKSSVC_NETRWKSTATRANSPORTDEL", NDR_WKSSVC_NETRWKSTATRANSPORTDEL, api_wkssvc_NetrWkstaTransportDel},
+ {"WKSSVC_NETRUSEADD", NDR_WKSSVC_NETRUSEADD, api_wkssvc_NetrUseAdd},
+ {"WKSSVC_NETRUSEGETINFO", NDR_WKSSVC_NETRUSEGETINFO, api_wkssvc_NetrUseGetInfo},
+ {"WKSSVC_NETRUSEDEL", NDR_WKSSVC_NETRUSEDEL, api_wkssvc_NetrUseDel},
+ {"WKSSVC_NETRUSEENUM", NDR_WKSSVC_NETRUSEENUM, api_wkssvc_NetrUseEnum},
+ {"WKSSVC_NETRMESSAGEBUFFERSEND", NDR_WKSSVC_NETRMESSAGEBUFFERSEND, api_wkssvc_NetrMessageBufferSend},
+ {"WKSSVC_NETRWORKSTATIONSTATISTICSGET", NDR_WKSSVC_NETRWORKSTATIONSTATISTICSGET, api_wkssvc_NetrWorkstationStatisticsGet},
+ {"WKSSVC_NETRLOGONDOMAINNAMEADD", NDR_WKSSVC_NETRLOGONDOMAINNAMEADD, api_wkssvc_NetrLogonDomainNameAdd},
+ {"WKSSVC_NETRLOGONDOMAINNAMEDEL", NDR_WKSSVC_NETRLOGONDOMAINNAMEDEL, api_wkssvc_NetrLogonDomainNameDel},
+ {"WKSSVC_NETRJOINDOMAIN", NDR_WKSSVC_NETRJOINDOMAIN, api_wkssvc_NetrJoinDomain},
+ {"WKSSVC_NETRUNJOINDOMAIN", NDR_WKSSVC_NETRUNJOINDOMAIN, api_wkssvc_NetrUnjoinDomain},
+ {"WKSSVC_NETRRENAMEMACHINEINDOMAIN", NDR_WKSSVC_NETRRENAMEMACHINEINDOMAIN, api_wkssvc_NetrRenameMachineInDomain},
+ {"WKSSVC_NETRVALIDATENAME", NDR_WKSSVC_NETRVALIDATENAME, api_wkssvc_NetrValidateName},
+ {"WKSSVC_NETRGETJOININFORMATION", NDR_WKSSVC_NETRGETJOININFORMATION, api_wkssvc_NetrGetJoinInformation},
+ {"WKSSVC_NETRGETJOINABLEOUS", NDR_WKSSVC_NETRGETJOINABLEOUS, api_wkssvc_NetrGetJoinableOus},
{"WKSSVC_NETRJOINDOMAIN2", NDR_WKSSVC_NETRJOINDOMAIN2, api_wkssvc_NetrJoinDomain2},
{"WKSSVC_NETRUNJOINDOMAIN2", NDR_WKSSVC_NETRUNJOINDOMAIN2, api_wkssvc_NetrUnjoinDomain2},
{"WKSSVC_NETRRENAMEMACHINEINDOMAIN2", NDR_WKSSVC_NETRRENAMEMACHINEINDOMAIN2, api_wkssvc_NetrRenameMachineInDomain2},
- {"WKSSVC_NETRVALIDATENAME2", NDR_WKSSVC_NETRVALIDATENAME2, api_WKSSVC_NETRVALIDATENAME2},
- {"WKSSVC_NETRGETJOINABLEOUS2", NDR_WKSSVC_NETRGETJOINABLEOUS2, api_WKSSVC_NETRGETJOINABLEOUS2},
+ {"WKSSVC_NETRVALIDATENAME2", NDR_WKSSVC_NETRVALIDATENAME2, api_wkssvc_NetrValidateName2},
+ {"WKSSVC_NETRGETJOINABLEOUS2", NDR_WKSSVC_NETRGETJOINABLEOUS2, api_wkssvc_NetrGetJoinableOus2},
{"WKSSVC_NETRADDALTERNATECOMPUTERNAME", NDR_WKSSVC_NETRADDALTERNATECOMPUTERNAME, api_wkssvc_NetrAddAlternateComputerName},
{"WKSSVC_NETRREMOVEALTERNATECOMPUTERNAME", NDR_WKSSVC_NETRREMOVEALTERNATECOMPUTERNAME, api_wkssvc_NetrRemoveAlternateComputerName},
- {"WKSSVC_NETRSETPRIMARYCOMPUTERNAME", NDR_WKSSVC_NETRSETPRIMARYCOMPUTERNAME, api_WKSSVC_NETRSETPRIMARYCOMPUTERNAME},
- {"WKSSVC_NETRENUMERATECOMPUTERNAMES", NDR_WKSSVC_NETRENUMERATECOMPUTERNAMES, api_WKSSVC_NETRENUMERATECOMPUTERNAMES},
+ {"WKSSVC_NETRSETPRIMARYCOMPUTERNAME", NDR_WKSSVC_NETRSETPRIMARYCOMPUTERNAME, api_wkssvc_NetrSetPrimaryComputername},
+ {"WKSSVC_NETRENUMERATECOMPUTERNAMES", NDR_WKSSVC_NETRENUMERATECOMPUTERNAMES, api_wkssvc_NetrEnumerateComputerNames},
};
void wkssvc_get_pipe_fns(struct api_struct **fns, int *n_fns)
diff --git a/source3/librpc/gen_ndr/srv_wkssvc.h b/source3/librpc/gen_ndr/srv_wkssvc.h
index 4633152eac..f1d0b94c26 100644
--- a/source3/librpc/gen_ndr/srv_wkssvc.h
+++ b/source3/librpc/gen_ndr/srv_wkssvc.h
@@ -4,34 +4,34 @@
WERROR _wkssvc_NetWkstaGetInfo(pipes_struct *p, struct wkssvc_NetWkstaGetInfo *r);
WERROR _wkssvc_NetWkstaSetInfo(pipes_struct *p, struct wkssvc_NetWkstaSetInfo *r);
WERROR _wkssvc_NetWkstaEnumUsers(pipes_struct *p, struct wkssvc_NetWkstaEnumUsers *r);
-WERROR _WKSSVC_NETRWKSTAUSERGETINFO(pipes_struct *p, struct WKSSVC_NETRWKSTAUSERGETINFO *r);
-WERROR _WKSSVC_NETRWKSTAUSERSETINFO(pipes_struct *p, struct WKSSVC_NETRWKSTAUSERSETINFO *r);
+WERROR _wkssvc_NetrWkstaUserGetInfo(pipes_struct *p, struct wkssvc_NetrWkstaUserGetInfo *r);
+WERROR _wkssvc_NetrWkstaUserSetInfo(pipes_struct *p, struct wkssvc_NetrWkstaUserSetInfo *r);
WERROR _wkssvc_NetWkstaTransportEnum(pipes_struct *p, struct wkssvc_NetWkstaTransportEnum *r);
-WERROR _WKSSVC_NETRWKSTATRANSPORTADD(pipes_struct *p, struct WKSSVC_NETRWKSTATRANSPORTADD *r);
-WERROR _WKSSVC_NETRWKSTATRANSPORTDEL(pipes_struct *p, struct WKSSVC_NETRWKSTATRANSPORTDEL *r);
-WERROR _WKSSVC_NETRUSEADD(pipes_struct *p, struct WKSSVC_NETRUSEADD *r);
-WERROR _WKSSVC_NETRUSEGETINFO(pipes_struct *p, struct WKSSVC_NETRUSEGETINFO *r);
-WERROR _WKSSVC_NETRUSEDEL(pipes_struct *p, struct WKSSVC_NETRUSEDEL *r);
-WERROR _WKSSVC_NETRUSEENUM(pipes_struct *p, struct WKSSVC_NETRUSEENUM *r);
-WERROR _WKSSVC_NETRMESSAGEBUFFERSEND(pipes_struct *p, struct WKSSVC_NETRMESSAGEBUFFERSEND *r);
-WERROR _WKSSVC_NETRWORKSTATIONSTATISTICSGET(pipes_struct *p, struct WKSSVC_NETRWORKSTATIONSTATISTICSGET *r);
-WERROR _WKSSVC_NETRLOGONDOMAINNAMEADD(pipes_struct *p, struct WKSSVC_NETRLOGONDOMAINNAMEADD *r);
-WERROR _WKSSVC_NETRLOGONDOMAINNAMEDEL(pipes_struct *p, struct WKSSVC_NETRLOGONDOMAINNAMEDEL *r);
-WERROR _WKSSVC_NETRJOINDOMAIN(pipes_struct *p, struct WKSSVC_NETRJOINDOMAIN *r);
-WERROR _WKSSVC_NETRUNJOINDOMAIN(pipes_struct *p, struct WKSSVC_NETRUNJOINDOMAIN *r);
-WERROR _WKSSVC_NETRRENAMEMACHINEINDOMAIN(pipes_struct *p, struct WKSSVC_NETRRENAMEMACHINEINDOMAIN *r);
-WERROR _WKSSVC_NETRVALIDATENAME(pipes_struct *p, struct WKSSVC_NETRVALIDATENAME *r);
-WERROR _WKSSVC_NETRGETJOININFORMATION(pipes_struct *p, struct WKSSVC_NETRGETJOININFORMATION *r);
-WERROR _WKSSVC_NETRGETJOINABLEOUS(pipes_struct *p, struct WKSSVC_NETRGETJOINABLEOUS *r);
+WERROR _wkssvc_NetrWkstaTransportAdd(pipes_struct *p, struct wkssvc_NetrWkstaTransportAdd *r);
+WERROR _wkssvc_NetrWkstaTransportDel(pipes_struct *p, struct wkssvc_NetrWkstaTransportDel *r);
+WERROR _wkssvc_NetrUseAdd(pipes_struct *p, struct wkssvc_NetrUseAdd *r);
+WERROR _wkssvc_NetrUseGetInfo(pipes_struct *p, struct wkssvc_NetrUseGetInfo *r);
+WERROR _wkssvc_NetrUseDel(pipes_struct *p, struct wkssvc_NetrUseDel *r);
+WERROR _wkssvc_NetrUseEnum(pipes_struct *p, struct wkssvc_NetrUseEnum *r);
+WERROR _wkssvc_NetrMessageBufferSend(pipes_struct *p, struct wkssvc_NetrMessageBufferSend *r);
+WERROR _wkssvc_NetrWorkstationStatisticsGet(pipes_struct *p, struct wkssvc_NetrWorkstationStatisticsGet *r);
+WERROR _wkssvc_NetrLogonDomainNameAdd(pipes_struct *p, struct wkssvc_NetrLogonDomainNameAdd *r);
+WERROR _wkssvc_NetrLogonDomainNameDel(pipes_struct *p, struct wkssvc_NetrLogonDomainNameDel *r);
+WERROR _wkssvc_NetrJoinDomain(pipes_struct *p, struct wkssvc_NetrJoinDomain *r);
+WERROR _wkssvc_NetrUnjoinDomain(pipes_struct *p, struct wkssvc_NetrUnjoinDomain *r);
+WERROR _wkssvc_NetrRenameMachineInDomain(pipes_struct *p, struct wkssvc_NetrRenameMachineInDomain *r);
+WERROR _wkssvc_NetrValidateName(pipes_struct *p, struct wkssvc_NetrValidateName *r);
+WERROR _wkssvc_NetrGetJoinInformation(pipes_struct *p, struct wkssvc_NetrGetJoinInformation *r);
+WERROR _wkssvc_NetrGetJoinableOus(pipes_struct *p, struct wkssvc_NetrGetJoinableOus *r);
WERROR _wkssvc_NetrJoinDomain2(pipes_struct *p, struct wkssvc_NetrJoinDomain2 *r);
WERROR _wkssvc_NetrUnjoinDomain2(pipes_struct *p, struct wkssvc_NetrUnjoinDomain2 *r);
WERROR _wkssvc_NetrRenameMachineInDomain2(pipes_struct *p, struct wkssvc_NetrRenameMachineInDomain2 *r);
-WERROR _WKSSVC_NETRVALIDATENAME2(pipes_struct *p, struct WKSSVC_NETRVALIDATENAME2 *r);
-WERROR _WKSSVC_NETRGETJOINABLEOUS2(pipes_struct *p, struct WKSSVC_NETRGETJOINABLEOUS2 *r);
+WERROR _wkssvc_NetrValidateName2(pipes_struct *p, struct wkssvc_NetrValidateName2 *r);
+WERROR _wkssvc_NetrGetJoinableOus2(pipes_struct *p, struct wkssvc_NetrGetJoinableOus2 *r);
WERROR _wkssvc_NetrAddAlternateComputerName(pipes_struct *p, struct wkssvc_NetrAddAlternateComputerName *r);
WERROR _wkssvc_NetrRemoveAlternateComputerName(pipes_struct *p, struct wkssvc_NetrRemoveAlternateComputerName *r);
-WERROR _WKSSVC_NETRSETPRIMARYCOMPUTERNAME(pipes_struct *p, struct WKSSVC_NETRSETPRIMARYCOMPUTERNAME *r);
-WERROR _WKSSVC_NETRENUMERATECOMPUTERNAMES(pipes_struct *p, struct WKSSVC_NETRENUMERATECOMPUTERNAMES *r);
+WERROR _wkssvc_NetrSetPrimaryComputername(pipes_struct *p, struct wkssvc_NetrSetPrimaryComputername *r);
+WERROR _wkssvc_NetrEnumerateComputerNames(pipes_struct *p, struct wkssvc_NetrEnumerateComputerNames *r);
void wkssvc_get_pipe_fns(struct api_struct **fns, int *n_fns);
NTSTATUS rpc_wkssvc_init(void);
#endif /* __SRV_WKSSVC__ */
diff --git a/source3/librpc/gen_ndr/wkssvc.h b/source3/librpc/gen_ndr/wkssvc.h
index e1b8cb31a2..43f9ae6d63 100644
--- a/source3/librpc/gen_ndr/wkssvc.h
+++ b/source3/librpc/gen_ndr/wkssvc.h
@@ -3,11 +3,12 @@
#include <stdint.h>
#include "librpc/gen_ndr/srvsvc.h"
+#include "librpc/gen_ndr/lsa.h"
#ifndef _HEADER_wkssvc
#define _HEADER_wkssvc
struct wkssvc_NetWkstaInfo100 {
- uint16_t platform_id;
+ enum srvsvc_PlatformId platform_id;
const char *server_name;/* [unique,charset(UTF16)] */
const char *domain_name;/* [unique,charset(UTF16)] */
uint32_t version_major;
@@ -15,7 +16,7 @@ struct wkssvc_NetWkstaInfo100 {
};
struct wkssvc_NetWkstaInfo101 {
- uint16_t platform_id;
+ enum srvsvc_PlatformId platform_id;
const char *server_name;/* [unique,charset(UTF16)] */
const char *domain_name;/* [unique,charset(UTF16)] */
uint32_t version_major;
@@ -24,7 +25,7 @@ struct wkssvc_NetWkstaInfo101 {
};
struct wkssvc_NetWkstaInfo102 {
- uint16_t platform_id;
+ enum srvsvc_PlatformId platform_id;
const char *server_name;/* [unique,charset(UTF16)] */
const char *domain_name;/* [unique,charset(UTF16)] */
uint32_t version_major;
@@ -99,10 +100,106 @@ struct wkssvc_NetWkstaInfo1027 {
uint32_t errorlog_sz;
};
+struct wkssvc_NetWkstaInfo1028 {
+ uint32_t print_buf_time;
+};
+
+struct wkssvc_NetWkstaInfo1032 {
+ uint32_t wrk_heuristics;
+};
+
struct wkssvc_NetWkstaInfo1033 {
uint32_t max_threads;
};
+struct wkssvc_NetWkstaInfo1041 {
+ uint32_t lock_quota;
+};
+
+struct wkssvc_NetWkstaInfo1042 {
+ uint32_t lock_increment;
+};
+
+struct wkssvc_NetWkstaInfo1043 {
+ uint32_t lock_maximum;
+};
+
+struct wkssvc_NetWkstaInfo1044 {
+ uint32_t pipe_increment;
+};
+
+struct wkssvc_NetWkstaInfo1045 {
+ uint32_t pipe_maximum;
+};
+
+struct wkssvc_NetWkstaInfo1046 {
+ uint32_t dormant_file_limit;
+};
+
+struct wkssvc_NetWkstaInfo1047 {
+ uint32_t cache_file_timeout;
+};
+
+struct wkssvc_NetWkstaInfo1048 {
+ uint32_t use_opportunistic_locking;
+};
+
+struct wkssvc_NetWkstaInfo1049 {
+ uint32_t use_unlock_behind;
+};
+
+struct wkssvc_NetWkstaInfo1050 {
+ uint32_t use_close_behind;
+};
+
+struct wkssvc_NetWkstaInfo1051 {
+ uint32_t buf_named_pipes;
+};
+
+struct wkssvc_NetWkstaInfo1052 {
+ uint32_t use_lock_read_unlock;
+};
+
+struct wkssvc_NetWkstaInfo1053 {
+ uint32_t utilize_nt_caching;
+};
+
+struct wkssvc_NetWkstaInfo1054 {
+ uint32_t use_raw_read;
+};
+
+struct wkssvc_NetWkstaInfo1055 {
+ uint32_t use_raw_write;
+};
+
+struct wkssvc_NetWkstaInfo1056 {
+ uint32_t use_write_raw_data;
+};
+
+struct wkssvc_NetWkstaInfo1057 {
+ uint32_t use_encryption;
+};
+
+struct wkssvc_NetWkstaInfo1058 {
+ uint32_t buf_files_deny_write;
+};
+
+struct wkssvc_NetWkstaInfo1059 {
+ uint32_t buf_read_only_files;
+};
+
+struct wkssvc_NetWkstaInfo1060 {
+ uint32_t force_core_create_mode;
+};
+
+struct wkssvc_NetWkstaInfo1061 {
+ uint32_t use_512_byte_max_transfer;
+};
+
+struct wkssvc_NetWkstaInfo1062 {
+ uint32_t read_ahead_throughput;
+};
+
union wkssvc_NetWkstaInfo {
struct wkssvc_NetWkstaInfo100 *info100;/* [unique,case(100)] */
struct wkssvc_NetWkstaInfo101 *info101;/* [unique,case(101)] */
@@ -115,33 +212,72 @@ union wkssvc_NetWkstaInfo {
struct wkssvc_NetWkstaInfo1018 *info1018;/* [unique,case(1018)] */
struct wkssvc_NetWkstaInfo1023 *info1023;/* [unique,case(1023)] */
struct wkssvc_NetWkstaInfo1027 *info1027;/* [unique,case(1027)] */
+ struct wkssvc_NetWkstaInfo1028 *info1028;/* [unique,case(1028)] */
+ struct wkssvc_NetWkstaInfo1032 *info1032;/* [unique,case(1032)] */
struct wkssvc_NetWkstaInfo1033 *info1033;/* [unique,case(1033)] */
+ struct wkssvc_NetWkstaInfo1041 *info1041;/* [unique,case(1041)] */
+ struct wkssvc_NetWkstaInfo1042 *info1042;/* [unique,case(1042)] */
+ struct wkssvc_NetWkstaInfo1043 *info1043;/* [unique,case(1043)] */
+ struct wkssvc_NetWkstaInfo1044 *info1044;/* [unique,case(1044)] */
+ struct wkssvc_NetWkstaInfo1045 *info1045;/* [unique,case(1045)] */
+ struct wkssvc_NetWkstaInfo1046 *info1046;/* [unique,case(1046)] */
+ struct wkssvc_NetWkstaInfo1047 *info1047;/* [unique,case(1047)] */
+ struct wkssvc_NetWkstaInfo1048 *info1048;/* [unique,case(1048)] */
+ struct wkssvc_NetWkstaInfo1049 *info1049;/* [unique,case(1049)] */
+ struct wkssvc_NetWkstaInfo1050 *info1050;/* [unique,case(1050)] */
+ struct wkssvc_NetWkstaInfo1051 *info1051;/* [unique,case(1051)] */
+ struct wkssvc_NetWkstaInfo1052 *info1052;/* [unique,case(1052)] */
+ struct wkssvc_NetWkstaInfo1053 *info1053;/* [unique,case(1053)] */
+ struct wkssvc_NetWkstaInfo1054 *info1054;/* [unique,case(1054)] */
+ struct wkssvc_NetWkstaInfo1055 *info1055;/* [unique,case(1055)] */
+ struct wkssvc_NetWkstaInfo1056 *info1056;/* [unique,case(1056)] */
+ struct wkssvc_NetWkstaInfo1057 *info1057;/* [unique,case(1057)] */
+ struct wkssvc_NetWkstaInfo1058 *info1058;/* [unique,case(1058)] */
+ struct wkssvc_NetWkstaInfo1059 *info1059;/* [unique,case(1059)] */
+ struct wkssvc_NetWkstaInfo1060 *info1060;/* [unique,case(1060)] */
+ struct wkssvc_NetWkstaInfo1061 *info1061;/* [unique,case(1061)] */
+ struct wkssvc_NetWkstaInfo1062 *info1062;/* [unique,case(1062)] */
+};
+
+struct wkssvc_NetrWkstaUserInfo0 {
+ const char *user_name;/* [unique,charset(UTF16)] */
};
-struct USER_INFO_0 {
- const char *user;/* [unique,charset(UTF16)] */
-};
-
-struct USER_INFO_0_CONTAINER {
+struct wkssvc_NetWkstaEnumUsersCtr0 {
uint32_t entries_read;
- struct USER_INFO_0 *user0;/* [unique,size_is(entries_read)] */
+ struct wkssvc_NetrWkstaUserInfo0 *user0;/* [unique,size_is(entries_read)] */
};
-struct USER_INFO_1 {
+struct wkssvc_NetrWkstaUserInfo1 {
const char *user_name;/* [unique,charset(UTF16)] */
const char *logon_domain;/* [unique,charset(UTF16)] */
const char *other_domains;/* [unique,charset(UTF16)] */
const char *logon_server;/* [unique,charset(UTF16)] */
};
-struct USER_INFO_1_CONTAINER {
+struct wkssvc_NetWkstaEnumUsersCtr1 {
uint32_t entries_read;
- struct USER_INFO_1 *user1;/* [unique,size_is(entries_read)] */
+ struct wkssvc_NetrWkstaUserInfo1 *user1;/* [unique,size_is(entries_read)] */
+};
+
+union wkssvc_NetWkstaEnumUsersCtr {
+ struct wkssvc_NetWkstaEnumUsersCtr0 *user0;/* [unique,case(0)] */
+ struct wkssvc_NetWkstaEnumUsersCtr1 *user1;/* [unique,case] */
+}/* [switch_type(uint32)] */;
+
+struct wkssvc_NetWkstaEnumUsersInfo {
+ uint32_t level;
+ union wkssvc_NetWkstaEnumUsersCtr ctr;/* [switch_is(level)] */
+};
+
+struct wkssvc_NetrWkstaUserInfo1101 {
+ const char *other_domains;/* [unique,charset(UTF16)] */
};
-union WKS_USER_ENUM_UNION {
- struct USER_INFO_0_CONTAINER *user0;/* [unique,case(0)] */
- struct USER_INFO_1_CONTAINER *user1;/* [unique,case] */
+union wkssvc_NetrWkstaUserInfo {
+ struct wkssvc_NetrWkstaUserInfo0 *info0;/* [unique,case(0)] */
+ struct wkssvc_NetrWkstaUserInfo1 *info1;/* [unique,case] */
+ struct wkssvc_NetrWkstaUserInfo1101 *info1101;/* [unique,case(1101)] */
}/* [switch_type(uint32)] */;
struct wkssvc_NetWkstaTransportInfo0 {
@@ -161,11 +297,167 @@ union wkssvc_NetWkstaTransportCtr {
struct wkssvc_NetWkstaTransportCtr0 *ctr0;/* [unique,case(0)] */
};
+struct wkssvc_NetWkstaTransportInfo {
+ uint32_t level;
+ union wkssvc_NetWkstaTransportCtr ctr;/* [switch_is(level)] */
+};
+
+struct wkssvc_NetrUseInfo3 {
+ const char *unknown1;/* [unique,charset(UTF16)] */
+ const char *unknown2;/* [unique,charset(UTF16)] */
+};
+
+struct wkssvc_NetrUseInfo2 {
+ const char *local;/* [unique,charset(UTF16)] */
+ const char *remote;/* [unique,charset(UTF16)] */
+ const char *password;/* [unique,charset(UTF16)] */
+ uint32_t status;
+ uint32_t asg_type;
+ uint32_t ref_count;
+ uint32_t use_count;
+ const char *user_name;/* [unique,charset(UTF16)] */
+ const char *domain_name;/* [unique,charset(UTF16)] */
+};
+
+struct wkssvc_NetrUseInfo1 {
+ const char *local;/* [unique,charset(UTF16)] */
+ const char *remote;/* [unique,charset(UTF16)] */
+ const char *password;/* [unique,charset(UTF16)] */
+ uint32_t status;
+ uint32_t asg_type;
+ uint32_t ref_count;
+ uint32_t use_count;
+};
+
+struct wkssvc_NetrUseInfo0 {
+ const char *local;/* [unique,charset(UTF16)] */
+ const char *remote;/* [unique,charset(UTF16)] */
+};
+
+union wkssvc_NetrUseGetInfoCtr {
+ struct wkssvc_NetrUseInfo0 *info0;/* [unique,case(0)] */
+ struct wkssvc_NetrUseInfo1 *info1;/* [unique,case] */
+ struct wkssvc_NetrUseInfo2 *info2;/* [unique,case(2)] */
+ struct wkssvc_NetrUseInfo3 *info3;/* [unique,case(3)] */
+}/* [switch_type(uint32)] */;
+
+struct wkssvc_NetrUseEnumCtr2 {
+ uint32_t count;
+ struct wkssvc_NetrUseInfo2 *array;/* [unique,size_is(count)] */
+};
+
+struct wkssvc_NetrUseEnumCtr1 {
+ uint32_t count;
+ struct wkssvc_NetrUseInfo1 *array;/* [unique,size_is(count)] */
+};
+
+struct wkssvc_NetrUseEnumCtr0 {
+ uint32_t count;
+ struct wkssvc_NetrUseInfo0 *array;/* [unique,size_is(count)] */
+};
+
+union wkssvc_NetrUseEnumCtr {
+ struct wkssvc_NetrUseEnumCtr0 *ctr0;/* [unique,case(0)] */
+ struct wkssvc_NetrUseEnumCtr1 *ctr1;/* [unique,case] */
+ struct wkssvc_NetrUseEnumCtr2 *ctr2;/* [unique,case(2)] */
+}/* [switch_type(uint32)] */;
+
+struct wkssvc_NetrUseEnumInfo {
+ uint32_t level;
+ union wkssvc_NetrUseEnumCtr ctr;/* [switch_is(level)] */
+};
+
+struct wkssvc_NetrWorkstationStatistics {
+ uint64_t unknown1;
+ uint64_t unknown2;
+ uint64_t unknown3;
+ uint64_t unknown4;
+ uint64_t unknown5;
+ uint64_t unknown6;
+ uint64_t unknown7;
+ uint64_t unknown8;
+ uint64_t unknown9;
+ uint64_t unknown10;
+ uint64_t unknown11;
+ uint64_t unknown12;
+ uint64_t unknown13;
+ uint32_t unknown14;
+ uint32_t unknown15;
+ uint32_t unknown16;
+ uint32_t unknown17;
+ uint32_t unknown18;
+ uint32_t unknown19;
+ uint32_t unknown20;
+ uint32_t unknown21;
+ uint32_t unknown22;
+ uint32_t unknown23;
+ uint32_t unknown24;
+ uint32_t unknown25;
+ uint32_t unknown26;
+ uint32_t unknown27;
+ uint32_t unknown28;
+ uint32_t unknown29;
+ uint32_t unknown30;
+ uint32_t unknown31;
+ uint32_t unknown32;
+ uint32_t unknown33;
+ uint32_t unknown34;
+ uint32_t unknown35;
+ uint32_t unknown36;
+ uint32_t unknown37;
+ uint32_t unknown38;
+ uint32_t unknown39;
+ uint32_t unknown40;
+};
+
+/* bitmap wkssvc_renameflags */
+#define WKSSVC_JOIN_FLAGS_ACCOUNT_CREATE ( 0x00000002 )
+
+;
+
+#ifndef USE_UINT_ENUMS
+enum wkssvc_NetValidateNameType {
+ NetSetupUnknown=0,
+ NetSetupMachine=1,
+ NetSetupWorkgroup=2,
+ NetSetupDomain=3,
+ NetSetupNonExistentDomain=4,
+ NetSetupDnsMachine=5
+}
+#else
+enum wkssvc_NetValidateNameType { __donnot_use_enum_wkssvc_NetValidateNameType=0x7FFFFFFF}
+#define NetSetupUnknown ( 0 )
+#define NetSetupMachine ( 1 )
+#define NetSetupWorkgroup ( 2 )
+#define NetSetupDomain ( 3 )
+#define NetSetupNonExistentDomain ( 4 )
+#define NetSetupDnsMachine ( 5 )
+#endif
+;
+
+#ifndef USE_UINT_ENUMS
+enum wkssvc_NetJoinStatus {
+ NetSetupUnknownStatus=0,
+ NetSetupUnjoined=1,
+ NetSetupWorkgroupName=2,
+ NetSetupDomainName=3
+}
+#else
+enum wkssvc_NetJoinStatus { __donnot_use_enum_wkssvc_NetJoinStatus=0x7FFFFFFF}
+#define NetSetupUnknownStatus ( 0 )
+#define NetSetupUnjoined ( 1 )
+#define NetSetupWorkgroupName ( 2 )
+#define NetSetupDomainName ( 3 )
+#endif
+;
+
struct wkssvc_PasswordBuffer {
uint8_t data[524];
-};
+}/* [flag(LIBNDR_PRINT_ARRAY_HEX)] */;
/* bitmap wkssvc_joinflags */
+#define WKSSVC_JOIN_FLAGS_JOIN_WITH_NEW_NAME ( 0x00000400 )
+#define WKSSVC_JOIN_FLAGS_JOIN_DC_ACCOUNT ( 0x00000200 )
#define WKSSVC_JOIN_FLAGS_DEFER_SPN ( 0x00000100 )
#define WKSSVC_JOIN_FLAGS_MACHINE_PWD_PASSED ( 0x00000080 )
#define WKSSVC_JOIN_FLAGS_JOIN_UNSECURE ( 0x00000040 )
@@ -177,11 +469,27 @@ struct wkssvc_PasswordBuffer {
;
-/* bitmap wkssvc_renameflags */
-#define WKSSVC_JOIN_FLAGS_ACCOUNT_CREATE ( 0x00000002 )
-
+#ifndef USE_UINT_ENUMS
+enum wkssvc_ComputerNameType {
+ NetPrimaryComputerName=0,
+ NetAlternateComputerNames=1,
+ NetAllComputerNames=2,
+ NetComputerNameTypeMax=3
+}
+#else
+enum wkssvc_ComputerNameType { __donnot_use_enum_wkssvc_ComputerNameType=0x7FFFFFFF}
+#define NetPrimaryComputerName ( 0 )
+#define NetAlternateComputerNames ( 1 )
+#define NetAllComputerNames ( 2 )
+#define NetComputerNameTypeMax ( 3 )
+#endif
;
+struct wkssvc_ComputerNamesCtr {
+ uint32_t count;
+ struct lsa_String *computer_name;/* [unique,size_is(count)] */
+};
+
struct wkssvc_NetWkstaGetInfo {
struct {
@@ -216,33 +524,45 @@ struct wkssvc_NetWkstaSetInfo {
struct wkssvc_NetWkstaEnumUsers {
struct {
const char *server_name;/* [unique,charset(UTF16)] */
- uint32_t level;
uint32_t prefmaxlen;
- union WKS_USER_ENUM_UNION *users;/* [ref] */
- uint32_t *resumehandle;/* [ref] */
+ struct wkssvc_NetWkstaEnumUsersInfo *info;/* [ref] */
+ uint32_t *resume_handle;/* [unique] */
} in;
struct {
- uint32_t *entriesread;/* [unique] */
- uint32_t *totalentries;/* [unique] */
- union WKS_USER_ENUM_UNION *users;/* [ref] */
- uint32_t *resumehandle;/* [ref] */
+ uint32_t *entries_read;/* [ref] */
+ struct wkssvc_NetWkstaEnumUsersInfo *info;/* [ref] */
+ uint32_t *resume_handle;/* [unique] */
WERROR result;
} out;
};
-struct WKSSVC_NETRWKSTAUSERGETINFO {
+struct wkssvc_NetrWkstaUserGetInfo {
struct {
+ const char *unknown;/* [unique,charset(UTF16)] */
+ uint32_t level;
+ } in;
+
+ struct {
+ union wkssvc_NetrWkstaUserInfo *info;/* [ref,switch_is(level)] */
WERROR result;
} out;
};
-struct WKSSVC_NETRWKSTAUSERSETINFO {
+struct wkssvc_NetrWkstaUserSetInfo {
struct {
+ const char *unknown;/* [unique,charset(UTF16)] */
+ uint32_t level;
+ union wkssvc_NetrWkstaUserInfo *info;/* [ref,switch_is(level)] */
+ uint32_t *parm_err;/* [unique] */
+ } in;
+
+ struct {
+ uint32_t *parm_err;/* [unique] */
WERROR result;
} out;
@@ -253,31 +573,43 @@ struct wkssvc_NetWkstaTransportEnum {
struct {
const char *server_name;/* [unique,charset(UTF16)] */
uint32_t max_buffer;
- uint32_t *level;/* [ref] */
- union wkssvc_NetWkstaTransportCtr *ctr;/* [ref,switch_is(*level)] */
- uint32_t *resume_handle;/* [ref] */
+ struct wkssvc_NetWkstaTransportInfo *info;/* [ref] */
+ uint32_t *resume_handle;/* [unique] */
} in;
struct {
- uint32_t *totalentries;/* [unique] */
- uint32_t *level;/* [ref] */
- union wkssvc_NetWkstaTransportCtr *ctr;/* [ref,switch_is(*level)] */
- uint32_t *resume_handle;/* [ref] */
+ uint32_t *total_entries;/* [ref] */
+ struct wkssvc_NetWkstaTransportInfo *info;/* [ref] */
+ uint32_t *resume_handle;/* [unique] */
WERROR result;
} out;
};
-struct WKSSVC_NETRWKSTATRANSPORTADD {
+struct wkssvc_NetrWkstaTransportAdd {
+ struct {
+ const char *server_name;/* [unique,charset(UTF16)] */
+ uint32_t level;
+ struct wkssvc_NetWkstaTransportInfo0 *info0;/* [ref] */
+ uint32_t *parm_err;/* [unique] */
+ } in;
+
struct {
+ uint32_t *parm_err;/* [unique] */
WERROR result;
} out;
};
-struct WKSSVC_NETRWKSTATRANSPORTDEL {
+struct wkssvc_NetrWkstaTransportDel {
+ struct {
+ const char *server_name;/* [unique,charset(UTF16)] */
+ const char *transport_name;/* [unique,charset(UTF16)] */
+ uint32_t unknown3;
+ } in;
+
struct {
WERROR result;
} out;
@@ -285,23 +617,44 @@ struct WKSSVC_NETRWKSTATRANSPORTDEL {
};
-struct WKSSVC_NETRUSEADD {
+struct wkssvc_NetrUseAdd {
struct {
+ const char *server_name;/* [unique,charset(UTF16)] */
+ uint32_t level;
+ union wkssvc_NetrUseGetInfoCtr *ctr;/* [ref,switch_is(level)] */
+ uint32_t *parm_err;/* [unique] */
+ } in;
+
+ struct {
+ uint32_t *parm_err;/* [unique] */
WERROR result;
} out;
};
-struct WKSSVC_NETRUSEGETINFO {
+struct wkssvc_NetrUseGetInfo {
struct {
+ const char *server_name;/* [unique,charset(UTF16)] */
+ const char *use_name;/* [ref,charset(UTF16)] */
+ uint32_t level;
+ } in;
+
+ struct {
+ union wkssvc_NetrUseGetInfoCtr *ctr;/* [ref,switch_is(level)] */
WERROR result;
} out;
};
-struct WKSSVC_NETRUSEDEL {
+struct wkssvc_NetrUseDel {
+ struct {
+ const char *server_name;/* [unique,charset(UTF16)] */
+ const char *use_name;/* [ref,charset(UTF16)] */
+ uint32_t force_cond;
+ } in;
+
struct {
WERROR result;
} out;
@@ -309,15 +662,33 @@ struct WKSSVC_NETRUSEDEL {
};
-struct WKSSVC_NETRUSEENUM {
+struct wkssvc_NetrUseEnum {
struct {
+ const char *server_name;/* [unique,charset(UTF16)] */
+ uint32_t prefmaxlen;
+ struct wkssvc_NetrUseEnumInfo *info;/* [ref] */
+ uint32_t *resume_handle;/* [unique] */
+ } in;
+
+ struct {
+ uint32_t *entries_read;/* [ref] */
+ struct wkssvc_NetrUseEnumInfo *info;/* [ref] */
+ uint32_t *resume_handle;/* [unique] */
WERROR result;
} out;
};
-struct WKSSVC_NETRMESSAGEBUFFERSEND {
+struct wkssvc_NetrMessageBufferSend {
+ struct {
+ const char *server_name;/* [unique,charset(UTF16)] */
+ const char *message_name;/* [ref,charset(UTF16)] */
+ const char *message_sender_name;/* [unique,charset(UTF16)] */
+ uint8_t *message_buffer;/* [ref,size_is(message_size)] */
+ uint32_t message_size;
+ } in;
+
struct {
WERROR result;
} out;
@@ -325,15 +696,27 @@ struct WKSSVC_NETRMESSAGEBUFFERSEND {
};
-struct WKSSVC_NETRWORKSTATIONSTATISTICSGET {
+struct wkssvc_NetrWorkstationStatisticsGet {
struct {
+ const char *server_name;/* [unique,charset(UTF16)] */
+ const char *unknown2;/* [unique,charset(UTF16)] */
+ uint32_t unknown3;
+ uint32_t unknown4;
+ } in;
+
+ struct {
+ struct wkssvc_NetrWorkstationStatistics **info;/* [ref] */
WERROR result;
} out;
};
-struct WKSSVC_NETRLOGONDOMAINNAMEADD {
+struct wkssvc_NetrLogonDomainNameAdd {
+ struct {
+ const char *domain_name;/* [ref,charset(UTF16)] */
+ } in;
+
struct {
WERROR result;
} out;
@@ -341,7 +724,11 @@ struct WKSSVC_NETRLOGONDOMAINNAMEADD {
};
-struct WKSSVC_NETRLOGONDOMAINNAMEDEL {
+struct wkssvc_NetrLogonDomainNameDel {
+ struct {
+ const char *domain_name;/* [ref,charset(UTF16)] */
+ } in;
+
struct {
WERROR result;
} out;
@@ -349,7 +736,16 @@ struct WKSSVC_NETRLOGONDOMAINNAMEDEL {
};
-struct WKSSVC_NETRJOINDOMAIN {
+struct wkssvc_NetrJoinDomain {
+ struct {
+ const char *server_name;/* [unique,charset(UTF16)] */
+ const char *domain_name;/* [ref,charset(UTF16)] */
+ const char *account_ou;/* [unique,charset(UTF16)] */
+ const char *Account;/* [unique,charset(UTF16)] */
+ const char *password;/* [unique,charset(UTF16)] */
+ uint32_t join_flags;
+ } in;
+
struct {
WERROR result;
} out;
@@ -357,7 +753,14 @@ struct WKSSVC_NETRJOINDOMAIN {
};
-struct WKSSVC_NETRUNJOINDOMAIN {
+struct wkssvc_NetrUnjoinDomain {
+ struct {
+ const char *server_name;/* [unique,charset(UTF16)] */
+ const char *Account;/* [unique,charset(UTF16)] */
+ const char *password;/* [unique,charset(UTF16)] */
+ uint32_t unjoin_flags;
+ } in;
+
struct {
WERROR result;
} out;
@@ -365,7 +768,15 @@ struct WKSSVC_NETRUNJOINDOMAIN {
};
-struct WKSSVC_NETRRENAMEMACHINEINDOMAIN {
+struct wkssvc_NetrRenameMachineInDomain {
+ struct {
+ const char *server_name;/* [unique,charset(UTF16)] */
+ const char *NewMachineName;/* [unique,charset(UTF16)] */
+ const char *Account;/* [unique,charset(UTF16)] */
+ const char *password;/* [unique,charset(UTF16)] */
+ uint32_t RenameOptions;
+ } in;
+
struct {
WERROR result;
} out;
@@ -373,7 +784,15 @@ struct WKSSVC_NETRRENAMEMACHINEINDOMAIN {
};
-struct WKSSVC_NETRVALIDATENAME {
+struct wkssvc_NetrValidateName {
+ struct {
+ const char *server_name;/* [unique,charset(UTF16)] */
+ const char *name;/* [ref,charset(UTF16)] */
+ const char *Account;/* [unique,charset(UTF16)] */
+ const char *Password;/* [unique,charset(UTF16)] */
+ enum wkssvc_NetValidateNameType name_type;
+ } in;
+
struct {
WERROR result;
} out;
@@ -381,16 +800,33 @@ struct WKSSVC_NETRVALIDATENAME {
};
-struct WKSSVC_NETRGETJOININFORMATION {
+struct wkssvc_NetrGetJoinInformation {
struct {
+ const char *server_name;/* [unique,charset(UTF16)] */
+ const char **name_buffer;/* [ref,charset(UTF16)] */
+ } in;
+
+ struct {
+ enum wkssvc_NetJoinStatus *name_type;/* [ref] */
+ const char **name_buffer;/* [ref,charset(UTF16)] */
WERROR result;
} out;
};
-struct WKSSVC_NETRGETJOINABLEOUS {
+struct wkssvc_NetrGetJoinableOus {
struct {
+ const char *server_name;/* [unique,charset(UTF16)] */
+ const char *domain_name;/* [ref,charset(UTF16)] */
+ const char *Account;/* [unique,charset(UTF16)] */
+ const char *unknown;/* [unique,charset(UTF16)] */
+ uint32_t *num_ous;/* [ref] */
+ } in;
+
+ struct {
+ const char ***ous;/* [ref,charset(UTF16),size_is(*num_ous)] */
+ uint32_t *num_ous;/* [ref] */
WERROR result;
} out;
@@ -401,7 +837,7 @@ struct wkssvc_NetrJoinDomain2 {
struct {
const char *server_name;/* [unique,charset(UTF16)] */
const char *domain_name;/* [ref,charset(UTF16)] */
- const char *account_name;/* [unique,charset(UTF16)] */
+ const char *account_ou;/* [unique,charset(UTF16)] */
const char *admin_account;/* [unique,charset(UTF16)] */
struct wkssvc_PasswordBuffer *encrypted_password;/* [unique] */
uint32_t join_flags;
@@ -445,7 +881,15 @@ struct wkssvc_NetrRenameMachineInDomain2 {
};
-struct WKSSVC_NETRVALIDATENAME2 {
+struct wkssvc_NetrValidateName2 {
+ struct {
+ const char *server_name;/* [unique,charset(UTF16)] */
+ const char *name;/* [ref,charset(UTF16)] */
+ const char *Account;/* [unique,charset(UTF16)] */
+ struct wkssvc_PasswordBuffer *EncryptedPassword;/* [unique] */
+ enum wkssvc_NetValidateNameType name_type;
+ } in;
+
struct {
WERROR result;
} out;
@@ -453,8 +897,18 @@ struct WKSSVC_NETRVALIDATENAME2 {
};
-struct WKSSVC_NETRGETJOINABLEOUS2 {
+struct wkssvc_NetrGetJoinableOus2 {
struct {
+ const char *server_name;/* [unique,charset(UTF16)] */
+ const char *domain_name;/* [ref,charset(UTF16)] */
+ const char *Account;/* [unique,charset(UTF16)] */
+ struct wkssvc_PasswordBuffer *EncryptedPassword;/* [unique] */
+ uint32_t *num_ous;/* [ref] */
+ } in;
+
+ struct {
+ const char ***ous;/* [ref,charset(UTF16),size_is(*num_ous)] */
+ uint32_t *num_ous;/* [ref] */
WERROR result;
} out;
@@ -493,7 +947,15 @@ struct wkssvc_NetrRemoveAlternateComputerName {
};
-struct WKSSVC_NETRSETPRIMARYCOMPUTERNAME {
+struct wkssvc_NetrSetPrimaryComputername {
+ struct {
+ const char *server_name;/* [unique,charset(UTF16)] */
+ const char *primary_name;/* [unique,charset(UTF16)] */
+ const char *Account;/* [unique,charset(UTF16)] */
+ struct wkssvc_PasswordBuffer *EncryptedPassword;/* [unique] */
+ uint32_t Reserved;
+ } in;
+
struct {
WERROR result;
} out;
@@ -501,8 +963,15 @@ struct WKSSVC_NETRSETPRIMARYCOMPUTERNAME {
};
-struct WKSSVC_NETRENUMERATECOMPUTERNAMES {
+struct wkssvc_NetrEnumerateComputerNames {
+ struct {
+ const char *server_name;/* [unique,charset(UTF16)] */
+ enum wkssvc_ComputerNameType name_type;
+ uint32_t Reserved;
+ } in;
+
struct {
+ struct wkssvc_ComputerNamesCtr **ctr;/* [ref] */
WERROR result;
} out;
diff --git a/source3/librpc/idl/wkssvc.idl b/source3/librpc/idl/wkssvc.idl
index 98688fac46..dfb18e7ea8 100644
--- a/source3/librpc/idl/wkssvc.idl
+++ b/source3/librpc/idl/wkssvc.idl
@@ -1,16 +1,20 @@
+#include "idl_types.h"
+
/*
wkssvc interface definitions
*/
-import "srvsvc.idl";
+import "srvsvc.idl", "lsa.idl";
[ uuid("6bffd098-a112-3610-9833-46c3f87e345a"),
version(1.0),
pointer_default(unique),
pointer_default_top(unique),
- helpstring("Workstation Service")
+ helpstring("Workstation Service"),
+ endpoint("ncacn_np:[\\pipe\\wkssvc]","ncacn_ip_tcp:","ncalrpc:")
] interface wkssvc
{
+ declare [v1_enum] enum srvsvc_PlatformId;
#define BOOL uint32
@@ -18,7 +22,7 @@ import "srvsvc.idl";
/* Function: 0x00 */
typedef struct {
- uint16 platform_id;
+ srvsvc_PlatformId platform_id;
[string,charset(UTF16)] uint16 *server_name;
[string,charset(UTF16)] uint16 *domain_name;
uint32 version_major;
@@ -26,7 +30,7 @@ import "srvsvc.idl";
} wkssvc_NetWkstaInfo100;
typedef struct {
- uint16 platform_id;
+ srvsvc_PlatformId platform_id;
[string,charset(UTF16)] uint16 *server_name;
[string,charset(UTF16)] uint16 *domain_name;
uint32 version_major;
@@ -35,7 +39,7 @@ import "srvsvc.idl";
} wkssvc_NetWkstaInfo101;
typedef struct {
- uint16 platform_id;
+ srvsvc_PlatformId platform_id;
[string,charset(UTF16)] uint16 *server_name;
[string,charset(UTF16)] uint16 *domain_name;
uint32 version_major;
@@ -44,6 +48,8 @@ import "srvsvc.idl";
uint32 logged_on_users;
} wkssvc_NetWkstaInfo102;
+ /* FIXME: 302, 402 */
+
typedef struct {
uint32 char_wait;
uint32 collection_time;
@@ -110,10 +116,108 @@ import "srvsvc.idl";
uint32 errorlog_sz;
} wkssvc_NetWkstaInfo1027;
+ /* downlevel */
+ typedef struct {
+ uint32 print_buf_time;
+ } wkssvc_NetWkstaInfo1028;
+
+ /* downlevel */
+ typedef struct {
+ uint32 wrk_heuristics;
+ } wkssvc_NetWkstaInfo1032;
+
typedef struct {
uint32 max_threads;
} wkssvc_NetWkstaInfo1033;
+ typedef struct {
+ uint32 lock_quota;
+ } wkssvc_NetWkstaInfo1041;
+
+ typedef struct {
+ uint32 lock_increment;
+ } wkssvc_NetWkstaInfo1042;
+
+ typedef struct {
+ uint32 lock_maximum;
+ } wkssvc_NetWkstaInfo1043;
+
+ typedef struct {
+ uint32 pipe_increment;
+ } wkssvc_NetWkstaInfo1044;
+
+ typedef struct {
+ uint32 pipe_maximum;
+ } wkssvc_NetWkstaInfo1045;
+
+ typedef struct {
+ uint32 dormant_file_limit;
+ } wkssvc_NetWkstaInfo1046;
+
+ typedef struct {
+ uint32 cache_file_timeout;
+ } wkssvc_NetWkstaInfo1047;
+
+ typedef struct {
+ uint32 use_opportunistic_locking;
+ } wkssvc_NetWkstaInfo1048;
+
+ typedef struct {
+ uint32 use_unlock_behind;
+ } wkssvc_NetWkstaInfo1049;
+
+ typedef struct {
+ uint32 use_close_behind;
+ } wkssvc_NetWkstaInfo1050;
+
+ typedef struct {
+ uint32 buf_named_pipes;
+ } wkssvc_NetWkstaInfo1051;
+
+ typedef struct {
+ uint32 use_lock_read_unlock;
+ } wkssvc_NetWkstaInfo1052;
+
+ typedef struct {
+ uint32 utilize_nt_caching;
+ } wkssvc_NetWkstaInfo1053;
+
+ typedef struct {
+ uint32 use_raw_read;
+ } wkssvc_NetWkstaInfo1054;
+
+ typedef struct {
+ uint32 use_raw_write;
+ } wkssvc_NetWkstaInfo1055;
+
+ typedef struct {
+ uint32 use_write_raw_data;
+ } wkssvc_NetWkstaInfo1056;
+
+ typedef struct {
+ uint32 use_encryption;
+ } wkssvc_NetWkstaInfo1057;
+
+ typedef struct {
+ uint32 buf_files_deny_write;
+ } wkssvc_NetWkstaInfo1058;
+
+ typedef struct {
+ uint32 buf_read_only_files;
+ } wkssvc_NetWkstaInfo1059;
+
+ typedef struct {
+ uint32 force_core_create_mode;
+ } wkssvc_NetWkstaInfo1060;
+
+ typedef struct {
+ uint32 use_512_byte_max_transfer;
+ } wkssvc_NetWkstaInfo1061;
+
+ typedef struct {
+ uint32 read_ahead_throughput;
+ } wkssvc_NetWkstaInfo1062;
+
typedef union {
[case(100)] wkssvc_NetWkstaInfo100 *info100;
[case(101)] wkssvc_NetWkstaInfo101 *info101;
@@ -126,7 +230,31 @@ import "srvsvc.idl";
[case(1018)] wkssvc_NetWkstaInfo1018 *info1018;
[case(1023)] wkssvc_NetWkstaInfo1023 *info1023;
[case(1027)] wkssvc_NetWkstaInfo1027 *info1027;
+ [case(1028)] wkssvc_NetWkstaInfo1028 *info1028;
+ [case(1032)] wkssvc_NetWkstaInfo1032 *info1032;
[case(1033)] wkssvc_NetWkstaInfo1033 *info1033;
+ [case(1041)] wkssvc_NetWkstaInfo1041 *info1041;
+ [case(1042)] wkssvc_NetWkstaInfo1042 *info1042;
+ [case(1043)] wkssvc_NetWkstaInfo1043 *info1043;
+ [case(1044)] wkssvc_NetWkstaInfo1044 *info1044;
+ [case(1045)] wkssvc_NetWkstaInfo1045 *info1045;
+ [case(1046)] wkssvc_NetWkstaInfo1046 *info1046;
+ [case(1047)] wkssvc_NetWkstaInfo1047 *info1047;
+ [case(1048)] wkssvc_NetWkstaInfo1048 *info1048;
+ [case(1049)] wkssvc_NetWkstaInfo1049 *info1049;
+ [case(1050)] wkssvc_NetWkstaInfo1050 *info1050;
+ [case(1051)] wkssvc_NetWkstaInfo1051 *info1051;
+ [case(1052)] wkssvc_NetWkstaInfo1052 *info1052;
+ [case(1053)] wkssvc_NetWkstaInfo1053 *info1053;
+ [case(1054)] wkssvc_NetWkstaInfo1054 *info1054;
+ [case(1055)] wkssvc_NetWkstaInfo1055 *info1055;
+ [case(1056)] wkssvc_NetWkstaInfo1056 *info1056;
+ [case(1057)] wkssvc_NetWkstaInfo1057 *info1057;
+ [case(1058)] wkssvc_NetWkstaInfo1058 *info1058;
+ [case(1059)] wkssvc_NetWkstaInfo1059 *info1059;
+ [case(1060)] wkssvc_NetWkstaInfo1060 *info1060;
+ [case(1061)] wkssvc_NetWkstaInfo1061 *info1061;
+ [case(1062)] wkssvc_NetWkstaInfo1062 *info1062;
[default] ;
} wkssvc_NetWkstaInfo;
@@ -150,49 +278,70 @@ import "srvsvc.idl";
/*****************************/
/* Function 0x02 */
typedef struct {
- [string,charset(UTF16)] uint16 *user;
- } USER_INFO_0;
+ [string,charset(UTF16)] uint16 *user_name;
+ } wkssvc_NetrWkstaUserInfo0;
typedef struct {
uint32 entries_read;
- [size_is(entries_read)] USER_INFO_0 *user0;
- } USER_INFO_0_CONTAINER;
+ [size_is(entries_read)] wkssvc_NetrWkstaUserInfo0 *user0;
+ } wkssvc_NetWkstaEnumUsersCtr0;
typedef struct {
[string,charset(UTF16)] uint16 *user_name;
[string,charset(UTF16)] uint16 *logon_domain;
[string,charset(UTF16)] uint16 *other_domains;
[string,charset(UTF16)] uint16 *logon_server;
- } USER_INFO_1;
+ } wkssvc_NetrWkstaUserInfo1;
typedef struct {
uint32 entries_read;
- [size_is(entries_read)] USER_INFO_1 *user1;
- } USER_INFO_1_CONTAINER;
+ [size_is(entries_read)] wkssvc_NetrWkstaUserInfo1 *user1;
+ } wkssvc_NetWkstaEnumUsersCtr1;
typedef [switch_type(uint32)] union {
- [case(0)] USER_INFO_0_CONTAINER *user0;
- [case(1)] USER_INFO_1_CONTAINER *user1;
- } WKS_USER_ENUM_UNION;
+ [case(0)] wkssvc_NetWkstaEnumUsersCtr0 *user0;
+ [case(1)] wkssvc_NetWkstaEnumUsersCtr1 *user1;
+ } wkssvc_NetWkstaEnumUsersCtr;
+
+ typedef struct {
+ uint32 level;
+ [switch_is(level)] wkssvc_NetWkstaEnumUsersCtr ctr;
+ } wkssvc_NetWkstaEnumUsersInfo;
WERROR wkssvc_NetWkstaEnumUsers(
[in] [string,charset(UTF16)] uint16 *server_name,
- [in] uint32 level,
- [in] [out] [ref] WKS_USER_ENUM_UNION *users,
+ [in,out,ref] wkssvc_NetWkstaEnumUsersInfo *info,
[in] uint32 prefmaxlen,
- [out] uint32 *entriesread,
- [out] uint32 *totalentries,
- [in] [out] [ref] uint32 *resumehandle
+ [out,ref] uint32 *entries_read,
+ [in,out] uint32 *resume_handle
);
/*****************************/
/* Function 0x03 */
- WERROR WKSSVC_NETRWKSTAUSERGETINFO ();
+ typedef struct {
+ [string,charset(UTF16)] uint16 *other_domains;
+ } wkssvc_NetrWkstaUserInfo1101;
+
+ typedef [switch_type(uint32)] union {
+ [case(0)] wkssvc_NetrWkstaUserInfo0 *info0;
+ [case(1)] wkssvc_NetrWkstaUserInfo1 *info1;
+ [case(1101)] wkssvc_NetrWkstaUserInfo1101 *info1101;
+ } wkssvc_NetrWkstaUserInfo;
+
+ WERROR wkssvc_NetrWkstaUserGetInfo(
+ [in] [string,charset(UTF16)] uint16 *unknown,
+ [in] uint32 level,
+ [out,ref] [switch_is(level)] wkssvc_NetrWkstaUserInfo *info
+ );
/*****************************/
/* Function 0x04 */
- WERROR WKSSVC_NETRWKSTAUSERSETINFO ();
-
+ WERROR wkssvc_NetrWkstaUserSetInfo(
+ [in] [string,charset(UTF16)] uint16 *unknown,
+ [in] uint32 level,
+ [in,ref] [switch_is(level)] wkssvc_NetrWkstaUserInfo *info,
+ [in,out] uint32 *parm_err
+ );
/*****************************/
/* Function 0x05 */
@@ -212,88 +361,303 @@ import "srvsvc.idl";
typedef union {
[case(0)] wkssvc_NetWkstaTransportCtr0 *ctr0;
- [default] ;
} wkssvc_NetWkstaTransportCtr;
+ typedef struct {
+ uint32 level;
+ [switch_is(level)] wkssvc_NetWkstaTransportCtr ctr;
+ } wkssvc_NetWkstaTransportInfo;
+
WERROR wkssvc_NetWkstaTransportEnum (
[in] [string,charset(UTF16)] uint16 *server_name,
- [in,out,ref] uint32 *level,
- [in,out,switch_is(*level),ref] wkssvc_NetWkstaTransportCtr *ctr,
+ [in,out,ref] wkssvc_NetWkstaTransportInfo *info,
[in] uint32 max_buffer,
- [out] uint32 *totalentries,
- [in,out,ref] uint32 *resume_handle
+ [out,ref] uint32 *total_entries,
+ [in,out] uint32 *resume_handle
);
-
/*****************************/
/* Function 0x06 */
- WERROR WKSSVC_NETRWKSTATRANSPORTADD ();
+ /* only supported on NT */
+ WERROR wkssvc_NetrWkstaTransportAdd(
+ [in] [string,charset(UTF16)] uint16 *server_name,
+ [in] uint32 level, /* must be 0 */
+ [in,ref] wkssvc_NetWkstaTransportInfo0 *info0,
+ [in,out] uint32 *parm_err
+ );
/*****************************/
/* Function 0x07 */
- WERROR WKSSVC_NETRWKSTATRANSPORTDEL ();
+ /* only supported on NT */
+ WERROR wkssvc_NetrWkstaTransportDel(
+ [in] [string,charset(UTF16)] uint16 *server_name,
+ [in] [string,charset(UTF16)] uint16 *transport_name,
+ [in] uint32 unknown3
+ );
/*****************************/
/* Function 0x08 */
- WERROR WKSSVC_NETRUSEADD ();
+ typedef struct {
+ [string,charset(UTF16)] uint16 *unknown1;
+ [string,charset(UTF16)] uint16 *unknown2;
+ } wkssvc_NetrUseInfo3;
+
+ typedef struct {
+ [string,charset(UTF16)] uint16 *local;
+ [string,charset(UTF16)] uint16 *remote;
+ [string,charset(UTF16)] uint16 *password;
+ uint32 status;
+ uint32 asg_type;
+ uint32 ref_count;
+ uint32 use_count;
+ [string,charset(UTF16)] uint16 *user_name;
+ [string,charset(UTF16)] uint16 *domain_name;
+ } wkssvc_NetrUseInfo2;
+
+ typedef struct {
+ [string,charset(UTF16)] uint16 *local;
+ [string,charset(UTF16)] uint16 *remote;
+ [string,charset(UTF16)] uint16 *password;
+ uint32 status;
+ uint32 asg_type;
+ uint32 ref_count;
+ uint32 use_count;
+ } wkssvc_NetrUseInfo1;
+
+ typedef struct {
+ [string,charset(UTF16)] uint16 *local;
+ [string,charset(UTF16)] uint16 *remote;
+ } wkssvc_NetrUseInfo0;
+
+ typedef [switch_type(uint32)] union {
+ [case(0)] wkssvc_NetrUseInfo0 *info0;
+ [case(1)] wkssvc_NetrUseInfo1 *info1;
+ [case(2)] wkssvc_NetrUseInfo2 *info2;
+ [case(3)] wkssvc_NetrUseInfo3 *info3;
+ } wkssvc_NetrUseGetInfoCtr;
+
+ WERROR wkssvc_NetrUseAdd(
+ [in] [string,charset(UTF16)] uint16 *server_name,
+ [in] uint32 level,
+ [in,ref] [switch_is(level)] wkssvc_NetrUseGetInfoCtr *ctr,
+ [in,out] uint32 *parm_err
+ );
/*****************************/
/* Function 0x09 */
- WERROR WKSSVC_NETRUSEGETINFO ();
+ WERROR wkssvc_NetrUseGetInfo(
+ [in] [string,charset(UTF16)] uint16 *server_name,
+ [in,ref] [string,charset(UTF16)] uint16 *use_name,
+ [in] uint32 level,
+ [out,ref] [switch_is(level)] wkssvc_NetrUseGetInfoCtr *ctr
+ );
/*****************************/
/* Function 0x0a */
- WERROR WKSSVC_NETRUSEDEL ();
+ WERROR wkssvc_NetrUseDel(
+ [in] [string,charset(UTF16)] uint16 *server_name,
+ [in,ref] [string,charset(UTF16)] uint16 *use_name,
+ [in] uint32 force_cond
+ );
/*****************************/
/* Function 0x0b */
- WERROR WKSSVC_NETRUSEENUM ();
+ typedef struct {
+ uint32 count;
+ [size_is(count)] wkssvc_NetrUseInfo2 *array;
+ } wkssvc_NetrUseEnumCtr2;
+
+ typedef struct {
+ uint32 count;
+ [size_is(count)] wkssvc_NetrUseInfo1 *array;
+ } wkssvc_NetrUseEnumCtr1;
+
+ typedef struct {
+ uint32 count;
+ [size_is(count)] wkssvc_NetrUseInfo0 *array;
+ } wkssvc_NetrUseEnumCtr0;
+
+ typedef [switch_type(uint32)] union {
+ [case(0)] wkssvc_NetrUseEnumCtr0 *ctr0;
+ [case(1)] wkssvc_NetrUseEnumCtr1 *ctr1;
+ [case(2)] wkssvc_NetrUseEnumCtr2 *ctr2;
+ } wkssvc_NetrUseEnumCtr;
+
+ typedef struct {
+ uint32 level;
+ [switch_is(level)] wkssvc_NetrUseEnumCtr ctr;
+ } wkssvc_NetrUseEnumInfo;
+
+ WERROR wkssvc_NetrUseEnum(
+ [in] [string,charset(UTF16)] uint16 *server_name,
+ [in,out,ref] wkssvc_NetrUseEnumInfo *info,
+ [in] uint32 prefmaxlen,
+ [out,ref] uint32 *entries_read,
+ [in,out] uint32 *resume_handle
+ );
/*****************************/
/* Function 0x0c */
- WERROR WKSSVC_NETRMESSAGEBUFFERSEND ();
+ WERROR wkssvc_NetrMessageBufferSend(
+ [in] [string,charset(UTF16)] uint16 *server_name,
+ [in,ref] [string,charset(UTF16)] uint16 *message_name,
+ [in] [string,charset(UTF16)] uint16 *message_sender_name,
+ [in,ref] [size_is(message_size)] uint8 *message_buffer,
+ [in] uint32 message_size
+ );
/*****************************/
/* Function 0x0d */
- WERROR WKSSVC_NETRWORKSTATIONSTATISTICSGET ();
+ typedef struct {
+ hyper unknown1;
+ hyper unknown2;
+ hyper unknown3;
+ hyper unknown4;
+ hyper unknown5;
+ hyper unknown6;
+ hyper unknown7;
+ hyper unknown8;
+ hyper unknown9;
+ hyper unknown10;
+ hyper unknown11;
+ hyper unknown12;
+ hyper unknown13;
+ uint32 unknown14;
+ uint32 unknown15;
+ uint32 unknown16;
+ uint32 unknown17;
+ uint32 unknown18;
+ uint32 unknown19;
+ uint32 unknown20;
+ uint32 unknown21;
+ uint32 unknown22;
+ uint32 unknown23;
+ uint32 unknown24;
+ uint32 unknown25;
+ uint32 unknown26;
+ uint32 unknown27;
+ uint32 unknown28;
+ uint32 unknown29;
+ uint32 unknown30;
+ uint32 unknown31;
+ uint32 unknown32;
+ uint32 unknown33;
+ uint32 unknown34;
+ uint32 unknown35;
+ uint32 unknown36;
+ uint32 unknown37;
+ uint32 unknown38;
+ uint32 unknown39;
+ uint32 unknown40;
+ } wkssvc_NetrWorkstationStatistics;
+
+ WERROR wkssvc_NetrWorkstationStatisticsGet(
+ [in] [string,charset(UTF16)] uint16 *server_name,
+ [in] [string,charset(UTF16)] uint16 *unknown2,
+ [in] uint32 unknown3,
+ [in] uint32 unknown4,
+ [out,ref] wkssvc_NetrWorkstationStatistics **info
+ );
/*****************************/
/* Function 0x0e */
- WERROR WKSSVC_NETRLOGONDOMAINNAMEADD ();
+ WERROR wkssvc_NetrLogonDomainNameAdd(
+ [in,ref] [string,charset(UTF16)] uint16 *domain_name
+ );
/*****************************/
/* Function 0x0f */
- WERROR WKSSVC_NETRLOGONDOMAINNAMEDEL ();
+ WERROR wkssvc_NetrLogonDomainNameDel(
+ [in,ref] [string,charset(UTF16)] uint16 *domain_name
+ );
/*****************************/
/* Function 0x10 */
- WERROR WKSSVC_NETRJOINDOMAIN ();
+ WERROR wkssvc_NetrJoinDomain(
+ [in] [string,charset(UTF16)] uint16 *server_name,
+ [in,ref] [string,charset(UTF16)] uint16 *domain_name,
+ [in] [string,charset(UTF16)] uint16 *account_ou,
+ [in] [string,charset(UTF16)] uint16 *Account,
+ [in] [string,charset(UTF16)] uint16 *password,
+ [in] wkssvc_joinflags join_flags
+ );
/*****************************/
/* Function 0x11 */
- WERROR WKSSVC_NETRUNJOINDOMAIN ();
+ WERROR wkssvc_NetrUnjoinDomain(
+ [in] [string,charset(UTF16)] uint16 *server_name,
+ [in] [string,charset(UTF16)] uint16 *Account,
+ [in] [string,charset(UTF16)] uint16 *password,
+ [in] wkssvc_joinflags unjoin_flags
+ );
/*****************************/
/* Function 0x12 */
- WERROR WKSSVC_NETRRENAMEMACHINEINDOMAIN ();
+ typedef [bitmap32bit] bitmap {
+ /* TRUE: create the account in the domain */
+ WKSSVC_JOIN_FLAGS_ACCOUNT_CREATE = 0x00000002
+ } wkssvc_renameflags;
+
+ WERROR wkssvc_NetrRenameMachineInDomain(
+ [in] [string,charset(UTF16)] uint16 *server_name,
+ [in] [string,charset(UTF16)] uint16 *NewMachineName,
+ [in] [string,charset(UTF16)] uint16 *Account,
+ [in] [string,charset(UTF16)] uint16 *password,
+ [in] wkssvc_renameflags RenameOptions
+ );
/*****************************/
/* Function 0x13 */
- WERROR WKSSVC_NETRVALIDATENAME ();
+ typedef enum {
+ NetSetupUnknown = 0,
+ NetSetupMachine = 1,
+ NetSetupWorkgroup = 2,
+ NetSetupDomain = 3,
+ NetSetupNonExistentDomain = 4,
+ NetSetupDnsMachine = 5
+ } wkssvc_NetValidateNameType;
+
+ WERROR wkssvc_NetrValidateName(
+ [in] [string,charset(UTF16)] uint16 *server_name,
+ [in,ref] [string,charset(UTF16)] uint16 *name,
+ [in] [string,charset(UTF16)] uint16 *Account,
+ [in] [string,charset(UTF16)] uint16 *Password,
+ [in] wkssvc_NetValidateNameType name_type
+ );
/*****************************/
/* Function 0x14 */
- WERROR WKSSVC_NETRGETJOININFORMATION ();
+ typedef enum {
+ NetSetupUnknownStatus = 0,
+ NetSetupUnjoined = 1,
+ NetSetupWorkgroupName = 2,
+ NetSetupDomainName = 3
+ } wkssvc_NetJoinStatus;
+
+ WERROR wkssvc_NetrGetJoinInformation(
+ [in] [string,charset(UTF16)] uint16 *server_name,
+ [in,out,ref] [string,charset(UTF16)] uint16 **name_buffer,
+ [out,ref] wkssvc_NetJoinStatus *name_type
+ );
/*****************************/
/* Function 0x15 */
- WERROR WKSSVC_NETRGETJOINABLEOUS ();
+ WERROR wkssvc_NetrGetJoinableOus(
+ [in] [string,charset(UTF16)] uint16 *server_name,
+ [in,ref] [string,charset(UTF16)] uint16 *domain_name,
+ [in] [string,charset(UTF16)] uint16 *Account,
+ [in] [string,charset(UTF16)] uint16 *unknown,
+ [in,out,ref] uint32 *num_ous,
+ [out,ref] [size_is(*num_ous)] [string,charset(UTF16)] uint16 ***ous
+ );
- typedef struct {
+ typedef [flag(NDR_PAHEX)] struct {
uint8 data[524];
} wkssvc_PasswordBuffer;
typedef [bitmap32bit] bitmap {
+ WKSSVC_JOIN_FLAGS_JOIN_WITH_NEW_NAME = 0x00000400,
+ WKSSVC_JOIN_FLAGS_JOIN_DC_ACCOUNT = 0x00000200,
/* TRUE: defer setting the SPN and dNSHostName until a rename operation */
WKSSVC_JOIN_FLAGS_DEFER_SPN = 0x00000100,
@@ -305,7 +669,7 @@ import "srvsvc.idl";
/* TRUE: allow the join to complete even if the account already exists */
WKSSVC_JOIN_FLAGS_DOMAIN_JOIN_IF_JOINED = 0x00000020,
-
+
/* TRUE: this join is part of a w9x upgrade */
WKSSVC_JOIN_FLAGS_WIN9X_UPGRADE = 0x00000010,
@@ -317,15 +681,15 @@ import "srvsvc.idl";
/* TRUE: join domain FALSE: join workgroup */
WKSSVC_JOIN_FLAGS_JOIN_TYPE = 0x00000001
-
+
} wkssvc_joinflags;
/*****************************/
/* Function 0x16 */
WERROR wkssvc_NetrJoinDomain2 (
[in] [string,charset(UTF16)] uint16 *server_name,
- [in] [string,charset(UTF16),ref] uint16 *domain_name,
- [in] [string,charset(UTF16)] uint16 *account_name,
+ [in,ref] [string,charset(UTF16)] uint16 *domain_name,
+ [in] [string,charset(UTF16)] uint16 *account_ou,
[in] [string,charset(UTF16)] uint16 *admin_account,
[in] wkssvc_PasswordBuffer *encrypted_password,
[in] wkssvc_joinflags join_flags
@@ -334,60 +698,91 @@ import "srvsvc.idl";
/*****************************/
/* Function 0x17 */
WERROR wkssvc_NetrUnjoinDomain2 (
- [in] [unique] [string,charset(UTF16)] uint16 *server_name,
- [in] [unique] [string,charset(UTF16)] uint16 *account,
- [in] [unique] wkssvc_PasswordBuffer *encrypted_password,
+ [in] [string,charset(UTF16)] uint16 *server_name,
+ [in] [string,charset(UTF16)] uint16 *account,
+ [in] wkssvc_PasswordBuffer *encrypted_password,
[in] wkssvc_joinflags unjoin_flags
);
- typedef [bitmap32bit] bitmap {
- /* TRUE: create the account in the domain */
- WKSSVC_JOIN_FLAGS_ACCOUNT_CREATE = 0x00000002
- } wkssvc_renameflags;
-
/*****************************/
/* Function 0x18 */
WERROR wkssvc_NetrRenameMachineInDomain2(
- [in] [unique] [string,charset(UTF16)] uint16 *server_name,
- [in] [unique] [string,charset(UTF16)] uint16 *NewMachineName,
- [in] [unique] [string,charset(UTF16)] uint16 *Account,
- [in] [unique] wkssvc_PasswordBuffer *EncryptedPassword,
+ [in] [string,charset(UTF16)] uint16 *server_name,
+ [in] [string,charset(UTF16)] uint16 *NewMachineName,
+ [in] [string,charset(UTF16)] uint16 *Account,
+ [in] wkssvc_PasswordBuffer *EncryptedPassword,
[in] wkssvc_renameflags RenameOptions
);
/*****************************/
/* Function 0x19 */
- WERROR WKSSVC_NETRVALIDATENAME2 ();
+ WERROR wkssvc_NetrValidateName2(
+ [in] [string,charset(UTF16)] uint16 *server_name,
+ [in,ref] [string,charset(UTF16)] uint16 *name,
+ [in] [string,charset(UTF16)] uint16 *Account,
+ [in] wkssvc_PasswordBuffer *EncryptedPassword,
+ [in] wkssvc_NetValidateNameType name_type
+ );
/*****************************/
/* Function 0x1a */
- WERROR WKSSVC_NETRGETJOINABLEOUS2 ();
+ WERROR wkssvc_NetrGetJoinableOus2(
+ [in] [string,charset(UTF16)] uint16 *server_name,
+ [in,ref] [string,charset(UTF16)] uint16 *domain_name,
+ [in] [string,charset(UTF16)] uint16 *Account,
+ [in] wkssvc_PasswordBuffer *EncryptedPassword,
+ [in,out,ref] uint32 *num_ous,
+ [out,ref] [size_is(*num_ous)] [string,charset(UTF16)] uint16 ***ous
+ );
/*****************************/
/* Function 0x1b */
WERROR wkssvc_NetrAddAlternateComputerName(
- [in] [unique] [string,charset(UTF16)] uint16 *server_name,
- [in] [unique] [string,charset(UTF16)] uint16 *NewAlternateMachineName,
- [in] [unique] [string,charset(UTF16)] uint16 *Account,
- [in] [unique] wkssvc_PasswordBuffer *EncryptedPassword,
+ [in] [string,charset(UTF16)] uint16 *server_name,
+ [in] [string,charset(UTF16)] uint16 *NewAlternateMachineName,
+ [in] [string,charset(UTF16)] uint16 *Account,
+ [in] wkssvc_PasswordBuffer *EncryptedPassword,
[in] uint32 Reserved
);
/*****************************/
/* Function 0x1c */
WERROR wkssvc_NetrRemoveAlternateComputerName(
- [in] [unique] [string,charset(UTF16)] uint16 *server_name,
- [in] [unique] [string,charset(UTF16)] uint16 *AlternateMachineNameToRemove,
- [in] [unique] [string,charset(UTF16)] uint16 *Account,
- [in] [unique] wkssvc_PasswordBuffer *EncryptedPassword,
+ [in] [string,charset(UTF16)] uint16 *server_name,
+ [in] [string,charset(UTF16)] uint16 *AlternateMachineNameToRemove,
+ [in] [string,charset(UTF16)] uint16 *Account,
+ [in] wkssvc_PasswordBuffer *EncryptedPassword,
[in] uint32 Reserved
);
/*****************************/
/* Function 0x1d */
- WERROR WKSSVC_NETRSETPRIMARYCOMPUTERNAME ();
+ WERROR wkssvc_NetrSetPrimaryComputername(
+ [in] [string,charset(UTF16)] uint16 *server_name,
+ [in] [string,charset(UTF16)] uint16 *primary_name,
+ [in] [string,charset(UTF16)] uint16 *Account,
+ [in] wkssvc_PasswordBuffer *EncryptedPassword,
+ [in] uint32 Reserved
+ );
/*****************************/
/* Function 0x1e */
- WERROR WKSSVC_NETRENUMERATECOMPUTERNAMES ();
+ typedef enum {
+ NetPrimaryComputerName = 0,
+ NetAlternateComputerNames = 1,
+ NetAllComputerNames = 2,
+ NetComputerNameTypeMax = 3
+ } wkssvc_ComputerNameType;
+
+ typedef struct {
+ uint32 count;
+ [size_is(count)] lsa_String *computer_name;
+ } wkssvc_ComputerNamesCtr;
+
+ WERROR wkssvc_NetrEnumerateComputerNames(
+ [in] [string,charset(UTF16)] uint16 *server_name,
+ [in] wkssvc_ComputerNameType name_type,
+ [in] uint32 Reserved,
+ [out,ref] wkssvc_ComputerNamesCtr **ctr
+ );
}