1
/* parser auto-generated by pidl */
4
#include "librpc/gen_ndr/ndr_samr.h"
6
#include "librpc/gen_ndr/ndr_misc.h"
7
#include "librpc/gen_ndr/ndr_lsa.h"
8
#include "librpc/gen_ndr/ndr_security.h"
9
_PUBLIC_ enum ndr_err_code ndr_push_netr_SamDatabaseID(struct ndr_push *ndr, int ndr_flags, enum netr_SamDatabaseID r)
11
NDR_CHECK(ndr_push_enum_uint32(ndr, NDR_SCALARS, r));
12
return NDR_ERR_SUCCESS;
15
_PUBLIC_ enum ndr_err_code ndr_pull_netr_SamDatabaseID(struct ndr_pull *ndr, int ndr_flags, enum netr_SamDatabaseID *r)
18
NDR_CHECK(ndr_pull_enum_uint32(ndr, NDR_SCALARS, &v));
20
return NDR_ERR_SUCCESS;
23
_PUBLIC_ void ndr_print_netr_SamDatabaseID(struct ndr_print *ndr, const char *name, enum netr_SamDatabaseID r)
25
const char *val = NULL;
28
case SAM_DATABASE_DOMAIN: val = "SAM_DATABASE_DOMAIN"; break;
29
case SAM_DATABASE_BUILTIN: val = "SAM_DATABASE_BUILTIN"; break;
30
case SAM_DATABASE_PRIVS: val = "SAM_DATABASE_PRIVS"; break;
32
ndr_print_enum(ndr, name, "ENUM", val, r);
35
_PUBLIC_ enum ndr_err_code ndr_push_samr_AcctFlags(struct ndr_push *ndr, int ndr_flags, uint32_t r)
37
NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r));
38
return NDR_ERR_SUCCESS;
41
_PUBLIC_ enum ndr_err_code ndr_pull_samr_AcctFlags(struct ndr_pull *ndr, int ndr_flags, uint32_t *r)
44
NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &v));
46
return NDR_ERR_SUCCESS;
49
_PUBLIC_ void ndr_print_samr_AcctFlags(struct ndr_print *ndr, const char *name, uint32_t r)
51
ndr_print_uint32(ndr, name, r);
53
ndr_print_bitmap_flag(ndr, sizeof(uint32_t), "ACB_DISABLED", ACB_DISABLED, r);
54
ndr_print_bitmap_flag(ndr, sizeof(uint32_t), "ACB_HOMDIRREQ", ACB_HOMDIRREQ, r);
55
ndr_print_bitmap_flag(ndr, sizeof(uint32_t), "ACB_PWNOTREQ", ACB_PWNOTREQ, r);
56
ndr_print_bitmap_flag(ndr, sizeof(uint32_t), "ACB_TEMPDUP", ACB_TEMPDUP, r);
57
ndr_print_bitmap_flag(ndr, sizeof(uint32_t), "ACB_NORMAL", ACB_NORMAL, r);
58
ndr_print_bitmap_flag(ndr, sizeof(uint32_t), "ACB_MNS", ACB_MNS, r);
59
ndr_print_bitmap_flag(ndr, sizeof(uint32_t), "ACB_DOMTRUST", ACB_DOMTRUST, r);
60
ndr_print_bitmap_flag(ndr, sizeof(uint32_t), "ACB_WSTRUST", ACB_WSTRUST, r);
61
ndr_print_bitmap_flag(ndr, sizeof(uint32_t), "ACB_SVRTRUST", ACB_SVRTRUST, r);
62
ndr_print_bitmap_flag(ndr, sizeof(uint32_t), "ACB_PWNOEXP", ACB_PWNOEXP, r);
63
ndr_print_bitmap_flag(ndr, sizeof(uint32_t), "ACB_AUTOLOCK", ACB_AUTOLOCK, r);
64
ndr_print_bitmap_flag(ndr, sizeof(uint32_t), "ACB_ENC_TXT_PWD_ALLOWED", ACB_ENC_TXT_PWD_ALLOWED, r);
65
ndr_print_bitmap_flag(ndr, sizeof(uint32_t), "ACB_SMARTCARD_REQUIRED", ACB_SMARTCARD_REQUIRED, r);
66
ndr_print_bitmap_flag(ndr, sizeof(uint32_t), "ACB_TRUSTED_FOR_DELEGATION", ACB_TRUSTED_FOR_DELEGATION, r);
67
ndr_print_bitmap_flag(ndr, sizeof(uint32_t), "ACB_NOT_DELEGATED", ACB_NOT_DELEGATED, r);
68
ndr_print_bitmap_flag(ndr, sizeof(uint32_t), "ACB_USE_DES_KEY_ONLY", ACB_USE_DES_KEY_ONLY, r);
69
ndr_print_bitmap_flag(ndr, sizeof(uint32_t), "ACB_DONT_REQUIRE_PREAUTH", ACB_DONT_REQUIRE_PREAUTH, r);
70
ndr_print_bitmap_flag(ndr, sizeof(uint32_t), "ACB_PW_EXPIRED", ACB_PW_EXPIRED, r);
71
ndr_print_bitmap_flag(ndr, sizeof(uint32_t), "ACB_TRUSTED_TO_AUTHENTICATE_FOR_DELEGATION", ACB_TRUSTED_TO_AUTHENTICATE_FOR_DELEGATION, r);
72
ndr_print_bitmap_flag(ndr, sizeof(uint32_t), "ACB_NO_AUTH_DATA_REQD", ACB_NO_AUTH_DATA_REQD, r);
73
ndr_print_bitmap_flag(ndr, sizeof(uint32_t), "ACB_PARTIAL_SECRETS_ACCOUNT", ACB_PARTIAL_SECRETS_ACCOUNT, r);
74
ndr_print_bitmap_flag(ndr, sizeof(uint32_t), "ACB_USE_AES_KEYS", ACB_USE_AES_KEYS, r);
78
static enum ndr_err_code ndr_push_samr_ConnectAccessMask(struct ndr_push *ndr, int ndr_flags, uint32_t r)
80
NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r));
81
return NDR_ERR_SUCCESS;
84
static enum ndr_err_code ndr_pull_samr_ConnectAccessMask(struct ndr_pull *ndr, int ndr_flags, uint32_t *r)
87
NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &v));
89
return NDR_ERR_SUCCESS;
92
_PUBLIC_ void ndr_print_samr_ConnectAccessMask(struct ndr_print *ndr, const char *name, uint32_t r)
94
ndr_print_uint32(ndr, name, r);
96
ndr_print_bitmap_flag(ndr, sizeof(uint32_t), "SAMR_ACCESS_CONNECT_TO_SERVER", SAMR_ACCESS_CONNECT_TO_SERVER, r);
97
ndr_print_bitmap_flag(ndr, sizeof(uint32_t), "SAMR_ACCESS_SHUTDOWN_SERVER", SAMR_ACCESS_SHUTDOWN_SERVER, r);
98
ndr_print_bitmap_flag(ndr, sizeof(uint32_t), "SAMR_ACCESS_INITIALIZE_SERVER", SAMR_ACCESS_INITIALIZE_SERVER, r);
99
ndr_print_bitmap_flag(ndr, sizeof(uint32_t), "SAMR_ACCESS_CREATE_DOMAIN", SAMR_ACCESS_CREATE_DOMAIN, r);
100
ndr_print_bitmap_flag(ndr, sizeof(uint32_t), "SAMR_ACCESS_ENUM_DOMAINS", SAMR_ACCESS_ENUM_DOMAINS, r);
101
ndr_print_bitmap_flag(ndr, sizeof(uint32_t), "SAMR_ACCESS_LOOKUP_DOMAIN", SAMR_ACCESS_LOOKUP_DOMAIN, r);
105
static enum ndr_err_code ndr_push_samr_UserAccessMask(struct ndr_push *ndr, int ndr_flags, uint32_t r)
107
NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r));
108
return NDR_ERR_SUCCESS;
111
static enum ndr_err_code ndr_pull_samr_UserAccessMask(struct ndr_pull *ndr, int ndr_flags, uint32_t *r)
114
NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &v));
116
return NDR_ERR_SUCCESS;
119
_PUBLIC_ void ndr_print_samr_UserAccessMask(struct ndr_print *ndr, const char *name, uint32_t r)
121
ndr_print_uint32(ndr, name, r);
123
ndr_print_bitmap_flag(ndr, sizeof(uint32_t), "SAMR_USER_ACCESS_GET_NAME_ETC", SAMR_USER_ACCESS_GET_NAME_ETC, r);
124
ndr_print_bitmap_flag(ndr, sizeof(uint32_t), "SAMR_USER_ACCESS_GET_LOCALE", SAMR_USER_ACCESS_GET_LOCALE, r);
125
ndr_print_bitmap_flag(ndr, sizeof(uint32_t), "SAMR_USER_ACCESS_SET_LOC_COM", SAMR_USER_ACCESS_SET_LOC_COM, r);
126
ndr_print_bitmap_flag(ndr, sizeof(uint32_t), "SAMR_USER_ACCESS_GET_LOGONINFO", SAMR_USER_ACCESS_GET_LOGONINFO, r);
127
ndr_print_bitmap_flag(ndr, sizeof(uint32_t), "SAMR_USER_ACCESS_GET_ATTRIBUTES", SAMR_USER_ACCESS_GET_ATTRIBUTES, r);
128
ndr_print_bitmap_flag(ndr, sizeof(uint32_t), "SAMR_USER_ACCESS_SET_ATTRIBUTES", SAMR_USER_ACCESS_SET_ATTRIBUTES, r);
129
ndr_print_bitmap_flag(ndr, sizeof(uint32_t), "SAMR_USER_ACCESS_CHANGE_PASSWORD", SAMR_USER_ACCESS_CHANGE_PASSWORD, r);
130
ndr_print_bitmap_flag(ndr, sizeof(uint32_t), "SAMR_USER_ACCESS_SET_PASSWORD", SAMR_USER_ACCESS_SET_PASSWORD, r);
131
ndr_print_bitmap_flag(ndr, sizeof(uint32_t), "SAMR_USER_ACCESS_GET_GROUPS", SAMR_USER_ACCESS_GET_GROUPS, r);
132
ndr_print_bitmap_flag(ndr, sizeof(uint32_t), "SAMR_USER_ACCESS_GET_GROUP_MEMBERSHIP", SAMR_USER_ACCESS_GET_GROUP_MEMBERSHIP, r);
133
ndr_print_bitmap_flag(ndr, sizeof(uint32_t), "SAMR_USER_ACCESS_CHANGE_GROUP_MEMBERSHIP", SAMR_USER_ACCESS_CHANGE_GROUP_MEMBERSHIP, r);
137
static enum ndr_err_code ndr_push_samr_DomainAccessMask(struct ndr_push *ndr, int ndr_flags, uint32_t r)
139
NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r));
140
return NDR_ERR_SUCCESS;
143
static enum ndr_err_code ndr_pull_samr_DomainAccessMask(struct ndr_pull *ndr, int ndr_flags, uint32_t *r)
146
NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &v));
148
return NDR_ERR_SUCCESS;
151
_PUBLIC_ void ndr_print_samr_DomainAccessMask(struct ndr_print *ndr, const char *name, uint32_t r)
153
ndr_print_uint32(ndr, name, r);
155
ndr_print_bitmap_flag(ndr, sizeof(uint32_t), "SAMR_DOMAIN_ACCESS_LOOKUP_INFO_1", SAMR_DOMAIN_ACCESS_LOOKUP_INFO_1, r);
156
ndr_print_bitmap_flag(ndr, sizeof(uint32_t), "SAMR_DOMAIN_ACCESS_SET_INFO_1", SAMR_DOMAIN_ACCESS_SET_INFO_1, r);
157
ndr_print_bitmap_flag(ndr, sizeof(uint32_t), "SAMR_DOMAIN_ACCESS_LOOKUP_INFO_2", SAMR_DOMAIN_ACCESS_LOOKUP_INFO_2, r);
158
ndr_print_bitmap_flag(ndr, sizeof(uint32_t), "SAMR_DOMAIN_ACCESS_SET_INFO_2", SAMR_DOMAIN_ACCESS_SET_INFO_2, r);
159
ndr_print_bitmap_flag(ndr, sizeof(uint32_t), "SAMR_DOMAIN_ACCESS_CREATE_USER", SAMR_DOMAIN_ACCESS_CREATE_USER, r);
160
ndr_print_bitmap_flag(ndr, sizeof(uint32_t), "SAMR_DOMAIN_ACCESS_CREATE_GROUP", SAMR_DOMAIN_ACCESS_CREATE_GROUP, r);
161
ndr_print_bitmap_flag(ndr, sizeof(uint32_t), "SAMR_DOMAIN_ACCESS_CREATE_ALIAS", SAMR_DOMAIN_ACCESS_CREATE_ALIAS, r);
162
ndr_print_bitmap_flag(ndr, sizeof(uint32_t), "SAMR_DOMAIN_ACCESS_LOOKUP_ALIAS", SAMR_DOMAIN_ACCESS_LOOKUP_ALIAS, r);
163
ndr_print_bitmap_flag(ndr, sizeof(uint32_t), "SAMR_DOMAIN_ACCESS_ENUM_ACCOUNTS", SAMR_DOMAIN_ACCESS_ENUM_ACCOUNTS, r);
164
ndr_print_bitmap_flag(ndr, sizeof(uint32_t), "SAMR_DOMAIN_ACCESS_OPEN_ACCOUNT", SAMR_DOMAIN_ACCESS_OPEN_ACCOUNT, r);
165
ndr_print_bitmap_flag(ndr, sizeof(uint32_t), "SAMR_DOMAIN_ACCESS_SET_INFO_3", SAMR_DOMAIN_ACCESS_SET_INFO_3, r);
169
static enum ndr_err_code ndr_push_samr_GroupAccessMask(struct ndr_push *ndr, int ndr_flags, uint32_t r)
171
NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r));
172
return NDR_ERR_SUCCESS;
175
static enum ndr_err_code ndr_pull_samr_GroupAccessMask(struct ndr_pull *ndr, int ndr_flags, uint32_t *r)
178
NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &v));
180
return NDR_ERR_SUCCESS;
183
_PUBLIC_ void ndr_print_samr_GroupAccessMask(struct ndr_print *ndr, const char *name, uint32_t r)
185
ndr_print_uint32(ndr, name, r);
187
ndr_print_bitmap_flag(ndr, sizeof(uint32_t), "SAMR_GROUP_ACCESS_LOOKUP_INFO", SAMR_GROUP_ACCESS_LOOKUP_INFO, r);
188
ndr_print_bitmap_flag(ndr, sizeof(uint32_t), "SAMR_GROUP_ACCESS_SET_INFO", SAMR_GROUP_ACCESS_SET_INFO, r);
189
ndr_print_bitmap_flag(ndr, sizeof(uint32_t), "SAMR_GROUP_ACCESS_ADD_MEMBER", SAMR_GROUP_ACCESS_ADD_MEMBER, r);
190
ndr_print_bitmap_flag(ndr, sizeof(uint32_t), "SAMR_GROUP_ACCESS_REMOVE_MEMBER", SAMR_GROUP_ACCESS_REMOVE_MEMBER, r);
191
ndr_print_bitmap_flag(ndr, sizeof(uint32_t), "SAMR_GROUP_ACCESS_GET_MEMBERS", SAMR_GROUP_ACCESS_GET_MEMBERS, r);
195
static enum ndr_err_code ndr_push_samr_AliasAccessMask(struct ndr_push *ndr, int ndr_flags, uint32_t r)
197
NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r));
198
return NDR_ERR_SUCCESS;
201
static enum ndr_err_code ndr_pull_samr_AliasAccessMask(struct ndr_pull *ndr, int ndr_flags, uint32_t *r)
204
NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &v));
206
return NDR_ERR_SUCCESS;
209
_PUBLIC_ void ndr_print_samr_AliasAccessMask(struct ndr_print *ndr, const char *name, uint32_t r)
211
ndr_print_uint32(ndr, name, r);
213
ndr_print_bitmap_flag(ndr, sizeof(uint32_t), "SAMR_ALIAS_ACCESS_ADD_MEMBER", SAMR_ALIAS_ACCESS_ADD_MEMBER, r);
214
ndr_print_bitmap_flag(ndr, sizeof(uint32_t), "SAMR_ALIAS_ACCESS_REMOVE_MEMBER", SAMR_ALIAS_ACCESS_REMOVE_MEMBER, r);
215
ndr_print_bitmap_flag(ndr, sizeof(uint32_t), "SAMR_ALIAS_ACCESS_GET_MEMBERS", SAMR_ALIAS_ACCESS_GET_MEMBERS, r);
216
ndr_print_bitmap_flag(ndr, sizeof(uint32_t), "SAMR_ALIAS_ACCESS_LOOKUP_INFO", SAMR_ALIAS_ACCESS_LOOKUP_INFO, r);
217
ndr_print_bitmap_flag(ndr, sizeof(uint32_t), "SAMR_ALIAS_ACCESS_SET_INFO", SAMR_ALIAS_ACCESS_SET_INFO, r);
221
static enum ndr_err_code ndr_push_samr_SamEntry(struct ndr_push *ndr, int ndr_flags, const struct samr_SamEntry *r)
223
if (ndr_flags & NDR_SCALARS) {
224
NDR_CHECK(ndr_push_align(ndr, 5));
225
NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->idx));
226
NDR_CHECK(ndr_push_lsa_String(ndr, NDR_SCALARS, &r->name));
227
NDR_CHECK(ndr_push_trailer_align(ndr, 5));
229
if (ndr_flags & NDR_BUFFERS) {
230
NDR_CHECK(ndr_push_lsa_String(ndr, NDR_BUFFERS, &r->name));
232
return NDR_ERR_SUCCESS;
235
static enum ndr_err_code ndr_pull_samr_SamEntry(struct ndr_pull *ndr, int ndr_flags, struct samr_SamEntry *r)
237
if (ndr_flags & NDR_SCALARS) {
238
NDR_CHECK(ndr_pull_align(ndr, 5));
239
NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->idx));
240
NDR_CHECK(ndr_pull_lsa_String(ndr, NDR_SCALARS, &r->name));
241
NDR_CHECK(ndr_pull_trailer_align(ndr, 5));
243
if (ndr_flags & NDR_BUFFERS) {
244
NDR_CHECK(ndr_pull_lsa_String(ndr, NDR_BUFFERS, &r->name));
246
return NDR_ERR_SUCCESS;
249
_PUBLIC_ void ndr_print_samr_SamEntry(struct ndr_print *ndr, const char *name, const struct samr_SamEntry *r)
251
ndr_print_struct(ndr, name, "samr_SamEntry");
252
if (r == NULL) { ndr_print_null(ndr); return; }
254
ndr_print_uint32(ndr, "idx", r->idx);
255
ndr_print_lsa_String(ndr, "name", &r->name);
259
static enum ndr_err_code ndr_push_samr_SamArray(struct ndr_push *ndr, int ndr_flags, const struct samr_SamArray *r)
261
uint32_t cntr_entries_1;
262
if (ndr_flags & NDR_SCALARS) {
263
NDR_CHECK(ndr_push_align(ndr, 5));
264
NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->count));
265
NDR_CHECK(ndr_push_unique_ptr(ndr, r->entries));
266
NDR_CHECK(ndr_push_trailer_align(ndr, 5));
268
if (ndr_flags & NDR_BUFFERS) {
270
NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, r->count));
271
for (cntr_entries_1 = 0; cntr_entries_1 < r->count; cntr_entries_1++) {
272
NDR_CHECK(ndr_push_samr_SamEntry(ndr, NDR_SCALARS, &r->entries[cntr_entries_1]));
274
for (cntr_entries_1 = 0; cntr_entries_1 < r->count; cntr_entries_1++) {
275
NDR_CHECK(ndr_push_samr_SamEntry(ndr, NDR_BUFFERS, &r->entries[cntr_entries_1]));
279
return NDR_ERR_SUCCESS;
282
static enum ndr_err_code ndr_pull_samr_SamArray(struct ndr_pull *ndr, int ndr_flags, struct samr_SamArray *r)
284
uint32_t _ptr_entries;
285
uint32_t cntr_entries_1;
286
TALLOC_CTX *_mem_save_entries_0;
287
TALLOC_CTX *_mem_save_entries_1;
288
if (ndr_flags & NDR_SCALARS) {
289
NDR_CHECK(ndr_pull_align(ndr, 5));
290
NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->count));
291
NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_entries));
293
NDR_PULL_ALLOC(ndr, r->entries);
297
NDR_CHECK(ndr_pull_trailer_align(ndr, 5));
299
if (ndr_flags & NDR_BUFFERS) {
301
_mem_save_entries_0 = NDR_PULL_GET_MEM_CTX(ndr);
302
NDR_PULL_SET_MEM_CTX(ndr, r->entries, 0);
303
NDR_CHECK(ndr_pull_array_size(ndr, &r->entries));
304
NDR_PULL_ALLOC_N(ndr, r->entries, ndr_get_array_size(ndr, &r->entries));
305
_mem_save_entries_1 = NDR_PULL_GET_MEM_CTX(ndr);
306
NDR_PULL_SET_MEM_CTX(ndr, r->entries, 0);
307
for (cntr_entries_1 = 0; cntr_entries_1 < r->count; cntr_entries_1++) {
308
NDR_CHECK(ndr_pull_samr_SamEntry(ndr, NDR_SCALARS, &r->entries[cntr_entries_1]));
310
for (cntr_entries_1 = 0; cntr_entries_1 < r->count; cntr_entries_1++) {
311
NDR_CHECK(ndr_pull_samr_SamEntry(ndr, NDR_BUFFERS, &r->entries[cntr_entries_1]));
313
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_entries_1, 0);
314
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_entries_0, 0);
317
NDR_CHECK(ndr_check_array_size(ndr, (void*)&r->entries, r->count));
320
return NDR_ERR_SUCCESS;
323
_PUBLIC_ void ndr_print_samr_SamArray(struct ndr_print *ndr, const char *name, const struct samr_SamArray *r)
325
uint32_t cntr_entries_1;
326
ndr_print_struct(ndr, name, "samr_SamArray");
327
if (r == NULL) { ndr_print_null(ndr); return; }
329
ndr_print_uint32(ndr, "count", r->count);
330
ndr_print_ptr(ndr, "entries", r->entries);
333
ndr->print(ndr, "%s: ARRAY(%d)", "entries", (int)r->count);
335
for (cntr_entries_1=0;cntr_entries_1<r->count;cntr_entries_1++) {
336
ndr_print_samr_SamEntry(ndr, "entries", &r->entries[cntr_entries_1]);
344
static enum ndr_err_code ndr_push_samr_DomainInfoClass(struct ndr_push *ndr, int ndr_flags, enum samr_DomainInfoClass r)
346
NDR_CHECK(ndr_push_enum_uint1632(ndr, NDR_SCALARS, r));
347
return NDR_ERR_SUCCESS;
350
static enum ndr_err_code ndr_pull_samr_DomainInfoClass(struct ndr_pull *ndr, int ndr_flags, enum samr_DomainInfoClass *r)
353
NDR_CHECK(ndr_pull_enum_uint1632(ndr, NDR_SCALARS, &v));
355
return NDR_ERR_SUCCESS;
358
_PUBLIC_ void ndr_print_samr_DomainInfoClass(struct ndr_print *ndr, const char *name, enum samr_DomainInfoClass r)
360
const char *val = NULL;
363
case DomainPasswordInformation: val = "DomainPasswordInformation"; break;
364
case DomainGeneralInformation: val = "DomainGeneralInformation"; break;
365
case DomainLogoffInformation: val = "DomainLogoffInformation"; break;
366
case DomainOemInformation: val = "DomainOemInformation"; break;
367
case DomainNameInformation: val = "DomainNameInformation"; break;
368
case DomainReplicationInformation: val = "DomainReplicationInformation"; break;
369
case DomainServerRoleInformation: val = "DomainServerRoleInformation"; break;
370
case DomainModifiedInformation: val = "DomainModifiedInformation"; break;
371
case DomainStateInformation: val = "DomainStateInformation"; break;
372
case DomainUasInformation: val = "DomainUasInformation"; break;
373
case DomainGeneralInformation2: val = "DomainGeneralInformation2"; break;
374
case DomainLockoutInformation: val = "DomainLockoutInformation"; break;
375
case DomainModifiedInformation2: val = "DomainModifiedInformation2"; break;
377
ndr_print_enum(ndr, name, "ENUM", val, r);
380
static enum ndr_err_code ndr_push_samr_Role(struct ndr_push *ndr, int ndr_flags, enum samr_Role r)
382
NDR_CHECK(ndr_push_enum_uint32(ndr, NDR_SCALARS, r));
383
return NDR_ERR_SUCCESS;
386
static enum ndr_err_code ndr_pull_samr_Role(struct ndr_pull *ndr, int ndr_flags, enum samr_Role *r)
389
NDR_CHECK(ndr_pull_enum_uint32(ndr, NDR_SCALARS, &v));
391
return NDR_ERR_SUCCESS;
394
_PUBLIC_ void ndr_print_samr_Role(struct ndr_print *ndr, const char *name, enum samr_Role r)
396
const char *val = NULL;
399
case SAMR_ROLE_STANDALONE: val = "SAMR_ROLE_STANDALONE"; break;
400
case SAMR_ROLE_DOMAIN_MEMBER: val = "SAMR_ROLE_DOMAIN_MEMBER"; break;
401
case SAMR_ROLE_DOMAIN_BDC: val = "SAMR_ROLE_DOMAIN_BDC"; break;
402
case SAMR_ROLE_DOMAIN_PDC: val = "SAMR_ROLE_DOMAIN_PDC"; break;
404
ndr_print_enum(ndr, name, "ENUM", val, r);
407
_PUBLIC_ enum ndr_err_code ndr_push_samr_PasswordProperties(struct ndr_push *ndr, int ndr_flags, uint32_t r)
409
NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r));
410
return NDR_ERR_SUCCESS;
413
_PUBLIC_ enum ndr_err_code ndr_pull_samr_PasswordProperties(struct ndr_pull *ndr, int ndr_flags, uint32_t *r)
416
NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &v));
418
return NDR_ERR_SUCCESS;
421
_PUBLIC_ void ndr_print_samr_PasswordProperties(struct ndr_print *ndr, const char *name, uint32_t r)
423
ndr_print_uint32(ndr, name, r);
425
ndr_print_bitmap_flag(ndr, sizeof(uint32_t), "DOMAIN_PASSWORD_COMPLEX", DOMAIN_PASSWORD_COMPLEX, r);
426
ndr_print_bitmap_flag(ndr, sizeof(uint32_t), "DOMAIN_PASSWORD_NO_ANON_CHANGE", DOMAIN_PASSWORD_NO_ANON_CHANGE, r);
427
ndr_print_bitmap_flag(ndr, sizeof(uint32_t), "DOMAIN_PASSWORD_NO_CLEAR_CHANGE", DOMAIN_PASSWORD_NO_CLEAR_CHANGE, r);
428
ndr_print_bitmap_flag(ndr, sizeof(uint32_t), "DOMAIN_PASSWORD_LOCKOUT_ADMINS", DOMAIN_PASSWORD_LOCKOUT_ADMINS, r);
429
ndr_print_bitmap_flag(ndr, sizeof(uint32_t), "DOMAIN_PASSWORD_STORE_CLEARTEXT", DOMAIN_PASSWORD_STORE_CLEARTEXT, r);
430
ndr_print_bitmap_flag(ndr, sizeof(uint32_t), "DOMAIN_REFUSE_PASSWORD_CHANGE", DOMAIN_REFUSE_PASSWORD_CHANGE, r);
434
static enum ndr_err_code ndr_push_samr_DomainServerState(struct ndr_push *ndr, int ndr_flags, enum samr_DomainServerState r)
436
NDR_CHECK(ndr_push_enum_uint32(ndr, NDR_SCALARS, r));
437
return NDR_ERR_SUCCESS;
440
static enum ndr_err_code ndr_pull_samr_DomainServerState(struct ndr_pull *ndr, int ndr_flags, enum samr_DomainServerState *r)
443
NDR_CHECK(ndr_pull_enum_uint32(ndr, NDR_SCALARS, &v));
445
return NDR_ERR_SUCCESS;
448
_PUBLIC_ void ndr_print_samr_DomainServerState(struct ndr_print *ndr, const char *name, enum samr_DomainServerState r)
450
const char *val = NULL;
453
case DOMAIN_SERVER_ENABLED: val = "DOMAIN_SERVER_ENABLED"; break;
454
case DOMAIN_SERVER_DISABLED: val = "DOMAIN_SERVER_DISABLED"; break;
456
ndr_print_enum(ndr, name, "ENUM", val, r);
459
static enum ndr_err_code ndr_push_samr_DomInfo1(struct ndr_push *ndr, int ndr_flags, const struct samr_DomInfo1 *r)
461
if (ndr_flags & NDR_SCALARS) {
462
NDR_CHECK(ndr_push_align(ndr, 4));
463
NDR_CHECK(ndr_push_uint16(ndr, NDR_SCALARS, r->min_password_length));
464
NDR_CHECK(ndr_push_uint16(ndr, NDR_SCALARS, r->password_history_length));
465
NDR_CHECK(ndr_push_samr_PasswordProperties(ndr, NDR_SCALARS, r->password_properties));
466
NDR_CHECK(ndr_push_dlong(ndr, NDR_SCALARS, r->max_password_age));
467
NDR_CHECK(ndr_push_dlong(ndr, NDR_SCALARS, r->min_password_age));
468
NDR_CHECK(ndr_push_trailer_align(ndr, 4));
470
if (ndr_flags & NDR_BUFFERS) {
472
return NDR_ERR_SUCCESS;
475
static enum ndr_err_code ndr_pull_samr_DomInfo1(struct ndr_pull *ndr, int ndr_flags, struct samr_DomInfo1 *r)
477
if (ndr_flags & NDR_SCALARS) {
478
NDR_CHECK(ndr_pull_align(ndr, 4));
479
NDR_CHECK(ndr_pull_uint16(ndr, NDR_SCALARS, &r->min_password_length));
480
NDR_CHECK(ndr_pull_uint16(ndr, NDR_SCALARS, &r->password_history_length));
481
NDR_CHECK(ndr_pull_samr_PasswordProperties(ndr, NDR_SCALARS, &r->password_properties));
482
NDR_CHECK(ndr_pull_dlong(ndr, NDR_SCALARS, &r->max_password_age));
483
NDR_CHECK(ndr_pull_dlong(ndr, NDR_SCALARS, &r->min_password_age));
484
NDR_CHECK(ndr_pull_trailer_align(ndr, 4));
486
if (ndr_flags & NDR_BUFFERS) {
488
return NDR_ERR_SUCCESS;
491
_PUBLIC_ void ndr_print_samr_DomInfo1(struct ndr_print *ndr, const char *name, const struct samr_DomInfo1 *r)
493
ndr_print_struct(ndr, name, "samr_DomInfo1");
494
if (r == NULL) { ndr_print_null(ndr); return; }
496
ndr_print_uint16(ndr, "min_password_length", r->min_password_length);
497
ndr_print_uint16(ndr, "password_history_length", r->password_history_length);
498
ndr_print_samr_PasswordProperties(ndr, "password_properties", r->password_properties);
499
ndr_print_dlong(ndr, "max_password_age", r->max_password_age);
500
ndr_print_dlong(ndr, "min_password_age", r->min_password_age);
504
static enum ndr_err_code ndr_push_samr_DomGeneralInformation(struct ndr_push *ndr, int ndr_flags, const struct samr_DomGeneralInformation *r)
506
if (ndr_flags & NDR_SCALARS) {
507
NDR_CHECK(ndr_push_align(ndr, 5));
508
NDR_CHECK(ndr_push_NTTIME(ndr, NDR_SCALARS, r->force_logoff_time));
509
NDR_CHECK(ndr_push_lsa_String(ndr, NDR_SCALARS, &r->oem_information));
510
NDR_CHECK(ndr_push_lsa_String(ndr, NDR_SCALARS, &r->domain_name));
511
NDR_CHECK(ndr_push_lsa_String(ndr, NDR_SCALARS, &r->primary));
512
NDR_CHECK(ndr_push_udlong(ndr, NDR_SCALARS, r->sequence_num));
513
NDR_CHECK(ndr_push_samr_DomainServerState(ndr, NDR_SCALARS, r->domain_server_state));
514
NDR_CHECK(ndr_push_samr_Role(ndr, NDR_SCALARS, r->role));
515
NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->unknown3));
516
NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->num_users));
517
NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->num_groups));
518
NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->num_aliases));
519
NDR_CHECK(ndr_push_trailer_align(ndr, 5));
521
if (ndr_flags & NDR_BUFFERS) {
522
NDR_CHECK(ndr_push_lsa_String(ndr, NDR_BUFFERS, &r->oem_information));
523
NDR_CHECK(ndr_push_lsa_String(ndr, NDR_BUFFERS, &r->domain_name));
524
NDR_CHECK(ndr_push_lsa_String(ndr, NDR_BUFFERS, &r->primary));
526
return NDR_ERR_SUCCESS;
529
static enum ndr_err_code ndr_pull_samr_DomGeneralInformation(struct ndr_pull *ndr, int ndr_flags, struct samr_DomGeneralInformation *r)
531
if (ndr_flags & NDR_SCALARS) {
532
NDR_CHECK(ndr_pull_align(ndr, 5));
533
NDR_CHECK(ndr_pull_NTTIME(ndr, NDR_SCALARS, &r->force_logoff_time));
534
NDR_CHECK(ndr_pull_lsa_String(ndr, NDR_SCALARS, &r->oem_information));
535
NDR_CHECK(ndr_pull_lsa_String(ndr, NDR_SCALARS, &r->domain_name));
536
NDR_CHECK(ndr_pull_lsa_String(ndr, NDR_SCALARS, &r->primary));
537
NDR_CHECK(ndr_pull_udlong(ndr, NDR_SCALARS, &r->sequence_num));
538
NDR_CHECK(ndr_pull_samr_DomainServerState(ndr, NDR_SCALARS, &r->domain_server_state));
539
NDR_CHECK(ndr_pull_samr_Role(ndr, NDR_SCALARS, &r->role));
540
NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->unknown3));
541
NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->num_users));
542
NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->num_groups));
543
NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->num_aliases));
544
NDR_CHECK(ndr_pull_trailer_align(ndr, 5));
546
if (ndr_flags & NDR_BUFFERS) {
547
NDR_CHECK(ndr_pull_lsa_String(ndr, NDR_BUFFERS, &r->oem_information));
548
NDR_CHECK(ndr_pull_lsa_String(ndr, NDR_BUFFERS, &r->domain_name));
549
NDR_CHECK(ndr_pull_lsa_String(ndr, NDR_BUFFERS, &r->primary));
551
return NDR_ERR_SUCCESS;
554
_PUBLIC_ void ndr_print_samr_DomGeneralInformation(struct ndr_print *ndr, const char *name, const struct samr_DomGeneralInformation *r)
556
ndr_print_struct(ndr, name, "samr_DomGeneralInformation");
557
if (r == NULL) { ndr_print_null(ndr); return; }
559
ndr_print_NTTIME(ndr, "force_logoff_time", r->force_logoff_time);
560
ndr_print_lsa_String(ndr, "oem_information", &r->oem_information);
561
ndr_print_lsa_String(ndr, "domain_name", &r->domain_name);
562
ndr_print_lsa_String(ndr, "primary", &r->primary);
563
ndr_print_udlong(ndr, "sequence_num", r->sequence_num);
564
ndr_print_samr_DomainServerState(ndr, "domain_server_state", r->domain_server_state);
565
ndr_print_samr_Role(ndr, "role", r->role);
566
ndr_print_uint32(ndr, "unknown3", r->unknown3);
567
ndr_print_uint32(ndr, "num_users", r->num_users);
568
ndr_print_uint32(ndr, "num_groups", r->num_groups);
569
ndr_print_uint32(ndr, "num_aliases", r->num_aliases);
573
static enum ndr_err_code ndr_push_samr_DomInfo3(struct ndr_push *ndr, int ndr_flags, const struct samr_DomInfo3 *r)
575
if (ndr_flags & NDR_SCALARS) {
576
NDR_CHECK(ndr_push_align(ndr, 4));
577
NDR_CHECK(ndr_push_NTTIME(ndr, NDR_SCALARS, r->force_logoff_time));
578
NDR_CHECK(ndr_push_trailer_align(ndr, 4));
580
if (ndr_flags & NDR_BUFFERS) {
582
return NDR_ERR_SUCCESS;
585
static enum ndr_err_code ndr_pull_samr_DomInfo3(struct ndr_pull *ndr, int ndr_flags, struct samr_DomInfo3 *r)
587
if (ndr_flags & NDR_SCALARS) {
588
NDR_CHECK(ndr_pull_align(ndr, 4));
589
NDR_CHECK(ndr_pull_NTTIME(ndr, NDR_SCALARS, &r->force_logoff_time));
590
NDR_CHECK(ndr_pull_trailer_align(ndr, 4));
592
if (ndr_flags & NDR_BUFFERS) {
594
return NDR_ERR_SUCCESS;
597
_PUBLIC_ void ndr_print_samr_DomInfo3(struct ndr_print *ndr, const char *name, const struct samr_DomInfo3 *r)
599
ndr_print_struct(ndr, name, "samr_DomInfo3");
600
if (r == NULL) { ndr_print_null(ndr); return; }
602
ndr_print_NTTIME(ndr, "force_logoff_time", r->force_logoff_time);
606
static enum ndr_err_code ndr_push_samr_DomOEMInformation(struct ndr_push *ndr, int ndr_flags, const struct samr_DomOEMInformation *r)
608
if (ndr_flags & NDR_SCALARS) {
609
NDR_CHECK(ndr_push_align(ndr, 5));
610
NDR_CHECK(ndr_push_lsa_String(ndr, NDR_SCALARS, &r->oem_information));
611
NDR_CHECK(ndr_push_trailer_align(ndr, 5));
613
if (ndr_flags & NDR_BUFFERS) {
614
NDR_CHECK(ndr_push_lsa_String(ndr, NDR_BUFFERS, &r->oem_information));
616
return NDR_ERR_SUCCESS;
619
static enum ndr_err_code ndr_pull_samr_DomOEMInformation(struct ndr_pull *ndr, int ndr_flags, struct samr_DomOEMInformation *r)
621
if (ndr_flags & NDR_SCALARS) {
622
NDR_CHECK(ndr_pull_align(ndr, 5));
623
NDR_CHECK(ndr_pull_lsa_String(ndr, NDR_SCALARS, &r->oem_information));
624
NDR_CHECK(ndr_pull_trailer_align(ndr, 5));
626
if (ndr_flags & NDR_BUFFERS) {
627
NDR_CHECK(ndr_pull_lsa_String(ndr, NDR_BUFFERS, &r->oem_information));
629
return NDR_ERR_SUCCESS;
632
_PUBLIC_ void ndr_print_samr_DomOEMInformation(struct ndr_print *ndr, const char *name, const struct samr_DomOEMInformation *r)
634
ndr_print_struct(ndr, name, "samr_DomOEMInformation");
635
if (r == NULL) { ndr_print_null(ndr); return; }
637
ndr_print_lsa_String(ndr, "oem_information", &r->oem_information);
641
static enum ndr_err_code ndr_push_samr_DomInfo5(struct ndr_push *ndr, int ndr_flags, const struct samr_DomInfo5 *r)
643
if (ndr_flags & NDR_SCALARS) {
644
NDR_CHECK(ndr_push_align(ndr, 5));
645
NDR_CHECK(ndr_push_lsa_String(ndr, NDR_SCALARS, &r->domain_name));
646
NDR_CHECK(ndr_push_trailer_align(ndr, 5));
648
if (ndr_flags & NDR_BUFFERS) {
649
NDR_CHECK(ndr_push_lsa_String(ndr, NDR_BUFFERS, &r->domain_name));
651
return NDR_ERR_SUCCESS;
654
static enum ndr_err_code ndr_pull_samr_DomInfo5(struct ndr_pull *ndr, int ndr_flags, struct samr_DomInfo5 *r)
656
if (ndr_flags & NDR_SCALARS) {
657
NDR_CHECK(ndr_pull_align(ndr, 5));
658
NDR_CHECK(ndr_pull_lsa_String(ndr, NDR_SCALARS, &r->domain_name));
659
NDR_CHECK(ndr_pull_trailer_align(ndr, 5));
661
if (ndr_flags & NDR_BUFFERS) {
662
NDR_CHECK(ndr_pull_lsa_String(ndr, NDR_BUFFERS, &r->domain_name));
664
return NDR_ERR_SUCCESS;
667
_PUBLIC_ void ndr_print_samr_DomInfo5(struct ndr_print *ndr, const char *name, const struct samr_DomInfo5 *r)
669
ndr_print_struct(ndr, name, "samr_DomInfo5");
670
if (r == NULL) { ndr_print_null(ndr); return; }
672
ndr_print_lsa_String(ndr, "domain_name", &r->domain_name);
676
static enum ndr_err_code ndr_push_samr_DomInfo6(struct ndr_push *ndr, int ndr_flags, const struct samr_DomInfo6 *r)
678
if (ndr_flags & NDR_SCALARS) {
679
NDR_CHECK(ndr_push_align(ndr, 5));
680
NDR_CHECK(ndr_push_lsa_String(ndr, NDR_SCALARS, &r->primary));
681
NDR_CHECK(ndr_push_trailer_align(ndr, 5));
683
if (ndr_flags & NDR_BUFFERS) {
684
NDR_CHECK(ndr_push_lsa_String(ndr, NDR_BUFFERS, &r->primary));
686
return NDR_ERR_SUCCESS;
689
static enum ndr_err_code ndr_pull_samr_DomInfo6(struct ndr_pull *ndr, int ndr_flags, struct samr_DomInfo6 *r)
691
if (ndr_flags & NDR_SCALARS) {
692
NDR_CHECK(ndr_pull_align(ndr, 5));
693
NDR_CHECK(ndr_pull_lsa_String(ndr, NDR_SCALARS, &r->primary));
694
NDR_CHECK(ndr_pull_trailer_align(ndr, 5));
696
if (ndr_flags & NDR_BUFFERS) {
697
NDR_CHECK(ndr_pull_lsa_String(ndr, NDR_BUFFERS, &r->primary));
699
return NDR_ERR_SUCCESS;
702
_PUBLIC_ void ndr_print_samr_DomInfo6(struct ndr_print *ndr, const char *name, const struct samr_DomInfo6 *r)
704
ndr_print_struct(ndr, name, "samr_DomInfo6");
705
if (r == NULL) { ndr_print_null(ndr); return; }
707
ndr_print_lsa_String(ndr, "primary", &r->primary);
711
static enum ndr_err_code ndr_push_samr_DomInfo7(struct ndr_push *ndr, int ndr_flags, const struct samr_DomInfo7 *r)
713
if (ndr_flags & NDR_SCALARS) {
714
NDR_CHECK(ndr_push_align(ndr, 4));
715
NDR_CHECK(ndr_push_samr_Role(ndr, NDR_SCALARS, r->role));
716
NDR_CHECK(ndr_push_trailer_align(ndr, 4));
718
if (ndr_flags & NDR_BUFFERS) {
720
return NDR_ERR_SUCCESS;
723
static enum ndr_err_code ndr_pull_samr_DomInfo7(struct ndr_pull *ndr, int ndr_flags, struct samr_DomInfo7 *r)
725
if (ndr_flags & NDR_SCALARS) {
726
NDR_CHECK(ndr_pull_align(ndr, 4));
727
NDR_CHECK(ndr_pull_samr_Role(ndr, NDR_SCALARS, &r->role));
728
NDR_CHECK(ndr_pull_trailer_align(ndr, 4));
730
if (ndr_flags & NDR_BUFFERS) {
732
return NDR_ERR_SUCCESS;
735
_PUBLIC_ void ndr_print_samr_DomInfo7(struct ndr_print *ndr, const char *name, const struct samr_DomInfo7 *r)
737
ndr_print_struct(ndr, name, "samr_DomInfo7");
738
if (r == NULL) { ndr_print_null(ndr); return; }
740
ndr_print_samr_Role(ndr, "role", r->role);
744
static enum ndr_err_code ndr_push_samr_DomInfo8(struct ndr_push *ndr, int ndr_flags, const struct samr_DomInfo8 *r)
746
if (ndr_flags & NDR_SCALARS) {
747
NDR_CHECK(ndr_push_align(ndr, 8));
748
NDR_CHECK(ndr_push_hyper(ndr, NDR_SCALARS, r->sequence_num));
749
NDR_CHECK(ndr_push_NTTIME(ndr, NDR_SCALARS, r->domain_create_time));
750
NDR_CHECK(ndr_push_trailer_align(ndr, 8));
752
if (ndr_flags & NDR_BUFFERS) {
754
return NDR_ERR_SUCCESS;
757
static enum ndr_err_code ndr_pull_samr_DomInfo8(struct ndr_pull *ndr, int ndr_flags, struct samr_DomInfo8 *r)
759
if (ndr_flags & NDR_SCALARS) {
760
NDR_CHECK(ndr_pull_align(ndr, 8));
761
NDR_CHECK(ndr_pull_hyper(ndr, NDR_SCALARS, &r->sequence_num));
762
NDR_CHECK(ndr_pull_NTTIME(ndr, NDR_SCALARS, &r->domain_create_time));
763
NDR_CHECK(ndr_pull_trailer_align(ndr, 8));
765
if (ndr_flags & NDR_BUFFERS) {
767
return NDR_ERR_SUCCESS;
770
_PUBLIC_ void ndr_print_samr_DomInfo8(struct ndr_print *ndr, const char *name, const struct samr_DomInfo8 *r)
772
ndr_print_struct(ndr, name, "samr_DomInfo8");
773
if (r == NULL) { ndr_print_null(ndr); return; }
775
ndr_print_hyper(ndr, "sequence_num", r->sequence_num);
776
ndr_print_NTTIME(ndr, "domain_create_time", r->domain_create_time);
780
static enum ndr_err_code ndr_push_samr_DomInfo9(struct ndr_push *ndr, int ndr_flags, const struct samr_DomInfo9 *r)
782
if (ndr_flags & NDR_SCALARS) {
783
NDR_CHECK(ndr_push_align(ndr, 4));
784
NDR_CHECK(ndr_push_samr_DomainServerState(ndr, NDR_SCALARS, r->domain_server_state));
785
NDR_CHECK(ndr_push_trailer_align(ndr, 4));
787
if (ndr_flags & NDR_BUFFERS) {
789
return NDR_ERR_SUCCESS;
792
static enum ndr_err_code ndr_pull_samr_DomInfo9(struct ndr_pull *ndr, int ndr_flags, struct samr_DomInfo9 *r)
794
if (ndr_flags & NDR_SCALARS) {
795
NDR_CHECK(ndr_pull_align(ndr, 4));
796
NDR_CHECK(ndr_pull_samr_DomainServerState(ndr, NDR_SCALARS, &r->domain_server_state));
797
NDR_CHECK(ndr_pull_trailer_align(ndr, 4));
799
if (ndr_flags & NDR_BUFFERS) {
801
return NDR_ERR_SUCCESS;
804
_PUBLIC_ void ndr_print_samr_DomInfo9(struct ndr_print *ndr, const char *name, const struct samr_DomInfo9 *r)
806
ndr_print_struct(ndr, name, "samr_DomInfo9");
807
if (r == NULL) { ndr_print_null(ndr); return; }
809
ndr_print_samr_DomainServerState(ndr, "domain_server_state", r->domain_server_state);
813
static enum ndr_err_code ndr_push_samr_DomGeneralInformation2(struct ndr_push *ndr, int ndr_flags, const struct samr_DomGeneralInformation2 *r)
815
if (ndr_flags & NDR_SCALARS) {
816
NDR_CHECK(ndr_push_align(ndr, 8));
817
NDR_CHECK(ndr_push_samr_DomGeneralInformation(ndr, NDR_SCALARS, &r->general));
818
NDR_CHECK(ndr_push_hyper(ndr, NDR_SCALARS, r->lockout_duration));
819
NDR_CHECK(ndr_push_hyper(ndr, NDR_SCALARS, r->lockout_window));
820
NDR_CHECK(ndr_push_uint16(ndr, NDR_SCALARS, r->lockout_threshold));
821
NDR_CHECK(ndr_push_trailer_align(ndr, 8));
823
if (ndr_flags & NDR_BUFFERS) {
824
NDR_CHECK(ndr_push_samr_DomGeneralInformation(ndr, NDR_BUFFERS, &r->general));
826
return NDR_ERR_SUCCESS;
829
static enum ndr_err_code ndr_pull_samr_DomGeneralInformation2(struct ndr_pull *ndr, int ndr_flags, struct samr_DomGeneralInformation2 *r)
831
if (ndr_flags & NDR_SCALARS) {
832
NDR_CHECK(ndr_pull_align(ndr, 8));
833
NDR_CHECK(ndr_pull_samr_DomGeneralInformation(ndr, NDR_SCALARS, &r->general));
834
NDR_CHECK(ndr_pull_hyper(ndr, NDR_SCALARS, &r->lockout_duration));
835
NDR_CHECK(ndr_pull_hyper(ndr, NDR_SCALARS, &r->lockout_window));
836
NDR_CHECK(ndr_pull_uint16(ndr, NDR_SCALARS, &r->lockout_threshold));
837
NDR_CHECK(ndr_pull_trailer_align(ndr, 8));
839
if (ndr_flags & NDR_BUFFERS) {
840
NDR_CHECK(ndr_pull_samr_DomGeneralInformation(ndr, NDR_BUFFERS, &r->general));
842
return NDR_ERR_SUCCESS;
845
_PUBLIC_ void ndr_print_samr_DomGeneralInformation2(struct ndr_print *ndr, const char *name, const struct samr_DomGeneralInformation2 *r)
847
ndr_print_struct(ndr, name, "samr_DomGeneralInformation2");
848
if (r == NULL) { ndr_print_null(ndr); return; }
850
ndr_print_samr_DomGeneralInformation(ndr, "general", &r->general);
851
ndr_print_hyper(ndr, "lockout_duration", r->lockout_duration);
852
ndr_print_hyper(ndr, "lockout_window", r->lockout_window);
853
ndr_print_uint16(ndr, "lockout_threshold", r->lockout_threshold);
857
static enum ndr_err_code ndr_push_samr_DomInfo12(struct ndr_push *ndr, int ndr_flags, const struct samr_DomInfo12 *r)
859
if (ndr_flags & NDR_SCALARS) {
860
NDR_CHECK(ndr_push_align(ndr, 8));
861
NDR_CHECK(ndr_push_hyper(ndr, NDR_SCALARS, r->lockout_duration));
862
NDR_CHECK(ndr_push_hyper(ndr, NDR_SCALARS, r->lockout_window));
863
NDR_CHECK(ndr_push_uint16(ndr, NDR_SCALARS, r->lockout_threshold));
864
NDR_CHECK(ndr_push_trailer_align(ndr, 8));
866
if (ndr_flags & NDR_BUFFERS) {
868
return NDR_ERR_SUCCESS;
871
static enum ndr_err_code ndr_pull_samr_DomInfo12(struct ndr_pull *ndr, int ndr_flags, struct samr_DomInfo12 *r)
873
if (ndr_flags & NDR_SCALARS) {
874
NDR_CHECK(ndr_pull_align(ndr, 8));
875
NDR_CHECK(ndr_pull_hyper(ndr, NDR_SCALARS, &r->lockout_duration));
876
NDR_CHECK(ndr_pull_hyper(ndr, NDR_SCALARS, &r->lockout_window));
877
NDR_CHECK(ndr_pull_uint16(ndr, NDR_SCALARS, &r->lockout_threshold));
878
NDR_CHECK(ndr_pull_trailer_align(ndr, 8));
880
if (ndr_flags & NDR_BUFFERS) {
882
return NDR_ERR_SUCCESS;
885
_PUBLIC_ void ndr_print_samr_DomInfo12(struct ndr_print *ndr, const char *name, const struct samr_DomInfo12 *r)
887
ndr_print_struct(ndr, name, "samr_DomInfo12");
888
if (r == NULL) { ndr_print_null(ndr); return; }
890
ndr_print_hyper(ndr, "lockout_duration", r->lockout_duration);
891
ndr_print_hyper(ndr, "lockout_window", r->lockout_window);
892
ndr_print_uint16(ndr, "lockout_threshold", r->lockout_threshold);
896
static enum ndr_err_code ndr_push_samr_DomInfo13(struct ndr_push *ndr, int ndr_flags, const struct samr_DomInfo13 *r)
898
if (ndr_flags & NDR_SCALARS) {
899
NDR_CHECK(ndr_push_align(ndr, 8));
900
NDR_CHECK(ndr_push_hyper(ndr, NDR_SCALARS, r->sequence_num));
901
NDR_CHECK(ndr_push_NTTIME(ndr, NDR_SCALARS, r->domain_create_time));
902
NDR_CHECK(ndr_push_hyper(ndr, NDR_SCALARS, r->modified_count_at_last_promotion));
903
NDR_CHECK(ndr_push_trailer_align(ndr, 8));
905
if (ndr_flags & NDR_BUFFERS) {
907
return NDR_ERR_SUCCESS;
910
static enum ndr_err_code ndr_pull_samr_DomInfo13(struct ndr_pull *ndr, int ndr_flags, struct samr_DomInfo13 *r)
912
if (ndr_flags & NDR_SCALARS) {
913
NDR_CHECK(ndr_pull_align(ndr, 8));
914
NDR_CHECK(ndr_pull_hyper(ndr, NDR_SCALARS, &r->sequence_num));
915
NDR_CHECK(ndr_pull_NTTIME(ndr, NDR_SCALARS, &r->domain_create_time));
916
NDR_CHECK(ndr_pull_hyper(ndr, NDR_SCALARS, &r->modified_count_at_last_promotion));
917
NDR_CHECK(ndr_pull_trailer_align(ndr, 8));
919
if (ndr_flags & NDR_BUFFERS) {
921
return NDR_ERR_SUCCESS;
924
_PUBLIC_ void ndr_print_samr_DomInfo13(struct ndr_print *ndr, const char *name, const struct samr_DomInfo13 *r)
926
ndr_print_struct(ndr, name, "samr_DomInfo13");
927
if (r == NULL) { ndr_print_null(ndr); return; }
929
ndr_print_hyper(ndr, "sequence_num", r->sequence_num);
930
ndr_print_NTTIME(ndr, "domain_create_time", r->domain_create_time);
931
ndr_print_hyper(ndr, "modified_count_at_last_promotion", r->modified_count_at_last_promotion);
935
static enum ndr_err_code ndr_push_samr_DomainInfo(struct ndr_push *ndr, int ndr_flags, const union samr_DomainInfo *r)
937
if (ndr_flags & NDR_SCALARS) {
938
uint32_t level = ndr_push_get_switch_value(ndr, r);
939
NDR_CHECK(ndr_push_union_align(ndr, 8));
940
NDR_CHECK(ndr_push_uint16(ndr, NDR_SCALARS, level));
941
NDR_CHECK(ndr_push_union_align(ndr, 8));
944
NDR_CHECK(ndr_push_samr_DomInfo1(ndr, NDR_SCALARS, &r->info1));
948
NDR_CHECK(ndr_push_samr_DomGeneralInformation(ndr, NDR_SCALARS, &r->general));
952
NDR_CHECK(ndr_push_samr_DomInfo3(ndr, NDR_SCALARS, &r->info3));
956
NDR_CHECK(ndr_push_samr_DomOEMInformation(ndr, NDR_SCALARS, &r->oem));
960
NDR_CHECK(ndr_push_samr_DomInfo5(ndr, NDR_SCALARS, &r->info5));
964
NDR_CHECK(ndr_push_samr_DomInfo6(ndr, NDR_SCALARS, &r->info6));
968
NDR_CHECK(ndr_push_samr_DomInfo7(ndr, NDR_SCALARS, &r->info7));
972
NDR_CHECK(ndr_push_samr_DomInfo8(ndr, NDR_SCALARS, &r->info8));
976
NDR_CHECK(ndr_push_samr_DomInfo9(ndr, NDR_SCALARS, &r->info9));
980
NDR_CHECK(ndr_push_samr_DomGeneralInformation2(ndr, NDR_SCALARS, &r->general2));
984
NDR_CHECK(ndr_push_samr_DomInfo12(ndr, NDR_SCALARS, &r->info12));
988
NDR_CHECK(ndr_push_samr_DomInfo13(ndr, NDR_SCALARS, &r->info13));
992
return ndr_push_error(ndr, NDR_ERR_BAD_SWITCH, "Bad switch value %u at %s", level, __location__);
995
if (ndr_flags & NDR_BUFFERS) {
996
uint32_t level = ndr_push_get_switch_value(ndr, r);
1002
NDR_CHECK(ndr_push_samr_DomGeneralInformation(ndr, NDR_BUFFERS, &r->general));
1009
NDR_CHECK(ndr_push_samr_DomOEMInformation(ndr, NDR_BUFFERS, &r->oem));
1013
NDR_CHECK(ndr_push_samr_DomInfo5(ndr, NDR_BUFFERS, &r->info5));
1017
NDR_CHECK(ndr_push_samr_DomInfo6(ndr, NDR_BUFFERS, &r->info6));
1030
NDR_CHECK(ndr_push_samr_DomGeneralInformation2(ndr, NDR_BUFFERS, &r->general2));
1040
return ndr_push_error(ndr, NDR_ERR_BAD_SWITCH, "Bad switch value %u at %s", level, __location__);
1043
return NDR_ERR_SUCCESS;
1046
static enum ndr_err_code ndr_pull_samr_DomainInfo(struct ndr_pull *ndr, int ndr_flags, union samr_DomainInfo *r)
1050
level = ndr_pull_get_switch_value(ndr, r);
1051
if (ndr_flags & NDR_SCALARS) {
1052
NDR_CHECK(ndr_pull_union_align(ndr, 8));
1053
NDR_CHECK(ndr_pull_uint16(ndr, NDR_SCALARS, &_level));
1054
if (_level != level) {
1055
return ndr_pull_error(ndr, NDR_ERR_BAD_SWITCH, "Bad switch value %u for r at %s", _level, __location__);
1057
NDR_CHECK(ndr_pull_union_align(ndr, 8));
1060
NDR_CHECK(ndr_pull_samr_DomInfo1(ndr, NDR_SCALARS, &r->info1));
1064
NDR_CHECK(ndr_pull_samr_DomGeneralInformation(ndr, NDR_SCALARS, &r->general));
1068
NDR_CHECK(ndr_pull_samr_DomInfo3(ndr, NDR_SCALARS, &r->info3));
1072
NDR_CHECK(ndr_pull_samr_DomOEMInformation(ndr, NDR_SCALARS, &r->oem));
1076
NDR_CHECK(ndr_pull_samr_DomInfo5(ndr, NDR_SCALARS, &r->info5));
1080
NDR_CHECK(ndr_pull_samr_DomInfo6(ndr, NDR_SCALARS, &r->info6));
1084
NDR_CHECK(ndr_pull_samr_DomInfo7(ndr, NDR_SCALARS, &r->info7));
1088
NDR_CHECK(ndr_pull_samr_DomInfo8(ndr, NDR_SCALARS, &r->info8));
1092
NDR_CHECK(ndr_pull_samr_DomInfo9(ndr, NDR_SCALARS, &r->info9));
1096
NDR_CHECK(ndr_pull_samr_DomGeneralInformation2(ndr, NDR_SCALARS, &r->general2));
1100
NDR_CHECK(ndr_pull_samr_DomInfo12(ndr, NDR_SCALARS, &r->info12));
1104
NDR_CHECK(ndr_pull_samr_DomInfo13(ndr, NDR_SCALARS, &r->info13));
1108
return ndr_pull_error(ndr, NDR_ERR_BAD_SWITCH, "Bad switch value %u at %s", level, __location__);
1111
if (ndr_flags & NDR_BUFFERS) {
1117
NDR_CHECK(ndr_pull_samr_DomGeneralInformation(ndr, NDR_BUFFERS, &r->general));
1124
NDR_CHECK(ndr_pull_samr_DomOEMInformation(ndr, NDR_BUFFERS, &r->oem));
1128
NDR_CHECK(ndr_pull_samr_DomInfo5(ndr, NDR_BUFFERS, &r->info5));
1132
NDR_CHECK(ndr_pull_samr_DomInfo6(ndr, NDR_BUFFERS, &r->info6));
1145
NDR_CHECK(ndr_pull_samr_DomGeneralInformation2(ndr, NDR_BUFFERS, &r->general2));
1155
return ndr_pull_error(ndr, NDR_ERR_BAD_SWITCH, "Bad switch value %u at %s", level, __location__);
1158
return NDR_ERR_SUCCESS;
1161
_PUBLIC_ void ndr_print_samr_DomainInfo(struct ndr_print *ndr, const char *name, const union samr_DomainInfo *r)
1164
level = ndr_print_get_switch_value(ndr, r);
1165
ndr_print_union(ndr, name, level, "samr_DomainInfo");
1168
ndr_print_samr_DomInfo1(ndr, "info1", &r->info1);
1172
ndr_print_samr_DomGeneralInformation(ndr, "general", &r->general);
1176
ndr_print_samr_DomInfo3(ndr, "info3", &r->info3);
1180
ndr_print_samr_DomOEMInformation(ndr, "oem", &r->oem);
1184
ndr_print_samr_DomInfo5(ndr, "info5", &r->info5);
1188
ndr_print_samr_DomInfo6(ndr, "info6", &r->info6);
1192
ndr_print_samr_DomInfo7(ndr, "info7", &r->info7);
1196
ndr_print_samr_DomInfo8(ndr, "info8", &r->info8);
1200
ndr_print_samr_DomInfo9(ndr, "info9", &r->info9);
1204
ndr_print_samr_DomGeneralInformation2(ndr, "general2", &r->general2);
1208
ndr_print_samr_DomInfo12(ndr, "info12", &r->info12);
1212
ndr_print_samr_DomInfo13(ndr, "info13", &r->info13);
1216
ndr_print_bad_level(ndr, name, level);
1220
static enum ndr_err_code ndr_push_samr_Ids(struct ndr_push *ndr, int ndr_flags, const struct samr_Ids *r)
1222
uint32_t cntr_ids_1;
1223
if (ndr_flags & NDR_SCALARS) {
1224
NDR_CHECK(ndr_push_align(ndr, 5));
1225
NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->count));
1226
NDR_CHECK(ndr_push_unique_ptr(ndr, r->ids));
1227
NDR_CHECK(ndr_push_trailer_align(ndr, 5));
1229
if (ndr_flags & NDR_BUFFERS) {
1231
NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, r->count));
1232
for (cntr_ids_1 = 0; cntr_ids_1 < r->count; cntr_ids_1++) {
1233
NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->ids[cntr_ids_1]));
1237
return NDR_ERR_SUCCESS;
1240
static enum ndr_err_code ndr_pull_samr_Ids(struct ndr_pull *ndr, int ndr_flags, struct samr_Ids *r)
1243
uint32_t cntr_ids_1;
1244
TALLOC_CTX *_mem_save_ids_0;
1245
TALLOC_CTX *_mem_save_ids_1;
1246
if (ndr_flags & NDR_SCALARS) {
1247
NDR_CHECK(ndr_pull_align(ndr, 5));
1248
NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->count));
1249
if (r->count > 1024) {
1250
return ndr_pull_error(ndr, NDR_ERR_RANGE, "value out of range");
1252
NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_ids));
1254
NDR_PULL_ALLOC(ndr, r->ids);
1258
NDR_CHECK(ndr_pull_trailer_align(ndr, 5));
1260
if (ndr_flags & NDR_BUFFERS) {
1262
_mem_save_ids_0 = NDR_PULL_GET_MEM_CTX(ndr);
1263
NDR_PULL_SET_MEM_CTX(ndr, r->ids, 0);
1264
NDR_CHECK(ndr_pull_array_size(ndr, &r->ids));
1265
NDR_PULL_ALLOC_N(ndr, r->ids, ndr_get_array_size(ndr, &r->ids));
1266
_mem_save_ids_1 = NDR_PULL_GET_MEM_CTX(ndr);
1267
NDR_PULL_SET_MEM_CTX(ndr, r->ids, 0);
1268
for (cntr_ids_1 = 0; cntr_ids_1 < r->count; cntr_ids_1++) {
1269
NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->ids[cntr_ids_1]));
1271
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_ids_1, 0);
1272
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_ids_0, 0);
1275
NDR_CHECK(ndr_check_array_size(ndr, (void*)&r->ids, r->count));
1278
return NDR_ERR_SUCCESS;
1281
_PUBLIC_ void ndr_print_samr_Ids(struct ndr_print *ndr, const char *name, const struct samr_Ids *r)
1283
uint32_t cntr_ids_1;
1284
ndr_print_struct(ndr, name, "samr_Ids");
1285
if (r == NULL) { ndr_print_null(ndr); return; }
1287
ndr_print_uint32(ndr, "count", r->count);
1288
ndr_print_ptr(ndr, "ids", r->ids);
1291
ndr->print(ndr, "%s: ARRAY(%d)", "ids", (int)r->count);
1293
for (cntr_ids_1=0;cntr_ids_1<r->count;cntr_ids_1++) {
1294
ndr_print_uint32(ndr, "ids", r->ids[cntr_ids_1]);
1302
_PUBLIC_ enum ndr_err_code ndr_push_samr_GroupAttrs(struct ndr_push *ndr, int ndr_flags, uint32_t r)
1304
NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r));
1305
return NDR_ERR_SUCCESS;
1308
_PUBLIC_ enum ndr_err_code ndr_pull_samr_GroupAttrs(struct ndr_pull *ndr, int ndr_flags, uint32_t *r)
1311
NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &v));
1313
return NDR_ERR_SUCCESS;
1316
_PUBLIC_ void ndr_print_samr_GroupAttrs(struct ndr_print *ndr, const char *name, uint32_t r)
1318
ndr_print_uint32(ndr, name, r);
1320
ndr_print_bitmap_flag(ndr, sizeof(uint32_t), "SE_GROUP_MANDATORY", SE_GROUP_MANDATORY, r);
1321
ndr_print_bitmap_flag(ndr, sizeof(uint32_t), "SE_GROUP_ENABLED_BY_DEFAULT", SE_GROUP_ENABLED_BY_DEFAULT, r);
1322
ndr_print_bitmap_flag(ndr, sizeof(uint32_t), "SE_GROUP_ENABLED", SE_GROUP_ENABLED, r);
1323
ndr_print_bitmap_flag(ndr, sizeof(uint32_t), "SE_GROUP_OWNER", SE_GROUP_OWNER, r);
1324
ndr_print_bitmap_flag(ndr, sizeof(uint32_t), "SE_GROUP_USE_FOR_DENY_ONLY", SE_GROUP_USE_FOR_DENY_ONLY, r);
1325
ndr_print_bitmap_flag(ndr, sizeof(uint32_t), "SE_GROUP_RESOURCE", SE_GROUP_RESOURCE, r);
1326
ndr_print_bitmap_flag(ndr, sizeof(uint32_t), "SE_GROUP_LOGON_ID", SE_GROUP_LOGON_ID, r);
1330
static enum ndr_err_code ndr_push_samr_GroupInfoAll(struct ndr_push *ndr, int ndr_flags, const struct samr_GroupInfoAll *r)
1332
if (ndr_flags & NDR_SCALARS) {
1333
NDR_CHECK(ndr_push_align(ndr, 5));
1334
NDR_CHECK(ndr_push_lsa_String(ndr, NDR_SCALARS, &r->name));
1335
NDR_CHECK(ndr_push_samr_GroupAttrs(ndr, NDR_SCALARS, r->attributes));
1336
NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->num_members));
1337
NDR_CHECK(ndr_push_lsa_String(ndr, NDR_SCALARS, &r->description));
1338
NDR_CHECK(ndr_push_trailer_align(ndr, 5));
1340
if (ndr_flags & NDR_BUFFERS) {
1341
NDR_CHECK(ndr_push_lsa_String(ndr, NDR_BUFFERS, &r->name));
1342
NDR_CHECK(ndr_push_lsa_String(ndr, NDR_BUFFERS, &r->description));
1344
return NDR_ERR_SUCCESS;
1347
static enum ndr_err_code ndr_pull_samr_GroupInfoAll(struct ndr_pull *ndr, int ndr_flags, struct samr_GroupInfoAll *r)
1349
if (ndr_flags & NDR_SCALARS) {
1350
NDR_CHECK(ndr_pull_align(ndr, 5));
1351
NDR_CHECK(ndr_pull_lsa_String(ndr, NDR_SCALARS, &r->name));
1352
NDR_CHECK(ndr_pull_samr_GroupAttrs(ndr, NDR_SCALARS, &r->attributes));
1353
NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->num_members));
1354
NDR_CHECK(ndr_pull_lsa_String(ndr, NDR_SCALARS, &r->description));
1355
NDR_CHECK(ndr_pull_trailer_align(ndr, 5));
1357
if (ndr_flags & NDR_BUFFERS) {
1358
NDR_CHECK(ndr_pull_lsa_String(ndr, NDR_BUFFERS, &r->name));
1359
NDR_CHECK(ndr_pull_lsa_String(ndr, NDR_BUFFERS, &r->description));
1361
return NDR_ERR_SUCCESS;
1364
_PUBLIC_ void ndr_print_samr_GroupInfoAll(struct ndr_print *ndr, const char *name, const struct samr_GroupInfoAll *r)
1366
ndr_print_struct(ndr, name, "samr_GroupInfoAll");
1367
if (r == NULL) { ndr_print_null(ndr); return; }
1369
ndr_print_lsa_String(ndr, "name", &r->name);
1370
ndr_print_samr_GroupAttrs(ndr, "attributes", r->attributes);
1371
ndr_print_uint32(ndr, "num_members", r->num_members);
1372
ndr_print_lsa_String(ndr, "description", &r->description);
1376
static enum ndr_err_code ndr_push_samr_GroupInfoAttributes(struct ndr_push *ndr, int ndr_flags, const struct samr_GroupInfoAttributes *r)
1378
if (ndr_flags & NDR_SCALARS) {
1379
NDR_CHECK(ndr_push_align(ndr, 4));
1380
NDR_CHECK(ndr_push_samr_GroupAttrs(ndr, NDR_SCALARS, r->attributes));
1381
NDR_CHECK(ndr_push_trailer_align(ndr, 4));
1383
if (ndr_flags & NDR_BUFFERS) {
1385
return NDR_ERR_SUCCESS;
1388
static enum ndr_err_code ndr_pull_samr_GroupInfoAttributes(struct ndr_pull *ndr, int ndr_flags, struct samr_GroupInfoAttributes *r)
1390
if (ndr_flags & NDR_SCALARS) {
1391
NDR_CHECK(ndr_pull_align(ndr, 4));
1392
NDR_CHECK(ndr_pull_samr_GroupAttrs(ndr, NDR_SCALARS, &r->attributes));
1393
NDR_CHECK(ndr_pull_trailer_align(ndr, 4));
1395
if (ndr_flags & NDR_BUFFERS) {
1397
return NDR_ERR_SUCCESS;
1400
_PUBLIC_ void ndr_print_samr_GroupInfoAttributes(struct ndr_print *ndr, const char *name, const struct samr_GroupInfoAttributes *r)
1402
ndr_print_struct(ndr, name, "samr_GroupInfoAttributes");
1403
if (r == NULL) { ndr_print_null(ndr); return; }
1405
ndr_print_samr_GroupAttrs(ndr, "attributes", r->attributes);
1409
static enum ndr_err_code ndr_push_samr_GroupInfoEnum(struct ndr_push *ndr, int ndr_flags, enum samr_GroupInfoEnum r)
1411
NDR_CHECK(ndr_push_enum_uint1632(ndr, NDR_SCALARS, r));
1412
return NDR_ERR_SUCCESS;
1415
static enum ndr_err_code ndr_pull_samr_GroupInfoEnum(struct ndr_pull *ndr, int ndr_flags, enum samr_GroupInfoEnum *r)
1418
NDR_CHECK(ndr_pull_enum_uint1632(ndr, NDR_SCALARS, &v));
1420
return NDR_ERR_SUCCESS;
1423
_PUBLIC_ void ndr_print_samr_GroupInfoEnum(struct ndr_print *ndr, const char *name, enum samr_GroupInfoEnum r)
1425
const char *val = NULL;
1428
case GROUPINFOALL: val = "GROUPINFOALL"; break;
1429
case GROUPINFONAME: val = "GROUPINFONAME"; break;
1430
case GROUPINFOATTRIBUTES: val = "GROUPINFOATTRIBUTES"; break;
1431
case GROUPINFODESCRIPTION: val = "GROUPINFODESCRIPTION"; break;
1432
case GROUPINFOALL2: val = "GROUPINFOALL2"; break;
1434
ndr_print_enum(ndr, name, "ENUM", val, r);
1437
static enum ndr_err_code ndr_push_samr_GroupInfo(struct ndr_push *ndr, int ndr_flags, const union samr_GroupInfo *r)
1439
if (ndr_flags & NDR_SCALARS) {
1440
uint32_t level = ndr_push_get_switch_value(ndr, r);
1441
NDR_CHECK(ndr_push_union_align(ndr, 5));
1442
NDR_CHECK(ndr_push_samr_GroupInfoEnum(ndr, NDR_SCALARS, level));
1443
NDR_CHECK(ndr_push_union_align(ndr, 5));
1445
case GROUPINFOALL: {
1446
NDR_CHECK(ndr_push_samr_GroupInfoAll(ndr, NDR_SCALARS, &r->all));
1449
case GROUPINFONAME: {
1450
NDR_CHECK(ndr_push_lsa_String(ndr, NDR_SCALARS, &r->name));
1453
case GROUPINFOATTRIBUTES: {
1454
NDR_CHECK(ndr_push_samr_GroupInfoAttributes(ndr, NDR_SCALARS, &r->attributes));
1457
case GROUPINFODESCRIPTION: {
1458
NDR_CHECK(ndr_push_lsa_String(ndr, NDR_SCALARS, &r->description));
1461
case GROUPINFOALL2: {
1462
NDR_CHECK(ndr_push_samr_GroupInfoAll(ndr, NDR_SCALARS, &r->all2));
1466
return ndr_push_error(ndr, NDR_ERR_BAD_SWITCH, "Bad switch value %u at %s", level, __location__);
1469
if (ndr_flags & NDR_BUFFERS) {
1470
uint32_t level = ndr_push_get_switch_value(ndr, r);
1473
NDR_CHECK(ndr_push_samr_GroupInfoAll(ndr, NDR_BUFFERS, &r->all));
1477
NDR_CHECK(ndr_push_lsa_String(ndr, NDR_BUFFERS, &r->name));
1480
case GROUPINFOATTRIBUTES:
1483
case GROUPINFODESCRIPTION:
1484
NDR_CHECK(ndr_push_lsa_String(ndr, NDR_BUFFERS, &r->description));
1488
NDR_CHECK(ndr_push_samr_GroupInfoAll(ndr, NDR_BUFFERS, &r->all2));
1492
return ndr_push_error(ndr, NDR_ERR_BAD_SWITCH, "Bad switch value %u at %s", level, __location__);
1495
return NDR_ERR_SUCCESS;
1498
static enum ndr_err_code ndr_pull_samr_GroupInfo(struct ndr_pull *ndr, int ndr_flags, union samr_GroupInfo *r)
1502
level = ndr_pull_get_switch_value(ndr, r);
1503
if (ndr_flags & NDR_SCALARS) {
1504
NDR_CHECK(ndr_pull_union_align(ndr, 5));
1505
NDR_CHECK(ndr_pull_uint1632(ndr, NDR_SCALARS, &_level));
1506
if (_level != level) {
1507
return ndr_pull_error(ndr, NDR_ERR_BAD_SWITCH, "Bad switch value %u for r at %s", _level, __location__);
1509
NDR_CHECK(ndr_pull_union_align(ndr, 5));
1511
case GROUPINFOALL: {
1512
NDR_CHECK(ndr_pull_samr_GroupInfoAll(ndr, NDR_SCALARS, &r->all));
1515
case GROUPINFONAME: {
1516
NDR_CHECK(ndr_pull_lsa_String(ndr, NDR_SCALARS, &r->name));
1519
case GROUPINFOATTRIBUTES: {
1520
NDR_CHECK(ndr_pull_samr_GroupInfoAttributes(ndr, NDR_SCALARS, &r->attributes));
1523
case GROUPINFODESCRIPTION: {
1524
NDR_CHECK(ndr_pull_lsa_String(ndr, NDR_SCALARS, &r->description));
1527
case GROUPINFOALL2: {
1528
NDR_CHECK(ndr_pull_samr_GroupInfoAll(ndr, NDR_SCALARS, &r->all2));
1532
return ndr_pull_error(ndr, NDR_ERR_BAD_SWITCH, "Bad switch value %u at %s", level, __location__);
1535
if (ndr_flags & NDR_BUFFERS) {
1538
NDR_CHECK(ndr_pull_samr_GroupInfoAll(ndr, NDR_BUFFERS, &r->all));
1542
NDR_CHECK(ndr_pull_lsa_String(ndr, NDR_BUFFERS, &r->name));
1545
case GROUPINFOATTRIBUTES:
1548
case GROUPINFODESCRIPTION:
1549
NDR_CHECK(ndr_pull_lsa_String(ndr, NDR_BUFFERS, &r->description));
1553
NDR_CHECK(ndr_pull_samr_GroupInfoAll(ndr, NDR_BUFFERS, &r->all2));
1557
return ndr_pull_error(ndr, NDR_ERR_BAD_SWITCH, "Bad switch value %u at %s", level, __location__);
1560
return NDR_ERR_SUCCESS;
1563
_PUBLIC_ void ndr_print_samr_GroupInfo(struct ndr_print *ndr, const char *name, const union samr_GroupInfo *r)
1566
level = ndr_print_get_switch_value(ndr, r);
1567
ndr_print_union(ndr, name, level, "samr_GroupInfo");
1570
ndr_print_samr_GroupInfoAll(ndr, "all", &r->all);
1574
ndr_print_lsa_String(ndr, "name", &r->name);
1577
case GROUPINFOATTRIBUTES:
1578
ndr_print_samr_GroupInfoAttributes(ndr, "attributes", &r->attributes);
1581
case GROUPINFODESCRIPTION:
1582
ndr_print_lsa_String(ndr, "description", &r->description);
1586
ndr_print_samr_GroupInfoAll(ndr, "all2", &r->all2);
1590
ndr_print_bad_level(ndr, name, level);
1594
static enum ndr_err_code ndr_push_samr_RidAttrArray(struct ndr_push *ndr, int ndr_flags, const struct samr_RidAttrArray *r)
1596
uint32_t cntr_rids_1;
1597
uint32_t cntr_attributes_1;
1598
if (ndr_flags & NDR_SCALARS) {
1599
NDR_CHECK(ndr_push_align(ndr, 5));
1600
NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->count));
1601
NDR_CHECK(ndr_push_unique_ptr(ndr, r->rids));
1602
NDR_CHECK(ndr_push_unique_ptr(ndr, r->attributes));
1603
NDR_CHECK(ndr_push_trailer_align(ndr, 5));
1605
if (ndr_flags & NDR_BUFFERS) {
1607
NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, r->count));
1608
for (cntr_rids_1 = 0; cntr_rids_1 < r->count; cntr_rids_1++) {
1609
NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->rids[cntr_rids_1]));
1612
if (r->attributes) {
1613
NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, r->count));
1614
for (cntr_attributes_1 = 0; cntr_attributes_1 < r->count; cntr_attributes_1++) {
1615
NDR_CHECK(ndr_push_samr_GroupAttrs(ndr, NDR_SCALARS, r->attributes[cntr_attributes_1]));
1619
return NDR_ERR_SUCCESS;
1622
static enum ndr_err_code ndr_pull_samr_RidAttrArray(struct ndr_pull *ndr, int ndr_flags, struct samr_RidAttrArray *r)
1625
uint32_t cntr_rids_1;
1626
TALLOC_CTX *_mem_save_rids_0;
1627
TALLOC_CTX *_mem_save_rids_1;
1628
uint32_t _ptr_attributes;
1629
uint32_t cntr_attributes_1;
1630
TALLOC_CTX *_mem_save_attributes_0;
1631
TALLOC_CTX *_mem_save_attributes_1;
1632
if (ndr_flags & NDR_SCALARS) {
1633
NDR_CHECK(ndr_pull_align(ndr, 5));
1634
NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->count));
1635
NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_rids));
1637
NDR_PULL_ALLOC(ndr, r->rids);
1641
NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_attributes));
1642
if (_ptr_attributes) {
1643
NDR_PULL_ALLOC(ndr, r->attributes);
1645
r->attributes = NULL;
1647
NDR_CHECK(ndr_pull_trailer_align(ndr, 5));
1649
if (ndr_flags & NDR_BUFFERS) {
1651
_mem_save_rids_0 = NDR_PULL_GET_MEM_CTX(ndr);
1652
NDR_PULL_SET_MEM_CTX(ndr, r->rids, 0);
1653
NDR_CHECK(ndr_pull_array_size(ndr, &r->rids));
1654
NDR_PULL_ALLOC_N(ndr, r->rids, ndr_get_array_size(ndr, &r->rids));
1655
_mem_save_rids_1 = NDR_PULL_GET_MEM_CTX(ndr);
1656
NDR_PULL_SET_MEM_CTX(ndr, r->rids, 0);
1657
for (cntr_rids_1 = 0; cntr_rids_1 < r->count; cntr_rids_1++) {
1658
NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->rids[cntr_rids_1]));
1660
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_rids_1, 0);
1661
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_rids_0, 0);
1663
if (r->attributes) {
1664
_mem_save_attributes_0 = NDR_PULL_GET_MEM_CTX(ndr);
1665
NDR_PULL_SET_MEM_CTX(ndr, r->attributes, 0);
1666
NDR_CHECK(ndr_pull_array_size(ndr, &r->attributes));
1667
NDR_PULL_ALLOC_N(ndr, r->attributes, ndr_get_array_size(ndr, &r->attributes));
1668
_mem_save_attributes_1 = NDR_PULL_GET_MEM_CTX(ndr);
1669
NDR_PULL_SET_MEM_CTX(ndr, r->attributes, 0);
1670
for (cntr_attributes_1 = 0; cntr_attributes_1 < r->count; cntr_attributes_1++) {
1671
NDR_CHECK(ndr_pull_samr_GroupAttrs(ndr, NDR_SCALARS, &r->attributes[cntr_attributes_1]));
1673
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_attributes_1, 0);
1674
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_attributes_0, 0);
1677
NDR_CHECK(ndr_check_array_size(ndr, (void*)&r->rids, r->count));
1679
if (r->attributes) {
1680
NDR_CHECK(ndr_check_array_size(ndr, (void*)&r->attributes, r->count));
1683
return NDR_ERR_SUCCESS;
1686
_PUBLIC_ void ndr_print_samr_RidAttrArray(struct ndr_print *ndr, const char *name, const struct samr_RidAttrArray *r)
1688
uint32_t cntr_rids_1;
1689
uint32_t cntr_attributes_1;
1690
ndr_print_struct(ndr, name, "samr_RidAttrArray");
1691
if (r == NULL) { ndr_print_null(ndr); return; }
1693
ndr_print_uint32(ndr, "count", r->count);
1694
ndr_print_ptr(ndr, "rids", r->rids);
1697
ndr->print(ndr, "%s: ARRAY(%d)", "rids", (int)r->count);
1699
for (cntr_rids_1=0;cntr_rids_1<r->count;cntr_rids_1++) {
1700
ndr_print_uint32(ndr, "rids", r->rids[cntr_rids_1]);
1705
ndr_print_ptr(ndr, "attributes", r->attributes);
1707
if (r->attributes) {
1708
ndr->print(ndr, "%s: ARRAY(%d)", "attributes", (int)r->count);
1710
for (cntr_attributes_1=0;cntr_attributes_1<r->count;cntr_attributes_1++) {
1711
ndr_print_samr_GroupAttrs(ndr, "attributes", r->attributes[cntr_attributes_1]);
1719
static enum ndr_err_code ndr_push_samr_AliasInfoAll(struct ndr_push *ndr, int ndr_flags, const struct samr_AliasInfoAll *r)
1721
if (ndr_flags & NDR_SCALARS) {
1722
NDR_CHECK(ndr_push_align(ndr, 5));
1723
NDR_CHECK(ndr_push_lsa_String(ndr, NDR_SCALARS, &r->name));
1724
NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->num_members));
1725
NDR_CHECK(ndr_push_lsa_String(ndr, NDR_SCALARS, &r->description));
1726
NDR_CHECK(ndr_push_trailer_align(ndr, 5));
1728
if (ndr_flags & NDR_BUFFERS) {
1729
NDR_CHECK(ndr_push_lsa_String(ndr, NDR_BUFFERS, &r->name));
1730
NDR_CHECK(ndr_push_lsa_String(ndr, NDR_BUFFERS, &r->description));
1732
return NDR_ERR_SUCCESS;
1735
static enum ndr_err_code ndr_pull_samr_AliasInfoAll(struct ndr_pull *ndr, int ndr_flags, struct samr_AliasInfoAll *r)
1737
if (ndr_flags & NDR_SCALARS) {
1738
NDR_CHECK(ndr_pull_align(ndr, 5));
1739
NDR_CHECK(ndr_pull_lsa_String(ndr, NDR_SCALARS, &r->name));
1740
NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->num_members));
1741
NDR_CHECK(ndr_pull_lsa_String(ndr, NDR_SCALARS, &r->description));
1742
NDR_CHECK(ndr_pull_trailer_align(ndr, 5));
1744
if (ndr_flags & NDR_BUFFERS) {
1745
NDR_CHECK(ndr_pull_lsa_String(ndr, NDR_BUFFERS, &r->name));
1746
NDR_CHECK(ndr_pull_lsa_String(ndr, NDR_BUFFERS, &r->description));
1748
return NDR_ERR_SUCCESS;
1751
_PUBLIC_ void ndr_print_samr_AliasInfoAll(struct ndr_print *ndr, const char *name, const struct samr_AliasInfoAll *r)
1753
ndr_print_struct(ndr, name, "samr_AliasInfoAll");
1754
if (r == NULL) { ndr_print_null(ndr); return; }
1756
ndr_print_lsa_String(ndr, "name", &r->name);
1757
ndr_print_uint32(ndr, "num_members", r->num_members);
1758
ndr_print_lsa_String(ndr, "description", &r->description);
1762
static enum ndr_err_code ndr_push_samr_AliasInfoEnum(struct ndr_push *ndr, int ndr_flags, enum samr_AliasInfoEnum r)
1764
NDR_CHECK(ndr_push_enum_uint1632(ndr, NDR_SCALARS, r));
1765
return NDR_ERR_SUCCESS;
1768
static enum ndr_err_code ndr_pull_samr_AliasInfoEnum(struct ndr_pull *ndr, int ndr_flags, enum samr_AliasInfoEnum *r)
1771
NDR_CHECK(ndr_pull_enum_uint1632(ndr, NDR_SCALARS, &v));
1773
return NDR_ERR_SUCCESS;
1776
_PUBLIC_ void ndr_print_samr_AliasInfoEnum(struct ndr_print *ndr, const char *name, enum samr_AliasInfoEnum r)
1778
const char *val = NULL;
1781
case ALIASINFOALL: val = "ALIASINFOALL"; break;
1782
case ALIASINFONAME: val = "ALIASINFONAME"; break;
1783
case ALIASINFODESCRIPTION: val = "ALIASINFODESCRIPTION"; break;
1785
ndr_print_enum(ndr, name, "ENUM", val, r);
1788
static enum ndr_err_code ndr_push_samr_AliasInfo(struct ndr_push *ndr, int ndr_flags, const union samr_AliasInfo *r)
1790
if (ndr_flags & NDR_SCALARS) {
1791
uint32_t level = ndr_push_get_switch_value(ndr, r);
1792
NDR_CHECK(ndr_push_union_align(ndr, 5));
1793
NDR_CHECK(ndr_push_samr_AliasInfoEnum(ndr, NDR_SCALARS, level));
1794
NDR_CHECK(ndr_push_union_align(ndr, 5));
1796
case ALIASINFOALL: {
1797
NDR_CHECK(ndr_push_samr_AliasInfoAll(ndr, NDR_SCALARS, &r->all));
1800
case ALIASINFONAME: {
1801
NDR_CHECK(ndr_push_lsa_String(ndr, NDR_SCALARS, &r->name));
1804
case ALIASINFODESCRIPTION: {
1805
NDR_CHECK(ndr_push_lsa_String(ndr, NDR_SCALARS, &r->description));
1809
return ndr_push_error(ndr, NDR_ERR_BAD_SWITCH, "Bad switch value %u at %s", level, __location__);
1812
if (ndr_flags & NDR_BUFFERS) {
1813
uint32_t level = ndr_push_get_switch_value(ndr, r);
1816
NDR_CHECK(ndr_push_samr_AliasInfoAll(ndr, NDR_BUFFERS, &r->all));
1820
NDR_CHECK(ndr_push_lsa_String(ndr, NDR_BUFFERS, &r->name));
1823
case ALIASINFODESCRIPTION:
1824
NDR_CHECK(ndr_push_lsa_String(ndr, NDR_BUFFERS, &r->description));
1828
return ndr_push_error(ndr, NDR_ERR_BAD_SWITCH, "Bad switch value %u at %s", level, __location__);
1831
return NDR_ERR_SUCCESS;
1834
static enum ndr_err_code ndr_pull_samr_AliasInfo(struct ndr_pull *ndr, int ndr_flags, union samr_AliasInfo *r)
1838
level = ndr_pull_get_switch_value(ndr, r);
1839
if (ndr_flags & NDR_SCALARS) {
1840
NDR_CHECK(ndr_pull_union_align(ndr, 5));
1841
NDR_CHECK(ndr_pull_uint1632(ndr, NDR_SCALARS, &_level));
1842
if (_level != level) {
1843
return ndr_pull_error(ndr, NDR_ERR_BAD_SWITCH, "Bad switch value %u for r at %s", _level, __location__);
1845
NDR_CHECK(ndr_pull_union_align(ndr, 5));
1847
case ALIASINFOALL: {
1848
NDR_CHECK(ndr_pull_samr_AliasInfoAll(ndr, NDR_SCALARS, &r->all));
1851
case ALIASINFONAME: {
1852
NDR_CHECK(ndr_pull_lsa_String(ndr, NDR_SCALARS, &r->name));
1855
case ALIASINFODESCRIPTION: {
1856
NDR_CHECK(ndr_pull_lsa_String(ndr, NDR_SCALARS, &r->description));
1860
return ndr_pull_error(ndr, NDR_ERR_BAD_SWITCH, "Bad switch value %u at %s", level, __location__);
1863
if (ndr_flags & NDR_BUFFERS) {
1866
NDR_CHECK(ndr_pull_samr_AliasInfoAll(ndr, NDR_BUFFERS, &r->all));
1870
NDR_CHECK(ndr_pull_lsa_String(ndr, NDR_BUFFERS, &r->name));
1873
case ALIASINFODESCRIPTION:
1874
NDR_CHECK(ndr_pull_lsa_String(ndr, NDR_BUFFERS, &r->description));
1878
return ndr_pull_error(ndr, NDR_ERR_BAD_SWITCH, "Bad switch value %u at %s", level, __location__);
1881
return NDR_ERR_SUCCESS;
1884
_PUBLIC_ void ndr_print_samr_AliasInfo(struct ndr_print *ndr, const char *name, const union samr_AliasInfo *r)
1887
level = ndr_print_get_switch_value(ndr, r);
1888
ndr_print_union(ndr, name, level, "samr_AliasInfo");
1891
ndr_print_samr_AliasInfoAll(ndr, "all", &r->all);
1895
ndr_print_lsa_String(ndr, "name", &r->name);
1898
case ALIASINFODESCRIPTION:
1899
ndr_print_lsa_String(ndr, "description", &r->description);
1903
ndr_print_bad_level(ndr, name, level);
1907
static enum ndr_err_code ndr_push_samr_UserInfoLevel(struct ndr_push *ndr, int ndr_flags, enum samr_UserInfoLevel r)
1909
NDR_CHECK(ndr_push_enum_uint1632(ndr, NDR_SCALARS, r));
1910
return NDR_ERR_SUCCESS;
1913
static enum ndr_err_code ndr_pull_samr_UserInfoLevel(struct ndr_pull *ndr, int ndr_flags, enum samr_UserInfoLevel *r)
1916
NDR_CHECK(ndr_pull_enum_uint1632(ndr, NDR_SCALARS, &v));
1918
return NDR_ERR_SUCCESS;
1921
_PUBLIC_ void ndr_print_samr_UserInfoLevel(struct ndr_print *ndr, const char *name, enum samr_UserInfoLevel r)
1923
const char *val = NULL;
1926
case UserGeneralInformation: val = "UserGeneralInformation"; break;
1927
case UserPreferencesInformation: val = "UserPreferencesInformation"; break;
1928
case UserLogonInformation: val = "UserLogonInformation"; break;
1929
case UserLogonHoursInformation: val = "UserLogonHoursInformation"; break;
1930
case UserAccountInformation: val = "UserAccountInformation"; break;
1931
case UserNameInformation: val = "UserNameInformation"; break;
1932
case UserAccountNameInformation: val = "UserAccountNameInformation"; break;
1933
case UserFullNameInformation: val = "UserFullNameInformation"; break;
1934
case UserPrimaryGroupInformation: val = "UserPrimaryGroupInformation"; break;
1935
case UserHomeInformation: val = "UserHomeInformation"; break;
1936
case UserScriptInformation: val = "UserScriptInformation"; break;
1937
case UserProfileInformation: val = "UserProfileInformation"; break;
1938
case UserAdminCommentInformation: val = "UserAdminCommentInformation"; break;
1939
case UserWorkStationsInformation: val = "UserWorkStationsInformation"; break;
1940
case UserControlInformation: val = "UserControlInformation"; break;
1941
case UserExpiresInformation: val = "UserExpiresInformation"; break;
1942
case UserInternal1Information: val = "UserInternal1Information"; break;
1943
case UserParametersInformation: val = "UserParametersInformation"; break;
1944
case UserAllInformation: val = "UserAllInformation"; break;
1945
case UserInternal4Information: val = "UserInternal4Information"; break;
1946
case UserInternal5Information: val = "UserInternal5Information"; break;
1947
case UserInternal4InformationNew: val = "UserInternal4InformationNew"; break;
1948
case UserInternal5InformationNew: val = "UserInternal5InformationNew"; break;
1950
ndr_print_enum(ndr, name, "ENUM", val, r);
1953
static enum ndr_err_code ndr_push_samr_UserInfo1(struct ndr_push *ndr, int ndr_flags, const struct samr_UserInfo1 *r)
1955
if (ndr_flags & NDR_SCALARS) {
1956
NDR_CHECK(ndr_push_align(ndr, 5));
1957
NDR_CHECK(ndr_push_lsa_String(ndr, NDR_SCALARS, &r->account_name));
1958
NDR_CHECK(ndr_push_lsa_String(ndr, NDR_SCALARS, &r->full_name));
1959
NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->primary_gid));
1960
NDR_CHECK(ndr_push_lsa_String(ndr, NDR_SCALARS, &r->description));
1961
NDR_CHECK(ndr_push_lsa_String(ndr, NDR_SCALARS, &r->comment));
1962
NDR_CHECK(ndr_push_trailer_align(ndr, 5));
1964
if (ndr_flags & NDR_BUFFERS) {
1965
NDR_CHECK(ndr_push_lsa_String(ndr, NDR_BUFFERS, &r->account_name));
1966
NDR_CHECK(ndr_push_lsa_String(ndr, NDR_BUFFERS, &r->full_name));
1967
NDR_CHECK(ndr_push_lsa_String(ndr, NDR_BUFFERS, &r->description));
1968
NDR_CHECK(ndr_push_lsa_String(ndr, NDR_BUFFERS, &r->comment));
1970
return NDR_ERR_SUCCESS;
1973
static enum ndr_err_code ndr_pull_samr_UserInfo1(struct ndr_pull *ndr, int ndr_flags, struct samr_UserInfo1 *r)
1975
if (ndr_flags & NDR_SCALARS) {
1976
NDR_CHECK(ndr_pull_align(ndr, 5));
1977
NDR_CHECK(ndr_pull_lsa_String(ndr, NDR_SCALARS, &r->account_name));
1978
NDR_CHECK(ndr_pull_lsa_String(ndr, NDR_SCALARS, &r->full_name));
1979
NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->primary_gid));
1980
NDR_CHECK(ndr_pull_lsa_String(ndr, NDR_SCALARS, &r->description));
1981
NDR_CHECK(ndr_pull_lsa_String(ndr, NDR_SCALARS, &r->comment));
1982
NDR_CHECK(ndr_pull_trailer_align(ndr, 5));
1984
if (ndr_flags & NDR_BUFFERS) {
1985
NDR_CHECK(ndr_pull_lsa_String(ndr, NDR_BUFFERS, &r->account_name));
1986
NDR_CHECK(ndr_pull_lsa_String(ndr, NDR_BUFFERS, &r->full_name));
1987
NDR_CHECK(ndr_pull_lsa_String(ndr, NDR_BUFFERS, &r->description));
1988
NDR_CHECK(ndr_pull_lsa_String(ndr, NDR_BUFFERS, &r->comment));
1990
return NDR_ERR_SUCCESS;
1993
_PUBLIC_ void ndr_print_samr_UserInfo1(struct ndr_print *ndr, const char *name, const struct samr_UserInfo1 *r)
1995
ndr_print_struct(ndr, name, "samr_UserInfo1");
1996
if (r == NULL) { ndr_print_null(ndr); return; }
1998
ndr_print_lsa_String(ndr, "account_name", &r->account_name);
1999
ndr_print_lsa_String(ndr, "full_name", &r->full_name);
2000
ndr_print_uint32(ndr, "primary_gid", r->primary_gid);
2001
ndr_print_lsa_String(ndr, "description", &r->description);
2002
ndr_print_lsa_String(ndr, "comment", &r->comment);
2006
static enum ndr_err_code ndr_push_samr_UserInfo2(struct ndr_push *ndr, int ndr_flags, const struct samr_UserInfo2 *r)
2008
if (ndr_flags & NDR_SCALARS) {
2009
NDR_CHECK(ndr_push_align(ndr, 5));
2010
NDR_CHECK(ndr_push_lsa_String(ndr, NDR_SCALARS, &r->comment));
2011
NDR_CHECK(ndr_push_lsa_String(ndr, NDR_SCALARS, &r->reserved));
2012
NDR_CHECK(ndr_push_uint16(ndr, NDR_SCALARS, r->country_code));
2013
NDR_CHECK(ndr_push_uint16(ndr, NDR_SCALARS, r->code_page));
2014
NDR_CHECK(ndr_push_trailer_align(ndr, 5));
2016
if (ndr_flags & NDR_BUFFERS) {
2017
NDR_CHECK(ndr_push_lsa_String(ndr, NDR_BUFFERS, &r->comment));
2018
NDR_CHECK(ndr_push_lsa_String(ndr, NDR_BUFFERS, &r->reserved));
2020
return NDR_ERR_SUCCESS;
2023
static enum ndr_err_code ndr_pull_samr_UserInfo2(struct ndr_pull *ndr, int ndr_flags, struct samr_UserInfo2 *r)
2025
if (ndr_flags & NDR_SCALARS) {
2026
NDR_CHECK(ndr_pull_align(ndr, 5));
2027
NDR_CHECK(ndr_pull_lsa_String(ndr, NDR_SCALARS, &r->comment));
2028
NDR_CHECK(ndr_pull_lsa_String(ndr, NDR_SCALARS, &r->reserved));
2029
NDR_CHECK(ndr_pull_uint16(ndr, NDR_SCALARS, &r->country_code));
2030
NDR_CHECK(ndr_pull_uint16(ndr, NDR_SCALARS, &r->code_page));
2031
NDR_CHECK(ndr_pull_trailer_align(ndr, 5));
2033
if (ndr_flags & NDR_BUFFERS) {
2034
NDR_CHECK(ndr_pull_lsa_String(ndr, NDR_BUFFERS, &r->comment));
2035
NDR_CHECK(ndr_pull_lsa_String(ndr, NDR_BUFFERS, &r->reserved));
2037
return NDR_ERR_SUCCESS;
2040
_PUBLIC_ void ndr_print_samr_UserInfo2(struct ndr_print *ndr, const char *name, const struct samr_UserInfo2 *r)
2042
ndr_print_struct(ndr, name, "samr_UserInfo2");
2043
if (r == NULL) { ndr_print_null(ndr); return; }
2045
ndr_print_lsa_String(ndr, "comment", &r->comment);
2046
ndr_print_lsa_String(ndr, "reserved", &r->reserved);
2047
ndr_print_uint16(ndr, "country_code", r->country_code);
2048
ndr_print_uint16(ndr, "code_page", r->code_page);
2052
_PUBLIC_ enum ndr_err_code ndr_push_samr_LogonHours(struct ndr_push *ndr, int ndr_flags, const struct samr_LogonHours *r)
2055
uint32_t _flags_save_STRUCT = ndr->flags;
2056
ndr_set_flags(&ndr->flags, LIBNDR_PRINT_ARRAY_HEX);
2057
if (ndr_flags & NDR_SCALARS) {
2058
NDR_CHECK(ndr_push_align(ndr, 5));
2059
NDR_CHECK(ndr_push_uint16(ndr, NDR_SCALARS, r->units_per_week));
2060
NDR_CHECK(ndr_push_unique_ptr(ndr, r->bits));
2061
NDR_CHECK(ndr_push_trailer_align(ndr, 5));
2063
if (ndr_flags & NDR_BUFFERS) {
2065
NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, 1260));
2066
NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, 0));
2067
NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, r->units_per_week / 8));
2068
NDR_CHECK(ndr_push_array_uint8(ndr, NDR_SCALARS, r->bits, r->units_per_week / 8));
2071
ndr->flags = _flags_save_STRUCT;
2073
return NDR_ERR_SUCCESS;
2076
_PUBLIC_ enum ndr_err_code ndr_pull_samr_LogonHours(struct ndr_pull *ndr, int ndr_flags, struct samr_LogonHours *r)
2079
TALLOC_CTX *_mem_save_bits_0;
2081
uint32_t _flags_save_STRUCT = ndr->flags;
2082
ndr_set_flags(&ndr->flags, LIBNDR_PRINT_ARRAY_HEX);
2083
if (ndr_flags & NDR_SCALARS) {
2084
NDR_CHECK(ndr_pull_align(ndr, 5));
2085
NDR_CHECK(ndr_pull_uint16(ndr, NDR_SCALARS, &r->units_per_week));
2086
NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_bits));
2088
NDR_PULL_ALLOC(ndr, r->bits);
2092
NDR_CHECK(ndr_pull_trailer_align(ndr, 5));
2094
if (ndr_flags & NDR_BUFFERS) {
2096
_mem_save_bits_0 = NDR_PULL_GET_MEM_CTX(ndr);
2097
NDR_PULL_SET_MEM_CTX(ndr, r->bits, 0);
2098
NDR_CHECK(ndr_pull_array_size(ndr, &r->bits));
2099
NDR_CHECK(ndr_pull_array_length(ndr, &r->bits));
2100
if (ndr_get_array_length(ndr, &r->bits) > ndr_get_array_size(ndr, &r->bits)) {
2101
return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", ndr_get_array_size(ndr, &r->bits), ndr_get_array_length(ndr, &r->bits));
2103
NDR_PULL_ALLOC_N(ndr, r->bits, ndr_get_array_size(ndr, &r->bits));
2104
NDR_CHECK(ndr_pull_array_uint8(ndr, NDR_SCALARS, r->bits, ndr_get_array_length(ndr, &r->bits)));
2105
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_bits_0, 0);
2108
NDR_CHECK(ndr_check_array_size(ndr, (void*)&r->bits, 1260));
2111
NDR_CHECK(ndr_check_array_length(ndr, (void*)&r->bits, r->units_per_week / 8));
2114
ndr->flags = _flags_save_STRUCT;
2116
return NDR_ERR_SUCCESS;
2119
_PUBLIC_ void ndr_print_samr_LogonHours(struct ndr_print *ndr, const char *name, const struct samr_LogonHours *r)
2121
ndr_print_struct(ndr, name, "samr_LogonHours");
2122
if (r == NULL) { ndr_print_null(ndr); return; }
2124
uint32_t _flags_save_STRUCT = ndr->flags;
2125
ndr_set_flags(&ndr->flags, LIBNDR_PRINT_ARRAY_HEX);
2127
ndr_print_uint16(ndr, "units_per_week", r->units_per_week);
2128
ndr_print_ptr(ndr, "bits", r->bits);
2131
ndr_print_array_uint8(ndr, "bits", r->bits, r->units_per_week / 8);
2135
ndr->flags = _flags_save_STRUCT;
2139
static enum ndr_err_code ndr_push_samr_UserInfo3(struct ndr_push *ndr, int ndr_flags, const struct samr_UserInfo3 *r)
2141
if (ndr_flags & NDR_SCALARS) {
2142
NDR_CHECK(ndr_push_align(ndr, 5));
2143
NDR_CHECK(ndr_push_lsa_String(ndr, NDR_SCALARS, &r->account_name));
2144
NDR_CHECK(ndr_push_lsa_String(ndr, NDR_SCALARS, &r->full_name));
2145
NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->rid));
2146
NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->primary_gid));
2147
NDR_CHECK(ndr_push_lsa_String(ndr, NDR_SCALARS, &r->home_directory));
2148
NDR_CHECK(ndr_push_lsa_String(ndr, NDR_SCALARS, &r->home_drive));
2149
NDR_CHECK(ndr_push_lsa_String(ndr, NDR_SCALARS, &r->logon_script));
2150
NDR_CHECK(ndr_push_lsa_String(ndr, NDR_SCALARS, &r->profile_path));
2151
NDR_CHECK(ndr_push_lsa_String(ndr, NDR_SCALARS, &r->workstations));
2152
NDR_CHECK(ndr_push_NTTIME(ndr, NDR_SCALARS, r->last_logon));
2153
NDR_CHECK(ndr_push_NTTIME(ndr, NDR_SCALARS, r->last_logoff));
2154
NDR_CHECK(ndr_push_NTTIME(ndr, NDR_SCALARS, r->last_password_change));
2155
NDR_CHECK(ndr_push_NTTIME(ndr, NDR_SCALARS, r->allow_password_change));
2156
NDR_CHECK(ndr_push_NTTIME(ndr, NDR_SCALARS, r->force_password_change));
2157
NDR_CHECK(ndr_push_samr_LogonHours(ndr, NDR_SCALARS, &r->logon_hours));
2158
NDR_CHECK(ndr_push_uint16(ndr, NDR_SCALARS, r->bad_password_count));
2159
NDR_CHECK(ndr_push_uint16(ndr, NDR_SCALARS, r->logon_count));
2160
NDR_CHECK(ndr_push_samr_AcctFlags(ndr, NDR_SCALARS, r->acct_flags));
2161
NDR_CHECK(ndr_push_trailer_align(ndr, 5));
2163
if (ndr_flags & NDR_BUFFERS) {
2164
NDR_CHECK(ndr_push_lsa_String(ndr, NDR_BUFFERS, &r->account_name));
2165
NDR_CHECK(ndr_push_lsa_String(ndr, NDR_BUFFERS, &r->full_name));
2166
NDR_CHECK(ndr_push_lsa_String(ndr, NDR_BUFFERS, &r->home_directory));
2167
NDR_CHECK(ndr_push_lsa_String(ndr, NDR_BUFFERS, &r->home_drive));
2168
NDR_CHECK(ndr_push_lsa_String(ndr, NDR_BUFFERS, &r->logon_script));
2169
NDR_CHECK(ndr_push_lsa_String(ndr, NDR_BUFFERS, &r->profile_path));
2170
NDR_CHECK(ndr_push_lsa_String(ndr, NDR_BUFFERS, &r->workstations));
2171
NDR_CHECK(ndr_push_samr_LogonHours(ndr, NDR_BUFFERS, &r->logon_hours));
2173
return NDR_ERR_SUCCESS;
2176
static enum ndr_err_code ndr_pull_samr_UserInfo3(struct ndr_pull *ndr, int ndr_flags, struct samr_UserInfo3 *r)
2178
if (ndr_flags & NDR_SCALARS) {
2179
NDR_CHECK(ndr_pull_align(ndr, 5));
2180
NDR_CHECK(ndr_pull_lsa_String(ndr, NDR_SCALARS, &r->account_name));
2181
NDR_CHECK(ndr_pull_lsa_String(ndr, NDR_SCALARS, &r->full_name));
2182
NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->rid));
2183
NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->primary_gid));
2184
NDR_CHECK(ndr_pull_lsa_String(ndr, NDR_SCALARS, &r->home_directory));
2185
NDR_CHECK(ndr_pull_lsa_String(ndr, NDR_SCALARS, &r->home_drive));
2186
NDR_CHECK(ndr_pull_lsa_String(ndr, NDR_SCALARS, &r->logon_script));
2187
NDR_CHECK(ndr_pull_lsa_String(ndr, NDR_SCALARS, &r->profile_path));
2188
NDR_CHECK(ndr_pull_lsa_String(ndr, NDR_SCALARS, &r->workstations));
2189
NDR_CHECK(ndr_pull_NTTIME(ndr, NDR_SCALARS, &r->last_logon));
2190
NDR_CHECK(ndr_pull_NTTIME(ndr, NDR_SCALARS, &r->last_logoff));
2191
NDR_CHECK(ndr_pull_NTTIME(ndr, NDR_SCALARS, &r->last_password_change));
2192
NDR_CHECK(ndr_pull_NTTIME(ndr, NDR_SCALARS, &r->allow_password_change));
2193
NDR_CHECK(ndr_pull_NTTIME(ndr, NDR_SCALARS, &r->force_password_change));
2194
NDR_CHECK(ndr_pull_samr_LogonHours(ndr, NDR_SCALARS, &r->logon_hours));
2195
NDR_CHECK(ndr_pull_uint16(ndr, NDR_SCALARS, &r->bad_password_count));
2196
NDR_CHECK(ndr_pull_uint16(ndr, NDR_SCALARS, &r->logon_count));
2197
NDR_CHECK(ndr_pull_samr_AcctFlags(ndr, NDR_SCALARS, &r->acct_flags));
2198
NDR_CHECK(ndr_pull_trailer_align(ndr, 5));
2200
if (ndr_flags & NDR_BUFFERS) {
2201
NDR_CHECK(ndr_pull_lsa_String(ndr, NDR_BUFFERS, &r->account_name));
2202
NDR_CHECK(ndr_pull_lsa_String(ndr, NDR_BUFFERS, &r->full_name));
2203
NDR_CHECK(ndr_pull_lsa_String(ndr, NDR_BUFFERS, &r->home_directory));
2204
NDR_CHECK(ndr_pull_lsa_String(ndr, NDR_BUFFERS, &r->home_drive));
2205
NDR_CHECK(ndr_pull_lsa_String(ndr, NDR_BUFFERS, &r->logon_script));
2206
NDR_CHECK(ndr_pull_lsa_String(ndr, NDR_BUFFERS, &r->profile_path));
2207
NDR_CHECK(ndr_pull_lsa_String(ndr, NDR_BUFFERS, &r->workstations));
2208
NDR_CHECK(ndr_pull_samr_LogonHours(ndr, NDR_BUFFERS, &r->logon_hours));
2210
return NDR_ERR_SUCCESS;
2213
_PUBLIC_ void ndr_print_samr_UserInfo3(struct ndr_print *ndr, const char *name, const struct samr_UserInfo3 *r)
2215
ndr_print_struct(ndr, name, "samr_UserInfo3");
2216
if (r == NULL) { ndr_print_null(ndr); return; }
2218
ndr_print_lsa_String(ndr, "account_name", &r->account_name);
2219
ndr_print_lsa_String(ndr, "full_name", &r->full_name);
2220
ndr_print_uint32(ndr, "rid", r->rid);
2221
ndr_print_uint32(ndr, "primary_gid", r->primary_gid);
2222
ndr_print_lsa_String(ndr, "home_directory", &r->home_directory);
2223
ndr_print_lsa_String(ndr, "home_drive", &r->home_drive);
2224
ndr_print_lsa_String(ndr, "logon_script", &r->logon_script);
2225
ndr_print_lsa_String(ndr, "profile_path", &r->profile_path);
2226
ndr_print_lsa_String(ndr, "workstations", &r->workstations);
2227
ndr_print_NTTIME(ndr, "last_logon", r->last_logon);
2228
ndr_print_NTTIME(ndr, "last_logoff", r->last_logoff);
2229
ndr_print_NTTIME(ndr, "last_password_change", r->last_password_change);
2230
ndr_print_NTTIME(ndr, "allow_password_change", r->allow_password_change);
2231
ndr_print_NTTIME(ndr, "force_password_change", r->force_password_change);
2232
ndr_print_samr_LogonHours(ndr, "logon_hours", &r->logon_hours);
2233
ndr_print_uint16(ndr, "bad_password_count", r->bad_password_count);
2234
ndr_print_uint16(ndr, "logon_count", r->logon_count);
2235
ndr_print_samr_AcctFlags(ndr, "acct_flags", r->acct_flags);
2239
static enum ndr_err_code ndr_push_samr_UserInfo4(struct ndr_push *ndr, int ndr_flags, const struct samr_UserInfo4 *r)
2241
if (ndr_flags & NDR_SCALARS) {
2242
NDR_CHECK(ndr_push_align(ndr, 5));
2243
NDR_CHECK(ndr_push_samr_LogonHours(ndr, NDR_SCALARS, &r->logon_hours));
2244
NDR_CHECK(ndr_push_trailer_align(ndr, 5));
2246
if (ndr_flags & NDR_BUFFERS) {
2247
NDR_CHECK(ndr_push_samr_LogonHours(ndr, NDR_BUFFERS, &r->logon_hours));
2249
return NDR_ERR_SUCCESS;
2252
static enum ndr_err_code ndr_pull_samr_UserInfo4(struct ndr_pull *ndr, int ndr_flags, struct samr_UserInfo4 *r)
2254
if (ndr_flags & NDR_SCALARS) {
2255
NDR_CHECK(ndr_pull_align(ndr, 5));
2256
NDR_CHECK(ndr_pull_samr_LogonHours(ndr, NDR_SCALARS, &r->logon_hours));
2257
NDR_CHECK(ndr_pull_trailer_align(ndr, 5));
2259
if (ndr_flags & NDR_BUFFERS) {
2260
NDR_CHECK(ndr_pull_samr_LogonHours(ndr, NDR_BUFFERS, &r->logon_hours));
2262
return NDR_ERR_SUCCESS;
2265
_PUBLIC_ void ndr_print_samr_UserInfo4(struct ndr_print *ndr, const char *name, const struct samr_UserInfo4 *r)
2267
ndr_print_struct(ndr, name, "samr_UserInfo4");
2268
if (r == NULL) { ndr_print_null(ndr); return; }
2270
ndr_print_samr_LogonHours(ndr, "logon_hours", &r->logon_hours);
2274
static enum ndr_err_code ndr_push_samr_UserInfo5(struct ndr_push *ndr, int ndr_flags, const struct samr_UserInfo5 *r)
2276
if (ndr_flags & NDR_SCALARS) {
2277
NDR_CHECK(ndr_push_align(ndr, 5));
2278
NDR_CHECK(ndr_push_lsa_String(ndr, NDR_SCALARS, &r->account_name));
2279
NDR_CHECK(ndr_push_lsa_String(ndr, NDR_SCALARS, &r->full_name));
2280
NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->rid));
2281
NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->primary_gid));
2282
NDR_CHECK(ndr_push_lsa_String(ndr, NDR_SCALARS, &r->home_directory));
2283
NDR_CHECK(ndr_push_lsa_String(ndr, NDR_SCALARS, &r->home_drive));
2284
NDR_CHECK(ndr_push_lsa_String(ndr, NDR_SCALARS, &r->logon_script));
2285
NDR_CHECK(ndr_push_lsa_String(ndr, NDR_SCALARS, &r->profile_path));
2286
NDR_CHECK(ndr_push_lsa_String(ndr, NDR_SCALARS, &r->description));
2287
NDR_CHECK(ndr_push_lsa_String(ndr, NDR_SCALARS, &r->workstations));
2288
NDR_CHECK(ndr_push_NTTIME(ndr, NDR_SCALARS, r->last_logon));
2289
NDR_CHECK(ndr_push_NTTIME(ndr, NDR_SCALARS, r->last_logoff));
2290
NDR_CHECK(ndr_push_samr_LogonHours(ndr, NDR_SCALARS, &r->logon_hours));
2291
NDR_CHECK(ndr_push_uint16(ndr, NDR_SCALARS, r->bad_password_count));
2292
NDR_CHECK(ndr_push_uint16(ndr, NDR_SCALARS, r->logon_count));
2293
NDR_CHECK(ndr_push_NTTIME(ndr, NDR_SCALARS, r->last_password_change));
2294
NDR_CHECK(ndr_push_NTTIME(ndr, NDR_SCALARS, r->acct_expiry));
2295
NDR_CHECK(ndr_push_samr_AcctFlags(ndr, NDR_SCALARS, r->acct_flags));
2296
NDR_CHECK(ndr_push_trailer_align(ndr, 5));
2298
if (ndr_flags & NDR_BUFFERS) {
2299
NDR_CHECK(ndr_push_lsa_String(ndr, NDR_BUFFERS, &r->account_name));
2300
NDR_CHECK(ndr_push_lsa_String(ndr, NDR_BUFFERS, &r->full_name));
2301
NDR_CHECK(ndr_push_lsa_String(ndr, NDR_BUFFERS, &r->home_directory));
2302
NDR_CHECK(ndr_push_lsa_String(ndr, NDR_BUFFERS, &r->home_drive));
2303
NDR_CHECK(ndr_push_lsa_String(ndr, NDR_BUFFERS, &r->logon_script));
2304
NDR_CHECK(ndr_push_lsa_String(ndr, NDR_BUFFERS, &r->profile_path));
2305
NDR_CHECK(ndr_push_lsa_String(ndr, NDR_BUFFERS, &r->description));
2306
NDR_CHECK(ndr_push_lsa_String(ndr, NDR_BUFFERS, &r->workstations));
2307
NDR_CHECK(ndr_push_samr_LogonHours(ndr, NDR_BUFFERS, &r->logon_hours));
2309
return NDR_ERR_SUCCESS;
2312
static enum ndr_err_code ndr_pull_samr_UserInfo5(struct ndr_pull *ndr, int ndr_flags, struct samr_UserInfo5 *r)
2314
if (ndr_flags & NDR_SCALARS) {
2315
NDR_CHECK(ndr_pull_align(ndr, 5));
2316
NDR_CHECK(ndr_pull_lsa_String(ndr, NDR_SCALARS, &r->account_name));
2317
NDR_CHECK(ndr_pull_lsa_String(ndr, NDR_SCALARS, &r->full_name));
2318
NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->rid));
2319
NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->primary_gid));
2320
NDR_CHECK(ndr_pull_lsa_String(ndr, NDR_SCALARS, &r->home_directory));
2321
NDR_CHECK(ndr_pull_lsa_String(ndr, NDR_SCALARS, &r->home_drive));
2322
NDR_CHECK(ndr_pull_lsa_String(ndr, NDR_SCALARS, &r->logon_script));
2323
NDR_CHECK(ndr_pull_lsa_String(ndr, NDR_SCALARS, &r->profile_path));
2324
NDR_CHECK(ndr_pull_lsa_String(ndr, NDR_SCALARS, &r->description));
2325
NDR_CHECK(ndr_pull_lsa_String(ndr, NDR_SCALARS, &r->workstations));
2326
NDR_CHECK(ndr_pull_NTTIME(ndr, NDR_SCALARS, &r->last_logon));
2327
NDR_CHECK(ndr_pull_NTTIME(ndr, NDR_SCALARS, &r->last_logoff));
2328
NDR_CHECK(ndr_pull_samr_LogonHours(ndr, NDR_SCALARS, &r->logon_hours));
2329
NDR_CHECK(ndr_pull_uint16(ndr, NDR_SCALARS, &r->bad_password_count));
2330
NDR_CHECK(ndr_pull_uint16(ndr, NDR_SCALARS, &r->logon_count));
2331
NDR_CHECK(ndr_pull_NTTIME(ndr, NDR_SCALARS, &r->last_password_change));
2332
NDR_CHECK(ndr_pull_NTTIME(ndr, NDR_SCALARS, &r->acct_expiry));
2333
NDR_CHECK(ndr_pull_samr_AcctFlags(ndr, NDR_SCALARS, &r->acct_flags));
2334
NDR_CHECK(ndr_pull_trailer_align(ndr, 5));
2336
if (ndr_flags & NDR_BUFFERS) {
2337
NDR_CHECK(ndr_pull_lsa_String(ndr, NDR_BUFFERS, &r->account_name));
2338
NDR_CHECK(ndr_pull_lsa_String(ndr, NDR_BUFFERS, &r->full_name));
2339
NDR_CHECK(ndr_pull_lsa_String(ndr, NDR_BUFFERS, &r->home_directory));
2340
NDR_CHECK(ndr_pull_lsa_String(ndr, NDR_BUFFERS, &r->home_drive));
2341
NDR_CHECK(ndr_pull_lsa_String(ndr, NDR_BUFFERS, &r->logon_script));
2342
NDR_CHECK(ndr_pull_lsa_String(ndr, NDR_BUFFERS, &r->profile_path));
2343
NDR_CHECK(ndr_pull_lsa_String(ndr, NDR_BUFFERS, &r->description));
2344
NDR_CHECK(ndr_pull_lsa_String(ndr, NDR_BUFFERS, &r->workstations));
2345
NDR_CHECK(ndr_pull_samr_LogonHours(ndr, NDR_BUFFERS, &r->logon_hours));
2347
return NDR_ERR_SUCCESS;
2350
_PUBLIC_ void ndr_print_samr_UserInfo5(struct ndr_print *ndr, const char *name, const struct samr_UserInfo5 *r)
2352
ndr_print_struct(ndr, name, "samr_UserInfo5");
2353
if (r == NULL) { ndr_print_null(ndr); return; }
2355
ndr_print_lsa_String(ndr, "account_name", &r->account_name);
2356
ndr_print_lsa_String(ndr, "full_name", &r->full_name);
2357
ndr_print_uint32(ndr, "rid", r->rid);
2358
ndr_print_uint32(ndr, "primary_gid", r->primary_gid);
2359
ndr_print_lsa_String(ndr, "home_directory", &r->home_directory);
2360
ndr_print_lsa_String(ndr, "home_drive", &r->home_drive);
2361
ndr_print_lsa_String(ndr, "logon_script", &r->logon_script);
2362
ndr_print_lsa_String(ndr, "profile_path", &r->profile_path);
2363
ndr_print_lsa_String(ndr, "description", &r->description);
2364
ndr_print_lsa_String(ndr, "workstations", &r->workstations);
2365
ndr_print_NTTIME(ndr, "last_logon", r->last_logon);
2366
ndr_print_NTTIME(ndr, "last_logoff", r->last_logoff);
2367
ndr_print_samr_LogonHours(ndr, "logon_hours", &r->logon_hours);
2368
ndr_print_uint16(ndr, "bad_password_count", r->bad_password_count);
2369
ndr_print_uint16(ndr, "logon_count", r->logon_count);
2370
ndr_print_NTTIME(ndr, "last_password_change", r->last_password_change);
2371
ndr_print_NTTIME(ndr, "acct_expiry", r->acct_expiry);
2372
ndr_print_samr_AcctFlags(ndr, "acct_flags", r->acct_flags);
2376
static enum ndr_err_code ndr_push_samr_UserInfo6(struct ndr_push *ndr, int ndr_flags, const struct samr_UserInfo6 *r)
2378
if (ndr_flags & NDR_SCALARS) {
2379
NDR_CHECK(ndr_push_align(ndr, 5));
2380
NDR_CHECK(ndr_push_lsa_String(ndr, NDR_SCALARS, &r->account_name));
2381
NDR_CHECK(ndr_push_lsa_String(ndr, NDR_SCALARS, &r->full_name));
2382
NDR_CHECK(ndr_push_trailer_align(ndr, 5));
2384
if (ndr_flags & NDR_BUFFERS) {
2385
NDR_CHECK(ndr_push_lsa_String(ndr, NDR_BUFFERS, &r->account_name));
2386
NDR_CHECK(ndr_push_lsa_String(ndr, NDR_BUFFERS, &r->full_name));
2388
return NDR_ERR_SUCCESS;
2391
static enum ndr_err_code ndr_pull_samr_UserInfo6(struct ndr_pull *ndr, int ndr_flags, struct samr_UserInfo6 *r)
2393
if (ndr_flags & NDR_SCALARS) {
2394
NDR_CHECK(ndr_pull_align(ndr, 5));
2395
NDR_CHECK(ndr_pull_lsa_String(ndr, NDR_SCALARS, &r->account_name));
2396
NDR_CHECK(ndr_pull_lsa_String(ndr, NDR_SCALARS, &r->full_name));
2397
NDR_CHECK(ndr_pull_trailer_align(ndr, 5));
2399
if (ndr_flags & NDR_BUFFERS) {
2400
NDR_CHECK(ndr_pull_lsa_String(ndr, NDR_BUFFERS, &r->account_name));
2401
NDR_CHECK(ndr_pull_lsa_String(ndr, NDR_BUFFERS, &r->full_name));
2403
return NDR_ERR_SUCCESS;
2406
_PUBLIC_ void ndr_print_samr_UserInfo6(struct ndr_print *ndr, const char *name, const struct samr_UserInfo6 *r)
2408
ndr_print_struct(ndr, name, "samr_UserInfo6");
2409
if (r == NULL) { ndr_print_null(ndr); return; }
2411
ndr_print_lsa_String(ndr, "account_name", &r->account_name);
2412
ndr_print_lsa_String(ndr, "full_name", &r->full_name);
2416
static enum ndr_err_code ndr_push_samr_UserInfo7(struct ndr_push *ndr, int ndr_flags, const struct samr_UserInfo7 *r)
2418
if (ndr_flags & NDR_SCALARS) {
2419
NDR_CHECK(ndr_push_align(ndr, 5));
2420
NDR_CHECK(ndr_push_lsa_String(ndr, NDR_SCALARS, &r->account_name));
2421
NDR_CHECK(ndr_push_trailer_align(ndr, 5));
2423
if (ndr_flags & NDR_BUFFERS) {
2424
NDR_CHECK(ndr_push_lsa_String(ndr, NDR_BUFFERS, &r->account_name));
2426
return NDR_ERR_SUCCESS;
2429
static enum ndr_err_code ndr_pull_samr_UserInfo7(struct ndr_pull *ndr, int ndr_flags, struct samr_UserInfo7 *r)
2431
if (ndr_flags & NDR_SCALARS) {
2432
NDR_CHECK(ndr_pull_align(ndr, 5));
2433
NDR_CHECK(ndr_pull_lsa_String(ndr, NDR_SCALARS, &r->account_name));
2434
NDR_CHECK(ndr_pull_trailer_align(ndr, 5));
2436
if (ndr_flags & NDR_BUFFERS) {
2437
NDR_CHECK(ndr_pull_lsa_String(ndr, NDR_BUFFERS, &r->account_name));
2439
return NDR_ERR_SUCCESS;
2442
_PUBLIC_ void ndr_print_samr_UserInfo7(struct ndr_print *ndr, const char *name, const struct samr_UserInfo7 *r)
2444
ndr_print_struct(ndr, name, "samr_UserInfo7");
2445
if (r == NULL) { ndr_print_null(ndr); return; }
2447
ndr_print_lsa_String(ndr, "account_name", &r->account_name);
2451
static enum ndr_err_code ndr_push_samr_UserInfo8(struct ndr_push *ndr, int ndr_flags, const struct samr_UserInfo8 *r)
2453
if (ndr_flags & NDR_SCALARS) {
2454
NDR_CHECK(ndr_push_align(ndr, 5));
2455
NDR_CHECK(ndr_push_lsa_String(ndr, NDR_SCALARS, &r->full_name));
2456
NDR_CHECK(ndr_push_trailer_align(ndr, 5));
2458
if (ndr_flags & NDR_BUFFERS) {
2459
NDR_CHECK(ndr_push_lsa_String(ndr, NDR_BUFFERS, &r->full_name));
2461
return NDR_ERR_SUCCESS;
2464
static enum ndr_err_code ndr_pull_samr_UserInfo8(struct ndr_pull *ndr, int ndr_flags, struct samr_UserInfo8 *r)
2466
if (ndr_flags & NDR_SCALARS) {
2467
NDR_CHECK(ndr_pull_align(ndr, 5));
2468
NDR_CHECK(ndr_pull_lsa_String(ndr, NDR_SCALARS, &r->full_name));
2469
NDR_CHECK(ndr_pull_trailer_align(ndr, 5));
2471
if (ndr_flags & NDR_BUFFERS) {
2472
NDR_CHECK(ndr_pull_lsa_String(ndr, NDR_BUFFERS, &r->full_name));
2474
return NDR_ERR_SUCCESS;
2477
_PUBLIC_ void ndr_print_samr_UserInfo8(struct ndr_print *ndr, const char *name, const struct samr_UserInfo8 *r)
2479
ndr_print_struct(ndr, name, "samr_UserInfo8");
2480
if (r == NULL) { ndr_print_null(ndr); return; }
2482
ndr_print_lsa_String(ndr, "full_name", &r->full_name);
2486
static enum ndr_err_code ndr_push_samr_UserInfo9(struct ndr_push *ndr, int ndr_flags, const struct samr_UserInfo9 *r)
2488
if (ndr_flags & NDR_SCALARS) {
2489
NDR_CHECK(ndr_push_align(ndr, 4));
2490
NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->primary_gid));
2491
NDR_CHECK(ndr_push_trailer_align(ndr, 4));
2493
if (ndr_flags & NDR_BUFFERS) {
2495
return NDR_ERR_SUCCESS;
2498
static enum ndr_err_code ndr_pull_samr_UserInfo9(struct ndr_pull *ndr, int ndr_flags, struct samr_UserInfo9 *r)
2500
if (ndr_flags & NDR_SCALARS) {
2501
NDR_CHECK(ndr_pull_align(ndr, 4));
2502
NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->primary_gid));
2503
NDR_CHECK(ndr_pull_trailer_align(ndr, 4));
2505
if (ndr_flags & NDR_BUFFERS) {
2507
return NDR_ERR_SUCCESS;
2510
_PUBLIC_ void ndr_print_samr_UserInfo9(struct ndr_print *ndr, const char *name, const struct samr_UserInfo9 *r)
2512
ndr_print_struct(ndr, name, "samr_UserInfo9");
2513
if (r == NULL) { ndr_print_null(ndr); return; }
2515
ndr_print_uint32(ndr, "primary_gid", r->primary_gid);
2519
static enum ndr_err_code ndr_push_samr_UserInfo10(struct ndr_push *ndr, int ndr_flags, const struct samr_UserInfo10 *r)
2521
if (ndr_flags & NDR_SCALARS) {
2522
NDR_CHECK(ndr_push_align(ndr, 5));
2523
NDR_CHECK(ndr_push_lsa_String(ndr, NDR_SCALARS, &r->home_directory));
2524
NDR_CHECK(ndr_push_lsa_String(ndr, NDR_SCALARS, &r->home_drive));
2525
NDR_CHECK(ndr_push_trailer_align(ndr, 5));
2527
if (ndr_flags & NDR_BUFFERS) {
2528
NDR_CHECK(ndr_push_lsa_String(ndr, NDR_BUFFERS, &r->home_directory));
2529
NDR_CHECK(ndr_push_lsa_String(ndr, NDR_BUFFERS, &r->home_drive));
2531
return NDR_ERR_SUCCESS;
2534
static enum ndr_err_code ndr_pull_samr_UserInfo10(struct ndr_pull *ndr, int ndr_flags, struct samr_UserInfo10 *r)
2536
if (ndr_flags & NDR_SCALARS) {
2537
NDR_CHECK(ndr_pull_align(ndr, 5));
2538
NDR_CHECK(ndr_pull_lsa_String(ndr, NDR_SCALARS, &r->home_directory));
2539
NDR_CHECK(ndr_pull_lsa_String(ndr, NDR_SCALARS, &r->home_drive));
2540
NDR_CHECK(ndr_pull_trailer_align(ndr, 5));
2542
if (ndr_flags & NDR_BUFFERS) {
2543
NDR_CHECK(ndr_pull_lsa_String(ndr, NDR_BUFFERS, &r->home_directory));
2544
NDR_CHECK(ndr_pull_lsa_String(ndr, NDR_BUFFERS, &r->home_drive));
2546
return NDR_ERR_SUCCESS;
2549
_PUBLIC_ void ndr_print_samr_UserInfo10(struct ndr_print *ndr, const char *name, const struct samr_UserInfo10 *r)
2551
ndr_print_struct(ndr, name, "samr_UserInfo10");
2552
if (r == NULL) { ndr_print_null(ndr); return; }
2554
ndr_print_lsa_String(ndr, "home_directory", &r->home_directory);
2555
ndr_print_lsa_String(ndr, "home_drive", &r->home_drive);
2559
static enum ndr_err_code ndr_push_samr_UserInfo11(struct ndr_push *ndr, int ndr_flags, const struct samr_UserInfo11 *r)
2561
if (ndr_flags & NDR_SCALARS) {
2562
NDR_CHECK(ndr_push_align(ndr, 5));
2563
NDR_CHECK(ndr_push_lsa_String(ndr, NDR_SCALARS, &r->logon_script));
2564
NDR_CHECK(ndr_push_trailer_align(ndr, 5));
2566
if (ndr_flags & NDR_BUFFERS) {
2567
NDR_CHECK(ndr_push_lsa_String(ndr, NDR_BUFFERS, &r->logon_script));
2569
return NDR_ERR_SUCCESS;
2572
static enum ndr_err_code ndr_pull_samr_UserInfo11(struct ndr_pull *ndr, int ndr_flags, struct samr_UserInfo11 *r)
2574
if (ndr_flags & NDR_SCALARS) {
2575
NDR_CHECK(ndr_pull_align(ndr, 5));
2576
NDR_CHECK(ndr_pull_lsa_String(ndr, NDR_SCALARS, &r->logon_script));
2577
NDR_CHECK(ndr_pull_trailer_align(ndr, 5));
2579
if (ndr_flags & NDR_BUFFERS) {
2580
NDR_CHECK(ndr_pull_lsa_String(ndr, NDR_BUFFERS, &r->logon_script));
2582
return NDR_ERR_SUCCESS;
2585
_PUBLIC_ void ndr_print_samr_UserInfo11(struct ndr_print *ndr, const char *name, const struct samr_UserInfo11 *r)
2587
ndr_print_struct(ndr, name, "samr_UserInfo11");
2588
if (r == NULL) { ndr_print_null(ndr); return; }
2590
ndr_print_lsa_String(ndr, "logon_script", &r->logon_script);
2594
static enum ndr_err_code ndr_push_samr_UserInfo12(struct ndr_push *ndr, int ndr_flags, const struct samr_UserInfo12 *r)
2596
if (ndr_flags & NDR_SCALARS) {
2597
NDR_CHECK(ndr_push_align(ndr, 5));
2598
NDR_CHECK(ndr_push_lsa_String(ndr, NDR_SCALARS, &r->profile_path));
2599
NDR_CHECK(ndr_push_trailer_align(ndr, 5));
2601
if (ndr_flags & NDR_BUFFERS) {
2602
NDR_CHECK(ndr_push_lsa_String(ndr, NDR_BUFFERS, &r->profile_path));
2604
return NDR_ERR_SUCCESS;
2607
static enum ndr_err_code ndr_pull_samr_UserInfo12(struct ndr_pull *ndr, int ndr_flags, struct samr_UserInfo12 *r)
2609
if (ndr_flags & NDR_SCALARS) {
2610
NDR_CHECK(ndr_pull_align(ndr, 5));
2611
NDR_CHECK(ndr_pull_lsa_String(ndr, NDR_SCALARS, &r->profile_path));
2612
NDR_CHECK(ndr_pull_trailer_align(ndr, 5));
2614
if (ndr_flags & NDR_BUFFERS) {
2615
NDR_CHECK(ndr_pull_lsa_String(ndr, NDR_BUFFERS, &r->profile_path));
2617
return NDR_ERR_SUCCESS;
2620
_PUBLIC_ void ndr_print_samr_UserInfo12(struct ndr_print *ndr, const char *name, const struct samr_UserInfo12 *r)
2622
ndr_print_struct(ndr, name, "samr_UserInfo12");
2623
if (r == NULL) { ndr_print_null(ndr); return; }
2625
ndr_print_lsa_String(ndr, "profile_path", &r->profile_path);
2629
static enum ndr_err_code ndr_push_samr_UserInfo13(struct ndr_push *ndr, int ndr_flags, const struct samr_UserInfo13 *r)
2631
if (ndr_flags & NDR_SCALARS) {
2632
NDR_CHECK(ndr_push_align(ndr, 5));
2633
NDR_CHECK(ndr_push_lsa_String(ndr, NDR_SCALARS, &r->description));
2634
NDR_CHECK(ndr_push_trailer_align(ndr, 5));
2636
if (ndr_flags & NDR_BUFFERS) {
2637
NDR_CHECK(ndr_push_lsa_String(ndr, NDR_BUFFERS, &r->description));
2639
return NDR_ERR_SUCCESS;
2642
static enum ndr_err_code ndr_pull_samr_UserInfo13(struct ndr_pull *ndr, int ndr_flags, struct samr_UserInfo13 *r)
2644
if (ndr_flags & NDR_SCALARS) {
2645
NDR_CHECK(ndr_pull_align(ndr, 5));
2646
NDR_CHECK(ndr_pull_lsa_String(ndr, NDR_SCALARS, &r->description));
2647
NDR_CHECK(ndr_pull_trailer_align(ndr, 5));
2649
if (ndr_flags & NDR_BUFFERS) {
2650
NDR_CHECK(ndr_pull_lsa_String(ndr, NDR_BUFFERS, &r->description));
2652
return NDR_ERR_SUCCESS;
2655
_PUBLIC_ void ndr_print_samr_UserInfo13(struct ndr_print *ndr, const char *name, const struct samr_UserInfo13 *r)
2657
ndr_print_struct(ndr, name, "samr_UserInfo13");
2658
if (r == NULL) { ndr_print_null(ndr); return; }
2660
ndr_print_lsa_String(ndr, "description", &r->description);
2664
static enum ndr_err_code ndr_push_samr_UserInfo14(struct ndr_push *ndr, int ndr_flags, const struct samr_UserInfo14 *r)
2666
if (ndr_flags & NDR_SCALARS) {
2667
NDR_CHECK(ndr_push_align(ndr, 5));
2668
NDR_CHECK(ndr_push_lsa_String(ndr, NDR_SCALARS, &r->workstations));
2669
NDR_CHECK(ndr_push_trailer_align(ndr, 5));
2671
if (ndr_flags & NDR_BUFFERS) {
2672
NDR_CHECK(ndr_push_lsa_String(ndr, NDR_BUFFERS, &r->workstations));
2674
return NDR_ERR_SUCCESS;
2677
static enum ndr_err_code ndr_pull_samr_UserInfo14(struct ndr_pull *ndr, int ndr_flags, struct samr_UserInfo14 *r)
2679
if (ndr_flags & NDR_SCALARS) {
2680
NDR_CHECK(ndr_pull_align(ndr, 5));
2681
NDR_CHECK(ndr_pull_lsa_String(ndr, NDR_SCALARS, &r->workstations));
2682
NDR_CHECK(ndr_pull_trailer_align(ndr, 5));
2684
if (ndr_flags & NDR_BUFFERS) {
2685
NDR_CHECK(ndr_pull_lsa_String(ndr, NDR_BUFFERS, &r->workstations));
2687
return NDR_ERR_SUCCESS;
2690
_PUBLIC_ void ndr_print_samr_UserInfo14(struct ndr_print *ndr, const char *name, const struct samr_UserInfo14 *r)
2692
ndr_print_struct(ndr, name, "samr_UserInfo14");
2693
if (r == NULL) { ndr_print_null(ndr); return; }
2695
ndr_print_lsa_String(ndr, "workstations", &r->workstations);
2699
static enum ndr_err_code ndr_push_samr_UserInfo16(struct ndr_push *ndr, int ndr_flags, const struct samr_UserInfo16 *r)
2701
if (ndr_flags & NDR_SCALARS) {
2702
NDR_CHECK(ndr_push_align(ndr, 4));
2703
NDR_CHECK(ndr_push_samr_AcctFlags(ndr, NDR_SCALARS, r->acct_flags));
2704
NDR_CHECK(ndr_push_trailer_align(ndr, 4));
2706
if (ndr_flags & NDR_BUFFERS) {
2708
return NDR_ERR_SUCCESS;
2711
static enum ndr_err_code ndr_pull_samr_UserInfo16(struct ndr_pull *ndr, int ndr_flags, struct samr_UserInfo16 *r)
2713
if (ndr_flags & NDR_SCALARS) {
2714
NDR_CHECK(ndr_pull_align(ndr, 4));
2715
NDR_CHECK(ndr_pull_samr_AcctFlags(ndr, NDR_SCALARS, &r->acct_flags));
2716
NDR_CHECK(ndr_pull_trailer_align(ndr, 4));
2718
if (ndr_flags & NDR_BUFFERS) {
2720
return NDR_ERR_SUCCESS;
2723
_PUBLIC_ void ndr_print_samr_UserInfo16(struct ndr_print *ndr, const char *name, const struct samr_UserInfo16 *r)
2725
ndr_print_struct(ndr, name, "samr_UserInfo16");
2726
if (r == NULL) { ndr_print_null(ndr); return; }
2728
ndr_print_samr_AcctFlags(ndr, "acct_flags", r->acct_flags);
2732
static enum ndr_err_code ndr_push_samr_UserInfo17(struct ndr_push *ndr, int ndr_flags, const struct samr_UserInfo17 *r)
2734
if (ndr_flags & NDR_SCALARS) {
2735
NDR_CHECK(ndr_push_align(ndr, 4));
2736
NDR_CHECK(ndr_push_NTTIME(ndr, NDR_SCALARS, r->acct_expiry));
2737
NDR_CHECK(ndr_push_trailer_align(ndr, 4));
2739
if (ndr_flags & NDR_BUFFERS) {
2741
return NDR_ERR_SUCCESS;
2744
static enum ndr_err_code ndr_pull_samr_UserInfo17(struct ndr_pull *ndr, int ndr_flags, struct samr_UserInfo17 *r)
2746
if (ndr_flags & NDR_SCALARS) {
2747
NDR_CHECK(ndr_pull_align(ndr, 4));
2748
NDR_CHECK(ndr_pull_NTTIME(ndr, NDR_SCALARS, &r->acct_expiry));
2749
NDR_CHECK(ndr_pull_trailer_align(ndr, 4));
2751
if (ndr_flags & NDR_BUFFERS) {
2753
return NDR_ERR_SUCCESS;
2756
_PUBLIC_ void ndr_print_samr_UserInfo17(struct ndr_print *ndr, const char *name, const struct samr_UserInfo17 *r)
2758
ndr_print_struct(ndr, name, "samr_UserInfo17");
2759
if (r == NULL) { ndr_print_null(ndr); return; }
2761
ndr_print_NTTIME(ndr, "acct_expiry", r->acct_expiry);
2765
_PUBLIC_ enum ndr_err_code ndr_push_samr_Password(struct ndr_push *ndr, int ndr_flags, const struct samr_Password *r)
2768
uint32_t _flags_save_STRUCT = ndr->flags;
2769
ndr_set_flags(&ndr->flags, LIBNDR_PRINT_ARRAY_HEX);
2770
if (ndr_flags & NDR_SCALARS) {
2771
NDR_CHECK(ndr_push_align(ndr, 1));
2772
NDR_CHECK(ndr_push_array_uint8(ndr, NDR_SCALARS, r->hash, 16));
2773
NDR_CHECK(ndr_push_trailer_align(ndr, 1));
2775
if (ndr_flags & NDR_BUFFERS) {
2777
ndr->flags = _flags_save_STRUCT;
2779
return NDR_ERR_SUCCESS;
2782
_PUBLIC_ enum ndr_err_code ndr_pull_samr_Password(struct ndr_pull *ndr, int ndr_flags, struct samr_Password *r)
2785
uint32_t _flags_save_STRUCT = ndr->flags;
2786
ndr_set_flags(&ndr->flags, LIBNDR_PRINT_ARRAY_HEX);
2787
if (ndr_flags & NDR_SCALARS) {
2788
NDR_CHECK(ndr_pull_align(ndr, 1));
2789
NDR_CHECK(ndr_pull_array_uint8(ndr, NDR_SCALARS, r->hash, 16));
2790
NDR_CHECK(ndr_pull_trailer_align(ndr, 1));
2792
if (ndr_flags & NDR_BUFFERS) {
2794
ndr->flags = _flags_save_STRUCT;
2796
return NDR_ERR_SUCCESS;
2799
_PUBLIC_ void ndr_print_samr_Password(struct ndr_print *ndr, const char *name, const struct samr_Password *r)
2801
ndr_print_struct(ndr, name, "samr_Password");
2802
if (r == NULL) { ndr_print_null(ndr); return; }
2804
uint32_t _flags_save_STRUCT = ndr->flags;
2805
ndr_set_flags(&ndr->flags, LIBNDR_PRINT_ARRAY_HEX);
2807
ndr_print_array_uint8(ndr, "hash", r->hash, 16);
2809
ndr->flags = _flags_save_STRUCT;
2813
static enum ndr_err_code ndr_push_samr_UserInfo18(struct ndr_push *ndr, int ndr_flags, const struct samr_UserInfo18 *r)
2815
if (ndr_flags & NDR_SCALARS) {
2816
NDR_CHECK(ndr_push_align(ndr, 1));
2817
NDR_CHECK(ndr_push_samr_Password(ndr, NDR_SCALARS, &r->nt_pwd));
2818
NDR_CHECK(ndr_push_samr_Password(ndr, NDR_SCALARS, &r->lm_pwd));
2819
NDR_CHECK(ndr_push_uint8(ndr, NDR_SCALARS, r->nt_pwd_active));
2820
NDR_CHECK(ndr_push_uint8(ndr, NDR_SCALARS, r->lm_pwd_active));
2821
NDR_CHECK(ndr_push_uint8(ndr, NDR_SCALARS, r->password_expired));
2822
NDR_CHECK(ndr_push_trailer_align(ndr, 1));
2824
if (ndr_flags & NDR_BUFFERS) {
2826
return NDR_ERR_SUCCESS;
2829
static enum ndr_err_code ndr_pull_samr_UserInfo18(struct ndr_pull *ndr, int ndr_flags, struct samr_UserInfo18 *r)
2831
if (ndr_flags & NDR_SCALARS) {
2832
NDR_CHECK(ndr_pull_align(ndr, 1));
2833
NDR_CHECK(ndr_pull_samr_Password(ndr, NDR_SCALARS, &r->nt_pwd));
2834
NDR_CHECK(ndr_pull_samr_Password(ndr, NDR_SCALARS, &r->lm_pwd));
2835
NDR_CHECK(ndr_pull_uint8(ndr, NDR_SCALARS, &r->nt_pwd_active));
2836
NDR_CHECK(ndr_pull_uint8(ndr, NDR_SCALARS, &r->lm_pwd_active));
2837
NDR_CHECK(ndr_pull_uint8(ndr, NDR_SCALARS, &r->password_expired));
2838
NDR_CHECK(ndr_pull_trailer_align(ndr, 1));
2840
if (ndr_flags & NDR_BUFFERS) {
2842
return NDR_ERR_SUCCESS;
2845
_PUBLIC_ void ndr_print_samr_UserInfo18(struct ndr_print *ndr, const char *name, const struct samr_UserInfo18 *r)
2847
ndr_print_struct(ndr, name, "samr_UserInfo18");
2848
if (r == NULL) { ndr_print_null(ndr); return; }
2850
ndr_print_samr_Password(ndr, "nt_pwd", &r->nt_pwd);
2851
ndr_print_samr_Password(ndr, "lm_pwd", &r->lm_pwd);
2852
ndr_print_uint8(ndr, "nt_pwd_active", r->nt_pwd_active);
2853
ndr_print_uint8(ndr, "lm_pwd_active", r->lm_pwd_active);
2854
ndr_print_uint8(ndr, "password_expired", r->password_expired);
2858
static enum ndr_err_code ndr_push_samr_UserInfo20(struct ndr_push *ndr, int ndr_flags, const struct samr_UserInfo20 *r)
2860
if (ndr_flags & NDR_SCALARS) {
2861
NDR_CHECK(ndr_push_align(ndr, 5));
2862
NDR_CHECK(ndr_push_lsa_BinaryString(ndr, NDR_SCALARS, &r->parameters));
2863
NDR_CHECK(ndr_push_trailer_align(ndr, 5));
2865
if (ndr_flags & NDR_BUFFERS) {
2866
NDR_CHECK(ndr_push_lsa_BinaryString(ndr, NDR_BUFFERS, &r->parameters));
2868
return NDR_ERR_SUCCESS;
2871
static enum ndr_err_code ndr_pull_samr_UserInfo20(struct ndr_pull *ndr, int ndr_flags, struct samr_UserInfo20 *r)
2873
if (ndr_flags & NDR_SCALARS) {
2874
NDR_CHECK(ndr_pull_align(ndr, 5));
2875
NDR_CHECK(ndr_pull_lsa_BinaryString(ndr, NDR_SCALARS, &r->parameters));
2876
NDR_CHECK(ndr_pull_trailer_align(ndr, 5));
2878
if (ndr_flags & NDR_BUFFERS) {
2879
NDR_CHECK(ndr_pull_lsa_BinaryString(ndr, NDR_BUFFERS, &r->parameters));
2881
return NDR_ERR_SUCCESS;
2884
_PUBLIC_ void ndr_print_samr_UserInfo20(struct ndr_print *ndr, const char *name, const struct samr_UserInfo20 *r)
2886
ndr_print_struct(ndr, name, "samr_UserInfo20");
2887
if (r == NULL) { ndr_print_null(ndr); return; }
2889
ndr_print_lsa_BinaryString(ndr, "parameters", &r->parameters);
2893
static enum ndr_err_code ndr_push_samr_FieldsPresent(struct ndr_push *ndr, int ndr_flags, uint32_t r)
2895
NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r));
2896
return NDR_ERR_SUCCESS;
2899
static enum ndr_err_code ndr_pull_samr_FieldsPresent(struct ndr_pull *ndr, int ndr_flags, uint32_t *r)
2902
NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &v));
2904
return NDR_ERR_SUCCESS;
2907
_PUBLIC_ void ndr_print_samr_FieldsPresent(struct ndr_print *ndr, const char *name, uint32_t r)
2909
ndr_print_uint32(ndr, name, r);
2911
ndr_print_bitmap_flag(ndr, sizeof(uint32_t), "SAMR_FIELD_ACCOUNT_NAME", SAMR_FIELD_ACCOUNT_NAME, r);
2912
ndr_print_bitmap_flag(ndr, sizeof(uint32_t), "SAMR_FIELD_FULL_NAME", SAMR_FIELD_FULL_NAME, r);
2913
ndr_print_bitmap_flag(ndr, sizeof(uint32_t), "SAMR_FIELD_RID", SAMR_FIELD_RID, r);
2914
ndr_print_bitmap_flag(ndr, sizeof(uint32_t), "SAMR_FIELD_PRIMARY_GID", SAMR_FIELD_PRIMARY_GID, r);
2915
ndr_print_bitmap_flag(ndr, sizeof(uint32_t), "SAMR_FIELD_DESCRIPTION", SAMR_FIELD_DESCRIPTION, r);
2916
ndr_print_bitmap_flag(ndr, sizeof(uint32_t), "SAMR_FIELD_COMMENT", SAMR_FIELD_COMMENT, r);
2917
ndr_print_bitmap_flag(ndr, sizeof(uint32_t), "SAMR_FIELD_HOME_DIRECTORY", SAMR_FIELD_HOME_DIRECTORY, r);
2918
ndr_print_bitmap_flag(ndr, sizeof(uint32_t), "SAMR_FIELD_HOME_DRIVE", SAMR_FIELD_HOME_DRIVE, r);
2919
ndr_print_bitmap_flag(ndr, sizeof(uint32_t), "SAMR_FIELD_LOGON_SCRIPT", SAMR_FIELD_LOGON_SCRIPT, r);
2920
ndr_print_bitmap_flag(ndr, sizeof(uint32_t), "SAMR_FIELD_PROFILE_PATH", SAMR_FIELD_PROFILE_PATH, r);
2921
ndr_print_bitmap_flag(ndr, sizeof(uint32_t), "SAMR_FIELD_WORKSTATIONS", SAMR_FIELD_WORKSTATIONS, r);
2922
ndr_print_bitmap_flag(ndr, sizeof(uint32_t), "SAMR_FIELD_LAST_LOGON", SAMR_FIELD_LAST_LOGON, r);
2923
ndr_print_bitmap_flag(ndr, sizeof(uint32_t), "SAMR_FIELD_LAST_LOGOFF", SAMR_FIELD_LAST_LOGOFF, r);
2924
ndr_print_bitmap_flag(ndr, sizeof(uint32_t), "SAMR_FIELD_LOGON_HOURS", SAMR_FIELD_LOGON_HOURS, r);
2925
ndr_print_bitmap_flag(ndr, sizeof(uint32_t), "SAMR_FIELD_BAD_PWD_COUNT", SAMR_FIELD_BAD_PWD_COUNT, r);
2926
ndr_print_bitmap_flag(ndr, sizeof(uint32_t), "SAMR_FIELD_NUM_LOGONS", SAMR_FIELD_NUM_LOGONS, r);
2927
ndr_print_bitmap_flag(ndr, sizeof(uint32_t), "SAMR_FIELD_ALLOW_PWD_CHANGE", SAMR_FIELD_ALLOW_PWD_CHANGE, r);
2928
ndr_print_bitmap_flag(ndr, sizeof(uint32_t), "SAMR_FIELD_FORCE_PWD_CHANGE", SAMR_FIELD_FORCE_PWD_CHANGE, r);
2929
ndr_print_bitmap_flag(ndr, sizeof(uint32_t), "SAMR_FIELD_LAST_PWD_CHANGE", SAMR_FIELD_LAST_PWD_CHANGE, r);
2930
ndr_print_bitmap_flag(ndr, sizeof(uint32_t), "SAMR_FIELD_ACCT_EXPIRY", SAMR_FIELD_ACCT_EXPIRY, r);
2931
ndr_print_bitmap_flag(ndr, sizeof(uint32_t), "SAMR_FIELD_ACCT_FLAGS", SAMR_FIELD_ACCT_FLAGS, r);
2932
ndr_print_bitmap_flag(ndr, sizeof(uint32_t), "SAMR_FIELD_PARAMETERS", SAMR_FIELD_PARAMETERS, r);
2933
ndr_print_bitmap_flag(ndr, sizeof(uint32_t), "SAMR_FIELD_COUNTRY_CODE", SAMR_FIELD_COUNTRY_CODE, r);
2934
ndr_print_bitmap_flag(ndr, sizeof(uint32_t), "SAMR_FIELD_CODE_PAGE", SAMR_FIELD_CODE_PAGE, r);
2935
ndr_print_bitmap_flag(ndr, sizeof(uint32_t), "SAMR_FIELD_NT_PASSWORD_PRESENT", SAMR_FIELD_NT_PASSWORD_PRESENT, r);
2936
ndr_print_bitmap_flag(ndr, sizeof(uint32_t), "SAMR_FIELD_LM_PASSWORD_PRESENT", SAMR_FIELD_LM_PASSWORD_PRESENT, r);
2937
ndr_print_bitmap_flag(ndr, sizeof(uint32_t), "SAMR_FIELD_PRIVATE_DATA", SAMR_FIELD_PRIVATE_DATA, r);
2938
ndr_print_bitmap_flag(ndr, sizeof(uint32_t), "SAMR_FIELD_EXPIRED_FLAG", SAMR_FIELD_EXPIRED_FLAG, r);
2939
ndr_print_bitmap_flag(ndr, sizeof(uint32_t), "SAMR_FIELD_SEC_DESC", SAMR_FIELD_SEC_DESC, r);
2940
ndr_print_bitmap_flag(ndr, sizeof(uint32_t), "SAMR_FIELD_OWF_PWD", SAMR_FIELD_OWF_PWD, r);
2944
static enum ndr_err_code ndr_push_samr_UserInfo21(struct ndr_push *ndr, int ndr_flags, const struct samr_UserInfo21 *r)
2946
if (ndr_flags & NDR_SCALARS) {
2947
NDR_CHECK(ndr_push_align(ndr, 5));
2948
NDR_CHECK(ndr_push_NTTIME(ndr, NDR_SCALARS, r->last_logon));
2949
NDR_CHECK(ndr_push_NTTIME(ndr, NDR_SCALARS, r->last_logoff));
2950
NDR_CHECK(ndr_push_NTTIME(ndr, NDR_SCALARS, r->last_password_change));
2951
NDR_CHECK(ndr_push_NTTIME(ndr, NDR_SCALARS, r->acct_expiry));
2952
NDR_CHECK(ndr_push_NTTIME(ndr, NDR_SCALARS, r->allow_password_change));
2953
NDR_CHECK(ndr_push_NTTIME(ndr, NDR_SCALARS, r->force_password_change));
2954
NDR_CHECK(ndr_push_lsa_String(ndr, NDR_SCALARS, &r->account_name));
2955
NDR_CHECK(ndr_push_lsa_String(ndr, NDR_SCALARS, &r->full_name));
2956
NDR_CHECK(ndr_push_lsa_String(ndr, NDR_SCALARS, &r->home_directory));
2957
NDR_CHECK(ndr_push_lsa_String(ndr, NDR_SCALARS, &r->home_drive));
2958
NDR_CHECK(ndr_push_lsa_String(ndr, NDR_SCALARS, &r->logon_script));
2959
NDR_CHECK(ndr_push_lsa_String(ndr, NDR_SCALARS, &r->profile_path));
2960
NDR_CHECK(ndr_push_lsa_String(ndr, NDR_SCALARS, &r->description));
2961
NDR_CHECK(ndr_push_lsa_String(ndr, NDR_SCALARS, &r->workstations));
2962
NDR_CHECK(ndr_push_lsa_String(ndr, NDR_SCALARS, &r->comment));
2963
NDR_CHECK(ndr_push_lsa_BinaryString(ndr, NDR_SCALARS, &r->parameters));
2964
NDR_CHECK(ndr_push_lsa_BinaryString(ndr, NDR_SCALARS, &r->lm_owf_password));
2965
NDR_CHECK(ndr_push_lsa_BinaryString(ndr, NDR_SCALARS, &r->nt_owf_password));
2966
NDR_CHECK(ndr_push_lsa_String(ndr, NDR_SCALARS, &r->private_data));
2967
NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->buf_count));
2968
NDR_CHECK(ndr_push_unique_ptr(ndr, r->buffer));
2969
NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->rid));
2970
NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->primary_gid));
2971
NDR_CHECK(ndr_push_samr_AcctFlags(ndr, NDR_SCALARS, r->acct_flags));
2972
NDR_CHECK(ndr_push_samr_FieldsPresent(ndr, NDR_SCALARS, r->fields_present));
2973
NDR_CHECK(ndr_push_samr_LogonHours(ndr, NDR_SCALARS, &r->logon_hours));
2974
NDR_CHECK(ndr_push_uint16(ndr, NDR_SCALARS, r->bad_password_count));
2975
NDR_CHECK(ndr_push_uint16(ndr, NDR_SCALARS, r->logon_count));
2976
NDR_CHECK(ndr_push_uint16(ndr, NDR_SCALARS, r->country_code));
2977
NDR_CHECK(ndr_push_uint16(ndr, NDR_SCALARS, r->code_page));
2978
NDR_CHECK(ndr_push_uint8(ndr, NDR_SCALARS, r->lm_password_set));
2979
NDR_CHECK(ndr_push_uint8(ndr, NDR_SCALARS, r->nt_password_set));
2980
NDR_CHECK(ndr_push_uint8(ndr, NDR_SCALARS, r->password_expired));
2981
NDR_CHECK(ndr_push_uint8(ndr, NDR_SCALARS, r->private_data_sensitive));
2982
NDR_CHECK(ndr_push_trailer_align(ndr, 5));
2984
if (ndr_flags & NDR_BUFFERS) {
2985
NDR_CHECK(ndr_push_lsa_String(ndr, NDR_BUFFERS, &r->account_name));
2986
NDR_CHECK(ndr_push_lsa_String(ndr, NDR_BUFFERS, &r->full_name));
2987
NDR_CHECK(ndr_push_lsa_String(ndr, NDR_BUFFERS, &r->home_directory));
2988
NDR_CHECK(ndr_push_lsa_String(ndr, NDR_BUFFERS, &r->home_drive));
2989
NDR_CHECK(ndr_push_lsa_String(ndr, NDR_BUFFERS, &r->logon_script));
2990
NDR_CHECK(ndr_push_lsa_String(ndr, NDR_BUFFERS, &r->profile_path));
2991
NDR_CHECK(ndr_push_lsa_String(ndr, NDR_BUFFERS, &r->description));
2992
NDR_CHECK(ndr_push_lsa_String(ndr, NDR_BUFFERS, &r->workstations));
2993
NDR_CHECK(ndr_push_lsa_String(ndr, NDR_BUFFERS, &r->comment));
2994
NDR_CHECK(ndr_push_lsa_BinaryString(ndr, NDR_BUFFERS, &r->parameters));
2995
NDR_CHECK(ndr_push_lsa_BinaryString(ndr, NDR_BUFFERS, &r->lm_owf_password));
2996
NDR_CHECK(ndr_push_lsa_BinaryString(ndr, NDR_BUFFERS, &r->nt_owf_password));
2997
NDR_CHECK(ndr_push_lsa_String(ndr, NDR_BUFFERS, &r->private_data));
2999
NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, r->buf_count));
3000
NDR_CHECK(ndr_push_array_uint8(ndr, NDR_SCALARS, r->buffer, r->buf_count));
3002
NDR_CHECK(ndr_push_samr_LogonHours(ndr, NDR_BUFFERS, &r->logon_hours));
3004
return NDR_ERR_SUCCESS;
3007
static enum ndr_err_code ndr_pull_samr_UserInfo21(struct ndr_pull *ndr, int ndr_flags, struct samr_UserInfo21 *r)
3009
uint32_t _ptr_buffer;
3010
TALLOC_CTX *_mem_save_buffer_0;
3011
if (ndr_flags & NDR_SCALARS) {
3012
NDR_CHECK(ndr_pull_align(ndr, 5));
3013
NDR_CHECK(ndr_pull_NTTIME(ndr, NDR_SCALARS, &r->last_logon));
3014
NDR_CHECK(ndr_pull_NTTIME(ndr, NDR_SCALARS, &r->last_logoff));
3015
NDR_CHECK(ndr_pull_NTTIME(ndr, NDR_SCALARS, &r->last_password_change));
3016
NDR_CHECK(ndr_pull_NTTIME(ndr, NDR_SCALARS, &r->acct_expiry));
3017
NDR_CHECK(ndr_pull_NTTIME(ndr, NDR_SCALARS, &r->allow_password_change));
3018
NDR_CHECK(ndr_pull_NTTIME(ndr, NDR_SCALARS, &r->force_password_change));
3019
NDR_CHECK(ndr_pull_lsa_String(ndr, NDR_SCALARS, &r->account_name));
3020
NDR_CHECK(ndr_pull_lsa_String(ndr, NDR_SCALARS, &r->full_name));
3021
NDR_CHECK(ndr_pull_lsa_String(ndr, NDR_SCALARS, &r->home_directory));
3022
NDR_CHECK(ndr_pull_lsa_String(ndr, NDR_SCALARS, &r->home_drive));
3023
NDR_CHECK(ndr_pull_lsa_String(ndr, NDR_SCALARS, &r->logon_script));
3024
NDR_CHECK(ndr_pull_lsa_String(ndr, NDR_SCALARS, &r->profile_path));
3025
NDR_CHECK(ndr_pull_lsa_String(ndr, NDR_SCALARS, &r->description));
3026
NDR_CHECK(ndr_pull_lsa_String(ndr, NDR_SCALARS, &r->workstations));
3027
NDR_CHECK(ndr_pull_lsa_String(ndr, NDR_SCALARS, &r->comment));
3028
NDR_CHECK(ndr_pull_lsa_BinaryString(ndr, NDR_SCALARS, &r->parameters));
3029
NDR_CHECK(ndr_pull_lsa_BinaryString(ndr, NDR_SCALARS, &r->lm_owf_password));
3030
NDR_CHECK(ndr_pull_lsa_BinaryString(ndr, NDR_SCALARS, &r->nt_owf_password));
3031
NDR_CHECK(ndr_pull_lsa_String(ndr, NDR_SCALARS, &r->private_data));
3032
NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->buf_count));
3033
NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_buffer));
3035
NDR_PULL_ALLOC(ndr, r->buffer);
3039
NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->rid));
3040
NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->primary_gid));
3041
NDR_CHECK(ndr_pull_samr_AcctFlags(ndr, NDR_SCALARS, &r->acct_flags));
3042
NDR_CHECK(ndr_pull_samr_FieldsPresent(ndr, NDR_SCALARS, &r->fields_present));
3043
NDR_CHECK(ndr_pull_samr_LogonHours(ndr, NDR_SCALARS, &r->logon_hours));
3044
NDR_CHECK(ndr_pull_uint16(ndr, NDR_SCALARS, &r->bad_password_count));
3045
NDR_CHECK(ndr_pull_uint16(ndr, NDR_SCALARS, &r->logon_count));
3046
NDR_CHECK(ndr_pull_uint16(ndr, NDR_SCALARS, &r->country_code));
3047
NDR_CHECK(ndr_pull_uint16(ndr, NDR_SCALARS, &r->code_page));
3048
NDR_CHECK(ndr_pull_uint8(ndr, NDR_SCALARS, &r->lm_password_set));
3049
NDR_CHECK(ndr_pull_uint8(ndr, NDR_SCALARS, &r->nt_password_set));
3050
NDR_CHECK(ndr_pull_uint8(ndr, NDR_SCALARS, &r->password_expired));
3051
NDR_CHECK(ndr_pull_uint8(ndr, NDR_SCALARS, &r->private_data_sensitive));
3052
NDR_CHECK(ndr_pull_trailer_align(ndr, 5));
3054
if (ndr_flags & NDR_BUFFERS) {
3055
NDR_CHECK(ndr_pull_lsa_String(ndr, NDR_BUFFERS, &r->account_name));
3056
NDR_CHECK(ndr_pull_lsa_String(ndr, NDR_BUFFERS, &r->full_name));
3057
NDR_CHECK(ndr_pull_lsa_String(ndr, NDR_BUFFERS, &r->home_directory));
3058
NDR_CHECK(ndr_pull_lsa_String(ndr, NDR_BUFFERS, &r->home_drive));
3059
NDR_CHECK(ndr_pull_lsa_String(ndr, NDR_BUFFERS, &r->logon_script));
3060
NDR_CHECK(ndr_pull_lsa_String(ndr, NDR_BUFFERS, &r->profile_path));
3061
NDR_CHECK(ndr_pull_lsa_String(ndr, NDR_BUFFERS, &r->description));
3062
NDR_CHECK(ndr_pull_lsa_String(ndr, NDR_BUFFERS, &r->workstations));
3063
NDR_CHECK(ndr_pull_lsa_String(ndr, NDR_BUFFERS, &r->comment));
3064
NDR_CHECK(ndr_pull_lsa_BinaryString(ndr, NDR_BUFFERS, &r->parameters));
3065
NDR_CHECK(ndr_pull_lsa_BinaryString(ndr, NDR_BUFFERS, &r->lm_owf_password));
3066
NDR_CHECK(ndr_pull_lsa_BinaryString(ndr, NDR_BUFFERS, &r->nt_owf_password));
3067
NDR_CHECK(ndr_pull_lsa_String(ndr, NDR_BUFFERS, &r->private_data));
3069
_mem_save_buffer_0 = NDR_PULL_GET_MEM_CTX(ndr);
3070
NDR_PULL_SET_MEM_CTX(ndr, r->buffer, 0);
3071
NDR_CHECK(ndr_pull_array_size(ndr, &r->buffer));
3072
NDR_PULL_ALLOC_N(ndr, r->buffer, ndr_get_array_size(ndr, &r->buffer));
3073
NDR_CHECK(ndr_pull_array_uint8(ndr, NDR_SCALARS, r->buffer, ndr_get_array_size(ndr, &r->buffer)));
3074
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_buffer_0, 0);
3076
NDR_CHECK(ndr_pull_samr_LogonHours(ndr, NDR_BUFFERS, &r->logon_hours));
3078
NDR_CHECK(ndr_check_array_size(ndr, (void*)&r->buffer, r->buf_count));
3081
return NDR_ERR_SUCCESS;
3084
_PUBLIC_ void ndr_print_samr_UserInfo21(struct ndr_print *ndr, const char *name, const struct samr_UserInfo21 *r)
3086
ndr_print_struct(ndr, name, "samr_UserInfo21");
3087
if (r == NULL) { ndr_print_null(ndr); return; }
3089
ndr_print_NTTIME(ndr, "last_logon", r->last_logon);
3090
ndr_print_NTTIME(ndr, "last_logoff", r->last_logoff);
3091
ndr_print_NTTIME(ndr, "last_password_change", r->last_password_change);
3092
ndr_print_NTTIME(ndr, "acct_expiry", r->acct_expiry);
3093
ndr_print_NTTIME(ndr, "allow_password_change", r->allow_password_change);
3094
ndr_print_NTTIME(ndr, "force_password_change", r->force_password_change);
3095
ndr_print_lsa_String(ndr, "account_name", &r->account_name);
3096
ndr_print_lsa_String(ndr, "full_name", &r->full_name);
3097
ndr_print_lsa_String(ndr, "home_directory", &r->home_directory);
3098
ndr_print_lsa_String(ndr, "home_drive", &r->home_drive);
3099
ndr_print_lsa_String(ndr, "logon_script", &r->logon_script);
3100
ndr_print_lsa_String(ndr, "profile_path", &r->profile_path);
3101
ndr_print_lsa_String(ndr, "description", &r->description);
3102
ndr_print_lsa_String(ndr, "workstations", &r->workstations);
3103
ndr_print_lsa_String(ndr, "comment", &r->comment);
3104
ndr_print_lsa_BinaryString(ndr, "parameters", &r->parameters);
3105
ndr_print_lsa_BinaryString(ndr, "lm_owf_password", &r->lm_owf_password);
3106
ndr_print_lsa_BinaryString(ndr, "nt_owf_password", &r->nt_owf_password);
3107
ndr_print_lsa_String(ndr, "private_data", &r->private_data);
3108
ndr_print_uint32(ndr, "buf_count", r->buf_count);
3109
ndr_print_ptr(ndr, "buffer", r->buffer);
3112
ndr_print_array_uint8(ndr, "buffer", r->buffer, r->buf_count);
3115
ndr_print_uint32(ndr, "rid", r->rid);
3116
ndr_print_uint32(ndr, "primary_gid", r->primary_gid);
3117
ndr_print_samr_AcctFlags(ndr, "acct_flags", r->acct_flags);
3118
ndr_print_samr_FieldsPresent(ndr, "fields_present", r->fields_present);
3119
ndr_print_samr_LogonHours(ndr, "logon_hours", &r->logon_hours);
3120
ndr_print_uint16(ndr, "bad_password_count", r->bad_password_count);
3121
ndr_print_uint16(ndr, "logon_count", r->logon_count);
3122
ndr_print_uint16(ndr, "country_code", r->country_code);
3123
ndr_print_uint16(ndr, "code_page", r->code_page);
3124
ndr_print_uint8(ndr, "lm_password_set", r->lm_password_set);
3125
ndr_print_uint8(ndr, "nt_password_set", r->nt_password_set);
3126
ndr_print_uint8(ndr, "password_expired", r->password_expired);
3127
ndr_print_uint8(ndr, "private_data_sensitive", r->private_data_sensitive);
3131
_PUBLIC_ enum ndr_err_code ndr_push_samr_CryptPassword(struct ndr_push *ndr, int ndr_flags, const struct samr_CryptPassword *r)
3134
uint32_t _flags_save_STRUCT = ndr->flags;
3135
ndr_set_flags(&ndr->flags, LIBNDR_PRINT_ARRAY_HEX);
3136
if (ndr_flags & NDR_SCALARS) {
3137
NDR_CHECK(ndr_push_align(ndr, 1));
3138
NDR_CHECK(ndr_push_array_uint8(ndr, NDR_SCALARS, r->data, 516));
3139
NDR_CHECK(ndr_push_trailer_align(ndr, 1));
3141
if (ndr_flags & NDR_BUFFERS) {
3143
ndr->flags = _flags_save_STRUCT;
3145
return NDR_ERR_SUCCESS;
3148
_PUBLIC_ enum ndr_err_code ndr_pull_samr_CryptPassword(struct ndr_pull *ndr, int ndr_flags, struct samr_CryptPassword *r)
3151
uint32_t _flags_save_STRUCT = ndr->flags;
3152
ndr_set_flags(&ndr->flags, LIBNDR_PRINT_ARRAY_HEX);
3153
if (ndr_flags & NDR_SCALARS) {
3154
NDR_CHECK(ndr_pull_align(ndr, 1));
3155
NDR_CHECK(ndr_pull_array_uint8(ndr, NDR_SCALARS, r->data, 516));
3156
NDR_CHECK(ndr_pull_trailer_align(ndr, 1));
3158
if (ndr_flags & NDR_BUFFERS) {
3160
ndr->flags = _flags_save_STRUCT;
3162
return NDR_ERR_SUCCESS;
3165
_PUBLIC_ void ndr_print_samr_CryptPassword(struct ndr_print *ndr, const char *name, const struct samr_CryptPassword *r)
3167
ndr_print_struct(ndr, name, "samr_CryptPassword");
3168
if (r == NULL) { ndr_print_null(ndr); return; }
3170
uint32_t _flags_save_STRUCT = ndr->flags;
3171
ndr_set_flags(&ndr->flags, LIBNDR_PRINT_ARRAY_HEX);
3173
ndr_print_array_uint8(ndr, "data", r->data, 516);
3175
ndr->flags = _flags_save_STRUCT;
3179
static enum ndr_err_code ndr_push_samr_UserInfo23(struct ndr_push *ndr, int ndr_flags, const struct samr_UserInfo23 *r)
3181
if (ndr_flags & NDR_SCALARS) {
3182
NDR_CHECK(ndr_push_align(ndr, 5));
3183
NDR_CHECK(ndr_push_samr_UserInfo21(ndr, NDR_SCALARS, &r->info));
3184
NDR_CHECK(ndr_push_samr_CryptPassword(ndr, NDR_SCALARS, &r->password));
3185
NDR_CHECK(ndr_push_trailer_align(ndr, 5));
3187
if (ndr_flags & NDR_BUFFERS) {
3188
NDR_CHECK(ndr_push_samr_UserInfo21(ndr, NDR_BUFFERS, &r->info));
3190
return NDR_ERR_SUCCESS;
3193
static enum ndr_err_code ndr_pull_samr_UserInfo23(struct ndr_pull *ndr, int ndr_flags, struct samr_UserInfo23 *r)
3195
if (ndr_flags & NDR_SCALARS) {
3196
NDR_CHECK(ndr_pull_align(ndr, 5));
3197
NDR_CHECK(ndr_pull_samr_UserInfo21(ndr, NDR_SCALARS, &r->info));
3198
NDR_CHECK(ndr_pull_samr_CryptPassword(ndr, NDR_SCALARS, &r->password));
3199
NDR_CHECK(ndr_pull_trailer_align(ndr, 5));
3201
if (ndr_flags & NDR_BUFFERS) {
3202
NDR_CHECK(ndr_pull_samr_UserInfo21(ndr, NDR_BUFFERS, &r->info));
3204
return NDR_ERR_SUCCESS;
3207
_PUBLIC_ void ndr_print_samr_UserInfo23(struct ndr_print *ndr, const char *name, const struct samr_UserInfo23 *r)
3209
ndr_print_struct(ndr, name, "samr_UserInfo23");
3210
if (r == NULL) { ndr_print_null(ndr); return; }
3212
ndr_print_samr_UserInfo21(ndr, "info", &r->info);
3213
ndr_print_samr_CryptPassword(ndr, "password", &r->password);
3217
static enum ndr_err_code ndr_push_samr_UserInfo24(struct ndr_push *ndr, int ndr_flags, const struct samr_UserInfo24 *r)
3219
if (ndr_flags & NDR_SCALARS) {
3220
NDR_CHECK(ndr_push_align(ndr, 1));
3221
NDR_CHECK(ndr_push_samr_CryptPassword(ndr, NDR_SCALARS, &r->password));
3222
NDR_CHECK(ndr_push_uint8(ndr, NDR_SCALARS, r->password_expired));
3223
NDR_CHECK(ndr_push_trailer_align(ndr, 1));
3225
if (ndr_flags & NDR_BUFFERS) {
3227
return NDR_ERR_SUCCESS;
3230
static enum ndr_err_code ndr_pull_samr_UserInfo24(struct ndr_pull *ndr, int ndr_flags, struct samr_UserInfo24 *r)
3232
if (ndr_flags & NDR_SCALARS) {
3233
NDR_CHECK(ndr_pull_align(ndr, 1));
3234
NDR_CHECK(ndr_pull_samr_CryptPassword(ndr, NDR_SCALARS, &r->password));
3235
NDR_CHECK(ndr_pull_uint8(ndr, NDR_SCALARS, &r->password_expired));
3236
NDR_CHECK(ndr_pull_trailer_align(ndr, 1));
3238
if (ndr_flags & NDR_BUFFERS) {
3240
return NDR_ERR_SUCCESS;
3243
_PUBLIC_ void ndr_print_samr_UserInfo24(struct ndr_print *ndr, const char *name, const struct samr_UserInfo24 *r)
3245
ndr_print_struct(ndr, name, "samr_UserInfo24");
3246
if (r == NULL) { ndr_print_null(ndr); return; }
3248
ndr_print_samr_CryptPassword(ndr, "password", &r->password);
3249
ndr_print_uint8(ndr, "password_expired", r->password_expired);
3253
static enum ndr_err_code ndr_push_samr_CryptPasswordEx(struct ndr_push *ndr, int ndr_flags, const struct samr_CryptPasswordEx *r)
3256
uint32_t _flags_save_STRUCT = ndr->flags;
3257
ndr_set_flags(&ndr->flags, LIBNDR_PRINT_ARRAY_HEX);
3258
if (ndr_flags & NDR_SCALARS) {
3259
NDR_CHECK(ndr_push_align(ndr, 1));
3260
NDR_CHECK(ndr_push_array_uint8(ndr, NDR_SCALARS, r->data, 532));
3261
NDR_CHECK(ndr_push_trailer_align(ndr, 1));
3263
if (ndr_flags & NDR_BUFFERS) {
3265
ndr->flags = _flags_save_STRUCT;
3267
return NDR_ERR_SUCCESS;
3270
static enum ndr_err_code ndr_pull_samr_CryptPasswordEx(struct ndr_pull *ndr, int ndr_flags, struct samr_CryptPasswordEx *r)
3273
uint32_t _flags_save_STRUCT = ndr->flags;
3274
ndr_set_flags(&ndr->flags, LIBNDR_PRINT_ARRAY_HEX);
3275
if (ndr_flags & NDR_SCALARS) {
3276
NDR_CHECK(ndr_pull_align(ndr, 1));
3277
NDR_CHECK(ndr_pull_array_uint8(ndr, NDR_SCALARS, r->data, 532));
3278
NDR_CHECK(ndr_pull_trailer_align(ndr, 1));
3280
if (ndr_flags & NDR_BUFFERS) {
3282
ndr->flags = _flags_save_STRUCT;
3284
return NDR_ERR_SUCCESS;
3287
_PUBLIC_ void ndr_print_samr_CryptPasswordEx(struct ndr_print *ndr, const char *name, const struct samr_CryptPasswordEx *r)
3289
ndr_print_struct(ndr, name, "samr_CryptPasswordEx");
3290
if (r == NULL) { ndr_print_null(ndr); return; }
3292
uint32_t _flags_save_STRUCT = ndr->flags;
3293
ndr_set_flags(&ndr->flags, LIBNDR_PRINT_ARRAY_HEX);
3295
ndr_print_array_uint8(ndr, "data", r->data, 532);
3297
ndr->flags = _flags_save_STRUCT;
3301
static enum ndr_err_code ndr_push_samr_UserInfo25(struct ndr_push *ndr, int ndr_flags, const struct samr_UserInfo25 *r)
3303
if (ndr_flags & NDR_SCALARS) {
3304
NDR_CHECK(ndr_push_align(ndr, 5));
3305
NDR_CHECK(ndr_push_samr_UserInfo21(ndr, NDR_SCALARS, &r->info));
3306
NDR_CHECK(ndr_push_samr_CryptPasswordEx(ndr, NDR_SCALARS, &r->password));
3307
NDR_CHECK(ndr_push_trailer_align(ndr, 5));
3309
if (ndr_flags & NDR_BUFFERS) {
3310
NDR_CHECK(ndr_push_samr_UserInfo21(ndr, NDR_BUFFERS, &r->info));
3312
return NDR_ERR_SUCCESS;
3315
static enum ndr_err_code ndr_pull_samr_UserInfo25(struct ndr_pull *ndr, int ndr_flags, struct samr_UserInfo25 *r)
3317
if (ndr_flags & NDR_SCALARS) {
3318
NDR_CHECK(ndr_pull_align(ndr, 5));
3319
NDR_CHECK(ndr_pull_samr_UserInfo21(ndr, NDR_SCALARS, &r->info));
3320
NDR_CHECK(ndr_pull_samr_CryptPasswordEx(ndr, NDR_SCALARS, &r->password));
3321
NDR_CHECK(ndr_pull_trailer_align(ndr, 5));
3323
if (ndr_flags & NDR_BUFFERS) {
3324
NDR_CHECK(ndr_pull_samr_UserInfo21(ndr, NDR_BUFFERS, &r->info));
3326
return NDR_ERR_SUCCESS;
3329
_PUBLIC_ void ndr_print_samr_UserInfo25(struct ndr_print *ndr, const char *name, const struct samr_UserInfo25 *r)
3331
ndr_print_struct(ndr, name, "samr_UserInfo25");
3332
if (r == NULL) { ndr_print_null(ndr); return; }
3334
ndr_print_samr_UserInfo21(ndr, "info", &r->info);
3335
ndr_print_samr_CryptPasswordEx(ndr, "password", &r->password);
3339
static enum ndr_err_code ndr_push_samr_UserInfo26(struct ndr_push *ndr, int ndr_flags, const struct samr_UserInfo26 *r)
3341
if (ndr_flags & NDR_SCALARS) {
3342
NDR_CHECK(ndr_push_align(ndr, 1));
3343
NDR_CHECK(ndr_push_samr_CryptPasswordEx(ndr, NDR_SCALARS, &r->password));
3344
NDR_CHECK(ndr_push_uint8(ndr, NDR_SCALARS, r->password_expired));
3345
NDR_CHECK(ndr_push_trailer_align(ndr, 1));
3347
if (ndr_flags & NDR_BUFFERS) {
3349
return NDR_ERR_SUCCESS;
3352
static enum ndr_err_code ndr_pull_samr_UserInfo26(struct ndr_pull *ndr, int ndr_flags, struct samr_UserInfo26 *r)
3354
if (ndr_flags & NDR_SCALARS) {
3355
NDR_CHECK(ndr_pull_align(ndr, 1));
3356
NDR_CHECK(ndr_pull_samr_CryptPasswordEx(ndr, NDR_SCALARS, &r->password));
3357
NDR_CHECK(ndr_pull_uint8(ndr, NDR_SCALARS, &r->password_expired));
3358
NDR_CHECK(ndr_pull_trailer_align(ndr, 1));
3360
if (ndr_flags & NDR_BUFFERS) {
3362
return NDR_ERR_SUCCESS;
3365
_PUBLIC_ void ndr_print_samr_UserInfo26(struct ndr_print *ndr, const char *name, const struct samr_UserInfo26 *r)
3367
ndr_print_struct(ndr, name, "samr_UserInfo26");
3368
if (r == NULL) { ndr_print_null(ndr); return; }
3370
ndr_print_samr_CryptPasswordEx(ndr, "password", &r->password);
3371
ndr_print_uint8(ndr, "password_expired", r->password_expired);
3375
static enum ndr_err_code ndr_push_samr_UserInfo(struct ndr_push *ndr, int ndr_flags, const union samr_UserInfo *r)
3377
if (ndr_flags & NDR_SCALARS) {
3378
uint32_t level = ndr_push_get_switch_value(ndr, r);
3379
NDR_CHECK(ndr_push_union_align(ndr, 5));
3380
NDR_CHECK(ndr_push_uint16(ndr, NDR_SCALARS, level));
3381
NDR_CHECK(ndr_push_union_align(ndr, 5));
3384
NDR_CHECK(ndr_push_samr_UserInfo1(ndr, NDR_SCALARS, &r->info1));
3388
NDR_CHECK(ndr_push_samr_UserInfo2(ndr, NDR_SCALARS, &r->info2));
3392
NDR_CHECK(ndr_push_samr_UserInfo3(ndr, NDR_SCALARS, &r->info3));
3396
NDR_CHECK(ndr_push_samr_UserInfo4(ndr, NDR_SCALARS, &r->info4));
3400
NDR_CHECK(ndr_push_samr_UserInfo5(ndr, NDR_SCALARS, &r->info5));
3404
NDR_CHECK(ndr_push_samr_UserInfo6(ndr, NDR_SCALARS, &r->info6));
3408
NDR_CHECK(ndr_push_samr_UserInfo7(ndr, NDR_SCALARS, &r->info7));
3412
NDR_CHECK(ndr_push_samr_UserInfo8(ndr, NDR_SCALARS, &r->info8));
3416
NDR_CHECK(ndr_push_samr_UserInfo9(ndr, NDR_SCALARS, &r->info9));
3420
NDR_CHECK(ndr_push_samr_UserInfo10(ndr, NDR_SCALARS, &r->info10));
3424
NDR_CHECK(ndr_push_samr_UserInfo11(ndr, NDR_SCALARS, &r->info11));
3428
NDR_CHECK(ndr_push_samr_UserInfo12(ndr, NDR_SCALARS, &r->info12));
3432
NDR_CHECK(ndr_push_samr_UserInfo13(ndr, NDR_SCALARS, &r->info13));
3436
NDR_CHECK(ndr_push_samr_UserInfo14(ndr, NDR_SCALARS, &r->info14));
3440
NDR_CHECK(ndr_push_samr_UserInfo16(ndr, NDR_SCALARS, &r->info16));
3444
NDR_CHECK(ndr_push_samr_UserInfo17(ndr, NDR_SCALARS, &r->info17));
3448
NDR_CHECK(ndr_push_samr_UserInfo18(ndr, NDR_SCALARS, &r->info18));
3452
NDR_CHECK(ndr_push_samr_UserInfo20(ndr, NDR_SCALARS, &r->info20));
3456
NDR_CHECK(ndr_push_samr_UserInfo21(ndr, NDR_SCALARS, &r->info21));
3460
NDR_CHECK(ndr_push_samr_UserInfo23(ndr, NDR_SCALARS, &r->info23));
3464
NDR_CHECK(ndr_push_samr_UserInfo24(ndr, NDR_SCALARS, &r->info24));
3468
NDR_CHECK(ndr_push_samr_UserInfo25(ndr, NDR_SCALARS, &r->info25));
3472
NDR_CHECK(ndr_push_samr_UserInfo26(ndr, NDR_SCALARS, &r->info26));
3476
return ndr_push_error(ndr, NDR_ERR_BAD_SWITCH, "Bad switch value %u at %s", level, __location__);
3479
if (ndr_flags & NDR_BUFFERS) {
3480
uint32_t level = ndr_push_get_switch_value(ndr, r);
3483
NDR_CHECK(ndr_push_samr_UserInfo1(ndr, NDR_BUFFERS, &r->info1));
3487
NDR_CHECK(ndr_push_samr_UserInfo2(ndr, NDR_BUFFERS, &r->info2));
3491
NDR_CHECK(ndr_push_samr_UserInfo3(ndr, NDR_BUFFERS, &r->info3));
3495
NDR_CHECK(ndr_push_samr_UserInfo4(ndr, NDR_BUFFERS, &r->info4));
3499
NDR_CHECK(ndr_push_samr_UserInfo5(ndr, NDR_BUFFERS, &r->info5));
3503
NDR_CHECK(ndr_push_samr_UserInfo6(ndr, NDR_BUFFERS, &r->info6));
3507
NDR_CHECK(ndr_push_samr_UserInfo7(ndr, NDR_BUFFERS, &r->info7));
3511
NDR_CHECK(ndr_push_samr_UserInfo8(ndr, NDR_BUFFERS, &r->info8));
3518
NDR_CHECK(ndr_push_samr_UserInfo10(ndr, NDR_BUFFERS, &r->info10));
3522
NDR_CHECK(ndr_push_samr_UserInfo11(ndr, NDR_BUFFERS, &r->info11));
3526
NDR_CHECK(ndr_push_samr_UserInfo12(ndr, NDR_BUFFERS, &r->info12));
3530
NDR_CHECK(ndr_push_samr_UserInfo13(ndr, NDR_BUFFERS, &r->info13));
3534
NDR_CHECK(ndr_push_samr_UserInfo14(ndr, NDR_BUFFERS, &r->info14));
3547
NDR_CHECK(ndr_push_samr_UserInfo20(ndr, NDR_BUFFERS, &r->info20));
3551
NDR_CHECK(ndr_push_samr_UserInfo21(ndr, NDR_BUFFERS, &r->info21));
3555
NDR_CHECK(ndr_push_samr_UserInfo23(ndr, NDR_BUFFERS, &r->info23));
3562
NDR_CHECK(ndr_push_samr_UserInfo25(ndr, NDR_BUFFERS, &r->info25));
3569
return ndr_push_error(ndr, NDR_ERR_BAD_SWITCH, "Bad switch value %u at %s", level, __location__);
3572
return NDR_ERR_SUCCESS;
3575
static enum ndr_err_code ndr_pull_samr_UserInfo(struct ndr_pull *ndr, int ndr_flags, union samr_UserInfo *r)
3579
level = ndr_pull_get_switch_value(ndr, r);
3580
if (ndr_flags & NDR_SCALARS) {
3581
NDR_CHECK(ndr_pull_union_align(ndr, 5));
3582
NDR_CHECK(ndr_pull_uint16(ndr, NDR_SCALARS, &_level));
3583
if (_level != level) {
3584
return ndr_pull_error(ndr, NDR_ERR_BAD_SWITCH, "Bad switch value %u for r at %s", _level, __location__);
3586
NDR_CHECK(ndr_pull_union_align(ndr, 5));
3589
NDR_CHECK(ndr_pull_samr_UserInfo1(ndr, NDR_SCALARS, &r->info1));
3593
NDR_CHECK(ndr_pull_samr_UserInfo2(ndr, NDR_SCALARS, &r->info2));
3597
NDR_CHECK(ndr_pull_samr_UserInfo3(ndr, NDR_SCALARS, &r->info3));
3601
NDR_CHECK(ndr_pull_samr_UserInfo4(ndr, NDR_SCALARS, &r->info4));
3605
NDR_CHECK(ndr_pull_samr_UserInfo5(ndr, NDR_SCALARS, &r->info5));
3609
NDR_CHECK(ndr_pull_samr_UserInfo6(ndr, NDR_SCALARS, &r->info6));
3613
NDR_CHECK(ndr_pull_samr_UserInfo7(ndr, NDR_SCALARS, &r->info7));
3617
NDR_CHECK(ndr_pull_samr_UserInfo8(ndr, NDR_SCALARS, &r->info8));
3621
NDR_CHECK(ndr_pull_samr_UserInfo9(ndr, NDR_SCALARS, &r->info9));
3625
NDR_CHECK(ndr_pull_samr_UserInfo10(ndr, NDR_SCALARS, &r->info10));
3629
NDR_CHECK(ndr_pull_samr_UserInfo11(ndr, NDR_SCALARS, &r->info11));
3633
NDR_CHECK(ndr_pull_samr_UserInfo12(ndr, NDR_SCALARS, &r->info12));
3637
NDR_CHECK(ndr_pull_samr_UserInfo13(ndr, NDR_SCALARS, &r->info13));
3641
NDR_CHECK(ndr_pull_samr_UserInfo14(ndr, NDR_SCALARS, &r->info14));
3645
NDR_CHECK(ndr_pull_samr_UserInfo16(ndr, NDR_SCALARS, &r->info16));
3649
NDR_CHECK(ndr_pull_samr_UserInfo17(ndr, NDR_SCALARS, &r->info17));
3653
NDR_CHECK(ndr_pull_samr_UserInfo18(ndr, NDR_SCALARS, &r->info18));
3657
NDR_CHECK(ndr_pull_samr_UserInfo20(ndr, NDR_SCALARS, &r->info20));
3661
NDR_CHECK(ndr_pull_samr_UserInfo21(ndr, NDR_SCALARS, &r->info21));
3665
NDR_CHECK(ndr_pull_samr_UserInfo23(ndr, NDR_SCALARS, &r->info23));
3669
NDR_CHECK(ndr_pull_samr_UserInfo24(ndr, NDR_SCALARS, &r->info24));
3673
NDR_CHECK(ndr_pull_samr_UserInfo25(ndr, NDR_SCALARS, &r->info25));
3677
NDR_CHECK(ndr_pull_samr_UserInfo26(ndr, NDR_SCALARS, &r->info26));
3681
return ndr_pull_error(ndr, NDR_ERR_BAD_SWITCH, "Bad switch value %u at %s", level, __location__);
3684
if (ndr_flags & NDR_BUFFERS) {
3687
NDR_CHECK(ndr_pull_samr_UserInfo1(ndr, NDR_BUFFERS, &r->info1));
3691
NDR_CHECK(ndr_pull_samr_UserInfo2(ndr, NDR_BUFFERS, &r->info2));
3695
NDR_CHECK(ndr_pull_samr_UserInfo3(ndr, NDR_BUFFERS, &r->info3));
3699
NDR_CHECK(ndr_pull_samr_UserInfo4(ndr, NDR_BUFFERS, &r->info4));
3703
NDR_CHECK(ndr_pull_samr_UserInfo5(ndr, NDR_BUFFERS, &r->info5));
3707
NDR_CHECK(ndr_pull_samr_UserInfo6(ndr, NDR_BUFFERS, &r->info6));
3711
NDR_CHECK(ndr_pull_samr_UserInfo7(ndr, NDR_BUFFERS, &r->info7));
3715
NDR_CHECK(ndr_pull_samr_UserInfo8(ndr, NDR_BUFFERS, &r->info8));
3722
NDR_CHECK(ndr_pull_samr_UserInfo10(ndr, NDR_BUFFERS, &r->info10));
3726
NDR_CHECK(ndr_pull_samr_UserInfo11(ndr, NDR_BUFFERS, &r->info11));
3730
NDR_CHECK(ndr_pull_samr_UserInfo12(ndr, NDR_BUFFERS, &r->info12));
3734
NDR_CHECK(ndr_pull_samr_UserInfo13(ndr, NDR_BUFFERS, &r->info13));
3738
NDR_CHECK(ndr_pull_samr_UserInfo14(ndr, NDR_BUFFERS, &r->info14));
3751
NDR_CHECK(ndr_pull_samr_UserInfo20(ndr, NDR_BUFFERS, &r->info20));
3755
NDR_CHECK(ndr_pull_samr_UserInfo21(ndr, NDR_BUFFERS, &r->info21));
3759
NDR_CHECK(ndr_pull_samr_UserInfo23(ndr, NDR_BUFFERS, &r->info23));
3766
NDR_CHECK(ndr_pull_samr_UserInfo25(ndr, NDR_BUFFERS, &r->info25));
3773
return ndr_pull_error(ndr, NDR_ERR_BAD_SWITCH, "Bad switch value %u at %s", level, __location__);
3776
return NDR_ERR_SUCCESS;
3779
_PUBLIC_ void ndr_print_samr_UserInfo(struct ndr_print *ndr, const char *name, const union samr_UserInfo *r)
3782
level = ndr_print_get_switch_value(ndr, r);
3783
ndr_print_union(ndr, name, level, "samr_UserInfo");
3786
ndr_print_samr_UserInfo1(ndr, "info1", &r->info1);
3790
ndr_print_samr_UserInfo2(ndr, "info2", &r->info2);
3794
ndr_print_samr_UserInfo3(ndr, "info3", &r->info3);
3798
ndr_print_samr_UserInfo4(ndr, "info4", &r->info4);
3802
ndr_print_samr_UserInfo5(ndr, "info5", &r->info5);
3806
ndr_print_samr_UserInfo6(ndr, "info6", &r->info6);
3810
ndr_print_samr_UserInfo7(ndr, "info7", &r->info7);
3814
ndr_print_samr_UserInfo8(ndr, "info8", &r->info8);
3818
ndr_print_samr_UserInfo9(ndr, "info9", &r->info9);
3822
ndr_print_samr_UserInfo10(ndr, "info10", &r->info10);
3826
ndr_print_samr_UserInfo11(ndr, "info11", &r->info11);
3830
ndr_print_samr_UserInfo12(ndr, "info12", &r->info12);
3834
ndr_print_samr_UserInfo13(ndr, "info13", &r->info13);
3838
ndr_print_samr_UserInfo14(ndr, "info14", &r->info14);
3842
ndr_print_samr_UserInfo16(ndr, "info16", &r->info16);
3846
ndr_print_samr_UserInfo17(ndr, "info17", &r->info17);
3850
ndr_print_samr_UserInfo18(ndr, "info18", &r->info18);
3854
ndr_print_samr_UserInfo20(ndr, "info20", &r->info20);
3858
ndr_print_samr_UserInfo21(ndr, "info21", &r->info21);
3862
ndr_print_samr_UserInfo23(ndr, "info23", &r->info23);
3866
ndr_print_samr_UserInfo24(ndr, "info24", &r->info24);
3870
ndr_print_samr_UserInfo25(ndr, "info25", &r->info25);
3874
ndr_print_samr_UserInfo26(ndr, "info26", &r->info26);
3878
ndr_print_bad_level(ndr, name, level);
3882
_PUBLIC_ enum ndr_err_code ndr_push_samr_RidWithAttribute(struct ndr_push *ndr, int ndr_flags, const struct samr_RidWithAttribute *r)
3884
if (ndr_flags & NDR_SCALARS) {
3885
NDR_CHECK(ndr_push_align(ndr, 4));
3886
NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->rid));
3887
NDR_CHECK(ndr_push_samr_GroupAttrs(ndr, NDR_SCALARS, r->attributes));
3888
NDR_CHECK(ndr_push_trailer_align(ndr, 4));
3890
if (ndr_flags & NDR_BUFFERS) {
3892
return NDR_ERR_SUCCESS;
3895
_PUBLIC_ enum ndr_err_code ndr_pull_samr_RidWithAttribute(struct ndr_pull *ndr, int ndr_flags, struct samr_RidWithAttribute *r)
3897
if (ndr_flags & NDR_SCALARS) {
3898
NDR_CHECK(ndr_pull_align(ndr, 4));
3899
NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->rid));
3900
NDR_CHECK(ndr_pull_samr_GroupAttrs(ndr, NDR_SCALARS, &r->attributes));
3901
NDR_CHECK(ndr_pull_trailer_align(ndr, 4));
3903
if (ndr_flags & NDR_BUFFERS) {
3905
return NDR_ERR_SUCCESS;
3908
_PUBLIC_ void ndr_print_samr_RidWithAttribute(struct ndr_print *ndr, const char *name, const struct samr_RidWithAttribute *r)
3910
ndr_print_struct(ndr, name, "samr_RidWithAttribute");
3911
if (r == NULL) { ndr_print_null(ndr); return; }
3913
ndr_print_uint32(ndr, "rid", r->rid);
3914
ndr_print_samr_GroupAttrs(ndr, "attributes", r->attributes);
3918
_PUBLIC_ enum ndr_err_code ndr_push_samr_RidWithAttributeArray(struct ndr_push *ndr, int ndr_flags, const struct samr_RidWithAttributeArray *r)
3920
uint32_t cntr_rids_1;
3921
if (ndr_flags & NDR_SCALARS) {
3922
NDR_CHECK(ndr_push_align(ndr, 5));
3923
NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->count));
3924
NDR_CHECK(ndr_push_unique_ptr(ndr, r->rids));
3925
NDR_CHECK(ndr_push_trailer_align(ndr, 5));
3927
if (ndr_flags & NDR_BUFFERS) {
3929
NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, r->count));
3930
for (cntr_rids_1 = 0; cntr_rids_1 < r->count; cntr_rids_1++) {
3931
NDR_CHECK(ndr_push_samr_RidWithAttribute(ndr, NDR_SCALARS, &r->rids[cntr_rids_1]));
3935
return NDR_ERR_SUCCESS;
3938
_PUBLIC_ enum ndr_err_code ndr_pull_samr_RidWithAttributeArray(struct ndr_pull *ndr, int ndr_flags, struct samr_RidWithAttributeArray *r)
3941
uint32_t cntr_rids_1;
3942
TALLOC_CTX *_mem_save_rids_0;
3943
TALLOC_CTX *_mem_save_rids_1;
3944
if (ndr_flags & NDR_SCALARS) {
3945
NDR_CHECK(ndr_pull_align(ndr, 5));
3946
NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->count));
3947
NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_rids));
3949
NDR_PULL_ALLOC(ndr, r->rids);
3953
NDR_CHECK(ndr_pull_trailer_align(ndr, 5));
3955
if (ndr_flags & NDR_BUFFERS) {
3957
_mem_save_rids_0 = NDR_PULL_GET_MEM_CTX(ndr);
3958
NDR_PULL_SET_MEM_CTX(ndr, r->rids, 0);
3959
NDR_CHECK(ndr_pull_array_size(ndr, &r->rids));
3960
NDR_PULL_ALLOC_N(ndr, r->rids, ndr_get_array_size(ndr, &r->rids));
3961
_mem_save_rids_1 = NDR_PULL_GET_MEM_CTX(ndr);
3962
NDR_PULL_SET_MEM_CTX(ndr, r->rids, 0);
3963
for (cntr_rids_1 = 0; cntr_rids_1 < r->count; cntr_rids_1++) {
3964
NDR_CHECK(ndr_pull_samr_RidWithAttribute(ndr, NDR_SCALARS, &r->rids[cntr_rids_1]));
3966
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_rids_1, 0);
3967
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_rids_0, 0);
3970
NDR_CHECK(ndr_check_array_size(ndr, (void*)&r->rids, r->count));
3973
return NDR_ERR_SUCCESS;
3976
_PUBLIC_ void ndr_print_samr_RidWithAttributeArray(struct ndr_print *ndr, const char *name, const struct samr_RidWithAttributeArray *r)
3978
uint32_t cntr_rids_1;
3979
ndr_print_struct(ndr, name, "samr_RidWithAttributeArray");
3980
if (r == NULL) { ndr_print_null(ndr); return; }
3982
ndr_print_uint32(ndr, "count", r->count);
3983
ndr_print_ptr(ndr, "rids", r->rids);
3986
ndr->print(ndr, "%s: ARRAY(%d)", "rids", (int)r->count);
3988
for (cntr_rids_1=0;cntr_rids_1<r->count;cntr_rids_1++) {
3989
ndr_print_samr_RidWithAttribute(ndr, "rids", &r->rids[cntr_rids_1]);
3997
static enum ndr_err_code ndr_push_samr_DispEntryGeneral(struct ndr_push *ndr, int ndr_flags, const struct samr_DispEntryGeneral *r)
3999
if (ndr_flags & NDR_SCALARS) {
4000
NDR_CHECK(ndr_push_align(ndr, 5));
4001
NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->idx));
4002
NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->rid));
4003
NDR_CHECK(ndr_push_samr_AcctFlags(ndr, NDR_SCALARS, r->acct_flags));
4004
NDR_CHECK(ndr_push_lsa_String(ndr, NDR_SCALARS, &r->account_name));
4005
NDR_CHECK(ndr_push_lsa_String(ndr, NDR_SCALARS, &r->description));
4006
NDR_CHECK(ndr_push_lsa_String(ndr, NDR_SCALARS, &r->full_name));
4007
NDR_CHECK(ndr_push_trailer_align(ndr, 5));
4009
if (ndr_flags & NDR_BUFFERS) {
4010
NDR_CHECK(ndr_push_lsa_String(ndr, NDR_BUFFERS, &r->account_name));
4011
NDR_CHECK(ndr_push_lsa_String(ndr, NDR_BUFFERS, &r->description));
4012
NDR_CHECK(ndr_push_lsa_String(ndr, NDR_BUFFERS, &r->full_name));
4014
return NDR_ERR_SUCCESS;
4017
static enum ndr_err_code ndr_pull_samr_DispEntryGeneral(struct ndr_pull *ndr, int ndr_flags, struct samr_DispEntryGeneral *r)
4019
if (ndr_flags & NDR_SCALARS) {
4020
NDR_CHECK(ndr_pull_align(ndr, 5));
4021
NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->idx));
4022
NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->rid));
4023
NDR_CHECK(ndr_pull_samr_AcctFlags(ndr, NDR_SCALARS, &r->acct_flags));
4024
NDR_CHECK(ndr_pull_lsa_String(ndr, NDR_SCALARS, &r->account_name));
4025
NDR_CHECK(ndr_pull_lsa_String(ndr, NDR_SCALARS, &r->description));
4026
NDR_CHECK(ndr_pull_lsa_String(ndr, NDR_SCALARS, &r->full_name));
4027
NDR_CHECK(ndr_pull_trailer_align(ndr, 5));
4029
if (ndr_flags & NDR_BUFFERS) {
4030
NDR_CHECK(ndr_pull_lsa_String(ndr, NDR_BUFFERS, &r->account_name));
4031
NDR_CHECK(ndr_pull_lsa_String(ndr, NDR_BUFFERS, &r->description));
4032
NDR_CHECK(ndr_pull_lsa_String(ndr, NDR_BUFFERS, &r->full_name));
4034
return NDR_ERR_SUCCESS;
4037
_PUBLIC_ void ndr_print_samr_DispEntryGeneral(struct ndr_print *ndr, const char *name, const struct samr_DispEntryGeneral *r)
4039
ndr_print_struct(ndr, name, "samr_DispEntryGeneral");
4040
if (r == NULL) { ndr_print_null(ndr); return; }
4042
ndr_print_uint32(ndr, "idx", r->idx);
4043
ndr_print_uint32(ndr, "rid", r->rid);
4044
ndr_print_samr_AcctFlags(ndr, "acct_flags", r->acct_flags);
4045
ndr_print_lsa_String(ndr, "account_name", &r->account_name);
4046
ndr_print_lsa_String(ndr, "description", &r->description);
4047
ndr_print_lsa_String(ndr, "full_name", &r->full_name);
4051
static enum ndr_err_code ndr_push_samr_DispInfoGeneral(struct ndr_push *ndr, int ndr_flags, const struct samr_DispInfoGeneral *r)
4053
uint32_t cntr_entries_1;
4054
if (ndr_flags & NDR_SCALARS) {
4055
NDR_CHECK(ndr_push_align(ndr, 5));
4056
NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->count));
4057
NDR_CHECK(ndr_push_unique_ptr(ndr, r->entries));
4058
NDR_CHECK(ndr_push_trailer_align(ndr, 5));
4060
if (ndr_flags & NDR_BUFFERS) {
4062
NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, r->count));
4063
for (cntr_entries_1 = 0; cntr_entries_1 < r->count; cntr_entries_1++) {
4064
NDR_CHECK(ndr_push_samr_DispEntryGeneral(ndr, NDR_SCALARS, &r->entries[cntr_entries_1]));
4066
for (cntr_entries_1 = 0; cntr_entries_1 < r->count; cntr_entries_1++) {
4067
NDR_CHECK(ndr_push_samr_DispEntryGeneral(ndr, NDR_BUFFERS, &r->entries[cntr_entries_1]));
4071
return NDR_ERR_SUCCESS;
4074
static enum ndr_err_code ndr_pull_samr_DispInfoGeneral(struct ndr_pull *ndr, int ndr_flags, struct samr_DispInfoGeneral *r)
4076
uint32_t _ptr_entries;
4077
uint32_t cntr_entries_1;
4078
TALLOC_CTX *_mem_save_entries_0;
4079
TALLOC_CTX *_mem_save_entries_1;
4080
if (ndr_flags & NDR_SCALARS) {
4081
NDR_CHECK(ndr_pull_align(ndr, 5));
4082
NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->count));
4083
NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_entries));
4085
NDR_PULL_ALLOC(ndr, r->entries);
4089
NDR_CHECK(ndr_pull_trailer_align(ndr, 5));
4091
if (ndr_flags & NDR_BUFFERS) {
4093
_mem_save_entries_0 = NDR_PULL_GET_MEM_CTX(ndr);
4094
NDR_PULL_SET_MEM_CTX(ndr, r->entries, 0);
4095
NDR_CHECK(ndr_pull_array_size(ndr, &r->entries));
4096
NDR_PULL_ALLOC_N(ndr, r->entries, ndr_get_array_size(ndr, &r->entries));
4097
_mem_save_entries_1 = NDR_PULL_GET_MEM_CTX(ndr);
4098
NDR_PULL_SET_MEM_CTX(ndr, r->entries, 0);
4099
for (cntr_entries_1 = 0; cntr_entries_1 < r->count; cntr_entries_1++) {
4100
NDR_CHECK(ndr_pull_samr_DispEntryGeneral(ndr, NDR_SCALARS, &r->entries[cntr_entries_1]));
4102
for (cntr_entries_1 = 0; cntr_entries_1 < r->count; cntr_entries_1++) {
4103
NDR_CHECK(ndr_pull_samr_DispEntryGeneral(ndr, NDR_BUFFERS, &r->entries[cntr_entries_1]));
4105
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_entries_1, 0);
4106
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_entries_0, 0);
4109
NDR_CHECK(ndr_check_array_size(ndr, (void*)&r->entries, r->count));
4112
return NDR_ERR_SUCCESS;
4115
_PUBLIC_ void ndr_print_samr_DispInfoGeneral(struct ndr_print *ndr, const char *name, const struct samr_DispInfoGeneral *r)
4117
uint32_t cntr_entries_1;
4118
ndr_print_struct(ndr, name, "samr_DispInfoGeneral");
4119
if (r == NULL) { ndr_print_null(ndr); return; }
4121
ndr_print_uint32(ndr, "count", r->count);
4122
ndr_print_ptr(ndr, "entries", r->entries);
4125
ndr->print(ndr, "%s: ARRAY(%d)", "entries", (int)r->count);
4127
for (cntr_entries_1=0;cntr_entries_1<r->count;cntr_entries_1++) {
4128
ndr_print_samr_DispEntryGeneral(ndr, "entries", &r->entries[cntr_entries_1]);
4136
static enum ndr_err_code ndr_push_samr_DispEntryFull(struct ndr_push *ndr, int ndr_flags, const struct samr_DispEntryFull *r)
4138
if (ndr_flags & NDR_SCALARS) {
4139
NDR_CHECK(ndr_push_align(ndr, 5));
4140
NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->idx));
4141
NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->rid));
4142
NDR_CHECK(ndr_push_samr_AcctFlags(ndr, NDR_SCALARS, r->acct_flags));
4143
NDR_CHECK(ndr_push_lsa_String(ndr, NDR_SCALARS, &r->account_name));
4144
NDR_CHECK(ndr_push_lsa_String(ndr, NDR_SCALARS, &r->description));
4145
NDR_CHECK(ndr_push_trailer_align(ndr, 5));
4147
if (ndr_flags & NDR_BUFFERS) {
4148
NDR_CHECK(ndr_push_lsa_String(ndr, NDR_BUFFERS, &r->account_name));
4149
NDR_CHECK(ndr_push_lsa_String(ndr, NDR_BUFFERS, &r->description));
4151
return NDR_ERR_SUCCESS;
4154
static enum ndr_err_code ndr_pull_samr_DispEntryFull(struct ndr_pull *ndr, int ndr_flags, struct samr_DispEntryFull *r)
4156
if (ndr_flags & NDR_SCALARS) {
4157
NDR_CHECK(ndr_pull_align(ndr, 5));
4158
NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->idx));
4159
NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->rid));
4160
NDR_CHECK(ndr_pull_samr_AcctFlags(ndr, NDR_SCALARS, &r->acct_flags));
4161
NDR_CHECK(ndr_pull_lsa_String(ndr, NDR_SCALARS, &r->account_name));
4162
NDR_CHECK(ndr_pull_lsa_String(ndr, NDR_SCALARS, &r->description));
4163
NDR_CHECK(ndr_pull_trailer_align(ndr, 5));
4165
if (ndr_flags & NDR_BUFFERS) {
4166
NDR_CHECK(ndr_pull_lsa_String(ndr, NDR_BUFFERS, &r->account_name));
4167
NDR_CHECK(ndr_pull_lsa_String(ndr, NDR_BUFFERS, &r->description));
4169
return NDR_ERR_SUCCESS;
4172
_PUBLIC_ void ndr_print_samr_DispEntryFull(struct ndr_print *ndr, const char *name, const struct samr_DispEntryFull *r)
4174
ndr_print_struct(ndr, name, "samr_DispEntryFull");
4175
if (r == NULL) { ndr_print_null(ndr); return; }
4177
ndr_print_uint32(ndr, "idx", r->idx);
4178
ndr_print_uint32(ndr, "rid", r->rid);
4179
ndr_print_samr_AcctFlags(ndr, "acct_flags", r->acct_flags);
4180
ndr_print_lsa_String(ndr, "account_name", &r->account_name);
4181
ndr_print_lsa_String(ndr, "description", &r->description);
4185
static enum ndr_err_code ndr_push_samr_DispInfoFull(struct ndr_push *ndr, int ndr_flags, const struct samr_DispInfoFull *r)
4187
uint32_t cntr_entries_1;
4188
if (ndr_flags & NDR_SCALARS) {
4189
NDR_CHECK(ndr_push_align(ndr, 5));
4190
NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->count));
4191
NDR_CHECK(ndr_push_unique_ptr(ndr, r->entries));
4192
NDR_CHECK(ndr_push_trailer_align(ndr, 5));
4194
if (ndr_flags & NDR_BUFFERS) {
4196
NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, r->count));
4197
for (cntr_entries_1 = 0; cntr_entries_1 < r->count; cntr_entries_1++) {
4198
NDR_CHECK(ndr_push_samr_DispEntryFull(ndr, NDR_SCALARS, &r->entries[cntr_entries_1]));
4200
for (cntr_entries_1 = 0; cntr_entries_1 < r->count; cntr_entries_1++) {
4201
NDR_CHECK(ndr_push_samr_DispEntryFull(ndr, NDR_BUFFERS, &r->entries[cntr_entries_1]));
4205
return NDR_ERR_SUCCESS;
4208
static enum ndr_err_code ndr_pull_samr_DispInfoFull(struct ndr_pull *ndr, int ndr_flags, struct samr_DispInfoFull *r)
4210
uint32_t _ptr_entries;
4211
uint32_t cntr_entries_1;
4212
TALLOC_CTX *_mem_save_entries_0;
4213
TALLOC_CTX *_mem_save_entries_1;
4214
if (ndr_flags & NDR_SCALARS) {
4215
NDR_CHECK(ndr_pull_align(ndr, 5));
4216
NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->count));
4217
NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_entries));
4219
NDR_PULL_ALLOC(ndr, r->entries);
4223
NDR_CHECK(ndr_pull_trailer_align(ndr, 5));
4225
if (ndr_flags & NDR_BUFFERS) {
4227
_mem_save_entries_0 = NDR_PULL_GET_MEM_CTX(ndr);
4228
NDR_PULL_SET_MEM_CTX(ndr, r->entries, 0);
4229
NDR_CHECK(ndr_pull_array_size(ndr, &r->entries));
4230
NDR_PULL_ALLOC_N(ndr, r->entries, ndr_get_array_size(ndr, &r->entries));
4231
_mem_save_entries_1 = NDR_PULL_GET_MEM_CTX(ndr);
4232
NDR_PULL_SET_MEM_CTX(ndr, r->entries, 0);
4233
for (cntr_entries_1 = 0; cntr_entries_1 < r->count; cntr_entries_1++) {
4234
NDR_CHECK(ndr_pull_samr_DispEntryFull(ndr, NDR_SCALARS, &r->entries[cntr_entries_1]));
4236
for (cntr_entries_1 = 0; cntr_entries_1 < r->count; cntr_entries_1++) {
4237
NDR_CHECK(ndr_pull_samr_DispEntryFull(ndr, NDR_BUFFERS, &r->entries[cntr_entries_1]));
4239
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_entries_1, 0);
4240
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_entries_0, 0);
4243
NDR_CHECK(ndr_check_array_size(ndr, (void*)&r->entries, r->count));
4246
return NDR_ERR_SUCCESS;
4249
_PUBLIC_ void ndr_print_samr_DispInfoFull(struct ndr_print *ndr, const char *name, const struct samr_DispInfoFull *r)
4251
uint32_t cntr_entries_1;
4252
ndr_print_struct(ndr, name, "samr_DispInfoFull");
4253
if (r == NULL) { ndr_print_null(ndr); return; }
4255
ndr_print_uint32(ndr, "count", r->count);
4256
ndr_print_ptr(ndr, "entries", r->entries);
4259
ndr->print(ndr, "%s: ARRAY(%d)", "entries", (int)r->count);
4261
for (cntr_entries_1=0;cntr_entries_1<r->count;cntr_entries_1++) {
4262
ndr_print_samr_DispEntryFull(ndr, "entries", &r->entries[cntr_entries_1]);
4270
static enum ndr_err_code ndr_push_samr_DispEntryFullGroup(struct ndr_push *ndr, int ndr_flags, const struct samr_DispEntryFullGroup *r)
4272
if (ndr_flags & NDR_SCALARS) {
4273
NDR_CHECK(ndr_push_align(ndr, 5));
4274
NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->idx));
4275
NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->rid));
4276
NDR_CHECK(ndr_push_samr_GroupAttrs(ndr, NDR_SCALARS, r->acct_flags));
4277
NDR_CHECK(ndr_push_lsa_String(ndr, NDR_SCALARS, &r->account_name));
4278
NDR_CHECK(ndr_push_lsa_String(ndr, NDR_SCALARS, &r->description));
4279
NDR_CHECK(ndr_push_trailer_align(ndr, 5));
4281
if (ndr_flags & NDR_BUFFERS) {
4282
NDR_CHECK(ndr_push_lsa_String(ndr, NDR_BUFFERS, &r->account_name));
4283
NDR_CHECK(ndr_push_lsa_String(ndr, NDR_BUFFERS, &r->description));
4285
return NDR_ERR_SUCCESS;
4288
static enum ndr_err_code ndr_pull_samr_DispEntryFullGroup(struct ndr_pull *ndr, int ndr_flags, struct samr_DispEntryFullGroup *r)
4290
if (ndr_flags & NDR_SCALARS) {
4291
NDR_CHECK(ndr_pull_align(ndr, 5));
4292
NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->idx));
4293
NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->rid));
4294
NDR_CHECK(ndr_pull_samr_GroupAttrs(ndr, NDR_SCALARS, &r->acct_flags));
4295
NDR_CHECK(ndr_pull_lsa_String(ndr, NDR_SCALARS, &r->account_name));
4296
NDR_CHECK(ndr_pull_lsa_String(ndr, NDR_SCALARS, &r->description));
4297
NDR_CHECK(ndr_pull_trailer_align(ndr, 5));
4299
if (ndr_flags & NDR_BUFFERS) {
4300
NDR_CHECK(ndr_pull_lsa_String(ndr, NDR_BUFFERS, &r->account_name));
4301
NDR_CHECK(ndr_pull_lsa_String(ndr, NDR_BUFFERS, &r->description));
4303
return NDR_ERR_SUCCESS;
4306
_PUBLIC_ void ndr_print_samr_DispEntryFullGroup(struct ndr_print *ndr, const char *name, const struct samr_DispEntryFullGroup *r)
4308
ndr_print_struct(ndr, name, "samr_DispEntryFullGroup");
4309
if (r == NULL) { ndr_print_null(ndr); return; }
4311
ndr_print_uint32(ndr, "idx", r->idx);
4312
ndr_print_uint32(ndr, "rid", r->rid);
4313
ndr_print_samr_GroupAttrs(ndr, "acct_flags", r->acct_flags);
4314
ndr_print_lsa_String(ndr, "account_name", &r->account_name);
4315
ndr_print_lsa_String(ndr, "description", &r->description);
4319
static enum ndr_err_code ndr_push_samr_DispInfoFullGroups(struct ndr_push *ndr, int ndr_flags, const struct samr_DispInfoFullGroups *r)
4321
uint32_t cntr_entries_1;
4322
if (ndr_flags & NDR_SCALARS) {
4323
NDR_CHECK(ndr_push_align(ndr, 5));
4324
NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->count));
4325
NDR_CHECK(ndr_push_unique_ptr(ndr, r->entries));
4326
NDR_CHECK(ndr_push_trailer_align(ndr, 5));
4328
if (ndr_flags & NDR_BUFFERS) {
4330
NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, r->count));
4331
for (cntr_entries_1 = 0; cntr_entries_1 < r->count; cntr_entries_1++) {
4332
NDR_CHECK(ndr_push_samr_DispEntryFullGroup(ndr, NDR_SCALARS, &r->entries[cntr_entries_1]));
4334
for (cntr_entries_1 = 0; cntr_entries_1 < r->count; cntr_entries_1++) {
4335
NDR_CHECK(ndr_push_samr_DispEntryFullGroup(ndr, NDR_BUFFERS, &r->entries[cntr_entries_1]));
4339
return NDR_ERR_SUCCESS;
4342
static enum ndr_err_code ndr_pull_samr_DispInfoFullGroups(struct ndr_pull *ndr, int ndr_flags, struct samr_DispInfoFullGroups *r)
4344
uint32_t _ptr_entries;
4345
uint32_t cntr_entries_1;
4346
TALLOC_CTX *_mem_save_entries_0;
4347
TALLOC_CTX *_mem_save_entries_1;
4348
if (ndr_flags & NDR_SCALARS) {
4349
NDR_CHECK(ndr_pull_align(ndr, 5));
4350
NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->count));
4351
NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_entries));
4353
NDR_PULL_ALLOC(ndr, r->entries);
4357
NDR_CHECK(ndr_pull_trailer_align(ndr, 5));
4359
if (ndr_flags & NDR_BUFFERS) {
4361
_mem_save_entries_0 = NDR_PULL_GET_MEM_CTX(ndr);
4362
NDR_PULL_SET_MEM_CTX(ndr, r->entries, 0);
4363
NDR_CHECK(ndr_pull_array_size(ndr, &r->entries));
4364
NDR_PULL_ALLOC_N(ndr, r->entries, ndr_get_array_size(ndr, &r->entries));
4365
_mem_save_entries_1 = NDR_PULL_GET_MEM_CTX(ndr);
4366
NDR_PULL_SET_MEM_CTX(ndr, r->entries, 0);
4367
for (cntr_entries_1 = 0; cntr_entries_1 < r->count; cntr_entries_1++) {
4368
NDR_CHECK(ndr_pull_samr_DispEntryFullGroup(ndr, NDR_SCALARS, &r->entries[cntr_entries_1]));
4370
for (cntr_entries_1 = 0; cntr_entries_1 < r->count; cntr_entries_1++) {
4371
NDR_CHECK(ndr_pull_samr_DispEntryFullGroup(ndr, NDR_BUFFERS, &r->entries[cntr_entries_1]));
4373
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_entries_1, 0);
4374
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_entries_0, 0);
4377
NDR_CHECK(ndr_check_array_size(ndr, (void*)&r->entries, r->count));
4380
return NDR_ERR_SUCCESS;
4383
_PUBLIC_ void ndr_print_samr_DispInfoFullGroups(struct ndr_print *ndr, const char *name, const struct samr_DispInfoFullGroups *r)
4385
uint32_t cntr_entries_1;
4386
ndr_print_struct(ndr, name, "samr_DispInfoFullGroups");
4387
if (r == NULL) { ndr_print_null(ndr); return; }
4389
ndr_print_uint32(ndr, "count", r->count);
4390
ndr_print_ptr(ndr, "entries", r->entries);
4393
ndr->print(ndr, "%s: ARRAY(%d)", "entries", (int)r->count);
4395
for (cntr_entries_1=0;cntr_entries_1<r->count;cntr_entries_1++) {
4396
ndr_print_samr_DispEntryFullGroup(ndr, "entries", &r->entries[cntr_entries_1]);
4404
static enum ndr_err_code ndr_push_samr_DispEntryAscii(struct ndr_push *ndr, int ndr_flags, const struct samr_DispEntryAscii *r)
4406
if (ndr_flags & NDR_SCALARS) {
4407
NDR_CHECK(ndr_push_align(ndr, 5));
4408
NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->idx));
4409
NDR_CHECK(ndr_push_lsa_AsciiStringLarge(ndr, NDR_SCALARS, &r->account_name));
4410
NDR_CHECK(ndr_push_trailer_align(ndr, 5));
4412
if (ndr_flags & NDR_BUFFERS) {
4413
NDR_CHECK(ndr_push_lsa_AsciiStringLarge(ndr, NDR_BUFFERS, &r->account_name));
4415
return NDR_ERR_SUCCESS;
4418
static enum ndr_err_code ndr_pull_samr_DispEntryAscii(struct ndr_pull *ndr, int ndr_flags, struct samr_DispEntryAscii *r)
4420
if (ndr_flags & NDR_SCALARS) {
4421
NDR_CHECK(ndr_pull_align(ndr, 5));
4422
NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->idx));
4423
NDR_CHECK(ndr_pull_lsa_AsciiStringLarge(ndr, NDR_SCALARS, &r->account_name));
4424
NDR_CHECK(ndr_pull_trailer_align(ndr, 5));
4426
if (ndr_flags & NDR_BUFFERS) {
4427
NDR_CHECK(ndr_pull_lsa_AsciiStringLarge(ndr, NDR_BUFFERS, &r->account_name));
4429
return NDR_ERR_SUCCESS;
4432
_PUBLIC_ void ndr_print_samr_DispEntryAscii(struct ndr_print *ndr, const char *name, const struct samr_DispEntryAscii *r)
4434
ndr_print_struct(ndr, name, "samr_DispEntryAscii");
4435
if (r == NULL) { ndr_print_null(ndr); return; }
4437
ndr_print_uint32(ndr, "idx", r->idx);
4438
ndr_print_lsa_AsciiStringLarge(ndr, "account_name", &r->account_name);
4442
static enum ndr_err_code ndr_push_samr_DispInfoAscii(struct ndr_push *ndr, int ndr_flags, const struct samr_DispInfoAscii *r)
4444
uint32_t cntr_entries_1;
4445
if (ndr_flags & NDR_SCALARS) {
4446
NDR_CHECK(ndr_push_align(ndr, 5));
4447
NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->count));
4448
NDR_CHECK(ndr_push_unique_ptr(ndr, r->entries));
4449
NDR_CHECK(ndr_push_trailer_align(ndr, 5));
4451
if (ndr_flags & NDR_BUFFERS) {
4453
NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, r->count));
4454
for (cntr_entries_1 = 0; cntr_entries_1 < r->count; cntr_entries_1++) {
4455
NDR_CHECK(ndr_push_samr_DispEntryAscii(ndr, NDR_SCALARS, &r->entries[cntr_entries_1]));
4457
for (cntr_entries_1 = 0; cntr_entries_1 < r->count; cntr_entries_1++) {
4458
NDR_CHECK(ndr_push_samr_DispEntryAscii(ndr, NDR_BUFFERS, &r->entries[cntr_entries_1]));
4462
return NDR_ERR_SUCCESS;
4465
static enum ndr_err_code ndr_pull_samr_DispInfoAscii(struct ndr_pull *ndr, int ndr_flags, struct samr_DispInfoAscii *r)
4467
uint32_t _ptr_entries;
4468
uint32_t cntr_entries_1;
4469
TALLOC_CTX *_mem_save_entries_0;
4470
TALLOC_CTX *_mem_save_entries_1;
4471
if (ndr_flags & NDR_SCALARS) {
4472
NDR_CHECK(ndr_pull_align(ndr, 5));
4473
NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->count));
4474
NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_entries));
4476
NDR_PULL_ALLOC(ndr, r->entries);
4480
NDR_CHECK(ndr_pull_trailer_align(ndr, 5));
4482
if (ndr_flags & NDR_BUFFERS) {
4484
_mem_save_entries_0 = NDR_PULL_GET_MEM_CTX(ndr);
4485
NDR_PULL_SET_MEM_CTX(ndr, r->entries, 0);
4486
NDR_CHECK(ndr_pull_array_size(ndr, &r->entries));
4487
NDR_PULL_ALLOC_N(ndr, r->entries, ndr_get_array_size(ndr, &r->entries));
4488
_mem_save_entries_1 = NDR_PULL_GET_MEM_CTX(ndr);
4489
NDR_PULL_SET_MEM_CTX(ndr, r->entries, 0);
4490
for (cntr_entries_1 = 0; cntr_entries_1 < r->count; cntr_entries_1++) {
4491
NDR_CHECK(ndr_pull_samr_DispEntryAscii(ndr, NDR_SCALARS, &r->entries[cntr_entries_1]));
4493
for (cntr_entries_1 = 0; cntr_entries_1 < r->count; cntr_entries_1++) {
4494
NDR_CHECK(ndr_pull_samr_DispEntryAscii(ndr, NDR_BUFFERS, &r->entries[cntr_entries_1]));
4496
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_entries_1, 0);
4497
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_entries_0, 0);
4500
NDR_CHECK(ndr_check_array_size(ndr, (void*)&r->entries, r->count));
4503
return NDR_ERR_SUCCESS;
4506
_PUBLIC_ void ndr_print_samr_DispInfoAscii(struct ndr_print *ndr, const char *name, const struct samr_DispInfoAscii *r)
4508
uint32_t cntr_entries_1;
4509
ndr_print_struct(ndr, name, "samr_DispInfoAscii");
4510
if (r == NULL) { ndr_print_null(ndr); return; }
4512
ndr_print_uint32(ndr, "count", r->count);
4513
ndr_print_ptr(ndr, "entries", r->entries);
4516
ndr->print(ndr, "%s: ARRAY(%d)", "entries", (int)r->count);
4518
for (cntr_entries_1=0;cntr_entries_1<r->count;cntr_entries_1++) {
4519
ndr_print_samr_DispEntryAscii(ndr, "entries", &r->entries[cntr_entries_1]);
4527
static enum ndr_err_code ndr_push_samr_DispInfo(struct ndr_push *ndr, int ndr_flags, const union samr_DispInfo *r)
4529
if (ndr_flags & NDR_SCALARS) {
4530
uint32_t level = ndr_push_get_switch_value(ndr, r);
4531
NDR_CHECK(ndr_push_union_align(ndr, 5));
4532
NDR_CHECK(ndr_push_uint16(ndr, NDR_SCALARS, level));
4533
NDR_CHECK(ndr_push_union_align(ndr, 5));
4536
NDR_CHECK(ndr_push_samr_DispInfoGeneral(ndr, NDR_SCALARS, &r->info1));
4540
NDR_CHECK(ndr_push_samr_DispInfoFull(ndr, NDR_SCALARS, &r->info2));
4544
NDR_CHECK(ndr_push_samr_DispInfoFullGroups(ndr, NDR_SCALARS, &r->info3));
4548
NDR_CHECK(ndr_push_samr_DispInfoAscii(ndr, NDR_SCALARS, &r->info4));
4552
NDR_CHECK(ndr_push_samr_DispInfoAscii(ndr, NDR_SCALARS, &r->info5));
4556
return ndr_push_error(ndr, NDR_ERR_BAD_SWITCH, "Bad switch value %u at %s", level, __location__);
4559
if (ndr_flags & NDR_BUFFERS) {
4560
uint32_t level = ndr_push_get_switch_value(ndr, r);
4563
NDR_CHECK(ndr_push_samr_DispInfoGeneral(ndr, NDR_BUFFERS, &r->info1));
4567
NDR_CHECK(ndr_push_samr_DispInfoFull(ndr, NDR_BUFFERS, &r->info2));
4571
NDR_CHECK(ndr_push_samr_DispInfoFullGroups(ndr, NDR_BUFFERS, &r->info3));
4575
NDR_CHECK(ndr_push_samr_DispInfoAscii(ndr, NDR_BUFFERS, &r->info4));
4579
NDR_CHECK(ndr_push_samr_DispInfoAscii(ndr, NDR_BUFFERS, &r->info5));
4583
return ndr_push_error(ndr, NDR_ERR_BAD_SWITCH, "Bad switch value %u at %s", level, __location__);
4586
return NDR_ERR_SUCCESS;
4589
static enum ndr_err_code ndr_pull_samr_DispInfo(struct ndr_pull *ndr, int ndr_flags, union samr_DispInfo *r)
4593
level = ndr_pull_get_switch_value(ndr, r);
4594
if (ndr_flags & NDR_SCALARS) {
4595
NDR_CHECK(ndr_pull_union_align(ndr, 5));
4596
NDR_CHECK(ndr_pull_uint16(ndr, NDR_SCALARS, &_level));
4597
if (_level != level) {
4598
return ndr_pull_error(ndr, NDR_ERR_BAD_SWITCH, "Bad switch value %u for r at %s", _level, __location__);
4600
NDR_CHECK(ndr_pull_union_align(ndr, 5));
4603
NDR_CHECK(ndr_pull_samr_DispInfoGeneral(ndr, NDR_SCALARS, &r->info1));
4607
NDR_CHECK(ndr_pull_samr_DispInfoFull(ndr, NDR_SCALARS, &r->info2));
4611
NDR_CHECK(ndr_pull_samr_DispInfoFullGroups(ndr, NDR_SCALARS, &r->info3));
4615
NDR_CHECK(ndr_pull_samr_DispInfoAscii(ndr, NDR_SCALARS, &r->info4));
4619
NDR_CHECK(ndr_pull_samr_DispInfoAscii(ndr, NDR_SCALARS, &r->info5));
4623
return ndr_pull_error(ndr, NDR_ERR_BAD_SWITCH, "Bad switch value %u at %s", level, __location__);
4626
if (ndr_flags & NDR_BUFFERS) {
4629
NDR_CHECK(ndr_pull_samr_DispInfoGeneral(ndr, NDR_BUFFERS, &r->info1));
4633
NDR_CHECK(ndr_pull_samr_DispInfoFull(ndr, NDR_BUFFERS, &r->info2));
4637
NDR_CHECK(ndr_pull_samr_DispInfoFullGroups(ndr, NDR_BUFFERS, &r->info3));
4641
NDR_CHECK(ndr_pull_samr_DispInfoAscii(ndr, NDR_BUFFERS, &r->info4));
4645
NDR_CHECK(ndr_pull_samr_DispInfoAscii(ndr, NDR_BUFFERS, &r->info5));
4649
return ndr_pull_error(ndr, NDR_ERR_BAD_SWITCH, "Bad switch value %u at %s", level, __location__);
4652
return NDR_ERR_SUCCESS;
4655
_PUBLIC_ void ndr_print_samr_DispInfo(struct ndr_print *ndr, const char *name, const union samr_DispInfo *r)
4658
level = ndr_print_get_switch_value(ndr, r);
4659
ndr_print_union(ndr, name, level, "samr_DispInfo");
4662
ndr_print_samr_DispInfoGeneral(ndr, "info1", &r->info1);
4666
ndr_print_samr_DispInfoFull(ndr, "info2", &r->info2);
4670
ndr_print_samr_DispInfoFullGroups(ndr, "info3", &r->info3);
4674
ndr_print_samr_DispInfoAscii(ndr, "info4", &r->info4);
4678
ndr_print_samr_DispInfoAscii(ndr, "info5", &r->info5);
4682
ndr_print_bad_level(ndr, name, level);
4686
static enum ndr_err_code ndr_push_samr_PwInfo(struct ndr_push *ndr, int ndr_flags, const struct samr_PwInfo *r)
4688
if (ndr_flags & NDR_SCALARS) {
4689
NDR_CHECK(ndr_push_align(ndr, 4));
4690
NDR_CHECK(ndr_push_uint16(ndr, NDR_SCALARS, r->min_password_length));
4691
NDR_CHECK(ndr_push_samr_PasswordProperties(ndr, NDR_SCALARS, r->password_properties));
4692
NDR_CHECK(ndr_push_trailer_align(ndr, 4));
4694
if (ndr_flags & NDR_BUFFERS) {
4696
return NDR_ERR_SUCCESS;
4699
static enum ndr_err_code ndr_pull_samr_PwInfo(struct ndr_pull *ndr, int ndr_flags, struct samr_PwInfo *r)
4701
if (ndr_flags & NDR_SCALARS) {
4702
NDR_CHECK(ndr_pull_align(ndr, 4));
4703
NDR_CHECK(ndr_pull_uint16(ndr, NDR_SCALARS, &r->min_password_length));
4704
NDR_CHECK(ndr_pull_samr_PasswordProperties(ndr, NDR_SCALARS, &r->password_properties));
4705
NDR_CHECK(ndr_pull_trailer_align(ndr, 4));
4707
if (ndr_flags & NDR_BUFFERS) {
4709
return NDR_ERR_SUCCESS;
4712
_PUBLIC_ void ndr_print_samr_PwInfo(struct ndr_print *ndr, const char *name, const struct samr_PwInfo *r)
4714
ndr_print_struct(ndr, name, "samr_PwInfo");
4715
if (r == NULL) { ndr_print_null(ndr); return; }
4717
ndr_print_uint16(ndr, "min_password_length", r->min_password_length);
4718
ndr_print_samr_PasswordProperties(ndr, "password_properties", r->password_properties);
4722
static enum ndr_err_code ndr_push_samr_ConnectVersion(struct ndr_push *ndr, int ndr_flags, enum samr_ConnectVersion r)
4724
NDR_CHECK(ndr_push_enum_uint32(ndr, NDR_SCALARS, r));
4725
return NDR_ERR_SUCCESS;
4728
static enum ndr_err_code ndr_pull_samr_ConnectVersion(struct ndr_pull *ndr, int ndr_flags, enum samr_ConnectVersion *r)
4731
NDR_CHECK(ndr_pull_enum_uint32(ndr, NDR_SCALARS, &v));
4733
return NDR_ERR_SUCCESS;
4736
_PUBLIC_ void ndr_print_samr_ConnectVersion(struct ndr_print *ndr, const char *name, enum samr_ConnectVersion r)
4738
const char *val = NULL;
4741
case SAMR_CONNECT_PRE_W2K: val = "SAMR_CONNECT_PRE_W2K"; break;
4742
case SAMR_CONNECT_W2K: val = "SAMR_CONNECT_W2K"; break;
4743
case SAMR_CONNECT_AFTER_W2K: val = "SAMR_CONNECT_AFTER_W2K"; break;
4745
ndr_print_enum(ndr, name, "ENUM", val, r);
4748
_PUBLIC_ enum ndr_err_code ndr_push_samPwdChangeReason(struct ndr_push *ndr, int ndr_flags, enum samPwdChangeReason r)
4750
NDR_CHECK(ndr_push_enum_uint32(ndr, NDR_SCALARS, r));
4751
return NDR_ERR_SUCCESS;
4754
_PUBLIC_ enum ndr_err_code ndr_pull_samPwdChangeReason(struct ndr_pull *ndr, int ndr_flags, enum samPwdChangeReason *r)
4757
NDR_CHECK(ndr_pull_enum_uint32(ndr, NDR_SCALARS, &v));
4759
return NDR_ERR_SUCCESS;
4762
_PUBLIC_ void ndr_print_samPwdChangeReason(struct ndr_print *ndr, const char *name, enum samPwdChangeReason r)
4764
const char *val = NULL;
4767
case SAM_PWD_CHANGE_NO_ERROR: val = "SAM_PWD_CHANGE_NO_ERROR"; break;
4768
case SAM_PWD_CHANGE_PASSWORD_TOO_SHORT: val = "SAM_PWD_CHANGE_PASSWORD_TOO_SHORT"; break;
4769
case SAM_PWD_CHANGE_PWD_IN_HISTORY: val = "SAM_PWD_CHANGE_PWD_IN_HISTORY"; break;
4770
case SAM_PWD_CHANGE_USERNAME_IN_PASSWORD: val = "SAM_PWD_CHANGE_USERNAME_IN_PASSWORD"; break;
4771
case SAM_PWD_CHANGE_FULLNAME_IN_PASSWORD: val = "SAM_PWD_CHANGE_FULLNAME_IN_PASSWORD"; break;
4772
case SAM_PWD_CHANGE_NOT_COMPLEX: val = "SAM_PWD_CHANGE_NOT_COMPLEX"; break;
4773
case SAM_PWD_CHANGE_MACHINE_NOT_DEFAULT: val = "SAM_PWD_CHANGE_MACHINE_NOT_DEFAULT"; break;
4774
case SAM_PWD_CHANGE_FAILED_BY_FILTER: val = "SAM_PWD_CHANGE_FAILED_BY_FILTER"; break;
4775
case SAM_PWD_CHANGE_PASSWORD_TOO_LONG: val = "SAM_PWD_CHANGE_PASSWORD_TOO_LONG"; break;
4777
ndr_print_enum(ndr, name, "ENUM", val, r);
4780
static enum ndr_err_code ndr_push_userPwdChangeFailureInformation(struct ndr_push *ndr, int ndr_flags, const struct userPwdChangeFailureInformation *r)
4782
if (ndr_flags & NDR_SCALARS) {
4783
NDR_CHECK(ndr_push_align(ndr, 5));
4784
NDR_CHECK(ndr_push_samPwdChangeReason(ndr, NDR_SCALARS, r->extendedFailureReason));
4785
NDR_CHECK(ndr_push_unique_ptr(ndr, r->filterModuleName));
4786
NDR_CHECK(ndr_push_trailer_align(ndr, 5));
4788
if (ndr_flags & NDR_BUFFERS) {
4789
if (r->filterModuleName) {
4790
NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, ndr_charset_length(r->filterModuleName, CH_UTF16)));
4791
NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, 0));
4792
NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, ndr_charset_length(r->filterModuleName, CH_UTF16)));
4793
NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->filterModuleName, ndr_charset_length(r->filterModuleName, CH_UTF16), sizeof(uint16_t), CH_UTF16));
4796
return NDR_ERR_SUCCESS;
4799
static enum ndr_err_code ndr_pull_userPwdChangeFailureInformation(struct ndr_pull *ndr, int ndr_flags, struct userPwdChangeFailureInformation *r)
4801
uint32_t _ptr_filterModuleName;
4802
TALLOC_CTX *_mem_save_filterModuleName_0;
4803
if (ndr_flags & NDR_SCALARS) {
4804
NDR_CHECK(ndr_pull_align(ndr, 5));
4805
NDR_CHECK(ndr_pull_samPwdChangeReason(ndr, NDR_SCALARS, &r->extendedFailureReason));
4806
NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_filterModuleName));
4807
if (_ptr_filterModuleName) {
4808
NDR_PULL_ALLOC(ndr, r->filterModuleName);
4810
r->filterModuleName = NULL;
4812
NDR_CHECK(ndr_pull_trailer_align(ndr, 5));
4814
if (ndr_flags & NDR_BUFFERS) {
4815
if (r->filterModuleName) {
4816
_mem_save_filterModuleName_0 = NDR_PULL_GET_MEM_CTX(ndr);
4817
NDR_PULL_SET_MEM_CTX(ndr, r->filterModuleName, 0);
4818
NDR_CHECK(ndr_pull_array_size(ndr, &r->filterModuleName));
4819
NDR_CHECK(ndr_pull_array_length(ndr, &r->filterModuleName));
4820
if (ndr_get_array_length(ndr, &r->filterModuleName) > ndr_get_array_size(ndr, &r->filterModuleName)) {
4821
return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", ndr_get_array_size(ndr, &r->filterModuleName), ndr_get_array_length(ndr, &r->filterModuleName));
4823
NDR_CHECK(ndr_check_string_terminator(ndr, ndr_get_array_length(ndr, &r->filterModuleName), sizeof(uint16_t)));
4824
NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->filterModuleName, ndr_get_array_length(ndr, &r->filterModuleName), sizeof(uint16_t), CH_UTF16));
4825
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_filterModuleName_0, 0);
4828
return NDR_ERR_SUCCESS;
4831
_PUBLIC_ void ndr_print_userPwdChangeFailureInformation(struct ndr_print *ndr, const char *name, const struct userPwdChangeFailureInformation *r)
4833
ndr_print_struct(ndr, name, "userPwdChangeFailureInformation");
4834
if (r == NULL) { ndr_print_null(ndr); return; }
4836
ndr_print_samPwdChangeReason(ndr, "extendedFailureReason", r->extendedFailureReason);
4837
ndr_print_ptr(ndr, "filterModuleName", r->filterModuleName);
4839
if (r->filterModuleName) {
4840
ndr_print_string(ndr, "filterModuleName", r->filterModuleName);
4846
static enum ndr_err_code ndr_push_samr_ConnectInfo1(struct ndr_push *ndr, int ndr_flags, const struct samr_ConnectInfo1 *r)
4848
if (ndr_flags & NDR_SCALARS) {
4849
NDR_CHECK(ndr_push_align(ndr, 4));
4850
NDR_CHECK(ndr_push_samr_ConnectVersion(ndr, NDR_SCALARS, r->client_version));
4851
NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->unknown2));
4852
NDR_CHECK(ndr_push_trailer_align(ndr, 4));
4854
if (ndr_flags & NDR_BUFFERS) {
4856
return NDR_ERR_SUCCESS;
4859
static enum ndr_err_code ndr_pull_samr_ConnectInfo1(struct ndr_pull *ndr, int ndr_flags, struct samr_ConnectInfo1 *r)
4861
if (ndr_flags & NDR_SCALARS) {
4862
NDR_CHECK(ndr_pull_align(ndr, 4));
4863
NDR_CHECK(ndr_pull_samr_ConnectVersion(ndr, NDR_SCALARS, &r->client_version));
4864
NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->unknown2));
4865
NDR_CHECK(ndr_pull_trailer_align(ndr, 4));
4867
if (ndr_flags & NDR_BUFFERS) {
4869
return NDR_ERR_SUCCESS;
4872
_PUBLIC_ void ndr_print_samr_ConnectInfo1(struct ndr_print *ndr, const char *name, const struct samr_ConnectInfo1 *r)
4874
ndr_print_struct(ndr, name, "samr_ConnectInfo1");
4875
if (r == NULL) { ndr_print_null(ndr); return; }
4877
ndr_print_samr_ConnectVersion(ndr, "client_version", r->client_version);
4878
ndr_print_uint32(ndr, "unknown2", r->unknown2);
4882
static enum ndr_err_code ndr_push_samr_ConnectInfo(struct ndr_push *ndr, int ndr_flags, const union samr_ConnectInfo *r)
4884
if (ndr_flags & NDR_SCALARS) {
4885
uint32_t level = ndr_push_get_switch_value(ndr, r);
4886
NDR_CHECK(ndr_push_union_align(ndr, 4));
4887
NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, level));
4888
NDR_CHECK(ndr_push_union_align(ndr, 4));
4891
NDR_CHECK(ndr_push_samr_ConnectInfo1(ndr, NDR_SCALARS, &r->info1));
4895
return ndr_push_error(ndr, NDR_ERR_BAD_SWITCH, "Bad switch value %u at %s", level, __location__);
4898
if (ndr_flags & NDR_BUFFERS) {
4899
uint32_t level = ndr_push_get_switch_value(ndr, r);
4905
return ndr_push_error(ndr, NDR_ERR_BAD_SWITCH, "Bad switch value %u at %s", level, __location__);
4908
return NDR_ERR_SUCCESS;
4911
static enum ndr_err_code ndr_pull_samr_ConnectInfo(struct ndr_pull *ndr, int ndr_flags, union samr_ConnectInfo *r)
4915
level = ndr_pull_get_switch_value(ndr, r);
4916
if (ndr_flags & NDR_SCALARS) {
4917
NDR_CHECK(ndr_pull_union_align(ndr, 4));
4918
NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &_level));
4919
if (_level != level) {
4920
return ndr_pull_error(ndr, NDR_ERR_BAD_SWITCH, "Bad switch value %u for r at %s", _level, __location__);
4922
NDR_CHECK(ndr_pull_union_align(ndr, 4));
4925
NDR_CHECK(ndr_pull_samr_ConnectInfo1(ndr, NDR_SCALARS, &r->info1));
4929
return ndr_pull_error(ndr, NDR_ERR_BAD_SWITCH, "Bad switch value %u at %s", level, __location__);
4932
if (ndr_flags & NDR_BUFFERS) {
4938
return ndr_pull_error(ndr, NDR_ERR_BAD_SWITCH, "Bad switch value %u at %s", level, __location__);
4941
return NDR_ERR_SUCCESS;
4944
_PUBLIC_ void ndr_print_samr_ConnectInfo(struct ndr_print *ndr, const char *name, const union samr_ConnectInfo *r)
4947
level = ndr_print_get_switch_value(ndr, r);
4948
ndr_print_union(ndr, name, level, "samr_ConnectInfo");
4951
ndr_print_samr_ConnectInfo1(ndr, "info1", &r->info1);
4955
ndr_print_bad_level(ndr, name, level);
4959
static enum ndr_err_code ndr_push_samr_ValidateFieldsPresent(struct ndr_push *ndr, int ndr_flags, uint32_t r)
4961
NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r));
4962
return NDR_ERR_SUCCESS;
4965
static enum ndr_err_code ndr_pull_samr_ValidateFieldsPresent(struct ndr_pull *ndr, int ndr_flags, uint32_t *r)
4968
NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &v));
4970
return NDR_ERR_SUCCESS;
4973
_PUBLIC_ void ndr_print_samr_ValidateFieldsPresent(struct ndr_print *ndr, const char *name, uint32_t r)
4975
ndr_print_uint32(ndr, name, r);
4977
ndr_print_bitmap_flag(ndr, sizeof(uint32_t), "SAMR_VALIDATE_FIELD_PASSWORD_LAST_SET", SAMR_VALIDATE_FIELD_PASSWORD_LAST_SET, r);
4978
ndr_print_bitmap_flag(ndr, sizeof(uint32_t), "SAMR_VALIDATE_FIELD_BAD_PASSWORD_TIME", SAMR_VALIDATE_FIELD_BAD_PASSWORD_TIME, r);
4979
ndr_print_bitmap_flag(ndr, sizeof(uint32_t), "SAMR_VALIDATE_FIELD_LOCKOUT_TIME", SAMR_VALIDATE_FIELD_LOCKOUT_TIME, r);
4980
ndr_print_bitmap_flag(ndr, sizeof(uint32_t), "SAMR_VALIDATE_FIELD_BAD_PASSWORD_COUNT", SAMR_VALIDATE_FIELD_BAD_PASSWORD_COUNT, r);
4981
ndr_print_bitmap_flag(ndr, sizeof(uint32_t), "SAMR_VALIDATE_FIELD_PASSWORD_HISTORY_LENGTH", SAMR_VALIDATE_FIELD_PASSWORD_HISTORY_LENGTH, r);
4982
ndr_print_bitmap_flag(ndr, sizeof(uint32_t), "SAMR_VALIDATE_FIELD_PASSWORD_HISTORY", SAMR_VALIDATE_FIELD_PASSWORD_HISTORY, r);
4986
static enum ndr_err_code ndr_push_samr_ValidatePasswordLevel(struct ndr_push *ndr, int ndr_flags, enum samr_ValidatePasswordLevel r)
4988
NDR_CHECK(ndr_push_enum_uint1632(ndr, NDR_SCALARS, r));
4989
return NDR_ERR_SUCCESS;
4992
static enum ndr_err_code ndr_pull_samr_ValidatePasswordLevel(struct ndr_pull *ndr, int ndr_flags, enum samr_ValidatePasswordLevel *r)
4995
NDR_CHECK(ndr_pull_enum_uint1632(ndr, NDR_SCALARS, &v));
4997
return NDR_ERR_SUCCESS;
5000
_PUBLIC_ void ndr_print_samr_ValidatePasswordLevel(struct ndr_print *ndr, const char *name, enum samr_ValidatePasswordLevel r)
5002
const char *val = NULL;
5005
case NetValidateAuthentication: val = "NetValidateAuthentication"; break;
5006
case NetValidatePasswordChange: val = "NetValidatePasswordChange"; break;
5007
case NetValidatePasswordReset: val = "NetValidatePasswordReset"; break;
5009
ndr_print_enum(ndr, name, "ENUM", val, r);
5012
static enum ndr_err_code ndr_push_samr_ValidationStatus(struct ndr_push *ndr, int ndr_flags, enum samr_ValidationStatus r)
5014
NDR_CHECK(ndr_push_enum_uint1632(ndr, NDR_SCALARS, r));
5015
return NDR_ERR_SUCCESS;
5018
static enum ndr_err_code ndr_pull_samr_ValidationStatus(struct ndr_pull *ndr, int ndr_flags, enum samr_ValidationStatus *r)
5021
NDR_CHECK(ndr_pull_enum_uint1632(ndr, NDR_SCALARS, &v));
5023
return NDR_ERR_SUCCESS;
5026
_PUBLIC_ void ndr_print_samr_ValidationStatus(struct ndr_print *ndr, const char *name, enum samr_ValidationStatus r)
5028
const char *val = NULL;
5031
case SAMR_VALIDATION_STATUS_SUCCESS: val = "SAMR_VALIDATION_STATUS_SUCCESS"; break;
5032
case SAMR_VALIDATION_STATUS_PASSWORD_MUST_CHANGE: val = "SAMR_VALIDATION_STATUS_PASSWORD_MUST_CHANGE"; break;
5033
case SAMR_VALIDATION_STATUS_ACCOUNT_LOCKED_OUT: val = "SAMR_VALIDATION_STATUS_ACCOUNT_LOCKED_OUT"; break;
5034
case SAMR_VALIDATION_STATUS_PASSWORD_EXPIRED: val = "SAMR_VALIDATION_STATUS_PASSWORD_EXPIRED"; break;
5035
case SAMR_VALIDATION_STATUS_BAD_PASSWORD: val = "SAMR_VALIDATION_STATUS_BAD_PASSWORD"; break;
5036
case SAMR_VALIDATION_STATUS_PWD_HISTORY_CONFLICT: val = "SAMR_VALIDATION_STATUS_PWD_HISTORY_CONFLICT"; break;
5037
case SAMR_VALIDATION_STATUS_PWD_TOO_SHORT: val = "SAMR_VALIDATION_STATUS_PWD_TOO_SHORT"; break;
5038
case SAMR_VALIDATION_STATUS_PWD_TOO_LONG: val = "SAMR_VALIDATION_STATUS_PWD_TOO_LONG"; break;
5039
case SAMR_VALIDATION_STATUS_NOT_COMPLEX_ENOUGH: val = "SAMR_VALIDATION_STATUS_NOT_COMPLEX_ENOUGH"; break;
5040
case SAMR_VALIDATION_STATUS_PASSWORD_TOO_RECENT: val = "SAMR_VALIDATION_STATUS_PASSWORD_TOO_RECENT"; break;
5041
case SAMR_VALIDATION_STATUS_PASSWORD_FILTER_ERROR: val = "SAMR_VALIDATION_STATUS_PASSWORD_FILTER_ERROR"; break;
5043
ndr_print_enum(ndr, name, "ENUM", val, r);
5046
static enum ndr_err_code ndr_push_samr_ValidationBlob(struct ndr_push *ndr, int ndr_flags, const struct samr_ValidationBlob *r)
5048
if (ndr_flags & NDR_SCALARS) {
5049
NDR_CHECK(ndr_push_align(ndr, 5));
5050
NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->length));
5051
NDR_CHECK(ndr_push_unique_ptr(ndr, r->data));
5052
NDR_CHECK(ndr_push_trailer_align(ndr, 5));
5054
if (ndr_flags & NDR_BUFFERS) {
5056
NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, r->length));
5057
NDR_CHECK(ndr_push_array_uint8(ndr, NDR_SCALARS, r->data, r->length));
5060
return NDR_ERR_SUCCESS;
5063
static enum ndr_err_code ndr_pull_samr_ValidationBlob(struct ndr_pull *ndr, int ndr_flags, struct samr_ValidationBlob *r)
5066
TALLOC_CTX *_mem_save_data_0;
5067
if (ndr_flags & NDR_SCALARS) {
5068
NDR_CHECK(ndr_pull_align(ndr, 5));
5069
NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->length));
5070
NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_data));
5072
NDR_PULL_ALLOC(ndr, r->data);
5076
NDR_CHECK(ndr_pull_trailer_align(ndr, 5));
5078
if (ndr_flags & NDR_BUFFERS) {
5080
_mem_save_data_0 = NDR_PULL_GET_MEM_CTX(ndr);
5081
NDR_PULL_SET_MEM_CTX(ndr, r->data, 0);
5082
NDR_CHECK(ndr_pull_array_size(ndr, &r->data));
5083
NDR_PULL_ALLOC_N(ndr, r->data, ndr_get_array_size(ndr, &r->data));
5084
NDR_CHECK(ndr_pull_array_uint8(ndr, NDR_SCALARS, r->data, ndr_get_array_size(ndr, &r->data)));
5085
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_data_0, 0);
5088
NDR_CHECK(ndr_check_array_size(ndr, (void*)&r->data, r->length));
5091
return NDR_ERR_SUCCESS;
5094
_PUBLIC_ void ndr_print_samr_ValidationBlob(struct ndr_print *ndr, const char *name, const struct samr_ValidationBlob *r)
5096
ndr_print_struct(ndr, name, "samr_ValidationBlob");
5097
if (r == NULL) { ndr_print_null(ndr); return; }
5099
ndr_print_uint32(ndr, "length", r->length);
5100
ndr_print_ptr(ndr, "data", r->data);
5103
ndr_print_array_uint8(ndr, "data", r->data, r->length);
5109
static enum ndr_err_code ndr_push_samr_ValidatePasswordInfo(struct ndr_push *ndr, int ndr_flags, const struct samr_ValidatePasswordInfo *r)
5111
uint32_t cntr_pwd_history_1;
5112
if (ndr_flags & NDR_SCALARS) {
5113
NDR_CHECK(ndr_push_align(ndr, 8));
5114
NDR_CHECK(ndr_push_samr_ValidateFieldsPresent(ndr, NDR_SCALARS, r->fields_present));
5115
NDR_CHECK(ndr_push_NTTIME_hyper(ndr, NDR_SCALARS, r->last_password_change));
5116
NDR_CHECK(ndr_push_NTTIME_hyper(ndr, NDR_SCALARS, r->bad_password_time));
5117
NDR_CHECK(ndr_push_NTTIME_hyper(ndr, NDR_SCALARS, r->lockout_time));
5118
NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->bad_pwd_count));
5119
NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->pwd_history_len));
5120
NDR_CHECK(ndr_push_unique_ptr(ndr, r->pwd_history));
5121
NDR_CHECK(ndr_push_trailer_align(ndr, 8));
5123
if (ndr_flags & NDR_BUFFERS) {
5124
if (r->pwd_history) {
5125
NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, r->pwd_history_len));
5126
for (cntr_pwd_history_1 = 0; cntr_pwd_history_1 < r->pwd_history_len; cntr_pwd_history_1++) {
5127
NDR_CHECK(ndr_push_samr_ValidationBlob(ndr, NDR_SCALARS, &r->pwd_history[cntr_pwd_history_1]));
5129
for (cntr_pwd_history_1 = 0; cntr_pwd_history_1 < r->pwd_history_len; cntr_pwd_history_1++) {
5130
NDR_CHECK(ndr_push_samr_ValidationBlob(ndr, NDR_BUFFERS, &r->pwd_history[cntr_pwd_history_1]));
5134
return NDR_ERR_SUCCESS;
5137
static enum ndr_err_code ndr_pull_samr_ValidatePasswordInfo(struct ndr_pull *ndr, int ndr_flags, struct samr_ValidatePasswordInfo *r)
5139
uint32_t _ptr_pwd_history;
5140
uint32_t cntr_pwd_history_1;
5141
TALLOC_CTX *_mem_save_pwd_history_0;
5142
TALLOC_CTX *_mem_save_pwd_history_1;
5143
if (ndr_flags & NDR_SCALARS) {
5144
NDR_CHECK(ndr_pull_align(ndr, 8));
5145
NDR_CHECK(ndr_pull_samr_ValidateFieldsPresent(ndr, NDR_SCALARS, &r->fields_present));
5146
NDR_CHECK(ndr_pull_NTTIME_hyper(ndr, NDR_SCALARS, &r->last_password_change));
5147
NDR_CHECK(ndr_pull_NTTIME_hyper(ndr, NDR_SCALARS, &r->bad_password_time));
5148
NDR_CHECK(ndr_pull_NTTIME_hyper(ndr, NDR_SCALARS, &r->lockout_time));
5149
NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->bad_pwd_count));
5150
NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->pwd_history_len));
5151
NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_pwd_history));
5152
if (_ptr_pwd_history) {
5153
NDR_PULL_ALLOC(ndr, r->pwd_history);
5155
r->pwd_history = NULL;
5157
NDR_CHECK(ndr_pull_trailer_align(ndr, 8));
5159
if (ndr_flags & NDR_BUFFERS) {
5160
if (r->pwd_history) {
5161
_mem_save_pwd_history_0 = NDR_PULL_GET_MEM_CTX(ndr);
5162
NDR_PULL_SET_MEM_CTX(ndr, r->pwd_history, 0);
5163
NDR_CHECK(ndr_pull_array_size(ndr, &r->pwd_history));
5164
NDR_PULL_ALLOC_N(ndr, r->pwd_history, ndr_get_array_size(ndr, &r->pwd_history));
5165
_mem_save_pwd_history_1 = NDR_PULL_GET_MEM_CTX(ndr);
5166
NDR_PULL_SET_MEM_CTX(ndr, r->pwd_history, 0);
5167
for (cntr_pwd_history_1 = 0; cntr_pwd_history_1 < r->pwd_history_len; cntr_pwd_history_1++) {
5168
NDR_CHECK(ndr_pull_samr_ValidationBlob(ndr, NDR_SCALARS, &r->pwd_history[cntr_pwd_history_1]));
5170
for (cntr_pwd_history_1 = 0; cntr_pwd_history_1 < r->pwd_history_len; cntr_pwd_history_1++) {
5171
NDR_CHECK(ndr_pull_samr_ValidationBlob(ndr, NDR_BUFFERS, &r->pwd_history[cntr_pwd_history_1]));
5173
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_pwd_history_1, 0);
5174
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_pwd_history_0, 0);
5176
if (r->pwd_history) {
5177
NDR_CHECK(ndr_check_array_size(ndr, (void*)&r->pwd_history, r->pwd_history_len));
5180
return NDR_ERR_SUCCESS;
5183
_PUBLIC_ void ndr_print_samr_ValidatePasswordInfo(struct ndr_print *ndr, const char *name, const struct samr_ValidatePasswordInfo *r)
5185
uint32_t cntr_pwd_history_1;
5186
ndr_print_struct(ndr, name, "samr_ValidatePasswordInfo");
5187
if (r == NULL) { ndr_print_null(ndr); return; }
5189
ndr_print_samr_ValidateFieldsPresent(ndr, "fields_present", r->fields_present);
5190
ndr_print_NTTIME_hyper(ndr, "last_password_change", r->last_password_change);
5191
ndr_print_NTTIME_hyper(ndr, "bad_password_time", r->bad_password_time);
5192
ndr_print_NTTIME_hyper(ndr, "lockout_time", r->lockout_time);
5193
ndr_print_uint32(ndr, "bad_pwd_count", r->bad_pwd_count);
5194
ndr_print_uint32(ndr, "pwd_history_len", r->pwd_history_len);
5195
ndr_print_ptr(ndr, "pwd_history", r->pwd_history);
5197
if (r->pwd_history) {
5198
ndr->print(ndr, "%s: ARRAY(%d)", "pwd_history", (int)r->pwd_history_len);
5200
for (cntr_pwd_history_1=0;cntr_pwd_history_1<r->pwd_history_len;cntr_pwd_history_1++) {
5201
ndr_print_samr_ValidationBlob(ndr, "pwd_history", &r->pwd_history[cntr_pwd_history_1]);
5209
static enum ndr_err_code ndr_push_samr_ValidatePasswordRepCtr(struct ndr_push *ndr, int ndr_flags, const struct samr_ValidatePasswordRepCtr *r)
5211
if (ndr_flags & NDR_SCALARS) {
5212
NDR_CHECK(ndr_push_align(ndr, 8));
5213
NDR_CHECK(ndr_push_samr_ValidatePasswordInfo(ndr, NDR_SCALARS, &r->info));
5214
NDR_CHECK(ndr_push_samr_ValidationStatus(ndr, NDR_SCALARS, r->status));
5215
NDR_CHECK(ndr_push_trailer_align(ndr, 8));
5217
if (ndr_flags & NDR_BUFFERS) {
5218
NDR_CHECK(ndr_push_samr_ValidatePasswordInfo(ndr, NDR_BUFFERS, &r->info));
5220
return NDR_ERR_SUCCESS;
5223
static enum ndr_err_code ndr_pull_samr_ValidatePasswordRepCtr(struct ndr_pull *ndr, int ndr_flags, struct samr_ValidatePasswordRepCtr *r)
5225
if (ndr_flags & NDR_SCALARS) {
5226
NDR_CHECK(ndr_pull_align(ndr, 8));
5227
NDR_CHECK(ndr_pull_samr_ValidatePasswordInfo(ndr, NDR_SCALARS, &r->info));
5228
NDR_CHECK(ndr_pull_samr_ValidationStatus(ndr, NDR_SCALARS, &r->status));
5229
NDR_CHECK(ndr_pull_trailer_align(ndr, 8));
5231
if (ndr_flags & NDR_BUFFERS) {
5232
NDR_CHECK(ndr_pull_samr_ValidatePasswordInfo(ndr, NDR_BUFFERS, &r->info));
5234
return NDR_ERR_SUCCESS;
5237
_PUBLIC_ void ndr_print_samr_ValidatePasswordRepCtr(struct ndr_print *ndr, const char *name, const struct samr_ValidatePasswordRepCtr *r)
5239
ndr_print_struct(ndr, name, "samr_ValidatePasswordRepCtr");
5240
if (r == NULL) { ndr_print_null(ndr); return; }
5242
ndr_print_samr_ValidatePasswordInfo(ndr, "info", &r->info);
5243
ndr_print_samr_ValidationStatus(ndr, "status", r->status);
5247
static enum ndr_err_code ndr_push_samr_ValidatePasswordRep(struct ndr_push *ndr, int ndr_flags, const union samr_ValidatePasswordRep *r)
5249
if (ndr_flags & NDR_SCALARS) {
5250
uint32_t level = ndr_push_get_switch_value(ndr, r);
5251
NDR_CHECK(ndr_push_union_align(ndr, 8));
5252
NDR_CHECK(ndr_push_uint16(ndr, NDR_SCALARS, level));
5253
NDR_CHECK(ndr_push_union_align(ndr, 8));
5256
NDR_CHECK(ndr_push_samr_ValidatePasswordRepCtr(ndr, NDR_SCALARS, &r->ctr1));
5260
NDR_CHECK(ndr_push_samr_ValidatePasswordRepCtr(ndr, NDR_SCALARS, &r->ctr2));
5264
NDR_CHECK(ndr_push_samr_ValidatePasswordRepCtr(ndr, NDR_SCALARS, &r->ctr3));
5268
return ndr_push_error(ndr, NDR_ERR_BAD_SWITCH, "Bad switch value %u at %s", level, __location__);
5271
if (ndr_flags & NDR_BUFFERS) {
5272
uint32_t level = ndr_push_get_switch_value(ndr, r);
5275
NDR_CHECK(ndr_push_samr_ValidatePasswordRepCtr(ndr, NDR_BUFFERS, &r->ctr1));
5279
NDR_CHECK(ndr_push_samr_ValidatePasswordRepCtr(ndr, NDR_BUFFERS, &r->ctr2));
5283
NDR_CHECK(ndr_push_samr_ValidatePasswordRepCtr(ndr, NDR_BUFFERS, &r->ctr3));
5287
return ndr_push_error(ndr, NDR_ERR_BAD_SWITCH, "Bad switch value %u at %s", level, __location__);
5290
return NDR_ERR_SUCCESS;
5293
static enum ndr_err_code ndr_pull_samr_ValidatePasswordRep(struct ndr_pull *ndr, int ndr_flags, union samr_ValidatePasswordRep *r)
5297
level = ndr_pull_get_switch_value(ndr, r);
5298
if (ndr_flags & NDR_SCALARS) {
5299
NDR_CHECK(ndr_pull_union_align(ndr, 8));
5300
NDR_CHECK(ndr_pull_uint16(ndr, NDR_SCALARS, &_level));
5301
if (_level != level) {
5302
return ndr_pull_error(ndr, NDR_ERR_BAD_SWITCH, "Bad switch value %u for r at %s", _level, __location__);
5304
NDR_CHECK(ndr_pull_union_align(ndr, 8));
5307
NDR_CHECK(ndr_pull_samr_ValidatePasswordRepCtr(ndr, NDR_SCALARS, &r->ctr1));
5311
NDR_CHECK(ndr_pull_samr_ValidatePasswordRepCtr(ndr, NDR_SCALARS, &r->ctr2));
5315
NDR_CHECK(ndr_pull_samr_ValidatePasswordRepCtr(ndr, NDR_SCALARS, &r->ctr3));
5319
return ndr_pull_error(ndr, NDR_ERR_BAD_SWITCH, "Bad switch value %u at %s", level, __location__);
5322
if (ndr_flags & NDR_BUFFERS) {
5325
NDR_CHECK(ndr_pull_samr_ValidatePasswordRepCtr(ndr, NDR_BUFFERS, &r->ctr1));
5329
NDR_CHECK(ndr_pull_samr_ValidatePasswordRepCtr(ndr, NDR_BUFFERS, &r->ctr2));
5333
NDR_CHECK(ndr_pull_samr_ValidatePasswordRepCtr(ndr, NDR_BUFFERS, &r->ctr3));
5337
return ndr_pull_error(ndr, NDR_ERR_BAD_SWITCH, "Bad switch value %u at %s", level, __location__);
5340
return NDR_ERR_SUCCESS;
5343
_PUBLIC_ void ndr_print_samr_ValidatePasswordRep(struct ndr_print *ndr, const char *name, const union samr_ValidatePasswordRep *r)
5346
level = ndr_print_get_switch_value(ndr, r);
5347
ndr_print_union(ndr, name, level, "samr_ValidatePasswordRep");
5350
ndr_print_samr_ValidatePasswordRepCtr(ndr, "ctr1", &r->ctr1);
5354
ndr_print_samr_ValidatePasswordRepCtr(ndr, "ctr2", &r->ctr2);
5358
ndr_print_samr_ValidatePasswordRepCtr(ndr, "ctr3", &r->ctr3);
5362
ndr_print_bad_level(ndr, name, level);
5366
static enum ndr_err_code ndr_push_samr_ValidatePasswordReq3(struct ndr_push *ndr, int ndr_flags, const struct samr_ValidatePasswordReq3 *r)
5368
if (ndr_flags & NDR_SCALARS) {
5369
NDR_CHECK(ndr_push_align(ndr, 8));
5370
NDR_CHECK(ndr_push_samr_ValidatePasswordInfo(ndr, NDR_SCALARS, &r->info));
5371
NDR_CHECK(ndr_push_lsa_StringLarge(ndr, NDR_SCALARS, &r->password));
5372
NDR_CHECK(ndr_push_lsa_StringLarge(ndr, NDR_SCALARS, &r->account));
5373
NDR_CHECK(ndr_push_samr_ValidationBlob(ndr, NDR_SCALARS, &r->hash));
5374
NDR_CHECK(ndr_push_uint8(ndr, NDR_SCALARS, r->pwd_must_change_at_next_logon));
5375
NDR_CHECK(ndr_push_uint8(ndr, NDR_SCALARS, r->clear_lockout));
5376
NDR_CHECK(ndr_push_trailer_align(ndr, 8));
5378
if (ndr_flags & NDR_BUFFERS) {
5379
NDR_CHECK(ndr_push_samr_ValidatePasswordInfo(ndr, NDR_BUFFERS, &r->info));
5380
NDR_CHECK(ndr_push_lsa_StringLarge(ndr, NDR_BUFFERS, &r->password));
5381
NDR_CHECK(ndr_push_lsa_StringLarge(ndr, NDR_BUFFERS, &r->account));
5382
NDR_CHECK(ndr_push_samr_ValidationBlob(ndr, NDR_BUFFERS, &r->hash));
5384
return NDR_ERR_SUCCESS;
5387
static enum ndr_err_code ndr_pull_samr_ValidatePasswordReq3(struct ndr_pull *ndr, int ndr_flags, struct samr_ValidatePasswordReq3 *r)
5389
if (ndr_flags & NDR_SCALARS) {
5390
NDR_CHECK(ndr_pull_align(ndr, 8));
5391
NDR_CHECK(ndr_pull_samr_ValidatePasswordInfo(ndr, NDR_SCALARS, &r->info));
5392
NDR_CHECK(ndr_pull_lsa_StringLarge(ndr, NDR_SCALARS, &r->password));
5393
NDR_CHECK(ndr_pull_lsa_StringLarge(ndr, NDR_SCALARS, &r->account));
5394
NDR_CHECK(ndr_pull_samr_ValidationBlob(ndr, NDR_SCALARS, &r->hash));
5395
NDR_CHECK(ndr_pull_uint8(ndr, NDR_SCALARS, &r->pwd_must_change_at_next_logon));
5396
NDR_CHECK(ndr_pull_uint8(ndr, NDR_SCALARS, &r->clear_lockout));
5397
NDR_CHECK(ndr_pull_trailer_align(ndr, 8));
5399
if (ndr_flags & NDR_BUFFERS) {
5400
NDR_CHECK(ndr_pull_samr_ValidatePasswordInfo(ndr, NDR_BUFFERS, &r->info));
5401
NDR_CHECK(ndr_pull_lsa_StringLarge(ndr, NDR_BUFFERS, &r->password));
5402
NDR_CHECK(ndr_pull_lsa_StringLarge(ndr, NDR_BUFFERS, &r->account));
5403
NDR_CHECK(ndr_pull_samr_ValidationBlob(ndr, NDR_BUFFERS, &r->hash));
5405
return NDR_ERR_SUCCESS;
5408
_PUBLIC_ void ndr_print_samr_ValidatePasswordReq3(struct ndr_print *ndr, const char *name, const struct samr_ValidatePasswordReq3 *r)
5410
ndr_print_struct(ndr, name, "samr_ValidatePasswordReq3");
5411
if (r == NULL) { ndr_print_null(ndr); return; }
5413
ndr_print_samr_ValidatePasswordInfo(ndr, "info", &r->info);
5414
ndr_print_lsa_StringLarge(ndr, "password", &r->password);
5415
ndr_print_lsa_StringLarge(ndr, "account", &r->account);
5416
ndr_print_samr_ValidationBlob(ndr, "hash", &r->hash);
5417
ndr_print_uint8(ndr, "pwd_must_change_at_next_logon", r->pwd_must_change_at_next_logon);
5418
ndr_print_uint8(ndr, "clear_lockout", r->clear_lockout);
5422
static enum ndr_err_code ndr_push_samr_ValidatePasswordReq2(struct ndr_push *ndr, int ndr_flags, const struct samr_ValidatePasswordReq2 *r)
5424
if (ndr_flags & NDR_SCALARS) {
5425
NDR_CHECK(ndr_push_align(ndr, 8));
5426
NDR_CHECK(ndr_push_samr_ValidatePasswordInfo(ndr, NDR_SCALARS, &r->info));
5427
NDR_CHECK(ndr_push_lsa_StringLarge(ndr, NDR_SCALARS, &r->password));
5428
NDR_CHECK(ndr_push_lsa_StringLarge(ndr, NDR_SCALARS, &r->account));
5429
NDR_CHECK(ndr_push_samr_ValidationBlob(ndr, NDR_SCALARS, &r->hash));
5430
NDR_CHECK(ndr_push_uint8(ndr, NDR_SCALARS, r->password_matched));
5431
NDR_CHECK(ndr_push_trailer_align(ndr, 8));
5433
if (ndr_flags & NDR_BUFFERS) {
5434
NDR_CHECK(ndr_push_samr_ValidatePasswordInfo(ndr, NDR_BUFFERS, &r->info));
5435
NDR_CHECK(ndr_push_lsa_StringLarge(ndr, NDR_BUFFERS, &r->password));
5436
NDR_CHECK(ndr_push_lsa_StringLarge(ndr, NDR_BUFFERS, &r->account));
5437
NDR_CHECK(ndr_push_samr_ValidationBlob(ndr, NDR_BUFFERS, &r->hash));
5439
return NDR_ERR_SUCCESS;
5442
static enum ndr_err_code ndr_pull_samr_ValidatePasswordReq2(struct ndr_pull *ndr, int ndr_flags, struct samr_ValidatePasswordReq2 *r)
5444
if (ndr_flags & NDR_SCALARS) {
5445
NDR_CHECK(ndr_pull_align(ndr, 8));
5446
NDR_CHECK(ndr_pull_samr_ValidatePasswordInfo(ndr, NDR_SCALARS, &r->info));
5447
NDR_CHECK(ndr_pull_lsa_StringLarge(ndr, NDR_SCALARS, &r->password));
5448
NDR_CHECK(ndr_pull_lsa_StringLarge(ndr, NDR_SCALARS, &r->account));
5449
NDR_CHECK(ndr_pull_samr_ValidationBlob(ndr, NDR_SCALARS, &r->hash));
5450
NDR_CHECK(ndr_pull_uint8(ndr, NDR_SCALARS, &r->password_matched));
5451
NDR_CHECK(ndr_pull_trailer_align(ndr, 8));
5453
if (ndr_flags & NDR_BUFFERS) {
5454
NDR_CHECK(ndr_pull_samr_ValidatePasswordInfo(ndr, NDR_BUFFERS, &r->info));
5455
NDR_CHECK(ndr_pull_lsa_StringLarge(ndr, NDR_BUFFERS, &r->password));
5456
NDR_CHECK(ndr_pull_lsa_StringLarge(ndr, NDR_BUFFERS, &r->account));
5457
NDR_CHECK(ndr_pull_samr_ValidationBlob(ndr, NDR_BUFFERS, &r->hash));
5459
return NDR_ERR_SUCCESS;
5462
_PUBLIC_ void ndr_print_samr_ValidatePasswordReq2(struct ndr_print *ndr, const char *name, const struct samr_ValidatePasswordReq2 *r)
5464
ndr_print_struct(ndr, name, "samr_ValidatePasswordReq2");
5465
if (r == NULL) { ndr_print_null(ndr); return; }
5467
ndr_print_samr_ValidatePasswordInfo(ndr, "info", &r->info);
5468
ndr_print_lsa_StringLarge(ndr, "password", &r->password);
5469
ndr_print_lsa_StringLarge(ndr, "account", &r->account);
5470
ndr_print_samr_ValidationBlob(ndr, "hash", &r->hash);
5471
ndr_print_uint8(ndr, "password_matched", r->password_matched);
5475
static enum ndr_err_code ndr_push_samr_ValidatePasswordReq1(struct ndr_push *ndr, int ndr_flags, const struct samr_ValidatePasswordReq1 *r)
5477
if (ndr_flags & NDR_SCALARS) {
5478
NDR_CHECK(ndr_push_align(ndr, 8));
5479
NDR_CHECK(ndr_push_samr_ValidatePasswordInfo(ndr, NDR_SCALARS, &r->info));
5480
NDR_CHECK(ndr_push_uint8(ndr, NDR_SCALARS, r->password_matched));
5481
NDR_CHECK(ndr_push_trailer_align(ndr, 8));
5483
if (ndr_flags & NDR_BUFFERS) {
5484
NDR_CHECK(ndr_push_samr_ValidatePasswordInfo(ndr, NDR_BUFFERS, &r->info));
5486
return NDR_ERR_SUCCESS;
5489
static enum ndr_err_code ndr_pull_samr_ValidatePasswordReq1(struct ndr_pull *ndr, int ndr_flags, struct samr_ValidatePasswordReq1 *r)
5491
if (ndr_flags & NDR_SCALARS) {
5492
NDR_CHECK(ndr_pull_align(ndr, 8));
5493
NDR_CHECK(ndr_pull_samr_ValidatePasswordInfo(ndr, NDR_SCALARS, &r->info));
5494
NDR_CHECK(ndr_pull_uint8(ndr, NDR_SCALARS, &r->password_matched));
5495
NDR_CHECK(ndr_pull_trailer_align(ndr, 8));
5497
if (ndr_flags & NDR_BUFFERS) {
5498
NDR_CHECK(ndr_pull_samr_ValidatePasswordInfo(ndr, NDR_BUFFERS, &r->info));
5500
return NDR_ERR_SUCCESS;
5503
_PUBLIC_ void ndr_print_samr_ValidatePasswordReq1(struct ndr_print *ndr, const char *name, const struct samr_ValidatePasswordReq1 *r)
5505
ndr_print_struct(ndr, name, "samr_ValidatePasswordReq1");
5506
if (r == NULL) { ndr_print_null(ndr); return; }
5508
ndr_print_samr_ValidatePasswordInfo(ndr, "info", &r->info);
5509
ndr_print_uint8(ndr, "password_matched", r->password_matched);
5513
static enum ndr_err_code ndr_push_samr_ValidatePasswordReq(struct ndr_push *ndr, int ndr_flags, const union samr_ValidatePasswordReq *r)
5515
if (ndr_flags & NDR_SCALARS) {
5516
uint32_t level = ndr_push_get_switch_value(ndr, r);
5517
NDR_CHECK(ndr_push_union_align(ndr, 8));
5518
NDR_CHECK(ndr_push_uint16(ndr, NDR_SCALARS, level));
5519
NDR_CHECK(ndr_push_union_align(ndr, 8));
5522
NDR_CHECK(ndr_push_samr_ValidatePasswordReq1(ndr, NDR_SCALARS, &r->req1));
5526
NDR_CHECK(ndr_push_samr_ValidatePasswordReq2(ndr, NDR_SCALARS, &r->req2));
5530
NDR_CHECK(ndr_push_samr_ValidatePasswordReq3(ndr, NDR_SCALARS, &r->req3));
5534
return ndr_push_error(ndr, NDR_ERR_BAD_SWITCH, "Bad switch value %u at %s", level, __location__);
5537
if (ndr_flags & NDR_BUFFERS) {
5538
uint32_t level = ndr_push_get_switch_value(ndr, r);
5541
NDR_CHECK(ndr_push_samr_ValidatePasswordReq1(ndr, NDR_BUFFERS, &r->req1));
5545
NDR_CHECK(ndr_push_samr_ValidatePasswordReq2(ndr, NDR_BUFFERS, &r->req2));
5549
NDR_CHECK(ndr_push_samr_ValidatePasswordReq3(ndr, NDR_BUFFERS, &r->req3));
5553
return ndr_push_error(ndr, NDR_ERR_BAD_SWITCH, "Bad switch value %u at %s", level, __location__);
5556
return NDR_ERR_SUCCESS;
5559
static enum ndr_err_code ndr_pull_samr_ValidatePasswordReq(struct ndr_pull *ndr, int ndr_flags, union samr_ValidatePasswordReq *r)
5563
level = ndr_pull_get_switch_value(ndr, r);
5564
if (ndr_flags & NDR_SCALARS) {
5565
NDR_CHECK(ndr_pull_union_align(ndr, 8));
5566
NDR_CHECK(ndr_pull_uint16(ndr, NDR_SCALARS, &_level));
5567
if (_level != level) {
5568
return ndr_pull_error(ndr, NDR_ERR_BAD_SWITCH, "Bad switch value %u for r at %s", _level, __location__);
5570
NDR_CHECK(ndr_pull_union_align(ndr, 8));
5573
NDR_CHECK(ndr_pull_samr_ValidatePasswordReq1(ndr, NDR_SCALARS, &r->req1));
5577
NDR_CHECK(ndr_pull_samr_ValidatePasswordReq2(ndr, NDR_SCALARS, &r->req2));
5581
NDR_CHECK(ndr_pull_samr_ValidatePasswordReq3(ndr, NDR_SCALARS, &r->req3));
5585
return ndr_pull_error(ndr, NDR_ERR_BAD_SWITCH, "Bad switch value %u at %s", level, __location__);
5588
if (ndr_flags & NDR_BUFFERS) {
5591
NDR_CHECK(ndr_pull_samr_ValidatePasswordReq1(ndr, NDR_BUFFERS, &r->req1));
5595
NDR_CHECK(ndr_pull_samr_ValidatePasswordReq2(ndr, NDR_BUFFERS, &r->req2));
5599
NDR_CHECK(ndr_pull_samr_ValidatePasswordReq3(ndr, NDR_BUFFERS, &r->req3));
5603
return ndr_pull_error(ndr, NDR_ERR_BAD_SWITCH, "Bad switch value %u at %s", level, __location__);
5606
return NDR_ERR_SUCCESS;
5609
_PUBLIC_ void ndr_print_samr_ValidatePasswordReq(struct ndr_print *ndr, const char *name, const union samr_ValidatePasswordReq *r)
5612
level = ndr_print_get_switch_value(ndr, r);
5613
ndr_print_union(ndr, name, level, "samr_ValidatePasswordReq");
5616
ndr_print_samr_ValidatePasswordReq1(ndr, "req1", &r->req1);
5620
ndr_print_samr_ValidatePasswordReq2(ndr, "req2", &r->req2);
5624
ndr_print_samr_ValidatePasswordReq3(ndr, "req3", &r->req3);
5628
ndr_print_bad_level(ndr, name, level);
5632
static enum ndr_err_code ndr_push_samr_Connect(struct ndr_push *ndr, int flags, const struct samr_Connect *r)
5634
if (flags & NDR_IN) {
5635
NDR_CHECK(ndr_push_unique_ptr(ndr, r->in.system_name));
5636
if (r->in.system_name) {
5637
NDR_CHECK(ndr_push_uint16(ndr, NDR_SCALARS, *r->in.system_name));
5639
NDR_CHECK(ndr_push_samr_ConnectAccessMask(ndr, NDR_SCALARS, r->in.access_mask));
5641
if (flags & NDR_OUT) {
5642
if (r->out.connect_handle == NULL) {
5643
return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
5645
NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS, r->out.connect_handle));
5646
NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
5648
return NDR_ERR_SUCCESS;
5651
static enum ndr_err_code ndr_pull_samr_Connect(struct ndr_pull *ndr, int flags, struct samr_Connect *r)
5653
uint32_t _ptr_system_name;
5654
TALLOC_CTX *_mem_save_system_name_0;
5655
TALLOC_CTX *_mem_save_connect_handle_0;
5656
if (flags & NDR_IN) {
5657
ZERO_STRUCT(r->out);
5659
NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_system_name));
5660
if (_ptr_system_name) {
5661
NDR_PULL_ALLOC(ndr, r->in.system_name);
5663
r->in.system_name = NULL;
5665
if (r->in.system_name) {
5666
_mem_save_system_name_0 = NDR_PULL_GET_MEM_CTX(ndr);
5667
NDR_PULL_SET_MEM_CTX(ndr, r->in.system_name, 0);
5668
NDR_CHECK(ndr_pull_uint16(ndr, NDR_SCALARS, r->in.system_name));
5669
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_system_name_0, 0);
5671
NDR_CHECK(ndr_pull_samr_ConnectAccessMask(ndr, NDR_SCALARS, &r->in.access_mask));
5672
NDR_PULL_ALLOC(ndr, r->out.connect_handle);
5673
ZERO_STRUCTP(r->out.connect_handle);
5675
if (flags & NDR_OUT) {
5676
if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
5677
NDR_PULL_ALLOC(ndr, r->out.connect_handle);
5679
_mem_save_connect_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
5680
NDR_PULL_SET_MEM_CTX(ndr, r->out.connect_handle, LIBNDR_FLAG_REF_ALLOC);
5681
NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS, r->out.connect_handle));
5682
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_connect_handle_0, LIBNDR_FLAG_REF_ALLOC);
5683
NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
5685
return NDR_ERR_SUCCESS;
5688
_PUBLIC_ void ndr_print_samr_Connect(struct ndr_print *ndr, const char *name, int flags, const struct samr_Connect *r)
5690
ndr_print_struct(ndr, name, "samr_Connect");
5691
if (r == NULL) { ndr_print_null(ndr); return; }
5693
if (flags & NDR_SET_VALUES) {
5694
ndr->flags |= LIBNDR_PRINT_SET_VALUES;
5696
if (flags & NDR_IN) {
5697
ndr_print_struct(ndr, "in", "samr_Connect");
5699
ndr_print_ptr(ndr, "system_name", r->in.system_name);
5701
if (r->in.system_name) {
5702
ndr_print_uint16(ndr, "system_name", *r->in.system_name);
5705
ndr_print_samr_ConnectAccessMask(ndr, "access_mask", r->in.access_mask);
5708
if (flags & NDR_OUT) {
5709
ndr_print_struct(ndr, "out", "samr_Connect");
5711
ndr_print_ptr(ndr, "connect_handle", r->out.connect_handle);
5713
ndr_print_policy_handle(ndr, "connect_handle", r->out.connect_handle);
5715
ndr_print_NTSTATUS(ndr, "result", r->out.result);
5721
_PUBLIC_ enum ndr_err_code ndr_push_samr_Close(struct ndr_push *ndr, int flags, const struct samr_Close *r)
5723
if (flags & NDR_IN) {
5724
if (r->in.handle == NULL) {
5725
return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
5727
NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS, r->in.handle));
5729
if (flags & NDR_OUT) {
5730
if (r->out.handle == NULL) {
5731
return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
5733
NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS, r->out.handle));
5734
NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
5736
return NDR_ERR_SUCCESS;
5739
_PUBLIC_ enum ndr_err_code ndr_pull_samr_Close(struct ndr_pull *ndr, int flags, struct samr_Close *r)
5741
TALLOC_CTX *_mem_save_handle_0;
5742
if (flags & NDR_IN) {
5743
ZERO_STRUCT(r->out);
5745
if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
5746
NDR_PULL_ALLOC(ndr, r->in.handle);
5748
_mem_save_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
5749
NDR_PULL_SET_MEM_CTX(ndr, r->in.handle, LIBNDR_FLAG_REF_ALLOC);
5750
NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS, r->in.handle));
5751
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_handle_0, LIBNDR_FLAG_REF_ALLOC);
5752
NDR_PULL_ALLOC(ndr, r->out.handle);
5753
*r->out.handle = *r->in.handle;
5755
if (flags & NDR_OUT) {
5756
if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
5757
NDR_PULL_ALLOC(ndr, r->out.handle);
5759
_mem_save_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
5760
NDR_PULL_SET_MEM_CTX(ndr, r->out.handle, LIBNDR_FLAG_REF_ALLOC);
5761
NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS, r->out.handle));
5762
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_handle_0, LIBNDR_FLAG_REF_ALLOC);
5763
NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
5765
return NDR_ERR_SUCCESS;
5768
_PUBLIC_ void ndr_print_samr_Close(struct ndr_print *ndr, const char *name, int flags, const struct samr_Close *r)
5770
ndr_print_struct(ndr, name, "samr_Close");
5771
if (r == NULL) { ndr_print_null(ndr); return; }
5773
if (flags & NDR_SET_VALUES) {
5774
ndr->flags |= LIBNDR_PRINT_SET_VALUES;
5776
if (flags & NDR_IN) {
5777
ndr_print_struct(ndr, "in", "samr_Close");
5779
ndr_print_ptr(ndr, "handle", r->in.handle);
5781
ndr_print_policy_handle(ndr, "handle", r->in.handle);
5785
if (flags & NDR_OUT) {
5786
ndr_print_struct(ndr, "out", "samr_Close");
5788
ndr_print_ptr(ndr, "handle", r->out.handle);
5790
ndr_print_policy_handle(ndr, "handle", r->out.handle);
5792
ndr_print_NTSTATUS(ndr, "result", r->out.result);
5798
static enum ndr_err_code ndr_push_samr_SetSecurity(struct ndr_push *ndr, int flags, const struct samr_SetSecurity *r)
5800
if (flags & NDR_IN) {
5801
if (r->in.handle == NULL) {
5802
return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
5804
NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS, r->in.handle));
5805
NDR_CHECK(ndr_push_security_secinfo(ndr, NDR_SCALARS, r->in.sec_info));
5806
if (r->in.sdbuf == NULL) {
5807
return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
5809
NDR_CHECK(ndr_push_sec_desc_buf(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.sdbuf));
5811
if (flags & NDR_OUT) {
5812
NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
5814
return NDR_ERR_SUCCESS;
5817
static enum ndr_err_code ndr_pull_samr_SetSecurity(struct ndr_pull *ndr, int flags, struct samr_SetSecurity *r)
5819
TALLOC_CTX *_mem_save_handle_0;
5820
TALLOC_CTX *_mem_save_sdbuf_0;
5821
if (flags & NDR_IN) {
5822
if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
5823
NDR_PULL_ALLOC(ndr, r->in.handle);
5825
_mem_save_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
5826
NDR_PULL_SET_MEM_CTX(ndr, r->in.handle, LIBNDR_FLAG_REF_ALLOC);
5827
NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS, r->in.handle));
5828
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_handle_0, LIBNDR_FLAG_REF_ALLOC);
5829
NDR_CHECK(ndr_pull_security_secinfo(ndr, NDR_SCALARS, &r->in.sec_info));
5830
if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
5831
NDR_PULL_ALLOC(ndr, r->in.sdbuf);
5833
_mem_save_sdbuf_0 = NDR_PULL_GET_MEM_CTX(ndr);
5834
NDR_PULL_SET_MEM_CTX(ndr, r->in.sdbuf, LIBNDR_FLAG_REF_ALLOC);
5835
NDR_CHECK(ndr_pull_sec_desc_buf(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.sdbuf));
5836
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_sdbuf_0, LIBNDR_FLAG_REF_ALLOC);
5838
if (flags & NDR_OUT) {
5839
NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
5841
return NDR_ERR_SUCCESS;
5844
_PUBLIC_ void ndr_print_samr_SetSecurity(struct ndr_print *ndr, const char *name, int flags, const struct samr_SetSecurity *r)
5846
ndr_print_struct(ndr, name, "samr_SetSecurity");
5847
if (r == NULL) { ndr_print_null(ndr); return; }
5849
if (flags & NDR_SET_VALUES) {
5850
ndr->flags |= LIBNDR_PRINT_SET_VALUES;
5852
if (flags & NDR_IN) {
5853
ndr_print_struct(ndr, "in", "samr_SetSecurity");
5855
ndr_print_ptr(ndr, "handle", r->in.handle);
5857
ndr_print_policy_handle(ndr, "handle", r->in.handle);
5859
ndr_print_security_secinfo(ndr, "sec_info", r->in.sec_info);
5860
ndr_print_ptr(ndr, "sdbuf", r->in.sdbuf);
5862
ndr_print_sec_desc_buf(ndr, "sdbuf", r->in.sdbuf);
5866
if (flags & NDR_OUT) {
5867
ndr_print_struct(ndr, "out", "samr_SetSecurity");
5869
ndr_print_NTSTATUS(ndr, "result", r->out.result);
5875
static enum ndr_err_code ndr_push_samr_QuerySecurity(struct ndr_push *ndr, int flags, const struct samr_QuerySecurity *r)
5877
if (flags & NDR_IN) {
5878
if (r->in.handle == NULL) {
5879
return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
5881
NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS, r->in.handle));
5882
NDR_CHECK(ndr_push_security_secinfo(ndr, NDR_SCALARS, r->in.sec_info));
5884
if (flags & NDR_OUT) {
5885
if (r->out.sdbuf == NULL) {
5886
return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
5888
NDR_CHECK(ndr_push_unique_ptr(ndr, *r->out.sdbuf));
5889
if (*r->out.sdbuf) {
5890
NDR_CHECK(ndr_push_sec_desc_buf(ndr, NDR_SCALARS|NDR_BUFFERS, *r->out.sdbuf));
5892
NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
5894
return NDR_ERR_SUCCESS;
5897
static enum ndr_err_code ndr_pull_samr_QuerySecurity(struct ndr_pull *ndr, int flags, struct samr_QuerySecurity *r)
5899
uint32_t _ptr_sdbuf;
5900
TALLOC_CTX *_mem_save_handle_0;
5901
TALLOC_CTX *_mem_save_sdbuf_0;
5902
TALLOC_CTX *_mem_save_sdbuf_1;
5903
if (flags & NDR_IN) {
5904
ZERO_STRUCT(r->out);
5906
if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
5907
NDR_PULL_ALLOC(ndr, r->in.handle);
5909
_mem_save_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
5910
NDR_PULL_SET_MEM_CTX(ndr, r->in.handle, LIBNDR_FLAG_REF_ALLOC);
5911
NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS, r->in.handle));
5912
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_handle_0, LIBNDR_FLAG_REF_ALLOC);
5913
NDR_CHECK(ndr_pull_security_secinfo(ndr, NDR_SCALARS, &r->in.sec_info));
5914
NDR_PULL_ALLOC(ndr, r->out.sdbuf);
5915
ZERO_STRUCTP(r->out.sdbuf);
5917
if (flags & NDR_OUT) {
5918
if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
5919
NDR_PULL_ALLOC(ndr, r->out.sdbuf);
5921
_mem_save_sdbuf_0 = NDR_PULL_GET_MEM_CTX(ndr);
5922
NDR_PULL_SET_MEM_CTX(ndr, r->out.sdbuf, LIBNDR_FLAG_REF_ALLOC);
5923
NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_sdbuf));
5925
NDR_PULL_ALLOC(ndr, *r->out.sdbuf);
5927
*r->out.sdbuf = NULL;
5929
if (*r->out.sdbuf) {
5930
_mem_save_sdbuf_1 = NDR_PULL_GET_MEM_CTX(ndr);
5931
NDR_PULL_SET_MEM_CTX(ndr, *r->out.sdbuf, 0);
5932
NDR_CHECK(ndr_pull_sec_desc_buf(ndr, NDR_SCALARS|NDR_BUFFERS, *r->out.sdbuf));
5933
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_sdbuf_1, 0);
5935
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_sdbuf_0, LIBNDR_FLAG_REF_ALLOC);
5936
NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
5938
return NDR_ERR_SUCCESS;
5941
_PUBLIC_ void ndr_print_samr_QuerySecurity(struct ndr_print *ndr, const char *name, int flags, const struct samr_QuerySecurity *r)
5943
ndr_print_struct(ndr, name, "samr_QuerySecurity");
5944
if (r == NULL) { ndr_print_null(ndr); return; }
5946
if (flags & NDR_SET_VALUES) {
5947
ndr->flags |= LIBNDR_PRINT_SET_VALUES;
5949
if (flags & NDR_IN) {
5950
ndr_print_struct(ndr, "in", "samr_QuerySecurity");
5952
ndr_print_ptr(ndr, "handle", r->in.handle);
5954
ndr_print_policy_handle(ndr, "handle", r->in.handle);
5956
ndr_print_security_secinfo(ndr, "sec_info", r->in.sec_info);
5959
if (flags & NDR_OUT) {
5960
ndr_print_struct(ndr, "out", "samr_QuerySecurity");
5962
ndr_print_ptr(ndr, "sdbuf", r->out.sdbuf);
5964
ndr_print_ptr(ndr, "sdbuf", *r->out.sdbuf);
5966
if (*r->out.sdbuf) {
5967
ndr_print_sec_desc_buf(ndr, "sdbuf", *r->out.sdbuf);
5971
ndr_print_NTSTATUS(ndr, "result", r->out.result);
5977
static enum ndr_err_code ndr_push_samr_Shutdown(struct ndr_push *ndr, int flags, const struct samr_Shutdown *r)
5979
if (flags & NDR_IN) {
5980
if (r->in.connect_handle == NULL) {
5981
return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
5983
NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS, r->in.connect_handle));
5985
if (flags & NDR_OUT) {
5986
NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
5988
return NDR_ERR_SUCCESS;
5991
static enum ndr_err_code ndr_pull_samr_Shutdown(struct ndr_pull *ndr, int flags, struct samr_Shutdown *r)
5993
TALLOC_CTX *_mem_save_connect_handle_0;
5994
if (flags & NDR_IN) {
5995
if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
5996
NDR_PULL_ALLOC(ndr, r->in.connect_handle);
5998
_mem_save_connect_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
5999
NDR_PULL_SET_MEM_CTX(ndr, r->in.connect_handle, LIBNDR_FLAG_REF_ALLOC);
6000
NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS, r->in.connect_handle));
6001
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_connect_handle_0, LIBNDR_FLAG_REF_ALLOC);
6003
if (flags & NDR_OUT) {
6004
NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
6006
return NDR_ERR_SUCCESS;
6009
_PUBLIC_ void ndr_print_samr_Shutdown(struct ndr_print *ndr, const char *name, int flags, const struct samr_Shutdown *r)
6011
ndr_print_struct(ndr, name, "samr_Shutdown");
6012
if (r == NULL) { ndr_print_null(ndr); return; }
6014
if (flags & NDR_SET_VALUES) {
6015
ndr->flags |= LIBNDR_PRINT_SET_VALUES;
6017
if (flags & NDR_IN) {
6018
ndr_print_struct(ndr, "in", "samr_Shutdown");
6020
ndr_print_ptr(ndr, "connect_handle", r->in.connect_handle);
6022
ndr_print_policy_handle(ndr, "connect_handle", r->in.connect_handle);
6026
if (flags & NDR_OUT) {
6027
ndr_print_struct(ndr, "out", "samr_Shutdown");
6029
ndr_print_NTSTATUS(ndr, "result", r->out.result);
6035
static enum ndr_err_code ndr_push_samr_LookupDomain(struct ndr_push *ndr, int flags, const struct samr_LookupDomain *r)
6037
if (flags & NDR_IN) {
6038
if (r->in.connect_handle == NULL) {
6039
return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
6041
NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS, r->in.connect_handle));
6042
if (r->in.domain_name == NULL) {
6043
return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
6045
NDR_CHECK(ndr_push_lsa_String(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.domain_name));
6047
if (flags & NDR_OUT) {
6048
if (r->out.sid == NULL) {
6049
return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
6051
NDR_CHECK(ndr_push_unique_ptr(ndr, *r->out.sid));
6053
NDR_CHECK(ndr_push_dom_sid2(ndr, NDR_SCALARS|NDR_BUFFERS, *r->out.sid));
6055
NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
6057
return NDR_ERR_SUCCESS;
6060
static enum ndr_err_code ndr_pull_samr_LookupDomain(struct ndr_pull *ndr, int flags, struct samr_LookupDomain *r)
6063
TALLOC_CTX *_mem_save_connect_handle_0;
6064
TALLOC_CTX *_mem_save_domain_name_0;
6065
TALLOC_CTX *_mem_save_sid_0;
6066
TALLOC_CTX *_mem_save_sid_1;
6067
if (flags & NDR_IN) {
6068
ZERO_STRUCT(r->out);
6070
if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
6071
NDR_PULL_ALLOC(ndr, r->in.connect_handle);
6073
_mem_save_connect_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
6074
NDR_PULL_SET_MEM_CTX(ndr, r->in.connect_handle, LIBNDR_FLAG_REF_ALLOC);
6075
NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS, r->in.connect_handle));
6076
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_connect_handle_0, LIBNDR_FLAG_REF_ALLOC);
6077
if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
6078
NDR_PULL_ALLOC(ndr, r->in.domain_name);
6080
_mem_save_domain_name_0 = NDR_PULL_GET_MEM_CTX(ndr);
6081
NDR_PULL_SET_MEM_CTX(ndr, r->in.domain_name, LIBNDR_FLAG_REF_ALLOC);
6082
NDR_CHECK(ndr_pull_lsa_String(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.domain_name));
6083
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_domain_name_0, LIBNDR_FLAG_REF_ALLOC);
6084
NDR_PULL_ALLOC(ndr, r->out.sid);
6085
ZERO_STRUCTP(r->out.sid);
6087
if (flags & NDR_OUT) {
6088
if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
6089
NDR_PULL_ALLOC(ndr, r->out.sid);
6091
_mem_save_sid_0 = NDR_PULL_GET_MEM_CTX(ndr);
6092
NDR_PULL_SET_MEM_CTX(ndr, r->out.sid, LIBNDR_FLAG_REF_ALLOC);
6093
NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_sid));
6095
NDR_PULL_ALLOC(ndr, *r->out.sid);
6100
_mem_save_sid_1 = NDR_PULL_GET_MEM_CTX(ndr);
6101
NDR_PULL_SET_MEM_CTX(ndr, *r->out.sid, 0);
6102
NDR_CHECK(ndr_pull_dom_sid2(ndr, NDR_SCALARS|NDR_BUFFERS, *r->out.sid));
6103
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_sid_1, 0);
6105
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_sid_0, LIBNDR_FLAG_REF_ALLOC);
6106
NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
6108
return NDR_ERR_SUCCESS;
6111
_PUBLIC_ void ndr_print_samr_LookupDomain(struct ndr_print *ndr, const char *name, int flags, const struct samr_LookupDomain *r)
6113
ndr_print_struct(ndr, name, "samr_LookupDomain");
6114
if (r == NULL) { ndr_print_null(ndr); return; }
6116
if (flags & NDR_SET_VALUES) {
6117
ndr->flags |= LIBNDR_PRINT_SET_VALUES;
6119
if (flags & NDR_IN) {
6120
ndr_print_struct(ndr, "in", "samr_LookupDomain");
6122
ndr_print_ptr(ndr, "connect_handle", r->in.connect_handle);
6124
ndr_print_policy_handle(ndr, "connect_handle", r->in.connect_handle);
6126
ndr_print_ptr(ndr, "domain_name", r->in.domain_name);
6128
ndr_print_lsa_String(ndr, "domain_name", r->in.domain_name);
6132
if (flags & NDR_OUT) {
6133
ndr_print_struct(ndr, "out", "samr_LookupDomain");
6135
ndr_print_ptr(ndr, "sid", r->out.sid);
6137
ndr_print_ptr(ndr, "sid", *r->out.sid);
6140
ndr_print_dom_sid2(ndr, "sid", *r->out.sid);
6144
ndr_print_NTSTATUS(ndr, "result", r->out.result);
6150
static enum ndr_err_code ndr_push_samr_EnumDomains(struct ndr_push *ndr, int flags, const struct samr_EnumDomains *r)
6152
if (flags & NDR_IN) {
6153
if (r->in.connect_handle == NULL) {
6154
return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
6156
NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS, r->in.connect_handle));
6157
if (r->in.resume_handle == NULL) {
6158
return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
6160
NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, *r->in.resume_handle));
6161
NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->in.buf_size));
6163
if (flags & NDR_OUT) {
6164
if (r->out.resume_handle == NULL) {
6165
return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
6167
NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, *r->out.resume_handle));
6168
if (r->out.sam == NULL) {
6169
return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
6171
NDR_CHECK(ndr_push_unique_ptr(ndr, *r->out.sam));
6173
NDR_CHECK(ndr_push_samr_SamArray(ndr, NDR_SCALARS|NDR_BUFFERS, *r->out.sam));
6175
if (r->out.num_entries == NULL) {
6176
return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
6178
NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, *r->out.num_entries));
6179
NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
6181
return NDR_ERR_SUCCESS;
6184
static enum ndr_err_code ndr_pull_samr_EnumDomains(struct ndr_pull *ndr, int flags, struct samr_EnumDomains *r)
6187
TALLOC_CTX *_mem_save_connect_handle_0;
6188
TALLOC_CTX *_mem_save_resume_handle_0;
6189
TALLOC_CTX *_mem_save_sam_0;
6190
TALLOC_CTX *_mem_save_sam_1;
6191
TALLOC_CTX *_mem_save_num_entries_0;
6192
if (flags & NDR_IN) {
6193
ZERO_STRUCT(r->out);
6195
if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
6196
NDR_PULL_ALLOC(ndr, r->in.connect_handle);
6198
_mem_save_connect_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
6199
NDR_PULL_SET_MEM_CTX(ndr, r->in.connect_handle, LIBNDR_FLAG_REF_ALLOC);
6200
NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS, r->in.connect_handle));
6201
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_connect_handle_0, LIBNDR_FLAG_REF_ALLOC);
6202
if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
6203
NDR_PULL_ALLOC(ndr, r->in.resume_handle);
6205
_mem_save_resume_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
6206
NDR_PULL_SET_MEM_CTX(ndr, r->in.resume_handle, LIBNDR_FLAG_REF_ALLOC);
6207
NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, r->in.resume_handle));
6208
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_resume_handle_0, LIBNDR_FLAG_REF_ALLOC);
6209
NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->in.buf_size));
6210
NDR_PULL_ALLOC(ndr, r->out.resume_handle);
6211
*r->out.resume_handle = *r->in.resume_handle;
6212
NDR_PULL_ALLOC(ndr, r->out.sam);
6213
ZERO_STRUCTP(r->out.sam);
6214
NDR_PULL_ALLOC(ndr, r->out.num_entries);
6215
ZERO_STRUCTP(r->out.num_entries);
6217
if (flags & NDR_OUT) {
6218
if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
6219
NDR_PULL_ALLOC(ndr, r->out.resume_handle);
6221
_mem_save_resume_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
6222
NDR_PULL_SET_MEM_CTX(ndr, r->out.resume_handle, LIBNDR_FLAG_REF_ALLOC);
6223
NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, r->out.resume_handle));
6224
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_resume_handle_0, LIBNDR_FLAG_REF_ALLOC);
6225
if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
6226
NDR_PULL_ALLOC(ndr, r->out.sam);
6228
_mem_save_sam_0 = NDR_PULL_GET_MEM_CTX(ndr);
6229
NDR_PULL_SET_MEM_CTX(ndr, r->out.sam, LIBNDR_FLAG_REF_ALLOC);
6230
NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_sam));
6232
NDR_PULL_ALLOC(ndr, *r->out.sam);
6237
_mem_save_sam_1 = NDR_PULL_GET_MEM_CTX(ndr);
6238
NDR_PULL_SET_MEM_CTX(ndr, *r->out.sam, 0);
6239
NDR_CHECK(ndr_pull_samr_SamArray(ndr, NDR_SCALARS|NDR_BUFFERS, *r->out.sam));
6240
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_sam_1, 0);
6242
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_sam_0, LIBNDR_FLAG_REF_ALLOC);
6243
if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
6244
NDR_PULL_ALLOC(ndr, r->out.num_entries);
6246
_mem_save_num_entries_0 = NDR_PULL_GET_MEM_CTX(ndr);
6247
NDR_PULL_SET_MEM_CTX(ndr, r->out.num_entries, LIBNDR_FLAG_REF_ALLOC);
6248
NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, r->out.num_entries));
6249
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_num_entries_0, LIBNDR_FLAG_REF_ALLOC);
6250
NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
6252
return NDR_ERR_SUCCESS;
6255
_PUBLIC_ void ndr_print_samr_EnumDomains(struct ndr_print *ndr, const char *name, int flags, const struct samr_EnumDomains *r)
6257
ndr_print_struct(ndr, name, "samr_EnumDomains");
6258
if (r == NULL) { ndr_print_null(ndr); return; }
6260
if (flags & NDR_SET_VALUES) {
6261
ndr->flags |= LIBNDR_PRINT_SET_VALUES;
6263
if (flags & NDR_IN) {
6264
ndr_print_struct(ndr, "in", "samr_EnumDomains");
6266
ndr_print_ptr(ndr, "connect_handle", r->in.connect_handle);
6268
ndr_print_policy_handle(ndr, "connect_handle", r->in.connect_handle);
6270
ndr_print_ptr(ndr, "resume_handle", r->in.resume_handle);
6272
ndr_print_uint32(ndr, "resume_handle", *r->in.resume_handle);
6274
ndr_print_uint32(ndr, "buf_size", r->in.buf_size);
6277
if (flags & NDR_OUT) {
6278
ndr_print_struct(ndr, "out", "samr_EnumDomains");
6280
ndr_print_ptr(ndr, "resume_handle", r->out.resume_handle);
6282
ndr_print_uint32(ndr, "resume_handle", *r->out.resume_handle);
6284
ndr_print_ptr(ndr, "sam", r->out.sam);
6286
ndr_print_ptr(ndr, "sam", *r->out.sam);
6289
ndr_print_samr_SamArray(ndr, "sam", *r->out.sam);
6293
ndr_print_ptr(ndr, "num_entries", r->out.num_entries);
6295
ndr_print_uint32(ndr, "num_entries", *r->out.num_entries);
6297
ndr_print_NTSTATUS(ndr, "result", r->out.result);
6303
_PUBLIC_ enum ndr_err_code ndr_push_samr_OpenDomain(struct ndr_push *ndr, int flags, const struct samr_OpenDomain *r)
6305
if (flags & NDR_IN) {
6306
if (r->in.connect_handle == NULL) {
6307
return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
6309
NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS, r->in.connect_handle));
6310
NDR_CHECK(ndr_push_samr_DomainAccessMask(ndr, NDR_SCALARS, r->in.access_mask));
6311
if (r->in.sid == NULL) {
6312
return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
6314
NDR_CHECK(ndr_push_dom_sid2(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.sid));
6316
if (flags & NDR_OUT) {
6317
if (r->out.domain_handle == NULL) {
6318
return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
6320
NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS, r->out.domain_handle));
6321
NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
6323
return NDR_ERR_SUCCESS;
6326
_PUBLIC_ enum ndr_err_code ndr_pull_samr_OpenDomain(struct ndr_pull *ndr, int flags, struct samr_OpenDomain *r)
6328
TALLOC_CTX *_mem_save_connect_handle_0;
6329
TALLOC_CTX *_mem_save_sid_0;
6330
TALLOC_CTX *_mem_save_domain_handle_0;
6331
if (flags & NDR_IN) {
6332
ZERO_STRUCT(r->out);
6334
if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
6335
NDR_PULL_ALLOC(ndr, r->in.connect_handle);
6337
_mem_save_connect_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
6338
NDR_PULL_SET_MEM_CTX(ndr, r->in.connect_handle, LIBNDR_FLAG_REF_ALLOC);
6339
NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS, r->in.connect_handle));
6340
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_connect_handle_0, LIBNDR_FLAG_REF_ALLOC);
6341
NDR_CHECK(ndr_pull_samr_DomainAccessMask(ndr, NDR_SCALARS, &r->in.access_mask));
6342
if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
6343
NDR_PULL_ALLOC(ndr, r->in.sid);
6345
_mem_save_sid_0 = NDR_PULL_GET_MEM_CTX(ndr);
6346
NDR_PULL_SET_MEM_CTX(ndr, r->in.sid, LIBNDR_FLAG_REF_ALLOC);
6347
NDR_CHECK(ndr_pull_dom_sid2(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.sid));
6348
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_sid_0, LIBNDR_FLAG_REF_ALLOC);
6349
NDR_PULL_ALLOC(ndr, r->out.domain_handle);
6350
ZERO_STRUCTP(r->out.domain_handle);
6352
if (flags & NDR_OUT) {
6353
if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
6354
NDR_PULL_ALLOC(ndr, r->out.domain_handle);
6356
_mem_save_domain_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
6357
NDR_PULL_SET_MEM_CTX(ndr, r->out.domain_handle, LIBNDR_FLAG_REF_ALLOC);
6358
NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS, r->out.domain_handle));
6359
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_domain_handle_0, LIBNDR_FLAG_REF_ALLOC);
6360
NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
6362
return NDR_ERR_SUCCESS;
6365
_PUBLIC_ void ndr_print_samr_OpenDomain(struct ndr_print *ndr, const char *name, int flags, const struct samr_OpenDomain *r)
6367
ndr_print_struct(ndr, name, "samr_OpenDomain");
6368
if (r == NULL) { ndr_print_null(ndr); return; }
6370
if (flags & NDR_SET_VALUES) {
6371
ndr->flags |= LIBNDR_PRINT_SET_VALUES;
6373
if (flags & NDR_IN) {
6374
ndr_print_struct(ndr, "in", "samr_OpenDomain");
6376
ndr_print_ptr(ndr, "connect_handle", r->in.connect_handle);
6378
ndr_print_policy_handle(ndr, "connect_handle", r->in.connect_handle);
6380
ndr_print_samr_DomainAccessMask(ndr, "access_mask", r->in.access_mask);
6381
ndr_print_ptr(ndr, "sid", r->in.sid);
6383
ndr_print_dom_sid2(ndr, "sid", r->in.sid);
6387
if (flags & NDR_OUT) {
6388
ndr_print_struct(ndr, "out", "samr_OpenDomain");
6390
ndr_print_ptr(ndr, "domain_handle", r->out.domain_handle);
6392
ndr_print_policy_handle(ndr, "domain_handle", r->out.domain_handle);
6394
ndr_print_NTSTATUS(ndr, "result", r->out.result);
6400
static enum ndr_err_code ndr_push_samr_QueryDomainInfo(struct ndr_push *ndr, int flags, const struct samr_QueryDomainInfo *r)
6402
if (flags & NDR_IN) {
6403
if (r->in.domain_handle == NULL) {
6404
return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
6406
NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS, r->in.domain_handle));
6407
NDR_CHECK(ndr_push_samr_DomainInfoClass(ndr, NDR_SCALARS, r->in.level));
6409
if (flags & NDR_OUT) {
6410
if (r->out.info == NULL) {
6411
return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
6413
NDR_CHECK(ndr_push_unique_ptr(ndr, *r->out.info));
6415
NDR_CHECK(ndr_push_set_switch_value(ndr, *r->out.info, r->in.level));
6416
NDR_CHECK(ndr_push_samr_DomainInfo(ndr, NDR_SCALARS|NDR_BUFFERS, *r->out.info));
6418
NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
6420
return NDR_ERR_SUCCESS;
6423
static enum ndr_err_code ndr_pull_samr_QueryDomainInfo(struct ndr_pull *ndr, int flags, struct samr_QueryDomainInfo *r)
6426
TALLOC_CTX *_mem_save_domain_handle_0;
6427
TALLOC_CTX *_mem_save_info_0;
6428
TALLOC_CTX *_mem_save_info_1;
6429
if (flags & NDR_IN) {
6430
ZERO_STRUCT(r->out);
6432
if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
6433
NDR_PULL_ALLOC(ndr, r->in.domain_handle);
6435
_mem_save_domain_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
6436
NDR_PULL_SET_MEM_CTX(ndr, r->in.domain_handle, LIBNDR_FLAG_REF_ALLOC);
6437
NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS, r->in.domain_handle));
6438
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_domain_handle_0, LIBNDR_FLAG_REF_ALLOC);
6439
NDR_CHECK(ndr_pull_samr_DomainInfoClass(ndr, NDR_SCALARS, &r->in.level));
6440
NDR_PULL_ALLOC(ndr, r->out.info);
6441
ZERO_STRUCTP(r->out.info);
6443
if (flags & NDR_OUT) {
6444
if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
6445
NDR_PULL_ALLOC(ndr, r->out.info);
6447
_mem_save_info_0 = NDR_PULL_GET_MEM_CTX(ndr);
6448
NDR_PULL_SET_MEM_CTX(ndr, r->out.info, LIBNDR_FLAG_REF_ALLOC);
6449
NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_info));
6451
NDR_PULL_ALLOC(ndr, *r->out.info);
6453
*r->out.info = NULL;
6456
_mem_save_info_1 = NDR_PULL_GET_MEM_CTX(ndr);
6457
NDR_PULL_SET_MEM_CTX(ndr, *r->out.info, 0);
6458
NDR_CHECK(ndr_pull_set_switch_value(ndr, *r->out.info, r->in.level));
6459
NDR_CHECK(ndr_pull_samr_DomainInfo(ndr, NDR_SCALARS|NDR_BUFFERS, *r->out.info));
6460
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_info_1, 0);
6462
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_info_0, LIBNDR_FLAG_REF_ALLOC);
6463
NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
6465
return NDR_ERR_SUCCESS;
6468
_PUBLIC_ void ndr_print_samr_QueryDomainInfo(struct ndr_print *ndr, const char *name, int flags, const struct samr_QueryDomainInfo *r)
6470
ndr_print_struct(ndr, name, "samr_QueryDomainInfo");
6471
if (r == NULL) { ndr_print_null(ndr); return; }
6473
if (flags & NDR_SET_VALUES) {
6474
ndr->flags |= LIBNDR_PRINT_SET_VALUES;
6476
if (flags & NDR_IN) {
6477
ndr_print_struct(ndr, "in", "samr_QueryDomainInfo");
6479
ndr_print_ptr(ndr, "domain_handle", r->in.domain_handle);
6481
ndr_print_policy_handle(ndr, "domain_handle", r->in.domain_handle);
6483
ndr_print_samr_DomainInfoClass(ndr, "level", r->in.level);
6486
if (flags & NDR_OUT) {
6487
ndr_print_struct(ndr, "out", "samr_QueryDomainInfo");
6489
ndr_print_ptr(ndr, "info", r->out.info);
6491
ndr_print_ptr(ndr, "info", *r->out.info);
6494
ndr_print_set_switch_value(ndr, *r->out.info, r->in.level);
6495
ndr_print_samr_DomainInfo(ndr, "info", *r->out.info);
6499
ndr_print_NTSTATUS(ndr, "result", r->out.result);
6505
static enum ndr_err_code ndr_push_samr_SetDomainInfo(struct ndr_push *ndr, int flags, const struct samr_SetDomainInfo *r)
6507
if (flags & NDR_IN) {
6508
if (r->in.domain_handle == NULL) {
6509
return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
6511
NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS, r->in.domain_handle));
6512
NDR_CHECK(ndr_push_samr_DomainInfoClass(ndr, NDR_SCALARS, r->in.level));
6513
if (r->in.info == NULL) {
6514
return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
6516
NDR_CHECK(ndr_push_set_switch_value(ndr, r->in.info, r->in.level));
6517
NDR_CHECK(ndr_push_samr_DomainInfo(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.info));
6519
if (flags & NDR_OUT) {
6520
NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
6522
return NDR_ERR_SUCCESS;
6525
static enum ndr_err_code ndr_pull_samr_SetDomainInfo(struct ndr_pull *ndr, int flags, struct samr_SetDomainInfo *r)
6527
TALLOC_CTX *_mem_save_domain_handle_0;
6528
TALLOC_CTX *_mem_save_info_0;
6529
if (flags & NDR_IN) {
6530
if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
6531
NDR_PULL_ALLOC(ndr, r->in.domain_handle);
6533
_mem_save_domain_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
6534
NDR_PULL_SET_MEM_CTX(ndr, r->in.domain_handle, LIBNDR_FLAG_REF_ALLOC);
6535
NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS, r->in.domain_handle));
6536
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_domain_handle_0, LIBNDR_FLAG_REF_ALLOC);
6537
NDR_CHECK(ndr_pull_samr_DomainInfoClass(ndr, NDR_SCALARS, &r->in.level));
6538
if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
6539
NDR_PULL_ALLOC(ndr, r->in.info);
6541
_mem_save_info_0 = NDR_PULL_GET_MEM_CTX(ndr);
6542
NDR_PULL_SET_MEM_CTX(ndr, r->in.info, LIBNDR_FLAG_REF_ALLOC);
6543
NDR_CHECK(ndr_pull_set_switch_value(ndr, r->in.info, r->in.level));
6544
NDR_CHECK(ndr_pull_samr_DomainInfo(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.info));
6545
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_info_0, LIBNDR_FLAG_REF_ALLOC);
6547
if (flags & NDR_OUT) {
6548
NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
6550
return NDR_ERR_SUCCESS;
6553
_PUBLIC_ void ndr_print_samr_SetDomainInfo(struct ndr_print *ndr, const char *name, int flags, const struct samr_SetDomainInfo *r)
6555
ndr_print_struct(ndr, name, "samr_SetDomainInfo");
6556
if (r == NULL) { ndr_print_null(ndr); return; }
6558
if (flags & NDR_SET_VALUES) {
6559
ndr->flags |= LIBNDR_PRINT_SET_VALUES;
6561
if (flags & NDR_IN) {
6562
ndr_print_struct(ndr, "in", "samr_SetDomainInfo");
6564
ndr_print_ptr(ndr, "domain_handle", r->in.domain_handle);
6566
ndr_print_policy_handle(ndr, "domain_handle", r->in.domain_handle);
6568
ndr_print_samr_DomainInfoClass(ndr, "level", r->in.level);
6569
ndr_print_ptr(ndr, "info", r->in.info);
6571
ndr_print_set_switch_value(ndr, r->in.info, r->in.level);
6572
ndr_print_samr_DomainInfo(ndr, "info", r->in.info);
6576
if (flags & NDR_OUT) {
6577
ndr_print_struct(ndr, "out", "samr_SetDomainInfo");
6579
ndr_print_NTSTATUS(ndr, "result", r->out.result);
6585
static enum ndr_err_code ndr_push_samr_CreateDomainGroup(struct ndr_push *ndr, int flags, const struct samr_CreateDomainGroup *r)
6587
if (flags & NDR_IN) {
6588
if (r->in.domain_handle == NULL) {
6589
return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
6591
NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS, r->in.domain_handle));
6592
if (r->in.name == NULL) {
6593
return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
6595
NDR_CHECK(ndr_push_lsa_String(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.name));
6596
NDR_CHECK(ndr_push_samr_GroupAccessMask(ndr, NDR_SCALARS, r->in.access_mask));
6598
if (flags & NDR_OUT) {
6599
if (r->out.group_handle == NULL) {
6600
return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
6602
NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS, r->out.group_handle));
6603
if (r->out.rid == NULL) {
6604
return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
6606
NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, *r->out.rid));
6607
NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
6609
return NDR_ERR_SUCCESS;
6612
static enum ndr_err_code ndr_pull_samr_CreateDomainGroup(struct ndr_pull *ndr, int flags, struct samr_CreateDomainGroup *r)
6614
TALLOC_CTX *_mem_save_domain_handle_0;
6615
TALLOC_CTX *_mem_save_name_0;
6616
TALLOC_CTX *_mem_save_group_handle_0;
6617
TALLOC_CTX *_mem_save_rid_0;
6618
if (flags & NDR_IN) {
6619
ZERO_STRUCT(r->out);
6621
if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
6622
NDR_PULL_ALLOC(ndr, r->in.domain_handle);
6624
_mem_save_domain_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
6625
NDR_PULL_SET_MEM_CTX(ndr, r->in.domain_handle, LIBNDR_FLAG_REF_ALLOC);
6626
NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS, r->in.domain_handle));
6627
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_domain_handle_0, LIBNDR_FLAG_REF_ALLOC);
6628
if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
6629
NDR_PULL_ALLOC(ndr, r->in.name);
6631
_mem_save_name_0 = NDR_PULL_GET_MEM_CTX(ndr);
6632
NDR_PULL_SET_MEM_CTX(ndr, r->in.name, LIBNDR_FLAG_REF_ALLOC);
6633
NDR_CHECK(ndr_pull_lsa_String(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.name));
6634
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_name_0, LIBNDR_FLAG_REF_ALLOC);
6635
NDR_CHECK(ndr_pull_samr_GroupAccessMask(ndr, NDR_SCALARS, &r->in.access_mask));
6636
NDR_PULL_ALLOC(ndr, r->out.group_handle);
6637
ZERO_STRUCTP(r->out.group_handle);
6638
NDR_PULL_ALLOC(ndr, r->out.rid);
6639
ZERO_STRUCTP(r->out.rid);
6641
if (flags & NDR_OUT) {
6642
if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
6643
NDR_PULL_ALLOC(ndr, r->out.group_handle);
6645
_mem_save_group_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
6646
NDR_PULL_SET_MEM_CTX(ndr, r->out.group_handle, LIBNDR_FLAG_REF_ALLOC);
6647
NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS, r->out.group_handle));
6648
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_group_handle_0, LIBNDR_FLAG_REF_ALLOC);
6649
if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
6650
NDR_PULL_ALLOC(ndr, r->out.rid);
6652
_mem_save_rid_0 = NDR_PULL_GET_MEM_CTX(ndr);
6653
NDR_PULL_SET_MEM_CTX(ndr, r->out.rid, LIBNDR_FLAG_REF_ALLOC);
6654
NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, r->out.rid));
6655
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_rid_0, LIBNDR_FLAG_REF_ALLOC);
6656
NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
6658
return NDR_ERR_SUCCESS;
6661
_PUBLIC_ void ndr_print_samr_CreateDomainGroup(struct ndr_print *ndr, const char *name, int flags, const struct samr_CreateDomainGroup *r)
6663
ndr_print_struct(ndr, name, "samr_CreateDomainGroup");
6664
if (r == NULL) { ndr_print_null(ndr); return; }
6666
if (flags & NDR_SET_VALUES) {
6667
ndr->flags |= LIBNDR_PRINT_SET_VALUES;
6669
if (flags & NDR_IN) {
6670
ndr_print_struct(ndr, "in", "samr_CreateDomainGroup");
6672
ndr_print_ptr(ndr, "domain_handle", r->in.domain_handle);
6674
ndr_print_policy_handle(ndr, "domain_handle", r->in.domain_handle);
6676
ndr_print_ptr(ndr, "name", r->in.name);
6678
ndr_print_lsa_String(ndr, "name", r->in.name);
6680
ndr_print_samr_GroupAccessMask(ndr, "access_mask", r->in.access_mask);
6683
if (flags & NDR_OUT) {
6684
ndr_print_struct(ndr, "out", "samr_CreateDomainGroup");
6686
ndr_print_ptr(ndr, "group_handle", r->out.group_handle);
6688
ndr_print_policy_handle(ndr, "group_handle", r->out.group_handle);
6690
ndr_print_ptr(ndr, "rid", r->out.rid);
6692
ndr_print_uint32(ndr, "rid", *r->out.rid);
6694
ndr_print_NTSTATUS(ndr, "result", r->out.result);
6700
static enum ndr_err_code ndr_push_samr_EnumDomainGroups(struct ndr_push *ndr, int flags, const struct samr_EnumDomainGroups *r)
6702
if (flags & NDR_IN) {
6703
if (r->in.domain_handle == NULL) {
6704
return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
6706
NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS, r->in.domain_handle));
6707
if (r->in.resume_handle == NULL) {
6708
return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
6710
NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, *r->in.resume_handle));
6711
NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->in.max_size));
6713
if (flags & NDR_OUT) {
6714
if (r->out.resume_handle == NULL) {
6715
return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
6717
NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, *r->out.resume_handle));
6718
if (r->out.sam == NULL) {
6719
return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
6721
NDR_CHECK(ndr_push_unique_ptr(ndr, *r->out.sam));
6723
NDR_CHECK(ndr_push_samr_SamArray(ndr, NDR_SCALARS|NDR_BUFFERS, *r->out.sam));
6725
if (r->out.num_entries == NULL) {
6726
return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
6728
NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, *r->out.num_entries));
6729
NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
6731
return NDR_ERR_SUCCESS;
6734
static enum ndr_err_code ndr_pull_samr_EnumDomainGroups(struct ndr_pull *ndr, int flags, struct samr_EnumDomainGroups *r)
6737
TALLOC_CTX *_mem_save_domain_handle_0;
6738
TALLOC_CTX *_mem_save_resume_handle_0;
6739
TALLOC_CTX *_mem_save_sam_0;
6740
TALLOC_CTX *_mem_save_sam_1;
6741
TALLOC_CTX *_mem_save_num_entries_0;
6742
if (flags & NDR_IN) {
6743
ZERO_STRUCT(r->out);
6745
if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
6746
NDR_PULL_ALLOC(ndr, r->in.domain_handle);
6748
_mem_save_domain_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
6749
NDR_PULL_SET_MEM_CTX(ndr, r->in.domain_handle, LIBNDR_FLAG_REF_ALLOC);
6750
NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS, r->in.domain_handle));
6751
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_domain_handle_0, LIBNDR_FLAG_REF_ALLOC);
6752
if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
6753
NDR_PULL_ALLOC(ndr, r->in.resume_handle);
6755
_mem_save_resume_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
6756
NDR_PULL_SET_MEM_CTX(ndr, r->in.resume_handle, LIBNDR_FLAG_REF_ALLOC);
6757
NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, r->in.resume_handle));
6758
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_resume_handle_0, LIBNDR_FLAG_REF_ALLOC);
6759
NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->in.max_size));
6760
NDR_PULL_ALLOC(ndr, r->out.resume_handle);
6761
*r->out.resume_handle = *r->in.resume_handle;
6762
NDR_PULL_ALLOC(ndr, r->out.sam);
6763
ZERO_STRUCTP(r->out.sam);
6764
NDR_PULL_ALLOC(ndr, r->out.num_entries);
6765
ZERO_STRUCTP(r->out.num_entries);
6767
if (flags & NDR_OUT) {
6768
if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
6769
NDR_PULL_ALLOC(ndr, r->out.resume_handle);
6771
_mem_save_resume_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
6772
NDR_PULL_SET_MEM_CTX(ndr, r->out.resume_handle, LIBNDR_FLAG_REF_ALLOC);
6773
NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, r->out.resume_handle));
6774
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_resume_handle_0, LIBNDR_FLAG_REF_ALLOC);
6775
if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
6776
NDR_PULL_ALLOC(ndr, r->out.sam);
6778
_mem_save_sam_0 = NDR_PULL_GET_MEM_CTX(ndr);
6779
NDR_PULL_SET_MEM_CTX(ndr, r->out.sam, LIBNDR_FLAG_REF_ALLOC);
6780
NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_sam));
6782
NDR_PULL_ALLOC(ndr, *r->out.sam);
6787
_mem_save_sam_1 = NDR_PULL_GET_MEM_CTX(ndr);
6788
NDR_PULL_SET_MEM_CTX(ndr, *r->out.sam, 0);
6789
NDR_CHECK(ndr_pull_samr_SamArray(ndr, NDR_SCALARS|NDR_BUFFERS, *r->out.sam));
6790
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_sam_1, 0);
6792
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_sam_0, LIBNDR_FLAG_REF_ALLOC);
6793
if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
6794
NDR_PULL_ALLOC(ndr, r->out.num_entries);
6796
_mem_save_num_entries_0 = NDR_PULL_GET_MEM_CTX(ndr);
6797
NDR_PULL_SET_MEM_CTX(ndr, r->out.num_entries, LIBNDR_FLAG_REF_ALLOC);
6798
NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, r->out.num_entries));
6799
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_num_entries_0, LIBNDR_FLAG_REF_ALLOC);
6800
NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
6802
return NDR_ERR_SUCCESS;
6805
_PUBLIC_ void ndr_print_samr_EnumDomainGroups(struct ndr_print *ndr, const char *name, int flags, const struct samr_EnumDomainGroups *r)
6807
ndr_print_struct(ndr, name, "samr_EnumDomainGroups");
6808
if (r == NULL) { ndr_print_null(ndr); return; }
6810
if (flags & NDR_SET_VALUES) {
6811
ndr->flags |= LIBNDR_PRINT_SET_VALUES;
6813
if (flags & NDR_IN) {
6814
ndr_print_struct(ndr, "in", "samr_EnumDomainGroups");
6816
ndr_print_ptr(ndr, "domain_handle", r->in.domain_handle);
6818
ndr_print_policy_handle(ndr, "domain_handle", r->in.domain_handle);
6820
ndr_print_ptr(ndr, "resume_handle", r->in.resume_handle);
6822
ndr_print_uint32(ndr, "resume_handle", *r->in.resume_handle);
6824
ndr_print_uint32(ndr, "max_size", r->in.max_size);
6827
if (flags & NDR_OUT) {
6828
ndr_print_struct(ndr, "out", "samr_EnumDomainGroups");
6830
ndr_print_ptr(ndr, "resume_handle", r->out.resume_handle);
6832
ndr_print_uint32(ndr, "resume_handle", *r->out.resume_handle);
6834
ndr_print_ptr(ndr, "sam", r->out.sam);
6836
ndr_print_ptr(ndr, "sam", *r->out.sam);
6839
ndr_print_samr_SamArray(ndr, "sam", *r->out.sam);
6843
ndr_print_ptr(ndr, "num_entries", r->out.num_entries);
6845
ndr_print_uint32(ndr, "num_entries", *r->out.num_entries);
6847
ndr_print_NTSTATUS(ndr, "result", r->out.result);
6853
static enum ndr_err_code ndr_push_samr_CreateUser(struct ndr_push *ndr, int flags, const struct samr_CreateUser *r)
6855
if (flags & NDR_IN) {
6856
if (r->in.domain_handle == NULL) {
6857
return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
6859
NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS, r->in.domain_handle));
6860
if (r->in.account_name == NULL) {
6861
return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
6863
NDR_CHECK(ndr_push_lsa_String(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.account_name));
6864
NDR_CHECK(ndr_push_samr_UserAccessMask(ndr, NDR_SCALARS, r->in.access_mask));
6866
if (flags & NDR_OUT) {
6867
if (r->out.user_handle == NULL) {
6868
return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
6870
NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS, r->out.user_handle));
6871
if (r->out.rid == NULL) {
6872
return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
6874
NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, *r->out.rid));
6875
NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
6877
return NDR_ERR_SUCCESS;
6880
static enum ndr_err_code ndr_pull_samr_CreateUser(struct ndr_pull *ndr, int flags, struct samr_CreateUser *r)
6882
TALLOC_CTX *_mem_save_domain_handle_0;
6883
TALLOC_CTX *_mem_save_account_name_0;
6884
TALLOC_CTX *_mem_save_user_handle_0;
6885
TALLOC_CTX *_mem_save_rid_0;
6886
if (flags & NDR_IN) {
6887
ZERO_STRUCT(r->out);
6889
if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
6890
NDR_PULL_ALLOC(ndr, r->in.domain_handle);
6892
_mem_save_domain_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
6893
NDR_PULL_SET_MEM_CTX(ndr, r->in.domain_handle, LIBNDR_FLAG_REF_ALLOC);
6894
NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS, r->in.domain_handle));
6895
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_domain_handle_0, LIBNDR_FLAG_REF_ALLOC);
6896
if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
6897
NDR_PULL_ALLOC(ndr, r->in.account_name);
6899
_mem_save_account_name_0 = NDR_PULL_GET_MEM_CTX(ndr);
6900
NDR_PULL_SET_MEM_CTX(ndr, r->in.account_name, LIBNDR_FLAG_REF_ALLOC);
6901
NDR_CHECK(ndr_pull_lsa_String(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.account_name));
6902
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_account_name_0, LIBNDR_FLAG_REF_ALLOC);
6903
NDR_CHECK(ndr_pull_samr_UserAccessMask(ndr, NDR_SCALARS, &r->in.access_mask));
6904
NDR_PULL_ALLOC(ndr, r->out.user_handle);
6905
ZERO_STRUCTP(r->out.user_handle);
6906
NDR_PULL_ALLOC(ndr, r->out.rid);
6907
ZERO_STRUCTP(r->out.rid);
6909
if (flags & NDR_OUT) {
6910
if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
6911
NDR_PULL_ALLOC(ndr, r->out.user_handle);
6913
_mem_save_user_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
6914
NDR_PULL_SET_MEM_CTX(ndr, r->out.user_handle, LIBNDR_FLAG_REF_ALLOC);
6915
NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS, r->out.user_handle));
6916
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_user_handle_0, LIBNDR_FLAG_REF_ALLOC);
6917
if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
6918
NDR_PULL_ALLOC(ndr, r->out.rid);
6920
_mem_save_rid_0 = NDR_PULL_GET_MEM_CTX(ndr);
6921
NDR_PULL_SET_MEM_CTX(ndr, r->out.rid, LIBNDR_FLAG_REF_ALLOC);
6922
NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, r->out.rid));
6923
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_rid_0, LIBNDR_FLAG_REF_ALLOC);
6924
NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
6926
return NDR_ERR_SUCCESS;
6929
_PUBLIC_ void ndr_print_samr_CreateUser(struct ndr_print *ndr, const char *name, int flags, const struct samr_CreateUser *r)
6931
ndr_print_struct(ndr, name, "samr_CreateUser");
6932
if (r == NULL) { ndr_print_null(ndr); return; }
6934
if (flags & NDR_SET_VALUES) {
6935
ndr->flags |= LIBNDR_PRINT_SET_VALUES;
6937
if (flags & NDR_IN) {
6938
ndr_print_struct(ndr, "in", "samr_CreateUser");
6940
ndr_print_ptr(ndr, "domain_handle", r->in.domain_handle);
6942
ndr_print_policy_handle(ndr, "domain_handle", r->in.domain_handle);
6944
ndr_print_ptr(ndr, "account_name", r->in.account_name);
6946
ndr_print_lsa_String(ndr, "account_name", r->in.account_name);
6948
ndr_print_samr_UserAccessMask(ndr, "access_mask", r->in.access_mask);
6951
if (flags & NDR_OUT) {
6952
ndr_print_struct(ndr, "out", "samr_CreateUser");
6954
ndr_print_ptr(ndr, "user_handle", r->out.user_handle);
6956
ndr_print_policy_handle(ndr, "user_handle", r->out.user_handle);
6958
ndr_print_ptr(ndr, "rid", r->out.rid);
6960
ndr_print_uint32(ndr, "rid", *r->out.rid);
6962
ndr_print_NTSTATUS(ndr, "result", r->out.result);
6968
static enum ndr_err_code ndr_push_samr_EnumDomainUsers(struct ndr_push *ndr, int flags, const struct samr_EnumDomainUsers *r)
6970
if (flags & NDR_IN) {
6971
if (r->in.domain_handle == NULL) {
6972
return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
6974
NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS, r->in.domain_handle));
6975
if (r->in.resume_handle == NULL) {
6976
return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
6978
NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, *r->in.resume_handle));
6979
NDR_CHECK(ndr_push_samr_AcctFlags(ndr, NDR_SCALARS, r->in.acct_flags));
6980
NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->in.max_size));
6982
if (flags & NDR_OUT) {
6983
if (r->out.resume_handle == NULL) {
6984
return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
6986
NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, *r->out.resume_handle));
6987
if (r->out.sam == NULL) {
6988
return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
6990
NDR_CHECK(ndr_push_unique_ptr(ndr, *r->out.sam));
6992
NDR_CHECK(ndr_push_samr_SamArray(ndr, NDR_SCALARS|NDR_BUFFERS, *r->out.sam));
6994
if (r->out.num_entries == NULL) {
6995
return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
6997
NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, *r->out.num_entries));
6998
NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
7000
return NDR_ERR_SUCCESS;
7003
static enum ndr_err_code ndr_pull_samr_EnumDomainUsers(struct ndr_pull *ndr, int flags, struct samr_EnumDomainUsers *r)
7006
TALLOC_CTX *_mem_save_domain_handle_0;
7007
TALLOC_CTX *_mem_save_resume_handle_0;
7008
TALLOC_CTX *_mem_save_sam_0;
7009
TALLOC_CTX *_mem_save_sam_1;
7010
TALLOC_CTX *_mem_save_num_entries_0;
7011
if (flags & NDR_IN) {
7012
ZERO_STRUCT(r->out);
7014
if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
7015
NDR_PULL_ALLOC(ndr, r->in.domain_handle);
7017
_mem_save_domain_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
7018
NDR_PULL_SET_MEM_CTX(ndr, r->in.domain_handle, LIBNDR_FLAG_REF_ALLOC);
7019
NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS, r->in.domain_handle));
7020
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_domain_handle_0, LIBNDR_FLAG_REF_ALLOC);
7021
if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
7022
NDR_PULL_ALLOC(ndr, r->in.resume_handle);
7024
_mem_save_resume_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
7025
NDR_PULL_SET_MEM_CTX(ndr, r->in.resume_handle, LIBNDR_FLAG_REF_ALLOC);
7026
NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, r->in.resume_handle));
7027
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_resume_handle_0, LIBNDR_FLAG_REF_ALLOC);
7028
NDR_CHECK(ndr_pull_samr_AcctFlags(ndr, NDR_SCALARS, &r->in.acct_flags));
7029
NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->in.max_size));
7030
NDR_PULL_ALLOC(ndr, r->out.resume_handle);
7031
*r->out.resume_handle = *r->in.resume_handle;
7032
NDR_PULL_ALLOC(ndr, r->out.sam);
7033
ZERO_STRUCTP(r->out.sam);
7034
NDR_PULL_ALLOC(ndr, r->out.num_entries);
7035
ZERO_STRUCTP(r->out.num_entries);
7037
if (flags & NDR_OUT) {
7038
if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
7039
NDR_PULL_ALLOC(ndr, r->out.resume_handle);
7041
_mem_save_resume_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
7042
NDR_PULL_SET_MEM_CTX(ndr, r->out.resume_handle, LIBNDR_FLAG_REF_ALLOC);
7043
NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, r->out.resume_handle));
7044
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_resume_handle_0, LIBNDR_FLAG_REF_ALLOC);
7045
if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
7046
NDR_PULL_ALLOC(ndr, r->out.sam);
7048
_mem_save_sam_0 = NDR_PULL_GET_MEM_CTX(ndr);
7049
NDR_PULL_SET_MEM_CTX(ndr, r->out.sam, LIBNDR_FLAG_REF_ALLOC);
7050
NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_sam));
7052
NDR_PULL_ALLOC(ndr, *r->out.sam);
7057
_mem_save_sam_1 = NDR_PULL_GET_MEM_CTX(ndr);
7058
NDR_PULL_SET_MEM_CTX(ndr, *r->out.sam, 0);
7059
NDR_CHECK(ndr_pull_samr_SamArray(ndr, NDR_SCALARS|NDR_BUFFERS, *r->out.sam));
7060
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_sam_1, 0);
7062
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_sam_0, LIBNDR_FLAG_REF_ALLOC);
7063
if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
7064
NDR_PULL_ALLOC(ndr, r->out.num_entries);
7066
_mem_save_num_entries_0 = NDR_PULL_GET_MEM_CTX(ndr);
7067
NDR_PULL_SET_MEM_CTX(ndr, r->out.num_entries, LIBNDR_FLAG_REF_ALLOC);
7068
NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, r->out.num_entries));
7069
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_num_entries_0, LIBNDR_FLAG_REF_ALLOC);
7070
NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
7072
return NDR_ERR_SUCCESS;
7075
_PUBLIC_ void ndr_print_samr_EnumDomainUsers(struct ndr_print *ndr, const char *name, int flags, const struct samr_EnumDomainUsers *r)
7077
ndr_print_struct(ndr, name, "samr_EnumDomainUsers");
7078
if (r == NULL) { ndr_print_null(ndr); return; }
7080
if (flags & NDR_SET_VALUES) {
7081
ndr->flags |= LIBNDR_PRINT_SET_VALUES;
7083
if (flags & NDR_IN) {
7084
ndr_print_struct(ndr, "in", "samr_EnumDomainUsers");
7086
ndr_print_ptr(ndr, "domain_handle", r->in.domain_handle);
7088
ndr_print_policy_handle(ndr, "domain_handle", r->in.domain_handle);
7090
ndr_print_ptr(ndr, "resume_handle", r->in.resume_handle);
7092
ndr_print_uint32(ndr, "resume_handle", *r->in.resume_handle);
7094
ndr_print_samr_AcctFlags(ndr, "acct_flags", r->in.acct_flags);
7095
ndr_print_uint32(ndr, "max_size", r->in.max_size);
7098
if (flags & NDR_OUT) {
7099
ndr_print_struct(ndr, "out", "samr_EnumDomainUsers");
7101
ndr_print_ptr(ndr, "resume_handle", r->out.resume_handle);
7103
ndr_print_uint32(ndr, "resume_handle", *r->out.resume_handle);
7105
ndr_print_ptr(ndr, "sam", r->out.sam);
7107
ndr_print_ptr(ndr, "sam", *r->out.sam);
7110
ndr_print_samr_SamArray(ndr, "sam", *r->out.sam);
7114
ndr_print_ptr(ndr, "num_entries", r->out.num_entries);
7116
ndr_print_uint32(ndr, "num_entries", *r->out.num_entries);
7118
ndr_print_NTSTATUS(ndr, "result", r->out.result);
7124
static enum ndr_err_code ndr_push_samr_CreateDomAlias(struct ndr_push *ndr, int flags, const struct samr_CreateDomAlias *r)
7126
if (flags & NDR_IN) {
7127
if (r->in.domain_handle == NULL) {
7128
return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
7130
NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS, r->in.domain_handle));
7131
if (r->in.alias_name == NULL) {
7132
return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
7134
NDR_CHECK(ndr_push_lsa_String(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.alias_name));
7135
NDR_CHECK(ndr_push_samr_AliasAccessMask(ndr, NDR_SCALARS, r->in.access_mask));
7137
if (flags & NDR_OUT) {
7138
if (r->out.alias_handle == NULL) {
7139
return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
7141
NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS, r->out.alias_handle));
7142
if (r->out.rid == NULL) {
7143
return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
7145
NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, *r->out.rid));
7146
NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
7148
return NDR_ERR_SUCCESS;
7151
static enum ndr_err_code ndr_pull_samr_CreateDomAlias(struct ndr_pull *ndr, int flags, struct samr_CreateDomAlias *r)
7153
TALLOC_CTX *_mem_save_domain_handle_0;
7154
TALLOC_CTX *_mem_save_alias_name_0;
7155
TALLOC_CTX *_mem_save_alias_handle_0;
7156
TALLOC_CTX *_mem_save_rid_0;
7157
if (flags & NDR_IN) {
7158
ZERO_STRUCT(r->out);
7160
if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
7161
NDR_PULL_ALLOC(ndr, r->in.domain_handle);
7163
_mem_save_domain_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
7164
NDR_PULL_SET_MEM_CTX(ndr, r->in.domain_handle, LIBNDR_FLAG_REF_ALLOC);
7165
NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS, r->in.domain_handle));
7166
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_domain_handle_0, LIBNDR_FLAG_REF_ALLOC);
7167
if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
7168
NDR_PULL_ALLOC(ndr, r->in.alias_name);
7170
_mem_save_alias_name_0 = NDR_PULL_GET_MEM_CTX(ndr);
7171
NDR_PULL_SET_MEM_CTX(ndr, r->in.alias_name, LIBNDR_FLAG_REF_ALLOC);
7172
NDR_CHECK(ndr_pull_lsa_String(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.alias_name));
7173
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_alias_name_0, LIBNDR_FLAG_REF_ALLOC);
7174
NDR_CHECK(ndr_pull_samr_AliasAccessMask(ndr, NDR_SCALARS, &r->in.access_mask));
7175
NDR_PULL_ALLOC(ndr, r->out.alias_handle);
7176
ZERO_STRUCTP(r->out.alias_handle);
7177
NDR_PULL_ALLOC(ndr, r->out.rid);
7178
ZERO_STRUCTP(r->out.rid);
7180
if (flags & NDR_OUT) {
7181
if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
7182
NDR_PULL_ALLOC(ndr, r->out.alias_handle);
7184
_mem_save_alias_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
7185
NDR_PULL_SET_MEM_CTX(ndr, r->out.alias_handle, LIBNDR_FLAG_REF_ALLOC);
7186
NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS, r->out.alias_handle));
7187
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_alias_handle_0, LIBNDR_FLAG_REF_ALLOC);
7188
if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
7189
NDR_PULL_ALLOC(ndr, r->out.rid);
7191
_mem_save_rid_0 = NDR_PULL_GET_MEM_CTX(ndr);
7192
NDR_PULL_SET_MEM_CTX(ndr, r->out.rid, LIBNDR_FLAG_REF_ALLOC);
7193
NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, r->out.rid));
7194
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_rid_0, LIBNDR_FLAG_REF_ALLOC);
7195
NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
7197
return NDR_ERR_SUCCESS;
7200
_PUBLIC_ void ndr_print_samr_CreateDomAlias(struct ndr_print *ndr, const char *name, int flags, const struct samr_CreateDomAlias *r)
7202
ndr_print_struct(ndr, name, "samr_CreateDomAlias");
7203
if (r == NULL) { ndr_print_null(ndr); return; }
7205
if (flags & NDR_SET_VALUES) {
7206
ndr->flags |= LIBNDR_PRINT_SET_VALUES;
7208
if (flags & NDR_IN) {
7209
ndr_print_struct(ndr, "in", "samr_CreateDomAlias");
7211
ndr_print_ptr(ndr, "domain_handle", r->in.domain_handle);
7213
ndr_print_policy_handle(ndr, "domain_handle", r->in.domain_handle);
7215
ndr_print_ptr(ndr, "alias_name", r->in.alias_name);
7217
ndr_print_lsa_String(ndr, "alias_name", r->in.alias_name);
7219
ndr_print_samr_AliasAccessMask(ndr, "access_mask", r->in.access_mask);
7222
if (flags & NDR_OUT) {
7223
ndr_print_struct(ndr, "out", "samr_CreateDomAlias");
7225
ndr_print_ptr(ndr, "alias_handle", r->out.alias_handle);
7227
ndr_print_policy_handle(ndr, "alias_handle", r->out.alias_handle);
7229
ndr_print_ptr(ndr, "rid", r->out.rid);
7231
ndr_print_uint32(ndr, "rid", *r->out.rid);
7233
ndr_print_NTSTATUS(ndr, "result", r->out.result);
7239
static enum ndr_err_code ndr_push_samr_EnumDomainAliases(struct ndr_push *ndr, int flags, const struct samr_EnumDomainAliases *r)
7241
if (flags & NDR_IN) {
7242
if (r->in.domain_handle == NULL) {
7243
return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
7245
NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS, r->in.domain_handle));
7246
if (r->in.resume_handle == NULL) {
7247
return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
7249
NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, *r->in.resume_handle));
7250
NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->in.max_size));
7252
if (flags & NDR_OUT) {
7253
if (r->out.resume_handle == NULL) {
7254
return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
7256
NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, *r->out.resume_handle));
7257
if (r->out.sam == NULL) {
7258
return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
7260
NDR_CHECK(ndr_push_unique_ptr(ndr, *r->out.sam));
7262
NDR_CHECK(ndr_push_samr_SamArray(ndr, NDR_SCALARS|NDR_BUFFERS, *r->out.sam));
7264
if (r->out.num_entries == NULL) {
7265
return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
7267
NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, *r->out.num_entries));
7268
NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
7270
return NDR_ERR_SUCCESS;
7273
static enum ndr_err_code ndr_pull_samr_EnumDomainAliases(struct ndr_pull *ndr, int flags, struct samr_EnumDomainAliases *r)
7276
TALLOC_CTX *_mem_save_domain_handle_0;
7277
TALLOC_CTX *_mem_save_resume_handle_0;
7278
TALLOC_CTX *_mem_save_sam_0;
7279
TALLOC_CTX *_mem_save_sam_1;
7280
TALLOC_CTX *_mem_save_num_entries_0;
7281
if (flags & NDR_IN) {
7282
ZERO_STRUCT(r->out);
7284
if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
7285
NDR_PULL_ALLOC(ndr, r->in.domain_handle);
7287
_mem_save_domain_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
7288
NDR_PULL_SET_MEM_CTX(ndr, r->in.domain_handle, LIBNDR_FLAG_REF_ALLOC);
7289
NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS, r->in.domain_handle));
7290
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_domain_handle_0, LIBNDR_FLAG_REF_ALLOC);
7291
if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
7292
NDR_PULL_ALLOC(ndr, r->in.resume_handle);
7294
_mem_save_resume_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
7295
NDR_PULL_SET_MEM_CTX(ndr, r->in.resume_handle, LIBNDR_FLAG_REF_ALLOC);
7296
NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, r->in.resume_handle));
7297
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_resume_handle_0, LIBNDR_FLAG_REF_ALLOC);
7298
NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->in.max_size));
7299
NDR_PULL_ALLOC(ndr, r->out.resume_handle);
7300
*r->out.resume_handle = *r->in.resume_handle;
7301
NDR_PULL_ALLOC(ndr, r->out.sam);
7302
ZERO_STRUCTP(r->out.sam);
7303
NDR_PULL_ALLOC(ndr, r->out.num_entries);
7304
ZERO_STRUCTP(r->out.num_entries);
7306
if (flags & NDR_OUT) {
7307
if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
7308
NDR_PULL_ALLOC(ndr, r->out.resume_handle);
7310
_mem_save_resume_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
7311
NDR_PULL_SET_MEM_CTX(ndr, r->out.resume_handle, LIBNDR_FLAG_REF_ALLOC);
7312
NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, r->out.resume_handle));
7313
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_resume_handle_0, LIBNDR_FLAG_REF_ALLOC);
7314
if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
7315
NDR_PULL_ALLOC(ndr, r->out.sam);
7317
_mem_save_sam_0 = NDR_PULL_GET_MEM_CTX(ndr);
7318
NDR_PULL_SET_MEM_CTX(ndr, r->out.sam, LIBNDR_FLAG_REF_ALLOC);
7319
NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_sam));
7321
NDR_PULL_ALLOC(ndr, *r->out.sam);
7326
_mem_save_sam_1 = NDR_PULL_GET_MEM_CTX(ndr);
7327
NDR_PULL_SET_MEM_CTX(ndr, *r->out.sam, 0);
7328
NDR_CHECK(ndr_pull_samr_SamArray(ndr, NDR_SCALARS|NDR_BUFFERS, *r->out.sam));
7329
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_sam_1, 0);
7331
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_sam_0, LIBNDR_FLAG_REF_ALLOC);
7332
if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
7333
NDR_PULL_ALLOC(ndr, r->out.num_entries);
7335
_mem_save_num_entries_0 = NDR_PULL_GET_MEM_CTX(ndr);
7336
NDR_PULL_SET_MEM_CTX(ndr, r->out.num_entries, LIBNDR_FLAG_REF_ALLOC);
7337
NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, r->out.num_entries));
7338
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_num_entries_0, LIBNDR_FLAG_REF_ALLOC);
7339
NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
7341
return NDR_ERR_SUCCESS;
7344
_PUBLIC_ void ndr_print_samr_EnumDomainAliases(struct ndr_print *ndr, const char *name, int flags, const struct samr_EnumDomainAliases *r)
7346
ndr_print_struct(ndr, name, "samr_EnumDomainAliases");
7347
if (r == NULL) { ndr_print_null(ndr); return; }
7349
if (flags & NDR_SET_VALUES) {
7350
ndr->flags |= LIBNDR_PRINT_SET_VALUES;
7352
if (flags & NDR_IN) {
7353
ndr_print_struct(ndr, "in", "samr_EnumDomainAliases");
7355
ndr_print_ptr(ndr, "domain_handle", r->in.domain_handle);
7357
ndr_print_policy_handle(ndr, "domain_handle", r->in.domain_handle);
7359
ndr_print_ptr(ndr, "resume_handle", r->in.resume_handle);
7361
ndr_print_uint32(ndr, "resume_handle", *r->in.resume_handle);
7363
ndr_print_uint32(ndr, "max_size", r->in.max_size);
7366
if (flags & NDR_OUT) {
7367
ndr_print_struct(ndr, "out", "samr_EnumDomainAliases");
7369
ndr_print_ptr(ndr, "resume_handle", r->out.resume_handle);
7371
ndr_print_uint32(ndr, "resume_handle", *r->out.resume_handle);
7373
ndr_print_ptr(ndr, "sam", r->out.sam);
7375
ndr_print_ptr(ndr, "sam", *r->out.sam);
7378
ndr_print_samr_SamArray(ndr, "sam", *r->out.sam);
7382
ndr_print_ptr(ndr, "num_entries", r->out.num_entries);
7384
ndr_print_uint32(ndr, "num_entries", *r->out.num_entries);
7386
ndr_print_NTSTATUS(ndr, "result", r->out.result);
7392
static enum ndr_err_code ndr_push_samr_GetAliasMembership(struct ndr_push *ndr, int flags, const struct samr_GetAliasMembership *r)
7394
if (flags & NDR_IN) {
7395
if (r->in.domain_handle == NULL) {
7396
return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
7398
NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS, r->in.domain_handle));
7399
if (r->in.sids == NULL) {
7400
return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
7402
NDR_CHECK(ndr_push_lsa_SidArray(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.sids));
7404
if (flags & NDR_OUT) {
7405
if (r->out.rids == NULL) {
7406
return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
7408
NDR_CHECK(ndr_push_samr_Ids(ndr, NDR_SCALARS|NDR_BUFFERS, r->out.rids));
7409
NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
7411
return NDR_ERR_SUCCESS;
7414
static enum ndr_err_code ndr_pull_samr_GetAliasMembership(struct ndr_pull *ndr, int flags, struct samr_GetAliasMembership *r)
7416
TALLOC_CTX *_mem_save_domain_handle_0;
7417
TALLOC_CTX *_mem_save_sids_0;
7418
TALLOC_CTX *_mem_save_rids_0;
7419
if (flags & NDR_IN) {
7420
ZERO_STRUCT(r->out);
7422
if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
7423
NDR_PULL_ALLOC(ndr, r->in.domain_handle);
7425
_mem_save_domain_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
7426
NDR_PULL_SET_MEM_CTX(ndr, r->in.domain_handle, LIBNDR_FLAG_REF_ALLOC);
7427
NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS, r->in.domain_handle));
7428
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_domain_handle_0, LIBNDR_FLAG_REF_ALLOC);
7429
if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
7430
NDR_PULL_ALLOC(ndr, r->in.sids);
7432
_mem_save_sids_0 = NDR_PULL_GET_MEM_CTX(ndr);
7433
NDR_PULL_SET_MEM_CTX(ndr, r->in.sids, LIBNDR_FLAG_REF_ALLOC);
7434
NDR_CHECK(ndr_pull_lsa_SidArray(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.sids));
7435
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_sids_0, LIBNDR_FLAG_REF_ALLOC);
7436
NDR_PULL_ALLOC(ndr, r->out.rids);
7437
ZERO_STRUCTP(r->out.rids);
7439
if (flags & NDR_OUT) {
7440
if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
7441
NDR_PULL_ALLOC(ndr, r->out.rids);
7443
_mem_save_rids_0 = NDR_PULL_GET_MEM_CTX(ndr);
7444
NDR_PULL_SET_MEM_CTX(ndr, r->out.rids, LIBNDR_FLAG_REF_ALLOC);
7445
NDR_CHECK(ndr_pull_samr_Ids(ndr, NDR_SCALARS|NDR_BUFFERS, r->out.rids));
7446
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_rids_0, LIBNDR_FLAG_REF_ALLOC);
7447
NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
7449
return NDR_ERR_SUCCESS;
7452
_PUBLIC_ void ndr_print_samr_GetAliasMembership(struct ndr_print *ndr, const char *name, int flags, const struct samr_GetAliasMembership *r)
7454
ndr_print_struct(ndr, name, "samr_GetAliasMembership");
7455
if (r == NULL) { ndr_print_null(ndr); return; }
7457
if (flags & NDR_SET_VALUES) {
7458
ndr->flags |= LIBNDR_PRINT_SET_VALUES;
7460
if (flags & NDR_IN) {
7461
ndr_print_struct(ndr, "in", "samr_GetAliasMembership");
7463
ndr_print_ptr(ndr, "domain_handle", r->in.domain_handle);
7465
ndr_print_policy_handle(ndr, "domain_handle", r->in.domain_handle);
7467
ndr_print_ptr(ndr, "sids", r->in.sids);
7469
ndr_print_lsa_SidArray(ndr, "sids", r->in.sids);
7473
if (flags & NDR_OUT) {
7474
ndr_print_struct(ndr, "out", "samr_GetAliasMembership");
7476
ndr_print_ptr(ndr, "rids", r->out.rids);
7478
ndr_print_samr_Ids(ndr, "rids", r->out.rids);
7480
ndr_print_NTSTATUS(ndr, "result", r->out.result);
7486
_PUBLIC_ enum ndr_err_code ndr_push_samr_LookupNames(struct ndr_push *ndr, int flags, const struct samr_LookupNames *r)
7488
uint32_t cntr_names_0;
7489
if (flags & NDR_IN) {
7490
if (r->in.domain_handle == NULL) {
7491
return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
7493
NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS, r->in.domain_handle));
7494
NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->in.num_names));
7495
NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, 1000));
7496
NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, 0));
7497
NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, r->in.num_names));
7498
for (cntr_names_0 = 0; cntr_names_0 < r->in.num_names; cntr_names_0++) {
7499
NDR_CHECK(ndr_push_lsa_String(ndr, NDR_SCALARS, &r->in.names[cntr_names_0]));
7501
for (cntr_names_0 = 0; cntr_names_0 < r->in.num_names; cntr_names_0++) {
7502
NDR_CHECK(ndr_push_lsa_String(ndr, NDR_BUFFERS, &r->in.names[cntr_names_0]));
7505
if (flags & NDR_OUT) {
7506
if (r->out.rids == NULL) {
7507
return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
7509
NDR_CHECK(ndr_push_samr_Ids(ndr, NDR_SCALARS|NDR_BUFFERS, r->out.rids));
7510
if (r->out.types == NULL) {
7511
return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
7513
NDR_CHECK(ndr_push_samr_Ids(ndr, NDR_SCALARS|NDR_BUFFERS, r->out.types));
7514
NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
7516
return NDR_ERR_SUCCESS;
7519
_PUBLIC_ enum ndr_err_code ndr_pull_samr_LookupNames(struct ndr_pull *ndr, int flags, struct samr_LookupNames *r)
7521
uint32_t cntr_names_0;
7522
TALLOC_CTX *_mem_save_domain_handle_0;
7523
TALLOC_CTX *_mem_save_names_0;
7524
TALLOC_CTX *_mem_save_rids_0;
7525
TALLOC_CTX *_mem_save_types_0;
7526
if (flags & NDR_IN) {
7527
ZERO_STRUCT(r->out);
7529
if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
7530
NDR_PULL_ALLOC(ndr, r->in.domain_handle);
7532
_mem_save_domain_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
7533
NDR_PULL_SET_MEM_CTX(ndr, r->in.domain_handle, LIBNDR_FLAG_REF_ALLOC);
7534
NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS, r->in.domain_handle));
7535
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_domain_handle_0, LIBNDR_FLAG_REF_ALLOC);
7536
NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->in.num_names));
7537
if (r->in.num_names > 1000) {
7538
return ndr_pull_error(ndr, NDR_ERR_RANGE, "value out of range");
7540
NDR_CHECK(ndr_pull_array_size(ndr, &r->in.names));
7541
NDR_CHECK(ndr_pull_array_length(ndr, &r->in.names));
7542
if (ndr_get_array_length(ndr, &r->in.names) > ndr_get_array_size(ndr, &r->in.names)) {
7543
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.names), ndr_get_array_length(ndr, &r->in.names));
7545
NDR_PULL_ALLOC_N(ndr, r->in.names, ndr_get_array_size(ndr, &r->in.names));
7546
_mem_save_names_0 = NDR_PULL_GET_MEM_CTX(ndr);
7547
NDR_PULL_SET_MEM_CTX(ndr, r->in.names, 0);
7548
for (cntr_names_0 = 0; cntr_names_0 < ndr_get_array_length(ndr, &r->in.names); cntr_names_0++) {
7549
NDR_CHECK(ndr_pull_lsa_String(ndr, NDR_SCALARS, &r->in.names[cntr_names_0]));
7551
for (cntr_names_0 = 0; cntr_names_0 < ndr_get_array_length(ndr, &r->in.names); cntr_names_0++) {
7552
NDR_CHECK(ndr_pull_lsa_String(ndr, NDR_BUFFERS, &r->in.names[cntr_names_0]));
7554
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_names_0, 0);
7555
NDR_PULL_ALLOC(ndr, r->out.rids);
7556
ZERO_STRUCTP(r->out.rids);
7557
NDR_PULL_ALLOC(ndr, r->out.types);
7558
ZERO_STRUCTP(r->out.types);
7560
NDR_CHECK(ndr_check_array_size(ndr, (void*)&r->in.names, 1000));
7563
NDR_CHECK(ndr_check_array_length(ndr, (void*)&r->in.names, r->in.num_names));
7566
if (flags & NDR_OUT) {
7567
if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
7568
NDR_PULL_ALLOC(ndr, r->out.rids);
7570
_mem_save_rids_0 = NDR_PULL_GET_MEM_CTX(ndr);
7571
NDR_PULL_SET_MEM_CTX(ndr, r->out.rids, LIBNDR_FLAG_REF_ALLOC);
7572
NDR_CHECK(ndr_pull_samr_Ids(ndr, NDR_SCALARS|NDR_BUFFERS, r->out.rids));
7573
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_rids_0, LIBNDR_FLAG_REF_ALLOC);
7574
if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
7575
NDR_PULL_ALLOC(ndr, r->out.types);
7577
_mem_save_types_0 = NDR_PULL_GET_MEM_CTX(ndr);
7578
NDR_PULL_SET_MEM_CTX(ndr, r->out.types, LIBNDR_FLAG_REF_ALLOC);
7579
NDR_CHECK(ndr_pull_samr_Ids(ndr, NDR_SCALARS|NDR_BUFFERS, r->out.types));
7580
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_types_0, LIBNDR_FLAG_REF_ALLOC);
7581
NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
7583
return NDR_ERR_SUCCESS;
7586
_PUBLIC_ void ndr_print_samr_LookupNames(struct ndr_print *ndr, const char *name, int flags, const struct samr_LookupNames *r)
7588
uint32_t cntr_names_0;
7589
ndr_print_struct(ndr, name, "samr_LookupNames");
7590
if (r == NULL) { ndr_print_null(ndr); return; }
7592
if (flags & NDR_SET_VALUES) {
7593
ndr->flags |= LIBNDR_PRINT_SET_VALUES;
7595
if (flags & NDR_IN) {
7596
ndr_print_struct(ndr, "in", "samr_LookupNames");
7598
ndr_print_ptr(ndr, "domain_handle", r->in.domain_handle);
7600
ndr_print_policy_handle(ndr, "domain_handle", r->in.domain_handle);
7602
ndr_print_uint32(ndr, "num_names", r->in.num_names);
7603
ndr->print(ndr, "%s: ARRAY(%d)", "names", (int)r->in.num_names);
7605
for (cntr_names_0=0;cntr_names_0<r->in.num_names;cntr_names_0++) {
7606
ndr_print_lsa_String(ndr, "names", &r->in.names[cntr_names_0]);
7611
if (flags & NDR_OUT) {
7612
ndr_print_struct(ndr, "out", "samr_LookupNames");
7614
ndr_print_ptr(ndr, "rids", r->out.rids);
7616
ndr_print_samr_Ids(ndr, "rids", r->out.rids);
7618
ndr_print_ptr(ndr, "types", r->out.types);
7620
ndr_print_samr_Ids(ndr, "types", r->out.types);
7622
ndr_print_NTSTATUS(ndr, "result", r->out.result);
7628
static enum ndr_err_code ndr_push_samr_LookupRids(struct ndr_push *ndr, int flags, const struct samr_LookupRids *r)
7630
uint32_t cntr_rids_0;
7631
if (flags & NDR_IN) {
7632
if (r->in.domain_handle == NULL) {
7633
return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
7635
NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS, r->in.domain_handle));
7636
NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->in.num_rids));
7637
NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, 1000));
7638
NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, 0));
7639
NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, r->in.num_rids));
7640
for (cntr_rids_0 = 0; cntr_rids_0 < r->in.num_rids; cntr_rids_0++) {
7641
NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->in.rids[cntr_rids_0]));
7644
if (flags & NDR_OUT) {
7645
if (r->out.names == NULL) {
7646
return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
7648
NDR_CHECK(ndr_push_lsa_Strings(ndr, NDR_SCALARS|NDR_BUFFERS, r->out.names));
7649
if (r->out.types == NULL) {
7650
return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
7652
NDR_CHECK(ndr_push_samr_Ids(ndr, NDR_SCALARS|NDR_BUFFERS, r->out.types));
7653
NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
7655
return NDR_ERR_SUCCESS;
7658
static enum ndr_err_code ndr_pull_samr_LookupRids(struct ndr_pull *ndr, int flags, struct samr_LookupRids *r)
7660
uint32_t cntr_rids_0;
7661
TALLOC_CTX *_mem_save_domain_handle_0;
7662
TALLOC_CTX *_mem_save_rids_0;
7663
TALLOC_CTX *_mem_save_names_0;
7664
TALLOC_CTX *_mem_save_types_0;
7665
if (flags & NDR_IN) {
7666
ZERO_STRUCT(r->out);
7668
if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
7669
NDR_PULL_ALLOC(ndr, r->in.domain_handle);
7671
_mem_save_domain_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
7672
NDR_PULL_SET_MEM_CTX(ndr, r->in.domain_handle, LIBNDR_FLAG_REF_ALLOC);
7673
NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS, r->in.domain_handle));
7674
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_domain_handle_0, LIBNDR_FLAG_REF_ALLOC);
7675
NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->in.num_rids));
7676
if (r->in.num_rids > 1000) {
7677
return ndr_pull_error(ndr, NDR_ERR_RANGE, "value out of range");
7679
NDR_CHECK(ndr_pull_array_size(ndr, &r->in.rids));
7680
NDR_CHECK(ndr_pull_array_length(ndr, &r->in.rids));
7681
if (ndr_get_array_length(ndr, &r->in.rids) > ndr_get_array_size(ndr, &r->in.rids)) {
7682
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.rids), ndr_get_array_length(ndr, &r->in.rids));
7684
NDR_PULL_ALLOC_N(ndr, r->in.rids, ndr_get_array_size(ndr, &r->in.rids));
7685
_mem_save_rids_0 = NDR_PULL_GET_MEM_CTX(ndr);
7686
NDR_PULL_SET_MEM_CTX(ndr, r->in.rids, 0);
7687
for (cntr_rids_0 = 0; cntr_rids_0 < ndr_get_array_length(ndr, &r->in.rids); cntr_rids_0++) {
7688
NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->in.rids[cntr_rids_0]));
7690
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_rids_0, 0);
7691
NDR_PULL_ALLOC(ndr, r->out.names);
7692
ZERO_STRUCTP(r->out.names);
7693
NDR_PULL_ALLOC(ndr, r->out.types);
7694
ZERO_STRUCTP(r->out.types);
7696
NDR_CHECK(ndr_check_array_size(ndr, (void*)&r->in.rids, 1000));
7699
NDR_CHECK(ndr_check_array_length(ndr, (void*)&r->in.rids, r->in.num_rids));
7702
if (flags & NDR_OUT) {
7703
if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
7704
NDR_PULL_ALLOC(ndr, r->out.names);
7706
_mem_save_names_0 = NDR_PULL_GET_MEM_CTX(ndr);
7707
NDR_PULL_SET_MEM_CTX(ndr, r->out.names, LIBNDR_FLAG_REF_ALLOC);
7708
NDR_CHECK(ndr_pull_lsa_Strings(ndr, NDR_SCALARS|NDR_BUFFERS, r->out.names));
7709
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_names_0, LIBNDR_FLAG_REF_ALLOC);
7710
if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
7711
NDR_PULL_ALLOC(ndr, r->out.types);
7713
_mem_save_types_0 = NDR_PULL_GET_MEM_CTX(ndr);
7714
NDR_PULL_SET_MEM_CTX(ndr, r->out.types, LIBNDR_FLAG_REF_ALLOC);
7715
NDR_CHECK(ndr_pull_samr_Ids(ndr, NDR_SCALARS|NDR_BUFFERS, r->out.types));
7716
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_types_0, LIBNDR_FLAG_REF_ALLOC);
7717
NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
7719
return NDR_ERR_SUCCESS;
7722
_PUBLIC_ void ndr_print_samr_LookupRids(struct ndr_print *ndr, const char *name, int flags, const struct samr_LookupRids *r)
7724
uint32_t cntr_rids_0;
7725
ndr_print_struct(ndr, name, "samr_LookupRids");
7726
if (r == NULL) { ndr_print_null(ndr); return; }
7728
if (flags & NDR_SET_VALUES) {
7729
ndr->flags |= LIBNDR_PRINT_SET_VALUES;
7731
if (flags & NDR_IN) {
7732
ndr_print_struct(ndr, "in", "samr_LookupRids");
7734
ndr_print_ptr(ndr, "domain_handle", r->in.domain_handle);
7736
ndr_print_policy_handle(ndr, "domain_handle", r->in.domain_handle);
7738
ndr_print_uint32(ndr, "num_rids", r->in.num_rids);
7739
ndr->print(ndr, "%s: ARRAY(%d)", "rids", (int)r->in.num_rids);
7741
for (cntr_rids_0=0;cntr_rids_0<r->in.num_rids;cntr_rids_0++) {
7742
ndr_print_uint32(ndr, "rids", r->in.rids[cntr_rids_0]);
7747
if (flags & NDR_OUT) {
7748
ndr_print_struct(ndr, "out", "samr_LookupRids");
7750
ndr_print_ptr(ndr, "names", r->out.names);
7752
ndr_print_lsa_Strings(ndr, "names", r->out.names);
7754
ndr_print_ptr(ndr, "types", r->out.types);
7756
ndr_print_samr_Ids(ndr, "types", r->out.types);
7758
ndr_print_NTSTATUS(ndr, "result", r->out.result);
7764
static enum ndr_err_code ndr_push_samr_OpenGroup(struct ndr_push *ndr, int flags, const struct samr_OpenGroup *r)
7766
if (flags & NDR_IN) {
7767
if (r->in.domain_handle == NULL) {
7768
return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
7770
NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS, r->in.domain_handle));
7771
NDR_CHECK(ndr_push_samr_GroupAccessMask(ndr, NDR_SCALARS, r->in.access_mask));
7772
NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->in.rid));
7774
if (flags & NDR_OUT) {
7775
if (r->out.group_handle == NULL) {
7776
return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
7778
NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS, r->out.group_handle));
7779
NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
7781
return NDR_ERR_SUCCESS;
7784
static enum ndr_err_code ndr_pull_samr_OpenGroup(struct ndr_pull *ndr, int flags, struct samr_OpenGroup *r)
7786
TALLOC_CTX *_mem_save_domain_handle_0;
7787
TALLOC_CTX *_mem_save_group_handle_0;
7788
if (flags & NDR_IN) {
7789
ZERO_STRUCT(r->out);
7791
if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
7792
NDR_PULL_ALLOC(ndr, r->in.domain_handle);
7794
_mem_save_domain_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
7795
NDR_PULL_SET_MEM_CTX(ndr, r->in.domain_handle, LIBNDR_FLAG_REF_ALLOC);
7796
NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS, r->in.domain_handle));
7797
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_domain_handle_0, LIBNDR_FLAG_REF_ALLOC);
7798
NDR_CHECK(ndr_pull_samr_GroupAccessMask(ndr, NDR_SCALARS, &r->in.access_mask));
7799
NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->in.rid));
7800
NDR_PULL_ALLOC(ndr, r->out.group_handle);
7801
ZERO_STRUCTP(r->out.group_handle);
7803
if (flags & NDR_OUT) {
7804
if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
7805
NDR_PULL_ALLOC(ndr, r->out.group_handle);
7807
_mem_save_group_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
7808
NDR_PULL_SET_MEM_CTX(ndr, r->out.group_handle, LIBNDR_FLAG_REF_ALLOC);
7809
NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS, r->out.group_handle));
7810
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_group_handle_0, LIBNDR_FLAG_REF_ALLOC);
7811
NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
7813
return NDR_ERR_SUCCESS;
7816
_PUBLIC_ void ndr_print_samr_OpenGroup(struct ndr_print *ndr, const char *name, int flags, const struct samr_OpenGroup *r)
7818
ndr_print_struct(ndr, name, "samr_OpenGroup");
7819
if (r == NULL) { ndr_print_null(ndr); return; }
7821
if (flags & NDR_SET_VALUES) {
7822
ndr->flags |= LIBNDR_PRINT_SET_VALUES;
7824
if (flags & NDR_IN) {
7825
ndr_print_struct(ndr, "in", "samr_OpenGroup");
7827
ndr_print_ptr(ndr, "domain_handle", r->in.domain_handle);
7829
ndr_print_policy_handle(ndr, "domain_handle", r->in.domain_handle);
7831
ndr_print_samr_GroupAccessMask(ndr, "access_mask", r->in.access_mask);
7832
ndr_print_uint32(ndr, "rid", r->in.rid);
7835
if (flags & NDR_OUT) {
7836
ndr_print_struct(ndr, "out", "samr_OpenGroup");
7838
ndr_print_ptr(ndr, "group_handle", r->out.group_handle);
7840
ndr_print_policy_handle(ndr, "group_handle", r->out.group_handle);
7842
ndr_print_NTSTATUS(ndr, "result", r->out.result);
7848
static enum ndr_err_code ndr_push_samr_QueryGroupInfo(struct ndr_push *ndr, int flags, const struct samr_QueryGroupInfo *r)
7850
if (flags & NDR_IN) {
7851
if (r->in.group_handle == NULL) {
7852
return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
7854
NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS, r->in.group_handle));
7855
NDR_CHECK(ndr_push_samr_GroupInfoEnum(ndr, NDR_SCALARS, r->in.level));
7857
if (flags & NDR_OUT) {
7858
if (r->out.info == NULL) {
7859
return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
7861
NDR_CHECK(ndr_push_unique_ptr(ndr, *r->out.info));
7863
NDR_CHECK(ndr_push_set_switch_value(ndr, *r->out.info, r->in.level));
7864
NDR_CHECK(ndr_push_samr_GroupInfo(ndr, NDR_SCALARS|NDR_BUFFERS, *r->out.info));
7866
NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
7868
return NDR_ERR_SUCCESS;
7871
static enum ndr_err_code ndr_pull_samr_QueryGroupInfo(struct ndr_pull *ndr, int flags, struct samr_QueryGroupInfo *r)
7874
TALLOC_CTX *_mem_save_group_handle_0;
7875
TALLOC_CTX *_mem_save_info_0;
7876
TALLOC_CTX *_mem_save_info_1;
7877
if (flags & NDR_IN) {
7878
ZERO_STRUCT(r->out);
7880
if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
7881
NDR_PULL_ALLOC(ndr, r->in.group_handle);
7883
_mem_save_group_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
7884
NDR_PULL_SET_MEM_CTX(ndr, r->in.group_handle, LIBNDR_FLAG_REF_ALLOC);
7885
NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS, r->in.group_handle));
7886
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_group_handle_0, LIBNDR_FLAG_REF_ALLOC);
7887
NDR_CHECK(ndr_pull_samr_GroupInfoEnum(ndr, NDR_SCALARS, &r->in.level));
7888
NDR_PULL_ALLOC(ndr, r->out.info);
7889
ZERO_STRUCTP(r->out.info);
7891
if (flags & NDR_OUT) {
7892
if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
7893
NDR_PULL_ALLOC(ndr, r->out.info);
7895
_mem_save_info_0 = NDR_PULL_GET_MEM_CTX(ndr);
7896
NDR_PULL_SET_MEM_CTX(ndr, r->out.info, LIBNDR_FLAG_REF_ALLOC);
7897
NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_info));
7899
NDR_PULL_ALLOC(ndr, *r->out.info);
7901
*r->out.info = NULL;
7904
_mem_save_info_1 = NDR_PULL_GET_MEM_CTX(ndr);
7905
NDR_PULL_SET_MEM_CTX(ndr, *r->out.info, 0);
7906
NDR_CHECK(ndr_pull_set_switch_value(ndr, *r->out.info, r->in.level));
7907
NDR_CHECK(ndr_pull_samr_GroupInfo(ndr, NDR_SCALARS|NDR_BUFFERS, *r->out.info));
7908
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_info_1, 0);
7910
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_info_0, LIBNDR_FLAG_REF_ALLOC);
7911
NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
7913
return NDR_ERR_SUCCESS;
7916
_PUBLIC_ void ndr_print_samr_QueryGroupInfo(struct ndr_print *ndr, const char *name, int flags, const struct samr_QueryGroupInfo *r)
7918
ndr_print_struct(ndr, name, "samr_QueryGroupInfo");
7919
if (r == NULL) { ndr_print_null(ndr); return; }
7921
if (flags & NDR_SET_VALUES) {
7922
ndr->flags |= LIBNDR_PRINT_SET_VALUES;
7924
if (flags & NDR_IN) {
7925
ndr_print_struct(ndr, "in", "samr_QueryGroupInfo");
7927
ndr_print_ptr(ndr, "group_handle", r->in.group_handle);
7929
ndr_print_policy_handle(ndr, "group_handle", r->in.group_handle);
7931
ndr_print_samr_GroupInfoEnum(ndr, "level", r->in.level);
7934
if (flags & NDR_OUT) {
7935
ndr_print_struct(ndr, "out", "samr_QueryGroupInfo");
7937
ndr_print_ptr(ndr, "info", r->out.info);
7939
ndr_print_ptr(ndr, "info", *r->out.info);
7942
ndr_print_set_switch_value(ndr, *r->out.info, r->in.level);
7943
ndr_print_samr_GroupInfo(ndr, "info", *r->out.info);
7947
ndr_print_NTSTATUS(ndr, "result", r->out.result);
7953
static enum ndr_err_code ndr_push_samr_SetGroupInfo(struct ndr_push *ndr, int flags, const struct samr_SetGroupInfo *r)
7955
if (flags & NDR_IN) {
7956
if (r->in.group_handle == NULL) {
7957
return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
7959
NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS, r->in.group_handle));
7960
NDR_CHECK(ndr_push_samr_GroupInfoEnum(ndr, NDR_SCALARS, r->in.level));
7961
if (r->in.info == NULL) {
7962
return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
7964
NDR_CHECK(ndr_push_set_switch_value(ndr, r->in.info, r->in.level));
7965
NDR_CHECK(ndr_push_samr_GroupInfo(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.info));
7967
if (flags & NDR_OUT) {
7968
NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
7970
return NDR_ERR_SUCCESS;
7973
static enum ndr_err_code ndr_pull_samr_SetGroupInfo(struct ndr_pull *ndr, int flags, struct samr_SetGroupInfo *r)
7975
TALLOC_CTX *_mem_save_group_handle_0;
7976
TALLOC_CTX *_mem_save_info_0;
7977
if (flags & NDR_IN) {
7978
if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
7979
NDR_PULL_ALLOC(ndr, r->in.group_handle);
7981
_mem_save_group_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
7982
NDR_PULL_SET_MEM_CTX(ndr, r->in.group_handle, LIBNDR_FLAG_REF_ALLOC);
7983
NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS, r->in.group_handle));
7984
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_group_handle_0, LIBNDR_FLAG_REF_ALLOC);
7985
NDR_CHECK(ndr_pull_samr_GroupInfoEnum(ndr, NDR_SCALARS, &r->in.level));
7986
if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
7987
NDR_PULL_ALLOC(ndr, r->in.info);
7989
_mem_save_info_0 = NDR_PULL_GET_MEM_CTX(ndr);
7990
NDR_PULL_SET_MEM_CTX(ndr, r->in.info, LIBNDR_FLAG_REF_ALLOC);
7991
NDR_CHECK(ndr_pull_set_switch_value(ndr, r->in.info, r->in.level));
7992
NDR_CHECK(ndr_pull_samr_GroupInfo(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.info));
7993
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_info_0, LIBNDR_FLAG_REF_ALLOC);
7995
if (flags & NDR_OUT) {
7996
NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
7998
return NDR_ERR_SUCCESS;
8001
_PUBLIC_ void ndr_print_samr_SetGroupInfo(struct ndr_print *ndr, const char *name, int flags, const struct samr_SetGroupInfo *r)
8003
ndr_print_struct(ndr, name, "samr_SetGroupInfo");
8004
if (r == NULL) { ndr_print_null(ndr); return; }
8006
if (flags & NDR_SET_VALUES) {
8007
ndr->flags |= LIBNDR_PRINT_SET_VALUES;
8009
if (flags & NDR_IN) {
8010
ndr_print_struct(ndr, "in", "samr_SetGroupInfo");
8012
ndr_print_ptr(ndr, "group_handle", r->in.group_handle);
8014
ndr_print_policy_handle(ndr, "group_handle", r->in.group_handle);
8016
ndr_print_samr_GroupInfoEnum(ndr, "level", r->in.level);
8017
ndr_print_ptr(ndr, "info", r->in.info);
8019
ndr_print_set_switch_value(ndr, r->in.info, r->in.level);
8020
ndr_print_samr_GroupInfo(ndr, "info", r->in.info);
8024
if (flags & NDR_OUT) {
8025
ndr_print_struct(ndr, "out", "samr_SetGroupInfo");
8027
ndr_print_NTSTATUS(ndr, "result", r->out.result);
8033
static enum ndr_err_code ndr_push_samr_AddGroupMember(struct ndr_push *ndr, int flags, const struct samr_AddGroupMember *r)
8035
if (flags & NDR_IN) {
8036
if (r->in.group_handle == NULL) {
8037
return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
8039
NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS, r->in.group_handle));
8040
NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->in.rid));
8041
NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->in.flags));
8043
if (flags & NDR_OUT) {
8044
NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
8046
return NDR_ERR_SUCCESS;
8049
static enum ndr_err_code ndr_pull_samr_AddGroupMember(struct ndr_pull *ndr, int flags, struct samr_AddGroupMember *r)
8051
TALLOC_CTX *_mem_save_group_handle_0;
8052
if (flags & NDR_IN) {
8053
if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
8054
NDR_PULL_ALLOC(ndr, r->in.group_handle);
8056
_mem_save_group_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
8057
NDR_PULL_SET_MEM_CTX(ndr, r->in.group_handle, LIBNDR_FLAG_REF_ALLOC);
8058
NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS, r->in.group_handle));
8059
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_group_handle_0, LIBNDR_FLAG_REF_ALLOC);
8060
NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->in.rid));
8061
NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->in.flags));
8063
if (flags & NDR_OUT) {
8064
NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
8066
return NDR_ERR_SUCCESS;
8069
_PUBLIC_ void ndr_print_samr_AddGroupMember(struct ndr_print *ndr, const char *name, int flags, const struct samr_AddGroupMember *r)
8071
ndr_print_struct(ndr, name, "samr_AddGroupMember");
8072
if (r == NULL) { ndr_print_null(ndr); return; }
8074
if (flags & NDR_SET_VALUES) {
8075
ndr->flags |= LIBNDR_PRINT_SET_VALUES;
8077
if (flags & NDR_IN) {
8078
ndr_print_struct(ndr, "in", "samr_AddGroupMember");
8080
ndr_print_ptr(ndr, "group_handle", r->in.group_handle);
8082
ndr_print_policy_handle(ndr, "group_handle", r->in.group_handle);
8084
ndr_print_uint32(ndr, "rid", r->in.rid);
8085
ndr_print_uint32(ndr, "flags", r->in.flags);
8088
if (flags & NDR_OUT) {
8089
ndr_print_struct(ndr, "out", "samr_AddGroupMember");
8091
ndr_print_NTSTATUS(ndr, "result", r->out.result);
8097
static enum ndr_err_code ndr_push_samr_DeleteDomainGroup(struct ndr_push *ndr, int flags, const struct samr_DeleteDomainGroup *r)
8099
if (flags & NDR_IN) {
8100
if (r->in.group_handle == NULL) {
8101
return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
8103
NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS, r->in.group_handle));
8105
if (flags & NDR_OUT) {
8106
if (r->out.group_handle == NULL) {
8107
return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
8109
NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS, r->out.group_handle));
8110
NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
8112
return NDR_ERR_SUCCESS;
8115
static enum ndr_err_code ndr_pull_samr_DeleteDomainGroup(struct ndr_pull *ndr, int flags, struct samr_DeleteDomainGroup *r)
8117
TALLOC_CTX *_mem_save_group_handle_0;
8118
if (flags & NDR_IN) {
8119
ZERO_STRUCT(r->out);
8121
if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
8122
NDR_PULL_ALLOC(ndr, r->in.group_handle);
8124
_mem_save_group_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
8125
NDR_PULL_SET_MEM_CTX(ndr, r->in.group_handle, LIBNDR_FLAG_REF_ALLOC);
8126
NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS, r->in.group_handle));
8127
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_group_handle_0, LIBNDR_FLAG_REF_ALLOC);
8128
NDR_PULL_ALLOC(ndr, r->out.group_handle);
8129
*r->out.group_handle = *r->in.group_handle;
8131
if (flags & NDR_OUT) {
8132
if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
8133
NDR_PULL_ALLOC(ndr, r->out.group_handle);
8135
_mem_save_group_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
8136
NDR_PULL_SET_MEM_CTX(ndr, r->out.group_handle, LIBNDR_FLAG_REF_ALLOC);
8137
NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS, r->out.group_handle));
8138
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_group_handle_0, LIBNDR_FLAG_REF_ALLOC);
8139
NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
8141
return NDR_ERR_SUCCESS;
8144
_PUBLIC_ void ndr_print_samr_DeleteDomainGroup(struct ndr_print *ndr, const char *name, int flags, const struct samr_DeleteDomainGroup *r)
8146
ndr_print_struct(ndr, name, "samr_DeleteDomainGroup");
8147
if (r == NULL) { ndr_print_null(ndr); return; }
8149
if (flags & NDR_SET_VALUES) {
8150
ndr->flags |= LIBNDR_PRINT_SET_VALUES;
8152
if (flags & NDR_IN) {
8153
ndr_print_struct(ndr, "in", "samr_DeleteDomainGroup");
8155
ndr_print_ptr(ndr, "group_handle", r->in.group_handle);
8157
ndr_print_policy_handle(ndr, "group_handle", r->in.group_handle);
8161
if (flags & NDR_OUT) {
8162
ndr_print_struct(ndr, "out", "samr_DeleteDomainGroup");
8164
ndr_print_ptr(ndr, "group_handle", r->out.group_handle);
8166
ndr_print_policy_handle(ndr, "group_handle", r->out.group_handle);
8168
ndr_print_NTSTATUS(ndr, "result", r->out.result);
8174
static enum ndr_err_code ndr_push_samr_DeleteGroupMember(struct ndr_push *ndr, int flags, const struct samr_DeleteGroupMember *r)
8176
if (flags & NDR_IN) {
8177
if (r->in.group_handle == NULL) {
8178
return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
8180
NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS, r->in.group_handle));
8181
NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->in.rid));
8183
if (flags & NDR_OUT) {
8184
NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
8186
return NDR_ERR_SUCCESS;
8189
static enum ndr_err_code ndr_pull_samr_DeleteGroupMember(struct ndr_pull *ndr, int flags, struct samr_DeleteGroupMember *r)
8191
TALLOC_CTX *_mem_save_group_handle_0;
8192
if (flags & NDR_IN) {
8193
if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
8194
NDR_PULL_ALLOC(ndr, r->in.group_handle);
8196
_mem_save_group_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
8197
NDR_PULL_SET_MEM_CTX(ndr, r->in.group_handle, LIBNDR_FLAG_REF_ALLOC);
8198
NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS, r->in.group_handle));
8199
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_group_handle_0, LIBNDR_FLAG_REF_ALLOC);
8200
NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->in.rid));
8202
if (flags & NDR_OUT) {
8203
NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
8205
return NDR_ERR_SUCCESS;
8208
_PUBLIC_ void ndr_print_samr_DeleteGroupMember(struct ndr_print *ndr, const char *name, int flags, const struct samr_DeleteGroupMember *r)
8210
ndr_print_struct(ndr, name, "samr_DeleteGroupMember");
8211
if (r == NULL) { ndr_print_null(ndr); return; }
8213
if (flags & NDR_SET_VALUES) {
8214
ndr->flags |= LIBNDR_PRINT_SET_VALUES;
8216
if (flags & NDR_IN) {
8217
ndr_print_struct(ndr, "in", "samr_DeleteGroupMember");
8219
ndr_print_ptr(ndr, "group_handle", r->in.group_handle);
8221
ndr_print_policy_handle(ndr, "group_handle", r->in.group_handle);
8223
ndr_print_uint32(ndr, "rid", r->in.rid);
8226
if (flags & NDR_OUT) {
8227
ndr_print_struct(ndr, "out", "samr_DeleteGroupMember");
8229
ndr_print_NTSTATUS(ndr, "result", r->out.result);
8235
static enum ndr_err_code ndr_push_samr_QueryGroupMember(struct ndr_push *ndr, int flags, const struct samr_QueryGroupMember *r)
8237
if (flags & NDR_IN) {
8238
if (r->in.group_handle == NULL) {
8239
return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
8241
NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS, r->in.group_handle));
8243
if (flags & NDR_OUT) {
8244
if (r->out.rids == NULL) {
8245
return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
8247
NDR_CHECK(ndr_push_unique_ptr(ndr, *r->out.rids));
8249
NDR_CHECK(ndr_push_samr_RidAttrArray(ndr, NDR_SCALARS|NDR_BUFFERS, *r->out.rids));
8251
NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
8253
return NDR_ERR_SUCCESS;
8256
static enum ndr_err_code ndr_pull_samr_QueryGroupMember(struct ndr_pull *ndr, int flags, struct samr_QueryGroupMember *r)
8259
TALLOC_CTX *_mem_save_group_handle_0;
8260
TALLOC_CTX *_mem_save_rids_0;
8261
TALLOC_CTX *_mem_save_rids_1;
8262
if (flags & NDR_IN) {
8263
ZERO_STRUCT(r->out);
8265
if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
8266
NDR_PULL_ALLOC(ndr, r->in.group_handle);
8268
_mem_save_group_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
8269
NDR_PULL_SET_MEM_CTX(ndr, r->in.group_handle, LIBNDR_FLAG_REF_ALLOC);
8270
NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS, r->in.group_handle));
8271
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_group_handle_0, LIBNDR_FLAG_REF_ALLOC);
8272
NDR_PULL_ALLOC(ndr, r->out.rids);
8273
ZERO_STRUCTP(r->out.rids);
8275
if (flags & NDR_OUT) {
8276
if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
8277
NDR_PULL_ALLOC(ndr, r->out.rids);
8279
_mem_save_rids_0 = NDR_PULL_GET_MEM_CTX(ndr);
8280
NDR_PULL_SET_MEM_CTX(ndr, r->out.rids, LIBNDR_FLAG_REF_ALLOC);
8281
NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_rids));
8283
NDR_PULL_ALLOC(ndr, *r->out.rids);
8285
*r->out.rids = NULL;
8288
_mem_save_rids_1 = NDR_PULL_GET_MEM_CTX(ndr);
8289
NDR_PULL_SET_MEM_CTX(ndr, *r->out.rids, 0);
8290
NDR_CHECK(ndr_pull_samr_RidAttrArray(ndr, NDR_SCALARS|NDR_BUFFERS, *r->out.rids));
8291
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_rids_1, 0);
8293
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_rids_0, LIBNDR_FLAG_REF_ALLOC);
8294
NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
8296
return NDR_ERR_SUCCESS;
8299
_PUBLIC_ void ndr_print_samr_QueryGroupMember(struct ndr_print *ndr, const char *name, int flags, const struct samr_QueryGroupMember *r)
8301
ndr_print_struct(ndr, name, "samr_QueryGroupMember");
8302
if (r == NULL) { ndr_print_null(ndr); return; }
8304
if (flags & NDR_SET_VALUES) {
8305
ndr->flags |= LIBNDR_PRINT_SET_VALUES;
8307
if (flags & NDR_IN) {
8308
ndr_print_struct(ndr, "in", "samr_QueryGroupMember");
8310
ndr_print_ptr(ndr, "group_handle", r->in.group_handle);
8312
ndr_print_policy_handle(ndr, "group_handle", r->in.group_handle);
8316
if (flags & NDR_OUT) {
8317
ndr_print_struct(ndr, "out", "samr_QueryGroupMember");
8319
ndr_print_ptr(ndr, "rids", r->out.rids);
8321
ndr_print_ptr(ndr, "rids", *r->out.rids);
8324
ndr_print_samr_RidAttrArray(ndr, "rids", *r->out.rids);
8328
ndr_print_NTSTATUS(ndr, "result", r->out.result);
8334
static enum ndr_err_code ndr_push_samr_SetMemberAttributesOfGroup(struct ndr_push *ndr, int flags, const struct samr_SetMemberAttributesOfGroup *r)
8336
if (flags & NDR_IN) {
8337
if (r->in.group_handle == NULL) {
8338
return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
8340
NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS, r->in.group_handle));
8341
NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->in.unknown1));
8342
NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->in.unknown2));
8344
if (flags & NDR_OUT) {
8345
NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
8347
return NDR_ERR_SUCCESS;
8350
static enum ndr_err_code ndr_pull_samr_SetMemberAttributesOfGroup(struct ndr_pull *ndr, int flags, struct samr_SetMemberAttributesOfGroup *r)
8352
TALLOC_CTX *_mem_save_group_handle_0;
8353
if (flags & NDR_IN) {
8354
if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
8355
NDR_PULL_ALLOC(ndr, r->in.group_handle);
8357
_mem_save_group_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
8358
NDR_PULL_SET_MEM_CTX(ndr, r->in.group_handle, LIBNDR_FLAG_REF_ALLOC);
8359
NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS, r->in.group_handle));
8360
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_group_handle_0, LIBNDR_FLAG_REF_ALLOC);
8361
NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->in.unknown1));
8362
NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->in.unknown2));
8364
if (flags & NDR_OUT) {
8365
NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
8367
return NDR_ERR_SUCCESS;
8370
_PUBLIC_ void ndr_print_samr_SetMemberAttributesOfGroup(struct ndr_print *ndr, const char *name, int flags, const struct samr_SetMemberAttributesOfGroup *r)
8372
ndr_print_struct(ndr, name, "samr_SetMemberAttributesOfGroup");
8373
if (r == NULL) { ndr_print_null(ndr); return; }
8375
if (flags & NDR_SET_VALUES) {
8376
ndr->flags |= LIBNDR_PRINT_SET_VALUES;
8378
if (flags & NDR_IN) {
8379
ndr_print_struct(ndr, "in", "samr_SetMemberAttributesOfGroup");
8381
ndr_print_ptr(ndr, "group_handle", r->in.group_handle);
8383
ndr_print_policy_handle(ndr, "group_handle", r->in.group_handle);
8385
ndr_print_uint32(ndr, "unknown1", r->in.unknown1);
8386
ndr_print_uint32(ndr, "unknown2", r->in.unknown2);
8389
if (flags & NDR_OUT) {
8390
ndr_print_struct(ndr, "out", "samr_SetMemberAttributesOfGroup");
8392
ndr_print_NTSTATUS(ndr, "result", r->out.result);
8398
static enum ndr_err_code ndr_push_samr_OpenAlias(struct ndr_push *ndr, int flags, const struct samr_OpenAlias *r)
8400
if (flags & NDR_IN) {
8401
if (r->in.domain_handle == NULL) {
8402
return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
8404
NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS, r->in.domain_handle));
8405
NDR_CHECK(ndr_push_samr_AliasAccessMask(ndr, NDR_SCALARS, r->in.access_mask));
8406
NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->in.rid));
8408
if (flags & NDR_OUT) {
8409
if (r->out.alias_handle == NULL) {
8410
return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
8412
NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS, r->out.alias_handle));
8413
NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
8415
return NDR_ERR_SUCCESS;
8418
static enum ndr_err_code ndr_pull_samr_OpenAlias(struct ndr_pull *ndr, int flags, struct samr_OpenAlias *r)
8420
TALLOC_CTX *_mem_save_domain_handle_0;
8421
TALLOC_CTX *_mem_save_alias_handle_0;
8422
if (flags & NDR_IN) {
8423
ZERO_STRUCT(r->out);
8425
if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
8426
NDR_PULL_ALLOC(ndr, r->in.domain_handle);
8428
_mem_save_domain_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
8429
NDR_PULL_SET_MEM_CTX(ndr, r->in.domain_handle, LIBNDR_FLAG_REF_ALLOC);
8430
NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS, r->in.domain_handle));
8431
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_domain_handle_0, LIBNDR_FLAG_REF_ALLOC);
8432
NDR_CHECK(ndr_pull_samr_AliasAccessMask(ndr, NDR_SCALARS, &r->in.access_mask));
8433
NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->in.rid));
8434
NDR_PULL_ALLOC(ndr, r->out.alias_handle);
8435
ZERO_STRUCTP(r->out.alias_handle);
8437
if (flags & NDR_OUT) {
8438
if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
8439
NDR_PULL_ALLOC(ndr, r->out.alias_handle);
8441
_mem_save_alias_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
8442
NDR_PULL_SET_MEM_CTX(ndr, r->out.alias_handle, LIBNDR_FLAG_REF_ALLOC);
8443
NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS, r->out.alias_handle));
8444
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_alias_handle_0, LIBNDR_FLAG_REF_ALLOC);
8445
NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
8447
return NDR_ERR_SUCCESS;
8450
_PUBLIC_ void ndr_print_samr_OpenAlias(struct ndr_print *ndr, const char *name, int flags, const struct samr_OpenAlias *r)
8452
ndr_print_struct(ndr, name, "samr_OpenAlias");
8453
if (r == NULL) { ndr_print_null(ndr); return; }
8455
if (flags & NDR_SET_VALUES) {
8456
ndr->flags |= LIBNDR_PRINT_SET_VALUES;
8458
if (flags & NDR_IN) {
8459
ndr_print_struct(ndr, "in", "samr_OpenAlias");
8461
ndr_print_ptr(ndr, "domain_handle", r->in.domain_handle);
8463
ndr_print_policy_handle(ndr, "domain_handle", r->in.domain_handle);
8465
ndr_print_samr_AliasAccessMask(ndr, "access_mask", r->in.access_mask);
8466
ndr_print_uint32(ndr, "rid", r->in.rid);
8469
if (flags & NDR_OUT) {
8470
ndr_print_struct(ndr, "out", "samr_OpenAlias");
8472
ndr_print_ptr(ndr, "alias_handle", r->out.alias_handle);
8474
ndr_print_policy_handle(ndr, "alias_handle", r->out.alias_handle);
8476
ndr_print_NTSTATUS(ndr, "result", r->out.result);
8482
static enum ndr_err_code ndr_push_samr_QueryAliasInfo(struct ndr_push *ndr, int flags, const struct samr_QueryAliasInfo *r)
8484
if (flags & NDR_IN) {
8485
if (r->in.alias_handle == NULL) {
8486
return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
8488
NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS, r->in.alias_handle));
8489
NDR_CHECK(ndr_push_samr_AliasInfoEnum(ndr, NDR_SCALARS, r->in.level));
8491
if (flags & NDR_OUT) {
8492
if (r->out.info == NULL) {
8493
return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
8495
NDR_CHECK(ndr_push_unique_ptr(ndr, *r->out.info));
8497
NDR_CHECK(ndr_push_set_switch_value(ndr, *r->out.info, r->in.level));
8498
NDR_CHECK(ndr_push_samr_AliasInfo(ndr, NDR_SCALARS|NDR_BUFFERS, *r->out.info));
8500
NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
8502
return NDR_ERR_SUCCESS;
8505
static enum ndr_err_code ndr_pull_samr_QueryAliasInfo(struct ndr_pull *ndr, int flags, struct samr_QueryAliasInfo *r)
8508
TALLOC_CTX *_mem_save_alias_handle_0;
8509
TALLOC_CTX *_mem_save_info_0;
8510
TALLOC_CTX *_mem_save_info_1;
8511
if (flags & NDR_IN) {
8512
ZERO_STRUCT(r->out);
8514
if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
8515
NDR_PULL_ALLOC(ndr, r->in.alias_handle);
8517
_mem_save_alias_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
8518
NDR_PULL_SET_MEM_CTX(ndr, r->in.alias_handle, LIBNDR_FLAG_REF_ALLOC);
8519
NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS, r->in.alias_handle));
8520
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_alias_handle_0, LIBNDR_FLAG_REF_ALLOC);
8521
NDR_CHECK(ndr_pull_samr_AliasInfoEnum(ndr, NDR_SCALARS, &r->in.level));
8522
NDR_PULL_ALLOC(ndr, r->out.info);
8523
ZERO_STRUCTP(r->out.info);
8525
if (flags & NDR_OUT) {
8526
if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
8527
NDR_PULL_ALLOC(ndr, r->out.info);
8529
_mem_save_info_0 = NDR_PULL_GET_MEM_CTX(ndr);
8530
NDR_PULL_SET_MEM_CTX(ndr, r->out.info, LIBNDR_FLAG_REF_ALLOC);
8531
NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_info));
8533
NDR_PULL_ALLOC(ndr, *r->out.info);
8535
*r->out.info = NULL;
8538
_mem_save_info_1 = NDR_PULL_GET_MEM_CTX(ndr);
8539
NDR_PULL_SET_MEM_CTX(ndr, *r->out.info, 0);
8540
NDR_CHECK(ndr_pull_set_switch_value(ndr, *r->out.info, r->in.level));
8541
NDR_CHECK(ndr_pull_samr_AliasInfo(ndr, NDR_SCALARS|NDR_BUFFERS, *r->out.info));
8542
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_info_1, 0);
8544
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_info_0, LIBNDR_FLAG_REF_ALLOC);
8545
NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
8547
return NDR_ERR_SUCCESS;
8550
_PUBLIC_ void ndr_print_samr_QueryAliasInfo(struct ndr_print *ndr, const char *name, int flags, const struct samr_QueryAliasInfo *r)
8552
ndr_print_struct(ndr, name, "samr_QueryAliasInfo");
8553
if (r == NULL) { ndr_print_null(ndr); return; }
8555
if (flags & NDR_SET_VALUES) {
8556
ndr->flags |= LIBNDR_PRINT_SET_VALUES;
8558
if (flags & NDR_IN) {
8559
ndr_print_struct(ndr, "in", "samr_QueryAliasInfo");
8561
ndr_print_ptr(ndr, "alias_handle", r->in.alias_handle);
8563
ndr_print_policy_handle(ndr, "alias_handle", r->in.alias_handle);
8565
ndr_print_samr_AliasInfoEnum(ndr, "level", r->in.level);
8568
if (flags & NDR_OUT) {
8569
ndr_print_struct(ndr, "out", "samr_QueryAliasInfo");
8571
ndr_print_ptr(ndr, "info", r->out.info);
8573
ndr_print_ptr(ndr, "info", *r->out.info);
8576
ndr_print_set_switch_value(ndr, *r->out.info, r->in.level);
8577
ndr_print_samr_AliasInfo(ndr, "info", *r->out.info);
8581
ndr_print_NTSTATUS(ndr, "result", r->out.result);
8587
static enum ndr_err_code ndr_push_samr_SetAliasInfo(struct ndr_push *ndr, int flags, const struct samr_SetAliasInfo *r)
8589
if (flags & NDR_IN) {
8590
if (r->in.alias_handle == NULL) {
8591
return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
8593
NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS, r->in.alias_handle));
8594
NDR_CHECK(ndr_push_samr_AliasInfoEnum(ndr, NDR_SCALARS, r->in.level));
8595
if (r->in.info == NULL) {
8596
return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
8598
NDR_CHECK(ndr_push_set_switch_value(ndr, r->in.info, r->in.level));
8599
NDR_CHECK(ndr_push_samr_AliasInfo(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.info));
8601
if (flags & NDR_OUT) {
8602
NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
8604
return NDR_ERR_SUCCESS;
8607
static enum ndr_err_code ndr_pull_samr_SetAliasInfo(struct ndr_pull *ndr, int flags, struct samr_SetAliasInfo *r)
8609
TALLOC_CTX *_mem_save_alias_handle_0;
8610
TALLOC_CTX *_mem_save_info_0;
8611
if (flags & NDR_IN) {
8612
if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
8613
NDR_PULL_ALLOC(ndr, r->in.alias_handle);
8615
_mem_save_alias_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
8616
NDR_PULL_SET_MEM_CTX(ndr, r->in.alias_handle, LIBNDR_FLAG_REF_ALLOC);
8617
NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS, r->in.alias_handle));
8618
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_alias_handle_0, LIBNDR_FLAG_REF_ALLOC);
8619
NDR_CHECK(ndr_pull_samr_AliasInfoEnum(ndr, NDR_SCALARS, &r->in.level));
8620
if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
8621
NDR_PULL_ALLOC(ndr, r->in.info);
8623
_mem_save_info_0 = NDR_PULL_GET_MEM_CTX(ndr);
8624
NDR_PULL_SET_MEM_CTX(ndr, r->in.info, LIBNDR_FLAG_REF_ALLOC);
8625
NDR_CHECK(ndr_pull_set_switch_value(ndr, r->in.info, r->in.level));
8626
NDR_CHECK(ndr_pull_samr_AliasInfo(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.info));
8627
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_info_0, LIBNDR_FLAG_REF_ALLOC);
8629
if (flags & NDR_OUT) {
8630
NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
8632
return NDR_ERR_SUCCESS;
8635
_PUBLIC_ void ndr_print_samr_SetAliasInfo(struct ndr_print *ndr, const char *name, int flags, const struct samr_SetAliasInfo *r)
8637
ndr_print_struct(ndr, name, "samr_SetAliasInfo");
8638
if (r == NULL) { ndr_print_null(ndr); return; }
8640
if (flags & NDR_SET_VALUES) {
8641
ndr->flags |= LIBNDR_PRINT_SET_VALUES;
8643
if (flags & NDR_IN) {
8644
ndr_print_struct(ndr, "in", "samr_SetAliasInfo");
8646
ndr_print_ptr(ndr, "alias_handle", r->in.alias_handle);
8648
ndr_print_policy_handle(ndr, "alias_handle", r->in.alias_handle);
8650
ndr_print_samr_AliasInfoEnum(ndr, "level", r->in.level);
8651
ndr_print_ptr(ndr, "info", r->in.info);
8653
ndr_print_set_switch_value(ndr, r->in.info, r->in.level);
8654
ndr_print_samr_AliasInfo(ndr, "info", r->in.info);
8658
if (flags & NDR_OUT) {
8659
ndr_print_struct(ndr, "out", "samr_SetAliasInfo");
8661
ndr_print_NTSTATUS(ndr, "result", r->out.result);
8667
static enum ndr_err_code ndr_push_samr_DeleteDomAlias(struct ndr_push *ndr, int flags, const struct samr_DeleteDomAlias *r)
8669
if (flags & NDR_IN) {
8670
if (r->in.alias_handle == NULL) {
8671
return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
8673
NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS, r->in.alias_handle));
8675
if (flags & NDR_OUT) {
8676
if (r->out.alias_handle == NULL) {
8677
return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
8679
NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS, r->out.alias_handle));
8680
NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
8682
return NDR_ERR_SUCCESS;
8685
static enum ndr_err_code ndr_pull_samr_DeleteDomAlias(struct ndr_pull *ndr, int flags, struct samr_DeleteDomAlias *r)
8687
TALLOC_CTX *_mem_save_alias_handle_0;
8688
if (flags & NDR_IN) {
8689
ZERO_STRUCT(r->out);
8691
if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
8692
NDR_PULL_ALLOC(ndr, r->in.alias_handle);
8694
_mem_save_alias_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
8695
NDR_PULL_SET_MEM_CTX(ndr, r->in.alias_handle, LIBNDR_FLAG_REF_ALLOC);
8696
NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS, r->in.alias_handle));
8697
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_alias_handle_0, LIBNDR_FLAG_REF_ALLOC);
8698
NDR_PULL_ALLOC(ndr, r->out.alias_handle);
8699
*r->out.alias_handle = *r->in.alias_handle;
8701
if (flags & NDR_OUT) {
8702
if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
8703
NDR_PULL_ALLOC(ndr, r->out.alias_handle);
8705
_mem_save_alias_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
8706
NDR_PULL_SET_MEM_CTX(ndr, r->out.alias_handle, LIBNDR_FLAG_REF_ALLOC);
8707
NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS, r->out.alias_handle));
8708
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_alias_handle_0, LIBNDR_FLAG_REF_ALLOC);
8709
NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
8711
return NDR_ERR_SUCCESS;
8714
_PUBLIC_ void ndr_print_samr_DeleteDomAlias(struct ndr_print *ndr, const char *name, int flags, const struct samr_DeleteDomAlias *r)
8716
ndr_print_struct(ndr, name, "samr_DeleteDomAlias");
8717
if (r == NULL) { ndr_print_null(ndr); return; }
8719
if (flags & NDR_SET_VALUES) {
8720
ndr->flags |= LIBNDR_PRINT_SET_VALUES;
8722
if (flags & NDR_IN) {
8723
ndr_print_struct(ndr, "in", "samr_DeleteDomAlias");
8725
ndr_print_ptr(ndr, "alias_handle", r->in.alias_handle);
8727
ndr_print_policy_handle(ndr, "alias_handle", r->in.alias_handle);
8731
if (flags & NDR_OUT) {
8732
ndr_print_struct(ndr, "out", "samr_DeleteDomAlias");
8734
ndr_print_ptr(ndr, "alias_handle", r->out.alias_handle);
8736
ndr_print_policy_handle(ndr, "alias_handle", r->out.alias_handle);
8738
ndr_print_NTSTATUS(ndr, "result", r->out.result);
8744
static enum ndr_err_code ndr_push_samr_AddAliasMember(struct ndr_push *ndr, int flags, const struct samr_AddAliasMember *r)
8746
if (flags & NDR_IN) {
8747
if (r->in.alias_handle == NULL) {
8748
return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
8750
NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS, r->in.alias_handle));
8751
if (r->in.sid == NULL) {
8752
return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
8754
NDR_CHECK(ndr_push_dom_sid2(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.sid));
8756
if (flags & NDR_OUT) {
8757
NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
8759
return NDR_ERR_SUCCESS;
8762
static enum ndr_err_code ndr_pull_samr_AddAliasMember(struct ndr_pull *ndr, int flags, struct samr_AddAliasMember *r)
8764
TALLOC_CTX *_mem_save_alias_handle_0;
8765
TALLOC_CTX *_mem_save_sid_0;
8766
if (flags & NDR_IN) {
8767
if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
8768
NDR_PULL_ALLOC(ndr, r->in.alias_handle);
8770
_mem_save_alias_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
8771
NDR_PULL_SET_MEM_CTX(ndr, r->in.alias_handle, LIBNDR_FLAG_REF_ALLOC);
8772
NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS, r->in.alias_handle));
8773
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_alias_handle_0, LIBNDR_FLAG_REF_ALLOC);
8774
if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
8775
NDR_PULL_ALLOC(ndr, r->in.sid);
8777
_mem_save_sid_0 = NDR_PULL_GET_MEM_CTX(ndr);
8778
NDR_PULL_SET_MEM_CTX(ndr, r->in.sid, LIBNDR_FLAG_REF_ALLOC);
8779
NDR_CHECK(ndr_pull_dom_sid2(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.sid));
8780
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_sid_0, LIBNDR_FLAG_REF_ALLOC);
8782
if (flags & NDR_OUT) {
8783
NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
8785
return NDR_ERR_SUCCESS;
8788
_PUBLIC_ void ndr_print_samr_AddAliasMember(struct ndr_print *ndr, const char *name, int flags, const struct samr_AddAliasMember *r)
8790
ndr_print_struct(ndr, name, "samr_AddAliasMember");
8791
if (r == NULL) { ndr_print_null(ndr); return; }
8793
if (flags & NDR_SET_VALUES) {
8794
ndr->flags |= LIBNDR_PRINT_SET_VALUES;
8796
if (flags & NDR_IN) {
8797
ndr_print_struct(ndr, "in", "samr_AddAliasMember");
8799
ndr_print_ptr(ndr, "alias_handle", r->in.alias_handle);
8801
ndr_print_policy_handle(ndr, "alias_handle", r->in.alias_handle);
8803
ndr_print_ptr(ndr, "sid", r->in.sid);
8805
ndr_print_dom_sid2(ndr, "sid", r->in.sid);
8809
if (flags & NDR_OUT) {
8810
ndr_print_struct(ndr, "out", "samr_AddAliasMember");
8812
ndr_print_NTSTATUS(ndr, "result", r->out.result);
8818
static enum ndr_err_code ndr_push_samr_DeleteAliasMember(struct ndr_push *ndr, int flags, const struct samr_DeleteAliasMember *r)
8820
if (flags & NDR_IN) {
8821
if (r->in.alias_handle == NULL) {
8822
return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
8824
NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS, r->in.alias_handle));
8825
if (r->in.sid == NULL) {
8826
return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
8828
NDR_CHECK(ndr_push_dom_sid2(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.sid));
8830
if (flags & NDR_OUT) {
8831
NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
8833
return NDR_ERR_SUCCESS;
8836
static enum ndr_err_code ndr_pull_samr_DeleteAliasMember(struct ndr_pull *ndr, int flags, struct samr_DeleteAliasMember *r)
8838
TALLOC_CTX *_mem_save_alias_handle_0;
8839
TALLOC_CTX *_mem_save_sid_0;
8840
if (flags & NDR_IN) {
8841
if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
8842
NDR_PULL_ALLOC(ndr, r->in.alias_handle);
8844
_mem_save_alias_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
8845
NDR_PULL_SET_MEM_CTX(ndr, r->in.alias_handle, LIBNDR_FLAG_REF_ALLOC);
8846
NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS, r->in.alias_handle));
8847
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_alias_handle_0, LIBNDR_FLAG_REF_ALLOC);
8848
if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
8849
NDR_PULL_ALLOC(ndr, r->in.sid);
8851
_mem_save_sid_0 = NDR_PULL_GET_MEM_CTX(ndr);
8852
NDR_PULL_SET_MEM_CTX(ndr, r->in.sid, LIBNDR_FLAG_REF_ALLOC);
8853
NDR_CHECK(ndr_pull_dom_sid2(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.sid));
8854
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_sid_0, LIBNDR_FLAG_REF_ALLOC);
8856
if (flags & NDR_OUT) {
8857
NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
8859
return NDR_ERR_SUCCESS;
8862
_PUBLIC_ void ndr_print_samr_DeleteAliasMember(struct ndr_print *ndr, const char *name, int flags, const struct samr_DeleteAliasMember *r)
8864
ndr_print_struct(ndr, name, "samr_DeleteAliasMember");
8865
if (r == NULL) { ndr_print_null(ndr); return; }
8867
if (flags & NDR_SET_VALUES) {
8868
ndr->flags |= LIBNDR_PRINT_SET_VALUES;
8870
if (flags & NDR_IN) {
8871
ndr_print_struct(ndr, "in", "samr_DeleteAliasMember");
8873
ndr_print_ptr(ndr, "alias_handle", r->in.alias_handle);
8875
ndr_print_policy_handle(ndr, "alias_handle", r->in.alias_handle);
8877
ndr_print_ptr(ndr, "sid", r->in.sid);
8879
ndr_print_dom_sid2(ndr, "sid", r->in.sid);
8883
if (flags & NDR_OUT) {
8884
ndr_print_struct(ndr, "out", "samr_DeleteAliasMember");
8886
ndr_print_NTSTATUS(ndr, "result", r->out.result);
8892
static enum ndr_err_code ndr_push_samr_GetMembersInAlias(struct ndr_push *ndr, int flags, const struct samr_GetMembersInAlias *r)
8894
if (flags & NDR_IN) {
8895
if (r->in.alias_handle == NULL) {
8896
return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
8898
NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS, r->in.alias_handle));
8900
if (flags & NDR_OUT) {
8901
if (r->out.sids == NULL) {
8902
return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
8904
NDR_CHECK(ndr_push_lsa_SidArray(ndr, NDR_SCALARS|NDR_BUFFERS, r->out.sids));
8905
NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
8907
return NDR_ERR_SUCCESS;
8910
static enum ndr_err_code ndr_pull_samr_GetMembersInAlias(struct ndr_pull *ndr, int flags, struct samr_GetMembersInAlias *r)
8912
TALLOC_CTX *_mem_save_alias_handle_0;
8913
TALLOC_CTX *_mem_save_sids_0;
8914
if (flags & NDR_IN) {
8915
ZERO_STRUCT(r->out);
8917
if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
8918
NDR_PULL_ALLOC(ndr, r->in.alias_handle);
8920
_mem_save_alias_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
8921
NDR_PULL_SET_MEM_CTX(ndr, r->in.alias_handle, LIBNDR_FLAG_REF_ALLOC);
8922
NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS, r->in.alias_handle));
8923
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_alias_handle_0, LIBNDR_FLAG_REF_ALLOC);
8924
NDR_PULL_ALLOC(ndr, r->out.sids);
8925
ZERO_STRUCTP(r->out.sids);
8927
if (flags & NDR_OUT) {
8928
if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
8929
NDR_PULL_ALLOC(ndr, r->out.sids);
8931
_mem_save_sids_0 = NDR_PULL_GET_MEM_CTX(ndr);
8932
NDR_PULL_SET_MEM_CTX(ndr, r->out.sids, LIBNDR_FLAG_REF_ALLOC);
8933
NDR_CHECK(ndr_pull_lsa_SidArray(ndr, NDR_SCALARS|NDR_BUFFERS, r->out.sids));
8934
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_sids_0, LIBNDR_FLAG_REF_ALLOC);
8935
NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
8937
return NDR_ERR_SUCCESS;
8940
_PUBLIC_ void ndr_print_samr_GetMembersInAlias(struct ndr_print *ndr, const char *name, int flags, const struct samr_GetMembersInAlias *r)
8942
ndr_print_struct(ndr, name, "samr_GetMembersInAlias");
8943
if (r == NULL) { ndr_print_null(ndr); return; }
8945
if (flags & NDR_SET_VALUES) {
8946
ndr->flags |= LIBNDR_PRINT_SET_VALUES;
8948
if (flags & NDR_IN) {
8949
ndr_print_struct(ndr, "in", "samr_GetMembersInAlias");
8951
ndr_print_ptr(ndr, "alias_handle", r->in.alias_handle);
8953
ndr_print_policy_handle(ndr, "alias_handle", r->in.alias_handle);
8957
if (flags & NDR_OUT) {
8958
ndr_print_struct(ndr, "out", "samr_GetMembersInAlias");
8960
ndr_print_ptr(ndr, "sids", r->out.sids);
8962
ndr_print_lsa_SidArray(ndr, "sids", r->out.sids);
8964
ndr_print_NTSTATUS(ndr, "result", r->out.result);
8970
_PUBLIC_ enum ndr_err_code ndr_push_samr_OpenUser(struct ndr_push *ndr, int flags, const struct samr_OpenUser *r)
8972
if (flags & NDR_IN) {
8973
if (r->in.domain_handle == NULL) {
8974
return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
8976
NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS, r->in.domain_handle));
8977
NDR_CHECK(ndr_push_samr_UserAccessMask(ndr, NDR_SCALARS, r->in.access_mask));
8978
NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->in.rid));
8980
if (flags & NDR_OUT) {
8981
if (r->out.user_handle == NULL) {
8982
return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
8984
NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS, r->out.user_handle));
8985
NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
8987
return NDR_ERR_SUCCESS;
8990
_PUBLIC_ enum ndr_err_code ndr_pull_samr_OpenUser(struct ndr_pull *ndr, int flags, struct samr_OpenUser *r)
8992
TALLOC_CTX *_mem_save_domain_handle_0;
8993
TALLOC_CTX *_mem_save_user_handle_0;
8994
if (flags & NDR_IN) {
8995
ZERO_STRUCT(r->out);
8997
if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
8998
NDR_PULL_ALLOC(ndr, r->in.domain_handle);
9000
_mem_save_domain_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
9001
NDR_PULL_SET_MEM_CTX(ndr, r->in.domain_handle, LIBNDR_FLAG_REF_ALLOC);
9002
NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS, r->in.domain_handle));
9003
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_domain_handle_0, LIBNDR_FLAG_REF_ALLOC);
9004
NDR_CHECK(ndr_pull_samr_UserAccessMask(ndr, NDR_SCALARS, &r->in.access_mask));
9005
NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->in.rid));
9006
NDR_PULL_ALLOC(ndr, r->out.user_handle);
9007
ZERO_STRUCTP(r->out.user_handle);
9009
if (flags & NDR_OUT) {
9010
if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
9011
NDR_PULL_ALLOC(ndr, r->out.user_handle);
9013
_mem_save_user_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
9014
NDR_PULL_SET_MEM_CTX(ndr, r->out.user_handle, LIBNDR_FLAG_REF_ALLOC);
9015
NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS, r->out.user_handle));
9016
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_user_handle_0, LIBNDR_FLAG_REF_ALLOC);
9017
NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
9019
return NDR_ERR_SUCCESS;
9022
_PUBLIC_ void ndr_print_samr_OpenUser(struct ndr_print *ndr, const char *name, int flags, const struct samr_OpenUser *r)
9024
ndr_print_struct(ndr, name, "samr_OpenUser");
9025
if (r == NULL) { ndr_print_null(ndr); return; }
9027
if (flags & NDR_SET_VALUES) {
9028
ndr->flags |= LIBNDR_PRINT_SET_VALUES;
9030
if (flags & NDR_IN) {
9031
ndr_print_struct(ndr, "in", "samr_OpenUser");
9033
ndr_print_ptr(ndr, "domain_handle", r->in.domain_handle);
9035
ndr_print_policy_handle(ndr, "domain_handle", r->in.domain_handle);
9037
ndr_print_samr_UserAccessMask(ndr, "access_mask", r->in.access_mask);
9038
ndr_print_uint32(ndr, "rid", r->in.rid);
9041
if (flags & NDR_OUT) {
9042
ndr_print_struct(ndr, "out", "samr_OpenUser");
9044
ndr_print_ptr(ndr, "user_handle", r->out.user_handle);
9046
ndr_print_policy_handle(ndr, "user_handle", r->out.user_handle);
9048
ndr_print_NTSTATUS(ndr, "result", r->out.result);
9054
static enum ndr_err_code ndr_push_samr_DeleteUser(struct ndr_push *ndr, int flags, const struct samr_DeleteUser *r)
9056
if (flags & NDR_IN) {
9057
if (r->in.user_handle == NULL) {
9058
return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
9060
NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS, r->in.user_handle));
9062
if (flags & NDR_OUT) {
9063
if (r->out.user_handle == NULL) {
9064
return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
9066
NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS, r->out.user_handle));
9067
NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
9069
return NDR_ERR_SUCCESS;
9072
static enum ndr_err_code ndr_pull_samr_DeleteUser(struct ndr_pull *ndr, int flags, struct samr_DeleteUser *r)
9074
TALLOC_CTX *_mem_save_user_handle_0;
9075
if (flags & NDR_IN) {
9076
ZERO_STRUCT(r->out);
9078
if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
9079
NDR_PULL_ALLOC(ndr, r->in.user_handle);
9081
_mem_save_user_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
9082
NDR_PULL_SET_MEM_CTX(ndr, r->in.user_handle, LIBNDR_FLAG_REF_ALLOC);
9083
NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS, r->in.user_handle));
9084
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_user_handle_0, LIBNDR_FLAG_REF_ALLOC);
9085
NDR_PULL_ALLOC(ndr, r->out.user_handle);
9086
*r->out.user_handle = *r->in.user_handle;
9088
if (flags & NDR_OUT) {
9089
if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
9090
NDR_PULL_ALLOC(ndr, r->out.user_handle);
9092
_mem_save_user_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
9093
NDR_PULL_SET_MEM_CTX(ndr, r->out.user_handle, LIBNDR_FLAG_REF_ALLOC);
9094
NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS, r->out.user_handle));
9095
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_user_handle_0, LIBNDR_FLAG_REF_ALLOC);
9096
NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
9098
return NDR_ERR_SUCCESS;
9101
_PUBLIC_ void ndr_print_samr_DeleteUser(struct ndr_print *ndr, const char *name, int flags, const struct samr_DeleteUser *r)
9103
ndr_print_struct(ndr, name, "samr_DeleteUser");
9104
if (r == NULL) { ndr_print_null(ndr); return; }
9106
if (flags & NDR_SET_VALUES) {
9107
ndr->flags |= LIBNDR_PRINT_SET_VALUES;
9109
if (flags & NDR_IN) {
9110
ndr_print_struct(ndr, "in", "samr_DeleteUser");
9112
ndr_print_ptr(ndr, "user_handle", r->in.user_handle);
9114
ndr_print_policy_handle(ndr, "user_handle", r->in.user_handle);
9118
if (flags & NDR_OUT) {
9119
ndr_print_struct(ndr, "out", "samr_DeleteUser");
9121
ndr_print_ptr(ndr, "user_handle", r->out.user_handle);
9123
ndr_print_policy_handle(ndr, "user_handle", r->out.user_handle);
9125
ndr_print_NTSTATUS(ndr, "result", r->out.result);
9131
_PUBLIC_ enum ndr_err_code ndr_push_samr_QueryUserInfo(struct ndr_push *ndr, int flags, const struct samr_QueryUserInfo *r)
9133
if (flags & NDR_IN) {
9134
if (r->in.user_handle == NULL) {
9135
return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
9137
NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS, r->in.user_handle));
9138
NDR_CHECK(ndr_push_samr_UserInfoLevel(ndr, NDR_SCALARS, r->in.level));
9140
if (flags & NDR_OUT) {
9141
if (r->out.info == NULL) {
9142
return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
9144
NDR_CHECK(ndr_push_unique_ptr(ndr, *r->out.info));
9146
NDR_CHECK(ndr_push_set_switch_value(ndr, *r->out.info, r->in.level));
9147
NDR_CHECK(ndr_push_samr_UserInfo(ndr, NDR_SCALARS|NDR_BUFFERS, *r->out.info));
9149
NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
9151
return NDR_ERR_SUCCESS;
9154
_PUBLIC_ enum ndr_err_code ndr_pull_samr_QueryUserInfo(struct ndr_pull *ndr, int flags, struct samr_QueryUserInfo *r)
9157
TALLOC_CTX *_mem_save_user_handle_0;
9158
TALLOC_CTX *_mem_save_info_0;
9159
TALLOC_CTX *_mem_save_info_1;
9160
if (flags & NDR_IN) {
9161
ZERO_STRUCT(r->out);
9163
if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
9164
NDR_PULL_ALLOC(ndr, r->in.user_handle);
9166
_mem_save_user_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
9167
NDR_PULL_SET_MEM_CTX(ndr, r->in.user_handle, LIBNDR_FLAG_REF_ALLOC);
9168
NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS, r->in.user_handle));
9169
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_user_handle_0, LIBNDR_FLAG_REF_ALLOC);
9170
NDR_CHECK(ndr_pull_samr_UserInfoLevel(ndr, NDR_SCALARS, &r->in.level));
9171
NDR_PULL_ALLOC(ndr, r->out.info);
9172
ZERO_STRUCTP(r->out.info);
9174
if (flags & NDR_OUT) {
9175
if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
9176
NDR_PULL_ALLOC(ndr, r->out.info);
9178
_mem_save_info_0 = NDR_PULL_GET_MEM_CTX(ndr);
9179
NDR_PULL_SET_MEM_CTX(ndr, r->out.info, LIBNDR_FLAG_REF_ALLOC);
9180
NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_info));
9182
NDR_PULL_ALLOC(ndr, *r->out.info);
9184
*r->out.info = NULL;
9187
_mem_save_info_1 = NDR_PULL_GET_MEM_CTX(ndr);
9188
NDR_PULL_SET_MEM_CTX(ndr, *r->out.info, 0);
9189
NDR_CHECK(ndr_pull_set_switch_value(ndr, *r->out.info, r->in.level));
9190
NDR_CHECK(ndr_pull_samr_UserInfo(ndr, NDR_SCALARS|NDR_BUFFERS, *r->out.info));
9191
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_info_1, 0);
9193
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_info_0, LIBNDR_FLAG_REF_ALLOC);
9194
NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
9196
return NDR_ERR_SUCCESS;
9199
_PUBLIC_ void ndr_print_samr_QueryUserInfo(struct ndr_print *ndr, const char *name, int flags, const struct samr_QueryUserInfo *r)
9201
ndr_print_struct(ndr, name, "samr_QueryUserInfo");
9202
if (r == NULL) { ndr_print_null(ndr); return; }
9204
if (flags & NDR_SET_VALUES) {
9205
ndr->flags |= LIBNDR_PRINT_SET_VALUES;
9207
if (flags & NDR_IN) {
9208
ndr_print_struct(ndr, "in", "samr_QueryUserInfo");
9210
ndr_print_ptr(ndr, "user_handle", r->in.user_handle);
9212
ndr_print_policy_handle(ndr, "user_handle", r->in.user_handle);
9214
ndr_print_samr_UserInfoLevel(ndr, "level", r->in.level);
9217
if (flags & NDR_OUT) {
9218
ndr_print_struct(ndr, "out", "samr_QueryUserInfo");
9220
ndr_print_ptr(ndr, "info", r->out.info);
9222
ndr_print_ptr(ndr, "info", *r->out.info);
9225
ndr_print_set_switch_value(ndr, *r->out.info, r->in.level);
9226
ndr_print_samr_UserInfo(ndr, "info", *r->out.info);
9230
ndr_print_NTSTATUS(ndr, "result", r->out.result);
9236
_PUBLIC_ enum ndr_err_code ndr_push_samr_SetUserInfo(struct ndr_push *ndr, int flags, const struct samr_SetUserInfo *r)
9238
if (flags & NDR_IN) {
9239
if (r->in.user_handle == NULL) {
9240
return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
9242
NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS, r->in.user_handle));
9243
NDR_CHECK(ndr_push_samr_UserInfoLevel(ndr, NDR_SCALARS, r->in.level));
9244
if (r->in.info == NULL) {
9245
return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
9247
NDR_CHECK(ndr_push_set_switch_value(ndr, r->in.info, r->in.level));
9248
NDR_CHECK(ndr_push_samr_UserInfo(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.info));
9250
if (flags & NDR_OUT) {
9251
NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
9253
return NDR_ERR_SUCCESS;
9256
_PUBLIC_ enum ndr_err_code ndr_pull_samr_SetUserInfo(struct ndr_pull *ndr, int flags, struct samr_SetUserInfo *r)
9258
TALLOC_CTX *_mem_save_user_handle_0;
9259
TALLOC_CTX *_mem_save_info_0;
9260
if (flags & NDR_IN) {
9261
if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
9262
NDR_PULL_ALLOC(ndr, r->in.user_handle);
9264
_mem_save_user_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
9265
NDR_PULL_SET_MEM_CTX(ndr, r->in.user_handle, LIBNDR_FLAG_REF_ALLOC);
9266
NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS, r->in.user_handle));
9267
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_user_handle_0, LIBNDR_FLAG_REF_ALLOC);
9268
NDR_CHECK(ndr_pull_samr_UserInfoLevel(ndr, NDR_SCALARS, &r->in.level));
9269
if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
9270
NDR_PULL_ALLOC(ndr, r->in.info);
9272
_mem_save_info_0 = NDR_PULL_GET_MEM_CTX(ndr);
9273
NDR_PULL_SET_MEM_CTX(ndr, r->in.info, LIBNDR_FLAG_REF_ALLOC);
9274
NDR_CHECK(ndr_pull_set_switch_value(ndr, r->in.info, r->in.level));
9275
NDR_CHECK(ndr_pull_samr_UserInfo(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.info));
9276
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_info_0, LIBNDR_FLAG_REF_ALLOC);
9278
if (flags & NDR_OUT) {
9279
NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
9281
return NDR_ERR_SUCCESS;
9284
_PUBLIC_ void ndr_print_samr_SetUserInfo(struct ndr_print *ndr, const char *name, int flags, const struct samr_SetUserInfo *r)
9286
ndr_print_struct(ndr, name, "samr_SetUserInfo");
9287
if (r == NULL) { ndr_print_null(ndr); return; }
9289
if (flags & NDR_SET_VALUES) {
9290
ndr->flags |= LIBNDR_PRINT_SET_VALUES;
9292
if (flags & NDR_IN) {
9293
ndr_print_struct(ndr, "in", "samr_SetUserInfo");
9295
ndr_print_ptr(ndr, "user_handle", r->in.user_handle);
9297
ndr_print_policy_handle(ndr, "user_handle", r->in.user_handle);
9299
ndr_print_samr_UserInfoLevel(ndr, "level", r->in.level);
9300
ndr_print_ptr(ndr, "info", r->in.info);
9302
ndr_print_set_switch_value(ndr, r->in.info, r->in.level);
9303
ndr_print_samr_UserInfo(ndr, "info", r->in.info);
9307
if (flags & NDR_OUT) {
9308
ndr_print_struct(ndr, "out", "samr_SetUserInfo");
9310
ndr_print_NTSTATUS(ndr, "result", r->out.result);
9316
static enum ndr_err_code ndr_push_samr_ChangePasswordUser(struct ndr_push *ndr, int flags, const struct samr_ChangePasswordUser *r)
9318
if (flags & NDR_IN) {
9319
if (r->in.user_handle == NULL) {
9320
return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
9322
NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS, r->in.user_handle));
9323
NDR_CHECK(ndr_push_uint8(ndr, NDR_SCALARS, r->in.lm_present));
9324
NDR_CHECK(ndr_push_unique_ptr(ndr, r->in.old_lm_crypted));
9325
if (r->in.old_lm_crypted) {
9326
NDR_CHECK(ndr_push_samr_Password(ndr, NDR_SCALARS, r->in.old_lm_crypted));
9328
NDR_CHECK(ndr_push_unique_ptr(ndr, r->in.new_lm_crypted));
9329
if (r->in.new_lm_crypted) {
9330
NDR_CHECK(ndr_push_samr_Password(ndr, NDR_SCALARS, r->in.new_lm_crypted));
9332
NDR_CHECK(ndr_push_uint8(ndr, NDR_SCALARS, r->in.nt_present));
9333
NDR_CHECK(ndr_push_unique_ptr(ndr, r->in.old_nt_crypted));
9334
if (r->in.old_nt_crypted) {
9335
NDR_CHECK(ndr_push_samr_Password(ndr, NDR_SCALARS, r->in.old_nt_crypted));
9337
NDR_CHECK(ndr_push_unique_ptr(ndr, r->in.new_nt_crypted));
9338
if (r->in.new_nt_crypted) {
9339
NDR_CHECK(ndr_push_samr_Password(ndr, NDR_SCALARS, r->in.new_nt_crypted));
9341
NDR_CHECK(ndr_push_uint8(ndr, NDR_SCALARS, r->in.cross1_present));
9342
NDR_CHECK(ndr_push_unique_ptr(ndr, r->in.nt_cross));
9343
if (r->in.nt_cross) {
9344
NDR_CHECK(ndr_push_samr_Password(ndr, NDR_SCALARS, r->in.nt_cross));
9346
NDR_CHECK(ndr_push_uint8(ndr, NDR_SCALARS, r->in.cross2_present));
9347
NDR_CHECK(ndr_push_unique_ptr(ndr, r->in.lm_cross));
9348
if (r->in.lm_cross) {
9349
NDR_CHECK(ndr_push_samr_Password(ndr, NDR_SCALARS, r->in.lm_cross));
9352
if (flags & NDR_OUT) {
9353
NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
9355
return NDR_ERR_SUCCESS;
9358
static enum ndr_err_code ndr_pull_samr_ChangePasswordUser(struct ndr_pull *ndr, int flags, struct samr_ChangePasswordUser *r)
9360
uint32_t _ptr_old_lm_crypted;
9361
uint32_t _ptr_new_lm_crypted;
9362
uint32_t _ptr_old_nt_crypted;
9363
uint32_t _ptr_new_nt_crypted;
9364
uint32_t _ptr_nt_cross;
9365
uint32_t _ptr_lm_cross;
9366
TALLOC_CTX *_mem_save_user_handle_0;
9367
TALLOC_CTX *_mem_save_old_lm_crypted_0;
9368
TALLOC_CTX *_mem_save_new_lm_crypted_0;
9369
TALLOC_CTX *_mem_save_old_nt_crypted_0;
9370
TALLOC_CTX *_mem_save_new_nt_crypted_0;
9371
TALLOC_CTX *_mem_save_nt_cross_0;
9372
TALLOC_CTX *_mem_save_lm_cross_0;
9373
if (flags & NDR_IN) {
9374
if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
9375
NDR_PULL_ALLOC(ndr, r->in.user_handle);
9377
_mem_save_user_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
9378
NDR_PULL_SET_MEM_CTX(ndr, r->in.user_handle, LIBNDR_FLAG_REF_ALLOC);
9379
NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS, r->in.user_handle));
9380
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_user_handle_0, LIBNDR_FLAG_REF_ALLOC);
9381
NDR_CHECK(ndr_pull_uint8(ndr, NDR_SCALARS, &r->in.lm_present));
9382
NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_old_lm_crypted));
9383
if (_ptr_old_lm_crypted) {
9384
NDR_PULL_ALLOC(ndr, r->in.old_lm_crypted);
9386
r->in.old_lm_crypted = NULL;
9388
if (r->in.old_lm_crypted) {
9389
_mem_save_old_lm_crypted_0 = NDR_PULL_GET_MEM_CTX(ndr);
9390
NDR_PULL_SET_MEM_CTX(ndr, r->in.old_lm_crypted, 0);
9391
NDR_CHECK(ndr_pull_samr_Password(ndr, NDR_SCALARS, r->in.old_lm_crypted));
9392
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_old_lm_crypted_0, 0);
9394
NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_new_lm_crypted));
9395
if (_ptr_new_lm_crypted) {
9396
NDR_PULL_ALLOC(ndr, r->in.new_lm_crypted);
9398
r->in.new_lm_crypted = NULL;
9400
if (r->in.new_lm_crypted) {
9401
_mem_save_new_lm_crypted_0 = NDR_PULL_GET_MEM_CTX(ndr);
9402
NDR_PULL_SET_MEM_CTX(ndr, r->in.new_lm_crypted, 0);
9403
NDR_CHECK(ndr_pull_samr_Password(ndr, NDR_SCALARS, r->in.new_lm_crypted));
9404
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_new_lm_crypted_0, 0);
9406
NDR_CHECK(ndr_pull_uint8(ndr, NDR_SCALARS, &r->in.nt_present));
9407
NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_old_nt_crypted));
9408
if (_ptr_old_nt_crypted) {
9409
NDR_PULL_ALLOC(ndr, r->in.old_nt_crypted);
9411
r->in.old_nt_crypted = NULL;
9413
if (r->in.old_nt_crypted) {
9414
_mem_save_old_nt_crypted_0 = NDR_PULL_GET_MEM_CTX(ndr);
9415
NDR_PULL_SET_MEM_CTX(ndr, r->in.old_nt_crypted, 0);
9416
NDR_CHECK(ndr_pull_samr_Password(ndr, NDR_SCALARS, r->in.old_nt_crypted));
9417
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_old_nt_crypted_0, 0);
9419
NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_new_nt_crypted));
9420
if (_ptr_new_nt_crypted) {
9421
NDR_PULL_ALLOC(ndr, r->in.new_nt_crypted);
9423
r->in.new_nt_crypted = NULL;
9425
if (r->in.new_nt_crypted) {
9426
_mem_save_new_nt_crypted_0 = NDR_PULL_GET_MEM_CTX(ndr);
9427
NDR_PULL_SET_MEM_CTX(ndr, r->in.new_nt_crypted, 0);
9428
NDR_CHECK(ndr_pull_samr_Password(ndr, NDR_SCALARS, r->in.new_nt_crypted));
9429
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_new_nt_crypted_0, 0);
9431
NDR_CHECK(ndr_pull_uint8(ndr, NDR_SCALARS, &r->in.cross1_present));
9432
NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_nt_cross));
9433
if (_ptr_nt_cross) {
9434
NDR_PULL_ALLOC(ndr, r->in.nt_cross);
9436
r->in.nt_cross = NULL;
9438
if (r->in.nt_cross) {
9439
_mem_save_nt_cross_0 = NDR_PULL_GET_MEM_CTX(ndr);
9440
NDR_PULL_SET_MEM_CTX(ndr, r->in.nt_cross, 0);
9441
NDR_CHECK(ndr_pull_samr_Password(ndr, NDR_SCALARS, r->in.nt_cross));
9442
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_nt_cross_0, 0);
9444
NDR_CHECK(ndr_pull_uint8(ndr, NDR_SCALARS, &r->in.cross2_present));
9445
NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_lm_cross));
9446
if (_ptr_lm_cross) {
9447
NDR_PULL_ALLOC(ndr, r->in.lm_cross);
9449
r->in.lm_cross = NULL;
9451
if (r->in.lm_cross) {
9452
_mem_save_lm_cross_0 = NDR_PULL_GET_MEM_CTX(ndr);
9453
NDR_PULL_SET_MEM_CTX(ndr, r->in.lm_cross, 0);
9454
NDR_CHECK(ndr_pull_samr_Password(ndr, NDR_SCALARS, r->in.lm_cross));
9455
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_lm_cross_0, 0);
9458
if (flags & NDR_OUT) {
9459
NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
9461
return NDR_ERR_SUCCESS;
9464
_PUBLIC_ void ndr_print_samr_ChangePasswordUser(struct ndr_print *ndr, const char *name, int flags, const struct samr_ChangePasswordUser *r)
9466
ndr_print_struct(ndr, name, "samr_ChangePasswordUser");
9467
if (r == NULL) { ndr_print_null(ndr); return; }
9469
if (flags & NDR_SET_VALUES) {
9470
ndr->flags |= LIBNDR_PRINT_SET_VALUES;
9472
if (flags & NDR_IN) {
9473
ndr_print_struct(ndr, "in", "samr_ChangePasswordUser");
9475
ndr_print_ptr(ndr, "user_handle", r->in.user_handle);
9477
ndr_print_policy_handle(ndr, "user_handle", r->in.user_handle);
9479
ndr_print_uint8(ndr, "lm_present", r->in.lm_present);
9480
ndr_print_ptr(ndr, "old_lm_crypted", r->in.old_lm_crypted);
9482
if (r->in.old_lm_crypted) {
9483
ndr_print_samr_Password(ndr, "old_lm_crypted", r->in.old_lm_crypted);
9486
ndr_print_ptr(ndr, "new_lm_crypted", r->in.new_lm_crypted);
9488
if (r->in.new_lm_crypted) {
9489
ndr_print_samr_Password(ndr, "new_lm_crypted", r->in.new_lm_crypted);
9492
ndr_print_uint8(ndr, "nt_present", r->in.nt_present);
9493
ndr_print_ptr(ndr, "old_nt_crypted", r->in.old_nt_crypted);
9495
if (r->in.old_nt_crypted) {
9496
ndr_print_samr_Password(ndr, "old_nt_crypted", r->in.old_nt_crypted);
9499
ndr_print_ptr(ndr, "new_nt_crypted", r->in.new_nt_crypted);
9501
if (r->in.new_nt_crypted) {
9502
ndr_print_samr_Password(ndr, "new_nt_crypted", r->in.new_nt_crypted);
9505
ndr_print_uint8(ndr, "cross1_present", r->in.cross1_present);
9506
ndr_print_ptr(ndr, "nt_cross", r->in.nt_cross);
9508
if (r->in.nt_cross) {
9509
ndr_print_samr_Password(ndr, "nt_cross", r->in.nt_cross);
9512
ndr_print_uint8(ndr, "cross2_present", r->in.cross2_present);
9513
ndr_print_ptr(ndr, "lm_cross", r->in.lm_cross);
9515
if (r->in.lm_cross) {
9516
ndr_print_samr_Password(ndr, "lm_cross", r->in.lm_cross);
9521
if (flags & NDR_OUT) {
9522
ndr_print_struct(ndr, "out", "samr_ChangePasswordUser");
9524
ndr_print_NTSTATUS(ndr, "result", r->out.result);
9530
static enum ndr_err_code ndr_push_samr_GetGroupsForUser(struct ndr_push *ndr, int flags, const struct samr_GetGroupsForUser *r)
9532
if (flags & NDR_IN) {
9533
if (r->in.user_handle == NULL) {
9534
return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
9536
NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS, r->in.user_handle));
9538
if (flags & NDR_OUT) {
9539
if (r->out.rids == NULL) {
9540
return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
9542
NDR_CHECK(ndr_push_unique_ptr(ndr, *r->out.rids));
9544
NDR_CHECK(ndr_push_samr_RidWithAttributeArray(ndr, NDR_SCALARS|NDR_BUFFERS, *r->out.rids));
9546
NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
9548
return NDR_ERR_SUCCESS;
9551
static enum ndr_err_code ndr_pull_samr_GetGroupsForUser(struct ndr_pull *ndr, int flags, struct samr_GetGroupsForUser *r)
9554
TALLOC_CTX *_mem_save_user_handle_0;
9555
TALLOC_CTX *_mem_save_rids_0;
9556
TALLOC_CTX *_mem_save_rids_1;
9557
if (flags & NDR_IN) {
9558
ZERO_STRUCT(r->out);
9560
if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
9561
NDR_PULL_ALLOC(ndr, r->in.user_handle);
9563
_mem_save_user_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
9564
NDR_PULL_SET_MEM_CTX(ndr, r->in.user_handle, LIBNDR_FLAG_REF_ALLOC);
9565
NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS, r->in.user_handle));
9566
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_user_handle_0, LIBNDR_FLAG_REF_ALLOC);
9567
NDR_PULL_ALLOC(ndr, r->out.rids);
9568
ZERO_STRUCTP(r->out.rids);
9570
if (flags & NDR_OUT) {
9571
if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
9572
NDR_PULL_ALLOC(ndr, r->out.rids);
9574
_mem_save_rids_0 = NDR_PULL_GET_MEM_CTX(ndr);
9575
NDR_PULL_SET_MEM_CTX(ndr, r->out.rids, LIBNDR_FLAG_REF_ALLOC);
9576
NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_rids));
9578
NDR_PULL_ALLOC(ndr, *r->out.rids);
9580
*r->out.rids = NULL;
9583
_mem_save_rids_1 = NDR_PULL_GET_MEM_CTX(ndr);
9584
NDR_PULL_SET_MEM_CTX(ndr, *r->out.rids, 0);
9585
NDR_CHECK(ndr_pull_samr_RidWithAttributeArray(ndr, NDR_SCALARS|NDR_BUFFERS, *r->out.rids));
9586
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_rids_1, 0);
9588
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_rids_0, LIBNDR_FLAG_REF_ALLOC);
9589
NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
9591
return NDR_ERR_SUCCESS;
9594
_PUBLIC_ void ndr_print_samr_GetGroupsForUser(struct ndr_print *ndr, const char *name, int flags, const struct samr_GetGroupsForUser *r)
9596
ndr_print_struct(ndr, name, "samr_GetGroupsForUser");
9597
if (r == NULL) { ndr_print_null(ndr); return; }
9599
if (flags & NDR_SET_VALUES) {
9600
ndr->flags |= LIBNDR_PRINT_SET_VALUES;
9602
if (flags & NDR_IN) {
9603
ndr_print_struct(ndr, "in", "samr_GetGroupsForUser");
9605
ndr_print_ptr(ndr, "user_handle", r->in.user_handle);
9607
ndr_print_policy_handle(ndr, "user_handle", r->in.user_handle);
9611
if (flags & NDR_OUT) {
9612
ndr_print_struct(ndr, "out", "samr_GetGroupsForUser");
9614
ndr_print_ptr(ndr, "rids", r->out.rids);
9616
ndr_print_ptr(ndr, "rids", *r->out.rids);
9619
ndr_print_samr_RidWithAttributeArray(ndr, "rids", *r->out.rids);
9623
ndr_print_NTSTATUS(ndr, "result", r->out.result);
9629
static enum ndr_err_code ndr_push_samr_QueryDisplayInfo(struct ndr_push *ndr, int flags, const struct samr_QueryDisplayInfo *r)
9631
if (flags & NDR_IN) {
9632
if (r->in.domain_handle == NULL) {
9633
return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
9635
NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS, r->in.domain_handle));
9636
NDR_CHECK(ndr_push_uint16(ndr, NDR_SCALARS, r->in.level));
9637
NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->in.start_idx));
9638
NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->in.max_entries));
9639
NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->in.buf_size));
9641
if (flags & NDR_OUT) {
9642
if (r->out.total_size == NULL) {
9643
return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
9645
NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, *r->out.total_size));
9646
if (r->out.returned_size == NULL) {
9647
return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
9649
NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, *r->out.returned_size));
9650
if (r->out.info == NULL) {
9651
return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
9653
NDR_CHECK(ndr_push_set_switch_value(ndr, r->out.info, r->in.level));
9654
NDR_CHECK(ndr_push_samr_DispInfo(ndr, NDR_SCALARS|NDR_BUFFERS, r->out.info));
9655
NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
9657
return NDR_ERR_SUCCESS;
9660
static enum ndr_err_code ndr_pull_samr_QueryDisplayInfo(struct ndr_pull *ndr, int flags, struct samr_QueryDisplayInfo *r)
9662
TALLOC_CTX *_mem_save_domain_handle_0;
9663
TALLOC_CTX *_mem_save_total_size_0;
9664
TALLOC_CTX *_mem_save_returned_size_0;
9665
TALLOC_CTX *_mem_save_info_0;
9666
if (flags & NDR_IN) {
9667
ZERO_STRUCT(r->out);
9669
if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
9670
NDR_PULL_ALLOC(ndr, r->in.domain_handle);
9672
_mem_save_domain_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
9673
NDR_PULL_SET_MEM_CTX(ndr, r->in.domain_handle, LIBNDR_FLAG_REF_ALLOC);
9674
NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS, r->in.domain_handle));
9675
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_domain_handle_0, LIBNDR_FLAG_REF_ALLOC);
9676
NDR_CHECK(ndr_pull_uint16(ndr, NDR_SCALARS, &r->in.level));
9677
NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->in.start_idx));
9678
NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->in.max_entries));
9679
NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->in.buf_size));
9680
NDR_PULL_ALLOC(ndr, r->out.total_size);
9681
ZERO_STRUCTP(r->out.total_size);
9682
NDR_PULL_ALLOC(ndr, r->out.returned_size);
9683
ZERO_STRUCTP(r->out.returned_size);
9684
NDR_PULL_ALLOC(ndr, r->out.info);
9685
ZERO_STRUCTP(r->out.info);
9687
if (flags & NDR_OUT) {
9688
if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
9689
NDR_PULL_ALLOC(ndr, r->out.total_size);
9691
_mem_save_total_size_0 = NDR_PULL_GET_MEM_CTX(ndr);
9692
NDR_PULL_SET_MEM_CTX(ndr, r->out.total_size, LIBNDR_FLAG_REF_ALLOC);
9693
NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, r->out.total_size));
9694
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_total_size_0, LIBNDR_FLAG_REF_ALLOC);
9695
if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
9696
NDR_PULL_ALLOC(ndr, r->out.returned_size);
9698
_mem_save_returned_size_0 = NDR_PULL_GET_MEM_CTX(ndr);
9699
NDR_PULL_SET_MEM_CTX(ndr, r->out.returned_size, LIBNDR_FLAG_REF_ALLOC);
9700
NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, r->out.returned_size));
9701
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_returned_size_0, LIBNDR_FLAG_REF_ALLOC);
9702
if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
9703
NDR_PULL_ALLOC(ndr, r->out.info);
9705
_mem_save_info_0 = NDR_PULL_GET_MEM_CTX(ndr);
9706
NDR_PULL_SET_MEM_CTX(ndr, r->out.info, LIBNDR_FLAG_REF_ALLOC);
9707
NDR_CHECK(ndr_pull_set_switch_value(ndr, r->out.info, r->in.level));
9708
NDR_CHECK(ndr_pull_samr_DispInfo(ndr, NDR_SCALARS|NDR_BUFFERS, r->out.info));
9709
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_info_0, LIBNDR_FLAG_REF_ALLOC);
9710
NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
9712
return NDR_ERR_SUCCESS;
9715
_PUBLIC_ void ndr_print_samr_QueryDisplayInfo(struct ndr_print *ndr, const char *name, int flags, const struct samr_QueryDisplayInfo *r)
9717
ndr_print_struct(ndr, name, "samr_QueryDisplayInfo");
9718
if (r == NULL) { ndr_print_null(ndr); return; }
9720
if (flags & NDR_SET_VALUES) {
9721
ndr->flags |= LIBNDR_PRINT_SET_VALUES;
9723
if (flags & NDR_IN) {
9724
ndr_print_struct(ndr, "in", "samr_QueryDisplayInfo");
9726
ndr_print_ptr(ndr, "domain_handle", r->in.domain_handle);
9728
ndr_print_policy_handle(ndr, "domain_handle", r->in.domain_handle);
9730
ndr_print_uint16(ndr, "level", r->in.level);
9731
ndr_print_uint32(ndr, "start_idx", r->in.start_idx);
9732
ndr_print_uint32(ndr, "max_entries", r->in.max_entries);
9733
ndr_print_uint32(ndr, "buf_size", r->in.buf_size);
9736
if (flags & NDR_OUT) {
9737
ndr_print_struct(ndr, "out", "samr_QueryDisplayInfo");
9739
ndr_print_ptr(ndr, "total_size", r->out.total_size);
9741
ndr_print_uint32(ndr, "total_size", *r->out.total_size);
9743
ndr_print_ptr(ndr, "returned_size", r->out.returned_size);
9745
ndr_print_uint32(ndr, "returned_size", *r->out.returned_size);
9747
ndr_print_ptr(ndr, "info", r->out.info);
9749
ndr_print_set_switch_value(ndr, r->out.info, r->in.level);
9750
ndr_print_samr_DispInfo(ndr, "info", r->out.info);
9752
ndr_print_NTSTATUS(ndr, "result", r->out.result);
9758
static enum ndr_err_code ndr_push_samr_GetDisplayEnumerationIndex(struct ndr_push *ndr, int flags, const struct samr_GetDisplayEnumerationIndex *r)
9760
if (flags & NDR_IN) {
9761
if (r->in.domain_handle == NULL) {
9762
return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
9764
NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS, r->in.domain_handle));
9765
NDR_CHECK(ndr_push_uint16(ndr, NDR_SCALARS, r->in.level));
9766
if (r->in.name == NULL) {
9767
return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
9769
NDR_CHECK(ndr_push_lsa_String(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.name));
9771
if (flags & NDR_OUT) {
9772
if (r->out.idx == NULL) {
9773
return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
9775
NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, *r->out.idx));
9776
NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
9778
return NDR_ERR_SUCCESS;
9781
static enum ndr_err_code ndr_pull_samr_GetDisplayEnumerationIndex(struct ndr_pull *ndr, int flags, struct samr_GetDisplayEnumerationIndex *r)
9783
TALLOC_CTX *_mem_save_domain_handle_0;
9784
TALLOC_CTX *_mem_save_name_0;
9785
TALLOC_CTX *_mem_save_idx_0;
9786
if (flags & NDR_IN) {
9787
ZERO_STRUCT(r->out);
9789
if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
9790
NDR_PULL_ALLOC(ndr, r->in.domain_handle);
9792
_mem_save_domain_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
9793
NDR_PULL_SET_MEM_CTX(ndr, r->in.domain_handle, LIBNDR_FLAG_REF_ALLOC);
9794
NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS, r->in.domain_handle));
9795
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_domain_handle_0, LIBNDR_FLAG_REF_ALLOC);
9796
NDR_CHECK(ndr_pull_uint16(ndr, NDR_SCALARS, &r->in.level));
9797
if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
9798
NDR_PULL_ALLOC(ndr, r->in.name);
9800
_mem_save_name_0 = NDR_PULL_GET_MEM_CTX(ndr);
9801
NDR_PULL_SET_MEM_CTX(ndr, r->in.name, LIBNDR_FLAG_REF_ALLOC);
9802
NDR_CHECK(ndr_pull_lsa_String(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.name));
9803
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_name_0, LIBNDR_FLAG_REF_ALLOC);
9804
NDR_PULL_ALLOC(ndr, r->out.idx);
9805
ZERO_STRUCTP(r->out.idx);
9807
if (flags & NDR_OUT) {
9808
if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
9809
NDR_PULL_ALLOC(ndr, r->out.idx);
9811
_mem_save_idx_0 = NDR_PULL_GET_MEM_CTX(ndr);
9812
NDR_PULL_SET_MEM_CTX(ndr, r->out.idx, LIBNDR_FLAG_REF_ALLOC);
9813
NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, r->out.idx));
9814
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_idx_0, LIBNDR_FLAG_REF_ALLOC);
9815
NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
9817
return NDR_ERR_SUCCESS;
9820
_PUBLIC_ void ndr_print_samr_GetDisplayEnumerationIndex(struct ndr_print *ndr, const char *name, int flags, const struct samr_GetDisplayEnumerationIndex *r)
9822
ndr_print_struct(ndr, name, "samr_GetDisplayEnumerationIndex");
9823
if (r == NULL) { ndr_print_null(ndr); return; }
9825
if (flags & NDR_SET_VALUES) {
9826
ndr->flags |= LIBNDR_PRINT_SET_VALUES;
9828
if (flags & NDR_IN) {
9829
ndr_print_struct(ndr, "in", "samr_GetDisplayEnumerationIndex");
9831
ndr_print_ptr(ndr, "domain_handle", r->in.domain_handle);
9833
ndr_print_policy_handle(ndr, "domain_handle", r->in.domain_handle);
9835
ndr_print_uint16(ndr, "level", r->in.level);
9836
ndr_print_ptr(ndr, "name", r->in.name);
9838
ndr_print_lsa_String(ndr, "name", r->in.name);
9842
if (flags & NDR_OUT) {
9843
ndr_print_struct(ndr, "out", "samr_GetDisplayEnumerationIndex");
9845
ndr_print_ptr(ndr, "idx", r->out.idx);
9847
ndr_print_uint32(ndr, "idx", *r->out.idx);
9849
ndr_print_NTSTATUS(ndr, "result", r->out.result);
9855
static enum ndr_err_code ndr_push_samr_TestPrivateFunctionsDomain(struct ndr_push *ndr, int flags, const struct samr_TestPrivateFunctionsDomain *r)
9857
if (flags & NDR_IN) {
9858
if (r->in.domain_handle == NULL) {
9859
return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
9861
NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS, r->in.domain_handle));
9863
if (flags & NDR_OUT) {
9864
NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
9866
return NDR_ERR_SUCCESS;
9869
static enum ndr_err_code ndr_pull_samr_TestPrivateFunctionsDomain(struct ndr_pull *ndr, int flags, struct samr_TestPrivateFunctionsDomain *r)
9871
TALLOC_CTX *_mem_save_domain_handle_0;
9872
if (flags & NDR_IN) {
9873
if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
9874
NDR_PULL_ALLOC(ndr, r->in.domain_handle);
9876
_mem_save_domain_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
9877
NDR_PULL_SET_MEM_CTX(ndr, r->in.domain_handle, LIBNDR_FLAG_REF_ALLOC);
9878
NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS, r->in.domain_handle));
9879
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_domain_handle_0, LIBNDR_FLAG_REF_ALLOC);
9881
if (flags & NDR_OUT) {
9882
NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
9884
return NDR_ERR_SUCCESS;
9887
_PUBLIC_ void ndr_print_samr_TestPrivateFunctionsDomain(struct ndr_print *ndr, const char *name, int flags, const struct samr_TestPrivateFunctionsDomain *r)
9889
ndr_print_struct(ndr, name, "samr_TestPrivateFunctionsDomain");
9890
if (r == NULL) { ndr_print_null(ndr); return; }
9892
if (flags & NDR_SET_VALUES) {
9893
ndr->flags |= LIBNDR_PRINT_SET_VALUES;
9895
if (flags & NDR_IN) {
9896
ndr_print_struct(ndr, "in", "samr_TestPrivateFunctionsDomain");
9898
ndr_print_ptr(ndr, "domain_handle", r->in.domain_handle);
9900
ndr_print_policy_handle(ndr, "domain_handle", r->in.domain_handle);
9904
if (flags & NDR_OUT) {
9905
ndr_print_struct(ndr, "out", "samr_TestPrivateFunctionsDomain");
9907
ndr_print_NTSTATUS(ndr, "result", r->out.result);
9913
static enum ndr_err_code ndr_push_samr_TestPrivateFunctionsUser(struct ndr_push *ndr, int flags, const struct samr_TestPrivateFunctionsUser *r)
9915
if (flags & NDR_IN) {
9916
if (r->in.user_handle == NULL) {
9917
return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
9919
NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS, r->in.user_handle));
9921
if (flags & NDR_OUT) {
9922
NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
9924
return NDR_ERR_SUCCESS;
9927
static enum ndr_err_code ndr_pull_samr_TestPrivateFunctionsUser(struct ndr_pull *ndr, int flags, struct samr_TestPrivateFunctionsUser *r)
9929
TALLOC_CTX *_mem_save_user_handle_0;
9930
if (flags & NDR_IN) {
9931
if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
9932
NDR_PULL_ALLOC(ndr, r->in.user_handle);
9934
_mem_save_user_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
9935
NDR_PULL_SET_MEM_CTX(ndr, r->in.user_handle, LIBNDR_FLAG_REF_ALLOC);
9936
NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS, r->in.user_handle));
9937
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_user_handle_0, LIBNDR_FLAG_REF_ALLOC);
9939
if (flags & NDR_OUT) {
9940
NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
9942
return NDR_ERR_SUCCESS;
9945
_PUBLIC_ void ndr_print_samr_TestPrivateFunctionsUser(struct ndr_print *ndr, const char *name, int flags, const struct samr_TestPrivateFunctionsUser *r)
9947
ndr_print_struct(ndr, name, "samr_TestPrivateFunctionsUser");
9948
if (r == NULL) { ndr_print_null(ndr); return; }
9950
if (flags & NDR_SET_VALUES) {
9951
ndr->flags |= LIBNDR_PRINT_SET_VALUES;
9953
if (flags & NDR_IN) {
9954
ndr_print_struct(ndr, "in", "samr_TestPrivateFunctionsUser");
9956
ndr_print_ptr(ndr, "user_handle", r->in.user_handle);
9958
ndr_print_policy_handle(ndr, "user_handle", r->in.user_handle);
9962
if (flags & NDR_OUT) {
9963
ndr_print_struct(ndr, "out", "samr_TestPrivateFunctionsUser");
9965
ndr_print_NTSTATUS(ndr, "result", r->out.result);
9971
_PUBLIC_ enum ndr_err_code ndr_push_samr_GetUserPwInfo(struct ndr_push *ndr, int flags, const struct samr_GetUserPwInfo *r)
9973
if (flags & NDR_IN) {
9974
if (r->in.user_handle == NULL) {
9975
return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
9977
NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS, r->in.user_handle));
9979
if (flags & NDR_OUT) {
9980
if (r->out.info == NULL) {
9981
return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
9983
NDR_CHECK(ndr_push_samr_PwInfo(ndr, NDR_SCALARS, r->out.info));
9984
NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
9986
return NDR_ERR_SUCCESS;
9989
_PUBLIC_ enum ndr_err_code ndr_pull_samr_GetUserPwInfo(struct ndr_pull *ndr, int flags, struct samr_GetUserPwInfo *r)
9991
TALLOC_CTX *_mem_save_user_handle_0;
9992
TALLOC_CTX *_mem_save_info_0;
9993
if (flags & NDR_IN) {
9994
ZERO_STRUCT(r->out);
9996
if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
9997
NDR_PULL_ALLOC(ndr, r->in.user_handle);
9999
_mem_save_user_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
10000
NDR_PULL_SET_MEM_CTX(ndr, r->in.user_handle, LIBNDR_FLAG_REF_ALLOC);
10001
NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS, r->in.user_handle));
10002
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_user_handle_0, LIBNDR_FLAG_REF_ALLOC);
10003
NDR_PULL_ALLOC(ndr, r->out.info);
10004
ZERO_STRUCTP(r->out.info);
10006
if (flags & NDR_OUT) {
10007
if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
10008
NDR_PULL_ALLOC(ndr, r->out.info);
10010
_mem_save_info_0 = NDR_PULL_GET_MEM_CTX(ndr);
10011
NDR_PULL_SET_MEM_CTX(ndr, r->out.info, LIBNDR_FLAG_REF_ALLOC);
10012
NDR_CHECK(ndr_pull_samr_PwInfo(ndr, NDR_SCALARS, r->out.info));
10013
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_info_0, LIBNDR_FLAG_REF_ALLOC);
10014
NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
10016
return NDR_ERR_SUCCESS;
10019
_PUBLIC_ void ndr_print_samr_GetUserPwInfo(struct ndr_print *ndr, const char *name, int flags, const struct samr_GetUserPwInfo *r)
10021
ndr_print_struct(ndr, name, "samr_GetUserPwInfo");
10022
if (r == NULL) { ndr_print_null(ndr); return; }
10024
if (flags & NDR_SET_VALUES) {
10025
ndr->flags |= LIBNDR_PRINT_SET_VALUES;
10027
if (flags & NDR_IN) {
10028
ndr_print_struct(ndr, "in", "samr_GetUserPwInfo");
10030
ndr_print_ptr(ndr, "user_handle", r->in.user_handle);
10032
ndr_print_policy_handle(ndr, "user_handle", r->in.user_handle);
10036
if (flags & NDR_OUT) {
10037
ndr_print_struct(ndr, "out", "samr_GetUserPwInfo");
10039
ndr_print_ptr(ndr, "info", r->out.info);
10041
ndr_print_samr_PwInfo(ndr, "info", r->out.info);
10043
ndr_print_NTSTATUS(ndr, "result", r->out.result);
10049
static enum ndr_err_code ndr_push_samr_RemoveMemberFromForeignDomain(struct ndr_push *ndr, int flags, const struct samr_RemoveMemberFromForeignDomain *r)
10051
if (flags & NDR_IN) {
10052
if (r->in.domain_handle == NULL) {
10053
return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
10055
NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS, r->in.domain_handle));
10056
if (r->in.sid == NULL) {
10057
return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
10059
NDR_CHECK(ndr_push_dom_sid2(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.sid));
10061
if (flags & NDR_OUT) {
10062
NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
10064
return NDR_ERR_SUCCESS;
10067
static enum ndr_err_code ndr_pull_samr_RemoveMemberFromForeignDomain(struct ndr_pull *ndr, int flags, struct samr_RemoveMemberFromForeignDomain *r)
10069
TALLOC_CTX *_mem_save_domain_handle_0;
10070
TALLOC_CTX *_mem_save_sid_0;
10071
if (flags & NDR_IN) {
10072
if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
10073
NDR_PULL_ALLOC(ndr, r->in.domain_handle);
10075
_mem_save_domain_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
10076
NDR_PULL_SET_MEM_CTX(ndr, r->in.domain_handle, LIBNDR_FLAG_REF_ALLOC);
10077
NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS, r->in.domain_handle));
10078
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_domain_handle_0, LIBNDR_FLAG_REF_ALLOC);
10079
if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
10080
NDR_PULL_ALLOC(ndr, r->in.sid);
10082
_mem_save_sid_0 = NDR_PULL_GET_MEM_CTX(ndr);
10083
NDR_PULL_SET_MEM_CTX(ndr, r->in.sid, LIBNDR_FLAG_REF_ALLOC);
10084
NDR_CHECK(ndr_pull_dom_sid2(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.sid));
10085
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_sid_0, LIBNDR_FLAG_REF_ALLOC);
10087
if (flags & NDR_OUT) {
10088
NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
10090
return NDR_ERR_SUCCESS;
10093
_PUBLIC_ void ndr_print_samr_RemoveMemberFromForeignDomain(struct ndr_print *ndr, const char *name, int flags, const struct samr_RemoveMemberFromForeignDomain *r)
10095
ndr_print_struct(ndr, name, "samr_RemoveMemberFromForeignDomain");
10096
if (r == NULL) { ndr_print_null(ndr); return; }
10098
if (flags & NDR_SET_VALUES) {
10099
ndr->flags |= LIBNDR_PRINT_SET_VALUES;
10101
if (flags & NDR_IN) {
10102
ndr_print_struct(ndr, "in", "samr_RemoveMemberFromForeignDomain");
10104
ndr_print_ptr(ndr, "domain_handle", r->in.domain_handle);
10106
ndr_print_policy_handle(ndr, "domain_handle", r->in.domain_handle);
10108
ndr_print_ptr(ndr, "sid", r->in.sid);
10110
ndr_print_dom_sid2(ndr, "sid", r->in.sid);
10114
if (flags & NDR_OUT) {
10115
ndr_print_struct(ndr, "out", "samr_RemoveMemberFromForeignDomain");
10117
ndr_print_NTSTATUS(ndr, "result", r->out.result);
10123
static enum ndr_err_code ndr_push_samr_QueryDomainInfo2(struct ndr_push *ndr, int flags, const struct samr_QueryDomainInfo2 *r)
10125
if (flags & NDR_IN) {
10126
if (r->in.domain_handle == NULL) {
10127
return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
10129
NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS, r->in.domain_handle));
10130
NDR_CHECK(ndr_push_samr_DomainInfoClass(ndr, NDR_SCALARS, r->in.level));
10132
if (flags & NDR_OUT) {
10133
if (r->out.info == NULL) {
10134
return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
10136
NDR_CHECK(ndr_push_unique_ptr(ndr, *r->out.info));
10137
if (*r->out.info) {
10138
NDR_CHECK(ndr_push_set_switch_value(ndr, *r->out.info, r->in.level));
10139
NDR_CHECK(ndr_push_samr_DomainInfo(ndr, NDR_SCALARS|NDR_BUFFERS, *r->out.info));
10141
NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
10143
return NDR_ERR_SUCCESS;
10146
static enum ndr_err_code ndr_pull_samr_QueryDomainInfo2(struct ndr_pull *ndr, int flags, struct samr_QueryDomainInfo2 *r)
10148
uint32_t _ptr_info;
10149
TALLOC_CTX *_mem_save_domain_handle_0;
10150
TALLOC_CTX *_mem_save_info_0;
10151
TALLOC_CTX *_mem_save_info_1;
10152
if (flags & NDR_IN) {
10153
ZERO_STRUCT(r->out);
10155
if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
10156
NDR_PULL_ALLOC(ndr, r->in.domain_handle);
10158
_mem_save_domain_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
10159
NDR_PULL_SET_MEM_CTX(ndr, r->in.domain_handle, LIBNDR_FLAG_REF_ALLOC);
10160
NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS, r->in.domain_handle));
10161
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_domain_handle_0, LIBNDR_FLAG_REF_ALLOC);
10162
NDR_CHECK(ndr_pull_samr_DomainInfoClass(ndr, NDR_SCALARS, &r->in.level));
10163
NDR_PULL_ALLOC(ndr, r->out.info);
10164
ZERO_STRUCTP(r->out.info);
10166
if (flags & NDR_OUT) {
10167
if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
10168
NDR_PULL_ALLOC(ndr, r->out.info);
10170
_mem_save_info_0 = NDR_PULL_GET_MEM_CTX(ndr);
10171
NDR_PULL_SET_MEM_CTX(ndr, r->out.info, LIBNDR_FLAG_REF_ALLOC);
10172
NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_info));
10174
NDR_PULL_ALLOC(ndr, *r->out.info);
10176
*r->out.info = NULL;
10178
if (*r->out.info) {
10179
_mem_save_info_1 = NDR_PULL_GET_MEM_CTX(ndr);
10180
NDR_PULL_SET_MEM_CTX(ndr, *r->out.info, 0);
10181
NDR_CHECK(ndr_pull_set_switch_value(ndr, *r->out.info, r->in.level));
10182
NDR_CHECK(ndr_pull_samr_DomainInfo(ndr, NDR_SCALARS|NDR_BUFFERS, *r->out.info));
10183
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_info_1, 0);
10185
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_info_0, LIBNDR_FLAG_REF_ALLOC);
10186
NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
10188
return NDR_ERR_SUCCESS;
10191
_PUBLIC_ void ndr_print_samr_QueryDomainInfo2(struct ndr_print *ndr, const char *name, int flags, const struct samr_QueryDomainInfo2 *r)
10193
ndr_print_struct(ndr, name, "samr_QueryDomainInfo2");
10194
if (r == NULL) { ndr_print_null(ndr); return; }
10196
if (flags & NDR_SET_VALUES) {
10197
ndr->flags |= LIBNDR_PRINT_SET_VALUES;
10199
if (flags & NDR_IN) {
10200
ndr_print_struct(ndr, "in", "samr_QueryDomainInfo2");
10202
ndr_print_ptr(ndr, "domain_handle", r->in.domain_handle);
10204
ndr_print_policy_handle(ndr, "domain_handle", r->in.domain_handle);
10206
ndr_print_samr_DomainInfoClass(ndr, "level", r->in.level);
10209
if (flags & NDR_OUT) {
10210
ndr_print_struct(ndr, "out", "samr_QueryDomainInfo2");
10212
ndr_print_ptr(ndr, "info", r->out.info);
10214
ndr_print_ptr(ndr, "info", *r->out.info);
10216
if (*r->out.info) {
10217
ndr_print_set_switch_value(ndr, *r->out.info, r->in.level);
10218
ndr_print_samr_DomainInfo(ndr, "info", *r->out.info);
10222
ndr_print_NTSTATUS(ndr, "result", r->out.result);
10228
static enum ndr_err_code ndr_push_samr_QueryUserInfo2(struct ndr_push *ndr, int flags, const struct samr_QueryUserInfo2 *r)
10230
if (flags & NDR_IN) {
10231
if (r->in.user_handle == NULL) {
10232
return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
10234
NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS, r->in.user_handle));
10235
NDR_CHECK(ndr_push_samr_UserInfoLevel(ndr, NDR_SCALARS, r->in.level));
10237
if (flags & NDR_OUT) {
10238
if (r->out.info == NULL) {
10239
return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
10241
NDR_CHECK(ndr_push_unique_ptr(ndr, *r->out.info));
10242
if (*r->out.info) {
10243
NDR_CHECK(ndr_push_set_switch_value(ndr, *r->out.info, r->in.level));
10244
NDR_CHECK(ndr_push_samr_UserInfo(ndr, NDR_SCALARS|NDR_BUFFERS, *r->out.info));
10246
NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
10248
return NDR_ERR_SUCCESS;
10251
static enum ndr_err_code ndr_pull_samr_QueryUserInfo2(struct ndr_pull *ndr, int flags, struct samr_QueryUserInfo2 *r)
10253
uint32_t _ptr_info;
10254
TALLOC_CTX *_mem_save_user_handle_0;
10255
TALLOC_CTX *_mem_save_info_0;
10256
TALLOC_CTX *_mem_save_info_1;
10257
if (flags & NDR_IN) {
10258
ZERO_STRUCT(r->out);
10260
if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
10261
NDR_PULL_ALLOC(ndr, r->in.user_handle);
10263
_mem_save_user_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
10264
NDR_PULL_SET_MEM_CTX(ndr, r->in.user_handle, LIBNDR_FLAG_REF_ALLOC);
10265
NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS, r->in.user_handle));
10266
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_user_handle_0, LIBNDR_FLAG_REF_ALLOC);
10267
NDR_CHECK(ndr_pull_samr_UserInfoLevel(ndr, NDR_SCALARS, &r->in.level));
10268
NDR_PULL_ALLOC(ndr, r->out.info);
10269
ZERO_STRUCTP(r->out.info);
10271
if (flags & NDR_OUT) {
10272
if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
10273
NDR_PULL_ALLOC(ndr, r->out.info);
10275
_mem_save_info_0 = NDR_PULL_GET_MEM_CTX(ndr);
10276
NDR_PULL_SET_MEM_CTX(ndr, r->out.info, LIBNDR_FLAG_REF_ALLOC);
10277
NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_info));
10279
NDR_PULL_ALLOC(ndr, *r->out.info);
10281
*r->out.info = NULL;
10283
if (*r->out.info) {
10284
_mem_save_info_1 = NDR_PULL_GET_MEM_CTX(ndr);
10285
NDR_PULL_SET_MEM_CTX(ndr, *r->out.info, 0);
10286
NDR_CHECK(ndr_pull_set_switch_value(ndr, *r->out.info, r->in.level));
10287
NDR_CHECK(ndr_pull_samr_UserInfo(ndr, NDR_SCALARS|NDR_BUFFERS, *r->out.info));
10288
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_info_1, 0);
10290
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_info_0, LIBNDR_FLAG_REF_ALLOC);
10291
NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
10293
return NDR_ERR_SUCCESS;
10296
_PUBLIC_ void ndr_print_samr_QueryUserInfo2(struct ndr_print *ndr, const char *name, int flags, const struct samr_QueryUserInfo2 *r)
10298
ndr_print_struct(ndr, name, "samr_QueryUserInfo2");
10299
if (r == NULL) { ndr_print_null(ndr); return; }
10301
if (flags & NDR_SET_VALUES) {
10302
ndr->flags |= LIBNDR_PRINT_SET_VALUES;
10304
if (flags & NDR_IN) {
10305
ndr_print_struct(ndr, "in", "samr_QueryUserInfo2");
10307
ndr_print_ptr(ndr, "user_handle", r->in.user_handle);
10309
ndr_print_policy_handle(ndr, "user_handle", r->in.user_handle);
10311
ndr_print_samr_UserInfoLevel(ndr, "level", r->in.level);
10314
if (flags & NDR_OUT) {
10315
ndr_print_struct(ndr, "out", "samr_QueryUserInfo2");
10317
ndr_print_ptr(ndr, "info", r->out.info);
10319
ndr_print_ptr(ndr, "info", *r->out.info);
10321
if (*r->out.info) {
10322
ndr_print_set_switch_value(ndr, *r->out.info, r->in.level);
10323
ndr_print_samr_UserInfo(ndr, "info", *r->out.info);
10327
ndr_print_NTSTATUS(ndr, "result", r->out.result);
10333
static enum ndr_err_code ndr_push_samr_QueryDisplayInfo2(struct ndr_push *ndr, int flags, const struct samr_QueryDisplayInfo2 *r)
10335
if (flags & NDR_IN) {
10336
if (r->in.domain_handle == NULL) {
10337
return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
10339
NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS, r->in.domain_handle));
10340
NDR_CHECK(ndr_push_uint16(ndr, NDR_SCALARS, r->in.level));
10341
NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->in.start_idx));
10342
NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->in.max_entries));
10343
NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->in.buf_size));
10345
if (flags & NDR_OUT) {
10346
if (r->out.total_size == NULL) {
10347
return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
10349
NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, *r->out.total_size));
10350
if (r->out.returned_size == NULL) {
10351
return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
10353
NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, *r->out.returned_size));
10354
if (r->out.info == NULL) {
10355
return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
10357
NDR_CHECK(ndr_push_set_switch_value(ndr, r->out.info, r->in.level));
10358
NDR_CHECK(ndr_push_samr_DispInfo(ndr, NDR_SCALARS|NDR_BUFFERS, r->out.info));
10359
NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
10361
return NDR_ERR_SUCCESS;
10364
static enum ndr_err_code ndr_pull_samr_QueryDisplayInfo2(struct ndr_pull *ndr, int flags, struct samr_QueryDisplayInfo2 *r)
10366
TALLOC_CTX *_mem_save_domain_handle_0;
10367
TALLOC_CTX *_mem_save_total_size_0;
10368
TALLOC_CTX *_mem_save_returned_size_0;
10369
TALLOC_CTX *_mem_save_info_0;
10370
if (flags & NDR_IN) {
10371
ZERO_STRUCT(r->out);
10373
if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
10374
NDR_PULL_ALLOC(ndr, r->in.domain_handle);
10376
_mem_save_domain_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
10377
NDR_PULL_SET_MEM_CTX(ndr, r->in.domain_handle, LIBNDR_FLAG_REF_ALLOC);
10378
NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS, r->in.domain_handle));
10379
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_domain_handle_0, LIBNDR_FLAG_REF_ALLOC);
10380
NDR_CHECK(ndr_pull_uint16(ndr, NDR_SCALARS, &r->in.level));
10381
NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->in.start_idx));
10382
NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->in.max_entries));
10383
NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->in.buf_size));
10384
NDR_PULL_ALLOC(ndr, r->out.total_size);
10385
ZERO_STRUCTP(r->out.total_size);
10386
NDR_PULL_ALLOC(ndr, r->out.returned_size);
10387
ZERO_STRUCTP(r->out.returned_size);
10388
NDR_PULL_ALLOC(ndr, r->out.info);
10389
ZERO_STRUCTP(r->out.info);
10391
if (flags & NDR_OUT) {
10392
if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
10393
NDR_PULL_ALLOC(ndr, r->out.total_size);
10395
_mem_save_total_size_0 = NDR_PULL_GET_MEM_CTX(ndr);
10396
NDR_PULL_SET_MEM_CTX(ndr, r->out.total_size, LIBNDR_FLAG_REF_ALLOC);
10397
NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, r->out.total_size));
10398
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_total_size_0, LIBNDR_FLAG_REF_ALLOC);
10399
if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
10400
NDR_PULL_ALLOC(ndr, r->out.returned_size);
10402
_mem_save_returned_size_0 = NDR_PULL_GET_MEM_CTX(ndr);
10403
NDR_PULL_SET_MEM_CTX(ndr, r->out.returned_size, LIBNDR_FLAG_REF_ALLOC);
10404
NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, r->out.returned_size));
10405
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_returned_size_0, LIBNDR_FLAG_REF_ALLOC);
10406
if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
10407
NDR_PULL_ALLOC(ndr, r->out.info);
10409
_mem_save_info_0 = NDR_PULL_GET_MEM_CTX(ndr);
10410
NDR_PULL_SET_MEM_CTX(ndr, r->out.info, LIBNDR_FLAG_REF_ALLOC);
10411
NDR_CHECK(ndr_pull_set_switch_value(ndr, r->out.info, r->in.level));
10412
NDR_CHECK(ndr_pull_samr_DispInfo(ndr, NDR_SCALARS|NDR_BUFFERS, r->out.info));
10413
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_info_0, LIBNDR_FLAG_REF_ALLOC);
10414
NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
10416
return NDR_ERR_SUCCESS;
10419
_PUBLIC_ void ndr_print_samr_QueryDisplayInfo2(struct ndr_print *ndr, const char *name, int flags, const struct samr_QueryDisplayInfo2 *r)
10421
ndr_print_struct(ndr, name, "samr_QueryDisplayInfo2");
10422
if (r == NULL) { ndr_print_null(ndr); return; }
10424
if (flags & NDR_SET_VALUES) {
10425
ndr->flags |= LIBNDR_PRINT_SET_VALUES;
10427
if (flags & NDR_IN) {
10428
ndr_print_struct(ndr, "in", "samr_QueryDisplayInfo2");
10430
ndr_print_ptr(ndr, "domain_handle", r->in.domain_handle);
10432
ndr_print_policy_handle(ndr, "domain_handle", r->in.domain_handle);
10434
ndr_print_uint16(ndr, "level", r->in.level);
10435
ndr_print_uint32(ndr, "start_idx", r->in.start_idx);
10436
ndr_print_uint32(ndr, "max_entries", r->in.max_entries);
10437
ndr_print_uint32(ndr, "buf_size", r->in.buf_size);
10440
if (flags & NDR_OUT) {
10441
ndr_print_struct(ndr, "out", "samr_QueryDisplayInfo2");
10443
ndr_print_ptr(ndr, "total_size", r->out.total_size);
10445
ndr_print_uint32(ndr, "total_size", *r->out.total_size);
10447
ndr_print_ptr(ndr, "returned_size", r->out.returned_size);
10449
ndr_print_uint32(ndr, "returned_size", *r->out.returned_size);
10451
ndr_print_ptr(ndr, "info", r->out.info);
10453
ndr_print_set_switch_value(ndr, r->out.info, r->in.level);
10454
ndr_print_samr_DispInfo(ndr, "info", r->out.info);
10456
ndr_print_NTSTATUS(ndr, "result", r->out.result);
10462
static enum ndr_err_code ndr_push_samr_GetDisplayEnumerationIndex2(struct ndr_push *ndr, int flags, const struct samr_GetDisplayEnumerationIndex2 *r)
10464
if (flags & NDR_IN) {
10465
if (r->in.domain_handle == NULL) {
10466
return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
10468
NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS, r->in.domain_handle));
10469
NDR_CHECK(ndr_push_uint16(ndr, NDR_SCALARS, r->in.level));
10470
if (r->in.name == NULL) {
10471
return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
10473
NDR_CHECK(ndr_push_lsa_String(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.name));
10475
if (flags & NDR_OUT) {
10476
if (r->out.idx == NULL) {
10477
return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
10479
NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, *r->out.idx));
10480
NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
10482
return NDR_ERR_SUCCESS;
10485
static enum ndr_err_code ndr_pull_samr_GetDisplayEnumerationIndex2(struct ndr_pull *ndr, int flags, struct samr_GetDisplayEnumerationIndex2 *r)
10487
TALLOC_CTX *_mem_save_domain_handle_0;
10488
TALLOC_CTX *_mem_save_name_0;
10489
TALLOC_CTX *_mem_save_idx_0;
10490
if (flags & NDR_IN) {
10491
ZERO_STRUCT(r->out);
10493
if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
10494
NDR_PULL_ALLOC(ndr, r->in.domain_handle);
10496
_mem_save_domain_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
10497
NDR_PULL_SET_MEM_CTX(ndr, r->in.domain_handle, LIBNDR_FLAG_REF_ALLOC);
10498
NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS, r->in.domain_handle));
10499
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_domain_handle_0, LIBNDR_FLAG_REF_ALLOC);
10500
NDR_CHECK(ndr_pull_uint16(ndr, NDR_SCALARS, &r->in.level));
10501
if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
10502
NDR_PULL_ALLOC(ndr, r->in.name);
10504
_mem_save_name_0 = NDR_PULL_GET_MEM_CTX(ndr);
10505
NDR_PULL_SET_MEM_CTX(ndr, r->in.name, LIBNDR_FLAG_REF_ALLOC);
10506
NDR_CHECK(ndr_pull_lsa_String(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.name));
10507
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_name_0, LIBNDR_FLAG_REF_ALLOC);
10508
NDR_PULL_ALLOC(ndr, r->out.idx);
10509
ZERO_STRUCTP(r->out.idx);
10511
if (flags & NDR_OUT) {
10512
if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
10513
NDR_PULL_ALLOC(ndr, r->out.idx);
10515
_mem_save_idx_0 = NDR_PULL_GET_MEM_CTX(ndr);
10516
NDR_PULL_SET_MEM_CTX(ndr, r->out.idx, LIBNDR_FLAG_REF_ALLOC);
10517
NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, r->out.idx));
10518
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_idx_0, LIBNDR_FLAG_REF_ALLOC);
10519
NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
10521
return NDR_ERR_SUCCESS;
10524
_PUBLIC_ void ndr_print_samr_GetDisplayEnumerationIndex2(struct ndr_print *ndr, const char *name, int flags, const struct samr_GetDisplayEnumerationIndex2 *r)
10526
ndr_print_struct(ndr, name, "samr_GetDisplayEnumerationIndex2");
10527
if (r == NULL) { ndr_print_null(ndr); return; }
10529
if (flags & NDR_SET_VALUES) {
10530
ndr->flags |= LIBNDR_PRINT_SET_VALUES;
10532
if (flags & NDR_IN) {
10533
ndr_print_struct(ndr, "in", "samr_GetDisplayEnumerationIndex2");
10535
ndr_print_ptr(ndr, "domain_handle", r->in.domain_handle);
10537
ndr_print_policy_handle(ndr, "domain_handle", r->in.domain_handle);
10539
ndr_print_uint16(ndr, "level", r->in.level);
10540
ndr_print_ptr(ndr, "name", r->in.name);
10542
ndr_print_lsa_String(ndr, "name", r->in.name);
10546
if (flags & NDR_OUT) {
10547
ndr_print_struct(ndr, "out", "samr_GetDisplayEnumerationIndex2");
10549
ndr_print_ptr(ndr, "idx", r->out.idx);
10551
ndr_print_uint32(ndr, "idx", *r->out.idx);
10553
ndr_print_NTSTATUS(ndr, "result", r->out.result);
10559
static enum ndr_err_code ndr_push_samr_CreateUser2(struct ndr_push *ndr, int flags, const struct samr_CreateUser2 *r)
10561
if (flags & NDR_IN) {
10562
if (r->in.domain_handle == NULL) {
10563
return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
10565
NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS, r->in.domain_handle));
10566
if (r->in.account_name == NULL) {
10567
return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
10569
NDR_CHECK(ndr_push_lsa_String(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.account_name));
10570
NDR_CHECK(ndr_push_samr_AcctFlags(ndr, NDR_SCALARS, r->in.acct_flags));
10571
NDR_CHECK(ndr_push_samr_UserAccessMask(ndr, NDR_SCALARS, r->in.access_mask));
10573
if (flags & NDR_OUT) {
10574
if (r->out.user_handle == NULL) {
10575
return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
10577
NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS, r->out.user_handle));
10578
if (r->out.access_granted == NULL) {
10579
return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
10581
NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, *r->out.access_granted));
10582
if (r->out.rid == NULL) {
10583
return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
10585
NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, *r->out.rid));
10586
NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
10588
return NDR_ERR_SUCCESS;
10591
static enum ndr_err_code ndr_pull_samr_CreateUser2(struct ndr_pull *ndr, int flags, struct samr_CreateUser2 *r)
10593
TALLOC_CTX *_mem_save_domain_handle_0;
10594
TALLOC_CTX *_mem_save_account_name_0;
10595
TALLOC_CTX *_mem_save_user_handle_0;
10596
TALLOC_CTX *_mem_save_access_granted_0;
10597
TALLOC_CTX *_mem_save_rid_0;
10598
if (flags & NDR_IN) {
10599
ZERO_STRUCT(r->out);
10601
if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
10602
NDR_PULL_ALLOC(ndr, r->in.domain_handle);
10604
_mem_save_domain_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
10605
NDR_PULL_SET_MEM_CTX(ndr, r->in.domain_handle, LIBNDR_FLAG_REF_ALLOC);
10606
NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS, r->in.domain_handle));
10607
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_domain_handle_0, LIBNDR_FLAG_REF_ALLOC);
10608
if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
10609
NDR_PULL_ALLOC(ndr, r->in.account_name);
10611
_mem_save_account_name_0 = NDR_PULL_GET_MEM_CTX(ndr);
10612
NDR_PULL_SET_MEM_CTX(ndr, r->in.account_name, LIBNDR_FLAG_REF_ALLOC);
10613
NDR_CHECK(ndr_pull_lsa_String(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.account_name));
10614
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_account_name_0, LIBNDR_FLAG_REF_ALLOC);
10615
NDR_CHECK(ndr_pull_samr_AcctFlags(ndr, NDR_SCALARS, &r->in.acct_flags));
10616
NDR_CHECK(ndr_pull_samr_UserAccessMask(ndr, NDR_SCALARS, &r->in.access_mask));
10617
NDR_PULL_ALLOC(ndr, r->out.user_handle);
10618
ZERO_STRUCTP(r->out.user_handle);
10619
NDR_PULL_ALLOC(ndr, r->out.access_granted);
10620
ZERO_STRUCTP(r->out.access_granted);
10621
NDR_PULL_ALLOC(ndr, r->out.rid);
10622
ZERO_STRUCTP(r->out.rid);
10624
if (flags & NDR_OUT) {
10625
if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
10626
NDR_PULL_ALLOC(ndr, r->out.user_handle);
10628
_mem_save_user_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
10629
NDR_PULL_SET_MEM_CTX(ndr, r->out.user_handle, LIBNDR_FLAG_REF_ALLOC);
10630
NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS, r->out.user_handle));
10631
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_user_handle_0, LIBNDR_FLAG_REF_ALLOC);
10632
if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
10633
NDR_PULL_ALLOC(ndr, r->out.access_granted);
10635
_mem_save_access_granted_0 = NDR_PULL_GET_MEM_CTX(ndr);
10636
NDR_PULL_SET_MEM_CTX(ndr, r->out.access_granted, LIBNDR_FLAG_REF_ALLOC);
10637
NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, r->out.access_granted));
10638
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_access_granted_0, LIBNDR_FLAG_REF_ALLOC);
10639
if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
10640
NDR_PULL_ALLOC(ndr, r->out.rid);
10642
_mem_save_rid_0 = NDR_PULL_GET_MEM_CTX(ndr);
10643
NDR_PULL_SET_MEM_CTX(ndr, r->out.rid, LIBNDR_FLAG_REF_ALLOC);
10644
NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, r->out.rid));
10645
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_rid_0, LIBNDR_FLAG_REF_ALLOC);
10646
NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
10648
return NDR_ERR_SUCCESS;
10651
_PUBLIC_ void ndr_print_samr_CreateUser2(struct ndr_print *ndr, const char *name, int flags, const struct samr_CreateUser2 *r)
10653
ndr_print_struct(ndr, name, "samr_CreateUser2");
10654
if (r == NULL) { ndr_print_null(ndr); return; }
10656
if (flags & NDR_SET_VALUES) {
10657
ndr->flags |= LIBNDR_PRINT_SET_VALUES;
10659
if (flags & NDR_IN) {
10660
ndr_print_struct(ndr, "in", "samr_CreateUser2");
10662
ndr_print_ptr(ndr, "domain_handle", r->in.domain_handle);
10664
ndr_print_policy_handle(ndr, "domain_handle", r->in.domain_handle);
10666
ndr_print_ptr(ndr, "account_name", r->in.account_name);
10668
ndr_print_lsa_String(ndr, "account_name", r->in.account_name);
10670
ndr_print_samr_AcctFlags(ndr, "acct_flags", r->in.acct_flags);
10671
ndr_print_samr_UserAccessMask(ndr, "access_mask", r->in.access_mask);
10674
if (flags & NDR_OUT) {
10675
ndr_print_struct(ndr, "out", "samr_CreateUser2");
10677
ndr_print_ptr(ndr, "user_handle", r->out.user_handle);
10679
ndr_print_policy_handle(ndr, "user_handle", r->out.user_handle);
10681
ndr_print_ptr(ndr, "access_granted", r->out.access_granted);
10683
ndr_print_uint32(ndr, "access_granted", *r->out.access_granted);
10685
ndr_print_ptr(ndr, "rid", r->out.rid);
10687
ndr_print_uint32(ndr, "rid", *r->out.rid);
10689
ndr_print_NTSTATUS(ndr, "result", r->out.result);
10695
static enum ndr_err_code ndr_push_samr_QueryDisplayInfo3(struct ndr_push *ndr, int flags, const struct samr_QueryDisplayInfo3 *r)
10697
if (flags & NDR_IN) {
10698
if (r->in.domain_handle == NULL) {
10699
return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
10701
NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS, r->in.domain_handle));
10702
NDR_CHECK(ndr_push_uint16(ndr, NDR_SCALARS, r->in.level));
10703
NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->in.start_idx));
10704
NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->in.max_entries));
10705
NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->in.buf_size));
10707
if (flags & NDR_OUT) {
10708
if (r->out.total_size == NULL) {
10709
return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
10711
NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, *r->out.total_size));
10712
if (r->out.returned_size == NULL) {
10713
return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
10715
NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, *r->out.returned_size));
10716
if (r->out.info == NULL) {
10717
return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
10719
NDR_CHECK(ndr_push_set_switch_value(ndr, r->out.info, r->in.level));
10720
NDR_CHECK(ndr_push_samr_DispInfo(ndr, NDR_SCALARS|NDR_BUFFERS, r->out.info));
10721
NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
10723
return NDR_ERR_SUCCESS;
10726
static enum ndr_err_code ndr_pull_samr_QueryDisplayInfo3(struct ndr_pull *ndr, int flags, struct samr_QueryDisplayInfo3 *r)
10728
TALLOC_CTX *_mem_save_domain_handle_0;
10729
TALLOC_CTX *_mem_save_total_size_0;
10730
TALLOC_CTX *_mem_save_returned_size_0;
10731
TALLOC_CTX *_mem_save_info_0;
10732
if (flags & NDR_IN) {
10733
ZERO_STRUCT(r->out);
10735
if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
10736
NDR_PULL_ALLOC(ndr, r->in.domain_handle);
10738
_mem_save_domain_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
10739
NDR_PULL_SET_MEM_CTX(ndr, r->in.domain_handle, LIBNDR_FLAG_REF_ALLOC);
10740
NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS, r->in.domain_handle));
10741
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_domain_handle_0, LIBNDR_FLAG_REF_ALLOC);
10742
NDR_CHECK(ndr_pull_uint16(ndr, NDR_SCALARS, &r->in.level));
10743
NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->in.start_idx));
10744
NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->in.max_entries));
10745
NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->in.buf_size));
10746
NDR_PULL_ALLOC(ndr, r->out.total_size);
10747
ZERO_STRUCTP(r->out.total_size);
10748
NDR_PULL_ALLOC(ndr, r->out.returned_size);
10749
ZERO_STRUCTP(r->out.returned_size);
10750
NDR_PULL_ALLOC(ndr, r->out.info);
10751
ZERO_STRUCTP(r->out.info);
10753
if (flags & NDR_OUT) {
10754
if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
10755
NDR_PULL_ALLOC(ndr, r->out.total_size);
10757
_mem_save_total_size_0 = NDR_PULL_GET_MEM_CTX(ndr);
10758
NDR_PULL_SET_MEM_CTX(ndr, r->out.total_size, LIBNDR_FLAG_REF_ALLOC);
10759
NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, r->out.total_size));
10760
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_total_size_0, LIBNDR_FLAG_REF_ALLOC);
10761
if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
10762
NDR_PULL_ALLOC(ndr, r->out.returned_size);
10764
_mem_save_returned_size_0 = NDR_PULL_GET_MEM_CTX(ndr);
10765
NDR_PULL_SET_MEM_CTX(ndr, r->out.returned_size, LIBNDR_FLAG_REF_ALLOC);
10766
NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, r->out.returned_size));
10767
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_returned_size_0, LIBNDR_FLAG_REF_ALLOC);
10768
if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
10769
NDR_PULL_ALLOC(ndr, r->out.info);
10771
_mem_save_info_0 = NDR_PULL_GET_MEM_CTX(ndr);
10772
NDR_PULL_SET_MEM_CTX(ndr, r->out.info, LIBNDR_FLAG_REF_ALLOC);
10773
NDR_CHECK(ndr_pull_set_switch_value(ndr, r->out.info, r->in.level));
10774
NDR_CHECK(ndr_pull_samr_DispInfo(ndr, NDR_SCALARS|NDR_BUFFERS, r->out.info));
10775
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_info_0, LIBNDR_FLAG_REF_ALLOC);
10776
NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
10778
return NDR_ERR_SUCCESS;
10781
_PUBLIC_ void ndr_print_samr_QueryDisplayInfo3(struct ndr_print *ndr, const char *name, int flags, const struct samr_QueryDisplayInfo3 *r)
10783
ndr_print_struct(ndr, name, "samr_QueryDisplayInfo3");
10784
if (r == NULL) { ndr_print_null(ndr); return; }
10786
if (flags & NDR_SET_VALUES) {
10787
ndr->flags |= LIBNDR_PRINT_SET_VALUES;
10789
if (flags & NDR_IN) {
10790
ndr_print_struct(ndr, "in", "samr_QueryDisplayInfo3");
10792
ndr_print_ptr(ndr, "domain_handle", r->in.domain_handle);
10794
ndr_print_policy_handle(ndr, "domain_handle", r->in.domain_handle);
10796
ndr_print_uint16(ndr, "level", r->in.level);
10797
ndr_print_uint32(ndr, "start_idx", r->in.start_idx);
10798
ndr_print_uint32(ndr, "max_entries", r->in.max_entries);
10799
ndr_print_uint32(ndr, "buf_size", r->in.buf_size);
10802
if (flags & NDR_OUT) {
10803
ndr_print_struct(ndr, "out", "samr_QueryDisplayInfo3");
10805
ndr_print_ptr(ndr, "total_size", r->out.total_size);
10807
ndr_print_uint32(ndr, "total_size", *r->out.total_size);
10809
ndr_print_ptr(ndr, "returned_size", r->out.returned_size);
10811
ndr_print_uint32(ndr, "returned_size", *r->out.returned_size);
10813
ndr_print_ptr(ndr, "info", r->out.info);
10815
ndr_print_set_switch_value(ndr, r->out.info, r->in.level);
10816
ndr_print_samr_DispInfo(ndr, "info", r->out.info);
10818
ndr_print_NTSTATUS(ndr, "result", r->out.result);
10824
static enum ndr_err_code ndr_push_samr_AddMultipleMembersToAlias(struct ndr_push *ndr, int flags, const struct samr_AddMultipleMembersToAlias *r)
10826
if (flags & NDR_IN) {
10827
if (r->in.alias_handle == NULL) {
10828
return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
10830
NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS, r->in.alias_handle));
10831
if (r->in.sids == NULL) {
10832
return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
10834
NDR_CHECK(ndr_push_lsa_SidArray(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.sids));
10836
if (flags & NDR_OUT) {
10837
NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
10839
return NDR_ERR_SUCCESS;
10842
static enum ndr_err_code ndr_pull_samr_AddMultipleMembersToAlias(struct ndr_pull *ndr, int flags, struct samr_AddMultipleMembersToAlias *r)
10844
TALLOC_CTX *_mem_save_alias_handle_0;
10845
TALLOC_CTX *_mem_save_sids_0;
10846
if (flags & NDR_IN) {
10847
if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
10848
NDR_PULL_ALLOC(ndr, r->in.alias_handle);
10850
_mem_save_alias_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
10851
NDR_PULL_SET_MEM_CTX(ndr, r->in.alias_handle, LIBNDR_FLAG_REF_ALLOC);
10852
NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS, r->in.alias_handle));
10853
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_alias_handle_0, LIBNDR_FLAG_REF_ALLOC);
10854
if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
10855
NDR_PULL_ALLOC(ndr, r->in.sids);
10857
_mem_save_sids_0 = NDR_PULL_GET_MEM_CTX(ndr);
10858
NDR_PULL_SET_MEM_CTX(ndr, r->in.sids, LIBNDR_FLAG_REF_ALLOC);
10859
NDR_CHECK(ndr_pull_lsa_SidArray(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.sids));
10860
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_sids_0, LIBNDR_FLAG_REF_ALLOC);
10862
if (flags & NDR_OUT) {
10863
NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
10865
return NDR_ERR_SUCCESS;
10868
_PUBLIC_ void ndr_print_samr_AddMultipleMembersToAlias(struct ndr_print *ndr, const char *name, int flags, const struct samr_AddMultipleMembersToAlias *r)
10870
ndr_print_struct(ndr, name, "samr_AddMultipleMembersToAlias");
10871
if (r == NULL) { ndr_print_null(ndr); return; }
10873
if (flags & NDR_SET_VALUES) {
10874
ndr->flags |= LIBNDR_PRINT_SET_VALUES;
10876
if (flags & NDR_IN) {
10877
ndr_print_struct(ndr, "in", "samr_AddMultipleMembersToAlias");
10879
ndr_print_ptr(ndr, "alias_handle", r->in.alias_handle);
10881
ndr_print_policy_handle(ndr, "alias_handle", r->in.alias_handle);
10883
ndr_print_ptr(ndr, "sids", r->in.sids);
10885
ndr_print_lsa_SidArray(ndr, "sids", r->in.sids);
10889
if (flags & NDR_OUT) {
10890
ndr_print_struct(ndr, "out", "samr_AddMultipleMembersToAlias");
10892
ndr_print_NTSTATUS(ndr, "result", r->out.result);
10898
static enum ndr_err_code ndr_push_samr_RemoveMultipleMembersFromAlias(struct ndr_push *ndr, int flags, const struct samr_RemoveMultipleMembersFromAlias *r)
10900
if (flags & NDR_IN) {
10901
if (r->in.alias_handle == NULL) {
10902
return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
10904
NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS, r->in.alias_handle));
10905
if (r->in.sids == NULL) {
10906
return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
10908
NDR_CHECK(ndr_push_lsa_SidArray(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.sids));
10910
if (flags & NDR_OUT) {
10911
NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
10913
return NDR_ERR_SUCCESS;
10916
static enum ndr_err_code ndr_pull_samr_RemoveMultipleMembersFromAlias(struct ndr_pull *ndr, int flags, struct samr_RemoveMultipleMembersFromAlias *r)
10918
TALLOC_CTX *_mem_save_alias_handle_0;
10919
TALLOC_CTX *_mem_save_sids_0;
10920
if (flags & NDR_IN) {
10921
if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
10922
NDR_PULL_ALLOC(ndr, r->in.alias_handle);
10924
_mem_save_alias_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
10925
NDR_PULL_SET_MEM_CTX(ndr, r->in.alias_handle, LIBNDR_FLAG_REF_ALLOC);
10926
NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS, r->in.alias_handle));
10927
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_alias_handle_0, LIBNDR_FLAG_REF_ALLOC);
10928
if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
10929
NDR_PULL_ALLOC(ndr, r->in.sids);
10931
_mem_save_sids_0 = NDR_PULL_GET_MEM_CTX(ndr);
10932
NDR_PULL_SET_MEM_CTX(ndr, r->in.sids, LIBNDR_FLAG_REF_ALLOC);
10933
NDR_CHECK(ndr_pull_lsa_SidArray(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.sids));
10934
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_sids_0, LIBNDR_FLAG_REF_ALLOC);
10936
if (flags & NDR_OUT) {
10937
NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
10939
return NDR_ERR_SUCCESS;
10942
_PUBLIC_ void ndr_print_samr_RemoveMultipleMembersFromAlias(struct ndr_print *ndr, const char *name, int flags, const struct samr_RemoveMultipleMembersFromAlias *r)
10944
ndr_print_struct(ndr, name, "samr_RemoveMultipleMembersFromAlias");
10945
if (r == NULL) { ndr_print_null(ndr); return; }
10947
if (flags & NDR_SET_VALUES) {
10948
ndr->flags |= LIBNDR_PRINT_SET_VALUES;
10950
if (flags & NDR_IN) {
10951
ndr_print_struct(ndr, "in", "samr_RemoveMultipleMembersFromAlias");
10953
ndr_print_ptr(ndr, "alias_handle", r->in.alias_handle);
10955
ndr_print_policy_handle(ndr, "alias_handle", r->in.alias_handle);
10957
ndr_print_ptr(ndr, "sids", r->in.sids);
10959
ndr_print_lsa_SidArray(ndr, "sids", r->in.sids);
10963
if (flags & NDR_OUT) {
10964
ndr_print_struct(ndr, "out", "samr_RemoveMultipleMembersFromAlias");
10966
ndr_print_NTSTATUS(ndr, "result", r->out.result);
10972
static enum ndr_err_code ndr_push_samr_OemChangePasswordUser2(struct ndr_push *ndr, int flags, const struct samr_OemChangePasswordUser2 *r)
10974
if (flags & NDR_IN) {
10975
NDR_CHECK(ndr_push_unique_ptr(ndr, r->in.server));
10976
if (r->in.server) {
10977
NDR_CHECK(ndr_push_lsa_AsciiString(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.server));
10979
if (r->in.account == NULL) {
10980
return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
10982
NDR_CHECK(ndr_push_lsa_AsciiString(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.account));
10983
NDR_CHECK(ndr_push_unique_ptr(ndr, r->in.password));
10984
if (r->in.password) {
10985
NDR_CHECK(ndr_push_samr_CryptPassword(ndr, NDR_SCALARS, r->in.password));
10987
NDR_CHECK(ndr_push_unique_ptr(ndr, r->in.hash));
10989
NDR_CHECK(ndr_push_samr_Password(ndr, NDR_SCALARS, r->in.hash));
10992
if (flags & NDR_OUT) {
10993
NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
10995
return NDR_ERR_SUCCESS;
10998
static enum ndr_err_code ndr_pull_samr_OemChangePasswordUser2(struct ndr_pull *ndr, int flags, struct samr_OemChangePasswordUser2 *r)
11000
uint32_t _ptr_server;
11001
uint32_t _ptr_password;
11002
uint32_t _ptr_hash;
11003
TALLOC_CTX *_mem_save_server_0;
11004
TALLOC_CTX *_mem_save_account_0;
11005
TALLOC_CTX *_mem_save_password_0;
11006
TALLOC_CTX *_mem_save_hash_0;
11007
if (flags & NDR_IN) {
11008
NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_server));
11010
NDR_PULL_ALLOC(ndr, r->in.server);
11012
r->in.server = NULL;
11014
if (r->in.server) {
11015
_mem_save_server_0 = NDR_PULL_GET_MEM_CTX(ndr);
11016
NDR_PULL_SET_MEM_CTX(ndr, r->in.server, 0);
11017
NDR_CHECK(ndr_pull_lsa_AsciiString(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.server));
11018
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_server_0, 0);
11020
if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
11021
NDR_PULL_ALLOC(ndr, r->in.account);
11023
_mem_save_account_0 = NDR_PULL_GET_MEM_CTX(ndr);
11024
NDR_PULL_SET_MEM_CTX(ndr, r->in.account, LIBNDR_FLAG_REF_ALLOC);
11025
NDR_CHECK(ndr_pull_lsa_AsciiString(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.account));
11026
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_account_0, LIBNDR_FLAG_REF_ALLOC);
11027
NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_password));
11028
if (_ptr_password) {
11029
NDR_PULL_ALLOC(ndr, r->in.password);
11031
r->in.password = NULL;
11033
if (r->in.password) {
11034
_mem_save_password_0 = NDR_PULL_GET_MEM_CTX(ndr);
11035
NDR_PULL_SET_MEM_CTX(ndr, r->in.password, 0);
11036
NDR_CHECK(ndr_pull_samr_CryptPassword(ndr, NDR_SCALARS, r->in.password));
11037
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_password_0, 0);
11039
NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_hash));
11041
NDR_PULL_ALLOC(ndr, r->in.hash);
11046
_mem_save_hash_0 = NDR_PULL_GET_MEM_CTX(ndr);
11047
NDR_PULL_SET_MEM_CTX(ndr, r->in.hash, 0);
11048
NDR_CHECK(ndr_pull_samr_Password(ndr, NDR_SCALARS, r->in.hash));
11049
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_hash_0, 0);
11052
if (flags & NDR_OUT) {
11053
NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
11055
return NDR_ERR_SUCCESS;
11058
_PUBLIC_ void ndr_print_samr_OemChangePasswordUser2(struct ndr_print *ndr, const char *name, int flags, const struct samr_OemChangePasswordUser2 *r)
11060
ndr_print_struct(ndr, name, "samr_OemChangePasswordUser2");
11061
if (r == NULL) { ndr_print_null(ndr); return; }
11063
if (flags & NDR_SET_VALUES) {
11064
ndr->flags |= LIBNDR_PRINT_SET_VALUES;
11066
if (flags & NDR_IN) {
11067
ndr_print_struct(ndr, "in", "samr_OemChangePasswordUser2");
11069
ndr_print_ptr(ndr, "server", r->in.server);
11071
if (r->in.server) {
11072
ndr_print_lsa_AsciiString(ndr, "server", r->in.server);
11075
ndr_print_ptr(ndr, "account", r->in.account);
11077
ndr_print_lsa_AsciiString(ndr, "account", r->in.account);
11079
ndr_print_ptr(ndr, "password", r->in.password);
11081
if (r->in.password) {
11082
ndr_print_samr_CryptPassword(ndr, "password", r->in.password);
11085
ndr_print_ptr(ndr, "hash", r->in.hash);
11088
ndr_print_samr_Password(ndr, "hash", r->in.hash);
11093
if (flags & NDR_OUT) {
11094
ndr_print_struct(ndr, "out", "samr_OemChangePasswordUser2");
11096
ndr_print_NTSTATUS(ndr, "result", r->out.result);
11102
static enum ndr_err_code ndr_push_samr_ChangePasswordUser2(struct ndr_push *ndr, int flags, const struct samr_ChangePasswordUser2 *r)
11104
if (flags & NDR_IN) {
11105
NDR_CHECK(ndr_push_unique_ptr(ndr, r->in.server));
11106
if (r->in.server) {
11107
NDR_CHECK(ndr_push_lsa_String(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.server));
11109
if (r->in.account == NULL) {
11110
return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
11112
NDR_CHECK(ndr_push_lsa_String(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.account));
11113
NDR_CHECK(ndr_push_unique_ptr(ndr, r->in.nt_password));
11114
if (r->in.nt_password) {
11115
NDR_CHECK(ndr_push_samr_CryptPassword(ndr, NDR_SCALARS, r->in.nt_password));
11117
NDR_CHECK(ndr_push_unique_ptr(ndr, r->in.nt_verifier));
11118
if (r->in.nt_verifier) {
11119
NDR_CHECK(ndr_push_samr_Password(ndr, NDR_SCALARS, r->in.nt_verifier));
11121
NDR_CHECK(ndr_push_uint8(ndr, NDR_SCALARS, r->in.lm_change));
11122
NDR_CHECK(ndr_push_unique_ptr(ndr, r->in.lm_password));
11123
if (r->in.lm_password) {
11124
NDR_CHECK(ndr_push_samr_CryptPassword(ndr, NDR_SCALARS, r->in.lm_password));
11126
NDR_CHECK(ndr_push_unique_ptr(ndr, r->in.lm_verifier));
11127
if (r->in.lm_verifier) {
11128
NDR_CHECK(ndr_push_samr_Password(ndr, NDR_SCALARS, r->in.lm_verifier));
11131
if (flags & NDR_OUT) {
11132
NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
11134
return NDR_ERR_SUCCESS;
11137
static enum ndr_err_code ndr_pull_samr_ChangePasswordUser2(struct ndr_pull *ndr, int flags, struct samr_ChangePasswordUser2 *r)
11139
uint32_t _ptr_server;
11140
uint32_t _ptr_nt_password;
11141
uint32_t _ptr_nt_verifier;
11142
uint32_t _ptr_lm_password;
11143
uint32_t _ptr_lm_verifier;
11144
TALLOC_CTX *_mem_save_server_0;
11145
TALLOC_CTX *_mem_save_account_0;
11146
TALLOC_CTX *_mem_save_nt_password_0;
11147
TALLOC_CTX *_mem_save_nt_verifier_0;
11148
TALLOC_CTX *_mem_save_lm_password_0;
11149
TALLOC_CTX *_mem_save_lm_verifier_0;
11150
if (flags & NDR_IN) {
11151
NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_server));
11153
NDR_PULL_ALLOC(ndr, r->in.server);
11155
r->in.server = NULL;
11157
if (r->in.server) {
11158
_mem_save_server_0 = NDR_PULL_GET_MEM_CTX(ndr);
11159
NDR_PULL_SET_MEM_CTX(ndr, r->in.server, 0);
11160
NDR_CHECK(ndr_pull_lsa_String(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.server));
11161
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_server_0, 0);
11163
if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
11164
NDR_PULL_ALLOC(ndr, r->in.account);
11166
_mem_save_account_0 = NDR_PULL_GET_MEM_CTX(ndr);
11167
NDR_PULL_SET_MEM_CTX(ndr, r->in.account, LIBNDR_FLAG_REF_ALLOC);
11168
NDR_CHECK(ndr_pull_lsa_String(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.account));
11169
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_account_0, LIBNDR_FLAG_REF_ALLOC);
11170
NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_nt_password));
11171
if (_ptr_nt_password) {
11172
NDR_PULL_ALLOC(ndr, r->in.nt_password);
11174
r->in.nt_password = NULL;
11176
if (r->in.nt_password) {
11177
_mem_save_nt_password_0 = NDR_PULL_GET_MEM_CTX(ndr);
11178
NDR_PULL_SET_MEM_CTX(ndr, r->in.nt_password, 0);
11179
NDR_CHECK(ndr_pull_samr_CryptPassword(ndr, NDR_SCALARS, r->in.nt_password));
11180
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_nt_password_0, 0);
11182
NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_nt_verifier));
11183
if (_ptr_nt_verifier) {
11184
NDR_PULL_ALLOC(ndr, r->in.nt_verifier);
11186
r->in.nt_verifier = NULL;
11188
if (r->in.nt_verifier) {
11189
_mem_save_nt_verifier_0 = NDR_PULL_GET_MEM_CTX(ndr);
11190
NDR_PULL_SET_MEM_CTX(ndr, r->in.nt_verifier, 0);
11191
NDR_CHECK(ndr_pull_samr_Password(ndr, NDR_SCALARS, r->in.nt_verifier));
11192
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_nt_verifier_0, 0);
11194
NDR_CHECK(ndr_pull_uint8(ndr, NDR_SCALARS, &r->in.lm_change));
11195
NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_lm_password));
11196
if (_ptr_lm_password) {
11197
NDR_PULL_ALLOC(ndr, r->in.lm_password);
11199
r->in.lm_password = NULL;
11201
if (r->in.lm_password) {
11202
_mem_save_lm_password_0 = NDR_PULL_GET_MEM_CTX(ndr);
11203
NDR_PULL_SET_MEM_CTX(ndr, r->in.lm_password, 0);
11204
NDR_CHECK(ndr_pull_samr_CryptPassword(ndr, NDR_SCALARS, r->in.lm_password));
11205
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_lm_password_0, 0);
11207
NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_lm_verifier));
11208
if (_ptr_lm_verifier) {
11209
NDR_PULL_ALLOC(ndr, r->in.lm_verifier);
11211
r->in.lm_verifier = NULL;
11213
if (r->in.lm_verifier) {
11214
_mem_save_lm_verifier_0 = NDR_PULL_GET_MEM_CTX(ndr);
11215
NDR_PULL_SET_MEM_CTX(ndr, r->in.lm_verifier, 0);
11216
NDR_CHECK(ndr_pull_samr_Password(ndr, NDR_SCALARS, r->in.lm_verifier));
11217
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_lm_verifier_0, 0);
11220
if (flags & NDR_OUT) {
11221
NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
11223
return NDR_ERR_SUCCESS;
11226
_PUBLIC_ void ndr_print_samr_ChangePasswordUser2(struct ndr_print *ndr, const char *name, int flags, const struct samr_ChangePasswordUser2 *r)
11228
ndr_print_struct(ndr, name, "samr_ChangePasswordUser2");
11229
if (r == NULL) { ndr_print_null(ndr); return; }
11231
if (flags & NDR_SET_VALUES) {
11232
ndr->flags |= LIBNDR_PRINT_SET_VALUES;
11234
if (flags & NDR_IN) {
11235
ndr_print_struct(ndr, "in", "samr_ChangePasswordUser2");
11237
ndr_print_ptr(ndr, "server", r->in.server);
11239
if (r->in.server) {
11240
ndr_print_lsa_String(ndr, "server", r->in.server);
11243
ndr_print_ptr(ndr, "account", r->in.account);
11245
ndr_print_lsa_String(ndr, "account", r->in.account);
11247
ndr_print_ptr(ndr, "nt_password", r->in.nt_password);
11249
if (r->in.nt_password) {
11250
ndr_print_samr_CryptPassword(ndr, "nt_password", r->in.nt_password);
11253
ndr_print_ptr(ndr, "nt_verifier", r->in.nt_verifier);
11255
if (r->in.nt_verifier) {
11256
ndr_print_samr_Password(ndr, "nt_verifier", r->in.nt_verifier);
11259
ndr_print_uint8(ndr, "lm_change", r->in.lm_change);
11260
ndr_print_ptr(ndr, "lm_password", r->in.lm_password);
11262
if (r->in.lm_password) {
11263
ndr_print_samr_CryptPassword(ndr, "lm_password", r->in.lm_password);
11266
ndr_print_ptr(ndr, "lm_verifier", r->in.lm_verifier);
11268
if (r->in.lm_verifier) {
11269
ndr_print_samr_Password(ndr, "lm_verifier", r->in.lm_verifier);
11274
if (flags & NDR_OUT) {
11275
ndr_print_struct(ndr, "out", "samr_ChangePasswordUser2");
11277
ndr_print_NTSTATUS(ndr, "result", r->out.result);
11283
static enum ndr_err_code ndr_push_samr_GetDomPwInfo(struct ndr_push *ndr, int flags, const struct samr_GetDomPwInfo *r)
11285
if (flags & NDR_IN) {
11286
NDR_CHECK(ndr_push_unique_ptr(ndr, r->in.domain_name));
11287
if (r->in.domain_name) {
11288
NDR_CHECK(ndr_push_lsa_String(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.domain_name));
11291
if (flags & NDR_OUT) {
11292
if (r->out.info == NULL) {
11293
return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
11295
NDR_CHECK(ndr_push_samr_PwInfo(ndr, NDR_SCALARS, r->out.info));
11296
NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
11298
return NDR_ERR_SUCCESS;
11301
static enum ndr_err_code ndr_pull_samr_GetDomPwInfo(struct ndr_pull *ndr, int flags, struct samr_GetDomPwInfo *r)
11303
uint32_t _ptr_domain_name;
11304
TALLOC_CTX *_mem_save_domain_name_0;
11305
TALLOC_CTX *_mem_save_info_0;
11306
if (flags & NDR_IN) {
11307
ZERO_STRUCT(r->out);
11309
NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_domain_name));
11310
if (_ptr_domain_name) {
11311
NDR_PULL_ALLOC(ndr, r->in.domain_name);
11313
r->in.domain_name = NULL;
11315
if (r->in.domain_name) {
11316
_mem_save_domain_name_0 = NDR_PULL_GET_MEM_CTX(ndr);
11317
NDR_PULL_SET_MEM_CTX(ndr, r->in.domain_name, 0);
11318
NDR_CHECK(ndr_pull_lsa_String(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.domain_name));
11319
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_domain_name_0, 0);
11321
NDR_PULL_ALLOC(ndr, r->out.info);
11322
ZERO_STRUCTP(r->out.info);
11324
if (flags & NDR_OUT) {
11325
if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
11326
NDR_PULL_ALLOC(ndr, r->out.info);
11328
_mem_save_info_0 = NDR_PULL_GET_MEM_CTX(ndr);
11329
NDR_PULL_SET_MEM_CTX(ndr, r->out.info, LIBNDR_FLAG_REF_ALLOC);
11330
NDR_CHECK(ndr_pull_samr_PwInfo(ndr, NDR_SCALARS, r->out.info));
11331
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_info_0, LIBNDR_FLAG_REF_ALLOC);
11332
NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
11334
return NDR_ERR_SUCCESS;
11337
_PUBLIC_ void ndr_print_samr_GetDomPwInfo(struct ndr_print *ndr, const char *name, int flags, const struct samr_GetDomPwInfo *r)
11339
ndr_print_struct(ndr, name, "samr_GetDomPwInfo");
11340
if (r == NULL) { ndr_print_null(ndr); return; }
11342
if (flags & NDR_SET_VALUES) {
11343
ndr->flags |= LIBNDR_PRINT_SET_VALUES;
11345
if (flags & NDR_IN) {
11346
ndr_print_struct(ndr, "in", "samr_GetDomPwInfo");
11348
ndr_print_ptr(ndr, "domain_name", r->in.domain_name);
11350
if (r->in.domain_name) {
11351
ndr_print_lsa_String(ndr, "domain_name", r->in.domain_name);
11356
if (flags & NDR_OUT) {
11357
ndr_print_struct(ndr, "out", "samr_GetDomPwInfo");
11359
ndr_print_ptr(ndr, "info", r->out.info);
11361
ndr_print_samr_PwInfo(ndr, "info", r->out.info);
11363
ndr_print_NTSTATUS(ndr, "result", r->out.result);
11369
static enum ndr_err_code ndr_push_samr_Connect2(struct ndr_push *ndr, int flags, const struct samr_Connect2 *r)
11371
if (flags & NDR_IN) {
11372
NDR_CHECK(ndr_push_unique_ptr(ndr, r->in.system_name));
11373
if (r->in.system_name) {
11374
NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, ndr_charset_length(r->in.system_name, CH_UTF16)));
11375
NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, 0));
11376
NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, ndr_charset_length(r->in.system_name, CH_UTF16)));
11377
NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->in.system_name, ndr_charset_length(r->in.system_name, CH_UTF16), sizeof(uint16_t), CH_UTF16));
11379
NDR_CHECK(ndr_push_samr_ConnectAccessMask(ndr, NDR_SCALARS, r->in.access_mask));
11381
if (flags & NDR_OUT) {
11382
if (r->out.connect_handle == NULL) {
11383
return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
11385
NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS, r->out.connect_handle));
11386
NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
11388
return NDR_ERR_SUCCESS;
11391
static enum ndr_err_code ndr_pull_samr_Connect2(struct ndr_pull *ndr, int flags, struct samr_Connect2 *r)
11393
uint32_t _ptr_system_name;
11394
TALLOC_CTX *_mem_save_system_name_0;
11395
TALLOC_CTX *_mem_save_connect_handle_0;
11396
if (flags & NDR_IN) {
11397
ZERO_STRUCT(r->out);
11399
NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_system_name));
11400
if (_ptr_system_name) {
11401
NDR_PULL_ALLOC(ndr, r->in.system_name);
11403
r->in.system_name = NULL;
11405
if (r->in.system_name) {
11406
_mem_save_system_name_0 = NDR_PULL_GET_MEM_CTX(ndr);
11407
NDR_PULL_SET_MEM_CTX(ndr, r->in.system_name, 0);
11408
NDR_CHECK(ndr_pull_array_size(ndr, &r->in.system_name));
11409
NDR_CHECK(ndr_pull_array_length(ndr, &r->in.system_name));
11410
if (ndr_get_array_length(ndr, &r->in.system_name) > ndr_get_array_size(ndr, &r->in.system_name)) {
11411
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.system_name), ndr_get_array_length(ndr, &r->in.system_name));
11413
NDR_CHECK(ndr_check_string_terminator(ndr, ndr_get_array_length(ndr, &r->in.system_name), sizeof(uint16_t)));
11414
NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->in.system_name, ndr_get_array_length(ndr, &r->in.system_name), sizeof(uint16_t), CH_UTF16));
11415
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_system_name_0, 0);
11417
NDR_CHECK(ndr_pull_samr_ConnectAccessMask(ndr, NDR_SCALARS, &r->in.access_mask));
11418
NDR_PULL_ALLOC(ndr, r->out.connect_handle);
11419
ZERO_STRUCTP(r->out.connect_handle);
11421
if (flags & NDR_OUT) {
11422
if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
11423
NDR_PULL_ALLOC(ndr, r->out.connect_handle);
11425
_mem_save_connect_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
11426
NDR_PULL_SET_MEM_CTX(ndr, r->out.connect_handle, LIBNDR_FLAG_REF_ALLOC);
11427
NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS, r->out.connect_handle));
11428
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_connect_handle_0, LIBNDR_FLAG_REF_ALLOC);
11429
NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
11431
return NDR_ERR_SUCCESS;
11434
_PUBLIC_ void ndr_print_samr_Connect2(struct ndr_print *ndr, const char *name, int flags, const struct samr_Connect2 *r)
11436
ndr_print_struct(ndr, name, "samr_Connect2");
11437
if (r == NULL) { ndr_print_null(ndr); return; }
11439
if (flags & NDR_SET_VALUES) {
11440
ndr->flags |= LIBNDR_PRINT_SET_VALUES;
11442
if (flags & NDR_IN) {
11443
ndr_print_struct(ndr, "in", "samr_Connect2");
11445
ndr_print_ptr(ndr, "system_name", r->in.system_name);
11447
if (r->in.system_name) {
11448
ndr_print_string(ndr, "system_name", r->in.system_name);
11451
ndr_print_samr_ConnectAccessMask(ndr, "access_mask", r->in.access_mask);
11454
if (flags & NDR_OUT) {
11455
ndr_print_struct(ndr, "out", "samr_Connect2");
11457
ndr_print_ptr(ndr, "connect_handle", r->out.connect_handle);
11459
ndr_print_policy_handle(ndr, "connect_handle", r->out.connect_handle);
11461
ndr_print_NTSTATUS(ndr, "result", r->out.result);
11467
_PUBLIC_ enum ndr_err_code ndr_push_samr_SetUserInfo2(struct ndr_push *ndr, int flags, const struct samr_SetUserInfo2 *r)
11469
if (flags & NDR_IN) {
11470
if (r->in.user_handle == NULL) {
11471
return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
11473
NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS, r->in.user_handle));
11474
NDR_CHECK(ndr_push_samr_UserInfoLevel(ndr, NDR_SCALARS, r->in.level));
11475
if (r->in.info == NULL) {
11476
return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
11478
NDR_CHECK(ndr_push_set_switch_value(ndr, r->in.info, r->in.level));
11479
NDR_CHECK(ndr_push_samr_UserInfo(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.info));
11481
if (flags & NDR_OUT) {
11482
NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
11484
return NDR_ERR_SUCCESS;
11487
_PUBLIC_ enum ndr_err_code ndr_pull_samr_SetUserInfo2(struct ndr_pull *ndr, int flags, struct samr_SetUserInfo2 *r)
11489
TALLOC_CTX *_mem_save_user_handle_0;
11490
TALLOC_CTX *_mem_save_info_0;
11491
if (flags & NDR_IN) {
11492
if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
11493
NDR_PULL_ALLOC(ndr, r->in.user_handle);
11495
_mem_save_user_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
11496
NDR_PULL_SET_MEM_CTX(ndr, r->in.user_handle, LIBNDR_FLAG_REF_ALLOC);
11497
NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS, r->in.user_handle));
11498
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_user_handle_0, LIBNDR_FLAG_REF_ALLOC);
11499
NDR_CHECK(ndr_pull_samr_UserInfoLevel(ndr, NDR_SCALARS, &r->in.level));
11500
if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
11501
NDR_PULL_ALLOC(ndr, r->in.info);
11503
_mem_save_info_0 = NDR_PULL_GET_MEM_CTX(ndr);
11504
NDR_PULL_SET_MEM_CTX(ndr, r->in.info, LIBNDR_FLAG_REF_ALLOC);
11505
NDR_CHECK(ndr_pull_set_switch_value(ndr, r->in.info, r->in.level));
11506
NDR_CHECK(ndr_pull_samr_UserInfo(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.info));
11507
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_info_0, LIBNDR_FLAG_REF_ALLOC);
11509
if (flags & NDR_OUT) {
11510
NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
11512
return NDR_ERR_SUCCESS;
11515
_PUBLIC_ void ndr_print_samr_SetUserInfo2(struct ndr_print *ndr, const char *name, int flags, const struct samr_SetUserInfo2 *r)
11517
ndr_print_struct(ndr, name, "samr_SetUserInfo2");
11518
if (r == NULL) { ndr_print_null(ndr); return; }
11520
if (flags & NDR_SET_VALUES) {
11521
ndr->flags |= LIBNDR_PRINT_SET_VALUES;
11523
if (flags & NDR_IN) {
11524
ndr_print_struct(ndr, "in", "samr_SetUserInfo2");
11526
ndr_print_ptr(ndr, "user_handle", r->in.user_handle);
11528
ndr_print_policy_handle(ndr, "user_handle", r->in.user_handle);
11530
ndr_print_samr_UserInfoLevel(ndr, "level", r->in.level);
11531
ndr_print_ptr(ndr, "info", r->in.info);
11533
ndr_print_set_switch_value(ndr, r->in.info, r->in.level);
11534
ndr_print_samr_UserInfo(ndr, "info", r->in.info);
11538
if (flags & NDR_OUT) {
11539
ndr_print_struct(ndr, "out", "samr_SetUserInfo2");
11541
ndr_print_NTSTATUS(ndr, "result", r->out.result);
11547
static enum ndr_err_code ndr_push_samr_SetBootKeyInformation(struct ndr_push *ndr, int flags, const struct samr_SetBootKeyInformation *r)
11549
if (flags & NDR_IN) {
11550
if (r->in.connect_handle == NULL) {
11551
return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
11553
NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS, r->in.connect_handle));
11554
NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->in.unknown1));
11555
NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->in.unknown2));
11556
NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->in.unknown3));
11558
if (flags & NDR_OUT) {
11559
NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
11561
return NDR_ERR_SUCCESS;
11564
static enum ndr_err_code ndr_pull_samr_SetBootKeyInformation(struct ndr_pull *ndr, int flags, struct samr_SetBootKeyInformation *r)
11566
TALLOC_CTX *_mem_save_connect_handle_0;
11567
if (flags & NDR_IN) {
11568
if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
11569
NDR_PULL_ALLOC(ndr, r->in.connect_handle);
11571
_mem_save_connect_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
11572
NDR_PULL_SET_MEM_CTX(ndr, r->in.connect_handle, LIBNDR_FLAG_REF_ALLOC);
11573
NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS, r->in.connect_handle));
11574
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_connect_handle_0, LIBNDR_FLAG_REF_ALLOC);
11575
NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->in.unknown1));
11576
NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->in.unknown2));
11577
NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->in.unknown3));
11579
if (flags & NDR_OUT) {
11580
NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
11582
return NDR_ERR_SUCCESS;
11585
_PUBLIC_ void ndr_print_samr_SetBootKeyInformation(struct ndr_print *ndr, const char *name, int flags, const struct samr_SetBootKeyInformation *r)
11587
ndr_print_struct(ndr, name, "samr_SetBootKeyInformation");
11588
if (r == NULL) { ndr_print_null(ndr); return; }
11590
if (flags & NDR_SET_VALUES) {
11591
ndr->flags |= LIBNDR_PRINT_SET_VALUES;
11593
if (flags & NDR_IN) {
11594
ndr_print_struct(ndr, "in", "samr_SetBootKeyInformation");
11596
ndr_print_ptr(ndr, "connect_handle", r->in.connect_handle);
11598
ndr_print_policy_handle(ndr, "connect_handle", r->in.connect_handle);
11600
ndr_print_uint32(ndr, "unknown1", r->in.unknown1);
11601
ndr_print_uint32(ndr, "unknown2", r->in.unknown2);
11602
ndr_print_uint32(ndr, "unknown3", r->in.unknown3);
11605
if (flags & NDR_OUT) {
11606
ndr_print_struct(ndr, "out", "samr_SetBootKeyInformation");
11608
ndr_print_NTSTATUS(ndr, "result", r->out.result);
11614
static enum ndr_err_code ndr_push_samr_GetBootKeyInformation(struct ndr_push *ndr, int flags, const struct samr_GetBootKeyInformation *r)
11616
if (flags & NDR_IN) {
11617
if (r->in.domain_handle == NULL) {
11618
return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
11620
NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS, r->in.domain_handle));
11622
if (flags & NDR_OUT) {
11623
if (r->out.unknown == NULL) {
11624
return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
11626
NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, *r->out.unknown));
11627
NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
11629
return NDR_ERR_SUCCESS;
11632
static enum ndr_err_code ndr_pull_samr_GetBootKeyInformation(struct ndr_pull *ndr, int flags, struct samr_GetBootKeyInformation *r)
11634
TALLOC_CTX *_mem_save_domain_handle_0;
11635
TALLOC_CTX *_mem_save_unknown_0;
11636
if (flags & NDR_IN) {
11637
ZERO_STRUCT(r->out);
11639
if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
11640
NDR_PULL_ALLOC(ndr, r->in.domain_handle);
11642
_mem_save_domain_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
11643
NDR_PULL_SET_MEM_CTX(ndr, r->in.domain_handle, LIBNDR_FLAG_REF_ALLOC);
11644
NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS, r->in.domain_handle));
11645
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_domain_handle_0, LIBNDR_FLAG_REF_ALLOC);
11646
NDR_PULL_ALLOC(ndr, r->out.unknown);
11647
ZERO_STRUCTP(r->out.unknown);
11649
if (flags & NDR_OUT) {
11650
if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
11651
NDR_PULL_ALLOC(ndr, r->out.unknown);
11653
_mem_save_unknown_0 = NDR_PULL_GET_MEM_CTX(ndr);
11654
NDR_PULL_SET_MEM_CTX(ndr, r->out.unknown, LIBNDR_FLAG_REF_ALLOC);
11655
NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, r->out.unknown));
11656
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_unknown_0, LIBNDR_FLAG_REF_ALLOC);
11657
NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
11659
return NDR_ERR_SUCCESS;
11662
_PUBLIC_ void ndr_print_samr_GetBootKeyInformation(struct ndr_print *ndr, const char *name, int flags, const struct samr_GetBootKeyInformation *r)
11664
ndr_print_struct(ndr, name, "samr_GetBootKeyInformation");
11665
if (r == NULL) { ndr_print_null(ndr); return; }
11667
if (flags & NDR_SET_VALUES) {
11668
ndr->flags |= LIBNDR_PRINT_SET_VALUES;
11670
if (flags & NDR_IN) {
11671
ndr_print_struct(ndr, "in", "samr_GetBootKeyInformation");
11673
ndr_print_ptr(ndr, "domain_handle", r->in.domain_handle);
11675
ndr_print_policy_handle(ndr, "domain_handle", r->in.domain_handle);
11679
if (flags & NDR_OUT) {
11680
ndr_print_struct(ndr, "out", "samr_GetBootKeyInformation");
11682
ndr_print_ptr(ndr, "unknown", r->out.unknown);
11684
ndr_print_uint32(ndr, "unknown", *r->out.unknown);
11686
ndr_print_NTSTATUS(ndr, "result", r->out.result);
11692
static enum ndr_err_code ndr_push_samr_Connect3(struct ndr_push *ndr, int flags, const struct samr_Connect3 *r)
11694
if (flags & NDR_IN) {
11695
NDR_CHECK(ndr_push_unique_ptr(ndr, r->in.system_name));
11696
if (r->in.system_name) {
11697
NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, ndr_charset_length(r->in.system_name, CH_UTF16)));
11698
NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, 0));
11699
NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, ndr_charset_length(r->in.system_name, CH_UTF16)));
11700
NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->in.system_name, ndr_charset_length(r->in.system_name, CH_UTF16), sizeof(uint16_t), CH_UTF16));
11702
NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->in.unknown));
11703
NDR_CHECK(ndr_push_samr_ConnectAccessMask(ndr, NDR_SCALARS, r->in.access_mask));
11705
if (flags & NDR_OUT) {
11706
if (r->out.connect_handle == NULL) {
11707
return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
11709
NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS, r->out.connect_handle));
11710
NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
11712
return NDR_ERR_SUCCESS;
11715
static enum ndr_err_code ndr_pull_samr_Connect3(struct ndr_pull *ndr, int flags, struct samr_Connect3 *r)
11717
uint32_t _ptr_system_name;
11718
TALLOC_CTX *_mem_save_system_name_0;
11719
TALLOC_CTX *_mem_save_connect_handle_0;
11720
if (flags & NDR_IN) {
11721
ZERO_STRUCT(r->out);
11723
NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_system_name));
11724
if (_ptr_system_name) {
11725
NDR_PULL_ALLOC(ndr, r->in.system_name);
11727
r->in.system_name = NULL;
11729
if (r->in.system_name) {
11730
_mem_save_system_name_0 = NDR_PULL_GET_MEM_CTX(ndr);
11731
NDR_PULL_SET_MEM_CTX(ndr, r->in.system_name, 0);
11732
NDR_CHECK(ndr_pull_array_size(ndr, &r->in.system_name));
11733
NDR_CHECK(ndr_pull_array_length(ndr, &r->in.system_name));
11734
if (ndr_get_array_length(ndr, &r->in.system_name) > ndr_get_array_size(ndr, &r->in.system_name)) {
11735
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.system_name), ndr_get_array_length(ndr, &r->in.system_name));
11737
NDR_CHECK(ndr_check_string_terminator(ndr, ndr_get_array_length(ndr, &r->in.system_name), sizeof(uint16_t)));
11738
NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->in.system_name, ndr_get_array_length(ndr, &r->in.system_name), sizeof(uint16_t), CH_UTF16));
11739
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_system_name_0, 0);
11741
NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->in.unknown));
11742
NDR_CHECK(ndr_pull_samr_ConnectAccessMask(ndr, NDR_SCALARS, &r->in.access_mask));
11743
NDR_PULL_ALLOC(ndr, r->out.connect_handle);
11744
ZERO_STRUCTP(r->out.connect_handle);
11746
if (flags & NDR_OUT) {
11747
if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
11748
NDR_PULL_ALLOC(ndr, r->out.connect_handle);
11750
_mem_save_connect_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
11751
NDR_PULL_SET_MEM_CTX(ndr, r->out.connect_handle, LIBNDR_FLAG_REF_ALLOC);
11752
NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS, r->out.connect_handle));
11753
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_connect_handle_0, LIBNDR_FLAG_REF_ALLOC);
11754
NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
11756
return NDR_ERR_SUCCESS;
11759
_PUBLIC_ void ndr_print_samr_Connect3(struct ndr_print *ndr, const char *name, int flags, const struct samr_Connect3 *r)
11761
ndr_print_struct(ndr, name, "samr_Connect3");
11762
if (r == NULL) { ndr_print_null(ndr); return; }
11764
if (flags & NDR_SET_VALUES) {
11765
ndr->flags |= LIBNDR_PRINT_SET_VALUES;
11767
if (flags & NDR_IN) {
11768
ndr_print_struct(ndr, "in", "samr_Connect3");
11770
ndr_print_ptr(ndr, "system_name", r->in.system_name);
11772
if (r->in.system_name) {
11773
ndr_print_string(ndr, "system_name", r->in.system_name);
11776
ndr_print_uint32(ndr, "unknown", r->in.unknown);
11777
ndr_print_samr_ConnectAccessMask(ndr, "access_mask", r->in.access_mask);
11780
if (flags & NDR_OUT) {
11781
ndr_print_struct(ndr, "out", "samr_Connect3");
11783
ndr_print_ptr(ndr, "connect_handle", r->out.connect_handle);
11785
ndr_print_policy_handle(ndr, "connect_handle", r->out.connect_handle);
11787
ndr_print_NTSTATUS(ndr, "result", r->out.result);
11793
static enum ndr_err_code ndr_push_samr_Connect4(struct ndr_push *ndr, int flags, const struct samr_Connect4 *r)
11795
if (flags & NDR_IN) {
11796
NDR_CHECK(ndr_push_unique_ptr(ndr, r->in.system_name));
11797
if (r->in.system_name) {
11798
NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, ndr_charset_length(r->in.system_name, CH_UTF16)));
11799
NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, 0));
11800
NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, ndr_charset_length(r->in.system_name, CH_UTF16)));
11801
NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->in.system_name, ndr_charset_length(r->in.system_name, CH_UTF16), sizeof(uint16_t), CH_UTF16));
11803
NDR_CHECK(ndr_push_samr_ConnectVersion(ndr, NDR_SCALARS, r->in.client_version));
11804
NDR_CHECK(ndr_push_samr_ConnectAccessMask(ndr, NDR_SCALARS, r->in.access_mask));
11806
if (flags & NDR_OUT) {
11807
if (r->out.connect_handle == NULL) {
11808
return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
11810
NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS, r->out.connect_handle));
11811
NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
11813
return NDR_ERR_SUCCESS;
11816
static enum ndr_err_code ndr_pull_samr_Connect4(struct ndr_pull *ndr, int flags, struct samr_Connect4 *r)
11818
uint32_t _ptr_system_name;
11819
TALLOC_CTX *_mem_save_system_name_0;
11820
TALLOC_CTX *_mem_save_connect_handle_0;
11821
if (flags & NDR_IN) {
11822
ZERO_STRUCT(r->out);
11824
NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_system_name));
11825
if (_ptr_system_name) {
11826
NDR_PULL_ALLOC(ndr, r->in.system_name);
11828
r->in.system_name = NULL;
11830
if (r->in.system_name) {
11831
_mem_save_system_name_0 = NDR_PULL_GET_MEM_CTX(ndr);
11832
NDR_PULL_SET_MEM_CTX(ndr, r->in.system_name, 0);
11833
NDR_CHECK(ndr_pull_array_size(ndr, &r->in.system_name));
11834
NDR_CHECK(ndr_pull_array_length(ndr, &r->in.system_name));
11835
if (ndr_get_array_length(ndr, &r->in.system_name) > ndr_get_array_size(ndr, &r->in.system_name)) {
11836
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.system_name), ndr_get_array_length(ndr, &r->in.system_name));
11838
NDR_CHECK(ndr_check_string_terminator(ndr, ndr_get_array_length(ndr, &r->in.system_name), sizeof(uint16_t)));
11839
NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->in.system_name, ndr_get_array_length(ndr, &r->in.system_name), sizeof(uint16_t), CH_UTF16));
11840
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_system_name_0, 0);
11842
NDR_CHECK(ndr_pull_samr_ConnectVersion(ndr, NDR_SCALARS, &r->in.client_version));
11843
NDR_CHECK(ndr_pull_samr_ConnectAccessMask(ndr, NDR_SCALARS, &r->in.access_mask));
11844
NDR_PULL_ALLOC(ndr, r->out.connect_handle);
11845
ZERO_STRUCTP(r->out.connect_handle);
11847
if (flags & NDR_OUT) {
11848
if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
11849
NDR_PULL_ALLOC(ndr, r->out.connect_handle);
11851
_mem_save_connect_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
11852
NDR_PULL_SET_MEM_CTX(ndr, r->out.connect_handle, LIBNDR_FLAG_REF_ALLOC);
11853
NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS, r->out.connect_handle));
11854
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_connect_handle_0, LIBNDR_FLAG_REF_ALLOC);
11855
NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
11857
return NDR_ERR_SUCCESS;
11860
_PUBLIC_ void ndr_print_samr_Connect4(struct ndr_print *ndr, const char *name, int flags, const struct samr_Connect4 *r)
11862
ndr_print_struct(ndr, name, "samr_Connect4");
11863
if (r == NULL) { ndr_print_null(ndr); return; }
11865
if (flags & NDR_SET_VALUES) {
11866
ndr->flags |= LIBNDR_PRINT_SET_VALUES;
11868
if (flags & NDR_IN) {
11869
ndr_print_struct(ndr, "in", "samr_Connect4");
11871
ndr_print_ptr(ndr, "system_name", r->in.system_name);
11873
if (r->in.system_name) {
11874
ndr_print_string(ndr, "system_name", r->in.system_name);
11877
ndr_print_samr_ConnectVersion(ndr, "client_version", r->in.client_version);
11878
ndr_print_samr_ConnectAccessMask(ndr, "access_mask", r->in.access_mask);
11881
if (flags & NDR_OUT) {
11882
ndr_print_struct(ndr, "out", "samr_Connect4");
11884
ndr_print_ptr(ndr, "connect_handle", r->out.connect_handle);
11886
ndr_print_policy_handle(ndr, "connect_handle", r->out.connect_handle);
11888
ndr_print_NTSTATUS(ndr, "result", r->out.result);
11894
_PUBLIC_ enum ndr_err_code ndr_push_samr_ChangePasswordUser3(struct ndr_push *ndr, int flags, const struct samr_ChangePasswordUser3 *r)
11896
if (flags & NDR_IN) {
11897
NDR_CHECK(ndr_push_unique_ptr(ndr, r->in.server));
11898
if (r->in.server) {
11899
NDR_CHECK(ndr_push_lsa_String(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.server));
11901
if (r->in.account == NULL) {
11902
return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
11904
NDR_CHECK(ndr_push_lsa_String(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.account));
11905
NDR_CHECK(ndr_push_unique_ptr(ndr, r->in.nt_password));
11906
if (r->in.nt_password) {
11907
NDR_CHECK(ndr_push_samr_CryptPassword(ndr, NDR_SCALARS, r->in.nt_password));
11909
NDR_CHECK(ndr_push_unique_ptr(ndr, r->in.nt_verifier));
11910
if (r->in.nt_verifier) {
11911
NDR_CHECK(ndr_push_samr_Password(ndr, NDR_SCALARS, r->in.nt_verifier));
11913
NDR_CHECK(ndr_push_uint8(ndr, NDR_SCALARS, r->in.lm_change));
11914
NDR_CHECK(ndr_push_unique_ptr(ndr, r->in.lm_password));
11915
if (r->in.lm_password) {
11916
NDR_CHECK(ndr_push_samr_CryptPassword(ndr, NDR_SCALARS, r->in.lm_password));
11918
NDR_CHECK(ndr_push_unique_ptr(ndr, r->in.lm_verifier));
11919
if (r->in.lm_verifier) {
11920
NDR_CHECK(ndr_push_samr_Password(ndr, NDR_SCALARS, r->in.lm_verifier));
11922
NDR_CHECK(ndr_push_unique_ptr(ndr, r->in.password3));
11923
if (r->in.password3) {
11924
NDR_CHECK(ndr_push_samr_CryptPassword(ndr, NDR_SCALARS, r->in.password3));
11927
if (flags & NDR_OUT) {
11928
if (r->out.dominfo == NULL) {
11929
return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
11931
NDR_CHECK(ndr_push_unique_ptr(ndr, *r->out.dominfo));
11932
if (*r->out.dominfo) {
11933
NDR_CHECK(ndr_push_samr_DomInfo1(ndr, NDR_SCALARS, *r->out.dominfo));
11935
if (r->out.reject == NULL) {
11936
return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
11938
NDR_CHECK(ndr_push_unique_ptr(ndr, *r->out.reject));
11939
if (*r->out.reject) {
11940
NDR_CHECK(ndr_push_userPwdChangeFailureInformation(ndr, NDR_SCALARS|NDR_BUFFERS, *r->out.reject));
11942
NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
11944
return NDR_ERR_SUCCESS;
11947
_PUBLIC_ enum ndr_err_code ndr_pull_samr_ChangePasswordUser3(struct ndr_pull *ndr, int flags, struct samr_ChangePasswordUser3 *r)
11949
uint32_t _ptr_server;
11950
uint32_t _ptr_nt_password;
11951
uint32_t _ptr_nt_verifier;
11952
uint32_t _ptr_lm_password;
11953
uint32_t _ptr_lm_verifier;
11954
uint32_t _ptr_password3;
11955
uint32_t _ptr_dominfo;
11956
uint32_t _ptr_reject;
11957
TALLOC_CTX *_mem_save_server_0;
11958
TALLOC_CTX *_mem_save_account_0;
11959
TALLOC_CTX *_mem_save_nt_password_0;
11960
TALLOC_CTX *_mem_save_nt_verifier_0;
11961
TALLOC_CTX *_mem_save_lm_password_0;
11962
TALLOC_CTX *_mem_save_lm_verifier_0;
11963
TALLOC_CTX *_mem_save_password3_0;
11964
TALLOC_CTX *_mem_save_dominfo_0;
11965
TALLOC_CTX *_mem_save_dominfo_1;
11966
TALLOC_CTX *_mem_save_reject_0;
11967
TALLOC_CTX *_mem_save_reject_1;
11968
if (flags & NDR_IN) {
11969
ZERO_STRUCT(r->out);
11971
NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_server));
11973
NDR_PULL_ALLOC(ndr, r->in.server);
11975
r->in.server = NULL;
11977
if (r->in.server) {
11978
_mem_save_server_0 = NDR_PULL_GET_MEM_CTX(ndr);
11979
NDR_PULL_SET_MEM_CTX(ndr, r->in.server, 0);
11980
NDR_CHECK(ndr_pull_lsa_String(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.server));
11981
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_server_0, 0);
11983
if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
11984
NDR_PULL_ALLOC(ndr, r->in.account);
11986
_mem_save_account_0 = NDR_PULL_GET_MEM_CTX(ndr);
11987
NDR_PULL_SET_MEM_CTX(ndr, r->in.account, LIBNDR_FLAG_REF_ALLOC);
11988
NDR_CHECK(ndr_pull_lsa_String(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.account));
11989
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_account_0, LIBNDR_FLAG_REF_ALLOC);
11990
NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_nt_password));
11991
if (_ptr_nt_password) {
11992
NDR_PULL_ALLOC(ndr, r->in.nt_password);
11994
r->in.nt_password = NULL;
11996
if (r->in.nt_password) {
11997
_mem_save_nt_password_0 = NDR_PULL_GET_MEM_CTX(ndr);
11998
NDR_PULL_SET_MEM_CTX(ndr, r->in.nt_password, 0);
11999
NDR_CHECK(ndr_pull_samr_CryptPassword(ndr, NDR_SCALARS, r->in.nt_password));
12000
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_nt_password_0, 0);
12002
NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_nt_verifier));
12003
if (_ptr_nt_verifier) {
12004
NDR_PULL_ALLOC(ndr, r->in.nt_verifier);
12006
r->in.nt_verifier = NULL;
12008
if (r->in.nt_verifier) {
12009
_mem_save_nt_verifier_0 = NDR_PULL_GET_MEM_CTX(ndr);
12010
NDR_PULL_SET_MEM_CTX(ndr, r->in.nt_verifier, 0);
12011
NDR_CHECK(ndr_pull_samr_Password(ndr, NDR_SCALARS, r->in.nt_verifier));
12012
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_nt_verifier_0, 0);
12014
NDR_CHECK(ndr_pull_uint8(ndr, NDR_SCALARS, &r->in.lm_change));
12015
NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_lm_password));
12016
if (_ptr_lm_password) {
12017
NDR_PULL_ALLOC(ndr, r->in.lm_password);
12019
r->in.lm_password = NULL;
12021
if (r->in.lm_password) {
12022
_mem_save_lm_password_0 = NDR_PULL_GET_MEM_CTX(ndr);
12023
NDR_PULL_SET_MEM_CTX(ndr, r->in.lm_password, 0);
12024
NDR_CHECK(ndr_pull_samr_CryptPassword(ndr, NDR_SCALARS, r->in.lm_password));
12025
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_lm_password_0, 0);
12027
NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_lm_verifier));
12028
if (_ptr_lm_verifier) {
12029
NDR_PULL_ALLOC(ndr, r->in.lm_verifier);
12031
r->in.lm_verifier = NULL;
12033
if (r->in.lm_verifier) {
12034
_mem_save_lm_verifier_0 = NDR_PULL_GET_MEM_CTX(ndr);
12035
NDR_PULL_SET_MEM_CTX(ndr, r->in.lm_verifier, 0);
12036
NDR_CHECK(ndr_pull_samr_Password(ndr, NDR_SCALARS, r->in.lm_verifier));
12037
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_lm_verifier_0, 0);
12039
NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_password3));
12040
if (_ptr_password3) {
12041
NDR_PULL_ALLOC(ndr, r->in.password3);
12043
r->in.password3 = NULL;
12045
if (r->in.password3) {
12046
_mem_save_password3_0 = NDR_PULL_GET_MEM_CTX(ndr);
12047
NDR_PULL_SET_MEM_CTX(ndr, r->in.password3, 0);
12048
NDR_CHECK(ndr_pull_samr_CryptPassword(ndr, NDR_SCALARS, r->in.password3));
12049
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_password3_0, 0);
12051
NDR_PULL_ALLOC(ndr, r->out.dominfo);
12052
ZERO_STRUCTP(r->out.dominfo);
12053
NDR_PULL_ALLOC(ndr, r->out.reject);
12054
ZERO_STRUCTP(r->out.reject);
12056
if (flags & NDR_OUT) {
12057
if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
12058
NDR_PULL_ALLOC(ndr, r->out.dominfo);
12060
_mem_save_dominfo_0 = NDR_PULL_GET_MEM_CTX(ndr);
12061
NDR_PULL_SET_MEM_CTX(ndr, r->out.dominfo, LIBNDR_FLAG_REF_ALLOC);
12062
NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_dominfo));
12063
if (_ptr_dominfo) {
12064
NDR_PULL_ALLOC(ndr, *r->out.dominfo);
12066
*r->out.dominfo = NULL;
12068
if (*r->out.dominfo) {
12069
_mem_save_dominfo_1 = NDR_PULL_GET_MEM_CTX(ndr);
12070
NDR_PULL_SET_MEM_CTX(ndr, *r->out.dominfo, 0);
12071
NDR_CHECK(ndr_pull_samr_DomInfo1(ndr, NDR_SCALARS, *r->out.dominfo));
12072
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_dominfo_1, 0);
12074
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_dominfo_0, LIBNDR_FLAG_REF_ALLOC);
12075
if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
12076
NDR_PULL_ALLOC(ndr, r->out.reject);
12078
_mem_save_reject_0 = NDR_PULL_GET_MEM_CTX(ndr);
12079
NDR_PULL_SET_MEM_CTX(ndr, r->out.reject, LIBNDR_FLAG_REF_ALLOC);
12080
NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_reject));
12082
NDR_PULL_ALLOC(ndr, *r->out.reject);
12084
*r->out.reject = NULL;
12086
if (*r->out.reject) {
12087
_mem_save_reject_1 = NDR_PULL_GET_MEM_CTX(ndr);
12088
NDR_PULL_SET_MEM_CTX(ndr, *r->out.reject, 0);
12089
NDR_CHECK(ndr_pull_userPwdChangeFailureInformation(ndr, NDR_SCALARS|NDR_BUFFERS, *r->out.reject));
12090
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_reject_1, 0);
12092
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_reject_0, LIBNDR_FLAG_REF_ALLOC);
12093
NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
12095
return NDR_ERR_SUCCESS;
12098
_PUBLIC_ void ndr_print_samr_ChangePasswordUser3(struct ndr_print *ndr, const char *name, int flags, const struct samr_ChangePasswordUser3 *r)
12100
ndr_print_struct(ndr, name, "samr_ChangePasswordUser3");
12101
if (r == NULL) { ndr_print_null(ndr); return; }
12103
if (flags & NDR_SET_VALUES) {
12104
ndr->flags |= LIBNDR_PRINT_SET_VALUES;
12106
if (flags & NDR_IN) {
12107
ndr_print_struct(ndr, "in", "samr_ChangePasswordUser3");
12109
ndr_print_ptr(ndr, "server", r->in.server);
12111
if (r->in.server) {
12112
ndr_print_lsa_String(ndr, "server", r->in.server);
12115
ndr_print_ptr(ndr, "account", r->in.account);
12117
ndr_print_lsa_String(ndr, "account", r->in.account);
12119
ndr_print_ptr(ndr, "nt_password", r->in.nt_password);
12121
if (r->in.nt_password) {
12122
ndr_print_samr_CryptPassword(ndr, "nt_password", r->in.nt_password);
12125
ndr_print_ptr(ndr, "nt_verifier", r->in.nt_verifier);
12127
if (r->in.nt_verifier) {
12128
ndr_print_samr_Password(ndr, "nt_verifier", r->in.nt_verifier);
12131
ndr_print_uint8(ndr, "lm_change", r->in.lm_change);
12132
ndr_print_ptr(ndr, "lm_password", r->in.lm_password);
12134
if (r->in.lm_password) {
12135
ndr_print_samr_CryptPassword(ndr, "lm_password", r->in.lm_password);
12138
ndr_print_ptr(ndr, "lm_verifier", r->in.lm_verifier);
12140
if (r->in.lm_verifier) {
12141
ndr_print_samr_Password(ndr, "lm_verifier", r->in.lm_verifier);
12144
ndr_print_ptr(ndr, "password3", r->in.password3);
12146
if (r->in.password3) {
12147
ndr_print_samr_CryptPassword(ndr, "password3", r->in.password3);
12152
if (flags & NDR_OUT) {
12153
ndr_print_struct(ndr, "out", "samr_ChangePasswordUser3");
12155
ndr_print_ptr(ndr, "dominfo", r->out.dominfo);
12157
ndr_print_ptr(ndr, "dominfo", *r->out.dominfo);
12159
if (*r->out.dominfo) {
12160
ndr_print_samr_DomInfo1(ndr, "dominfo", *r->out.dominfo);
12164
ndr_print_ptr(ndr, "reject", r->out.reject);
12166
ndr_print_ptr(ndr, "reject", *r->out.reject);
12168
if (*r->out.reject) {
12169
ndr_print_userPwdChangeFailureInformation(ndr, "reject", *r->out.reject);
12173
ndr_print_NTSTATUS(ndr, "result", r->out.result);
12179
_PUBLIC_ enum ndr_err_code ndr_push_samr_Connect5(struct ndr_push *ndr, int flags, const struct samr_Connect5 *r)
12181
if (flags & NDR_IN) {
12182
NDR_CHECK(ndr_push_unique_ptr(ndr, r->in.system_name));
12183
if (r->in.system_name) {
12184
NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, ndr_charset_length(r->in.system_name, CH_UTF16)));
12185
NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, 0));
12186
NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, ndr_charset_length(r->in.system_name, CH_UTF16)));
12187
NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->in.system_name, ndr_charset_length(r->in.system_name, CH_UTF16), sizeof(uint16_t), CH_UTF16));
12189
NDR_CHECK(ndr_push_samr_ConnectAccessMask(ndr, NDR_SCALARS, r->in.access_mask));
12190
NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->in.level_in));
12191
if (r->in.info_in == NULL) {
12192
return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
12194
NDR_CHECK(ndr_push_set_switch_value(ndr, r->in.info_in, r->in.level_in));
12195
NDR_CHECK(ndr_push_samr_ConnectInfo(ndr, NDR_SCALARS, r->in.info_in));
12197
if (flags & NDR_OUT) {
12198
if (r->out.level_out == NULL) {
12199
return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
12201
NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, *r->out.level_out));
12202
if (r->out.info_out == NULL) {
12203
return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
12205
NDR_CHECK(ndr_push_set_switch_value(ndr, r->out.info_out, *r->out.level_out));
12206
NDR_CHECK(ndr_push_samr_ConnectInfo(ndr, NDR_SCALARS, r->out.info_out));
12207
if (r->out.connect_handle == NULL) {
12208
return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
12210
NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS, r->out.connect_handle));
12211
NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
12213
return NDR_ERR_SUCCESS;
12216
_PUBLIC_ enum ndr_err_code ndr_pull_samr_Connect5(struct ndr_pull *ndr, int flags, struct samr_Connect5 *r)
12218
uint32_t _ptr_system_name;
12219
TALLOC_CTX *_mem_save_system_name_0;
12220
TALLOC_CTX *_mem_save_info_in_0;
12221
TALLOC_CTX *_mem_save_level_out_0;
12222
TALLOC_CTX *_mem_save_info_out_0;
12223
TALLOC_CTX *_mem_save_connect_handle_0;
12224
if (flags & NDR_IN) {
12225
ZERO_STRUCT(r->out);
12227
NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_system_name));
12228
if (_ptr_system_name) {
12229
NDR_PULL_ALLOC(ndr, r->in.system_name);
12231
r->in.system_name = NULL;
12233
if (r->in.system_name) {
12234
_mem_save_system_name_0 = NDR_PULL_GET_MEM_CTX(ndr);
12235
NDR_PULL_SET_MEM_CTX(ndr, r->in.system_name, 0);
12236
NDR_CHECK(ndr_pull_array_size(ndr, &r->in.system_name));
12237
NDR_CHECK(ndr_pull_array_length(ndr, &r->in.system_name));
12238
if (ndr_get_array_length(ndr, &r->in.system_name) > ndr_get_array_size(ndr, &r->in.system_name)) {
12239
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.system_name), ndr_get_array_length(ndr, &r->in.system_name));
12241
NDR_CHECK(ndr_check_string_terminator(ndr, ndr_get_array_length(ndr, &r->in.system_name), sizeof(uint16_t)));
12242
NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->in.system_name, ndr_get_array_length(ndr, &r->in.system_name), sizeof(uint16_t), CH_UTF16));
12243
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_system_name_0, 0);
12245
NDR_CHECK(ndr_pull_samr_ConnectAccessMask(ndr, NDR_SCALARS, &r->in.access_mask));
12246
NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->in.level_in));
12247
if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
12248
NDR_PULL_ALLOC(ndr, r->in.info_in);
12250
_mem_save_info_in_0 = NDR_PULL_GET_MEM_CTX(ndr);
12251
NDR_PULL_SET_MEM_CTX(ndr, r->in.info_in, LIBNDR_FLAG_REF_ALLOC);
12252
NDR_CHECK(ndr_pull_set_switch_value(ndr, r->in.info_in, r->in.level_in));
12253
NDR_CHECK(ndr_pull_samr_ConnectInfo(ndr, NDR_SCALARS, r->in.info_in));
12254
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_info_in_0, LIBNDR_FLAG_REF_ALLOC);
12255
NDR_PULL_ALLOC(ndr, r->out.level_out);
12256
ZERO_STRUCTP(r->out.level_out);
12257
NDR_PULL_ALLOC(ndr, r->out.info_out);
12258
ZERO_STRUCTP(r->out.info_out);
12259
NDR_PULL_ALLOC(ndr, r->out.connect_handle);
12260
ZERO_STRUCTP(r->out.connect_handle);
12262
if (flags & NDR_OUT) {
12263
if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
12264
NDR_PULL_ALLOC(ndr, r->out.level_out);
12266
_mem_save_level_out_0 = NDR_PULL_GET_MEM_CTX(ndr);
12267
NDR_PULL_SET_MEM_CTX(ndr, r->out.level_out, LIBNDR_FLAG_REF_ALLOC);
12268
NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, r->out.level_out));
12269
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_level_out_0, LIBNDR_FLAG_REF_ALLOC);
12270
if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
12271
NDR_PULL_ALLOC(ndr, r->out.info_out);
12273
_mem_save_info_out_0 = NDR_PULL_GET_MEM_CTX(ndr);
12274
NDR_PULL_SET_MEM_CTX(ndr, r->out.info_out, LIBNDR_FLAG_REF_ALLOC);
12275
NDR_CHECK(ndr_pull_set_switch_value(ndr, r->out.info_out, *r->out.level_out));
12276
NDR_CHECK(ndr_pull_samr_ConnectInfo(ndr, NDR_SCALARS, r->out.info_out));
12277
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_info_out_0, LIBNDR_FLAG_REF_ALLOC);
12278
if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
12279
NDR_PULL_ALLOC(ndr, r->out.connect_handle);
12281
_mem_save_connect_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
12282
NDR_PULL_SET_MEM_CTX(ndr, r->out.connect_handle, LIBNDR_FLAG_REF_ALLOC);
12283
NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS, r->out.connect_handle));
12284
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_connect_handle_0, LIBNDR_FLAG_REF_ALLOC);
12285
NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
12287
return NDR_ERR_SUCCESS;
12290
_PUBLIC_ void ndr_print_samr_Connect5(struct ndr_print *ndr, const char *name, int flags, const struct samr_Connect5 *r)
12292
ndr_print_struct(ndr, name, "samr_Connect5");
12293
if (r == NULL) { ndr_print_null(ndr); return; }
12295
if (flags & NDR_SET_VALUES) {
12296
ndr->flags |= LIBNDR_PRINT_SET_VALUES;
12298
if (flags & NDR_IN) {
12299
ndr_print_struct(ndr, "in", "samr_Connect5");
12301
ndr_print_ptr(ndr, "system_name", r->in.system_name);
12303
if (r->in.system_name) {
12304
ndr_print_string(ndr, "system_name", r->in.system_name);
12307
ndr_print_samr_ConnectAccessMask(ndr, "access_mask", r->in.access_mask);
12308
ndr_print_uint32(ndr, "level_in", r->in.level_in);
12309
ndr_print_ptr(ndr, "info_in", r->in.info_in);
12311
ndr_print_set_switch_value(ndr, r->in.info_in, r->in.level_in);
12312
ndr_print_samr_ConnectInfo(ndr, "info_in", r->in.info_in);
12316
if (flags & NDR_OUT) {
12317
ndr_print_struct(ndr, "out", "samr_Connect5");
12319
ndr_print_ptr(ndr, "level_out", r->out.level_out);
12321
ndr_print_uint32(ndr, "level_out", *r->out.level_out);
12323
ndr_print_ptr(ndr, "info_out", r->out.info_out);
12325
ndr_print_set_switch_value(ndr, r->out.info_out, *r->out.level_out);
12326
ndr_print_samr_ConnectInfo(ndr, "info_out", r->out.info_out);
12328
ndr_print_ptr(ndr, "connect_handle", r->out.connect_handle);
12330
ndr_print_policy_handle(ndr, "connect_handle", r->out.connect_handle);
12332
ndr_print_NTSTATUS(ndr, "result", r->out.result);
12338
static enum ndr_err_code ndr_push_samr_RidToSid(struct ndr_push *ndr, int flags, const struct samr_RidToSid *r)
12340
if (flags & NDR_IN) {
12341
if (r->in.domain_handle == NULL) {
12342
return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
12344
NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS, r->in.domain_handle));
12345
NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->in.rid));
12347
if (flags & NDR_OUT) {
12348
if (r->out.sid == NULL) {
12349
return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
12351
NDR_CHECK(ndr_push_unique_ptr(ndr, *r->out.sid));
12353
NDR_CHECK(ndr_push_dom_sid2(ndr, NDR_SCALARS|NDR_BUFFERS, *r->out.sid));
12355
NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
12357
return NDR_ERR_SUCCESS;
12360
static enum ndr_err_code ndr_pull_samr_RidToSid(struct ndr_pull *ndr, int flags, struct samr_RidToSid *r)
12363
TALLOC_CTX *_mem_save_domain_handle_0;
12364
TALLOC_CTX *_mem_save_sid_0;
12365
TALLOC_CTX *_mem_save_sid_1;
12366
if (flags & NDR_IN) {
12367
ZERO_STRUCT(r->out);
12369
if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
12370
NDR_PULL_ALLOC(ndr, r->in.domain_handle);
12372
_mem_save_domain_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
12373
NDR_PULL_SET_MEM_CTX(ndr, r->in.domain_handle, LIBNDR_FLAG_REF_ALLOC);
12374
NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS, r->in.domain_handle));
12375
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_domain_handle_0, LIBNDR_FLAG_REF_ALLOC);
12376
NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->in.rid));
12377
NDR_PULL_ALLOC(ndr, r->out.sid);
12378
ZERO_STRUCTP(r->out.sid);
12380
if (flags & NDR_OUT) {
12381
if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
12382
NDR_PULL_ALLOC(ndr, r->out.sid);
12384
_mem_save_sid_0 = NDR_PULL_GET_MEM_CTX(ndr);
12385
NDR_PULL_SET_MEM_CTX(ndr, r->out.sid, LIBNDR_FLAG_REF_ALLOC);
12386
NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_sid));
12388
NDR_PULL_ALLOC(ndr, *r->out.sid);
12390
*r->out.sid = NULL;
12393
_mem_save_sid_1 = NDR_PULL_GET_MEM_CTX(ndr);
12394
NDR_PULL_SET_MEM_CTX(ndr, *r->out.sid, 0);
12395
NDR_CHECK(ndr_pull_dom_sid2(ndr, NDR_SCALARS|NDR_BUFFERS, *r->out.sid));
12396
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_sid_1, 0);
12398
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_sid_0, LIBNDR_FLAG_REF_ALLOC);
12399
NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
12401
return NDR_ERR_SUCCESS;
12404
_PUBLIC_ void ndr_print_samr_RidToSid(struct ndr_print *ndr, const char *name, int flags, const struct samr_RidToSid *r)
12406
ndr_print_struct(ndr, name, "samr_RidToSid");
12407
if (r == NULL) { ndr_print_null(ndr); return; }
12409
if (flags & NDR_SET_VALUES) {
12410
ndr->flags |= LIBNDR_PRINT_SET_VALUES;
12412
if (flags & NDR_IN) {
12413
ndr_print_struct(ndr, "in", "samr_RidToSid");
12415
ndr_print_ptr(ndr, "domain_handle", r->in.domain_handle);
12417
ndr_print_policy_handle(ndr, "domain_handle", r->in.domain_handle);
12419
ndr_print_uint32(ndr, "rid", r->in.rid);
12422
if (flags & NDR_OUT) {
12423
ndr_print_struct(ndr, "out", "samr_RidToSid");
12425
ndr_print_ptr(ndr, "sid", r->out.sid);
12427
ndr_print_ptr(ndr, "sid", *r->out.sid);
12430
ndr_print_dom_sid2(ndr, "sid", *r->out.sid);
12434
ndr_print_NTSTATUS(ndr, "result", r->out.result);
12440
static enum ndr_err_code ndr_push_samr_SetDsrmPassword(struct ndr_push *ndr, int flags, const struct samr_SetDsrmPassword *r)
12442
if (flags & NDR_IN) {
12443
NDR_CHECK(ndr_push_unique_ptr(ndr, r->in.name));
12445
NDR_CHECK(ndr_push_lsa_String(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.name));
12447
NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->in.unknown));
12448
NDR_CHECK(ndr_push_unique_ptr(ndr, r->in.hash));
12450
NDR_CHECK(ndr_push_samr_Password(ndr, NDR_SCALARS, r->in.hash));
12453
if (flags & NDR_OUT) {
12454
NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
12456
return NDR_ERR_SUCCESS;
12459
static enum ndr_err_code ndr_pull_samr_SetDsrmPassword(struct ndr_pull *ndr, int flags, struct samr_SetDsrmPassword *r)
12461
uint32_t _ptr_name;
12462
uint32_t _ptr_hash;
12463
TALLOC_CTX *_mem_save_name_0;
12464
TALLOC_CTX *_mem_save_hash_0;
12465
if (flags & NDR_IN) {
12466
NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_name));
12468
NDR_PULL_ALLOC(ndr, r->in.name);
12473
_mem_save_name_0 = NDR_PULL_GET_MEM_CTX(ndr);
12474
NDR_PULL_SET_MEM_CTX(ndr, r->in.name, 0);
12475
NDR_CHECK(ndr_pull_lsa_String(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.name));
12476
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_name_0, 0);
12478
NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->in.unknown));
12479
NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_hash));
12481
NDR_PULL_ALLOC(ndr, r->in.hash);
12486
_mem_save_hash_0 = NDR_PULL_GET_MEM_CTX(ndr);
12487
NDR_PULL_SET_MEM_CTX(ndr, r->in.hash, 0);
12488
NDR_CHECK(ndr_pull_samr_Password(ndr, NDR_SCALARS, r->in.hash));
12489
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_hash_0, 0);
12492
if (flags & NDR_OUT) {
12493
NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
12495
return NDR_ERR_SUCCESS;
12498
_PUBLIC_ void ndr_print_samr_SetDsrmPassword(struct ndr_print *ndr, const char *name, int flags, const struct samr_SetDsrmPassword *r)
12500
ndr_print_struct(ndr, name, "samr_SetDsrmPassword");
12501
if (r == NULL) { ndr_print_null(ndr); return; }
12503
if (flags & NDR_SET_VALUES) {
12504
ndr->flags |= LIBNDR_PRINT_SET_VALUES;
12506
if (flags & NDR_IN) {
12507
ndr_print_struct(ndr, "in", "samr_SetDsrmPassword");
12509
ndr_print_ptr(ndr, "name", r->in.name);
12512
ndr_print_lsa_String(ndr, "name", r->in.name);
12515
ndr_print_uint32(ndr, "unknown", r->in.unknown);
12516
ndr_print_ptr(ndr, "hash", r->in.hash);
12519
ndr_print_samr_Password(ndr, "hash", r->in.hash);
12524
if (flags & NDR_OUT) {
12525
ndr_print_struct(ndr, "out", "samr_SetDsrmPassword");
12527
ndr_print_NTSTATUS(ndr, "result", r->out.result);
12533
static enum ndr_err_code ndr_push_samr_ValidatePassword(struct ndr_push *ndr, int flags, const struct samr_ValidatePassword *r)
12535
if (flags & NDR_IN) {
12536
NDR_CHECK(ndr_push_samr_ValidatePasswordLevel(ndr, NDR_SCALARS, r->in.level));
12537
if (r->in.req == NULL) {
12538
return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
12540
NDR_CHECK(ndr_push_set_switch_value(ndr, r->in.req, r->in.level));
12541
NDR_CHECK(ndr_push_samr_ValidatePasswordReq(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.req));
12543
if (flags & NDR_OUT) {
12544
if (r->out.rep == NULL) {
12545
return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
12547
NDR_CHECK(ndr_push_unique_ptr(ndr, *r->out.rep));
12549
NDR_CHECK(ndr_push_set_switch_value(ndr, *r->out.rep, r->in.level));
12550
NDR_CHECK(ndr_push_samr_ValidatePasswordRep(ndr, NDR_SCALARS|NDR_BUFFERS, *r->out.rep));
12552
NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
12554
return NDR_ERR_SUCCESS;
12557
static enum ndr_err_code ndr_pull_samr_ValidatePassword(struct ndr_pull *ndr, int flags, struct samr_ValidatePassword *r)
12560
TALLOC_CTX *_mem_save_req_0;
12561
TALLOC_CTX *_mem_save_rep_0;
12562
TALLOC_CTX *_mem_save_rep_1;
12563
if (flags & NDR_IN) {
12564
ZERO_STRUCT(r->out);
12566
NDR_CHECK(ndr_pull_samr_ValidatePasswordLevel(ndr, NDR_SCALARS, &r->in.level));
12567
if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
12568
NDR_PULL_ALLOC(ndr, r->in.req);
12570
_mem_save_req_0 = NDR_PULL_GET_MEM_CTX(ndr);
12571
NDR_PULL_SET_MEM_CTX(ndr, r->in.req, LIBNDR_FLAG_REF_ALLOC);
12572
NDR_CHECK(ndr_pull_set_switch_value(ndr, r->in.req, r->in.level));
12573
NDR_CHECK(ndr_pull_samr_ValidatePasswordReq(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.req));
12574
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_req_0, LIBNDR_FLAG_REF_ALLOC);
12575
NDR_PULL_ALLOC(ndr, r->out.rep);
12576
ZERO_STRUCTP(r->out.rep);
12578
if (flags & NDR_OUT) {
12579
if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
12580
NDR_PULL_ALLOC(ndr, r->out.rep);
12582
_mem_save_rep_0 = NDR_PULL_GET_MEM_CTX(ndr);
12583
NDR_PULL_SET_MEM_CTX(ndr, r->out.rep, LIBNDR_FLAG_REF_ALLOC);
12584
NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_rep));
12586
NDR_PULL_ALLOC(ndr, *r->out.rep);
12588
*r->out.rep = NULL;
12591
_mem_save_rep_1 = NDR_PULL_GET_MEM_CTX(ndr);
12592
NDR_PULL_SET_MEM_CTX(ndr, *r->out.rep, 0);
12593
NDR_CHECK(ndr_pull_set_switch_value(ndr, *r->out.rep, r->in.level));
12594
NDR_CHECK(ndr_pull_samr_ValidatePasswordRep(ndr, NDR_SCALARS|NDR_BUFFERS, *r->out.rep));
12595
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_rep_1, 0);
12597
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_rep_0, LIBNDR_FLAG_REF_ALLOC);
12598
NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
12600
return NDR_ERR_SUCCESS;
12603
_PUBLIC_ void ndr_print_samr_ValidatePassword(struct ndr_print *ndr, const char *name, int flags, const struct samr_ValidatePassword *r)
12605
ndr_print_struct(ndr, name, "samr_ValidatePassword");
12606
if (r == NULL) { ndr_print_null(ndr); return; }
12608
if (flags & NDR_SET_VALUES) {
12609
ndr->flags |= LIBNDR_PRINT_SET_VALUES;
12611
if (flags & NDR_IN) {
12612
ndr_print_struct(ndr, "in", "samr_ValidatePassword");
12614
ndr_print_samr_ValidatePasswordLevel(ndr, "level", r->in.level);
12615
ndr_print_ptr(ndr, "req", r->in.req);
12617
ndr_print_set_switch_value(ndr, r->in.req, r->in.level);
12618
ndr_print_samr_ValidatePasswordReq(ndr, "req", r->in.req);
12622
if (flags & NDR_OUT) {
12623
ndr_print_struct(ndr, "out", "samr_ValidatePassword");
12625
ndr_print_ptr(ndr, "rep", r->out.rep);
12627
ndr_print_ptr(ndr, "rep", *r->out.rep);
12630
ndr_print_set_switch_value(ndr, *r->out.rep, r->in.level);
12631
ndr_print_samr_ValidatePasswordRep(ndr, "rep", *r->out.rep);
12635
ndr_print_NTSTATUS(ndr, "result", r->out.result);
12641
static const struct ndr_interface_call samr_calls[] = {
12644
sizeof(struct samr_Connect),
12645
(ndr_push_flags_fn_t) ndr_push_samr_Connect,
12646
(ndr_pull_flags_fn_t) ndr_pull_samr_Connect,
12647
(ndr_print_function_t) ndr_print_samr_Connect,
12653
sizeof(struct samr_Close),
12654
(ndr_push_flags_fn_t) ndr_push_samr_Close,
12655
(ndr_pull_flags_fn_t) ndr_pull_samr_Close,
12656
(ndr_print_function_t) ndr_print_samr_Close,
12661
"samr_SetSecurity",
12662
sizeof(struct samr_SetSecurity),
12663
(ndr_push_flags_fn_t) ndr_push_samr_SetSecurity,
12664
(ndr_pull_flags_fn_t) ndr_pull_samr_SetSecurity,
12665
(ndr_print_function_t) ndr_print_samr_SetSecurity,
12670
"samr_QuerySecurity",
12671
sizeof(struct samr_QuerySecurity),
12672
(ndr_push_flags_fn_t) ndr_push_samr_QuerySecurity,
12673
(ndr_pull_flags_fn_t) ndr_pull_samr_QuerySecurity,
12674
(ndr_print_function_t) ndr_print_samr_QuerySecurity,
12680
sizeof(struct samr_Shutdown),
12681
(ndr_push_flags_fn_t) ndr_push_samr_Shutdown,
12682
(ndr_pull_flags_fn_t) ndr_pull_samr_Shutdown,
12683
(ndr_print_function_t) ndr_print_samr_Shutdown,
12688
"samr_LookupDomain",
12689
sizeof(struct samr_LookupDomain),
12690
(ndr_push_flags_fn_t) ndr_push_samr_LookupDomain,
12691
(ndr_pull_flags_fn_t) ndr_pull_samr_LookupDomain,
12692
(ndr_print_function_t) ndr_print_samr_LookupDomain,
12697
"samr_EnumDomains",
12698
sizeof(struct samr_EnumDomains),
12699
(ndr_push_flags_fn_t) ndr_push_samr_EnumDomains,
12700
(ndr_pull_flags_fn_t) ndr_pull_samr_EnumDomains,
12701
(ndr_print_function_t) ndr_print_samr_EnumDomains,
12707
sizeof(struct samr_OpenDomain),
12708
(ndr_push_flags_fn_t) ndr_push_samr_OpenDomain,
12709
(ndr_pull_flags_fn_t) ndr_pull_samr_OpenDomain,
12710
(ndr_print_function_t) ndr_print_samr_OpenDomain,
12715
"samr_QueryDomainInfo",
12716
sizeof(struct samr_QueryDomainInfo),
12717
(ndr_push_flags_fn_t) ndr_push_samr_QueryDomainInfo,
12718
(ndr_pull_flags_fn_t) ndr_pull_samr_QueryDomainInfo,
12719
(ndr_print_function_t) ndr_print_samr_QueryDomainInfo,
12724
"samr_SetDomainInfo",
12725
sizeof(struct samr_SetDomainInfo),
12726
(ndr_push_flags_fn_t) ndr_push_samr_SetDomainInfo,
12727
(ndr_pull_flags_fn_t) ndr_pull_samr_SetDomainInfo,
12728
(ndr_print_function_t) ndr_print_samr_SetDomainInfo,
12733
"samr_CreateDomainGroup",
12734
sizeof(struct samr_CreateDomainGroup),
12735
(ndr_push_flags_fn_t) ndr_push_samr_CreateDomainGroup,
12736
(ndr_pull_flags_fn_t) ndr_pull_samr_CreateDomainGroup,
12737
(ndr_print_function_t) ndr_print_samr_CreateDomainGroup,
12742
"samr_EnumDomainGroups",
12743
sizeof(struct samr_EnumDomainGroups),
12744
(ndr_push_flags_fn_t) ndr_push_samr_EnumDomainGroups,
12745
(ndr_pull_flags_fn_t) ndr_pull_samr_EnumDomainGroups,
12746
(ndr_print_function_t) ndr_print_samr_EnumDomainGroups,
12752
sizeof(struct samr_CreateUser),
12753
(ndr_push_flags_fn_t) ndr_push_samr_CreateUser,
12754
(ndr_pull_flags_fn_t) ndr_pull_samr_CreateUser,
12755
(ndr_print_function_t) ndr_print_samr_CreateUser,
12760
"samr_EnumDomainUsers",
12761
sizeof(struct samr_EnumDomainUsers),
12762
(ndr_push_flags_fn_t) ndr_push_samr_EnumDomainUsers,
12763
(ndr_pull_flags_fn_t) ndr_pull_samr_EnumDomainUsers,
12764
(ndr_print_function_t) ndr_print_samr_EnumDomainUsers,
12769
"samr_CreateDomAlias",
12770
sizeof(struct samr_CreateDomAlias),
12771
(ndr_push_flags_fn_t) ndr_push_samr_CreateDomAlias,
12772
(ndr_pull_flags_fn_t) ndr_pull_samr_CreateDomAlias,
12773
(ndr_print_function_t) ndr_print_samr_CreateDomAlias,
12778
"samr_EnumDomainAliases",
12779
sizeof(struct samr_EnumDomainAliases),
12780
(ndr_push_flags_fn_t) ndr_push_samr_EnumDomainAliases,
12781
(ndr_pull_flags_fn_t) ndr_pull_samr_EnumDomainAliases,
12782
(ndr_print_function_t) ndr_print_samr_EnumDomainAliases,
12787
"samr_GetAliasMembership",
12788
sizeof(struct samr_GetAliasMembership),
12789
(ndr_push_flags_fn_t) ndr_push_samr_GetAliasMembership,
12790
(ndr_pull_flags_fn_t) ndr_pull_samr_GetAliasMembership,
12791
(ndr_print_function_t) ndr_print_samr_GetAliasMembership,
12796
"samr_LookupNames",
12797
sizeof(struct samr_LookupNames),
12798
(ndr_push_flags_fn_t) ndr_push_samr_LookupNames,
12799
(ndr_pull_flags_fn_t) ndr_pull_samr_LookupNames,
12800
(ndr_print_function_t) ndr_print_samr_LookupNames,
12806
sizeof(struct samr_LookupRids),
12807
(ndr_push_flags_fn_t) ndr_push_samr_LookupRids,
12808
(ndr_pull_flags_fn_t) ndr_pull_samr_LookupRids,
12809
(ndr_print_function_t) ndr_print_samr_LookupRids,
12815
sizeof(struct samr_OpenGroup),
12816
(ndr_push_flags_fn_t) ndr_push_samr_OpenGroup,
12817
(ndr_pull_flags_fn_t) ndr_pull_samr_OpenGroup,
12818
(ndr_print_function_t) ndr_print_samr_OpenGroup,
12823
"samr_QueryGroupInfo",
12824
sizeof(struct samr_QueryGroupInfo),
12825
(ndr_push_flags_fn_t) ndr_push_samr_QueryGroupInfo,
12826
(ndr_pull_flags_fn_t) ndr_pull_samr_QueryGroupInfo,
12827
(ndr_print_function_t) ndr_print_samr_QueryGroupInfo,
12832
"samr_SetGroupInfo",
12833
sizeof(struct samr_SetGroupInfo),
12834
(ndr_push_flags_fn_t) ndr_push_samr_SetGroupInfo,
12835
(ndr_pull_flags_fn_t) ndr_pull_samr_SetGroupInfo,
12836
(ndr_print_function_t) ndr_print_samr_SetGroupInfo,
12841
"samr_AddGroupMember",
12842
sizeof(struct samr_AddGroupMember),
12843
(ndr_push_flags_fn_t) ndr_push_samr_AddGroupMember,
12844
(ndr_pull_flags_fn_t) ndr_pull_samr_AddGroupMember,
12845
(ndr_print_function_t) ndr_print_samr_AddGroupMember,
12850
"samr_DeleteDomainGroup",
12851
sizeof(struct samr_DeleteDomainGroup),
12852
(ndr_push_flags_fn_t) ndr_push_samr_DeleteDomainGroup,
12853
(ndr_pull_flags_fn_t) ndr_pull_samr_DeleteDomainGroup,
12854
(ndr_print_function_t) ndr_print_samr_DeleteDomainGroup,
12859
"samr_DeleteGroupMember",
12860
sizeof(struct samr_DeleteGroupMember),
12861
(ndr_push_flags_fn_t) ndr_push_samr_DeleteGroupMember,
12862
(ndr_pull_flags_fn_t) ndr_pull_samr_DeleteGroupMember,
12863
(ndr_print_function_t) ndr_print_samr_DeleteGroupMember,
12868
"samr_QueryGroupMember",
12869
sizeof(struct samr_QueryGroupMember),
12870
(ndr_push_flags_fn_t) ndr_push_samr_QueryGroupMember,
12871
(ndr_pull_flags_fn_t) ndr_pull_samr_QueryGroupMember,
12872
(ndr_print_function_t) ndr_print_samr_QueryGroupMember,
12877
"samr_SetMemberAttributesOfGroup",
12878
sizeof(struct samr_SetMemberAttributesOfGroup),
12879
(ndr_push_flags_fn_t) ndr_push_samr_SetMemberAttributesOfGroup,
12880
(ndr_pull_flags_fn_t) ndr_pull_samr_SetMemberAttributesOfGroup,
12881
(ndr_print_function_t) ndr_print_samr_SetMemberAttributesOfGroup,
12887
sizeof(struct samr_OpenAlias),
12888
(ndr_push_flags_fn_t) ndr_push_samr_OpenAlias,
12889
(ndr_pull_flags_fn_t) ndr_pull_samr_OpenAlias,
12890
(ndr_print_function_t) ndr_print_samr_OpenAlias,
12895
"samr_QueryAliasInfo",
12896
sizeof(struct samr_QueryAliasInfo),
12897
(ndr_push_flags_fn_t) ndr_push_samr_QueryAliasInfo,
12898
(ndr_pull_flags_fn_t) ndr_pull_samr_QueryAliasInfo,
12899
(ndr_print_function_t) ndr_print_samr_QueryAliasInfo,
12904
"samr_SetAliasInfo",
12905
sizeof(struct samr_SetAliasInfo),
12906
(ndr_push_flags_fn_t) ndr_push_samr_SetAliasInfo,
12907
(ndr_pull_flags_fn_t) ndr_pull_samr_SetAliasInfo,
12908
(ndr_print_function_t) ndr_print_samr_SetAliasInfo,
12913
"samr_DeleteDomAlias",
12914
sizeof(struct samr_DeleteDomAlias),
12915
(ndr_push_flags_fn_t) ndr_push_samr_DeleteDomAlias,
12916
(ndr_pull_flags_fn_t) ndr_pull_samr_DeleteDomAlias,
12917
(ndr_print_function_t) ndr_print_samr_DeleteDomAlias,
12922
"samr_AddAliasMember",
12923
sizeof(struct samr_AddAliasMember),
12924
(ndr_push_flags_fn_t) ndr_push_samr_AddAliasMember,
12925
(ndr_pull_flags_fn_t) ndr_pull_samr_AddAliasMember,
12926
(ndr_print_function_t) ndr_print_samr_AddAliasMember,
12931
"samr_DeleteAliasMember",
12932
sizeof(struct samr_DeleteAliasMember),
12933
(ndr_push_flags_fn_t) ndr_push_samr_DeleteAliasMember,
12934
(ndr_pull_flags_fn_t) ndr_pull_samr_DeleteAliasMember,
12935
(ndr_print_function_t) ndr_print_samr_DeleteAliasMember,
12940
"samr_GetMembersInAlias",
12941
sizeof(struct samr_GetMembersInAlias),
12942
(ndr_push_flags_fn_t) ndr_push_samr_GetMembersInAlias,
12943
(ndr_pull_flags_fn_t) ndr_pull_samr_GetMembersInAlias,
12944
(ndr_print_function_t) ndr_print_samr_GetMembersInAlias,
12950
sizeof(struct samr_OpenUser),
12951
(ndr_push_flags_fn_t) ndr_push_samr_OpenUser,
12952
(ndr_pull_flags_fn_t) ndr_pull_samr_OpenUser,
12953
(ndr_print_function_t) ndr_print_samr_OpenUser,
12959
sizeof(struct samr_DeleteUser),
12960
(ndr_push_flags_fn_t) ndr_push_samr_DeleteUser,
12961
(ndr_pull_flags_fn_t) ndr_pull_samr_DeleteUser,
12962
(ndr_print_function_t) ndr_print_samr_DeleteUser,
12967
"samr_QueryUserInfo",
12968
sizeof(struct samr_QueryUserInfo),
12969
(ndr_push_flags_fn_t) ndr_push_samr_QueryUserInfo,
12970
(ndr_pull_flags_fn_t) ndr_pull_samr_QueryUserInfo,
12971
(ndr_print_function_t) ndr_print_samr_QueryUserInfo,
12976
"samr_SetUserInfo",
12977
sizeof(struct samr_SetUserInfo),
12978
(ndr_push_flags_fn_t) ndr_push_samr_SetUserInfo,
12979
(ndr_pull_flags_fn_t) ndr_pull_samr_SetUserInfo,
12980
(ndr_print_function_t) ndr_print_samr_SetUserInfo,
12985
"samr_ChangePasswordUser",
12986
sizeof(struct samr_ChangePasswordUser),
12987
(ndr_push_flags_fn_t) ndr_push_samr_ChangePasswordUser,
12988
(ndr_pull_flags_fn_t) ndr_pull_samr_ChangePasswordUser,
12989
(ndr_print_function_t) ndr_print_samr_ChangePasswordUser,
12994
"samr_GetGroupsForUser",
12995
sizeof(struct samr_GetGroupsForUser),
12996
(ndr_push_flags_fn_t) ndr_push_samr_GetGroupsForUser,
12997
(ndr_pull_flags_fn_t) ndr_pull_samr_GetGroupsForUser,
12998
(ndr_print_function_t) ndr_print_samr_GetGroupsForUser,
13003
"samr_QueryDisplayInfo",
13004
sizeof(struct samr_QueryDisplayInfo),
13005
(ndr_push_flags_fn_t) ndr_push_samr_QueryDisplayInfo,
13006
(ndr_pull_flags_fn_t) ndr_pull_samr_QueryDisplayInfo,
13007
(ndr_print_function_t) ndr_print_samr_QueryDisplayInfo,
13012
"samr_GetDisplayEnumerationIndex",
13013
sizeof(struct samr_GetDisplayEnumerationIndex),
13014
(ndr_push_flags_fn_t) ndr_push_samr_GetDisplayEnumerationIndex,
13015
(ndr_pull_flags_fn_t) ndr_pull_samr_GetDisplayEnumerationIndex,
13016
(ndr_print_function_t) ndr_print_samr_GetDisplayEnumerationIndex,
13021
"samr_TestPrivateFunctionsDomain",
13022
sizeof(struct samr_TestPrivateFunctionsDomain),
13023
(ndr_push_flags_fn_t) ndr_push_samr_TestPrivateFunctionsDomain,
13024
(ndr_pull_flags_fn_t) ndr_pull_samr_TestPrivateFunctionsDomain,
13025
(ndr_print_function_t) ndr_print_samr_TestPrivateFunctionsDomain,
13030
"samr_TestPrivateFunctionsUser",
13031
sizeof(struct samr_TestPrivateFunctionsUser),
13032
(ndr_push_flags_fn_t) ndr_push_samr_TestPrivateFunctionsUser,
13033
(ndr_pull_flags_fn_t) ndr_pull_samr_TestPrivateFunctionsUser,
13034
(ndr_print_function_t) ndr_print_samr_TestPrivateFunctionsUser,
13039
"samr_GetUserPwInfo",
13040
sizeof(struct samr_GetUserPwInfo),
13041
(ndr_push_flags_fn_t) ndr_push_samr_GetUserPwInfo,
13042
(ndr_pull_flags_fn_t) ndr_pull_samr_GetUserPwInfo,
13043
(ndr_print_function_t) ndr_print_samr_GetUserPwInfo,
13048
"samr_RemoveMemberFromForeignDomain",
13049
sizeof(struct samr_RemoveMemberFromForeignDomain),
13050
(ndr_push_flags_fn_t) ndr_push_samr_RemoveMemberFromForeignDomain,
13051
(ndr_pull_flags_fn_t) ndr_pull_samr_RemoveMemberFromForeignDomain,
13052
(ndr_print_function_t) ndr_print_samr_RemoveMemberFromForeignDomain,
13057
"samr_QueryDomainInfo2",
13058
sizeof(struct samr_QueryDomainInfo2),
13059
(ndr_push_flags_fn_t) ndr_push_samr_QueryDomainInfo2,
13060
(ndr_pull_flags_fn_t) ndr_pull_samr_QueryDomainInfo2,
13061
(ndr_print_function_t) ndr_print_samr_QueryDomainInfo2,
13066
"samr_QueryUserInfo2",
13067
sizeof(struct samr_QueryUserInfo2),
13068
(ndr_push_flags_fn_t) ndr_push_samr_QueryUserInfo2,
13069
(ndr_pull_flags_fn_t) ndr_pull_samr_QueryUserInfo2,
13070
(ndr_print_function_t) ndr_print_samr_QueryUserInfo2,
13075
"samr_QueryDisplayInfo2",
13076
sizeof(struct samr_QueryDisplayInfo2),
13077
(ndr_push_flags_fn_t) ndr_push_samr_QueryDisplayInfo2,
13078
(ndr_pull_flags_fn_t) ndr_pull_samr_QueryDisplayInfo2,
13079
(ndr_print_function_t) ndr_print_samr_QueryDisplayInfo2,
13084
"samr_GetDisplayEnumerationIndex2",
13085
sizeof(struct samr_GetDisplayEnumerationIndex2),
13086
(ndr_push_flags_fn_t) ndr_push_samr_GetDisplayEnumerationIndex2,
13087
(ndr_pull_flags_fn_t) ndr_pull_samr_GetDisplayEnumerationIndex2,
13088
(ndr_print_function_t) ndr_print_samr_GetDisplayEnumerationIndex2,
13093
"samr_CreateUser2",
13094
sizeof(struct samr_CreateUser2),
13095
(ndr_push_flags_fn_t) ndr_push_samr_CreateUser2,
13096
(ndr_pull_flags_fn_t) ndr_pull_samr_CreateUser2,
13097
(ndr_print_function_t) ndr_print_samr_CreateUser2,
13102
"samr_QueryDisplayInfo3",
13103
sizeof(struct samr_QueryDisplayInfo3),
13104
(ndr_push_flags_fn_t) ndr_push_samr_QueryDisplayInfo3,
13105
(ndr_pull_flags_fn_t) ndr_pull_samr_QueryDisplayInfo3,
13106
(ndr_print_function_t) ndr_print_samr_QueryDisplayInfo3,
13111
"samr_AddMultipleMembersToAlias",
13112
sizeof(struct samr_AddMultipleMembersToAlias),
13113
(ndr_push_flags_fn_t) ndr_push_samr_AddMultipleMembersToAlias,
13114
(ndr_pull_flags_fn_t) ndr_pull_samr_AddMultipleMembersToAlias,
13115
(ndr_print_function_t) ndr_print_samr_AddMultipleMembersToAlias,
13120
"samr_RemoveMultipleMembersFromAlias",
13121
sizeof(struct samr_RemoveMultipleMembersFromAlias),
13122
(ndr_push_flags_fn_t) ndr_push_samr_RemoveMultipleMembersFromAlias,
13123
(ndr_pull_flags_fn_t) ndr_pull_samr_RemoveMultipleMembersFromAlias,
13124
(ndr_print_function_t) ndr_print_samr_RemoveMultipleMembersFromAlias,
13129
"samr_OemChangePasswordUser2",
13130
sizeof(struct samr_OemChangePasswordUser2),
13131
(ndr_push_flags_fn_t) ndr_push_samr_OemChangePasswordUser2,
13132
(ndr_pull_flags_fn_t) ndr_pull_samr_OemChangePasswordUser2,
13133
(ndr_print_function_t) ndr_print_samr_OemChangePasswordUser2,
13138
"samr_ChangePasswordUser2",
13139
sizeof(struct samr_ChangePasswordUser2),
13140
(ndr_push_flags_fn_t) ndr_push_samr_ChangePasswordUser2,
13141
(ndr_pull_flags_fn_t) ndr_pull_samr_ChangePasswordUser2,
13142
(ndr_print_function_t) ndr_print_samr_ChangePasswordUser2,
13147
"samr_GetDomPwInfo",
13148
sizeof(struct samr_GetDomPwInfo),
13149
(ndr_push_flags_fn_t) ndr_push_samr_GetDomPwInfo,
13150
(ndr_pull_flags_fn_t) ndr_pull_samr_GetDomPwInfo,
13151
(ndr_print_function_t) ndr_print_samr_GetDomPwInfo,
13157
sizeof(struct samr_Connect2),
13158
(ndr_push_flags_fn_t) ndr_push_samr_Connect2,
13159
(ndr_pull_flags_fn_t) ndr_pull_samr_Connect2,
13160
(ndr_print_function_t) ndr_print_samr_Connect2,
13165
"samr_SetUserInfo2",
13166
sizeof(struct samr_SetUserInfo2),
13167
(ndr_push_flags_fn_t) ndr_push_samr_SetUserInfo2,
13168
(ndr_pull_flags_fn_t) ndr_pull_samr_SetUserInfo2,
13169
(ndr_print_function_t) ndr_print_samr_SetUserInfo2,
13174
"samr_SetBootKeyInformation",
13175
sizeof(struct samr_SetBootKeyInformation),
13176
(ndr_push_flags_fn_t) ndr_push_samr_SetBootKeyInformation,
13177
(ndr_pull_flags_fn_t) ndr_pull_samr_SetBootKeyInformation,
13178
(ndr_print_function_t) ndr_print_samr_SetBootKeyInformation,
13183
"samr_GetBootKeyInformation",
13184
sizeof(struct samr_GetBootKeyInformation),
13185
(ndr_push_flags_fn_t) ndr_push_samr_GetBootKeyInformation,
13186
(ndr_pull_flags_fn_t) ndr_pull_samr_GetBootKeyInformation,
13187
(ndr_print_function_t) ndr_print_samr_GetBootKeyInformation,
13193
sizeof(struct samr_Connect3),
13194
(ndr_push_flags_fn_t) ndr_push_samr_Connect3,
13195
(ndr_pull_flags_fn_t) ndr_pull_samr_Connect3,
13196
(ndr_print_function_t) ndr_print_samr_Connect3,
13202
sizeof(struct samr_Connect4),
13203
(ndr_push_flags_fn_t) ndr_push_samr_Connect4,
13204
(ndr_pull_flags_fn_t) ndr_pull_samr_Connect4,
13205
(ndr_print_function_t) ndr_print_samr_Connect4,
13210
"samr_ChangePasswordUser3",
13211
sizeof(struct samr_ChangePasswordUser3),
13212
(ndr_push_flags_fn_t) ndr_push_samr_ChangePasswordUser3,
13213
(ndr_pull_flags_fn_t) ndr_pull_samr_ChangePasswordUser3,
13214
(ndr_print_function_t) ndr_print_samr_ChangePasswordUser3,
13220
sizeof(struct samr_Connect5),
13221
(ndr_push_flags_fn_t) ndr_push_samr_Connect5,
13222
(ndr_pull_flags_fn_t) ndr_pull_samr_Connect5,
13223
(ndr_print_function_t) ndr_print_samr_Connect5,
13229
sizeof(struct samr_RidToSid),
13230
(ndr_push_flags_fn_t) ndr_push_samr_RidToSid,
13231
(ndr_pull_flags_fn_t) ndr_pull_samr_RidToSid,
13232
(ndr_print_function_t) ndr_print_samr_RidToSid,
13237
"samr_SetDsrmPassword",
13238
sizeof(struct samr_SetDsrmPassword),
13239
(ndr_push_flags_fn_t) ndr_push_samr_SetDsrmPassword,
13240
(ndr_pull_flags_fn_t) ndr_pull_samr_SetDsrmPassword,
13241
(ndr_print_function_t) ndr_print_samr_SetDsrmPassword,
13246
"samr_ValidatePassword",
13247
sizeof(struct samr_ValidatePassword),
13248
(ndr_push_flags_fn_t) ndr_push_samr_ValidatePassword,
13249
(ndr_pull_flags_fn_t) ndr_pull_samr_ValidatePassword,
13250
(ndr_print_function_t) ndr_print_samr_ValidatePassword,
13254
{ NULL, 0, NULL, NULL, NULL }
13257
static const char * const samr_endpoint_strings[] = {
13258
"ncacn_np:[\\pipe\\samr]",
13263
static const struct ndr_interface_string_array samr_endpoints = {
13265
.names = samr_endpoint_strings
13268
static const char * const samr_authservice_strings[] = {
13272
static const struct ndr_interface_string_array samr_authservices = {
13274
.names = samr_authservice_strings
13278
const struct ndr_interface_table ndr_table_samr = {
13281
{0x12345778,0x1234,0xabcd,{0xef,0x00},{0x01,0x23,0x45,0x67,0x89,0xac}},
13284
.helpstring = NDR_SAMR_HELPSTRING,
13286
.calls = samr_calls,
13287
.endpoints = &samr_endpoints,
13288
.authservices = &samr_authservices