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_lsa_String(ndr, NDR_SCALARS, &r->filterModuleName));
4786
NDR_CHECK(ndr_push_trailer_align(ndr, 5));
4788
if (ndr_flags & NDR_BUFFERS) {
4789
NDR_CHECK(ndr_push_lsa_String(ndr, NDR_BUFFERS, &r->filterModuleName));
4791
return NDR_ERR_SUCCESS;
4794
static enum ndr_err_code ndr_pull_userPwdChangeFailureInformation(struct ndr_pull *ndr, int ndr_flags, struct userPwdChangeFailureInformation *r)
4796
if (ndr_flags & NDR_SCALARS) {
4797
NDR_CHECK(ndr_pull_align(ndr, 5));
4798
NDR_CHECK(ndr_pull_samPwdChangeReason(ndr, NDR_SCALARS, &r->extendedFailureReason));
4799
NDR_CHECK(ndr_pull_lsa_String(ndr, NDR_SCALARS, &r->filterModuleName));
4800
NDR_CHECK(ndr_pull_trailer_align(ndr, 5));
4802
if (ndr_flags & NDR_BUFFERS) {
4803
NDR_CHECK(ndr_pull_lsa_String(ndr, NDR_BUFFERS, &r->filterModuleName));
4805
return NDR_ERR_SUCCESS;
4808
_PUBLIC_ void ndr_print_userPwdChangeFailureInformation(struct ndr_print *ndr, const char *name, const struct userPwdChangeFailureInformation *r)
4810
ndr_print_struct(ndr, name, "userPwdChangeFailureInformation");
4811
if (r == NULL) { ndr_print_null(ndr); return; }
4813
ndr_print_samPwdChangeReason(ndr, "extendedFailureReason", r->extendedFailureReason);
4814
ndr_print_lsa_String(ndr, "filterModuleName", &r->filterModuleName);
4818
static enum ndr_err_code ndr_push_samr_ConnectInfo1(struct ndr_push *ndr, int ndr_flags, const struct samr_ConnectInfo1 *r)
4820
if (ndr_flags & NDR_SCALARS) {
4821
NDR_CHECK(ndr_push_align(ndr, 4));
4822
NDR_CHECK(ndr_push_samr_ConnectVersion(ndr, NDR_SCALARS, r->client_version));
4823
NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->unknown2));
4824
NDR_CHECK(ndr_push_trailer_align(ndr, 4));
4826
if (ndr_flags & NDR_BUFFERS) {
4828
return NDR_ERR_SUCCESS;
4831
static enum ndr_err_code ndr_pull_samr_ConnectInfo1(struct ndr_pull *ndr, int ndr_flags, struct samr_ConnectInfo1 *r)
4833
if (ndr_flags & NDR_SCALARS) {
4834
NDR_CHECK(ndr_pull_align(ndr, 4));
4835
NDR_CHECK(ndr_pull_samr_ConnectVersion(ndr, NDR_SCALARS, &r->client_version));
4836
NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->unknown2));
4837
NDR_CHECK(ndr_pull_trailer_align(ndr, 4));
4839
if (ndr_flags & NDR_BUFFERS) {
4841
return NDR_ERR_SUCCESS;
4844
_PUBLIC_ void ndr_print_samr_ConnectInfo1(struct ndr_print *ndr, const char *name, const struct samr_ConnectInfo1 *r)
4846
ndr_print_struct(ndr, name, "samr_ConnectInfo1");
4847
if (r == NULL) { ndr_print_null(ndr); return; }
4849
ndr_print_samr_ConnectVersion(ndr, "client_version", r->client_version);
4850
ndr_print_uint32(ndr, "unknown2", r->unknown2);
4854
static enum ndr_err_code ndr_push_samr_ConnectInfo(struct ndr_push *ndr, int ndr_flags, const union samr_ConnectInfo *r)
4856
if (ndr_flags & NDR_SCALARS) {
4857
uint32_t level = ndr_push_get_switch_value(ndr, r);
4858
NDR_CHECK(ndr_push_union_align(ndr, 4));
4859
NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, level));
4860
NDR_CHECK(ndr_push_union_align(ndr, 4));
4863
NDR_CHECK(ndr_push_samr_ConnectInfo1(ndr, NDR_SCALARS, &r->info1));
4867
return ndr_push_error(ndr, NDR_ERR_BAD_SWITCH, "Bad switch value %u at %s", level, __location__);
4870
if (ndr_flags & NDR_BUFFERS) {
4871
uint32_t level = ndr_push_get_switch_value(ndr, r);
4877
return ndr_push_error(ndr, NDR_ERR_BAD_SWITCH, "Bad switch value %u at %s", level, __location__);
4880
return NDR_ERR_SUCCESS;
4883
static enum ndr_err_code ndr_pull_samr_ConnectInfo(struct ndr_pull *ndr, int ndr_flags, union samr_ConnectInfo *r)
4887
level = ndr_pull_get_switch_value(ndr, r);
4888
if (ndr_flags & NDR_SCALARS) {
4889
NDR_CHECK(ndr_pull_union_align(ndr, 4));
4890
NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &_level));
4891
if (_level != level) {
4892
return ndr_pull_error(ndr, NDR_ERR_BAD_SWITCH, "Bad switch value %u for r at %s", _level, __location__);
4894
NDR_CHECK(ndr_pull_union_align(ndr, 4));
4897
NDR_CHECK(ndr_pull_samr_ConnectInfo1(ndr, NDR_SCALARS, &r->info1));
4901
return ndr_pull_error(ndr, NDR_ERR_BAD_SWITCH, "Bad switch value %u at %s", level, __location__);
4904
if (ndr_flags & NDR_BUFFERS) {
4910
return ndr_pull_error(ndr, NDR_ERR_BAD_SWITCH, "Bad switch value %u at %s", level, __location__);
4913
return NDR_ERR_SUCCESS;
4916
_PUBLIC_ void ndr_print_samr_ConnectInfo(struct ndr_print *ndr, const char *name, const union samr_ConnectInfo *r)
4919
level = ndr_print_get_switch_value(ndr, r);
4920
ndr_print_union(ndr, name, level, "samr_ConnectInfo");
4923
ndr_print_samr_ConnectInfo1(ndr, "info1", &r->info1);
4927
ndr_print_bad_level(ndr, name, level);
4931
static enum ndr_err_code ndr_push_samr_ValidateFieldsPresent(struct ndr_push *ndr, int ndr_flags, uint32_t r)
4933
NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r));
4934
return NDR_ERR_SUCCESS;
4937
static enum ndr_err_code ndr_pull_samr_ValidateFieldsPresent(struct ndr_pull *ndr, int ndr_flags, uint32_t *r)
4940
NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &v));
4942
return NDR_ERR_SUCCESS;
4945
_PUBLIC_ void ndr_print_samr_ValidateFieldsPresent(struct ndr_print *ndr, const char *name, uint32_t r)
4947
ndr_print_uint32(ndr, name, r);
4949
ndr_print_bitmap_flag(ndr, sizeof(uint32_t), "SAMR_VALIDATE_FIELD_PASSWORD_LAST_SET", SAMR_VALIDATE_FIELD_PASSWORD_LAST_SET, r);
4950
ndr_print_bitmap_flag(ndr, sizeof(uint32_t), "SAMR_VALIDATE_FIELD_BAD_PASSWORD_TIME", SAMR_VALIDATE_FIELD_BAD_PASSWORD_TIME, r);
4951
ndr_print_bitmap_flag(ndr, sizeof(uint32_t), "SAMR_VALIDATE_FIELD_LOCKOUT_TIME", SAMR_VALIDATE_FIELD_LOCKOUT_TIME, r);
4952
ndr_print_bitmap_flag(ndr, sizeof(uint32_t), "SAMR_VALIDATE_FIELD_BAD_PASSWORD_COUNT", SAMR_VALIDATE_FIELD_BAD_PASSWORD_COUNT, r);
4953
ndr_print_bitmap_flag(ndr, sizeof(uint32_t), "SAMR_VALIDATE_FIELD_PASSWORD_HISTORY_LENGTH", SAMR_VALIDATE_FIELD_PASSWORD_HISTORY_LENGTH, r);
4954
ndr_print_bitmap_flag(ndr, sizeof(uint32_t), "SAMR_VALIDATE_FIELD_PASSWORD_HISTORY", SAMR_VALIDATE_FIELD_PASSWORD_HISTORY, r);
4958
static enum ndr_err_code ndr_push_samr_ValidatePasswordLevel(struct ndr_push *ndr, int ndr_flags, enum samr_ValidatePasswordLevel r)
4960
NDR_CHECK(ndr_push_enum_uint1632(ndr, NDR_SCALARS, r));
4961
return NDR_ERR_SUCCESS;
4964
static enum ndr_err_code ndr_pull_samr_ValidatePasswordLevel(struct ndr_pull *ndr, int ndr_flags, enum samr_ValidatePasswordLevel *r)
4967
NDR_CHECK(ndr_pull_enum_uint1632(ndr, NDR_SCALARS, &v));
4969
return NDR_ERR_SUCCESS;
4972
_PUBLIC_ void ndr_print_samr_ValidatePasswordLevel(struct ndr_print *ndr, const char *name, enum samr_ValidatePasswordLevel r)
4974
const char *val = NULL;
4977
case NetValidateAuthentication: val = "NetValidateAuthentication"; break;
4978
case NetValidatePasswordChange: val = "NetValidatePasswordChange"; break;
4979
case NetValidatePasswordReset: val = "NetValidatePasswordReset"; break;
4981
ndr_print_enum(ndr, name, "ENUM", val, r);
4984
static enum ndr_err_code ndr_push_samr_ValidationStatus(struct ndr_push *ndr, int ndr_flags, enum samr_ValidationStatus r)
4986
NDR_CHECK(ndr_push_enum_uint1632(ndr, NDR_SCALARS, r));
4987
return NDR_ERR_SUCCESS;
4990
static enum ndr_err_code ndr_pull_samr_ValidationStatus(struct ndr_pull *ndr, int ndr_flags, enum samr_ValidationStatus *r)
4993
NDR_CHECK(ndr_pull_enum_uint1632(ndr, NDR_SCALARS, &v));
4995
return NDR_ERR_SUCCESS;
4998
_PUBLIC_ void ndr_print_samr_ValidationStatus(struct ndr_print *ndr, const char *name, enum samr_ValidationStatus r)
5000
const char *val = NULL;
5003
case SAMR_VALIDATION_STATUS_SUCCESS: val = "SAMR_VALIDATION_STATUS_SUCCESS"; break;
5004
case SAMR_VALIDATION_STATUS_PASSWORD_MUST_CHANGE: val = "SAMR_VALIDATION_STATUS_PASSWORD_MUST_CHANGE"; break;
5005
case SAMR_VALIDATION_STATUS_ACCOUNT_LOCKED_OUT: val = "SAMR_VALIDATION_STATUS_ACCOUNT_LOCKED_OUT"; break;
5006
case SAMR_VALIDATION_STATUS_PASSWORD_EXPIRED: val = "SAMR_VALIDATION_STATUS_PASSWORD_EXPIRED"; break;
5007
case SAMR_VALIDATION_STATUS_BAD_PASSWORD: val = "SAMR_VALIDATION_STATUS_BAD_PASSWORD"; break;
5008
case SAMR_VALIDATION_STATUS_PWD_HISTORY_CONFLICT: val = "SAMR_VALIDATION_STATUS_PWD_HISTORY_CONFLICT"; break;
5009
case SAMR_VALIDATION_STATUS_PWD_TOO_SHORT: val = "SAMR_VALIDATION_STATUS_PWD_TOO_SHORT"; break;
5010
case SAMR_VALIDATION_STATUS_PWD_TOO_LONG: val = "SAMR_VALIDATION_STATUS_PWD_TOO_LONG"; break;
5011
case SAMR_VALIDATION_STATUS_NOT_COMPLEX_ENOUGH: val = "SAMR_VALIDATION_STATUS_NOT_COMPLEX_ENOUGH"; break;
5012
case SAMR_VALIDATION_STATUS_PASSWORD_TOO_RECENT: val = "SAMR_VALIDATION_STATUS_PASSWORD_TOO_RECENT"; break;
5013
case SAMR_VALIDATION_STATUS_PASSWORD_FILTER_ERROR: val = "SAMR_VALIDATION_STATUS_PASSWORD_FILTER_ERROR"; break;
5015
ndr_print_enum(ndr, name, "ENUM", val, r);
5018
static enum ndr_err_code ndr_push_samr_ValidationBlob(struct ndr_push *ndr, int ndr_flags, const struct samr_ValidationBlob *r)
5020
if (ndr_flags & NDR_SCALARS) {
5021
NDR_CHECK(ndr_push_align(ndr, 5));
5022
NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->length));
5023
NDR_CHECK(ndr_push_unique_ptr(ndr, r->data));
5024
NDR_CHECK(ndr_push_trailer_align(ndr, 5));
5026
if (ndr_flags & NDR_BUFFERS) {
5028
NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, r->length));
5029
NDR_CHECK(ndr_push_array_uint8(ndr, NDR_SCALARS, r->data, r->length));
5032
return NDR_ERR_SUCCESS;
5035
static enum ndr_err_code ndr_pull_samr_ValidationBlob(struct ndr_pull *ndr, int ndr_flags, struct samr_ValidationBlob *r)
5038
TALLOC_CTX *_mem_save_data_0;
5039
if (ndr_flags & NDR_SCALARS) {
5040
NDR_CHECK(ndr_pull_align(ndr, 5));
5041
NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->length));
5042
NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_data));
5044
NDR_PULL_ALLOC(ndr, r->data);
5048
NDR_CHECK(ndr_pull_trailer_align(ndr, 5));
5050
if (ndr_flags & NDR_BUFFERS) {
5052
_mem_save_data_0 = NDR_PULL_GET_MEM_CTX(ndr);
5053
NDR_PULL_SET_MEM_CTX(ndr, r->data, 0);
5054
NDR_CHECK(ndr_pull_array_size(ndr, &r->data));
5055
NDR_PULL_ALLOC_N(ndr, r->data, ndr_get_array_size(ndr, &r->data));
5056
NDR_CHECK(ndr_pull_array_uint8(ndr, NDR_SCALARS, r->data, ndr_get_array_size(ndr, &r->data)));
5057
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_data_0, 0);
5060
NDR_CHECK(ndr_check_array_size(ndr, (void*)&r->data, r->length));
5063
return NDR_ERR_SUCCESS;
5066
_PUBLIC_ void ndr_print_samr_ValidationBlob(struct ndr_print *ndr, const char *name, const struct samr_ValidationBlob *r)
5068
ndr_print_struct(ndr, name, "samr_ValidationBlob");
5069
if (r == NULL) { ndr_print_null(ndr); return; }
5071
ndr_print_uint32(ndr, "length", r->length);
5072
ndr_print_ptr(ndr, "data", r->data);
5075
ndr_print_array_uint8(ndr, "data", r->data, r->length);
5081
static enum ndr_err_code ndr_push_samr_ValidatePasswordInfo(struct ndr_push *ndr, int ndr_flags, const struct samr_ValidatePasswordInfo *r)
5083
uint32_t cntr_pwd_history_1;
5084
if (ndr_flags & NDR_SCALARS) {
5085
NDR_CHECK(ndr_push_align(ndr, 8));
5086
NDR_CHECK(ndr_push_samr_ValidateFieldsPresent(ndr, NDR_SCALARS, r->fields_present));
5087
NDR_CHECK(ndr_push_NTTIME_hyper(ndr, NDR_SCALARS, r->last_password_change));
5088
NDR_CHECK(ndr_push_NTTIME_hyper(ndr, NDR_SCALARS, r->bad_password_time));
5089
NDR_CHECK(ndr_push_NTTIME_hyper(ndr, NDR_SCALARS, r->lockout_time));
5090
NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->bad_pwd_count));
5091
NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->pwd_history_len));
5092
NDR_CHECK(ndr_push_unique_ptr(ndr, r->pwd_history));
5093
NDR_CHECK(ndr_push_trailer_align(ndr, 8));
5095
if (ndr_flags & NDR_BUFFERS) {
5096
if (r->pwd_history) {
5097
NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, r->pwd_history_len));
5098
for (cntr_pwd_history_1 = 0; cntr_pwd_history_1 < r->pwd_history_len; cntr_pwd_history_1++) {
5099
NDR_CHECK(ndr_push_samr_ValidationBlob(ndr, NDR_SCALARS, &r->pwd_history[cntr_pwd_history_1]));
5101
for (cntr_pwd_history_1 = 0; cntr_pwd_history_1 < r->pwd_history_len; cntr_pwd_history_1++) {
5102
NDR_CHECK(ndr_push_samr_ValidationBlob(ndr, NDR_BUFFERS, &r->pwd_history[cntr_pwd_history_1]));
5106
return NDR_ERR_SUCCESS;
5109
static enum ndr_err_code ndr_pull_samr_ValidatePasswordInfo(struct ndr_pull *ndr, int ndr_flags, struct samr_ValidatePasswordInfo *r)
5111
uint32_t _ptr_pwd_history;
5112
uint32_t cntr_pwd_history_1;
5113
TALLOC_CTX *_mem_save_pwd_history_0;
5114
TALLOC_CTX *_mem_save_pwd_history_1;
5115
if (ndr_flags & NDR_SCALARS) {
5116
NDR_CHECK(ndr_pull_align(ndr, 8));
5117
NDR_CHECK(ndr_pull_samr_ValidateFieldsPresent(ndr, NDR_SCALARS, &r->fields_present));
5118
NDR_CHECK(ndr_pull_NTTIME_hyper(ndr, NDR_SCALARS, &r->last_password_change));
5119
NDR_CHECK(ndr_pull_NTTIME_hyper(ndr, NDR_SCALARS, &r->bad_password_time));
5120
NDR_CHECK(ndr_pull_NTTIME_hyper(ndr, NDR_SCALARS, &r->lockout_time));
5121
NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->bad_pwd_count));
5122
NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->pwd_history_len));
5123
NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_pwd_history));
5124
if (_ptr_pwd_history) {
5125
NDR_PULL_ALLOC(ndr, r->pwd_history);
5127
r->pwd_history = NULL;
5129
NDR_CHECK(ndr_pull_trailer_align(ndr, 8));
5131
if (ndr_flags & NDR_BUFFERS) {
5132
if (r->pwd_history) {
5133
_mem_save_pwd_history_0 = NDR_PULL_GET_MEM_CTX(ndr);
5134
NDR_PULL_SET_MEM_CTX(ndr, r->pwd_history, 0);
5135
NDR_CHECK(ndr_pull_array_size(ndr, &r->pwd_history));
5136
NDR_PULL_ALLOC_N(ndr, r->pwd_history, ndr_get_array_size(ndr, &r->pwd_history));
5137
_mem_save_pwd_history_1 = NDR_PULL_GET_MEM_CTX(ndr);
5138
NDR_PULL_SET_MEM_CTX(ndr, r->pwd_history, 0);
5139
for (cntr_pwd_history_1 = 0; cntr_pwd_history_1 < r->pwd_history_len; cntr_pwd_history_1++) {
5140
NDR_CHECK(ndr_pull_samr_ValidationBlob(ndr, NDR_SCALARS, &r->pwd_history[cntr_pwd_history_1]));
5142
for (cntr_pwd_history_1 = 0; cntr_pwd_history_1 < r->pwd_history_len; cntr_pwd_history_1++) {
5143
NDR_CHECK(ndr_pull_samr_ValidationBlob(ndr, NDR_BUFFERS, &r->pwd_history[cntr_pwd_history_1]));
5145
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_pwd_history_1, 0);
5146
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_pwd_history_0, 0);
5148
if (r->pwd_history) {
5149
NDR_CHECK(ndr_check_array_size(ndr, (void*)&r->pwd_history, r->pwd_history_len));
5152
return NDR_ERR_SUCCESS;
5155
_PUBLIC_ void ndr_print_samr_ValidatePasswordInfo(struct ndr_print *ndr, const char *name, const struct samr_ValidatePasswordInfo *r)
5157
uint32_t cntr_pwd_history_1;
5158
ndr_print_struct(ndr, name, "samr_ValidatePasswordInfo");
5159
if (r == NULL) { ndr_print_null(ndr); return; }
5161
ndr_print_samr_ValidateFieldsPresent(ndr, "fields_present", r->fields_present);
5162
ndr_print_NTTIME_hyper(ndr, "last_password_change", r->last_password_change);
5163
ndr_print_NTTIME_hyper(ndr, "bad_password_time", r->bad_password_time);
5164
ndr_print_NTTIME_hyper(ndr, "lockout_time", r->lockout_time);
5165
ndr_print_uint32(ndr, "bad_pwd_count", r->bad_pwd_count);
5166
ndr_print_uint32(ndr, "pwd_history_len", r->pwd_history_len);
5167
ndr_print_ptr(ndr, "pwd_history", r->pwd_history);
5169
if (r->pwd_history) {
5170
ndr->print(ndr, "%s: ARRAY(%d)", "pwd_history", (int)r->pwd_history_len);
5172
for (cntr_pwd_history_1=0;cntr_pwd_history_1<r->pwd_history_len;cntr_pwd_history_1++) {
5173
ndr_print_samr_ValidationBlob(ndr, "pwd_history", &r->pwd_history[cntr_pwd_history_1]);
5181
static enum ndr_err_code ndr_push_samr_ValidatePasswordRepCtr(struct ndr_push *ndr, int ndr_flags, const struct samr_ValidatePasswordRepCtr *r)
5183
if (ndr_flags & NDR_SCALARS) {
5184
NDR_CHECK(ndr_push_align(ndr, 8));
5185
NDR_CHECK(ndr_push_samr_ValidatePasswordInfo(ndr, NDR_SCALARS, &r->info));
5186
NDR_CHECK(ndr_push_samr_ValidationStatus(ndr, NDR_SCALARS, r->status));
5187
NDR_CHECK(ndr_push_trailer_align(ndr, 8));
5189
if (ndr_flags & NDR_BUFFERS) {
5190
NDR_CHECK(ndr_push_samr_ValidatePasswordInfo(ndr, NDR_BUFFERS, &r->info));
5192
return NDR_ERR_SUCCESS;
5195
static enum ndr_err_code ndr_pull_samr_ValidatePasswordRepCtr(struct ndr_pull *ndr, int ndr_flags, struct samr_ValidatePasswordRepCtr *r)
5197
if (ndr_flags & NDR_SCALARS) {
5198
NDR_CHECK(ndr_pull_align(ndr, 8));
5199
NDR_CHECK(ndr_pull_samr_ValidatePasswordInfo(ndr, NDR_SCALARS, &r->info));
5200
NDR_CHECK(ndr_pull_samr_ValidationStatus(ndr, NDR_SCALARS, &r->status));
5201
NDR_CHECK(ndr_pull_trailer_align(ndr, 8));
5203
if (ndr_flags & NDR_BUFFERS) {
5204
NDR_CHECK(ndr_pull_samr_ValidatePasswordInfo(ndr, NDR_BUFFERS, &r->info));
5206
return NDR_ERR_SUCCESS;
5209
_PUBLIC_ void ndr_print_samr_ValidatePasswordRepCtr(struct ndr_print *ndr, const char *name, const struct samr_ValidatePasswordRepCtr *r)
5211
ndr_print_struct(ndr, name, "samr_ValidatePasswordRepCtr");
5212
if (r == NULL) { ndr_print_null(ndr); return; }
5214
ndr_print_samr_ValidatePasswordInfo(ndr, "info", &r->info);
5215
ndr_print_samr_ValidationStatus(ndr, "status", r->status);
5219
static enum ndr_err_code ndr_push_samr_ValidatePasswordRep(struct ndr_push *ndr, int ndr_flags, const union samr_ValidatePasswordRep *r)
5221
if (ndr_flags & NDR_SCALARS) {
5222
uint32_t level = ndr_push_get_switch_value(ndr, r);
5223
NDR_CHECK(ndr_push_union_align(ndr, 8));
5224
NDR_CHECK(ndr_push_uint16(ndr, NDR_SCALARS, level));
5225
NDR_CHECK(ndr_push_union_align(ndr, 8));
5228
NDR_CHECK(ndr_push_samr_ValidatePasswordRepCtr(ndr, NDR_SCALARS, &r->ctr1));
5232
NDR_CHECK(ndr_push_samr_ValidatePasswordRepCtr(ndr, NDR_SCALARS, &r->ctr2));
5236
NDR_CHECK(ndr_push_samr_ValidatePasswordRepCtr(ndr, NDR_SCALARS, &r->ctr3));
5240
return ndr_push_error(ndr, NDR_ERR_BAD_SWITCH, "Bad switch value %u at %s", level, __location__);
5243
if (ndr_flags & NDR_BUFFERS) {
5244
uint32_t level = ndr_push_get_switch_value(ndr, r);
5247
NDR_CHECK(ndr_push_samr_ValidatePasswordRepCtr(ndr, NDR_BUFFERS, &r->ctr1));
5251
NDR_CHECK(ndr_push_samr_ValidatePasswordRepCtr(ndr, NDR_BUFFERS, &r->ctr2));
5255
NDR_CHECK(ndr_push_samr_ValidatePasswordRepCtr(ndr, NDR_BUFFERS, &r->ctr3));
5259
return ndr_push_error(ndr, NDR_ERR_BAD_SWITCH, "Bad switch value %u at %s", level, __location__);
5262
return NDR_ERR_SUCCESS;
5265
static enum ndr_err_code ndr_pull_samr_ValidatePasswordRep(struct ndr_pull *ndr, int ndr_flags, union samr_ValidatePasswordRep *r)
5269
level = ndr_pull_get_switch_value(ndr, r);
5270
if (ndr_flags & NDR_SCALARS) {
5271
NDR_CHECK(ndr_pull_union_align(ndr, 8));
5272
NDR_CHECK(ndr_pull_uint16(ndr, NDR_SCALARS, &_level));
5273
if (_level != level) {
5274
return ndr_pull_error(ndr, NDR_ERR_BAD_SWITCH, "Bad switch value %u for r at %s", _level, __location__);
5276
NDR_CHECK(ndr_pull_union_align(ndr, 8));
5279
NDR_CHECK(ndr_pull_samr_ValidatePasswordRepCtr(ndr, NDR_SCALARS, &r->ctr1));
5283
NDR_CHECK(ndr_pull_samr_ValidatePasswordRepCtr(ndr, NDR_SCALARS, &r->ctr2));
5287
NDR_CHECK(ndr_pull_samr_ValidatePasswordRepCtr(ndr, NDR_SCALARS, &r->ctr3));
5291
return ndr_pull_error(ndr, NDR_ERR_BAD_SWITCH, "Bad switch value %u at %s", level, __location__);
5294
if (ndr_flags & NDR_BUFFERS) {
5297
NDR_CHECK(ndr_pull_samr_ValidatePasswordRepCtr(ndr, NDR_BUFFERS, &r->ctr1));
5301
NDR_CHECK(ndr_pull_samr_ValidatePasswordRepCtr(ndr, NDR_BUFFERS, &r->ctr2));
5305
NDR_CHECK(ndr_pull_samr_ValidatePasswordRepCtr(ndr, NDR_BUFFERS, &r->ctr3));
5309
return ndr_pull_error(ndr, NDR_ERR_BAD_SWITCH, "Bad switch value %u at %s", level, __location__);
5312
return NDR_ERR_SUCCESS;
5315
_PUBLIC_ void ndr_print_samr_ValidatePasswordRep(struct ndr_print *ndr, const char *name, const union samr_ValidatePasswordRep *r)
5318
level = ndr_print_get_switch_value(ndr, r);
5319
ndr_print_union(ndr, name, level, "samr_ValidatePasswordRep");
5322
ndr_print_samr_ValidatePasswordRepCtr(ndr, "ctr1", &r->ctr1);
5326
ndr_print_samr_ValidatePasswordRepCtr(ndr, "ctr2", &r->ctr2);
5330
ndr_print_samr_ValidatePasswordRepCtr(ndr, "ctr3", &r->ctr3);
5334
ndr_print_bad_level(ndr, name, level);
5338
static enum ndr_err_code ndr_push_samr_ValidatePasswordReq3(struct ndr_push *ndr, int ndr_flags, const struct samr_ValidatePasswordReq3 *r)
5340
if (ndr_flags & NDR_SCALARS) {
5341
NDR_CHECK(ndr_push_align(ndr, 8));
5342
NDR_CHECK(ndr_push_samr_ValidatePasswordInfo(ndr, NDR_SCALARS, &r->info));
5343
NDR_CHECK(ndr_push_lsa_StringLarge(ndr, NDR_SCALARS, &r->password));
5344
NDR_CHECK(ndr_push_lsa_StringLarge(ndr, NDR_SCALARS, &r->account));
5345
NDR_CHECK(ndr_push_samr_ValidationBlob(ndr, NDR_SCALARS, &r->hash));
5346
NDR_CHECK(ndr_push_uint8(ndr, NDR_SCALARS, r->pwd_must_change_at_next_logon));
5347
NDR_CHECK(ndr_push_uint8(ndr, NDR_SCALARS, r->clear_lockout));
5348
NDR_CHECK(ndr_push_trailer_align(ndr, 8));
5350
if (ndr_flags & NDR_BUFFERS) {
5351
NDR_CHECK(ndr_push_samr_ValidatePasswordInfo(ndr, NDR_BUFFERS, &r->info));
5352
NDR_CHECK(ndr_push_lsa_StringLarge(ndr, NDR_BUFFERS, &r->password));
5353
NDR_CHECK(ndr_push_lsa_StringLarge(ndr, NDR_BUFFERS, &r->account));
5354
NDR_CHECK(ndr_push_samr_ValidationBlob(ndr, NDR_BUFFERS, &r->hash));
5356
return NDR_ERR_SUCCESS;
5359
static enum ndr_err_code ndr_pull_samr_ValidatePasswordReq3(struct ndr_pull *ndr, int ndr_flags, struct samr_ValidatePasswordReq3 *r)
5361
if (ndr_flags & NDR_SCALARS) {
5362
NDR_CHECK(ndr_pull_align(ndr, 8));
5363
NDR_CHECK(ndr_pull_samr_ValidatePasswordInfo(ndr, NDR_SCALARS, &r->info));
5364
NDR_CHECK(ndr_pull_lsa_StringLarge(ndr, NDR_SCALARS, &r->password));
5365
NDR_CHECK(ndr_pull_lsa_StringLarge(ndr, NDR_SCALARS, &r->account));
5366
NDR_CHECK(ndr_pull_samr_ValidationBlob(ndr, NDR_SCALARS, &r->hash));
5367
NDR_CHECK(ndr_pull_uint8(ndr, NDR_SCALARS, &r->pwd_must_change_at_next_logon));
5368
NDR_CHECK(ndr_pull_uint8(ndr, NDR_SCALARS, &r->clear_lockout));
5369
NDR_CHECK(ndr_pull_trailer_align(ndr, 8));
5371
if (ndr_flags & NDR_BUFFERS) {
5372
NDR_CHECK(ndr_pull_samr_ValidatePasswordInfo(ndr, NDR_BUFFERS, &r->info));
5373
NDR_CHECK(ndr_pull_lsa_StringLarge(ndr, NDR_BUFFERS, &r->password));
5374
NDR_CHECK(ndr_pull_lsa_StringLarge(ndr, NDR_BUFFERS, &r->account));
5375
NDR_CHECK(ndr_pull_samr_ValidationBlob(ndr, NDR_BUFFERS, &r->hash));
5377
return NDR_ERR_SUCCESS;
5380
_PUBLIC_ void ndr_print_samr_ValidatePasswordReq3(struct ndr_print *ndr, const char *name, const struct samr_ValidatePasswordReq3 *r)
5382
ndr_print_struct(ndr, name, "samr_ValidatePasswordReq3");
5383
if (r == NULL) { ndr_print_null(ndr); return; }
5385
ndr_print_samr_ValidatePasswordInfo(ndr, "info", &r->info);
5386
ndr_print_lsa_StringLarge(ndr, "password", &r->password);
5387
ndr_print_lsa_StringLarge(ndr, "account", &r->account);
5388
ndr_print_samr_ValidationBlob(ndr, "hash", &r->hash);
5389
ndr_print_uint8(ndr, "pwd_must_change_at_next_logon", r->pwd_must_change_at_next_logon);
5390
ndr_print_uint8(ndr, "clear_lockout", r->clear_lockout);
5394
static enum ndr_err_code ndr_push_samr_ValidatePasswordReq2(struct ndr_push *ndr, int ndr_flags, const struct samr_ValidatePasswordReq2 *r)
5396
if (ndr_flags & NDR_SCALARS) {
5397
NDR_CHECK(ndr_push_align(ndr, 8));
5398
NDR_CHECK(ndr_push_samr_ValidatePasswordInfo(ndr, NDR_SCALARS, &r->info));
5399
NDR_CHECK(ndr_push_lsa_StringLarge(ndr, NDR_SCALARS, &r->password));
5400
NDR_CHECK(ndr_push_lsa_StringLarge(ndr, NDR_SCALARS, &r->account));
5401
NDR_CHECK(ndr_push_samr_ValidationBlob(ndr, NDR_SCALARS, &r->hash));
5402
NDR_CHECK(ndr_push_uint8(ndr, NDR_SCALARS, r->password_matched));
5403
NDR_CHECK(ndr_push_trailer_align(ndr, 8));
5405
if (ndr_flags & NDR_BUFFERS) {
5406
NDR_CHECK(ndr_push_samr_ValidatePasswordInfo(ndr, NDR_BUFFERS, &r->info));
5407
NDR_CHECK(ndr_push_lsa_StringLarge(ndr, NDR_BUFFERS, &r->password));
5408
NDR_CHECK(ndr_push_lsa_StringLarge(ndr, NDR_BUFFERS, &r->account));
5409
NDR_CHECK(ndr_push_samr_ValidationBlob(ndr, NDR_BUFFERS, &r->hash));
5411
return NDR_ERR_SUCCESS;
5414
static enum ndr_err_code ndr_pull_samr_ValidatePasswordReq2(struct ndr_pull *ndr, int ndr_flags, struct samr_ValidatePasswordReq2 *r)
5416
if (ndr_flags & NDR_SCALARS) {
5417
NDR_CHECK(ndr_pull_align(ndr, 8));
5418
NDR_CHECK(ndr_pull_samr_ValidatePasswordInfo(ndr, NDR_SCALARS, &r->info));
5419
NDR_CHECK(ndr_pull_lsa_StringLarge(ndr, NDR_SCALARS, &r->password));
5420
NDR_CHECK(ndr_pull_lsa_StringLarge(ndr, NDR_SCALARS, &r->account));
5421
NDR_CHECK(ndr_pull_samr_ValidationBlob(ndr, NDR_SCALARS, &r->hash));
5422
NDR_CHECK(ndr_pull_uint8(ndr, NDR_SCALARS, &r->password_matched));
5423
NDR_CHECK(ndr_pull_trailer_align(ndr, 8));
5425
if (ndr_flags & NDR_BUFFERS) {
5426
NDR_CHECK(ndr_pull_samr_ValidatePasswordInfo(ndr, NDR_BUFFERS, &r->info));
5427
NDR_CHECK(ndr_pull_lsa_StringLarge(ndr, NDR_BUFFERS, &r->password));
5428
NDR_CHECK(ndr_pull_lsa_StringLarge(ndr, NDR_BUFFERS, &r->account));
5429
NDR_CHECK(ndr_pull_samr_ValidationBlob(ndr, NDR_BUFFERS, &r->hash));
5431
return NDR_ERR_SUCCESS;
5434
_PUBLIC_ void ndr_print_samr_ValidatePasswordReq2(struct ndr_print *ndr, const char *name, const struct samr_ValidatePasswordReq2 *r)
5436
ndr_print_struct(ndr, name, "samr_ValidatePasswordReq2");
5437
if (r == NULL) { ndr_print_null(ndr); return; }
5439
ndr_print_samr_ValidatePasswordInfo(ndr, "info", &r->info);
5440
ndr_print_lsa_StringLarge(ndr, "password", &r->password);
5441
ndr_print_lsa_StringLarge(ndr, "account", &r->account);
5442
ndr_print_samr_ValidationBlob(ndr, "hash", &r->hash);
5443
ndr_print_uint8(ndr, "password_matched", r->password_matched);
5447
static enum ndr_err_code ndr_push_samr_ValidatePasswordReq1(struct ndr_push *ndr, int ndr_flags, const struct samr_ValidatePasswordReq1 *r)
5449
if (ndr_flags & NDR_SCALARS) {
5450
NDR_CHECK(ndr_push_align(ndr, 8));
5451
NDR_CHECK(ndr_push_samr_ValidatePasswordInfo(ndr, NDR_SCALARS, &r->info));
5452
NDR_CHECK(ndr_push_uint8(ndr, NDR_SCALARS, r->password_matched));
5453
NDR_CHECK(ndr_push_trailer_align(ndr, 8));
5455
if (ndr_flags & NDR_BUFFERS) {
5456
NDR_CHECK(ndr_push_samr_ValidatePasswordInfo(ndr, NDR_BUFFERS, &r->info));
5458
return NDR_ERR_SUCCESS;
5461
static enum ndr_err_code ndr_pull_samr_ValidatePasswordReq1(struct ndr_pull *ndr, int ndr_flags, struct samr_ValidatePasswordReq1 *r)
5463
if (ndr_flags & NDR_SCALARS) {
5464
NDR_CHECK(ndr_pull_align(ndr, 8));
5465
NDR_CHECK(ndr_pull_samr_ValidatePasswordInfo(ndr, NDR_SCALARS, &r->info));
5466
NDR_CHECK(ndr_pull_uint8(ndr, NDR_SCALARS, &r->password_matched));
5467
NDR_CHECK(ndr_pull_trailer_align(ndr, 8));
5469
if (ndr_flags & NDR_BUFFERS) {
5470
NDR_CHECK(ndr_pull_samr_ValidatePasswordInfo(ndr, NDR_BUFFERS, &r->info));
5472
return NDR_ERR_SUCCESS;
5475
_PUBLIC_ void ndr_print_samr_ValidatePasswordReq1(struct ndr_print *ndr, const char *name, const struct samr_ValidatePasswordReq1 *r)
5477
ndr_print_struct(ndr, name, "samr_ValidatePasswordReq1");
5478
if (r == NULL) { ndr_print_null(ndr); return; }
5480
ndr_print_samr_ValidatePasswordInfo(ndr, "info", &r->info);
5481
ndr_print_uint8(ndr, "password_matched", r->password_matched);
5485
static enum ndr_err_code ndr_push_samr_ValidatePasswordReq(struct ndr_push *ndr, int ndr_flags, const union samr_ValidatePasswordReq *r)
5487
if (ndr_flags & NDR_SCALARS) {
5488
uint32_t level = ndr_push_get_switch_value(ndr, r);
5489
NDR_CHECK(ndr_push_union_align(ndr, 8));
5490
NDR_CHECK(ndr_push_uint16(ndr, NDR_SCALARS, level));
5491
NDR_CHECK(ndr_push_union_align(ndr, 8));
5494
NDR_CHECK(ndr_push_samr_ValidatePasswordReq1(ndr, NDR_SCALARS, &r->req1));
5498
NDR_CHECK(ndr_push_samr_ValidatePasswordReq2(ndr, NDR_SCALARS, &r->req2));
5502
NDR_CHECK(ndr_push_samr_ValidatePasswordReq3(ndr, NDR_SCALARS, &r->req3));
5506
return ndr_push_error(ndr, NDR_ERR_BAD_SWITCH, "Bad switch value %u at %s", level, __location__);
5509
if (ndr_flags & NDR_BUFFERS) {
5510
uint32_t level = ndr_push_get_switch_value(ndr, r);
5513
NDR_CHECK(ndr_push_samr_ValidatePasswordReq1(ndr, NDR_BUFFERS, &r->req1));
5517
NDR_CHECK(ndr_push_samr_ValidatePasswordReq2(ndr, NDR_BUFFERS, &r->req2));
5521
NDR_CHECK(ndr_push_samr_ValidatePasswordReq3(ndr, NDR_BUFFERS, &r->req3));
5525
return ndr_push_error(ndr, NDR_ERR_BAD_SWITCH, "Bad switch value %u at %s", level, __location__);
5528
return NDR_ERR_SUCCESS;
5531
static enum ndr_err_code ndr_pull_samr_ValidatePasswordReq(struct ndr_pull *ndr, int ndr_flags, union samr_ValidatePasswordReq *r)
5535
level = ndr_pull_get_switch_value(ndr, r);
5536
if (ndr_flags & NDR_SCALARS) {
5537
NDR_CHECK(ndr_pull_union_align(ndr, 8));
5538
NDR_CHECK(ndr_pull_uint16(ndr, NDR_SCALARS, &_level));
5539
if (_level != level) {
5540
return ndr_pull_error(ndr, NDR_ERR_BAD_SWITCH, "Bad switch value %u for r at %s", _level, __location__);
5542
NDR_CHECK(ndr_pull_union_align(ndr, 8));
5545
NDR_CHECK(ndr_pull_samr_ValidatePasswordReq1(ndr, NDR_SCALARS, &r->req1));
5549
NDR_CHECK(ndr_pull_samr_ValidatePasswordReq2(ndr, NDR_SCALARS, &r->req2));
5553
NDR_CHECK(ndr_pull_samr_ValidatePasswordReq3(ndr, NDR_SCALARS, &r->req3));
5557
return ndr_pull_error(ndr, NDR_ERR_BAD_SWITCH, "Bad switch value %u at %s", level, __location__);
5560
if (ndr_flags & NDR_BUFFERS) {
5563
NDR_CHECK(ndr_pull_samr_ValidatePasswordReq1(ndr, NDR_BUFFERS, &r->req1));
5567
NDR_CHECK(ndr_pull_samr_ValidatePasswordReq2(ndr, NDR_BUFFERS, &r->req2));
5571
NDR_CHECK(ndr_pull_samr_ValidatePasswordReq3(ndr, NDR_BUFFERS, &r->req3));
5575
return ndr_pull_error(ndr, NDR_ERR_BAD_SWITCH, "Bad switch value %u at %s", level, __location__);
5578
return NDR_ERR_SUCCESS;
5581
_PUBLIC_ void ndr_print_samr_ValidatePasswordReq(struct ndr_print *ndr, const char *name, const union samr_ValidatePasswordReq *r)
5584
level = ndr_print_get_switch_value(ndr, r);
5585
ndr_print_union(ndr, name, level, "samr_ValidatePasswordReq");
5588
ndr_print_samr_ValidatePasswordReq1(ndr, "req1", &r->req1);
5592
ndr_print_samr_ValidatePasswordReq2(ndr, "req2", &r->req2);
5596
ndr_print_samr_ValidatePasswordReq3(ndr, "req3", &r->req3);
5600
ndr_print_bad_level(ndr, name, level);
5604
static enum ndr_err_code ndr_push_samr_Connect(struct ndr_push *ndr, int flags, const struct samr_Connect *r)
5606
if (flags & NDR_IN) {
5607
NDR_CHECK(ndr_push_unique_ptr(ndr, r->in.system_name));
5608
if (r->in.system_name) {
5609
NDR_CHECK(ndr_push_uint16(ndr, NDR_SCALARS, *r->in.system_name));
5611
NDR_CHECK(ndr_push_samr_ConnectAccessMask(ndr, NDR_SCALARS, r->in.access_mask));
5613
if (flags & NDR_OUT) {
5614
if (r->out.connect_handle == NULL) {
5615
return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
5617
NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS, r->out.connect_handle));
5618
NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
5620
return NDR_ERR_SUCCESS;
5623
static enum ndr_err_code ndr_pull_samr_Connect(struct ndr_pull *ndr, int flags, struct samr_Connect *r)
5625
uint32_t _ptr_system_name;
5626
TALLOC_CTX *_mem_save_system_name_0;
5627
TALLOC_CTX *_mem_save_connect_handle_0;
5628
if (flags & NDR_IN) {
5629
ZERO_STRUCT(r->out);
5631
NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_system_name));
5632
if (_ptr_system_name) {
5633
NDR_PULL_ALLOC(ndr, r->in.system_name);
5635
r->in.system_name = NULL;
5637
if (r->in.system_name) {
5638
_mem_save_system_name_0 = NDR_PULL_GET_MEM_CTX(ndr);
5639
NDR_PULL_SET_MEM_CTX(ndr, r->in.system_name, 0);
5640
NDR_CHECK(ndr_pull_uint16(ndr, NDR_SCALARS, r->in.system_name));
5641
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_system_name_0, 0);
5643
NDR_CHECK(ndr_pull_samr_ConnectAccessMask(ndr, NDR_SCALARS, &r->in.access_mask));
5644
NDR_PULL_ALLOC(ndr, r->out.connect_handle);
5645
ZERO_STRUCTP(r->out.connect_handle);
5647
if (flags & NDR_OUT) {
5648
if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
5649
NDR_PULL_ALLOC(ndr, r->out.connect_handle);
5651
_mem_save_connect_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
5652
NDR_PULL_SET_MEM_CTX(ndr, r->out.connect_handle, LIBNDR_FLAG_REF_ALLOC);
5653
NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS, r->out.connect_handle));
5654
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_connect_handle_0, LIBNDR_FLAG_REF_ALLOC);
5655
NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
5657
return NDR_ERR_SUCCESS;
5660
_PUBLIC_ void ndr_print_samr_Connect(struct ndr_print *ndr, const char *name, int flags, const struct samr_Connect *r)
5662
ndr_print_struct(ndr, name, "samr_Connect");
5663
if (r == NULL) { ndr_print_null(ndr); return; }
5665
if (flags & NDR_SET_VALUES) {
5666
ndr->flags |= LIBNDR_PRINT_SET_VALUES;
5668
if (flags & NDR_IN) {
5669
ndr_print_struct(ndr, "in", "samr_Connect");
5671
ndr_print_ptr(ndr, "system_name", r->in.system_name);
5673
if (r->in.system_name) {
5674
ndr_print_uint16(ndr, "system_name", *r->in.system_name);
5677
ndr_print_samr_ConnectAccessMask(ndr, "access_mask", r->in.access_mask);
5680
if (flags & NDR_OUT) {
5681
ndr_print_struct(ndr, "out", "samr_Connect");
5683
ndr_print_ptr(ndr, "connect_handle", r->out.connect_handle);
5685
ndr_print_policy_handle(ndr, "connect_handle", r->out.connect_handle);
5687
ndr_print_NTSTATUS(ndr, "result", r->out.result);
5693
_PUBLIC_ enum ndr_err_code ndr_push_samr_Close(struct ndr_push *ndr, int flags, const struct samr_Close *r)
5695
if (flags & NDR_IN) {
5696
if (r->in.handle == NULL) {
5697
return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
5699
NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS, r->in.handle));
5701
if (flags & NDR_OUT) {
5702
if (r->out.handle == NULL) {
5703
return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
5705
NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS, r->out.handle));
5706
NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
5708
return NDR_ERR_SUCCESS;
5711
_PUBLIC_ enum ndr_err_code ndr_pull_samr_Close(struct ndr_pull *ndr, int flags, struct samr_Close *r)
5713
TALLOC_CTX *_mem_save_handle_0;
5714
if (flags & NDR_IN) {
5715
ZERO_STRUCT(r->out);
5717
if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
5718
NDR_PULL_ALLOC(ndr, r->in.handle);
5720
_mem_save_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
5721
NDR_PULL_SET_MEM_CTX(ndr, r->in.handle, LIBNDR_FLAG_REF_ALLOC);
5722
NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS, r->in.handle));
5723
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_handle_0, LIBNDR_FLAG_REF_ALLOC);
5724
NDR_PULL_ALLOC(ndr, r->out.handle);
5725
*r->out.handle = *r->in.handle;
5727
if (flags & NDR_OUT) {
5728
if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
5729
NDR_PULL_ALLOC(ndr, r->out.handle);
5731
_mem_save_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
5732
NDR_PULL_SET_MEM_CTX(ndr, r->out.handle, LIBNDR_FLAG_REF_ALLOC);
5733
NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS, r->out.handle));
5734
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_handle_0, LIBNDR_FLAG_REF_ALLOC);
5735
NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
5737
return NDR_ERR_SUCCESS;
5740
_PUBLIC_ void ndr_print_samr_Close(struct ndr_print *ndr, const char *name, int flags, const struct samr_Close *r)
5742
ndr_print_struct(ndr, name, "samr_Close");
5743
if (r == NULL) { ndr_print_null(ndr); return; }
5745
if (flags & NDR_SET_VALUES) {
5746
ndr->flags |= LIBNDR_PRINT_SET_VALUES;
5748
if (flags & NDR_IN) {
5749
ndr_print_struct(ndr, "in", "samr_Close");
5751
ndr_print_ptr(ndr, "handle", r->in.handle);
5753
ndr_print_policy_handle(ndr, "handle", r->in.handle);
5757
if (flags & NDR_OUT) {
5758
ndr_print_struct(ndr, "out", "samr_Close");
5760
ndr_print_ptr(ndr, "handle", r->out.handle);
5762
ndr_print_policy_handle(ndr, "handle", r->out.handle);
5764
ndr_print_NTSTATUS(ndr, "result", r->out.result);
5770
static enum ndr_err_code ndr_push_samr_SetSecurity(struct ndr_push *ndr, int flags, const struct samr_SetSecurity *r)
5772
if (flags & NDR_IN) {
5773
if (r->in.handle == NULL) {
5774
return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
5776
NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS, r->in.handle));
5777
NDR_CHECK(ndr_push_security_secinfo(ndr, NDR_SCALARS, r->in.sec_info));
5778
if (r->in.sdbuf == NULL) {
5779
return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
5781
NDR_CHECK(ndr_push_sec_desc_buf(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.sdbuf));
5783
if (flags & NDR_OUT) {
5784
NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
5786
return NDR_ERR_SUCCESS;
5789
static enum ndr_err_code ndr_pull_samr_SetSecurity(struct ndr_pull *ndr, int flags, struct samr_SetSecurity *r)
5791
TALLOC_CTX *_mem_save_handle_0;
5792
TALLOC_CTX *_mem_save_sdbuf_0;
5793
if (flags & NDR_IN) {
5794
if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
5795
NDR_PULL_ALLOC(ndr, r->in.handle);
5797
_mem_save_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
5798
NDR_PULL_SET_MEM_CTX(ndr, r->in.handle, LIBNDR_FLAG_REF_ALLOC);
5799
NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS, r->in.handle));
5800
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_handle_0, LIBNDR_FLAG_REF_ALLOC);
5801
NDR_CHECK(ndr_pull_security_secinfo(ndr, NDR_SCALARS, &r->in.sec_info));
5802
if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
5803
NDR_PULL_ALLOC(ndr, r->in.sdbuf);
5805
_mem_save_sdbuf_0 = NDR_PULL_GET_MEM_CTX(ndr);
5806
NDR_PULL_SET_MEM_CTX(ndr, r->in.sdbuf, LIBNDR_FLAG_REF_ALLOC);
5807
NDR_CHECK(ndr_pull_sec_desc_buf(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.sdbuf));
5808
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_sdbuf_0, LIBNDR_FLAG_REF_ALLOC);
5810
if (flags & NDR_OUT) {
5811
NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
5813
return NDR_ERR_SUCCESS;
5816
_PUBLIC_ void ndr_print_samr_SetSecurity(struct ndr_print *ndr, const char *name, int flags, const struct samr_SetSecurity *r)
5818
ndr_print_struct(ndr, name, "samr_SetSecurity");
5819
if (r == NULL) { ndr_print_null(ndr); return; }
5821
if (flags & NDR_SET_VALUES) {
5822
ndr->flags |= LIBNDR_PRINT_SET_VALUES;
5824
if (flags & NDR_IN) {
5825
ndr_print_struct(ndr, "in", "samr_SetSecurity");
5827
ndr_print_ptr(ndr, "handle", r->in.handle);
5829
ndr_print_policy_handle(ndr, "handle", r->in.handle);
5831
ndr_print_security_secinfo(ndr, "sec_info", r->in.sec_info);
5832
ndr_print_ptr(ndr, "sdbuf", r->in.sdbuf);
5834
ndr_print_sec_desc_buf(ndr, "sdbuf", r->in.sdbuf);
5838
if (flags & NDR_OUT) {
5839
ndr_print_struct(ndr, "out", "samr_SetSecurity");
5841
ndr_print_NTSTATUS(ndr, "result", r->out.result);
5847
static enum ndr_err_code ndr_push_samr_QuerySecurity(struct ndr_push *ndr, int flags, const struct samr_QuerySecurity *r)
5849
if (flags & NDR_IN) {
5850
if (r->in.handle == NULL) {
5851
return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
5853
NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS, r->in.handle));
5854
NDR_CHECK(ndr_push_security_secinfo(ndr, NDR_SCALARS, r->in.sec_info));
5856
if (flags & NDR_OUT) {
5857
if (r->out.sdbuf == NULL) {
5858
return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
5860
NDR_CHECK(ndr_push_unique_ptr(ndr, *r->out.sdbuf));
5861
if (*r->out.sdbuf) {
5862
NDR_CHECK(ndr_push_sec_desc_buf(ndr, NDR_SCALARS|NDR_BUFFERS, *r->out.sdbuf));
5864
NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
5866
return NDR_ERR_SUCCESS;
5869
static enum ndr_err_code ndr_pull_samr_QuerySecurity(struct ndr_pull *ndr, int flags, struct samr_QuerySecurity *r)
5871
uint32_t _ptr_sdbuf;
5872
TALLOC_CTX *_mem_save_handle_0;
5873
TALLOC_CTX *_mem_save_sdbuf_0;
5874
TALLOC_CTX *_mem_save_sdbuf_1;
5875
if (flags & NDR_IN) {
5876
ZERO_STRUCT(r->out);
5878
if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
5879
NDR_PULL_ALLOC(ndr, r->in.handle);
5881
_mem_save_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
5882
NDR_PULL_SET_MEM_CTX(ndr, r->in.handle, LIBNDR_FLAG_REF_ALLOC);
5883
NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS, r->in.handle));
5884
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_handle_0, LIBNDR_FLAG_REF_ALLOC);
5885
NDR_CHECK(ndr_pull_security_secinfo(ndr, NDR_SCALARS, &r->in.sec_info));
5886
NDR_PULL_ALLOC(ndr, r->out.sdbuf);
5887
ZERO_STRUCTP(r->out.sdbuf);
5889
if (flags & NDR_OUT) {
5890
if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
5891
NDR_PULL_ALLOC(ndr, r->out.sdbuf);
5893
_mem_save_sdbuf_0 = NDR_PULL_GET_MEM_CTX(ndr);
5894
NDR_PULL_SET_MEM_CTX(ndr, r->out.sdbuf, LIBNDR_FLAG_REF_ALLOC);
5895
NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_sdbuf));
5897
NDR_PULL_ALLOC(ndr, *r->out.sdbuf);
5899
*r->out.sdbuf = NULL;
5901
if (*r->out.sdbuf) {
5902
_mem_save_sdbuf_1 = NDR_PULL_GET_MEM_CTX(ndr);
5903
NDR_PULL_SET_MEM_CTX(ndr, *r->out.sdbuf, 0);
5904
NDR_CHECK(ndr_pull_sec_desc_buf(ndr, NDR_SCALARS|NDR_BUFFERS, *r->out.sdbuf));
5905
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_sdbuf_1, 0);
5907
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_sdbuf_0, LIBNDR_FLAG_REF_ALLOC);
5908
NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
5910
return NDR_ERR_SUCCESS;
5913
_PUBLIC_ void ndr_print_samr_QuerySecurity(struct ndr_print *ndr, const char *name, int flags, const struct samr_QuerySecurity *r)
5915
ndr_print_struct(ndr, name, "samr_QuerySecurity");
5916
if (r == NULL) { ndr_print_null(ndr); return; }
5918
if (flags & NDR_SET_VALUES) {
5919
ndr->flags |= LIBNDR_PRINT_SET_VALUES;
5921
if (flags & NDR_IN) {
5922
ndr_print_struct(ndr, "in", "samr_QuerySecurity");
5924
ndr_print_ptr(ndr, "handle", r->in.handle);
5926
ndr_print_policy_handle(ndr, "handle", r->in.handle);
5928
ndr_print_security_secinfo(ndr, "sec_info", r->in.sec_info);
5931
if (flags & NDR_OUT) {
5932
ndr_print_struct(ndr, "out", "samr_QuerySecurity");
5934
ndr_print_ptr(ndr, "sdbuf", r->out.sdbuf);
5936
ndr_print_ptr(ndr, "sdbuf", *r->out.sdbuf);
5938
if (*r->out.sdbuf) {
5939
ndr_print_sec_desc_buf(ndr, "sdbuf", *r->out.sdbuf);
5943
ndr_print_NTSTATUS(ndr, "result", r->out.result);
5949
static enum ndr_err_code ndr_push_samr_Shutdown(struct ndr_push *ndr, int flags, const struct samr_Shutdown *r)
5951
if (flags & NDR_IN) {
5952
if (r->in.connect_handle == NULL) {
5953
return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
5955
NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS, r->in.connect_handle));
5957
if (flags & NDR_OUT) {
5958
NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
5960
return NDR_ERR_SUCCESS;
5963
static enum ndr_err_code ndr_pull_samr_Shutdown(struct ndr_pull *ndr, int flags, struct samr_Shutdown *r)
5965
TALLOC_CTX *_mem_save_connect_handle_0;
5966
if (flags & NDR_IN) {
5967
if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
5968
NDR_PULL_ALLOC(ndr, r->in.connect_handle);
5970
_mem_save_connect_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
5971
NDR_PULL_SET_MEM_CTX(ndr, r->in.connect_handle, LIBNDR_FLAG_REF_ALLOC);
5972
NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS, r->in.connect_handle));
5973
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_connect_handle_0, LIBNDR_FLAG_REF_ALLOC);
5975
if (flags & NDR_OUT) {
5976
NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
5978
return NDR_ERR_SUCCESS;
5981
_PUBLIC_ void ndr_print_samr_Shutdown(struct ndr_print *ndr, const char *name, int flags, const struct samr_Shutdown *r)
5983
ndr_print_struct(ndr, name, "samr_Shutdown");
5984
if (r == NULL) { ndr_print_null(ndr); return; }
5986
if (flags & NDR_SET_VALUES) {
5987
ndr->flags |= LIBNDR_PRINT_SET_VALUES;
5989
if (flags & NDR_IN) {
5990
ndr_print_struct(ndr, "in", "samr_Shutdown");
5992
ndr_print_ptr(ndr, "connect_handle", r->in.connect_handle);
5994
ndr_print_policy_handle(ndr, "connect_handle", r->in.connect_handle);
5998
if (flags & NDR_OUT) {
5999
ndr_print_struct(ndr, "out", "samr_Shutdown");
6001
ndr_print_NTSTATUS(ndr, "result", r->out.result);
6007
static enum ndr_err_code ndr_push_samr_LookupDomain(struct ndr_push *ndr, int flags, const struct samr_LookupDomain *r)
6009
if (flags & NDR_IN) {
6010
if (r->in.connect_handle == NULL) {
6011
return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
6013
NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS, r->in.connect_handle));
6014
if (r->in.domain_name == NULL) {
6015
return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
6017
NDR_CHECK(ndr_push_lsa_String(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.domain_name));
6019
if (flags & NDR_OUT) {
6020
if (r->out.sid == NULL) {
6021
return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
6023
NDR_CHECK(ndr_push_unique_ptr(ndr, *r->out.sid));
6025
NDR_CHECK(ndr_push_dom_sid2(ndr, NDR_SCALARS|NDR_BUFFERS, *r->out.sid));
6027
NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
6029
return NDR_ERR_SUCCESS;
6032
static enum ndr_err_code ndr_pull_samr_LookupDomain(struct ndr_pull *ndr, int flags, struct samr_LookupDomain *r)
6035
TALLOC_CTX *_mem_save_connect_handle_0;
6036
TALLOC_CTX *_mem_save_domain_name_0;
6037
TALLOC_CTX *_mem_save_sid_0;
6038
TALLOC_CTX *_mem_save_sid_1;
6039
if (flags & NDR_IN) {
6040
ZERO_STRUCT(r->out);
6042
if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
6043
NDR_PULL_ALLOC(ndr, r->in.connect_handle);
6045
_mem_save_connect_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
6046
NDR_PULL_SET_MEM_CTX(ndr, r->in.connect_handle, LIBNDR_FLAG_REF_ALLOC);
6047
NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS, r->in.connect_handle));
6048
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_connect_handle_0, LIBNDR_FLAG_REF_ALLOC);
6049
if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
6050
NDR_PULL_ALLOC(ndr, r->in.domain_name);
6052
_mem_save_domain_name_0 = NDR_PULL_GET_MEM_CTX(ndr);
6053
NDR_PULL_SET_MEM_CTX(ndr, r->in.domain_name, LIBNDR_FLAG_REF_ALLOC);
6054
NDR_CHECK(ndr_pull_lsa_String(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.domain_name));
6055
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_domain_name_0, LIBNDR_FLAG_REF_ALLOC);
6056
NDR_PULL_ALLOC(ndr, r->out.sid);
6057
ZERO_STRUCTP(r->out.sid);
6059
if (flags & NDR_OUT) {
6060
if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
6061
NDR_PULL_ALLOC(ndr, r->out.sid);
6063
_mem_save_sid_0 = NDR_PULL_GET_MEM_CTX(ndr);
6064
NDR_PULL_SET_MEM_CTX(ndr, r->out.sid, LIBNDR_FLAG_REF_ALLOC);
6065
NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_sid));
6067
NDR_PULL_ALLOC(ndr, *r->out.sid);
6072
_mem_save_sid_1 = NDR_PULL_GET_MEM_CTX(ndr);
6073
NDR_PULL_SET_MEM_CTX(ndr, *r->out.sid, 0);
6074
NDR_CHECK(ndr_pull_dom_sid2(ndr, NDR_SCALARS|NDR_BUFFERS, *r->out.sid));
6075
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_sid_1, 0);
6077
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_sid_0, LIBNDR_FLAG_REF_ALLOC);
6078
NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
6080
return NDR_ERR_SUCCESS;
6083
_PUBLIC_ void ndr_print_samr_LookupDomain(struct ndr_print *ndr, const char *name, int flags, const struct samr_LookupDomain *r)
6085
ndr_print_struct(ndr, name, "samr_LookupDomain");
6086
if (r == NULL) { ndr_print_null(ndr); return; }
6088
if (flags & NDR_SET_VALUES) {
6089
ndr->flags |= LIBNDR_PRINT_SET_VALUES;
6091
if (flags & NDR_IN) {
6092
ndr_print_struct(ndr, "in", "samr_LookupDomain");
6094
ndr_print_ptr(ndr, "connect_handle", r->in.connect_handle);
6096
ndr_print_policy_handle(ndr, "connect_handle", r->in.connect_handle);
6098
ndr_print_ptr(ndr, "domain_name", r->in.domain_name);
6100
ndr_print_lsa_String(ndr, "domain_name", r->in.domain_name);
6104
if (flags & NDR_OUT) {
6105
ndr_print_struct(ndr, "out", "samr_LookupDomain");
6107
ndr_print_ptr(ndr, "sid", r->out.sid);
6109
ndr_print_ptr(ndr, "sid", *r->out.sid);
6112
ndr_print_dom_sid2(ndr, "sid", *r->out.sid);
6116
ndr_print_NTSTATUS(ndr, "result", r->out.result);
6122
static enum ndr_err_code ndr_push_samr_EnumDomains(struct ndr_push *ndr, int flags, const struct samr_EnumDomains *r)
6124
if (flags & NDR_IN) {
6125
if (r->in.connect_handle == NULL) {
6126
return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
6128
NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS, r->in.connect_handle));
6129
if (r->in.resume_handle == NULL) {
6130
return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
6132
NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, *r->in.resume_handle));
6133
NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->in.buf_size));
6135
if (flags & NDR_OUT) {
6136
if (r->out.resume_handle == NULL) {
6137
return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
6139
NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, *r->out.resume_handle));
6140
if (r->out.sam == NULL) {
6141
return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
6143
NDR_CHECK(ndr_push_unique_ptr(ndr, *r->out.sam));
6145
NDR_CHECK(ndr_push_samr_SamArray(ndr, NDR_SCALARS|NDR_BUFFERS, *r->out.sam));
6147
if (r->out.num_entries == NULL) {
6148
return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
6150
NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, *r->out.num_entries));
6151
NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
6153
return NDR_ERR_SUCCESS;
6156
static enum ndr_err_code ndr_pull_samr_EnumDomains(struct ndr_pull *ndr, int flags, struct samr_EnumDomains *r)
6159
TALLOC_CTX *_mem_save_connect_handle_0;
6160
TALLOC_CTX *_mem_save_resume_handle_0;
6161
TALLOC_CTX *_mem_save_sam_0;
6162
TALLOC_CTX *_mem_save_sam_1;
6163
TALLOC_CTX *_mem_save_num_entries_0;
6164
if (flags & NDR_IN) {
6165
ZERO_STRUCT(r->out);
6167
if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
6168
NDR_PULL_ALLOC(ndr, r->in.connect_handle);
6170
_mem_save_connect_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
6171
NDR_PULL_SET_MEM_CTX(ndr, r->in.connect_handle, LIBNDR_FLAG_REF_ALLOC);
6172
NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS, r->in.connect_handle));
6173
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_connect_handle_0, LIBNDR_FLAG_REF_ALLOC);
6174
if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
6175
NDR_PULL_ALLOC(ndr, r->in.resume_handle);
6177
_mem_save_resume_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
6178
NDR_PULL_SET_MEM_CTX(ndr, r->in.resume_handle, LIBNDR_FLAG_REF_ALLOC);
6179
NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, r->in.resume_handle));
6180
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_resume_handle_0, LIBNDR_FLAG_REF_ALLOC);
6181
NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->in.buf_size));
6182
NDR_PULL_ALLOC(ndr, r->out.resume_handle);
6183
*r->out.resume_handle = *r->in.resume_handle;
6184
NDR_PULL_ALLOC(ndr, r->out.sam);
6185
ZERO_STRUCTP(r->out.sam);
6186
NDR_PULL_ALLOC(ndr, r->out.num_entries);
6187
ZERO_STRUCTP(r->out.num_entries);
6189
if (flags & NDR_OUT) {
6190
if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
6191
NDR_PULL_ALLOC(ndr, r->out.resume_handle);
6193
_mem_save_resume_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
6194
NDR_PULL_SET_MEM_CTX(ndr, r->out.resume_handle, LIBNDR_FLAG_REF_ALLOC);
6195
NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, r->out.resume_handle));
6196
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_resume_handle_0, LIBNDR_FLAG_REF_ALLOC);
6197
if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
6198
NDR_PULL_ALLOC(ndr, r->out.sam);
6200
_mem_save_sam_0 = NDR_PULL_GET_MEM_CTX(ndr);
6201
NDR_PULL_SET_MEM_CTX(ndr, r->out.sam, LIBNDR_FLAG_REF_ALLOC);
6202
NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_sam));
6204
NDR_PULL_ALLOC(ndr, *r->out.sam);
6209
_mem_save_sam_1 = NDR_PULL_GET_MEM_CTX(ndr);
6210
NDR_PULL_SET_MEM_CTX(ndr, *r->out.sam, 0);
6211
NDR_CHECK(ndr_pull_samr_SamArray(ndr, NDR_SCALARS|NDR_BUFFERS, *r->out.sam));
6212
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_sam_1, 0);
6214
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_sam_0, LIBNDR_FLAG_REF_ALLOC);
6215
if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
6216
NDR_PULL_ALLOC(ndr, r->out.num_entries);
6218
_mem_save_num_entries_0 = NDR_PULL_GET_MEM_CTX(ndr);
6219
NDR_PULL_SET_MEM_CTX(ndr, r->out.num_entries, LIBNDR_FLAG_REF_ALLOC);
6220
NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, r->out.num_entries));
6221
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_num_entries_0, LIBNDR_FLAG_REF_ALLOC);
6222
NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
6224
return NDR_ERR_SUCCESS;
6227
_PUBLIC_ void ndr_print_samr_EnumDomains(struct ndr_print *ndr, const char *name, int flags, const struct samr_EnumDomains *r)
6229
ndr_print_struct(ndr, name, "samr_EnumDomains");
6230
if (r == NULL) { ndr_print_null(ndr); return; }
6232
if (flags & NDR_SET_VALUES) {
6233
ndr->flags |= LIBNDR_PRINT_SET_VALUES;
6235
if (flags & NDR_IN) {
6236
ndr_print_struct(ndr, "in", "samr_EnumDomains");
6238
ndr_print_ptr(ndr, "connect_handle", r->in.connect_handle);
6240
ndr_print_policy_handle(ndr, "connect_handle", r->in.connect_handle);
6242
ndr_print_ptr(ndr, "resume_handle", r->in.resume_handle);
6244
ndr_print_uint32(ndr, "resume_handle", *r->in.resume_handle);
6246
ndr_print_uint32(ndr, "buf_size", r->in.buf_size);
6249
if (flags & NDR_OUT) {
6250
ndr_print_struct(ndr, "out", "samr_EnumDomains");
6252
ndr_print_ptr(ndr, "resume_handle", r->out.resume_handle);
6254
ndr_print_uint32(ndr, "resume_handle", *r->out.resume_handle);
6256
ndr_print_ptr(ndr, "sam", r->out.sam);
6258
ndr_print_ptr(ndr, "sam", *r->out.sam);
6261
ndr_print_samr_SamArray(ndr, "sam", *r->out.sam);
6265
ndr_print_ptr(ndr, "num_entries", r->out.num_entries);
6267
ndr_print_uint32(ndr, "num_entries", *r->out.num_entries);
6269
ndr_print_NTSTATUS(ndr, "result", r->out.result);
6275
_PUBLIC_ enum ndr_err_code ndr_push_samr_OpenDomain(struct ndr_push *ndr, int flags, const struct samr_OpenDomain *r)
6277
if (flags & NDR_IN) {
6278
if (r->in.connect_handle == NULL) {
6279
return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
6281
NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS, r->in.connect_handle));
6282
NDR_CHECK(ndr_push_samr_DomainAccessMask(ndr, NDR_SCALARS, r->in.access_mask));
6283
if (r->in.sid == NULL) {
6284
return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
6286
NDR_CHECK(ndr_push_dom_sid2(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.sid));
6288
if (flags & NDR_OUT) {
6289
if (r->out.domain_handle == NULL) {
6290
return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
6292
NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS, r->out.domain_handle));
6293
NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
6295
return NDR_ERR_SUCCESS;
6298
_PUBLIC_ enum ndr_err_code ndr_pull_samr_OpenDomain(struct ndr_pull *ndr, int flags, struct samr_OpenDomain *r)
6300
TALLOC_CTX *_mem_save_connect_handle_0;
6301
TALLOC_CTX *_mem_save_sid_0;
6302
TALLOC_CTX *_mem_save_domain_handle_0;
6303
if (flags & NDR_IN) {
6304
ZERO_STRUCT(r->out);
6306
if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
6307
NDR_PULL_ALLOC(ndr, r->in.connect_handle);
6309
_mem_save_connect_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
6310
NDR_PULL_SET_MEM_CTX(ndr, r->in.connect_handle, LIBNDR_FLAG_REF_ALLOC);
6311
NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS, r->in.connect_handle));
6312
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_connect_handle_0, LIBNDR_FLAG_REF_ALLOC);
6313
NDR_CHECK(ndr_pull_samr_DomainAccessMask(ndr, NDR_SCALARS, &r->in.access_mask));
6314
if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
6315
NDR_PULL_ALLOC(ndr, r->in.sid);
6317
_mem_save_sid_0 = NDR_PULL_GET_MEM_CTX(ndr);
6318
NDR_PULL_SET_MEM_CTX(ndr, r->in.sid, LIBNDR_FLAG_REF_ALLOC);
6319
NDR_CHECK(ndr_pull_dom_sid2(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.sid));
6320
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_sid_0, LIBNDR_FLAG_REF_ALLOC);
6321
NDR_PULL_ALLOC(ndr, r->out.domain_handle);
6322
ZERO_STRUCTP(r->out.domain_handle);
6324
if (flags & NDR_OUT) {
6325
if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
6326
NDR_PULL_ALLOC(ndr, r->out.domain_handle);
6328
_mem_save_domain_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
6329
NDR_PULL_SET_MEM_CTX(ndr, r->out.domain_handle, LIBNDR_FLAG_REF_ALLOC);
6330
NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS, r->out.domain_handle));
6331
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_domain_handle_0, LIBNDR_FLAG_REF_ALLOC);
6332
NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
6334
return NDR_ERR_SUCCESS;
6337
_PUBLIC_ void ndr_print_samr_OpenDomain(struct ndr_print *ndr, const char *name, int flags, const struct samr_OpenDomain *r)
6339
ndr_print_struct(ndr, name, "samr_OpenDomain");
6340
if (r == NULL) { ndr_print_null(ndr); return; }
6342
if (flags & NDR_SET_VALUES) {
6343
ndr->flags |= LIBNDR_PRINT_SET_VALUES;
6345
if (flags & NDR_IN) {
6346
ndr_print_struct(ndr, "in", "samr_OpenDomain");
6348
ndr_print_ptr(ndr, "connect_handle", r->in.connect_handle);
6350
ndr_print_policy_handle(ndr, "connect_handle", r->in.connect_handle);
6352
ndr_print_samr_DomainAccessMask(ndr, "access_mask", r->in.access_mask);
6353
ndr_print_ptr(ndr, "sid", r->in.sid);
6355
ndr_print_dom_sid2(ndr, "sid", r->in.sid);
6359
if (flags & NDR_OUT) {
6360
ndr_print_struct(ndr, "out", "samr_OpenDomain");
6362
ndr_print_ptr(ndr, "domain_handle", r->out.domain_handle);
6364
ndr_print_policy_handle(ndr, "domain_handle", r->out.domain_handle);
6366
ndr_print_NTSTATUS(ndr, "result", r->out.result);
6372
static enum ndr_err_code ndr_push_samr_QueryDomainInfo(struct ndr_push *ndr, int flags, const struct samr_QueryDomainInfo *r)
6374
if (flags & NDR_IN) {
6375
if (r->in.domain_handle == NULL) {
6376
return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
6378
NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS, r->in.domain_handle));
6379
NDR_CHECK(ndr_push_samr_DomainInfoClass(ndr, NDR_SCALARS, r->in.level));
6381
if (flags & NDR_OUT) {
6382
if (r->out.info == NULL) {
6383
return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
6385
NDR_CHECK(ndr_push_unique_ptr(ndr, *r->out.info));
6387
NDR_CHECK(ndr_push_set_switch_value(ndr, *r->out.info, r->in.level));
6388
NDR_CHECK(ndr_push_samr_DomainInfo(ndr, NDR_SCALARS|NDR_BUFFERS, *r->out.info));
6390
NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
6392
return NDR_ERR_SUCCESS;
6395
static enum ndr_err_code ndr_pull_samr_QueryDomainInfo(struct ndr_pull *ndr, int flags, struct samr_QueryDomainInfo *r)
6398
TALLOC_CTX *_mem_save_domain_handle_0;
6399
TALLOC_CTX *_mem_save_info_0;
6400
TALLOC_CTX *_mem_save_info_1;
6401
if (flags & NDR_IN) {
6402
ZERO_STRUCT(r->out);
6404
if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
6405
NDR_PULL_ALLOC(ndr, r->in.domain_handle);
6407
_mem_save_domain_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
6408
NDR_PULL_SET_MEM_CTX(ndr, r->in.domain_handle, LIBNDR_FLAG_REF_ALLOC);
6409
NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS, r->in.domain_handle));
6410
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_domain_handle_0, LIBNDR_FLAG_REF_ALLOC);
6411
NDR_CHECK(ndr_pull_samr_DomainInfoClass(ndr, NDR_SCALARS, &r->in.level));
6412
NDR_PULL_ALLOC(ndr, r->out.info);
6413
ZERO_STRUCTP(r->out.info);
6415
if (flags & NDR_OUT) {
6416
if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
6417
NDR_PULL_ALLOC(ndr, r->out.info);
6419
_mem_save_info_0 = NDR_PULL_GET_MEM_CTX(ndr);
6420
NDR_PULL_SET_MEM_CTX(ndr, r->out.info, LIBNDR_FLAG_REF_ALLOC);
6421
NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_info));
6423
NDR_PULL_ALLOC(ndr, *r->out.info);
6425
*r->out.info = NULL;
6428
_mem_save_info_1 = NDR_PULL_GET_MEM_CTX(ndr);
6429
NDR_PULL_SET_MEM_CTX(ndr, *r->out.info, 0);
6430
NDR_CHECK(ndr_pull_set_switch_value(ndr, *r->out.info, r->in.level));
6431
NDR_CHECK(ndr_pull_samr_DomainInfo(ndr, NDR_SCALARS|NDR_BUFFERS, *r->out.info));
6432
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_info_1, 0);
6434
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_info_0, LIBNDR_FLAG_REF_ALLOC);
6435
NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
6437
return NDR_ERR_SUCCESS;
6440
_PUBLIC_ void ndr_print_samr_QueryDomainInfo(struct ndr_print *ndr, const char *name, int flags, const struct samr_QueryDomainInfo *r)
6442
ndr_print_struct(ndr, name, "samr_QueryDomainInfo");
6443
if (r == NULL) { ndr_print_null(ndr); return; }
6445
if (flags & NDR_SET_VALUES) {
6446
ndr->flags |= LIBNDR_PRINT_SET_VALUES;
6448
if (flags & NDR_IN) {
6449
ndr_print_struct(ndr, "in", "samr_QueryDomainInfo");
6451
ndr_print_ptr(ndr, "domain_handle", r->in.domain_handle);
6453
ndr_print_policy_handle(ndr, "domain_handle", r->in.domain_handle);
6455
ndr_print_samr_DomainInfoClass(ndr, "level", r->in.level);
6458
if (flags & NDR_OUT) {
6459
ndr_print_struct(ndr, "out", "samr_QueryDomainInfo");
6461
ndr_print_ptr(ndr, "info", r->out.info);
6463
ndr_print_ptr(ndr, "info", *r->out.info);
6466
ndr_print_set_switch_value(ndr, *r->out.info, r->in.level);
6467
ndr_print_samr_DomainInfo(ndr, "info", *r->out.info);
6471
ndr_print_NTSTATUS(ndr, "result", r->out.result);
6477
static enum ndr_err_code ndr_push_samr_SetDomainInfo(struct ndr_push *ndr, int flags, const struct samr_SetDomainInfo *r)
6479
if (flags & NDR_IN) {
6480
if (r->in.domain_handle == NULL) {
6481
return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
6483
NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS, r->in.domain_handle));
6484
NDR_CHECK(ndr_push_samr_DomainInfoClass(ndr, NDR_SCALARS, r->in.level));
6485
if (r->in.info == NULL) {
6486
return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
6488
NDR_CHECK(ndr_push_set_switch_value(ndr, r->in.info, r->in.level));
6489
NDR_CHECK(ndr_push_samr_DomainInfo(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.info));
6491
if (flags & NDR_OUT) {
6492
NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
6494
return NDR_ERR_SUCCESS;
6497
static enum ndr_err_code ndr_pull_samr_SetDomainInfo(struct ndr_pull *ndr, int flags, struct samr_SetDomainInfo *r)
6499
TALLOC_CTX *_mem_save_domain_handle_0;
6500
TALLOC_CTX *_mem_save_info_0;
6501
if (flags & NDR_IN) {
6502
if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
6503
NDR_PULL_ALLOC(ndr, r->in.domain_handle);
6505
_mem_save_domain_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
6506
NDR_PULL_SET_MEM_CTX(ndr, r->in.domain_handle, LIBNDR_FLAG_REF_ALLOC);
6507
NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS, r->in.domain_handle));
6508
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_domain_handle_0, LIBNDR_FLAG_REF_ALLOC);
6509
NDR_CHECK(ndr_pull_samr_DomainInfoClass(ndr, NDR_SCALARS, &r->in.level));
6510
if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
6511
NDR_PULL_ALLOC(ndr, r->in.info);
6513
_mem_save_info_0 = NDR_PULL_GET_MEM_CTX(ndr);
6514
NDR_PULL_SET_MEM_CTX(ndr, r->in.info, LIBNDR_FLAG_REF_ALLOC);
6515
NDR_CHECK(ndr_pull_set_switch_value(ndr, r->in.info, r->in.level));
6516
NDR_CHECK(ndr_pull_samr_DomainInfo(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.info));
6517
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_info_0, LIBNDR_FLAG_REF_ALLOC);
6519
if (flags & NDR_OUT) {
6520
NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
6522
return NDR_ERR_SUCCESS;
6525
_PUBLIC_ void ndr_print_samr_SetDomainInfo(struct ndr_print *ndr, const char *name, int flags, const struct samr_SetDomainInfo *r)
6527
ndr_print_struct(ndr, name, "samr_SetDomainInfo");
6528
if (r == NULL) { ndr_print_null(ndr); return; }
6530
if (flags & NDR_SET_VALUES) {
6531
ndr->flags |= LIBNDR_PRINT_SET_VALUES;
6533
if (flags & NDR_IN) {
6534
ndr_print_struct(ndr, "in", "samr_SetDomainInfo");
6536
ndr_print_ptr(ndr, "domain_handle", r->in.domain_handle);
6538
ndr_print_policy_handle(ndr, "domain_handle", r->in.domain_handle);
6540
ndr_print_samr_DomainInfoClass(ndr, "level", r->in.level);
6541
ndr_print_ptr(ndr, "info", r->in.info);
6543
ndr_print_set_switch_value(ndr, r->in.info, r->in.level);
6544
ndr_print_samr_DomainInfo(ndr, "info", r->in.info);
6548
if (flags & NDR_OUT) {
6549
ndr_print_struct(ndr, "out", "samr_SetDomainInfo");
6551
ndr_print_NTSTATUS(ndr, "result", r->out.result);
6557
static enum ndr_err_code ndr_push_samr_CreateDomainGroup(struct ndr_push *ndr, int flags, const struct samr_CreateDomainGroup *r)
6559
if (flags & NDR_IN) {
6560
if (r->in.domain_handle == NULL) {
6561
return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
6563
NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS, r->in.domain_handle));
6564
if (r->in.name == NULL) {
6565
return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
6567
NDR_CHECK(ndr_push_lsa_String(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.name));
6568
NDR_CHECK(ndr_push_samr_GroupAccessMask(ndr, NDR_SCALARS, r->in.access_mask));
6570
if (flags & NDR_OUT) {
6571
if (r->out.group_handle == NULL) {
6572
return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
6574
NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS, r->out.group_handle));
6575
if (r->out.rid == NULL) {
6576
return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
6578
NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, *r->out.rid));
6579
NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
6581
return NDR_ERR_SUCCESS;
6584
static enum ndr_err_code ndr_pull_samr_CreateDomainGroup(struct ndr_pull *ndr, int flags, struct samr_CreateDomainGroup *r)
6586
TALLOC_CTX *_mem_save_domain_handle_0;
6587
TALLOC_CTX *_mem_save_name_0;
6588
TALLOC_CTX *_mem_save_group_handle_0;
6589
TALLOC_CTX *_mem_save_rid_0;
6590
if (flags & NDR_IN) {
6591
ZERO_STRUCT(r->out);
6593
if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
6594
NDR_PULL_ALLOC(ndr, r->in.domain_handle);
6596
_mem_save_domain_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
6597
NDR_PULL_SET_MEM_CTX(ndr, r->in.domain_handle, LIBNDR_FLAG_REF_ALLOC);
6598
NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS, r->in.domain_handle));
6599
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_domain_handle_0, LIBNDR_FLAG_REF_ALLOC);
6600
if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
6601
NDR_PULL_ALLOC(ndr, r->in.name);
6603
_mem_save_name_0 = NDR_PULL_GET_MEM_CTX(ndr);
6604
NDR_PULL_SET_MEM_CTX(ndr, r->in.name, LIBNDR_FLAG_REF_ALLOC);
6605
NDR_CHECK(ndr_pull_lsa_String(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.name));
6606
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_name_0, LIBNDR_FLAG_REF_ALLOC);
6607
NDR_CHECK(ndr_pull_samr_GroupAccessMask(ndr, NDR_SCALARS, &r->in.access_mask));
6608
NDR_PULL_ALLOC(ndr, r->out.group_handle);
6609
ZERO_STRUCTP(r->out.group_handle);
6610
NDR_PULL_ALLOC(ndr, r->out.rid);
6611
ZERO_STRUCTP(r->out.rid);
6613
if (flags & NDR_OUT) {
6614
if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
6615
NDR_PULL_ALLOC(ndr, r->out.group_handle);
6617
_mem_save_group_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
6618
NDR_PULL_SET_MEM_CTX(ndr, r->out.group_handle, LIBNDR_FLAG_REF_ALLOC);
6619
NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS, r->out.group_handle));
6620
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_group_handle_0, LIBNDR_FLAG_REF_ALLOC);
6621
if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
6622
NDR_PULL_ALLOC(ndr, r->out.rid);
6624
_mem_save_rid_0 = NDR_PULL_GET_MEM_CTX(ndr);
6625
NDR_PULL_SET_MEM_CTX(ndr, r->out.rid, LIBNDR_FLAG_REF_ALLOC);
6626
NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, r->out.rid));
6627
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_rid_0, LIBNDR_FLAG_REF_ALLOC);
6628
NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
6630
return NDR_ERR_SUCCESS;
6633
_PUBLIC_ void ndr_print_samr_CreateDomainGroup(struct ndr_print *ndr, const char *name, int flags, const struct samr_CreateDomainGroup *r)
6635
ndr_print_struct(ndr, name, "samr_CreateDomainGroup");
6636
if (r == NULL) { ndr_print_null(ndr); return; }
6638
if (flags & NDR_SET_VALUES) {
6639
ndr->flags |= LIBNDR_PRINT_SET_VALUES;
6641
if (flags & NDR_IN) {
6642
ndr_print_struct(ndr, "in", "samr_CreateDomainGroup");
6644
ndr_print_ptr(ndr, "domain_handle", r->in.domain_handle);
6646
ndr_print_policy_handle(ndr, "domain_handle", r->in.domain_handle);
6648
ndr_print_ptr(ndr, "name", r->in.name);
6650
ndr_print_lsa_String(ndr, "name", r->in.name);
6652
ndr_print_samr_GroupAccessMask(ndr, "access_mask", r->in.access_mask);
6655
if (flags & NDR_OUT) {
6656
ndr_print_struct(ndr, "out", "samr_CreateDomainGroup");
6658
ndr_print_ptr(ndr, "group_handle", r->out.group_handle);
6660
ndr_print_policy_handle(ndr, "group_handle", r->out.group_handle);
6662
ndr_print_ptr(ndr, "rid", r->out.rid);
6664
ndr_print_uint32(ndr, "rid", *r->out.rid);
6666
ndr_print_NTSTATUS(ndr, "result", r->out.result);
6672
static enum ndr_err_code ndr_push_samr_EnumDomainGroups(struct ndr_push *ndr, int flags, const struct samr_EnumDomainGroups *r)
6674
if (flags & NDR_IN) {
6675
if (r->in.domain_handle == NULL) {
6676
return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
6678
NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS, r->in.domain_handle));
6679
if (r->in.resume_handle == NULL) {
6680
return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
6682
NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, *r->in.resume_handle));
6683
NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->in.max_size));
6685
if (flags & NDR_OUT) {
6686
if (r->out.resume_handle == NULL) {
6687
return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
6689
NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, *r->out.resume_handle));
6690
if (r->out.sam == NULL) {
6691
return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
6693
NDR_CHECK(ndr_push_unique_ptr(ndr, *r->out.sam));
6695
NDR_CHECK(ndr_push_samr_SamArray(ndr, NDR_SCALARS|NDR_BUFFERS, *r->out.sam));
6697
if (r->out.num_entries == NULL) {
6698
return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
6700
NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, *r->out.num_entries));
6701
NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
6703
return NDR_ERR_SUCCESS;
6706
static enum ndr_err_code ndr_pull_samr_EnumDomainGroups(struct ndr_pull *ndr, int flags, struct samr_EnumDomainGroups *r)
6709
TALLOC_CTX *_mem_save_domain_handle_0;
6710
TALLOC_CTX *_mem_save_resume_handle_0;
6711
TALLOC_CTX *_mem_save_sam_0;
6712
TALLOC_CTX *_mem_save_sam_1;
6713
TALLOC_CTX *_mem_save_num_entries_0;
6714
if (flags & NDR_IN) {
6715
ZERO_STRUCT(r->out);
6717
if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
6718
NDR_PULL_ALLOC(ndr, r->in.domain_handle);
6720
_mem_save_domain_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
6721
NDR_PULL_SET_MEM_CTX(ndr, r->in.domain_handle, LIBNDR_FLAG_REF_ALLOC);
6722
NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS, r->in.domain_handle));
6723
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_domain_handle_0, LIBNDR_FLAG_REF_ALLOC);
6724
if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
6725
NDR_PULL_ALLOC(ndr, r->in.resume_handle);
6727
_mem_save_resume_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
6728
NDR_PULL_SET_MEM_CTX(ndr, r->in.resume_handle, LIBNDR_FLAG_REF_ALLOC);
6729
NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, r->in.resume_handle));
6730
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_resume_handle_0, LIBNDR_FLAG_REF_ALLOC);
6731
NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->in.max_size));
6732
NDR_PULL_ALLOC(ndr, r->out.resume_handle);
6733
*r->out.resume_handle = *r->in.resume_handle;
6734
NDR_PULL_ALLOC(ndr, r->out.sam);
6735
ZERO_STRUCTP(r->out.sam);
6736
NDR_PULL_ALLOC(ndr, r->out.num_entries);
6737
ZERO_STRUCTP(r->out.num_entries);
6739
if (flags & NDR_OUT) {
6740
if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
6741
NDR_PULL_ALLOC(ndr, r->out.resume_handle);
6743
_mem_save_resume_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
6744
NDR_PULL_SET_MEM_CTX(ndr, r->out.resume_handle, LIBNDR_FLAG_REF_ALLOC);
6745
NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, r->out.resume_handle));
6746
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_resume_handle_0, LIBNDR_FLAG_REF_ALLOC);
6747
if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
6748
NDR_PULL_ALLOC(ndr, r->out.sam);
6750
_mem_save_sam_0 = NDR_PULL_GET_MEM_CTX(ndr);
6751
NDR_PULL_SET_MEM_CTX(ndr, r->out.sam, LIBNDR_FLAG_REF_ALLOC);
6752
NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_sam));
6754
NDR_PULL_ALLOC(ndr, *r->out.sam);
6759
_mem_save_sam_1 = NDR_PULL_GET_MEM_CTX(ndr);
6760
NDR_PULL_SET_MEM_CTX(ndr, *r->out.sam, 0);
6761
NDR_CHECK(ndr_pull_samr_SamArray(ndr, NDR_SCALARS|NDR_BUFFERS, *r->out.sam));
6762
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_sam_1, 0);
6764
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_sam_0, LIBNDR_FLAG_REF_ALLOC);
6765
if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
6766
NDR_PULL_ALLOC(ndr, r->out.num_entries);
6768
_mem_save_num_entries_0 = NDR_PULL_GET_MEM_CTX(ndr);
6769
NDR_PULL_SET_MEM_CTX(ndr, r->out.num_entries, LIBNDR_FLAG_REF_ALLOC);
6770
NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, r->out.num_entries));
6771
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_num_entries_0, LIBNDR_FLAG_REF_ALLOC);
6772
NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
6774
return NDR_ERR_SUCCESS;
6777
_PUBLIC_ void ndr_print_samr_EnumDomainGroups(struct ndr_print *ndr, const char *name, int flags, const struct samr_EnumDomainGroups *r)
6779
ndr_print_struct(ndr, name, "samr_EnumDomainGroups");
6780
if (r == NULL) { ndr_print_null(ndr); return; }
6782
if (flags & NDR_SET_VALUES) {
6783
ndr->flags |= LIBNDR_PRINT_SET_VALUES;
6785
if (flags & NDR_IN) {
6786
ndr_print_struct(ndr, "in", "samr_EnumDomainGroups");
6788
ndr_print_ptr(ndr, "domain_handle", r->in.domain_handle);
6790
ndr_print_policy_handle(ndr, "domain_handle", r->in.domain_handle);
6792
ndr_print_ptr(ndr, "resume_handle", r->in.resume_handle);
6794
ndr_print_uint32(ndr, "resume_handle", *r->in.resume_handle);
6796
ndr_print_uint32(ndr, "max_size", r->in.max_size);
6799
if (flags & NDR_OUT) {
6800
ndr_print_struct(ndr, "out", "samr_EnumDomainGroups");
6802
ndr_print_ptr(ndr, "resume_handle", r->out.resume_handle);
6804
ndr_print_uint32(ndr, "resume_handle", *r->out.resume_handle);
6806
ndr_print_ptr(ndr, "sam", r->out.sam);
6808
ndr_print_ptr(ndr, "sam", *r->out.sam);
6811
ndr_print_samr_SamArray(ndr, "sam", *r->out.sam);
6815
ndr_print_ptr(ndr, "num_entries", r->out.num_entries);
6817
ndr_print_uint32(ndr, "num_entries", *r->out.num_entries);
6819
ndr_print_NTSTATUS(ndr, "result", r->out.result);
6825
static enum ndr_err_code ndr_push_samr_CreateUser(struct ndr_push *ndr, int flags, const struct samr_CreateUser *r)
6827
if (flags & NDR_IN) {
6828
if (r->in.domain_handle == NULL) {
6829
return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
6831
NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS, r->in.domain_handle));
6832
if (r->in.account_name == NULL) {
6833
return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
6835
NDR_CHECK(ndr_push_lsa_String(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.account_name));
6836
NDR_CHECK(ndr_push_samr_UserAccessMask(ndr, NDR_SCALARS, r->in.access_mask));
6838
if (flags & NDR_OUT) {
6839
if (r->out.user_handle == NULL) {
6840
return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
6842
NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS, r->out.user_handle));
6843
if (r->out.rid == NULL) {
6844
return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
6846
NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, *r->out.rid));
6847
NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
6849
return NDR_ERR_SUCCESS;
6852
static enum ndr_err_code ndr_pull_samr_CreateUser(struct ndr_pull *ndr, int flags, struct samr_CreateUser *r)
6854
TALLOC_CTX *_mem_save_domain_handle_0;
6855
TALLOC_CTX *_mem_save_account_name_0;
6856
TALLOC_CTX *_mem_save_user_handle_0;
6857
TALLOC_CTX *_mem_save_rid_0;
6858
if (flags & NDR_IN) {
6859
ZERO_STRUCT(r->out);
6861
if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
6862
NDR_PULL_ALLOC(ndr, r->in.domain_handle);
6864
_mem_save_domain_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
6865
NDR_PULL_SET_MEM_CTX(ndr, r->in.domain_handle, LIBNDR_FLAG_REF_ALLOC);
6866
NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS, r->in.domain_handle));
6867
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_domain_handle_0, LIBNDR_FLAG_REF_ALLOC);
6868
if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
6869
NDR_PULL_ALLOC(ndr, r->in.account_name);
6871
_mem_save_account_name_0 = NDR_PULL_GET_MEM_CTX(ndr);
6872
NDR_PULL_SET_MEM_CTX(ndr, r->in.account_name, LIBNDR_FLAG_REF_ALLOC);
6873
NDR_CHECK(ndr_pull_lsa_String(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.account_name));
6874
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_account_name_0, LIBNDR_FLAG_REF_ALLOC);
6875
NDR_CHECK(ndr_pull_samr_UserAccessMask(ndr, NDR_SCALARS, &r->in.access_mask));
6876
NDR_PULL_ALLOC(ndr, r->out.user_handle);
6877
ZERO_STRUCTP(r->out.user_handle);
6878
NDR_PULL_ALLOC(ndr, r->out.rid);
6879
ZERO_STRUCTP(r->out.rid);
6881
if (flags & NDR_OUT) {
6882
if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
6883
NDR_PULL_ALLOC(ndr, r->out.user_handle);
6885
_mem_save_user_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
6886
NDR_PULL_SET_MEM_CTX(ndr, r->out.user_handle, LIBNDR_FLAG_REF_ALLOC);
6887
NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS, r->out.user_handle));
6888
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_user_handle_0, LIBNDR_FLAG_REF_ALLOC);
6889
if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
6890
NDR_PULL_ALLOC(ndr, r->out.rid);
6892
_mem_save_rid_0 = NDR_PULL_GET_MEM_CTX(ndr);
6893
NDR_PULL_SET_MEM_CTX(ndr, r->out.rid, LIBNDR_FLAG_REF_ALLOC);
6894
NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, r->out.rid));
6895
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_rid_0, LIBNDR_FLAG_REF_ALLOC);
6896
NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
6898
return NDR_ERR_SUCCESS;
6901
_PUBLIC_ void ndr_print_samr_CreateUser(struct ndr_print *ndr, const char *name, int flags, const struct samr_CreateUser *r)
6903
ndr_print_struct(ndr, name, "samr_CreateUser");
6904
if (r == NULL) { ndr_print_null(ndr); return; }
6906
if (flags & NDR_SET_VALUES) {
6907
ndr->flags |= LIBNDR_PRINT_SET_VALUES;
6909
if (flags & NDR_IN) {
6910
ndr_print_struct(ndr, "in", "samr_CreateUser");
6912
ndr_print_ptr(ndr, "domain_handle", r->in.domain_handle);
6914
ndr_print_policy_handle(ndr, "domain_handle", r->in.domain_handle);
6916
ndr_print_ptr(ndr, "account_name", r->in.account_name);
6918
ndr_print_lsa_String(ndr, "account_name", r->in.account_name);
6920
ndr_print_samr_UserAccessMask(ndr, "access_mask", r->in.access_mask);
6923
if (flags & NDR_OUT) {
6924
ndr_print_struct(ndr, "out", "samr_CreateUser");
6926
ndr_print_ptr(ndr, "user_handle", r->out.user_handle);
6928
ndr_print_policy_handle(ndr, "user_handle", r->out.user_handle);
6930
ndr_print_ptr(ndr, "rid", r->out.rid);
6932
ndr_print_uint32(ndr, "rid", *r->out.rid);
6934
ndr_print_NTSTATUS(ndr, "result", r->out.result);
6940
static enum ndr_err_code ndr_push_samr_EnumDomainUsers(struct ndr_push *ndr, int flags, const struct samr_EnumDomainUsers *r)
6942
if (flags & NDR_IN) {
6943
if (r->in.domain_handle == NULL) {
6944
return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
6946
NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS, r->in.domain_handle));
6947
if (r->in.resume_handle == NULL) {
6948
return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
6950
NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, *r->in.resume_handle));
6951
NDR_CHECK(ndr_push_samr_AcctFlags(ndr, NDR_SCALARS, r->in.acct_flags));
6952
NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->in.max_size));
6954
if (flags & NDR_OUT) {
6955
if (r->out.resume_handle == NULL) {
6956
return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
6958
NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, *r->out.resume_handle));
6959
if (r->out.sam == NULL) {
6960
return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
6962
NDR_CHECK(ndr_push_unique_ptr(ndr, *r->out.sam));
6964
NDR_CHECK(ndr_push_samr_SamArray(ndr, NDR_SCALARS|NDR_BUFFERS, *r->out.sam));
6966
if (r->out.num_entries == NULL) {
6967
return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
6969
NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, *r->out.num_entries));
6970
NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
6972
return NDR_ERR_SUCCESS;
6975
static enum ndr_err_code ndr_pull_samr_EnumDomainUsers(struct ndr_pull *ndr, int flags, struct samr_EnumDomainUsers *r)
6978
TALLOC_CTX *_mem_save_domain_handle_0;
6979
TALLOC_CTX *_mem_save_resume_handle_0;
6980
TALLOC_CTX *_mem_save_sam_0;
6981
TALLOC_CTX *_mem_save_sam_1;
6982
TALLOC_CTX *_mem_save_num_entries_0;
6983
if (flags & NDR_IN) {
6984
ZERO_STRUCT(r->out);
6986
if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
6987
NDR_PULL_ALLOC(ndr, r->in.domain_handle);
6989
_mem_save_domain_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
6990
NDR_PULL_SET_MEM_CTX(ndr, r->in.domain_handle, LIBNDR_FLAG_REF_ALLOC);
6991
NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS, r->in.domain_handle));
6992
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_domain_handle_0, LIBNDR_FLAG_REF_ALLOC);
6993
if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
6994
NDR_PULL_ALLOC(ndr, r->in.resume_handle);
6996
_mem_save_resume_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
6997
NDR_PULL_SET_MEM_CTX(ndr, r->in.resume_handle, LIBNDR_FLAG_REF_ALLOC);
6998
NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, r->in.resume_handle));
6999
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_resume_handle_0, LIBNDR_FLAG_REF_ALLOC);
7000
NDR_CHECK(ndr_pull_samr_AcctFlags(ndr, NDR_SCALARS, &r->in.acct_flags));
7001
NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->in.max_size));
7002
NDR_PULL_ALLOC(ndr, r->out.resume_handle);
7003
*r->out.resume_handle = *r->in.resume_handle;
7004
NDR_PULL_ALLOC(ndr, r->out.sam);
7005
ZERO_STRUCTP(r->out.sam);
7006
NDR_PULL_ALLOC(ndr, r->out.num_entries);
7007
ZERO_STRUCTP(r->out.num_entries);
7009
if (flags & NDR_OUT) {
7010
if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
7011
NDR_PULL_ALLOC(ndr, r->out.resume_handle);
7013
_mem_save_resume_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
7014
NDR_PULL_SET_MEM_CTX(ndr, r->out.resume_handle, LIBNDR_FLAG_REF_ALLOC);
7015
NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, r->out.resume_handle));
7016
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_resume_handle_0, LIBNDR_FLAG_REF_ALLOC);
7017
if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
7018
NDR_PULL_ALLOC(ndr, r->out.sam);
7020
_mem_save_sam_0 = NDR_PULL_GET_MEM_CTX(ndr);
7021
NDR_PULL_SET_MEM_CTX(ndr, r->out.sam, LIBNDR_FLAG_REF_ALLOC);
7022
NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_sam));
7024
NDR_PULL_ALLOC(ndr, *r->out.sam);
7029
_mem_save_sam_1 = NDR_PULL_GET_MEM_CTX(ndr);
7030
NDR_PULL_SET_MEM_CTX(ndr, *r->out.sam, 0);
7031
NDR_CHECK(ndr_pull_samr_SamArray(ndr, NDR_SCALARS|NDR_BUFFERS, *r->out.sam));
7032
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_sam_1, 0);
7034
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_sam_0, LIBNDR_FLAG_REF_ALLOC);
7035
if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
7036
NDR_PULL_ALLOC(ndr, r->out.num_entries);
7038
_mem_save_num_entries_0 = NDR_PULL_GET_MEM_CTX(ndr);
7039
NDR_PULL_SET_MEM_CTX(ndr, r->out.num_entries, LIBNDR_FLAG_REF_ALLOC);
7040
NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, r->out.num_entries));
7041
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_num_entries_0, LIBNDR_FLAG_REF_ALLOC);
7042
NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
7044
return NDR_ERR_SUCCESS;
7047
_PUBLIC_ void ndr_print_samr_EnumDomainUsers(struct ndr_print *ndr, const char *name, int flags, const struct samr_EnumDomainUsers *r)
7049
ndr_print_struct(ndr, name, "samr_EnumDomainUsers");
7050
if (r == NULL) { ndr_print_null(ndr); return; }
7052
if (flags & NDR_SET_VALUES) {
7053
ndr->flags |= LIBNDR_PRINT_SET_VALUES;
7055
if (flags & NDR_IN) {
7056
ndr_print_struct(ndr, "in", "samr_EnumDomainUsers");
7058
ndr_print_ptr(ndr, "domain_handle", r->in.domain_handle);
7060
ndr_print_policy_handle(ndr, "domain_handle", r->in.domain_handle);
7062
ndr_print_ptr(ndr, "resume_handle", r->in.resume_handle);
7064
ndr_print_uint32(ndr, "resume_handle", *r->in.resume_handle);
7066
ndr_print_samr_AcctFlags(ndr, "acct_flags", r->in.acct_flags);
7067
ndr_print_uint32(ndr, "max_size", r->in.max_size);
7070
if (flags & NDR_OUT) {
7071
ndr_print_struct(ndr, "out", "samr_EnumDomainUsers");
7073
ndr_print_ptr(ndr, "resume_handle", r->out.resume_handle);
7075
ndr_print_uint32(ndr, "resume_handle", *r->out.resume_handle);
7077
ndr_print_ptr(ndr, "sam", r->out.sam);
7079
ndr_print_ptr(ndr, "sam", *r->out.sam);
7082
ndr_print_samr_SamArray(ndr, "sam", *r->out.sam);
7086
ndr_print_ptr(ndr, "num_entries", r->out.num_entries);
7088
ndr_print_uint32(ndr, "num_entries", *r->out.num_entries);
7090
ndr_print_NTSTATUS(ndr, "result", r->out.result);
7096
static enum ndr_err_code ndr_push_samr_CreateDomAlias(struct ndr_push *ndr, int flags, const struct samr_CreateDomAlias *r)
7098
if (flags & NDR_IN) {
7099
if (r->in.domain_handle == NULL) {
7100
return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
7102
NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS, r->in.domain_handle));
7103
if (r->in.alias_name == NULL) {
7104
return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
7106
NDR_CHECK(ndr_push_lsa_String(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.alias_name));
7107
NDR_CHECK(ndr_push_samr_AliasAccessMask(ndr, NDR_SCALARS, r->in.access_mask));
7109
if (flags & NDR_OUT) {
7110
if (r->out.alias_handle == NULL) {
7111
return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
7113
NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS, r->out.alias_handle));
7114
if (r->out.rid == NULL) {
7115
return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
7117
NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, *r->out.rid));
7118
NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
7120
return NDR_ERR_SUCCESS;
7123
static enum ndr_err_code ndr_pull_samr_CreateDomAlias(struct ndr_pull *ndr, int flags, struct samr_CreateDomAlias *r)
7125
TALLOC_CTX *_mem_save_domain_handle_0;
7126
TALLOC_CTX *_mem_save_alias_name_0;
7127
TALLOC_CTX *_mem_save_alias_handle_0;
7128
TALLOC_CTX *_mem_save_rid_0;
7129
if (flags & NDR_IN) {
7130
ZERO_STRUCT(r->out);
7132
if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
7133
NDR_PULL_ALLOC(ndr, r->in.domain_handle);
7135
_mem_save_domain_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
7136
NDR_PULL_SET_MEM_CTX(ndr, r->in.domain_handle, LIBNDR_FLAG_REF_ALLOC);
7137
NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS, r->in.domain_handle));
7138
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_domain_handle_0, LIBNDR_FLAG_REF_ALLOC);
7139
if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
7140
NDR_PULL_ALLOC(ndr, r->in.alias_name);
7142
_mem_save_alias_name_0 = NDR_PULL_GET_MEM_CTX(ndr);
7143
NDR_PULL_SET_MEM_CTX(ndr, r->in.alias_name, LIBNDR_FLAG_REF_ALLOC);
7144
NDR_CHECK(ndr_pull_lsa_String(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.alias_name));
7145
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_alias_name_0, LIBNDR_FLAG_REF_ALLOC);
7146
NDR_CHECK(ndr_pull_samr_AliasAccessMask(ndr, NDR_SCALARS, &r->in.access_mask));
7147
NDR_PULL_ALLOC(ndr, r->out.alias_handle);
7148
ZERO_STRUCTP(r->out.alias_handle);
7149
NDR_PULL_ALLOC(ndr, r->out.rid);
7150
ZERO_STRUCTP(r->out.rid);
7152
if (flags & NDR_OUT) {
7153
if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
7154
NDR_PULL_ALLOC(ndr, r->out.alias_handle);
7156
_mem_save_alias_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
7157
NDR_PULL_SET_MEM_CTX(ndr, r->out.alias_handle, LIBNDR_FLAG_REF_ALLOC);
7158
NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS, r->out.alias_handle));
7159
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_alias_handle_0, LIBNDR_FLAG_REF_ALLOC);
7160
if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
7161
NDR_PULL_ALLOC(ndr, r->out.rid);
7163
_mem_save_rid_0 = NDR_PULL_GET_MEM_CTX(ndr);
7164
NDR_PULL_SET_MEM_CTX(ndr, r->out.rid, LIBNDR_FLAG_REF_ALLOC);
7165
NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, r->out.rid));
7166
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_rid_0, LIBNDR_FLAG_REF_ALLOC);
7167
NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
7169
return NDR_ERR_SUCCESS;
7172
_PUBLIC_ void ndr_print_samr_CreateDomAlias(struct ndr_print *ndr, const char *name, int flags, const struct samr_CreateDomAlias *r)
7174
ndr_print_struct(ndr, name, "samr_CreateDomAlias");
7175
if (r == NULL) { ndr_print_null(ndr); return; }
7177
if (flags & NDR_SET_VALUES) {
7178
ndr->flags |= LIBNDR_PRINT_SET_VALUES;
7180
if (flags & NDR_IN) {
7181
ndr_print_struct(ndr, "in", "samr_CreateDomAlias");
7183
ndr_print_ptr(ndr, "domain_handle", r->in.domain_handle);
7185
ndr_print_policy_handle(ndr, "domain_handle", r->in.domain_handle);
7187
ndr_print_ptr(ndr, "alias_name", r->in.alias_name);
7189
ndr_print_lsa_String(ndr, "alias_name", r->in.alias_name);
7191
ndr_print_samr_AliasAccessMask(ndr, "access_mask", r->in.access_mask);
7194
if (flags & NDR_OUT) {
7195
ndr_print_struct(ndr, "out", "samr_CreateDomAlias");
7197
ndr_print_ptr(ndr, "alias_handle", r->out.alias_handle);
7199
ndr_print_policy_handle(ndr, "alias_handle", r->out.alias_handle);
7201
ndr_print_ptr(ndr, "rid", r->out.rid);
7203
ndr_print_uint32(ndr, "rid", *r->out.rid);
7205
ndr_print_NTSTATUS(ndr, "result", r->out.result);
7211
static enum ndr_err_code ndr_push_samr_EnumDomainAliases(struct ndr_push *ndr, int flags, const struct samr_EnumDomainAliases *r)
7213
if (flags & NDR_IN) {
7214
if (r->in.domain_handle == NULL) {
7215
return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
7217
NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS, r->in.domain_handle));
7218
if (r->in.resume_handle == NULL) {
7219
return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
7221
NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, *r->in.resume_handle));
7222
NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->in.max_size));
7224
if (flags & NDR_OUT) {
7225
if (r->out.resume_handle == NULL) {
7226
return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
7228
NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, *r->out.resume_handle));
7229
if (r->out.sam == NULL) {
7230
return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
7232
NDR_CHECK(ndr_push_unique_ptr(ndr, *r->out.sam));
7234
NDR_CHECK(ndr_push_samr_SamArray(ndr, NDR_SCALARS|NDR_BUFFERS, *r->out.sam));
7236
if (r->out.num_entries == NULL) {
7237
return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
7239
NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, *r->out.num_entries));
7240
NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
7242
return NDR_ERR_SUCCESS;
7245
static enum ndr_err_code ndr_pull_samr_EnumDomainAliases(struct ndr_pull *ndr, int flags, struct samr_EnumDomainAliases *r)
7248
TALLOC_CTX *_mem_save_domain_handle_0;
7249
TALLOC_CTX *_mem_save_resume_handle_0;
7250
TALLOC_CTX *_mem_save_sam_0;
7251
TALLOC_CTX *_mem_save_sam_1;
7252
TALLOC_CTX *_mem_save_num_entries_0;
7253
if (flags & NDR_IN) {
7254
ZERO_STRUCT(r->out);
7256
if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
7257
NDR_PULL_ALLOC(ndr, r->in.domain_handle);
7259
_mem_save_domain_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
7260
NDR_PULL_SET_MEM_CTX(ndr, r->in.domain_handle, LIBNDR_FLAG_REF_ALLOC);
7261
NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS, r->in.domain_handle));
7262
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_domain_handle_0, LIBNDR_FLAG_REF_ALLOC);
7263
if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
7264
NDR_PULL_ALLOC(ndr, r->in.resume_handle);
7266
_mem_save_resume_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
7267
NDR_PULL_SET_MEM_CTX(ndr, r->in.resume_handle, LIBNDR_FLAG_REF_ALLOC);
7268
NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, r->in.resume_handle));
7269
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_resume_handle_0, LIBNDR_FLAG_REF_ALLOC);
7270
NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->in.max_size));
7271
NDR_PULL_ALLOC(ndr, r->out.resume_handle);
7272
*r->out.resume_handle = *r->in.resume_handle;
7273
NDR_PULL_ALLOC(ndr, r->out.sam);
7274
ZERO_STRUCTP(r->out.sam);
7275
NDR_PULL_ALLOC(ndr, r->out.num_entries);
7276
ZERO_STRUCTP(r->out.num_entries);
7278
if (flags & NDR_OUT) {
7279
if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
7280
NDR_PULL_ALLOC(ndr, r->out.resume_handle);
7282
_mem_save_resume_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
7283
NDR_PULL_SET_MEM_CTX(ndr, r->out.resume_handle, LIBNDR_FLAG_REF_ALLOC);
7284
NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, r->out.resume_handle));
7285
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_resume_handle_0, LIBNDR_FLAG_REF_ALLOC);
7286
if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
7287
NDR_PULL_ALLOC(ndr, r->out.sam);
7289
_mem_save_sam_0 = NDR_PULL_GET_MEM_CTX(ndr);
7290
NDR_PULL_SET_MEM_CTX(ndr, r->out.sam, LIBNDR_FLAG_REF_ALLOC);
7291
NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_sam));
7293
NDR_PULL_ALLOC(ndr, *r->out.sam);
7298
_mem_save_sam_1 = NDR_PULL_GET_MEM_CTX(ndr);
7299
NDR_PULL_SET_MEM_CTX(ndr, *r->out.sam, 0);
7300
NDR_CHECK(ndr_pull_samr_SamArray(ndr, NDR_SCALARS|NDR_BUFFERS, *r->out.sam));
7301
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_sam_1, 0);
7303
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_sam_0, LIBNDR_FLAG_REF_ALLOC);
7304
if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
7305
NDR_PULL_ALLOC(ndr, r->out.num_entries);
7307
_mem_save_num_entries_0 = NDR_PULL_GET_MEM_CTX(ndr);
7308
NDR_PULL_SET_MEM_CTX(ndr, r->out.num_entries, LIBNDR_FLAG_REF_ALLOC);
7309
NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, r->out.num_entries));
7310
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_num_entries_0, LIBNDR_FLAG_REF_ALLOC);
7311
NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
7313
return NDR_ERR_SUCCESS;
7316
_PUBLIC_ void ndr_print_samr_EnumDomainAliases(struct ndr_print *ndr, const char *name, int flags, const struct samr_EnumDomainAliases *r)
7318
ndr_print_struct(ndr, name, "samr_EnumDomainAliases");
7319
if (r == NULL) { ndr_print_null(ndr); return; }
7321
if (flags & NDR_SET_VALUES) {
7322
ndr->flags |= LIBNDR_PRINT_SET_VALUES;
7324
if (flags & NDR_IN) {
7325
ndr_print_struct(ndr, "in", "samr_EnumDomainAliases");
7327
ndr_print_ptr(ndr, "domain_handle", r->in.domain_handle);
7329
ndr_print_policy_handle(ndr, "domain_handle", r->in.domain_handle);
7331
ndr_print_ptr(ndr, "resume_handle", r->in.resume_handle);
7333
ndr_print_uint32(ndr, "resume_handle", *r->in.resume_handle);
7335
ndr_print_uint32(ndr, "max_size", r->in.max_size);
7338
if (flags & NDR_OUT) {
7339
ndr_print_struct(ndr, "out", "samr_EnumDomainAliases");
7341
ndr_print_ptr(ndr, "resume_handle", r->out.resume_handle);
7343
ndr_print_uint32(ndr, "resume_handle", *r->out.resume_handle);
7345
ndr_print_ptr(ndr, "sam", r->out.sam);
7347
ndr_print_ptr(ndr, "sam", *r->out.sam);
7350
ndr_print_samr_SamArray(ndr, "sam", *r->out.sam);
7354
ndr_print_ptr(ndr, "num_entries", r->out.num_entries);
7356
ndr_print_uint32(ndr, "num_entries", *r->out.num_entries);
7358
ndr_print_NTSTATUS(ndr, "result", r->out.result);
7364
static enum ndr_err_code ndr_push_samr_GetAliasMembership(struct ndr_push *ndr, int flags, const struct samr_GetAliasMembership *r)
7366
if (flags & NDR_IN) {
7367
if (r->in.domain_handle == NULL) {
7368
return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
7370
NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS, r->in.domain_handle));
7371
if (r->in.sids == NULL) {
7372
return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
7374
NDR_CHECK(ndr_push_lsa_SidArray(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.sids));
7376
if (flags & NDR_OUT) {
7377
if (r->out.rids == NULL) {
7378
return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
7380
NDR_CHECK(ndr_push_samr_Ids(ndr, NDR_SCALARS|NDR_BUFFERS, r->out.rids));
7381
NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
7383
return NDR_ERR_SUCCESS;
7386
static enum ndr_err_code ndr_pull_samr_GetAliasMembership(struct ndr_pull *ndr, int flags, struct samr_GetAliasMembership *r)
7388
TALLOC_CTX *_mem_save_domain_handle_0;
7389
TALLOC_CTX *_mem_save_sids_0;
7390
TALLOC_CTX *_mem_save_rids_0;
7391
if (flags & NDR_IN) {
7392
ZERO_STRUCT(r->out);
7394
if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
7395
NDR_PULL_ALLOC(ndr, r->in.domain_handle);
7397
_mem_save_domain_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
7398
NDR_PULL_SET_MEM_CTX(ndr, r->in.domain_handle, LIBNDR_FLAG_REF_ALLOC);
7399
NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS, r->in.domain_handle));
7400
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_domain_handle_0, LIBNDR_FLAG_REF_ALLOC);
7401
if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
7402
NDR_PULL_ALLOC(ndr, r->in.sids);
7404
_mem_save_sids_0 = NDR_PULL_GET_MEM_CTX(ndr);
7405
NDR_PULL_SET_MEM_CTX(ndr, r->in.sids, LIBNDR_FLAG_REF_ALLOC);
7406
NDR_CHECK(ndr_pull_lsa_SidArray(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.sids));
7407
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_sids_0, LIBNDR_FLAG_REF_ALLOC);
7408
NDR_PULL_ALLOC(ndr, r->out.rids);
7409
ZERO_STRUCTP(r->out.rids);
7411
if (flags & NDR_OUT) {
7412
if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
7413
NDR_PULL_ALLOC(ndr, r->out.rids);
7415
_mem_save_rids_0 = NDR_PULL_GET_MEM_CTX(ndr);
7416
NDR_PULL_SET_MEM_CTX(ndr, r->out.rids, LIBNDR_FLAG_REF_ALLOC);
7417
NDR_CHECK(ndr_pull_samr_Ids(ndr, NDR_SCALARS|NDR_BUFFERS, r->out.rids));
7418
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_rids_0, LIBNDR_FLAG_REF_ALLOC);
7419
NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
7421
return NDR_ERR_SUCCESS;
7424
_PUBLIC_ void ndr_print_samr_GetAliasMembership(struct ndr_print *ndr, const char *name, int flags, const struct samr_GetAliasMembership *r)
7426
ndr_print_struct(ndr, name, "samr_GetAliasMembership");
7427
if (r == NULL) { ndr_print_null(ndr); return; }
7429
if (flags & NDR_SET_VALUES) {
7430
ndr->flags |= LIBNDR_PRINT_SET_VALUES;
7432
if (flags & NDR_IN) {
7433
ndr_print_struct(ndr, "in", "samr_GetAliasMembership");
7435
ndr_print_ptr(ndr, "domain_handle", r->in.domain_handle);
7437
ndr_print_policy_handle(ndr, "domain_handle", r->in.domain_handle);
7439
ndr_print_ptr(ndr, "sids", r->in.sids);
7441
ndr_print_lsa_SidArray(ndr, "sids", r->in.sids);
7445
if (flags & NDR_OUT) {
7446
ndr_print_struct(ndr, "out", "samr_GetAliasMembership");
7448
ndr_print_ptr(ndr, "rids", r->out.rids);
7450
ndr_print_samr_Ids(ndr, "rids", r->out.rids);
7452
ndr_print_NTSTATUS(ndr, "result", r->out.result);
7458
_PUBLIC_ enum ndr_err_code ndr_push_samr_LookupNames(struct ndr_push *ndr, int flags, const struct samr_LookupNames *r)
7460
uint32_t cntr_names_0;
7461
if (flags & NDR_IN) {
7462
if (r->in.domain_handle == NULL) {
7463
return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
7465
NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS, r->in.domain_handle));
7466
NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->in.num_names));
7467
NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, 1000));
7468
NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, 0));
7469
NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, r->in.num_names));
7470
for (cntr_names_0 = 0; cntr_names_0 < r->in.num_names; cntr_names_0++) {
7471
NDR_CHECK(ndr_push_lsa_String(ndr, NDR_SCALARS, &r->in.names[cntr_names_0]));
7473
for (cntr_names_0 = 0; cntr_names_0 < r->in.num_names; cntr_names_0++) {
7474
NDR_CHECK(ndr_push_lsa_String(ndr, NDR_BUFFERS, &r->in.names[cntr_names_0]));
7477
if (flags & NDR_OUT) {
7478
if (r->out.rids == NULL) {
7479
return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
7481
NDR_CHECK(ndr_push_samr_Ids(ndr, NDR_SCALARS|NDR_BUFFERS, r->out.rids));
7482
if (r->out.types == NULL) {
7483
return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
7485
NDR_CHECK(ndr_push_samr_Ids(ndr, NDR_SCALARS|NDR_BUFFERS, r->out.types));
7486
NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
7488
return NDR_ERR_SUCCESS;
7491
_PUBLIC_ enum ndr_err_code ndr_pull_samr_LookupNames(struct ndr_pull *ndr, int flags, struct samr_LookupNames *r)
7493
uint32_t cntr_names_0;
7494
TALLOC_CTX *_mem_save_domain_handle_0;
7495
TALLOC_CTX *_mem_save_names_0;
7496
TALLOC_CTX *_mem_save_rids_0;
7497
TALLOC_CTX *_mem_save_types_0;
7498
if (flags & NDR_IN) {
7499
ZERO_STRUCT(r->out);
7501
if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
7502
NDR_PULL_ALLOC(ndr, r->in.domain_handle);
7504
_mem_save_domain_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
7505
NDR_PULL_SET_MEM_CTX(ndr, r->in.domain_handle, LIBNDR_FLAG_REF_ALLOC);
7506
NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS, r->in.domain_handle));
7507
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_domain_handle_0, LIBNDR_FLAG_REF_ALLOC);
7508
NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->in.num_names));
7509
if (r->in.num_names > 1000) {
7510
return ndr_pull_error(ndr, NDR_ERR_RANGE, "value out of range");
7512
NDR_CHECK(ndr_pull_array_size(ndr, &r->in.names));
7513
NDR_CHECK(ndr_pull_array_length(ndr, &r->in.names));
7514
if (ndr_get_array_length(ndr, &r->in.names) > ndr_get_array_size(ndr, &r->in.names)) {
7515
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));
7517
NDR_PULL_ALLOC_N(ndr, r->in.names, ndr_get_array_size(ndr, &r->in.names));
7518
_mem_save_names_0 = NDR_PULL_GET_MEM_CTX(ndr);
7519
NDR_PULL_SET_MEM_CTX(ndr, r->in.names, 0);
7520
for (cntr_names_0 = 0; cntr_names_0 < ndr_get_array_length(ndr, &r->in.names); cntr_names_0++) {
7521
NDR_CHECK(ndr_pull_lsa_String(ndr, NDR_SCALARS, &r->in.names[cntr_names_0]));
7523
for (cntr_names_0 = 0; cntr_names_0 < ndr_get_array_length(ndr, &r->in.names); cntr_names_0++) {
7524
NDR_CHECK(ndr_pull_lsa_String(ndr, NDR_BUFFERS, &r->in.names[cntr_names_0]));
7526
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_names_0, 0);
7527
NDR_PULL_ALLOC(ndr, r->out.rids);
7528
ZERO_STRUCTP(r->out.rids);
7529
NDR_PULL_ALLOC(ndr, r->out.types);
7530
ZERO_STRUCTP(r->out.types);
7532
NDR_CHECK(ndr_check_array_size(ndr, (void*)&r->in.names, 1000));
7535
NDR_CHECK(ndr_check_array_length(ndr, (void*)&r->in.names, r->in.num_names));
7538
if (flags & NDR_OUT) {
7539
if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
7540
NDR_PULL_ALLOC(ndr, r->out.rids);
7542
_mem_save_rids_0 = NDR_PULL_GET_MEM_CTX(ndr);
7543
NDR_PULL_SET_MEM_CTX(ndr, r->out.rids, LIBNDR_FLAG_REF_ALLOC);
7544
NDR_CHECK(ndr_pull_samr_Ids(ndr, NDR_SCALARS|NDR_BUFFERS, r->out.rids));
7545
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_rids_0, LIBNDR_FLAG_REF_ALLOC);
7546
if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
7547
NDR_PULL_ALLOC(ndr, r->out.types);
7549
_mem_save_types_0 = NDR_PULL_GET_MEM_CTX(ndr);
7550
NDR_PULL_SET_MEM_CTX(ndr, r->out.types, LIBNDR_FLAG_REF_ALLOC);
7551
NDR_CHECK(ndr_pull_samr_Ids(ndr, NDR_SCALARS|NDR_BUFFERS, r->out.types));
7552
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_types_0, LIBNDR_FLAG_REF_ALLOC);
7553
NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
7555
return NDR_ERR_SUCCESS;
7558
_PUBLIC_ void ndr_print_samr_LookupNames(struct ndr_print *ndr, const char *name, int flags, const struct samr_LookupNames *r)
7560
uint32_t cntr_names_0;
7561
ndr_print_struct(ndr, name, "samr_LookupNames");
7562
if (r == NULL) { ndr_print_null(ndr); return; }
7564
if (flags & NDR_SET_VALUES) {
7565
ndr->flags |= LIBNDR_PRINT_SET_VALUES;
7567
if (flags & NDR_IN) {
7568
ndr_print_struct(ndr, "in", "samr_LookupNames");
7570
ndr_print_ptr(ndr, "domain_handle", r->in.domain_handle);
7572
ndr_print_policy_handle(ndr, "domain_handle", r->in.domain_handle);
7574
ndr_print_uint32(ndr, "num_names", r->in.num_names);
7575
ndr->print(ndr, "%s: ARRAY(%d)", "names", (int)r->in.num_names);
7577
for (cntr_names_0=0;cntr_names_0<r->in.num_names;cntr_names_0++) {
7578
ndr_print_lsa_String(ndr, "names", &r->in.names[cntr_names_0]);
7583
if (flags & NDR_OUT) {
7584
ndr_print_struct(ndr, "out", "samr_LookupNames");
7586
ndr_print_ptr(ndr, "rids", r->out.rids);
7588
ndr_print_samr_Ids(ndr, "rids", r->out.rids);
7590
ndr_print_ptr(ndr, "types", r->out.types);
7592
ndr_print_samr_Ids(ndr, "types", r->out.types);
7594
ndr_print_NTSTATUS(ndr, "result", r->out.result);
7600
static enum ndr_err_code ndr_push_samr_LookupRids(struct ndr_push *ndr, int flags, const struct samr_LookupRids *r)
7602
uint32_t cntr_rids_0;
7603
if (flags & NDR_IN) {
7604
if (r->in.domain_handle == NULL) {
7605
return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
7607
NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS, r->in.domain_handle));
7608
NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->in.num_rids));
7609
NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, 1000));
7610
NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, 0));
7611
NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, r->in.num_rids));
7612
for (cntr_rids_0 = 0; cntr_rids_0 < r->in.num_rids; cntr_rids_0++) {
7613
NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->in.rids[cntr_rids_0]));
7616
if (flags & NDR_OUT) {
7617
if (r->out.names == NULL) {
7618
return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
7620
NDR_CHECK(ndr_push_lsa_Strings(ndr, NDR_SCALARS|NDR_BUFFERS, r->out.names));
7621
if (r->out.types == NULL) {
7622
return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
7624
NDR_CHECK(ndr_push_samr_Ids(ndr, NDR_SCALARS|NDR_BUFFERS, r->out.types));
7625
NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
7627
return NDR_ERR_SUCCESS;
7630
static enum ndr_err_code ndr_pull_samr_LookupRids(struct ndr_pull *ndr, int flags, struct samr_LookupRids *r)
7632
uint32_t cntr_rids_0;
7633
TALLOC_CTX *_mem_save_domain_handle_0;
7634
TALLOC_CTX *_mem_save_rids_0;
7635
TALLOC_CTX *_mem_save_names_0;
7636
TALLOC_CTX *_mem_save_types_0;
7637
if (flags & NDR_IN) {
7638
ZERO_STRUCT(r->out);
7640
if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
7641
NDR_PULL_ALLOC(ndr, r->in.domain_handle);
7643
_mem_save_domain_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
7644
NDR_PULL_SET_MEM_CTX(ndr, r->in.domain_handle, LIBNDR_FLAG_REF_ALLOC);
7645
NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS, r->in.domain_handle));
7646
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_domain_handle_0, LIBNDR_FLAG_REF_ALLOC);
7647
NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->in.num_rids));
7648
if (r->in.num_rids > 1000) {
7649
return ndr_pull_error(ndr, NDR_ERR_RANGE, "value out of range");
7651
NDR_CHECK(ndr_pull_array_size(ndr, &r->in.rids));
7652
NDR_CHECK(ndr_pull_array_length(ndr, &r->in.rids));
7653
if (ndr_get_array_length(ndr, &r->in.rids) > ndr_get_array_size(ndr, &r->in.rids)) {
7654
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));
7656
NDR_PULL_ALLOC_N(ndr, r->in.rids, ndr_get_array_size(ndr, &r->in.rids));
7657
_mem_save_rids_0 = NDR_PULL_GET_MEM_CTX(ndr);
7658
NDR_PULL_SET_MEM_CTX(ndr, r->in.rids, 0);
7659
for (cntr_rids_0 = 0; cntr_rids_0 < ndr_get_array_length(ndr, &r->in.rids); cntr_rids_0++) {
7660
NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->in.rids[cntr_rids_0]));
7662
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_rids_0, 0);
7663
NDR_PULL_ALLOC(ndr, r->out.names);
7664
ZERO_STRUCTP(r->out.names);
7665
NDR_PULL_ALLOC(ndr, r->out.types);
7666
ZERO_STRUCTP(r->out.types);
7668
NDR_CHECK(ndr_check_array_size(ndr, (void*)&r->in.rids, 1000));
7671
NDR_CHECK(ndr_check_array_length(ndr, (void*)&r->in.rids, r->in.num_rids));
7674
if (flags & NDR_OUT) {
7675
if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
7676
NDR_PULL_ALLOC(ndr, r->out.names);
7678
_mem_save_names_0 = NDR_PULL_GET_MEM_CTX(ndr);
7679
NDR_PULL_SET_MEM_CTX(ndr, r->out.names, LIBNDR_FLAG_REF_ALLOC);
7680
NDR_CHECK(ndr_pull_lsa_Strings(ndr, NDR_SCALARS|NDR_BUFFERS, r->out.names));
7681
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_names_0, LIBNDR_FLAG_REF_ALLOC);
7682
if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
7683
NDR_PULL_ALLOC(ndr, r->out.types);
7685
_mem_save_types_0 = NDR_PULL_GET_MEM_CTX(ndr);
7686
NDR_PULL_SET_MEM_CTX(ndr, r->out.types, LIBNDR_FLAG_REF_ALLOC);
7687
NDR_CHECK(ndr_pull_samr_Ids(ndr, NDR_SCALARS|NDR_BUFFERS, r->out.types));
7688
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_types_0, LIBNDR_FLAG_REF_ALLOC);
7689
NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
7691
return NDR_ERR_SUCCESS;
7694
_PUBLIC_ void ndr_print_samr_LookupRids(struct ndr_print *ndr, const char *name, int flags, const struct samr_LookupRids *r)
7696
uint32_t cntr_rids_0;
7697
ndr_print_struct(ndr, name, "samr_LookupRids");
7698
if (r == NULL) { ndr_print_null(ndr); return; }
7700
if (flags & NDR_SET_VALUES) {
7701
ndr->flags |= LIBNDR_PRINT_SET_VALUES;
7703
if (flags & NDR_IN) {
7704
ndr_print_struct(ndr, "in", "samr_LookupRids");
7706
ndr_print_ptr(ndr, "domain_handle", r->in.domain_handle);
7708
ndr_print_policy_handle(ndr, "domain_handle", r->in.domain_handle);
7710
ndr_print_uint32(ndr, "num_rids", r->in.num_rids);
7711
ndr->print(ndr, "%s: ARRAY(%d)", "rids", (int)r->in.num_rids);
7713
for (cntr_rids_0=0;cntr_rids_0<r->in.num_rids;cntr_rids_0++) {
7714
ndr_print_uint32(ndr, "rids", r->in.rids[cntr_rids_0]);
7719
if (flags & NDR_OUT) {
7720
ndr_print_struct(ndr, "out", "samr_LookupRids");
7722
ndr_print_ptr(ndr, "names", r->out.names);
7724
ndr_print_lsa_Strings(ndr, "names", r->out.names);
7726
ndr_print_ptr(ndr, "types", r->out.types);
7728
ndr_print_samr_Ids(ndr, "types", r->out.types);
7730
ndr_print_NTSTATUS(ndr, "result", r->out.result);
7736
static enum ndr_err_code ndr_push_samr_OpenGroup(struct ndr_push *ndr, int flags, const struct samr_OpenGroup *r)
7738
if (flags & NDR_IN) {
7739
if (r->in.domain_handle == NULL) {
7740
return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
7742
NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS, r->in.domain_handle));
7743
NDR_CHECK(ndr_push_samr_GroupAccessMask(ndr, NDR_SCALARS, r->in.access_mask));
7744
NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->in.rid));
7746
if (flags & NDR_OUT) {
7747
if (r->out.group_handle == NULL) {
7748
return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
7750
NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS, r->out.group_handle));
7751
NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
7753
return NDR_ERR_SUCCESS;
7756
static enum ndr_err_code ndr_pull_samr_OpenGroup(struct ndr_pull *ndr, int flags, struct samr_OpenGroup *r)
7758
TALLOC_CTX *_mem_save_domain_handle_0;
7759
TALLOC_CTX *_mem_save_group_handle_0;
7760
if (flags & NDR_IN) {
7761
ZERO_STRUCT(r->out);
7763
if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
7764
NDR_PULL_ALLOC(ndr, r->in.domain_handle);
7766
_mem_save_domain_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
7767
NDR_PULL_SET_MEM_CTX(ndr, r->in.domain_handle, LIBNDR_FLAG_REF_ALLOC);
7768
NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS, r->in.domain_handle));
7769
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_domain_handle_0, LIBNDR_FLAG_REF_ALLOC);
7770
NDR_CHECK(ndr_pull_samr_GroupAccessMask(ndr, NDR_SCALARS, &r->in.access_mask));
7771
NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->in.rid));
7772
NDR_PULL_ALLOC(ndr, r->out.group_handle);
7773
ZERO_STRUCTP(r->out.group_handle);
7775
if (flags & NDR_OUT) {
7776
if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
7777
NDR_PULL_ALLOC(ndr, r->out.group_handle);
7779
_mem_save_group_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
7780
NDR_PULL_SET_MEM_CTX(ndr, r->out.group_handle, LIBNDR_FLAG_REF_ALLOC);
7781
NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS, r->out.group_handle));
7782
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_group_handle_0, LIBNDR_FLAG_REF_ALLOC);
7783
NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
7785
return NDR_ERR_SUCCESS;
7788
_PUBLIC_ void ndr_print_samr_OpenGroup(struct ndr_print *ndr, const char *name, int flags, const struct samr_OpenGroup *r)
7790
ndr_print_struct(ndr, name, "samr_OpenGroup");
7791
if (r == NULL) { ndr_print_null(ndr); return; }
7793
if (flags & NDR_SET_VALUES) {
7794
ndr->flags |= LIBNDR_PRINT_SET_VALUES;
7796
if (flags & NDR_IN) {
7797
ndr_print_struct(ndr, "in", "samr_OpenGroup");
7799
ndr_print_ptr(ndr, "domain_handle", r->in.domain_handle);
7801
ndr_print_policy_handle(ndr, "domain_handle", r->in.domain_handle);
7803
ndr_print_samr_GroupAccessMask(ndr, "access_mask", r->in.access_mask);
7804
ndr_print_uint32(ndr, "rid", r->in.rid);
7807
if (flags & NDR_OUT) {
7808
ndr_print_struct(ndr, "out", "samr_OpenGroup");
7810
ndr_print_ptr(ndr, "group_handle", r->out.group_handle);
7812
ndr_print_policy_handle(ndr, "group_handle", r->out.group_handle);
7814
ndr_print_NTSTATUS(ndr, "result", r->out.result);
7820
static enum ndr_err_code ndr_push_samr_QueryGroupInfo(struct ndr_push *ndr, int flags, const struct samr_QueryGroupInfo *r)
7822
if (flags & NDR_IN) {
7823
if (r->in.group_handle == NULL) {
7824
return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
7826
NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS, r->in.group_handle));
7827
NDR_CHECK(ndr_push_samr_GroupInfoEnum(ndr, NDR_SCALARS, r->in.level));
7829
if (flags & NDR_OUT) {
7830
if (r->out.info == NULL) {
7831
return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
7833
NDR_CHECK(ndr_push_unique_ptr(ndr, *r->out.info));
7835
NDR_CHECK(ndr_push_set_switch_value(ndr, *r->out.info, r->in.level));
7836
NDR_CHECK(ndr_push_samr_GroupInfo(ndr, NDR_SCALARS|NDR_BUFFERS, *r->out.info));
7838
NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
7840
return NDR_ERR_SUCCESS;
7843
static enum ndr_err_code ndr_pull_samr_QueryGroupInfo(struct ndr_pull *ndr, int flags, struct samr_QueryGroupInfo *r)
7846
TALLOC_CTX *_mem_save_group_handle_0;
7847
TALLOC_CTX *_mem_save_info_0;
7848
TALLOC_CTX *_mem_save_info_1;
7849
if (flags & NDR_IN) {
7850
ZERO_STRUCT(r->out);
7852
if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
7853
NDR_PULL_ALLOC(ndr, r->in.group_handle);
7855
_mem_save_group_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
7856
NDR_PULL_SET_MEM_CTX(ndr, r->in.group_handle, LIBNDR_FLAG_REF_ALLOC);
7857
NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS, r->in.group_handle));
7858
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_group_handle_0, LIBNDR_FLAG_REF_ALLOC);
7859
NDR_CHECK(ndr_pull_samr_GroupInfoEnum(ndr, NDR_SCALARS, &r->in.level));
7860
NDR_PULL_ALLOC(ndr, r->out.info);
7861
ZERO_STRUCTP(r->out.info);
7863
if (flags & NDR_OUT) {
7864
if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
7865
NDR_PULL_ALLOC(ndr, r->out.info);
7867
_mem_save_info_0 = NDR_PULL_GET_MEM_CTX(ndr);
7868
NDR_PULL_SET_MEM_CTX(ndr, r->out.info, LIBNDR_FLAG_REF_ALLOC);
7869
NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_info));
7871
NDR_PULL_ALLOC(ndr, *r->out.info);
7873
*r->out.info = NULL;
7876
_mem_save_info_1 = NDR_PULL_GET_MEM_CTX(ndr);
7877
NDR_PULL_SET_MEM_CTX(ndr, *r->out.info, 0);
7878
NDR_CHECK(ndr_pull_set_switch_value(ndr, *r->out.info, r->in.level));
7879
NDR_CHECK(ndr_pull_samr_GroupInfo(ndr, NDR_SCALARS|NDR_BUFFERS, *r->out.info));
7880
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_info_1, 0);
7882
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_info_0, LIBNDR_FLAG_REF_ALLOC);
7883
NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
7885
return NDR_ERR_SUCCESS;
7888
_PUBLIC_ void ndr_print_samr_QueryGroupInfo(struct ndr_print *ndr, const char *name, int flags, const struct samr_QueryGroupInfo *r)
7890
ndr_print_struct(ndr, name, "samr_QueryGroupInfo");
7891
if (r == NULL) { ndr_print_null(ndr); return; }
7893
if (flags & NDR_SET_VALUES) {
7894
ndr->flags |= LIBNDR_PRINT_SET_VALUES;
7896
if (flags & NDR_IN) {
7897
ndr_print_struct(ndr, "in", "samr_QueryGroupInfo");
7899
ndr_print_ptr(ndr, "group_handle", r->in.group_handle);
7901
ndr_print_policy_handle(ndr, "group_handle", r->in.group_handle);
7903
ndr_print_samr_GroupInfoEnum(ndr, "level", r->in.level);
7906
if (flags & NDR_OUT) {
7907
ndr_print_struct(ndr, "out", "samr_QueryGroupInfo");
7909
ndr_print_ptr(ndr, "info", r->out.info);
7911
ndr_print_ptr(ndr, "info", *r->out.info);
7914
ndr_print_set_switch_value(ndr, *r->out.info, r->in.level);
7915
ndr_print_samr_GroupInfo(ndr, "info", *r->out.info);
7919
ndr_print_NTSTATUS(ndr, "result", r->out.result);
7925
static enum ndr_err_code ndr_push_samr_SetGroupInfo(struct ndr_push *ndr, int flags, const struct samr_SetGroupInfo *r)
7927
if (flags & NDR_IN) {
7928
if (r->in.group_handle == NULL) {
7929
return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
7931
NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS, r->in.group_handle));
7932
NDR_CHECK(ndr_push_samr_GroupInfoEnum(ndr, NDR_SCALARS, r->in.level));
7933
if (r->in.info == NULL) {
7934
return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
7936
NDR_CHECK(ndr_push_set_switch_value(ndr, r->in.info, r->in.level));
7937
NDR_CHECK(ndr_push_samr_GroupInfo(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.info));
7939
if (flags & NDR_OUT) {
7940
NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
7942
return NDR_ERR_SUCCESS;
7945
static enum ndr_err_code ndr_pull_samr_SetGroupInfo(struct ndr_pull *ndr, int flags, struct samr_SetGroupInfo *r)
7947
TALLOC_CTX *_mem_save_group_handle_0;
7948
TALLOC_CTX *_mem_save_info_0;
7949
if (flags & NDR_IN) {
7950
if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
7951
NDR_PULL_ALLOC(ndr, r->in.group_handle);
7953
_mem_save_group_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
7954
NDR_PULL_SET_MEM_CTX(ndr, r->in.group_handle, LIBNDR_FLAG_REF_ALLOC);
7955
NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS, r->in.group_handle));
7956
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_group_handle_0, LIBNDR_FLAG_REF_ALLOC);
7957
NDR_CHECK(ndr_pull_samr_GroupInfoEnum(ndr, NDR_SCALARS, &r->in.level));
7958
if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
7959
NDR_PULL_ALLOC(ndr, r->in.info);
7961
_mem_save_info_0 = NDR_PULL_GET_MEM_CTX(ndr);
7962
NDR_PULL_SET_MEM_CTX(ndr, r->in.info, LIBNDR_FLAG_REF_ALLOC);
7963
NDR_CHECK(ndr_pull_set_switch_value(ndr, r->in.info, r->in.level));
7964
NDR_CHECK(ndr_pull_samr_GroupInfo(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.info));
7965
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_info_0, LIBNDR_FLAG_REF_ALLOC);
7967
if (flags & NDR_OUT) {
7968
NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
7970
return NDR_ERR_SUCCESS;
7973
_PUBLIC_ void ndr_print_samr_SetGroupInfo(struct ndr_print *ndr, const char *name, int flags, const struct samr_SetGroupInfo *r)
7975
ndr_print_struct(ndr, name, "samr_SetGroupInfo");
7976
if (r == NULL) { ndr_print_null(ndr); return; }
7978
if (flags & NDR_SET_VALUES) {
7979
ndr->flags |= LIBNDR_PRINT_SET_VALUES;
7981
if (flags & NDR_IN) {
7982
ndr_print_struct(ndr, "in", "samr_SetGroupInfo");
7984
ndr_print_ptr(ndr, "group_handle", r->in.group_handle);
7986
ndr_print_policy_handle(ndr, "group_handle", r->in.group_handle);
7988
ndr_print_samr_GroupInfoEnum(ndr, "level", r->in.level);
7989
ndr_print_ptr(ndr, "info", r->in.info);
7991
ndr_print_set_switch_value(ndr, r->in.info, r->in.level);
7992
ndr_print_samr_GroupInfo(ndr, "info", r->in.info);
7996
if (flags & NDR_OUT) {
7997
ndr_print_struct(ndr, "out", "samr_SetGroupInfo");
7999
ndr_print_NTSTATUS(ndr, "result", r->out.result);
8005
static enum ndr_err_code ndr_push_samr_AddGroupMember(struct ndr_push *ndr, int flags, const struct samr_AddGroupMember *r)
8007
if (flags & NDR_IN) {
8008
if (r->in.group_handle == NULL) {
8009
return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
8011
NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS, r->in.group_handle));
8012
NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->in.rid));
8013
NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->in.flags));
8015
if (flags & NDR_OUT) {
8016
NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
8018
return NDR_ERR_SUCCESS;
8021
static enum ndr_err_code ndr_pull_samr_AddGroupMember(struct ndr_pull *ndr, int flags, struct samr_AddGroupMember *r)
8023
TALLOC_CTX *_mem_save_group_handle_0;
8024
if (flags & NDR_IN) {
8025
if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
8026
NDR_PULL_ALLOC(ndr, r->in.group_handle);
8028
_mem_save_group_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
8029
NDR_PULL_SET_MEM_CTX(ndr, r->in.group_handle, LIBNDR_FLAG_REF_ALLOC);
8030
NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS, r->in.group_handle));
8031
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_group_handle_0, LIBNDR_FLAG_REF_ALLOC);
8032
NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->in.rid));
8033
NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->in.flags));
8035
if (flags & NDR_OUT) {
8036
NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
8038
return NDR_ERR_SUCCESS;
8041
_PUBLIC_ void ndr_print_samr_AddGroupMember(struct ndr_print *ndr, const char *name, int flags, const struct samr_AddGroupMember *r)
8043
ndr_print_struct(ndr, name, "samr_AddGroupMember");
8044
if (r == NULL) { ndr_print_null(ndr); return; }
8046
if (flags & NDR_SET_VALUES) {
8047
ndr->flags |= LIBNDR_PRINT_SET_VALUES;
8049
if (flags & NDR_IN) {
8050
ndr_print_struct(ndr, "in", "samr_AddGroupMember");
8052
ndr_print_ptr(ndr, "group_handle", r->in.group_handle);
8054
ndr_print_policy_handle(ndr, "group_handle", r->in.group_handle);
8056
ndr_print_uint32(ndr, "rid", r->in.rid);
8057
ndr_print_uint32(ndr, "flags", r->in.flags);
8060
if (flags & NDR_OUT) {
8061
ndr_print_struct(ndr, "out", "samr_AddGroupMember");
8063
ndr_print_NTSTATUS(ndr, "result", r->out.result);
8069
static enum ndr_err_code ndr_push_samr_DeleteDomainGroup(struct ndr_push *ndr, int flags, const struct samr_DeleteDomainGroup *r)
8071
if (flags & NDR_IN) {
8072
if (r->in.group_handle == NULL) {
8073
return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
8075
NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS, r->in.group_handle));
8077
if (flags & NDR_OUT) {
8078
if (r->out.group_handle == NULL) {
8079
return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
8081
NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS, r->out.group_handle));
8082
NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
8084
return NDR_ERR_SUCCESS;
8087
static enum ndr_err_code ndr_pull_samr_DeleteDomainGroup(struct ndr_pull *ndr, int flags, struct samr_DeleteDomainGroup *r)
8089
TALLOC_CTX *_mem_save_group_handle_0;
8090
if (flags & NDR_IN) {
8091
ZERO_STRUCT(r->out);
8093
if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
8094
NDR_PULL_ALLOC(ndr, r->in.group_handle);
8096
_mem_save_group_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
8097
NDR_PULL_SET_MEM_CTX(ndr, r->in.group_handle, LIBNDR_FLAG_REF_ALLOC);
8098
NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS, r->in.group_handle));
8099
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_group_handle_0, LIBNDR_FLAG_REF_ALLOC);
8100
NDR_PULL_ALLOC(ndr, r->out.group_handle);
8101
*r->out.group_handle = *r->in.group_handle;
8103
if (flags & NDR_OUT) {
8104
if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
8105
NDR_PULL_ALLOC(ndr, r->out.group_handle);
8107
_mem_save_group_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
8108
NDR_PULL_SET_MEM_CTX(ndr, r->out.group_handle, LIBNDR_FLAG_REF_ALLOC);
8109
NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS, r->out.group_handle));
8110
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_group_handle_0, LIBNDR_FLAG_REF_ALLOC);
8111
NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
8113
return NDR_ERR_SUCCESS;
8116
_PUBLIC_ void ndr_print_samr_DeleteDomainGroup(struct ndr_print *ndr, const char *name, int flags, const struct samr_DeleteDomainGroup *r)
8118
ndr_print_struct(ndr, name, "samr_DeleteDomainGroup");
8119
if (r == NULL) { ndr_print_null(ndr); return; }
8121
if (flags & NDR_SET_VALUES) {
8122
ndr->flags |= LIBNDR_PRINT_SET_VALUES;
8124
if (flags & NDR_IN) {
8125
ndr_print_struct(ndr, "in", "samr_DeleteDomainGroup");
8127
ndr_print_ptr(ndr, "group_handle", r->in.group_handle);
8129
ndr_print_policy_handle(ndr, "group_handle", r->in.group_handle);
8133
if (flags & NDR_OUT) {
8134
ndr_print_struct(ndr, "out", "samr_DeleteDomainGroup");
8136
ndr_print_ptr(ndr, "group_handle", r->out.group_handle);
8138
ndr_print_policy_handle(ndr, "group_handle", r->out.group_handle);
8140
ndr_print_NTSTATUS(ndr, "result", r->out.result);
8146
static enum ndr_err_code ndr_push_samr_DeleteGroupMember(struct ndr_push *ndr, int flags, const struct samr_DeleteGroupMember *r)
8148
if (flags & NDR_IN) {
8149
if (r->in.group_handle == NULL) {
8150
return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
8152
NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS, r->in.group_handle));
8153
NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->in.rid));
8155
if (flags & NDR_OUT) {
8156
NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
8158
return NDR_ERR_SUCCESS;
8161
static enum ndr_err_code ndr_pull_samr_DeleteGroupMember(struct ndr_pull *ndr, int flags, struct samr_DeleteGroupMember *r)
8163
TALLOC_CTX *_mem_save_group_handle_0;
8164
if (flags & NDR_IN) {
8165
if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
8166
NDR_PULL_ALLOC(ndr, r->in.group_handle);
8168
_mem_save_group_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
8169
NDR_PULL_SET_MEM_CTX(ndr, r->in.group_handle, LIBNDR_FLAG_REF_ALLOC);
8170
NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS, r->in.group_handle));
8171
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_group_handle_0, LIBNDR_FLAG_REF_ALLOC);
8172
NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->in.rid));
8174
if (flags & NDR_OUT) {
8175
NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
8177
return NDR_ERR_SUCCESS;
8180
_PUBLIC_ void ndr_print_samr_DeleteGroupMember(struct ndr_print *ndr, const char *name, int flags, const struct samr_DeleteGroupMember *r)
8182
ndr_print_struct(ndr, name, "samr_DeleteGroupMember");
8183
if (r == NULL) { ndr_print_null(ndr); return; }
8185
if (flags & NDR_SET_VALUES) {
8186
ndr->flags |= LIBNDR_PRINT_SET_VALUES;
8188
if (flags & NDR_IN) {
8189
ndr_print_struct(ndr, "in", "samr_DeleteGroupMember");
8191
ndr_print_ptr(ndr, "group_handle", r->in.group_handle);
8193
ndr_print_policy_handle(ndr, "group_handle", r->in.group_handle);
8195
ndr_print_uint32(ndr, "rid", r->in.rid);
8198
if (flags & NDR_OUT) {
8199
ndr_print_struct(ndr, "out", "samr_DeleteGroupMember");
8201
ndr_print_NTSTATUS(ndr, "result", r->out.result);
8207
static enum ndr_err_code ndr_push_samr_QueryGroupMember(struct ndr_push *ndr, int flags, const struct samr_QueryGroupMember *r)
8209
if (flags & NDR_IN) {
8210
if (r->in.group_handle == NULL) {
8211
return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
8213
NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS, r->in.group_handle));
8215
if (flags & NDR_OUT) {
8216
if (r->out.rids == NULL) {
8217
return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
8219
NDR_CHECK(ndr_push_unique_ptr(ndr, *r->out.rids));
8221
NDR_CHECK(ndr_push_samr_RidAttrArray(ndr, NDR_SCALARS|NDR_BUFFERS, *r->out.rids));
8223
NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
8225
return NDR_ERR_SUCCESS;
8228
static enum ndr_err_code ndr_pull_samr_QueryGroupMember(struct ndr_pull *ndr, int flags, struct samr_QueryGroupMember *r)
8231
TALLOC_CTX *_mem_save_group_handle_0;
8232
TALLOC_CTX *_mem_save_rids_0;
8233
TALLOC_CTX *_mem_save_rids_1;
8234
if (flags & NDR_IN) {
8235
ZERO_STRUCT(r->out);
8237
if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
8238
NDR_PULL_ALLOC(ndr, r->in.group_handle);
8240
_mem_save_group_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
8241
NDR_PULL_SET_MEM_CTX(ndr, r->in.group_handle, LIBNDR_FLAG_REF_ALLOC);
8242
NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS, r->in.group_handle));
8243
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_group_handle_0, LIBNDR_FLAG_REF_ALLOC);
8244
NDR_PULL_ALLOC(ndr, r->out.rids);
8245
ZERO_STRUCTP(r->out.rids);
8247
if (flags & NDR_OUT) {
8248
if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
8249
NDR_PULL_ALLOC(ndr, r->out.rids);
8251
_mem_save_rids_0 = NDR_PULL_GET_MEM_CTX(ndr);
8252
NDR_PULL_SET_MEM_CTX(ndr, r->out.rids, LIBNDR_FLAG_REF_ALLOC);
8253
NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_rids));
8255
NDR_PULL_ALLOC(ndr, *r->out.rids);
8257
*r->out.rids = NULL;
8260
_mem_save_rids_1 = NDR_PULL_GET_MEM_CTX(ndr);
8261
NDR_PULL_SET_MEM_CTX(ndr, *r->out.rids, 0);
8262
NDR_CHECK(ndr_pull_samr_RidAttrArray(ndr, NDR_SCALARS|NDR_BUFFERS, *r->out.rids));
8263
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_rids_1, 0);
8265
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_rids_0, LIBNDR_FLAG_REF_ALLOC);
8266
NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
8268
return NDR_ERR_SUCCESS;
8271
_PUBLIC_ void ndr_print_samr_QueryGroupMember(struct ndr_print *ndr, const char *name, int flags, const struct samr_QueryGroupMember *r)
8273
ndr_print_struct(ndr, name, "samr_QueryGroupMember");
8274
if (r == NULL) { ndr_print_null(ndr); return; }
8276
if (flags & NDR_SET_VALUES) {
8277
ndr->flags |= LIBNDR_PRINT_SET_VALUES;
8279
if (flags & NDR_IN) {
8280
ndr_print_struct(ndr, "in", "samr_QueryGroupMember");
8282
ndr_print_ptr(ndr, "group_handle", r->in.group_handle);
8284
ndr_print_policy_handle(ndr, "group_handle", r->in.group_handle);
8288
if (flags & NDR_OUT) {
8289
ndr_print_struct(ndr, "out", "samr_QueryGroupMember");
8291
ndr_print_ptr(ndr, "rids", r->out.rids);
8293
ndr_print_ptr(ndr, "rids", *r->out.rids);
8296
ndr_print_samr_RidAttrArray(ndr, "rids", *r->out.rids);
8300
ndr_print_NTSTATUS(ndr, "result", r->out.result);
8306
static enum ndr_err_code ndr_push_samr_SetMemberAttributesOfGroup(struct ndr_push *ndr, int flags, const struct samr_SetMemberAttributesOfGroup *r)
8308
if (flags & NDR_IN) {
8309
if (r->in.group_handle == NULL) {
8310
return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
8312
NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS, r->in.group_handle));
8313
NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->in.unknown1));
8314
NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->in.unknown2));
8316
if (flags & NDR_OUT) {
8317
NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
8319
return NDR_ERR_SUCCESS;
8322
static enum ndr_err_code ndr_pull_samr_SetMemberAttributesOfGroup(struct ndr_pull *ndr, int flags, struct samr_SetMemberAttributesOfGroup *r)
8324
TALLOC_CTX *_mem_save_group_handle_0;
8325
if (flags & NDR_IN) {
8326
if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
8327
NDR_PULL_ALLOC(ndr, r->in.group_handle);
8329
_mem_save_group_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
8330
NDR_PULL_SET_MEM_CTX(ndr, r->in.group_handle, LIBNDR_FLAG_REF_ALLOC);
8331
NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS, r->in.group_handle));
8332
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_group_handle_0, LIBNDR_FLAG_REF_ALLOC);
8333
NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->in.unknown1));
8334
NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->in.unknown2));
8336
if (flags & NDR_OUT) {
8337
NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
8339
return NDR_ERR_SUCCESS;
8342
_PUBLIC_ void ndr_print_samr_SetMemberAttributesOfGroup(struct ndr_print *ndr, const char *name, int flags, const struct samr_SetMemberAttributesOfGroup *r)
8344
ndr_print_struct(ndr, name, "samr_SetMemberAttributesOfGroup");
8345
if (r == NULL) { ndr_print_null(ndr); return; }
8347
if (flags & NDR_SET_VALUES) {
8348
ndr->flags |= LIBNDR_PRINT_SET_VALUES;
8350
if (flags & NDR_IN) {
8351
ndr_print_struct(ndr, "in", "samr_SetMemberAttributesOfGroup");
8353
ndr_print_ptr(ndr, "group_handle", r->in.group_handle);
8355
ndr_print_policy_handle(ndr, "group_handle", r->in.group_handle);
8357
ndr_print_uint32(ndr, "unknown1", r->in.unknown1);
8358
ndr_print_uint32(ndr, "unknown2", r->in.unknown2);
8361
if (flags & NDR_OUT) {
8362
ndr_print_struct(ndr, "out", "samr_SetMemberAttributesOfGroup");
8364
ndr_print_NTSTATUS(ndr, "result", r->out.result);
8370
static enum ndr_err_code ndr_push_samr_OpenAlias(struct ndr_push *ndr, int flags, const struct samr_OpenAlias *r)
8372
if (flags & NDR_IN) {
8373
if (r->in.domain_handle == NULL) {
8374
return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
8376
NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS, r->in.domain_handle));
8377
NDR_CHECK(ndr_push_samr_AliasAccessMask(ndr, NDR_SCALARS, r->in.access_mask));
8378
NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->in.rid));
8380
if (flags & NDR_OUT) {
8381
if (r->out.alias_handle == NULL) {
8382
return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
8384
NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS, r->out.alias_handle));
8385
NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
8387
return NDR_ERR_SUCCESS;
8390
static enum ndr_err_code ndr_pull_samr_OpenAlias(struct ndr_pull *ndr, int flags, struct samr_OpenAlias *r)
8392
TALLOC_CTX *_mem_save_domain_handle_0;
8393
TALLOC_CTX *_mem_save_alias_handle_0;
8394
if (flags & NDR_IN) {
8395
ZERO_STRUCT(r->out);
8397
if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
8398
NDR_PULL_ALLOC(ndr, r->in.domain_handle);
8400
_mem_save_domain_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
8401
NDR_PULL_SET_MEM_CTX(ndr, r->in.domain_handle, LIBNDR_FLAG_REF_ALLOC);
8402
NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS, r->in.domain_handle));
8403
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_domain_handle_0, LIBNDR_FLAG_REF_ALLOC);
8404
NDR_CHECK(ndr_pull_samr_AliasAccessMask(ndr, NDR_SCALARS, &r->in.access_mask));
8405
NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->in.rid));
8406
NDR_PULL_ALLOC(ndr, r->out.alias_handle);
8407
ZERO_STRUCTP(r->out.alias_handle);
8409
if (flags & NDR_OUT) {
8410
if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
8411
NDR_PULL_ALLOC(ndr, r->out.alias_handle);
8413
_mem_save_alias_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
8414
NDR_PULL_SET_MEM_CTX(ndr, r->out.alias_handle, LIBNDR_FLAG_REF_ALLOC);
8415
NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS, r->out.alias_handle));
8416
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_alias_handle_0, LIBNDR_FLAG_REF_ALLOC);
8417
NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
8419
return NDR_ERR_SUCCESS;
8422
_PUBLIC_ void ndr_print_samr_OpenAlias(struct ndr_print *ndr, const char *name, int flags, const struct samr_OpenAlias *r)
8424
ndr_print_struct(ndr, name, "samr_OpenAlias");
8425
if (r == NULL) { ndr_print_null(ndr); return; }
8427
if (flags & NDR_SET_VALUES) {
8428
ndr->flags |= LIBNDR_PRINT_SET_VALUES;
8430
if (flags & NDR_IN) {
8431
ndr_print_struct(ndr, "in", "samr_OpenAlias");
8433
ndr_print_ptr(ndr, "domain_handle", r->in.domain_handle);
8435
ndr_print_policy_handle(ndr, "domain_handle", r->in.domain_handle);
8437
ndr_print_samr_AliasAccessMask(ndr, "access_mask", r->in.access_mask);
8438
ndr_print_uint32(ndr, "rid", r->in.rid);
8441
if (flags & NDR_OUT) {
8442
ndr_print_struct(ndr, "out", "samr_OpenAlias");
8444
ndr_print_ptr(ndr, "alias_handle", r->out.alias_handle);
8446
ndr_print_policy_handle(ndr, "alias_handle", r->out.alias_handle);
8448
ndr_print_NTSTATUS(ndr, "result", r->out.result);
8454
static enum ndr_err_code ndr_push_samr_QueryAliasInfo(struct ndr_push *ndr, int flags, const struct samr_QueryAliasInfo *r)
8456
if (flags & NDR_IN) {
8457
if (r->in.alias_handle == NULL) {
8458
return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
8460
NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS, r->in.alias_handle));
8461
NDR_CHECK(ndr_push_samr_AliasInfoEnum(ndr, NDR_SCALARS, r->in.level));
8463
if (flags & NDR_OUT) {
8464
if (r->out.info == NULL) {
8465
return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
8467
NDR_CHECK(ndr_push_unique_ptr(ndr, *r->out.info));
8469
NDR_CHECK(ndr_push_set_switch_value(ndr, *r->out.info, r->in.level));
8470
NDR_CHECK(ndr_push_samr_AliasInfo(ndr, NDR_SCALARS|NDR_BUFFERS, *r->out.info));
8472
NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
8474
return NDR_ERR_SUCCESS;
8477
static enum ndr_err_code ndr_pull_samr_QueryAliasInfo(struct ndr_pull *ndr, int flags, struct samr_QueryAliasInfo *r)
8480
TALLOC_CTX *_mem_save_alias_handle_0;
8481
TALLOC_CTX *_mem_save_info_0;
8482
TALLOC_CTX *_mem_save_info_1;
8483
if (flags & NDR_IN) {
8484
ZERO_STRUCT(r->out);
8486
if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
8487
NDR_PULL_ALLOC(ndr, r->in.alias_handle);
8489
_mem_save_alias_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
8490
NDR_PULL_SET_MEM_CTX(ndr, r->in.alias_handle, LIBNDR_FLAG_REF_ALLOC);
8491
NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS, r->in.alias_handle));
8492
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_alias_handle_0, LIBNDR_FLAG_REF_ALLOC);
8493
NDR_CHECK(ndr_pull_samr_AliasInfoEnum(ndr, NDR_SCALARS, &r->in.level));
8494
NDR_PULL_ALLOC(ndr, r->out.info);
8495
ZERO_STRUCTP(r->out.info);
8497
if (flags & NDR_OUT) {
8498
if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
8499
NDR_PULL_ALLOC(ndr, r->out.info);
8501
_mem_save_info_0 = NDR_PULL_GET_MEM_CTX(ndr);
8502
NDR_PULL_SET_MEM_CTX(ndr, r->out.info, LIBNDR_FLAG_REF_ALLOC);
8503
NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_info));
8505
NDR_PULL_ALLOC(ndr, *r->out.info);
8507
*r->out.info = NULL;
8510
_mem_save_info_1 = NDR_PULL_GET_MEM_CTX(ndr);
8511
NDR_PULL_SET_MEM_CTX(ndr, *r->out.info, 0);
8512
NDR_CHECK(ndr_pull_set_switch_value(ndr, *r->out.info, r->in.level));
8513
NDR_CHECK(ndr_pull_samr_AliasInfo(ndr, NDR_SCALARS|NDR_BUFFERS, *r->out.info));
8514
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_info_1, 0);
8516
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_info_0, LIBNDR_FLAG_REF_ALLOC);
8517
NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
8519
return NDR_ERR_SUCCESS;
8522
_PUBLIC_ void ndr_print_samr_QueryAliasInfo(struct ndr_print *ndr, const char *name, int flags, const struct samr_QueryAliasInfo *r)
8524
ndr_print_struct(ndr, name, "samr_QueryAliasInfo");
8525
if (r == NULL) { ndr_print_null(ndr); return; }
8527
if (flags & NDR_SET_VALUES) {
8528
ndr->flags |= LIBNDR_PRINT_SET_VALUES;
8530
if (flags & NDR_IN) {
8531
ndr_print_struct(ndr, "in", "samr_QueryAliasInfo");
8533
ndr_print_ptr(ndr, "alias_handle", r->in.alias_handle);
8535
ndr_print_policy_handle(ndr, "alias_handle", r->in.alias_handle);
8537
ndr_print_samr_AliasInfoEnum(ndr, "level", r->in.level);
8540
if (flags & NDR_OUT) {
8541
ndr_print_struct(ndr, "out", "samr_QueryAliasInfo");
8543
ndr_print_ptr(ndr, "info", r->out.info);
8545
ndr_print_ptr(ndr, "info", *r->out.info);
8548
ndr_print_set_switch_value(ndr, *r->out.info, r->in.level);
8549
ndr_print_samr_AliasInfo(ndr, "info", *r->out.info);
8553
ndr_print_NTSTATUS(ndr, "result", r->out.result);
8559
static enum ndr_err_code ndr_push_samr_SetAliasInfo(struct ndr_push *ndr, int flags, const struct samr_SetAliasInfo *r)
8561
if (flags & NDR_IN) {
8562
if (r->in.alias_handle == NULL) {
8563
return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
8565
NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS, r->in.alias_handle));
8566
NDR_CHECK(ndr_push_samr_AliasInfoEnum(ndr, NDR_SCALARS, r->in.level));
8567
if (r->in.info == NULL) {
8568
return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
8570
NDR_CHECK(ndr_push_set_switch_value(ndr, r->in.info, r->in.level));
8571
NDR_CHECK(ndr_push_samr_AliasInfo(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.info));
8573
if (flags & NDR_OUT) {
8574
NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
8576
return NDR_ERR_SUCCESS;
8579
static enum ndr_err_code ndr_pull_samr_SetAliasInfo(struct ndr_pull *ndr, int flags, struct samr_SetAliasInfo *r)
8581
TALLOC_CTX *_mem_save_alias_handle_0;
8582
TALLOC_CTX *_mem_save_info_0;
8583
if (flags & NDR_IN) {
8584
if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
8585
NDR_PULL_ALLOC(ndr, r->in.alias_handle);
8587
_mem_save_alias_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
8588
NDR_PULL_SET_MEM_CTX(ndr, r->in.alias_handle, LIBNDR_FLAG_REF_ALLOC);
8589
NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS, r->in.alias_handle));
8590
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_alias_handle_0, LIBNDR_FLAG_REF_ALLOC);
8591
NDR_CHECK(ndr_pull_samr_AliasInfoEnum(ndr, NDR_SCALARS, &r->in.level));
8592
if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
8593
NDR_PULL_ALLOC(ndr, r->in.info);
8595
_mem_save_info_0 = NDR_PULL_GET_MEM_CTX(ndr);
8596
NDR_PULL_SET_MEM_CTX(ndr, r->in.info, LIBNDR_FLAG_REF_ALLOC);
8597
NDR_CHECK(ndr_pull_set_switch_value(ndr, r->in.info, r->in.level));
8598
NDR_CHECK(ndr_pull_samr_AliasInfo(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.info));
8599
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_info_0, LIBNDR_FLAG_REF_ALLOC);
8601
if (flags & NDR_OUT) {
8602
NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
8604
return NDR_ERR_SUCCESS;
8607
_PUBLIC_ void ndr_print_samr_SetAliasInfo(struct ndr_print *ndr, const char *name, int flags, const struct samr_SetAliasInfo *r)
8609
ndr_print_struct(ndr, name, "samr_SetAliasInfo");
8610
if (r == NULL) { ndr_print_null(ndr); return; }
8612
if (flags & NDR_SET_VALUES) {
8613
ndr->flags |= LIBNDR_PRINT_SET_VALUES;
8615
if (flags & NDR_IN) {
8616
ndr_print_struct(ndr, "in", "samr_SetAliasInfo");
8618
ndr_print_ptr(ndr, "alias_handle", r->in.alias_handle);
8620
ndr_print_policy_handle(ndr, "alias_handle", r->in.alias_handle);
8622
ndr_print_samr_AliasInfoEnum(ndr, "level", r->in.level);
8623
ndr_print_ptr(ndr, "info", r->in.info);
8625
ndr_print_set_switch_value(ndr, r->in.info, r->in.level);
8626
ndr_print_samr_AliasInfo(ndr, "info", r->in.info);
8630
if (flags & NDR_OUT) {
8631
ndr_print_struct(ndr, "out", "samr_SetAliasInfo");
8633
ndr_print_NTSTATUS(ndr, "result", r->out.result);
8639
static enum ndr_err_code ndr_push_samr_DeleteDomAlias(struct ndr_push *ndr, int flags, const struct samr_DeleteDomAlias *r)
8641
if (flags & NDR_IN) {
8642
if (r->in.alias_handle == NULL) {
8643
return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
8645
NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS, r->in.alias_handle));
8647
if (flags & NDR_OUT) {
8648
if (r->out.alias_handle == NULL) {
8649
return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
8651
NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS, r->out.alias_handle));
8652
NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
8654
return NDR_ERR_SUCCESS;
8657
static enum ndr_err_code ndr_pull_samr_DeleteDomAlias(struct ndr_pull *ndr, int flags, struct samr_DeleteDomAlias *r)
8659
TALLOC_CTX *_mem_save_alias_handle_0;
8660
if (flags & NDR_IN) {
8661
ZERO_STRUCT(r->out);
8663
if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
8664
NDR_PULL_ALLOC(ndr, r->in.alias_handle);
8666
_mem_save_alias_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
8667
NDR_PULL_SET_MEM_CTX(ndr, r->in.alias_handle, LIBNDR_FLAG_REF_ALLOC);
8668
NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS, r->in.alias_handle));
8669
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_alias_handle_0, LIBNDR_FLAG_REF_ALLOC);
8670
NDR_PULL_ALLOC(ndr, r->out.alias_handle);
8671
*r->out.alias_handle = *r->in.alias_handle;
8673
if (flags & NDR_OUT) {
8674
if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
8675
NDR_PULL_ALLOC(ndr, r->out.alias_handle);
8677
_mem_save_alias_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
8678
NDR_PULL_SET_MEM_CTX(ndr, r->out.alias_handle, LIBNDR_FLAG_REF_ALLOC);
8679
NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS, r->out.alias_handle));
8680
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_alias_handle_0, LIBNDR_FLAG_REF_ALLOC);
8681
NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
8683
return NDR_ERR_SUCCESS;
8686
_PUBLIC_ void ndr_print_samr_DeleteDomAlias(struct ndr_print *ndr, const char *name, int flags, const struct samr_DeleteDomAlias *r)
8688
ndr_print_struct(ndr, name, "samr_DeleteDomAlias");
8689
if (r == NULL) { ndr_print_null(ndr); return; }
8691
if (flags & NDR_SET_VALUES) {
8692
ndr->flags |= LIBNDR_PRINT_SET_VALUES;
8694
if (flags & NDR_IN) {
8695
ndr_print_struct(ndr, "in", "samr_DeleteDomAlias");
8697
ndr_print_ptr(ndr, "alias_handle", r->in.alias_handle);
8699
ndr_print_policy_handle(ndr, "alias_handle", r->in.alias_handle);
8703
if (flags & NDR_OUT) {
8704
ndr_print_struct(ndr, "out", "samr_DeleteDomAlias");
8706
ndr_print_ptr(ndr, "alias_handle", r->out.alias_handle);
8708
ndr_print_policy_handle(ndr, "alias_handle", r->out.alias_handle);
8710
ndr_print_NTSTATUS(ndr, "result", r->out.result);
8716
static enum ndr_err_code ndr_push_samr_AddAliasMember(struct ndr_push *ndr, int flags, const struct samr_AddAliasMember *r)
8718
if (flags & NDR_IN) {
8719
if (r->in.alias_handle == NULL) {
8720
return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
8722
NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS, r->in.alias_handle));
8723
if (r->in.sid == NULL) {
8724
return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
8726
NDR_CHECK(ndr_push_dom_sid2(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.sid));
8728
if (flags & NDR_OUT) {
8729
NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
8731
return NDR_ERR_SUCCESS;
8734
static enum ndr_err_code ndr_pull_samr_AddAliasMember(struct ndr_pull *ndr, int flags, struct samr_AddAliasMember *r)
8736
TALLOC_CTX *_mem_save_alias_handle_0;
8737
TALLOC_CTX *_mem_save_sid_0;
8738
if (flags & NDR_IN) {
8739
if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
8740
NDR_PULL_ALLOC(ndr, r->in.alias_handle);
8742
_mem_save_alias_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
8743
NDR_PULL_SET_MEM_CTX(ndr, r->in.alias_handle, LIBNDR_FLAG_REF_ALLOC);
8744
NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS, r->in.alias_handle));
8745
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_alias_handle_0, LIBNDR_FLAG_REF_ALLOC);
8746
if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
8747
NDR_PULL_ALLOC(ndr, r->in.sid);
8749
_mem_save_sid_0 = NDR_PULL_GET_MEM_CTX(ndr);
8750
NDR_PULL_SET_MEM_CTX(ndr, r->in.sid, LIBNDR_FLAG_REF_ALLOC);
8751
NDR_CHECK(ndr_pull_dom_sid2(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.sid));
8752
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_sid_0, LIBNDR_FLAG_REF_ALLOC);
8754
if (flags & NDR_OUT) {
8755
NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
8757
return NDR_ERR_SUCCESS;
8760
_PUBLIC_ void ndr_print_samr_AddAliasMember(struct ndr_print *ndr, const char *name, int flags, const struct samr_AddAliasMember *r)
8762
ndr_print_struct(ndr, name, "samr_AddAliasMember");
8763
if (r == NULL) { ndr_print_null(ndr); return; }
8765
if (flags & NDR_SET_VALUES) {
8766
ndr->flags |= LIBNDR_PRINT_SET_VALUES;
8768
if (flags & NDR_IN) {
8769
ndr_print_struct(ndr, "in", "samr_AddAliasMember");
8771
ndr_print_ptr(ndr, "alias_handle", r->in.alias_handle);
8773
ndr_print_policy_handle(ndr, "alias_handle", r->in.alias_handle);
8775
ndr_print_ptr(ndr, "sid", r->in.sid);
8777
ndr_print_dom_sid2(ndr, "sid", r->in.sid);
8781
if (flags & NDR_OUT) {
8782
ndr_print_struct(ndr, "out", "samr_AddAliasMember");
8784
ndr_print_NTSTATUS(ndr, "result", r->out.result);
8790
static enum ndr_err_code ndr_push_samr_DeleteAliasMember(struct ndr_push *ndr, int flags, const struct samr_DeleteAliasMember *r)
8792
if (flags & NDR_IN) {
8793
if (r->in.alias_handle == NULL) {
8794
return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
8796
NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS, r->in.alias_handle));
8797
if (r->in.sid == NULL) {
8798
return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
8800
NDR_CHECK(ndr_push_dom_sid2(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.sid));
8802
if (flags & NDR_OUT) {
8803
NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
8805
return NDR_ERR_SUCCESS;
8808
static enum ndr_err_code ndr_pull_samr_DeleteAliasMember(struct ndr_pull *ndr, int flags, struct samr_DeleteAliasMember *r)
8810
TALLOC_CTX *_mem_save_alias_handle_0;
8811
TALLOC_CTX *_mem_save_sid_0;
8812
if (flags & NDR_IN) {
8813
if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
8814
NDR_PULL_ALLOC(ndr, r->in.alias_handle);
8816
_mem_save_alias_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
8817
NDR_PULL_SET_MEM_CTX(ndr, r->in.alias_handle, LIBNDR_FLAG_REF_ALLOC);
8818
NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS, r->in.alias_handle));
8819
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_alias_handle_0, LIBNDR_FLAG_REF_ALLOC);
8820
if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
8821
NDR_PULL_ALLOC(ndr, r->in.sid);
8823
_mem_save_sid_0 = NDR_PULL_GET_MEM_CTX(ndr);
8824
NDR_PULL_SET_MEM_CTX(ndr, r->in.sid, LIBNDR_FLAG_REF_ALLOC);
8825
NDR_CHECK(ndr_pull_dom_sid2(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.sid));
8826
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_sid_0, LIBNDR_FLAG_REF_ALLOC);
8828
if (flags & NDR_OUT) {
8829
NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
8831
return NDR_ERR_SUCCESS;
8834
_PUBLIC_ void ndr_print_samr_DeleteAliasMember(struct ndr_print *ndr, const char *name, int flags, const struct samr_DeleteAliasMember *r)
8836
ndr_print_struct(ndr, name, "samr_DeleteAliasMember");
8837
if (r == NULL) { ndr_print_null(ndr); return; }
8839
if (flags & NDR_SET_VALUES) {
8840
ndr->flags |= LIBNDR_PRINT_SET_VALUES;
8842
if (flags & NDR_IN) {
8843
ndr_print_struct(ndr, "in", "samr_DeleteAliasMember");
8845
ndr_print_ptr(ndr, "alias_handle", r->in.alias_handle);
8847
ndr_print_policy_handle(ndr, "alias_handle", r->in.alias_handle);
8849
ndr_print_ptr(ndr, "sid", r->in.sid);
8851
ndr_print_dom_sid2(ndr, "sid", r->in.sid);
8855
if (flags & NDR_OUT) {
8856
ndr_print_struct(ndr, "out", "samr_DeleteAliasMember");
8858
ndr_print_NTSTATUS(ndr, "result", r->out.result);
8864
static enum ndr_err_code ndr_push_samr_GetMembersInAlias(struct ndr_push *ndr, int flags, const struct samr_GetMembersInAlias *r)
8866
if (flags & NDR_IN) {
8867
if (r->in.alias_handle == NULL) {
8868
return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
8870
NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS, r->in.alias_handle));
8872
if (flags & NDR_OUT) {
8873
if (r->out.sids == NULL) {
8874
return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
8876
NDR_CHECK(ndr_push_lsa_SidArray(ndr, NDR_SCALARS|NDR_BUFFERS, r->out.sids));
8877
NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
8879
return NDR_ERR_SUCCESS;
8882
static enum ndr_err_code ndr_pull_samr_GetMembersInAlias(struct ndr_pull *ndr, int flags, struct samr_GetMembersInAlias *r)
8884
TALLOC_CTX *_mem_save_alias_handle_0;
8885
TALLOC_CTX *_mem_save_sids_0;
8886
if (flags & NDR_IN) {
8887
ZERO_STRUCT(r->out);
8889
if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
8890
NDR_PULL_ALLOC(ndr, r->in.alias_handle);
8892
_mem_save_alias_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
8893
NDR_PULL_SET_MEM_CTX(ndr, r->in.alias_handle, LIBNDR_FLAG_REF_ALLOC);
8894
NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS, r->in.alias_handle));
8895
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_alias_handle_0, LIBNDR_FLAG_REF_ALLOC);
8896
NDR_PULL_ALLOC(ndr, r->out.sids);
8897
ZERO_STRUCTP(r->out.sids);
8899
if (flags & NDR_OUT) {
8900
if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
8901
NDR_PULL_ALLOC(ndr, r->out.sids);
8903
_mem_save_sids_0 = NDR_PULL_GET_MEM_CTX(ndr);
8904
NDR_PULL_SET_MEM_CTX(ndr, r->out.sids, LIBNDR_FLAG_REF_ALLOC);
8905
NDR_CHECK(ndr_pull_lsa_SidArray(ndr, NDR_SCALARS|NDR_BUFFERS, r->out.sids));
8906
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_sids_0, LIBNDR_FLAG_REF_ALLOC);
8907
NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
8909
return NDR_ERR_SUCCESS;
8912
_PUBLIC_ void ndr_print_samr_GetMembersInAlias(struct ndr_print *ndr, const char *name, int flags, const struct samr_GetMembersInAlias *r)
8914
ndr_print_struct(ndr, name, "samr_GetMembersInAlias");
8915
if (r == NULL) { ndr_print_null(ndr); return; }
8917
if (flags & NDR_SET_VALUES) {
8918
ndr->flags |= LIBNDR_PRINT_SET_VALUES;
8920
if (flags & NDR_IN) {
8921
ndr_print_struct(ndr, "in", "samr_GetMembersInAlias");
8923
ndr_print_ptr(ndr, "alias_handle", r->in.alias_handle);
8925
ndr_print_policy_handle(ndr, "alias_handle", r->in.alias_handle);
8929
if (flags & NDR_OUT) {
8930
ndr_print_struct(ndr, "out", "samr_GetMembersInAlias");
8932
ndr_print_ptr(ndr, "sids", r->out.sids);
8934
ndr_print_lsa_SidArray(ndr, "sids", r->out.sids);
8936
ndr_print_NTSTATUS(ndr, "result", r->out.result);
8942
_PUBLIC_ enum ndr_err_code ndr_push_samr_OpenUser(struct ndr_push *ndr, int flags, const struct samr_OpenUser *r)
8944
if (flags & NDR_IN) {
8945
if (r->in.domain_handle == NULL) {
8946
return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
8948
NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS, r->in.domain_handle));
8949
NDR_CHECK(ndr_push_samr_UserAccessMask(ndr, NDR_SCALARS, r->in.access_mask));
8950
NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->in.rid));
8952
if (flags & NDR_OUT) {
8953
if (r->out.user_handle == NULL) {
8954
return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
8956
NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS, r->out.user_handle));
8957
NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
8959
return NDR_ERR_SUCCESS;
8962
_PUBLIC_ enum ndr_err_code ndr_pull_samr_OpenUser(struct ndr_pull *ndr, int flags, struct samr_OpenUser *r)
8964
TALLOC_CTX *_mem_save_domain_handle_0;
8965
TALLOC_CTX *_mem_save_user_handle_0;
8966
if (flags & NDR_IN) {
8967
ZERO_STRUCT(r->out);
8969
if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
8970
NDR_PULL_ALLOC(ndr, r->in.domain_handle);
8972
_mem_save_domain_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
8973
NDR_PULL_SET_MEM_CTX(ndr, r->in.domain_handle, LIBNDR_FLAG_REF_ALLOC);
8974
NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS, r->in.domain_handle));
8975
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_domain_handle_0, LIBNDR_FLAG_REF_ALLOC);
8976
NDR_CHECK(ndr_pull_samr_UserAccessMask(ndr, NDR_SCALARS, &r->in.access_mask));
8977
NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->in.rid));
8978
NDR_PULL_ALLOC(ndr, r->out.user_handle);
8979
ZERO_STRUCTP(r->out.user_handle);
8981
if (flags & NDR_OUT) {
8982
if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
8983
NDR_PULL_ALLOC(ndr, r->out.user_handle);
8985
_mem_save_user_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
8986
NDR_PULL_SET_MEM_CTX(ndr, r->out.user_handle, LIBNDR_FLAG_REF_ALLOC);
8987
NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS, r->out.user_handle));
8988
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_user_handle_0, LIBNDR_FLAG_REF_ALLOC);
8989
NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
8991
return NDR_ERR_SUCCESS;
8994
_PUBLIC_ void ndr_print_samr_OpenUser(struct ndr_print *ndr, const char *name, int flags, const struct samr_OpenUser *r)
8996
ndr_print_struct(ndr, name, "samr_OpenUser");
8997
if (r == NULL) { ndr_print_null(ndr); return; }
8999
if (flags & NDR_SET_VALUES) {
9000
ndr->flags |= LIBNDR_PRINT_SET_VALUES;
9002
if (flags & NDR_IN) {
9003
ndr_print_struct(ndr, "in", "samr_OpenUser");
9005
ndr_print_ptr(ndr, "domain_handle", r->in.domain_handle);
9007
ndr_print_policy_handle(ndr, "domain_handle", r->in.domain_handle);
9009
ndr_print_samr_UserAccessMask(ndr, "access_mask", r->in.access_mask);
9010
ndr_print_uint32(ndr, "rid", r->in.rid);
9013
if (flags & NDR_OUT) {
9014
ndr_print_struct(ndr, "out", "samr_OpenUser");
9016
ndr_print_ptr(ndr, "user_handle", r->out.user_handle);
9018
ndr_print_policy_handle(ndr, "user_handle", r->out.user_handle);
9020
ndr_print_NTSTATUS(ndr, "result", r->out.result);
9026
static enum ndr_err_code ndr_push_samr_DeleteUser(struct ndr_push *ndr, int flags, const struct samr_DeleteUser *r)
9028
if (flags & NDR_IN) {
9029
if (r->in.user_handle == NULL) {
9030
return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
9032
NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS, r->in.user_handle));
9034
if (flags & NDR_OUT) {
9035
if (r->out.user_handle == NULL) {
9036
return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
9038
NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS, r->out.user_handle));
9039
NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
9041
return NDR_ERR_SUCCESS;
9044
static enum ndr_err_code ndr_pull_samr_DeleteUser(struct ndr_pull *ndr, int flags, struct samr_DeleteUser *r)
9046
TALLOC_CTX *_mem_save_user_handle_0;
9047
if (flags & NDR_IN) {
9048
ZERO_STRUCT(r->out);
9050
if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
9051
NDR_PULL_ALLOC(ndr, r->in.user_handle);
9053
_mem_save_user_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
9054
NDR_PULL_SET_MEM_CTX(ndr, r->in.user_handle, LIBNDR_FLAG_REF_ALLOC);
9055
NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS, r->in.user_handle));
9056
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_user_handle_0, LIBNDR_FLAG_REF_ALLOC);
9057
NDR_PULL_ALLOC(ndr, r->out.user_handle);
9058
*r->out.user_handle = *r->in.user_handle;
9060
if (flags & NDR_OUT) {
9061
if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
9062
NDR_PULL_ALLOC(ndr, r->out.user_handle);
9064
_mem_save_user_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
9065
NDR_PULL_SET_MEM_CTX(ndr, r->out.user_handle, LIBNDR_FLAG_REF_ALLOC);
9066
NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS, r->out.user_handle));
9067
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_user_handle_0, LIBNDR_FLAG_REF_ALLOC);
9068
NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
9070
return NDR_ERR_SUCCESS;
9073
_PUBLIC_ void ndr_print_samr_DeleteUser(struct ndr_print *ndr, const char *name, int flags, const struct samr_DeleteUser *r)
9075
ndr_print_struct(ndr, name, "samr_DeleteUser");
9076
if (r == NULL) { ndr_print_null(ndr); return; }
9078
if (flags & NDR_SET_VALUES) {
9079
ndr->flags |= LIBNDR_PRINT_SET_VALUES;
9081
if (flags & NDR_IN) {
9082
ndr_print_struct(ndr, "in", "samr_DeleteUser");
9084
ndr_print_ptr(ndr, "user_handle", r->in.user_handle);
9086
ndr_print_policy_handle(ndr, "user_handle", r->in.user_handle);
9090
if (flags & NDR_OUT) {
9091
ndr_print_struct(ndr, "out", "samr_DeleteUser");
9093
ndr_print_ptr(ndr, "user_handle", r->out.user_handle);
9095
ndr_print_policy_handle(ndr, "user_handle", r->out.user_handle);
9097
ndr_print_NTSTATUS(ndr, "result", r->out.result);
9103
_PUBLIC_ enum ndr_err_code ndr_push_samr_QueryUserInfo(struct ndr_push *ndr, int flags, const struct samr_QueryUserInfo *r)
9105
if (flags & NDR_IN) {
9106
if (r->in.user_handle == NULL) {
9107
return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
9109
NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS, r->in.user_handle));
9110
NDR_CHECK(ndr_push_samr_UserInfoLevel(ndr, NDR_SCALARS, r->in.level));
9112
if (flags & NDR_OUT) {
9113
if (r->out.info == NULL) {
9114
return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
9116
NDR_CHECK(ndr_push_unique_ptr(ndr, *r->out.info));
9118
NDR_CHECK(ndr_push_set_switch_value(ndr, *r->out.info, r->in.level));
9119
NDR_CHECK(ndr_push_samr_UserInfo(ndr, NDR_SCALARS|NDR_BUFFERS, *r->out.info));
9121
NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
9123
return NDR_ERR_SUCCESS;
9126
_PUBLIC_ enum ndr_err_code ndr_pull_samr_QueryUserInfo(struct ndr_pull *ndr, int flags, struct samr_QueryUserInfo *r)
9129
TALLOC_CTX *_mem_save_user_handle_0;
9130
TALLOC_CTX *_mem_save_info_0;
9131
TALLOC_CTX *_mem_save_info_1;
9132
if (flags & NDR_IN) {
9133
ZERO_STRUCT(r->out);
9135
if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
9136
NDR_PULL_ALLOC(ndr, r->in.user_handle);
9138
_mem_save_user_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
9139
NDR_PULL_SET_MEM_CTX(ndr, r->in.user_handle, LIBNDR_FLAG_REF_ALLOC);
9140
NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS, r->in.user_handle));
9141
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_user_handle_0, LIBNDR_FLAG_REF_ALLOC);
9142
NDR_CHECK(ndr_pull_samr_UserInfoLevel(ndr, NDR_SCALARS, &r->in.level));
9143
NDR_PULL_ALLOC(ndr, r->out.info);
9144
ZERO_STRUCTP(r->out.info);
9146
if (flags & NDR_OUT) {
9147
if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
9148
NDR_PULL_ALLOC(ndr, r->out.info);
9150
_mem_save_info_0 = NDR_PULL_GET_MEM_CTX(ndr);
9151
NDR_PULL_SET_MEM_CTX(ndr, r->out.info, LIBNDR_FLAG_REF_ALLOC);
9152
NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_info));
9154
NDR_PULL_ALLOC(ndr, *r->out.info);
9156
*r->out.info = NULL;
9159
_mem_save_info_1 = NDR_PULL_GET_MEM_CTX(ndr);
9160
NDR_PULL_SET_MEM_CTX(ndr, *r->out.info, 0);
9161
NDR_CHECK(ndr_pull_set_switch_value(ndr, *r->out.info, r->in.level));
9162
NDR_CHECK(ndr_pull_samr_UserInfo(ndr, NDR_SCALARS|NDR_BUFFERS, *r->out.info));
9163
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_info_1, 0);
9165
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_info_0, LIBNDR_FLAG_REF_ALLOC);
9166
NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
9168
return NDR_ERR_SUCCESS;
9171
_PUBLIC_ void ndr_print_samr_QueryUserInfo(struct ndr_print *ndr, const char *name, int flags, const struct samr_QueryUserInfo *r)
9173
ndr_print_struct(ndr, name, "samr_QueryUserInfo");
9174
if (r == NULL) { ndr_print_null(ndr); return; }
9176
if (flags & NDR_SET_VALUES) {
9177
ndr->flags |= LIBNDR_PRINT_SET_VALUES;
9179
if (flags & NDR_IN) {
9180
ndr_print_struct(ndr, "in", "samr_QueryUserInfo");
9182
ndr_print_ptr(ndr, "user_handle", r->in.user_handle);
9184
ndr_print_policy_handle(ndr, "user_handle", r->in.user_handle);
9186
ndr_print_samr_UserInfoLevel(ndr, "level", r->in.level);
9189
if (flags & NDR_OUT) {
9190
ndr_print_struct(ndr, "out", "samr_QueryUserInfo");
9192
ndr_print_ptr(ndr, "info", r->out.info);
9194
ndr_print_ptr(ndr, "info", *r->out.info);
9197
ndr_print_set_switch_value(ndr, *r->out.info, r->in.level);
9198
ndr_print_samr_UserInfo(ndr, "info", *r->out.info);
9202
ndr_print_NTSTATUS(ndr, "result", r->out.result);
9208
_PUBLIC_ enum ndr_err_code ndr_push_samr_SetUserInfo(struct ndr_push *ndr, int flags, const struct samr_SetUserInfo *r)
9210
if (flags & NDR_IN) {
9211
if (r->in.user_handle == NULL) {
9212
return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
9214
NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS, r->in.user_handle));
9215
NDR_CHECK(ndr_push_samr_UserInfoLevel(ndr, NDR_SCALARS, r->in.level));
9216
if (r->in.info == NULL) {
9217
return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
9219
NDR_CHECK(ndr_push_set_switch_value(ndr, r->in.info, r->in.level));
9220
NDR_CHECK(ndr_push_samr_UserInfo(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.info));
9222
if (flags & NDR_OUT) {
9223
NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
9225
return NDR_ERR_SUCCESS;
9228
_PUBLIC_ enum ndr_err_code ndr_pull_samr_SetUserInfo(struct ndr_pull *ndr, int flags, struct samr_SetUserInfo *r)
9230
TALLOC_CTX *_mem_save_user_handle_0;
9231
TALLOC_CTX *_mem_save_info_0;
9232
if (flags & NDR_IN) {
9233
if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
9234
NDR_PULL_ALLOC(ndr, r->in.user_handle);
9236
_mem_save_user_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
9237
NDR_PULL_SET_MEM_CTX(ndr, r->in.user_handle, LIBNDR_FLAG_REF_ALLOC);
9238
NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS, r->in.user_handle));
9239
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_user_handle_0, LIBNDR_FLAG_REF_ALLOC);
9240
NDR_CHECK(ndr_pull_samr_UserInfoLevel(ndr, NDR_SCALARS, &r->in.level));
9241
if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
9242
NDR_PULL_ALLOC(ndr, r->in.info);
9244
_mem_save_info_0 = NDR_PULL_GET_MEM_CTX(ndr);
9245
NDR_PULL_SET_MEM_CTX(ndr, r->in.info, LIBNDR_FLAG_REF_ALLOC);
9246
NDR_CHECK(ndr_pull_set_switch_value(ndr, r->in.info, r->in.level));
9247
NDR_CHECK(ndr_pull_samr_UserInfo(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.info));
9248
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_info_0, LIBNDR_FLAG_REF_ALLOC);
9250
if (flags & NDR_OUT) {
9251
NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
9253
return NDR_ERR_SUCCESS;
9256
_PUBLIC_ void ndr_print_samr_SetUserInfo(struct ndr_print *ndr, const char *name, int flags, const struct samr_SetUserInfo *r)
9258
ndr_print_struct(ndr, name, "samr_SetUserInfo");
9259
if (r == NULL) { ndr_print_null(ndr); return; }
9261
if (flags & NDR_SET_VALUES) {
9262
ndr->flags |= LIBNDR_PRINT_SET_VALUES;
9264
if (flags & NDR_IN) {
9265
ndr_print_struct(ndr, "in", "samr_SetUserInfo");
9267
ndr_print_ptr(ndr, "user_handle", r->in.user_handle);
9269
ndr_print_policy_handle(ndr, "user_handle", r->in.user_handle);
9271
ndr_print_samr_UserInfoLevel(ndr, "level", r->in.level);
9272
ndr_print_ptr(ndr, "info", r->in.info);
9274
ndr_print_set_switch_value(ndr, r->in.info, r->in.level);
9275
ndr_print_samr_UserInfo(ndr, "info", r->in.info);
9279
if (flags & NDR_OUT) {
9280
ndr_print_struct(ndr, "out", "samr_SetUserInfo");
9282
ndr_print_NTSTATUS(ndr, "result", r->out.result);
9288
static enum ndr_err_code ndr_push_samr_ChangePasswordUser(struct ndr_push *ndr, int flags, const struct samr_ChangePasswordUser *r)
9290
if (flags & NDR_IN) {
9291
if (r->in.user_handle == NULL) {
9292
return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
9294
NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS, r->in.user_handle));
9295
NDR_CHECK(ndr_push_uint8(ndr, NDR_SCALARS, r->in.lm_present));
9296
NDR_CHECK(ndr_push_unique_ptr(ndr, r->in.old_lm_crypted));
9297
if (r->in.old_lm_crypted) {
9298
NDR_CHECK(ndr_push_samr_Password(ndr, NDR_SCALARS, r->in.old_lm_crypted));
9300
NDR_CHECK(ndr_push_unique_ptr(ndr, r->in.new_lm_crypted));
9301
if (r->in.new_lm_crypted) {
9302
NDR_CHECK(ndr_push_samr_Password(ndr, NDR_SCALARS, r->in.new_lm_crypted));
9304
NDR_CHECK(ndr_push_uint8(ndr, NDR_SCALARS, r->in.nt_present));
9305
NDR_CHECK(ndr_push_unique_ptr(ndr, r->in.old_nt_crypted));
9306
if (r->in.old_nt_crypted) {
9307
NDR_CHECK(ndr_push_samr_Password(ndr, NDR_SCALARS, r->in.old_nt_crypted));
9309
NDR_CHECK(ndr_push_unique_ptr(ndr, r->in.new_nt_crypted));
9310
if (r->in.new_nt_crypted) {
9311
NDR_CHECK(ndr_push_samr_Password(ndr, NDR_SCALARS, r->in.new_nt_crypted));
9313
NDR_CHECK(ndr_push_uint8(ndr, NDR_SCALARS, r->in.cross1_present));
9314
NDR_CHECK(ndr_push_unique_ptr(ndr, r->in.nt_cross));
9315
if (r->in.nt_cross) {
9316
NDR_CHECK(ndr_push_samr_Password(ndr, NDR_SCALARS, r->in.nt_cross));
9318
NDR_CHECK(ndr_push_uint8(ndr, NDR_SCALARS, r->in.cross2_present));
9319
NDR_CHECK(ndr_push_unique_ptr(ndr, r->in.lm_cross));
9320
if (r->in.lm_cross) {
9321
NDR_CHECK(ndr_push_samr_Password(ndr, NDR_SCALARS, r->in.lm_cross));
9324
if (flags & NDR_OUT) {
9325
NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
9327
return NDR_ERR_SUCCESS;
9330
static enum ndr_err_code ndr_pull_samr_ChangePasswordUser(struct ndr_pull *ndr, int flags, struct samr_ChangePasswordUser *r)
9332
uint32_t _ptr_old_lm_crypted;
9333
uint32_t _ptr_new_lm_crypted;
9334
uint32_t _ptr_old_nt_crypted;
9335
uint32_t _ptr_new_nt_crypted;
9336
uint32_t _ptr_nt_cross;
9337
uint32_t _ptr_lm_cross;
9338
TALLOC_CTX *_mem_save_user_handle_0;
9339
TALLOC_CTX *_mem_save_old_lm_crypted_0;
9340
TALLOC_CTX *_mem_save_new_lm_crypted_0;
9341
TALLOC_CTX *_mem_save_old_nt_crypted_0;
9342
TALLOC_CTX *_mem_save_new_nt_crypted_0;
9343
TALLOC_CTX *_mem_save_nt_cross_0;
9344
TALLOC_CTX *_mem_save_lm_cross_0;
9345
if (flags & NDR_IN) {
9346
if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
9347
NDR_PULL_ALLOC(ndr, r->in.user_handle);
9349
_mem_save_user_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
9350
NDR_PULL_SET_MEM_CTX(ndr, r->in.user_handle, LIBNDR_FLAG_REF_ALLOC);
9351
NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS, r->in.user_handle));
9352
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_user_handle_0, LIBNDR_FLAG_REF_ALLOC);
9353
NDR_CHECK(ndr_pull_uint8(ndr, NDR_SCALARS, &r->in.lm_present));
9354
NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_old_lm_crypted));
9355
if (_ptr_old_lm_crypted) {
9356
NDR_PULL_ALLOC(ndr, r->in.old_lm_crypted);
9358
r->in.old_lm_crypted = NULL;
9360
if (r->in.old_lm_crypted) {
9361
_mem_save_old_lm_crypted_0 = NDR_PULL_GET_MEM_CTX(ndr);
9362
NDR_PULL_SET_MEM_CTX(ndr, r->in.old_lm_crypted, 0);
9363
NDR_CHECK(ndr_pull_samr_Password(ndr, NDR_SCALARS, r->in.old_lm_crypted));
9364
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_old_lm_crypted_0, 0);
9366
NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_new_lm_crypted));
9367
if (_ptr_new_lm_crypted) {
9368
NDR_PULL_ALLOC(ndr, r->in.new_lm_crypted);
9370
r->in.new_lm_crypted = NULL;
9372
if (r->in.new_lm_crypted) {
9373
_mem_save_new_lm_crypted_0 = NDR_PULL_GET_MEM_CTX(ndr);
9374
NDR_PULL_SET_MEM_CTX(ndr, r->in.new_lm_crypted, 0);
9375
NDR_CHECK(ndr_pull_samr_Password(ndr, NDR_SCALARS, r->in.new_lm_crypted));
9376
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_new_lm_crypted_0, 0);
9378
NDR_CHECK(ndr_pull_uint8(ndr, NDR_SCALARS, &r->in.nt_present));
9379
NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_old_nt_crypted));
9380
if (_ptr_old_nt_crypted) {
9381
NDR_PULL_ALLOC(ndr, r->in.old_nt_crypted);
9383
r->in.old_nt_crypted = NULL;
9385
if (r->in.old_nt_crypted) {
9386
_mem_save_old_nt_crypted_0 = NDR_PULL_GET_MEM_CTX(ndr);
9387
NDR_PULL_SET_MEM_CTX(ndr, r->in.old_nt_crypted, 0);
9388
NDR_CHECK(ndr_pull_samr_Password(ndr, NDR_SCALARS, r->in.old_nt_crypted));
9389
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_old_nt_crypted_0, 0);
9391
NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_new_nt_crypted));
9392
if (_ptr_new_nt_crypted) {
9393
NDR_PULL_ALLOC(ndr, r->in.new_nt_crypted);
9395
r->in.new_nt_crypted = NULL;
9397
if (r->in.new_nt_crypted) {
9398
_mem_save_new_nt_crypted_0 = NDR_PULL_GET_MEM_CTX(ndr);
9399
NDR_PULL_SET_MEM_CTX(ndr, r->in.new_nt_crypted, 0);
9400
NDR_CHECK(ndr_pull_samr_Password(ndr, NDR_SCALARS, r->in.new_nt_crypted));
9401
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_new_nt_crypted_0, 0);
9403
NDR_CHECK(ndr_pull_uint8(ndr, NDR_SCALARS, &r->in.cross1_present));
9404
NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_nt_cross));
9405
if (_ptr_nt_cross) {
9406
NDR_PULL_ALLOC(ndr, r->in.nt_cross);
9408
r->in.nt_cross = NULL;
9410
if (r->in.nt_cross) {
9411
_mem_save_nt_cross_0 = NDR_PULL_GET_MEM_CTX(ndr);
9412
NDR_PULL_SET_MEM_CTX(ndr, r->in.nt_cross, 0);
9413
NDR_CHECK(ndr_pull_samr_Password(ndr, NDR_SCALARS, r->in.nt_cross));
9414
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_nt_cross_0, 0);
9416
NDR_CHECK(ndr_pull_uint8(ndr, NDR_SCALARS, &r->in.cross2_present));
9417
NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_lm_cross));
9418
if (_ptr_lm_cross) {
9419
NDR_PULL_ALLOC(ndr, r->in.lm_cross);
9421
r->in.lm_cross = NULL;
9423
if (r->in.lm_cross) {
9424
_mem_save_lm_cross_0 = NDR_PULL_GET_MEM_CTX(ndr);
9425
NDR_PULL_SET_MEM_CTX(ndr, r->in.lm_cross, 0);
9426
NDR_CHECK(ndr_pull_samr_Password(ndr, NDR_SCALARS, r->in.lm_cross));
9427
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_lm_cross_0, 0);
9430
if (flags & NDR_OUT) {
9431
NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
9433
return NDR_ERR_SUCCESS;
9436
_PUBLIC_ void ndr_print_samr_ChangePasswordUser(struct ndr_print *ndr, const char *name, int flags, const struct samr_ChangePasswordUser *r)
9438
ndr_print_struct(ndr, name, "samr_ChangePasswordUser");
9439
if (r == NULL) { ndr_print_null(ndr); return; }
9441
if (flags & NDR_SET_VALUES) {
9442
ndr->flags |= LIBNDR_PRINT_SET_VALUES;
9444
if (flags & NDR_IN) {
9445
ndr_print_struct(ndr, "in", "samr_ChangePasswordUser");
9447
ndr_print_ptr(ndr, "user_handle", r->in.user_handle);
9449
ndr_print_policy_handle(ndr, "user_handle", r->in.user_handle);
9451
ndr_print_uint8(ndr, "lm_present", r->in.lm_present);
9452
ndr_print_ptr(ndr, "old_lm_crypted", r->in.old_lm_crypted);
9454
if (r->in.old_lm_crypted) {
9455
ndr_print_samr_Password(ndr, "old_lm_crypted", r->in.old_lm_crypted);
9458
ndr_print_ptr(ndr, "new_lm_crypted", r->in.new_lm_crypted);
9460
if (r->in.new_lm_crypted) {
9461
ndr_print_samr_Password(ndr, "new_lm_crypted", r->in.new_lm_crypted);
9464
ndr_print_uint8(ndr, "nt_present", r->in.nt_present);
9465
ndr_print_ptr(ndr, "old_nt_crypted", r->in.old_nt_crypted);
9467
if (r->in.old_nt_crypted) {
9468
ndr_print_samr_Password(ndr, "old_nt_crypted", r->in.old_nt_crypted);
9471
ndr_print_ptr(ndr, "new_nt_crypted", r->in.new_nt_crypted);
9473
if (r->in.new_nt_crypted) {
9474
ndr_print_samr_Password(ndr, "new_nt_crypted", r->in.new_nt_crypted);
9477
ndr_print_uint8(ndr, "cross1_present", r->in.cross1_present);
9478
ndr_print_ptr(ndr, "nt_cross", r->in.nt_cross);
9480
if (r->in.nt_cross) {
9481
ndr_print_samr_Password(ndr, "nt_cross", r->in.nt_cross);
9484
ndr_print_uint8(ndr, "cross2_present", r->in.cross2_present);
9485
ndr_print_ptr(ndr, "lm_cross", r->in.lm_cross);
9487
if (r->in.lm_cross) {
9488
ndr_print_samr_Password(ndr, "lm_cross", r->in.lm_cross);
9493
if (flags & NDR_OUT) {
9494
ndr_print_struct(ndr, "out", "samr_ChangePasswordUser");
9496
ndr_print_NTSTATUS(ndr, "result", r->out.result);
9502
static enum ndr_err_code ndr_push_samr_GetGroupsForUser(struct ndr_push *ndr, int flags, const struct samr_GetGroupsForUser *r)
9504
if (flags & NDR_IN) {
9505
if (r->in.user_handle == NULL) {
9506
return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
9508
NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS, r->in.user_handle));
9510
if (flags & NDR_OUT) {
9511
if (r->out.rids == NULL) {
9512
return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
9514
NDR_CHECK(ndr_push_unique_ptr(ndr, *r->out.rids));
9516
NDR_CHECK(ndr_push_samr_RidWithAttributeArray(ndr, NDR_SCALARS|NDR_BUFFERS, *r->out.rids));
9518
NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
9520
return NDR_ERR_SUCCESS;
9523
static enum ndr_err_code ndr_pull_samr_GetGroupsForUser(struct ndr_pull *ndr, int flags, struct samr_GetGroupsForUser *r)
9526
TALLOC_CTX *_mem_save_user_handle_0;
9527
TALLOC_CTX *_mem_save_rids_0;
9528
TALLOC_CTX *_mem_save_rids_1;
9529
if (flags & NDR_IN) {
9530
ZERO_STRUCT(r->out);
9532
if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
9533
NDR_PULL_ALLOC(ndr, r->in.user_handle);
9535
_mem_save_user_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
9536
NDR_PULL_SET_MEM_CTX(ndr, r->in.user_handle, LIBNDR_FLAG_REF_ALLOC);
9537
NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS, r->in.user_handle));
9538
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_user_handle_0, LIBNDR_FLAG_REF_ALLOC);
9539
NDR_PULL_ALLOC(ndr, r->out.rids);
9540
ZERO_STRUCTP(r->out.rids);
9542
if (flags & NDR_OUT) {
9543
if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
9544
NDR_PULL_ALLOC(ndr, r->out.rids);
9546
_mem_save_rids_0 = NDR_PULL_GET_MEM_CTX(ndr);
9547
NDR_PULL_SET_MEM_CTX(ndr, r->out.rids, LIBNDR_FLAG_REF_ALLOC);
9548
NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_rids));
9550
NDR_PULL_ALLOC(ndr, *r->out.rids);
9552
*r->out.rids = NULL;
9555
_mem_save_rids_1 = NDR_PULL_GET_MEM_CTX(ndr);
9556
NDR_PULL_SET_MEM_CTX(ndr, *r->out.rids, 0);
9557
NDR_CHECK(ndr_pull_samr_RidWithAttributeArray(ndr, NDR_SCALARS|NDR_BUFFERS, *r->out.rids));
9558
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_rids_1, 0);
9560
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_rids_0, LIBNDR_FLAG_REF_ALLOC);
9561
NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
9563
return NDR_ERR_SUCCESS;
9566
_PUBLIC_ void ndr_print_samr_GetGroupsForUser(struct ndr_print *ndr, const char *name, int flags, const struct samr_GetGroupsForUser *r)
9568
ndr_print_struct(ndr, name, "samr_GetGroupsForUser");
9569
if (r == NULL) { ndr_print_null(ndr); return; }
9571
if (flags & NDR_SET_VALUES) {
9572
ndr->flags |= LIBNDR_PRINT_SET_VALUES;
9574
if (flags & NDR_IN) {
9575
ndr_print_struct(ndr, "in", "samr_GetGroupsForUser");
9577
ndr_print_ptr(ndr, "user_handle", r->in.user_handle);
9579
ndr_print_policy_handle(ndr, "user_handle", r->in.user_handle);
9583
if (flags & NDR_OUT) {
9584
ndr_print_struct(ndr, "out", "samr_GetGroupsForUser");
9586
ndr_print_ptr(ndr, "rids", r->out.rids);
9588
ndr_print_ptr(ndr, "rids", *r->out.rids);
9591
ndr_print_samr_RidWithAttributeArray(ndr, "rids", *r->out.rids);
9595
ndr_print_NTSTATUS(ndr, "result", r->out.result);
9601
static enum ndr_err_code ndr_push_samr_QueryDisplayInfo(struct ndr_push *ndr, int flags, const struct samr_QueryDisplayInfo *r)
9603
if (flags & NDR_IN) {
9604
if (r->in.domain_handle == NULL) {
9605
return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
9607
NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS, r->in.domain_handle));
9608
NDR_CHECK(ndr_push_uint16(ndr, NDR_SCALARS, r->in.level));
9609
NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->in.start_idx));
9610
NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->in.max_entries));
9611
NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->in.buf_size));
9613
if (flags & NDR_OUT) {
9614
if (r->out.total_size == NULL) {
9615
return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
9617
NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, *r->out.total_size));
9618
if (r->out.returned_size == NULL) {
9619
return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
9621
NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, *r->out.returned_size));
9622
if (r->out.info == NULL) {
9623
return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
9625
NDR_CHECK(ndr_push_set_switch_value(ndr, r->out.info, r->in.level));
9626
NDR_CHECK(ndr_push_samr_DispInfo(ndr, NDR_SCALARS|NDR_BUFFERS, r->out.info));
9627
NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
9629
return NDR_ERR_SUCCESS;
9632
static enum ndr_err_code ndr_pull_samr_QueryDisplayInfo(struct ndr_pull *ndr, int flags, struct samr_QueryDisplayInfo *r)
9634
TALLOC_CTX *_mem_save_domain_handle_0;
9635
TALLOC_CTX *_mem_save_total_size_0;
9636
TALLOC_CTX *_mem_save_returned_size_0;
9637
TALLOC_CTX *_mem_save_info_0;
9638
if (flags & NDR_IN) {
9639
ZERO_STRUCT(r->out);
9641
if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
9642
NDR_PULL_ALLOC(ndr, r->in.domain_handle);
9644
_mem_save_domain_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
9645
NDR_PULL_SET_MEM_CTX(ndr, r->in.domain_handle, LIBNDR_FLAG_REF_ALLOC);
9646
NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS, r->in.domain_handle));
9647
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_domain_handle_0, LIBNDR_FLAG_REF_ALLOC);
9648
NDR_CHECK(ndr_pull_uint16(ndr, NDR_SCALARS, &r->in.level));
9649
NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->in.start_idx));
9650
NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->in.max_entries));
9651
NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->in.buf_size));
9652
NDR_PULL_ALLOC(ndr, r->out.total_size);
9653
ZERO_STRUCTP(r->out.total_size);
9654
NDR_PULL_ALLOC(ndr, r->out.returned_size);
9655
ZERO_STRUCTP(r->out.returned_size);
9656
NDR_PULL_ALLOC(ndr, r->out.info);
9657
ZERO_STRUCTP(r->out.info);
9659
if (flags & NDR_OUT) {
9660
if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
9661
NDR_PULL_ALLOC(ndr, r->out.total_size);
9663
_mem_save_total_size_0 = NDR_PULL_GET_MEM_CTX(ndr);
9664
NDR_PULL_SET_MEM_CTX(ndr, r->out.total_size, LIBNDR_FLAG_REF_ALLOC);
9665
NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, r->out.total_size));
9666
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_total_size_0, LIBNDR_FLAG_REF_ALLOC);
9667
if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
9668
NDR_PULL_ALLOC(ndr, r->out.returned_size);
9670
_mem_save_returned_size_0 = NDR_PULL_GET_MEM_CTX(ndr);
9671
NDR_PULL_SET_MEM_CTX(ndr, r->out.returned_size, LIBNDR_FLAG_REF_ALLOC);
9672
NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, r->out.returned_size));
9673
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_returned_size_0, LIBNDR_FLAG_REF_ALLOC);
9674
if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
9675
NDR_PULL_ALLOC(ndr, r->out.info);
9677
_mem_save_info_0 = NDR_PULL_GET_MEM_CTX(ndr);
9678
NDR_PULL_SET_MEM_CTX(ndr, r->out.info, LIBNDR_FLAG_REF_ALLOC);
9679
NDR_CHECK(ndr_pull_set_switch_value(ndr, r->out.info, r->in.level));
9680
NDR_CHECK(ndr_pull_samr_DispInfo(ndr, NDR_SCALARS|NDR_BUFFERS, r->out.info));
9681
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_info_0, LIBNDR_FLAG_REF_ALLOC);
9682
NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
9684
return NDR_ERR_SUCCESS;
9687
_PUBLIC_ void ndr_print_samr_QueryDisplayInfo(struct ndr_print *ndr, const char *name, int flags, const struct samr_QueryDisplayInfo *r)
9689
ndr_print_struct(ndr, name, "samr_QueryDisplayInfo");
9690
if (r == NULL) { ndr_print_null(ndr); return; }
9692
if (flags & NDR_SET_VALUES) {
9693
ndr->flags |= LIBNDR_PRINT_SET_VALUES;
9695
if (flags & NDR_IN) {
9696
ndr_print_struct(ndr, "in", "samr_QueryDisplayInfo");
9698
ndr_print_ptr(ndr, "domain_handle", r->in.domain_handle);
9700
ndr_print_policy_handle(ndr, "domain_handle", r->in.domain_handle);
9702
ndr_print_uint16(ndr, "level", r->in.level);
9703
ndr_print_uint32(ndr, "start_idx", r->in.start_idx);
9704
ndr_print_uint32(ndr, "max_entries", r->in.max_entries);
9705
ndr_print_uint32(ndr, "buf_size", r->in.buf_size);
9708
if (flags & NDR_OUT) {
9709
ndr_print_struct(ndr, "out", "samr_QueryDisplayInfo");
9711
ndr_print_ptr(ndr, "total_size", r->out.total_size);
9713
ndr_print_uint32(ndr, "total_size", *r->out.total_size);
9715
ndr_print_ptr(ndr, "returned_size", r->out.returned_size);
9717
ndr_print_uint32(ndr, "returned_size", *r->out.returned_size);
9719
ndr_print_ptr(ndr, "info", r->out.info);
9721
ndr_print_set_switch_value(ndr, r->out.info, r->in.level);
9722
ndr_print_samr_DispInfo(ndr, "info", r->out.info);
9724
ndr_print_NTSTATUS(ndr, "result", r->out.result);
9730
static enum ndr_err_code ndr_push_samr_GetDisplayEnumerationIndex(struct ndr_push *ndr, int flags, const struct samr_GetDisplayEnumerationIndex *r)
9732
if (flags & NDR_IN) {
9733
if (r->in.domain_handle == NULL) {
9734
return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
9736
NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS, r->in.domain_handle));
9737
NDR_CHECK(ndr_push_uint16(ndr, NDR_SCALARS, r->in.level));
9738
if (r->in.name == NULL) {
9739
return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
9741
NDR_CHECK(ndr_push_lsa_String(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.name));
9743
if (flags & NDR_OUT) {
9744
if (r->out.idx == NULL) {
9745
return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
9747
NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, *r->out.idx));
9748
NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
9750
return NDR_ERR_SUCCESS;
9753
static enum ndr_err_code ndr_pull_samr_GetDisplayEnumerationIndex(struct ndr_pull *ndr, int flags, struct samr_GetDisplayEnumerationIndex *r)
9755
TALLOC_CTX *_mem_save_domain_handle_0;
9756
TALLOC_CTX *_mem_save_name_0;
9757
TALLOC_CTX *_mem_save_idx_0;
9758
if (flags & NDR_IN) {
9759
ZERO_STRUCT(r->out);
9761
if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
9762
NDR_PULL_ALLOC(ndr, r->in.domain_handle);
9764
_mem_save_domain_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
9765
NDR_PULL_SET_MEM_CTX(ndr, r->in.domain_handle, LIBNDR_FLAG_REF_ALLOC);
9766
NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS, r->in.domain_handle));
9767
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_domain_handle_0, LIBNDR_FLAG_REF_ALLOC);
9768
NDR_CHECK(ndr_pull_uint16(ndr, NDR_SCALARS, &r->in.level));
9769
if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
9770
NDR_PULL_ALLOC(ndr, r->in.name);
9772
_mem_save_name_0 = NDR_PULL_GET_MEM_CTX(ndr);
9773
NDR_PULL_SET_MEM_CTX(ndr, r->in.name, LIBNDR_FLAG_REF_ALLOC);
9774
NDR_CHECK(ndr_pull_lsa_String(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.name));
9775
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_name_0, LIBNDR_FLAG_REF_ALLOC);
9776
NDR_PULL_ALLOC(ndr, r->out.idx);
9777
ZERO_STRUCTP(r->out.idx);
9779
if (flags & NDR_OUT) {
9780
if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
9781
NDR_PULL_ALLOC(ndr, r->out.idx);
9783
_mem_save_idx_0 = NDR_PULL_GET_MEM_CTX(ndr);
9784
NDR_PULL_SET_MEM_CTX(ndr, r->out.idx, LIBNDR_FLAG_REF_ALLOC);
9785
NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, r->out.idx));
9786
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_idx_0, LIBNDR_FLAG_REF_ALLOC);
9787
NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
9789
return NDR_ERR_SUCCESS;
9792
_PUBLIC_ void ndr_print_samr_GetDisplayEnumerationIndex(struct ndr_print *ndr, const char *name, int flags, const struct samr_GetDisplayEnumerationIndex *r)
9794
ndr_print_struct(ndr, name, "samr_GetDisplayEnumerationIndex");
9795
if (r == NULL) { ndr_print_null(ndr); return; }
9797
if (flags & NDR_SET_VALUES) {
9798
ndr->flags |= LIBNDR_PRINT_SET_VALUES;
9800
if (flags & NDR_IN) {
9801
ndr_print_struct(ndr, "in", "samr_GetDisplayEnumerationIndex");
9803
ndr_print_ptr(ndr, "domain_handle", r->in.domain_handle);
9805
ndr_print_policy_handle(ndr, "domain_handle", r->in.domain_handle);
9807
ndr_print_uint16(ndr, "level", r->in.level);
9808
ndr_print_ptr(ndr, "name", r->in.name);
9810
ndr_print_lsa_String(ndr, "name", r->in.name);
9814
if (flags & NDR_OUT) {
9815
ndr_print_struct(ndr, "out", "samr_GetDisplayEnumerationIndex");
9817
ndr_print_ptr(ndr, "idx", r->out.idx);
9819
ndr_print_uint32(ndr, "idx", *r->out.idx);
9821
ndr_print_NTSTATUS(ndr, "result", r->out.result);
9827
static enum ndr_err_code ndr_push_samr_TestPrivateFunctionsDomain(struct ndr_push *ndr, int flags, const struct samr_TestPrivateFunctionsDomain *r)
9829
if (flags & NDR_IN) {
9830
if (r->in.domain_handle == NULL) {
9831
return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
9833
NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS, r->in.domain_handle));
9835
if (flags & NDR_OUT) {
9836
NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
9838
return NDR_ERR_SUCCESS;
9841
static enum ndr_err_code ndr_pull_samr_TestPrivateFunctionsDomain(struct ndr_pull *ndr, int flags, struct samr_TestPrivateFunctionsDomain *r)
9843
TALLOC_CTX *_mem_save_domain_handle_0;
9844
if (flags & NDR_IN) {
9845
if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
9846
NDR_PULL_ALLOC(ndr, r->in.domain_handle);
9848
_mem_save_domain_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
9849
NDR_PULL_SET_MEM_CTX(ndr, r->in.domain_handle, LIBNDR_FLAG_REF_ALLOC);
9850
NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS, r->in.domain_handle));
9851
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_domain_handle_0, LIBNDR_FLAG_REF_ALLOC);
9853
if (flags & NDR_OUT) {
9854
NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
9856
return NDR_ERR_SUCCESS;
9859
_PUBLIC_ void ndr_print_samr_TestPrivateFunctionsDomain(struct ndr_print *ndr, const char *name, int flags, const struct samr_TestPrivateFunctionsDomain *r)
9861
ndr_print_struct(ndr, name, "samr_TestPrivateFunctionsDomain");
9862
if (r == NULL) { ndr_print_null(ndr); return; }
9864
if (flags & NDR_SET_VALUES) {
9865
ndr->flags |= LIBNDR_PRINT_SET_VALUES;
9867
if (flags & NDR_IN) {
9868
ndr_print_struct(ndr, "in", "samr_TestPrivateFunctionsDomain");
9870
ndr_print_ptr(ndr, "domain_handle", r->in.domain_handle);
9872
ndr_print_policy_handle(ndr, "domain_handle", r->in.domain_handle);
9876
if (flags & NDR_OUT) {
9877
ndr_print_struct(ndr, "out", "samr_TestPrivateFunctionsDomain");
9879
ndr_print_NTSTATUS(ndr, "result", r->out.result);
9885
static enum ndr_err_code ndr_push_samr_TestPrivateFunctionsUser(struct ndr_push *ndr, int flags, const struct samr_TestPrivateFunctionsUser *r)
9887
if (flags & NDR_IN) {
9888
if (r->in.user_handle == NULL) {
9889
return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
9891
NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS, r->in.user_handle));
9893
if (flags & NDR_OUT) {
9894
NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
9896
return NDR_ERR_SUCCESS;
9899
static enum ndr_err_code ndr_pull_samr_TestPrivateFunctionsUser(struct ndr_pull *ndr, int flags, struct samr_TestPrivateFunctionsUser *r)
9901
TALLOC_CTX *_mem_save_user_handle_0;
9902
if (flags & NDR_IN) {
9903
if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
9904
NDR_PULL_ALLOC(ndr, r->in.user_handle);
9906
_mem_save_user_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
9907
NDR_PULL_SET_MEM_CTX(ndr, r->in.user_handle, LIBNDR_FLAG_REF_ALLOC);
9908
NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS, r->in.user_handle));
9909
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_user_handle_0, LIBNDR_FLAG_REF_ALLOC);
9911
if (flags & NDR_OUT) {
9912
NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
9914
return NDR_ERR_SUCCESS;
9917
_PUBLIC_ void ndr_print_samr_TestPrivateFunctionsUser(struct ndr_print *ndr, const char *name, int flags, const struct samr_TestPrivateFunctionsUser *r)
9919
ndr_print_struct(ndr, name, "samr_TestPrivateFunctionsUser");
9920
if (r == NULL) { ndr_print_null(ndr); return; }
9922
if (flags & NDR_SET_VALUES) {
9923
ndr->flags |= LIBNDR_PRINT_SET_VALUES;
9925
if (flags & NDR_IN) {
9926
ndr_print_struct(ndr, "in", "samr_TestPrivateFunctionsUser");
9928
ndr_print_ptr(ndr, "user_handle", r->in.user_handle);
9930
ndr_print_policy_handle(ndr, "user_handle", r->in.user_handle);
9934
if (flags & NDR_OUT) {
9935
ndr_print_struct(ndr, "out", "samr_TestPrivateFunctionsUser");
9937
ndr_print_NTSTATUS(ndr, "result", r->out.result);
9943
_PUBLIC_ enum ndr_err_code ndr_push_samr_GetUserPwInfo(struct ndr_push *ndr, int flags, const struct samr_GetUserPwInfo *r)
9945
if (flags & NDR_IN) {
9946
if (r->in.user_handle == NULL) {
9947
return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
9949
NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS, r->in.user_handle));
9951
if (flags & NDR_OUT) {
9952
if (r->out.info == NULL) {
9953
return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
9955
NDR_CHECK(ndr_push_samr_PwInfo(ndr, NDR_SCALARS, r->out.info));
9956
NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
9958
return NDR_ERR_SUCCESS;
9961
_PUBLIC_ enum ndr_err_code ndr_pull_samr_GetUserPwInfo(struct ndr_pull *ndr, int flags, struct samr_GetUserPwInfo *r)
9963
TALLOC_CTX *_mem_save_user_handle_0;
9964
TALLOC_CTX *_mem_save_info_0;
9965
if (flags & NDR_IN) {
9966
ZERO_STRUCT(r->out);
9968
if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
9969
NDR_PULL_ALLOC(ndr, r->in.user_handle);
9971
_mem_save_user_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
9972
NDR_PULL_SET_MEM_CTX(ndr, r->in.user_handle, LIBNDR_FLAG_REF_ALLOC);
9973
NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS, r->in.user_handle));
9974
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_user_handle_0, LIBNDR_FLAG_REF_ALLOC);
9975
NDR_PULL_ALLOC(ndr, r->out.info);
9976
ZERO_STRUCTP(r->out.info);
9978
if (flags & NDR_OUT) {
9979
if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
9980
NDR_PULL_ALLOC(ndr, r->out.info);
9982
_mem_save_info_0 = NDR_PULL_GET_MEM_CTX(ndr);
9983
NDR_PULL_SET_MEM_CTX(ndr, r->out.info, LIBNDR_FLAG_REF_ALLOC);
9984
NDR_CHECK(ndr_pull_samr_PwInfo(ndr, NDR_SCALARS, r->out.info));
9985
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_info_0, LIBNDR_FLAG_REF_ALLOC);
9986
NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
9988
return NDR_ERR_SUCCESS;
9991
_PUBLIC_ void ndr_print_samr_GetUserPwInfo(struct ndr_print *ndr, const char *name, int flags, const struct samr_GetUserPwInfo *r)
9993
ndr_print_struct(ndr, name, "samr_GetUserPwInfo");
9994
if (r == NULL) { ndr_print_null(ndr); return; }
9996
if (flags & NDR_SET_VALUES) {
9997
ndr->flags |= LIBNDR_PRINT_SET_VALUES;
9999
if (flags & NDR_IN) {
10000
ndr_print_struct(ndr, "in", "samr_GetUserPwInfo");
10002
ndr_print_ptr(ndr, "user_handle", r->in.user_handle);
10004
ndr_print_policy_handle(ndr, "user_handle", r->in.user_handle);
10008
if (flags & NDR_OUT) {
10009
ndr_print_struct(ndr, "out", "samr_GetUserPwInfo");
10011
ndr_print_ptr(ndr, "info", r->out.info);
10013
ndr_print_samr_PwInfo(ndr, "info", r->out.info);
10015
ndr_print_NTSTATUS(ndr, "result", r->out.result);
10021
static enum ndr_err_code ndr_push_samr_RemoveMemberFromForeignDomain(struct ndr_push *ndr, int flags, const struct samr_RemoveMemberFromForeignDomain *r)
10023
if (flags & NDR_IN) {
10024
if (r->in.domain_handle == NULL) {
10025
return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
10027
NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS, r->in.domain_handle));
10028
if (r->in.sid == NULL) {
10029
return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
10031
NDR_CHECK(ndr_push_dom_sid2(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.sid));
10033
if (flags & NDR_OUT) {
10034
NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
10036
return NDR_ERR_SUCCESS;
10039
static enum ndr_err_code ndr_pull_samr_RemoveMemberFromForeignDomain(struct ndr_pull *ndr, int flags, struct samr_RemoveMemberFromForeignDomain *r)
10041
TALLOC_CTX *_mem_save_domain_handle_0;
10042
TALLOC_CTX *_mem_save_sid_0;
10043
if (flags & NDR_IN) {
10044
if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
10045
NDR_PULL_ALLOC(ndr, r->in.domain_handle);
10047
_mem_save_domain_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
10048
NDR_PULL_SET_MEM_CTX(ndr, r->in.domain_handle, LIBNDR_FLAG_REF_ALLOC);
10049
NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS, r->in.domain_handle));
10050
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_domain_handle_0, LIBNDR_FLAG_REF_ALLOC);
10051
if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
10052
NDR_PULL_ALLOC(ndr, r->in.sid);
10054
_mem_save_sid_0 = NDR_PULL_GET_MEM_CTX(ndr);
10055
NDR_PULL_SET_MEM_CTX(ndr, r->in.sid, LIBNDR_FLAG_REF_ALLOC);
10056
NDR_CHECK(ndr_pull_dom_sid2(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.sid));
10057
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_sid_0, LIBNDR_FLAG_REF_ALLOC);
10059
if (flags & NDR_OUT) {
10060
NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
10062
return NDR_ERR_SUCCESS;
10065
_PUBLIC_ void ndr_print_samr_RemoveMemberFromForeignDomain(struct ndr_print *ndr, const char *name, int flags, const struct samr_RemoveMemberFromForeignDomain *r)
10067
ndr_print_struct(ndr, name, "samr_RemoveMemberFromForeignDomain");
10068
if (r == NULL) { ndr_print_null(ndr); return; }
10070
if (flags & NDR_SET_VALUES) {
10071
ndr->flags |= LIBNDR_PRINT_SET_VALUES;
10073
if (flags & NDR_IN) {
10074
ndr_print_struct(ndr, "in", "samr_RemoveMemberFromForeignDomain");
10076
ndr_print_ptr(ndr, "domain_handle", r->in.domain_handle);
10078
ndr_print_policy_handle(ndr, "domain_handle", r->in.domain_handle);
10080
ndr_print_ptr(ndr, "sid", r->in.sid);
10082
ndr_print_dom_sid2(ndr, "sid", r->in.sid);
10086
if (flags & NDR_OUT) {
10087
ndr_print_struct(ndr, "out", "samr_RemoveMemberFromForeignDomain");
10089
ndr_print_NTSTATUS(ndr, "result", r->out.result);
10095
static enum ndr_err_code ndr_push_samr_QueryDomainInfo2(struct ndr_push *ndr, int flags, const struct samr_QueryDomainInfo2 *r)
10097
if (flags & NDR_IN) {
10098
if (r->in.domain_handle == NULL) {
10099
return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
10101
NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS, r->in.domain_handle));
10102
NDR_CHECK(ndr_push_samr_DomainInfoClass(ndr, NDR_SCALARS, r->in.level));
10104
if (flags & NDR_OUT) {
10105
if (r->out.info == NULL) {
10106
return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
10108
NDR_CHECK(ndr_push_unique_ptr(ndr, *r->out.info));
10109
if (*r->out.info) {
10110
NDR_CHECK(ndr_push_set_switch_value(ndr, *r->out.info, r->in.level));
10111
NDR_CHECK(ndr_push_samr_DomainInfo(ndr, NDR_SCALARS|NDR_BUFFERS, *r->out.info));
10113
NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
10115
return NDR_ERR_SUCCESS;
10118
static enum ndr_err_code ndr_pull_samr_QueryDomainInfo2(struct ndr_pull *ndr, int flags, struct samr_QueryDomainInfo2 *r)
10120
uint32_t _ptr_info;
10121
TALLOC_CTX *_mem_save_domain_handle_0;
10122
TALLOC_CTX *_mem_save_info_0;
10123
TALLOC_CTX *_mem_save_info_1;
10124
if (flags & NDR_IN) {
10125
ZERO_STRUCT(r->out);
10127
if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
10128
NDR_PULL_ALLOC(ndr, r->in.domain_handle);
10130
_mem_save_domain_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
10131
NDR_PULL_SET_MEM_CTX(ndr, r->in.domain_handle, LIBNDR_FLAG_REF_ALLOC);
10132
NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS, r->in.domain_handle));
10133
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_domain_handle_0, LIBNDR_FLAG_REF_ALLOC);
10134
NDR_CHECK(ndr_pull_samr_DomainInfoClass(ndr, NDR_SCALARS, &r->in.level));
10135
NDR_PULL_ALLOC(ndr, r->out.info);
10136
ZERO_STRUCTP(r->out.info);
10138
if (flags & NDR_OUT) {
10139
if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
10140
NDR_PULL_ALLOC(ndr, r->out.info);
10142
_mem_save_info_0 = NDR_PULL_GET_MEM_CTX(ndr);
10143
NDR_PULL_SET_MEM_CTX(ndr, r->out.info, LIBNDR_FLAG_REF_ALLOC);
10144
NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_info));
10146
NDR_PULL_ALLOC(ndr, *r->out.info);
10148
*r->out.info = NULL;
10150
if (*r->out.info) {
10151
_mem_save_info_1 = NDR_PULL_GET_MEM_CTX(ndr);
10152
NDR_PULL_SET_MEM_CTX(ndr, *r->out.info, 0);
10153
NDR_CHECK(ndr_pull_set_switch_value(ndr, *r->out.info, r->in.level));
10154
NDR_CHECK(ndr_pull_samr_DomainInfo(ndr, NDR_SCALARS|NDR_BUFFERS, *r->out.info));
10155
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_info_1, 0);
10157
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_info_0, LIBNDR_FLAG_REF_ALLOC);
10158
NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
10160
return NDR_ERR_SUCCESS;
10163
_PUBLIC_ void ndr_print_samr_QueryDomainInfo2(struct ndr_print *ndr, const char *name, int flags, const struct samr_QueryDomainInfo2 *r)
10165
ndr_print_struct(ndr, name, "samr_QueryDomainInfo2");
10166
if (r == NULL) { ndr_print_null(ndr); return; }
10168
if (flags & NDR_SET_VALUES) {
10169
ndr->flags |= LIBNDR_PRINT_SET_VALUES;
10171
if (flags & NDR_IN) {
10172
ndr_print_struct(ndr, "in", "samr_QueryDomainInfo2");
10174
ndr_print_ptr(ndr, "domain_handle", r->in.domain_handle);
10176
ndr_print_policy_handle(ndr, "domain_handle", r->in.domain_handle);
10178
ndr_print_samr_DomainInfoClass(ndr, "level", r->in.level);
10181
if (flags & NDR_OUT) {
10182
ndr_print_struct(ndr, "out", "samr_QueryDomainInfo2");
10184
ndr_print_ptr(ndr, "info", r->out.info);
10186
ndr_print_ptr(ndr, "info", *r->out.info);
10188
if (*r->out.info) {
10189
ndr_print_set_switch_value(ndr, *r->out.info, r->in.level);
10190
ndr_print_samr_DomainInfo(ndr, "info", *r->out.info);
10194
ndr_print_NTSTATUS(ndr, "result", r->out.result);
10200
static enum ndr_err_code ndr_push_samr_QueryUserInfo2(struct ndr_push *ndr, int flags, const struct samr_QueryUserInfo2 *r)
10202
if (flags & NDR_IN) {
10203
if (r->in.user_handle == NULL) {
10204
return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
10206
NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS, r->in.user_handle));
10207
NDR_CHECK(ndr_push_samr_UserInfoLevel(ndr, NDR_SCALARS, r->in.level));
10209
if (flags & NDR_OUT) {
10210
if (r->out.info == NULL) {
10211
return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
10213
NDR_CHECK(ndr_push_unique_ptr(ndr, *r->out.info));
10214
if (*r->out.info) {
10215
NDR_CHECK(ndr_push_set_switch_value(ndr, *r->out.info, r->in.level));
10216
NDR_CHECK(ndr_push_samr_UserInfo(ndr, NDR_SCALARS|NDR_BUFFERS, *r->out.info));
10218
NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
10220
return NDR_ERR_SUCCESS;
10223
static enum ndr_err_code ndr_pull_samr_QueryUserInfo2(struct ndr_pull *ndr, int flags, struct samr_QueryUserInfo2 *r)
10225
uint32_t _ptr_info;
10226
TALLOC_CTX *_mem_save_user_handle_0;
10227
TALLOC_CTX *_mem_save_info_0;
10228
TALLOC_CTX *_mem_save_info_1;
10229
if (flags & NDR_IN) {
10230
ZERO_STRUCT(r->out);
10232
if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
10233
NDR_PULL_ALLOC(ndr, r->in.user_handle);
10235
_mem_save_user_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
10236
NDR_PULL_SET_MEM_CTX(ndr, r->in.user_handle, LIBNDR_FLAG_REF_ALLOC);
10237
NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS, r->in.user_handle));
10238
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_user_handle_0, LIBNDR_FLAG_REF_ALLOC);
10239
NDR_CHECK(ndr_pull_samr_UserInfoLevel(ndr, NDR_SCALARS, &r->in.level));
10240
NDR_PULL_ALLOC(ndr, r->out.info);
10241
ZERO_STRUCTP(r->out.info);
10243
if (flags & NDR_OUT) {
10244
if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
10245
NDR_PULL_ALLOC(ndr, r->out.info);
10247
_mem_save_info_0 = NDR_PULL_GET_MEM_CTX(ndr);
10248
NDR_PULL_SET_MEM_CTX(ndr, r->out.info, LIBNDR_FLAG_REF_ALLOC);
10249
NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_info));
10251
NDR_PULL_ALLOC(ndr, *r->out.info);
10253
*r->out.info = NULL;
10255
if (*r->out.info) {
10256
_mem_save_info_1 = NDR_PULL_GET_MEM_CTX(ndr);
10257
NDR_PULL_SET_MEM_CTX(ndr, *r->out.info, 0);
10258
NDR_CHECK(ndr_pull_set_switch_value(ndr, *r->out.info, r->in.level));
10259
NDR_CHECK(ndr_pull_samr_UserInfo(ndr, NDR_SCALARS|NDR_BUFFERS, *r->out.info));
10260
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_info_1, 0);
10262
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_info_0, LIBNDR_FLAG_REF_ALLOC);
10263
NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
10265
return NDR_ERR_SUCCESS;
10268
_PUBLIC_ void ndr_print_samr_QueryUserInfo2(struct ndr_print *ndr, const char *name, int flags, const struct samr_QueryUserInfo2 *r)
10270
ndr_print_struct(ndr, name, "samr_QueryUserInfo2");
10271
if (r == NULL) { ndr_print_null(ndr); return; }
10273
if (flags & NDR_SET_VALUES) {
10274
ndr->flags |= LIBNDR_PRINT_SET_VALUES;
10276
if (flags & NDR_IN) {
10277
ndr_print_struct(ndr, "in", "samr_QueryUserInfo2");
10279
ndr_print_ptr(ndr, "user_handle", r->in.user_handle);
10281
ndr_print_policy_handle(ndr, "user_handle", r->in.user_handle);
10283
ndr_print_samr_UserInfoLevel(ndr, "level", r->in.level);
10286
if (flags & NDR_OUT) {
10287
ndr_print_struct(ndr, "out", "samr_QueryUserInfo2");
10289
ndr_print_ptr(ndr, "info", r->out.info);
10291
ndr_print_ptr(ndr, "info", *r->out.info);
10293
if (*r->out.info) {
10294
ndr_print_set_switch_value(ndr, *r->out.info, r->in.level);
10295
ndr_print_samr_UserInfo(ndr, "info", *r->out.info);
10299
ndr_print_NTSTATUS(ndr, "result", r->out.result);
10305
static enum ndr_err_code ndr_push_samr_QueryDisplayInfo2(struct ndr_push *ndr, int flags, const struct samr_QueryDisplayInfo2 *r)
10307
if (flags & NDR_IN) {
10308
if (r->in.domain_handle == NULL) {
10309
return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
10311
NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS, r->in.domain_handle));
10312
NDR_CHECK(ndr_push_uint16(ndr, NDR_SCALARS, r->in.level));
10313
NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->in.start_idx));
10314
NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->in.max_entries));
10315
NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->in.buf_size));
10317
if (flags & NDR_OUT) {
10318
if (r->out.total_size == NULL) {
10319
return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
10321
NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, *r->out.total_size));
10322
if (r->out.returned_size == NULL) {
10323
return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
10325
NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, *r->out.returned_size));
10326
if (r->out.info == NULL) {
10327
return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
10329
NDR_CHECK(ndr_push_set_switch_value(ndr, r->out.info, r->in.level));
10330
NDR_CHECK(ndr_push_samr_DispInfo(ndr, NDR_SCALARS|NDR_BUFFERS, r->out.info));
10331
NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
10333
return NDR_ERR_SUCCESS;
10336
static enum ndr_err_code ndr_pull_samr_QueryDisplayInfo2(struct ndr_pull *ndr, int flags, struct samr_QueryDisplayInfo2 *r)
10338
TALLOC_CTX *_mem_save_domain_handle_0;
10339
TALLOC_CTX *_mem_save_total_size_0;
10340
TALLOC_CTX *_mem_save_returned_size_0;
10341
TALLOC_CTX *_mem_save_info_0;
10342
if (flags & NDR_IN) {
10343
ZERO_STRUCT(r->out);
10345
if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
10346
NDR_PULL_ALLOC(ndr, r->in.domain_handle);
10348
_mem_save_domain_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
10349
NDR_PULL_SET_MEM_CTX(ndr, r->in.domain_handle, LIBNDR_FLAG_REF_ALLOC);
10350
NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS, r->in.domain_handle));
10351
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_domain_handle_0, LIBNDR_FLAG_REF_ALLOC);
10352
NDR_CHECK(ndr_pull_uint16(ndr, NDR_SCALARS, &r->in.level));
10353
NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->in.start_idx));
10354
NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->in.max_entries));
10355
NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->in.buf_size));
10356
NDR_PULL_ALLOC(ndr, r->out.total_size);
10357
ZERO_STRUCTP(r->out.total_size);
10358
NDR_PULL_ALLOC(ndr, r->out.returned_size);
10359
ZERO_STRUCTP(r->out.returned_size);
10360
NDR_PULL_ALLOC(ndr, r->out.info);
10361
ZERO_STRUCTP(r->out.info);
10363
if (flags & NDR_OUT) {
10364
if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
10365
NDR_PULL_ALLOC(ndr, r->out.total_size);
10367
_mem_save_total_size_0 = NDR_PULL_GET_MEM_CTX(ndr);
10368
NDR_PULL_SET_MEM_CTX(ndr, r->out.total_size, LIBNDR_FLAG_REF_ALLOC);
10369
NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, r->out.total_size));
10370
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_total_size_0, LIBNDR_FLAG_REF_ALLOC);
10371
if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
10372
NDR_PULL_ALLOC(ndr, r->out.returned_size);
10374
_mem_save_returned_size_0 = NDR_PULL_GET_MEM_CTX(ndr);
10375
NDR_PULL_SET_MEM_CTX(ndr, r->out.returned_size, LIBNDR_FLAG_REF_ALLOC);
10376
NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, r->out.returned_size));
10377
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_returned_size_0, LIBNDR_FLAG_REF_ALLOC);
10378
if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
10379
NDR_PULL_ALLOC(ndr, r->out.info);
10381
_mem_save_info_0 = NDR_PULL_GET_MEM_CTX(ndr);
10382
NDR_PULL_SET_MEM_CTX(ndr, r->out.info, LIBNDR_FLAG_REF_ALLOC);
10383
NDR_CHECK(ndr_pull_set_switch_value(ndr, r->out.info, r->in.level));
10384
NDR_CHECK(ndr_pull_samr_DispInfo(ndr, NDR_SCALARS|NDR_BUFFERS, r->out.info));
10385
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_info_0, LIBNDR_FLAG_REF_ALLOC);
10386
NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
10388
return NDR_ERR_SUCCESS;
10391
_PUBLIC_ void ndr_print_samr_QueryDisplayInfo2(struct ndr_print *ndr, const char *name, int flags, const struct samr_QueryDisplayInfo2 *r)
10393
ndr_print_struct(ndr, name, "samr_QueryDisplayInfo2");
10394
if (r == NULL) { ndr_print_null(ndr); return; }
10396
if (flags & NDR_SET_VALUES) {
10397
ndr->flags |= LIBNDR_PRINT_SET_VALUES;
10399
if (flags & NDR_IN) {
10400
ndr_print_struct(ndr, "in", "samr_QueryDisplayInfo2");
10402
ndr_print_ptr(ndr, "domain_handle", r->in.domain_handle);
10404
ndr_print_policy_handle(ndr, "domain_handle", r->in.domain_handle);
10406
ndr_print_uint16(ndr, "level", r->in.level);
10407
ndr_print_uint32(ndr, "start_idx", r->in.start_idx);
10408
ndr_print_uint32(ndr, "max_entries", r->in.max_entries);
10409
ndr_print_uint32(ndr, "buf_size", r->in.buf_size);
10412
if (flags & NDR_OUT) {
10413
ndr_print_struct(ndr, "out", "samr_QueryDisplayInfo2");
10415
ndr_print_ptr(ndr, "total_size", r->out.total_size);
10417
ndr_print_uint32(ndr, "total_size", *r->out.total_size);
10419
ndr_print_ptr(ndr, "returned_size", r->out.returned_size);
10421
ndr_print_uint32(ndr, "returned_size", *r->out.returned_size);
10423
ndr_print_ptr(ndr, "info", r->out.info);
10425
ndr_print_set_switch_value(ndr, r->out.info, r->in.level);
10426
ndr_print_samr_DispInfo(ndr, "info", r->out.info);
10428
ndr_print_NTSTATUS(ndr, "result", r->out.result);
10434
static enum ndr_err_code ndr_push_samr_GetDisplayEnumerationIndex2(struct ndr_push *ndr, int flags, const struct samr_GetDisplayEnumerationIndex2 *r)
10436
if (flags & NDR_IN) {
10437
if (r->in.domain_handle == NULL) {
10438
return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
10440
NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS, r->in.domain_handle));
10441
NDR_CHECK(ndr_push_uint16(ndr, NDR_SCALARS, r->in.level));
10442
if (r->in.name == NULL) {
10443
return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
10445
NDR_CHECK(ndr_push_lsa_String(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.name));
10447
if (flags & NDR_OUT) {
10448
if (r->out.idx == NULL) {
10449
return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
10451
NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, *r->out.idx));
10452
NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
10454
return NDR_ERR_SUCCESS;
10457
static enum ndr_err_code ndr_pull_samr_GetDisplayEnumerationIndex2(struct ndr_pull *ndr, int flags, struct samr_GetDisplayEnumerationIndex2 *r)
10459
TALLOC_CTX *_mem_save_domain_handle_0;
10460
TALLOC_CTX *_mem_save_name_0;
10461
TALLOC_CTX *_mem_save_idx_0;
10462
if (flags & NDR_IN) {
10463
ZERO_STRUCT(r->out);
10465
if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
10466
NDR_PULL_ALLOC(ndr, r->in.domain_handle);
10468
_mem_save_domain_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
10469
NDR_PULL_SET_MEM_CTX(ndr, r->in.domain_handle, LIBNDR_FLAG_REF_ALLOC);
10470
NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS, r->in.domain_handle));
10471
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_domain_handle_0, LIBNDR_FLAG_REF_ALLOC);
10472
NDR_CHECK(ndr_pull_uint16(ndr, NDR_SCALARS, &r->in.level));
10473
if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
10474
NDR_PULL_ALLOC(ndr, r->in.name);
10476
_mem_save_name_0 = NDR_PULL_GET_MEM_CTX(ndr);
10477
NDR_PULL_SET_MEM_CTX(ndr, r->in.name, LIBNDR_FLAG_REF_ALLOC);
10478
NDR_CHECK(ndr_pull_lsa_String(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.name));
10479
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_name_0, LIBNDR_FLAG_REF_ALLOC);
10480
NDR_PULL_ALLOC(ndr, r->out.idx);
10481
ZERO_STRUCTP(r->out.idx);
10483
if (flags & NDR_OUT) {
10484
if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
10485
NDR_PULL_ALLOC(ndr, r->out.idx);
10487
_mem_save_idx_0 = NDR_PULL_GET_MEM_CTX(ndr);
10488
NDR_PULL_SET_MEM_CTX(ndr, r->out.idx, LIBNDR_FLAG_REF_ALLOC);
10489
NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, r->out.idx));
10490
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_idx_0, LIBNDR_FLAG_REF_ALLOC);
10491
NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
10493
return NDR_ERR_SUCCESS;
10496
_PUBLIC_ void ndr_print_samr_GetDisplayEnumerationIndex2(struct ndr_print *ndr, const char *name, int flags, const struct samr_GetDisplayEnumerationIndex2 *r)
10498
ndr_print_struct(ndr, name, "samr_GetDisplayEnumerationIndex2");
10499
if (r == NULL) { ndr_print_null(ndr); return; }
10501
if (flags & NDR_SET_VALUES) {
10502
ndr->flags |= LIBNDR_PRINT_SET_VALUES;
10504
if (flags & NDR_IN) {
10505
ndr_print_struct(ndr, "in", "samr_GetDisplayEnumerationIndex2");
10507
ndr_print_ptr(ndr, "domain_handle", r->in.domain_handle);
10509
ndr_print_policy_handle(ndr, "domain_handle", r->in.domain_handle);
10511
ndr_print_uint16(ndr, "level", r->in.level);
10512
ndr_print_ptr(ndr, "name", r->in.name);
10514
ndr_print_lsa_String(ndr, "name", r->in.name);
10518
if (flags & NDR_OUT) {
10519
ndr_print_struct(ndr, "out", "samr_GetDisplayEnumerationIndex2");
10521
ndr_print_ptr(ndr, "idx", r->out.idx);
10523
ndr_print_uint32(ndr, "idx", *r->out.idx);
10525
ndr_print_NTSTATUS(ndr, "result", r->out.result);
10531
static enum ndr_err_code ndr_push_samr_CreateUser2(struct ndr_push *ndr, int flags, const struct samr_CreateUser2 *r)
10533
if (flags & NDR_IN) {
10534
if (r->in.domain_handle == NULL) {
10535
return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
10537
NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS, r->in.domain_handle));
10538
if (r->in.account_name == NULL) {
10539
return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
10541
NDR_CHECK(ndr_push_lsa_String(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.account_name));
10542
NDR_CHECK(ndr_push_samr_AcctFlags(ndr, NDR_SCALARS, r->in.acct_flags));
10543
NDR_CHECK(ndr_push_samr_UserAccessMask(ndr, NDR_SCALARS, r->in.access_mask));
10545
if (flags & NDR_OUT) {
10546
if (r->out.user_handle == NULL) {
10547
return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
10549
NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS, r->out.user_handle));
10550
if (r->out.access_granted == NULL) {
10551
return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
10553
NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, *r->out.access_granted));
10554
if (r->out.rid == NULL) {
10555
return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
10557
NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, *r->out.rid));
10558
NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
10560
return NDR_ERR_SUCCESS;
10563
static enum ndr_err_code ndr_pull_samr_CreateUser2(struct ndr_pull *ndr, int flags, struct samr_CreateUser2 *r)
10565
TALLOC_CTX *_mem_save_domain_handle_0;
10566
TALLOC_CTX *_mem_save_account_name_0;
10567
TALLOC_CTX *_mem_save_user_handle_0;
10568
TALLOC_CTX *_mem_save_access_granted_0;
10569
TALLOC_CTX *_mem_save_rid_0;
10570
if (flags & NDR_IN) {
10571
ZERO_STRUCT(r->out);
10573
if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
10574
NDR_PULL_ALLOC(ndr, r->in.domain_handle);
10576
_mem_save_domain_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
10577
NDR_PULL_SET_MEM_CTX(ndr, r->in.domain_handle, LIBNDR_FLAG_REF_ALLOC);
10578
NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS, r->in.domain_handle));
10579
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_domain_handle_0, LIBNDR_FLAG_REF_ALLOC);
10580
if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
10581
NDR_PULL_ALLOC(ndr, r->in.account_name);
10583
_mem_save_account_name_0 = NDR_PULL_GET_MEM_CTX(ndr);
10584
NDR_PULL_SET_MEM_CTX(ndr, r->in.account_name, LIBNDR_FLAG_REF_ALLOC);
10585
NDR_CHECK(ndr_pull_lsa_String(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.account_name));
10586
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_account_name_0, LIBNDR_FLAG_REF_ALLOC);
10587
NDR_CHECK(ndr_pull_samr_AcctFlags(ndr, NDR_SCALARS, &r->in.acct_flags));
10588
NDR_CHECK(ndr_pull_samr_UserAccessMask(ndr, NDR_SCALARS, &r->in.access_mask));
10589
NDR_PULL_ALLOC(ndr, r->out.user_handle);
10590
ZERO_STRUCTP(r->out.user_handle);
10591
NDR_PULL_ALLOC(ndr, r->out.access_granted);
10592
ZERO_STRUCTP(r->out.access_granted);
10593
NDR_PULL_ALLOC(ndr, r->out.rid);
10594
ZERO_STRUCTP(r->out.rid);
10596
if (flags & NDR_OUT) {
10597
if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
10598
NDR_PULL_ALLOC(ndr, r->out.user_handle);
10600
_mem_save_user_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
10601
NDR_PULL_SET_MEM_CTX(ndr, r->out.user_handle, LIBNDR_FLAG_REF_ALLOC);
10602
NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS, r->out.user_handle));
10603
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_user_handle_0, LIBNDR_FLAG_REF_ALLOC);
10604
if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
10605
NDR_PULL_ALLOC(ndr, r->out.access_granted);
10607
_mem_save_access_granted_0 = NDR_PULL_GET_MEM_CTX(ndr);
10608
NDR_PULL_SET_MEM_CTX(ndr, r->out.access_granted, LIBNDR_FLAG_REF_ALLOC);
10609
NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, r->out.access_granted));
10610
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_access_granted_0, LIBNDR_FLAG_REF_ALLOC);
10611
if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
10612
NDR_PULL_ALLOC(ndr, r->out.rid);
10614
_mem_save_rid_0 = NDR_PULL_GET_MEM_CTX(ndr);
10615
NDR_PULL_SET_MEM_CTX(ndr, r->out.rid, LIBNDR_FLAG_REF_ALLOC);
10616
NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, r->out.rid));
10617
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_rid_0, LIBNDR_FLAG_REF_ALLOC);
10618
NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
10620
return NDR_ERR_SUCCESS;
10623
_PUBLIC_ void ndr_print_samr_CreateUser2(struct ndr_print *ndr, const char *name, int flags, const struct samr_CreateUser2 *r)
10625
ndr_print_struct(ndr, name, "samr_CreateUser2");
10626
if (r == NULL) { ndr_print_null(ndr); return; }
10628
if (flags & NDR_SET_VALUES) {
10629
ndr->flags |= LIBNDR_PRINT_SET_VALUES;
10631
if (flags & NDR_IN) {
10632
ndr_print_struct(ndr, "in", "samr_CreateUser2");
10634
ndr_print_ptr(ndr, "domain_handle", r->in.domain_handle);
10636
ndr_print_policy_handle(ndr, "domain_handle", r->in.domain_handle);
10638
ndr_print_ptr(ndr, "account_name", r->in.account_name);
10640
ndr_print_lsa_String(ndr, "account_name", r->in.account_name);
10642
ndr_print_samr_AcctFlags(ndr, "acct_flags", r->in.acct_flags);
10643
ndr_print_samr_UserAccessMask(ndr, "access_mask", r->in.access_mask);
10646
if (flags & NDR_OUT) {
10647
ndr_print_struct(ndr, "out", "samr_CreateUser2");
10649
ndr_print_ptr(ndr, "user_handle", r->out.user_handle);
10651
ndr_print_policy_handle(ndr, "user_handle", r->out.user_handle);
10653
ndr_print_ptr(ndr, "access_granted", r->out.access_granted);
10655
ndr_print_uint32(ndr, "access_granted", *r->out.access_granted);
10657
ndr_print_ptr(ndr, "rid", r->out.rid);
10659
ndr_print_uint32(ndr, "rid", *r->out.rid);
10661
ndr_print_NTSTATUS(ndr, "result", r->out.result);
10667
static enum ndr_err_code ndr_push_samr_QueryDisplayInfo3(struct ndr_push *ndr, int flags, const struct samr_QueryDisplayInfo3 *r)
10669
if (flags & NDR_IN) {
10670
if (r->in.domain_handle == NULL) {
10671
return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
10673
NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS, r->in.domain_handle));
10674
NDR_CHECK(ndr_push_uint16(ndr, NDR_SCALARS, r->in.level));
10675
NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->in.start_idx));
10676
NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->in.max_entries));
10677
NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->in.buf_size));
10679
if (flags & NDR_OUT) {
10680
if (r->out.total_size == NULL) {
10681
return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
10683
NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, *r->out.total_size));
10684
if (r->out.returned_size == NULL) {
10685
return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
10687
NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, *r->out.returned_size));
10688
if (r->out.info == NULL) {
10689
return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
10691
NDR_CHECK(ndr_push_set_switch_value(ndr, r->out.info, r->in.level));
10692
NDR_CHECK(ndr_push_samr_DispInfo(ndr, NDR_SCALARS|NDR_BUFFERS, r->out.info));
10693
NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
10695
return NDR_ERR_SUCCESS;
10698
static enum ndr_err_code ndr_pull_samr_QueryDisplayInfo3(struct ndr_pull *ndr, int flags, struct samr_QueryDisplayInfo3 *r)
10700
TALLOC_CTX *_mem_save_domain_handle_0;
10701
TALLOC_CTX *_mem_save_total_size_0;
10702
TALLOC_CTX *_mem_save_returned_size_0;
10703
TALLOC_CTX *_mem_save_info_0;
10704
if (flags & NDR_IN) {
10705
ZERO_STRUCT(r->out);
10707
if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
10708
NDR_PULL_ALLOC(ndr, r->in.domain_handle);
10710
_mem_save_domain_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
10711
NDR_PULL_SET_MEM_CTX(ndr, r->in.domain_handle, LIBNDR_FLAG_REF_ALLOC);
10712
NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS, r->in.domain_handle));
10713
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_domain_handle_0, LIBNDR_FLAG_REF_ALLOC);
10714
NDR_CHECK(ndr_pull_uint16(ndr, NDR_SCALARS, &r->in.level));
10715
NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->in.start_idx));
10716
NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->in.max_entries));
10717
NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->in.buf_size));
10718
NDR_PULL_ALLOC(ndr, r->out.total_size);
10719
ZERO_STRUCTP(r->out.total_size);
10720
NDR_PULL_ALLOC(ndr, r->out.returned_size);
10721
ZERO_STRUCTP(r->out.returned_size);
10722
NDR_PULL_ALLOC(ndr, r->out.info);
10723
ZERO_STRUCTP(r->out.info);
10725
if (flags & NDR_OUT) {
10726
if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
10727
NDR_PULL_ALLOC(ndr, r->out.total_size);
10729
_mem_save_total_size_0 = NDR_PULL_GET_MEM_CTX(ndr);
10730
NDR_PULL_SET_MEM_CTX(ndr, r->out.total_size, LIBNDR_FLAG_REF_ALLOC);
10731
NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, r->out.total_size));
10732
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_total_size_0, LIBNDR_FLAG_REF_ALLOC);
10733
if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
10734
NDR_PULL_ALLOC(ndr, r->out.returned_size);
10736
_mem_save_returned_size_0 = NDR_PULL_GET_MEM_CTX(ndr);
10737
NDR_PULL_SET_MEM_CTX(ndr, r->out.returned_size, LIBNDR_FLAG_REF_ALLOC);
10738
NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, r->out.returned_size));
10739
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_returned_size_0, LIBNDR_FLAG_REF_ALLOC);
10740
if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
10741
NDR_PULL_ALLOC(ndr, r->out.info);
10743
_mem_save_info_0 = NDR_PULL_GET_MEM_CTX(ndr);
10744
NDR_PULL_SET_MEM_CTX(ndr, r->out.info, LIBNDR_FLAG_REF_ALLOC);
10745
NDR_CHECK(ndr_pull_set_switch_value(ndr, r->out.info, r->in.level));
10746
NDR_CHECK(ndr_pull_samr_DispInfo(ndr, NDR_SCALARS|NDR_BUFFERS, r->out.info));
10747
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_info_0, LIBNDR_FLAG_REF_ALLOC);
10748
NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
10750
return NDR_ERR_SUCCESS;
10753
_PUBLIC_ void ndr_print_samr_QueryDisplayInfo3(struct ndr_print *ndr, const char *name, int flags, const struct samr_QueryDisplayInfo3 *r)
10755
ndr_print_struct(ndr, name, "samr_QueryDisplayInfo3");
10756
if (r == NULL) { ndr_print_null(ndr); return; }
10758
if (flags & NDR_SET_VALUES) {
10759
ndr->flags |= LIBNDR_PRINT_SET_VALUES;
10761
if (flags & NDR_IN) {
10762
ndr_print_struct(ndr, "in", "samr_QueryDisplayInfo3");
10764
ndr_print_ptr(ndr, "domain_handle", r->in.domain_handle);
10766
ndr_print_policy_handle(ndr, "domain_handle", r->in.domain_handle);
10768
ndr_print_uint16(ndr, "level", r->in.level);
10769
ndr_print_uint32(ndr, "start_idx", r->in.start_idx);
10770
ndr_print_uint32(ndr, "max_entries", r->in.max_entries);
10771
ndr_print_uint32(ndr, "buf_size", r->in.buf_size);
10774
if (flags & NDR_OUT) {
10775
ndr_print_struct(ndr, "out", "samr_QueryDisplayInfo3");
10777
ndr_print_ptr(ndr, "total_size", r->out.total_size);
10779
ndr_print_uint32(ndr, "total_size", *r->out.total_size);
10781
ndr_print_ptr(ndr, "returned_size", r->out.returned_size);
10783
ndr_print_uint32(ndr, "returned_size", *r->out.returned_size);
10785
ndr_print_ptr(ndr, "info", r->out.info);
10787
ndr_print_set_switch_value(ndr, r->out.info, r->in.level);
10788
ndr_print_samr_DispInfo(ndr, "info", r->out.info);
10790
ndr_print_NTSTATUS(ndr, "result", r->out.result);
10796
static enum ndr_err_code ndr_push_samr_AddMultipleMembersToAlias(struct ndr_push *ndr, int flags, const struct samr_AddMultipleMembersToAlias *r)
10798
if (flags & NDR_IN) {
10799
if (r->in.alias_handle == NULL) {
10800
return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
10802
NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS, r->in.alias_handle));
10803
if (r->in.sids == NULL) {
10804
return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
10806
NDR_CHECK(ndr_push_lsa_SidArray(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.sids));
10808
if (flags & NDR_OUT) {
10809
NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
10811
return NDR_ERR_SUCCESS;
10814
static enum ndr_err_code ndr_pull_samr_AddMultipleMembersToAlias(struct ndr_pull *ndr, int flags, struct samr_AddMultipleMembersToAlias *r)
10816
TALLOC_CTX *_mem_save_alias_handle_0;
10817
TALLOC_CTX *_mem_save_sids_0;
10818
if (flags & NDR_IN) {
10819
if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
10820
NDR_PULL_ALLOC(ndr, r->in.alias_handle);
10822
_mem_save_alias_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
10823
NDR_PULL_SET_MEM_CTX(ndr, r->in.alias_handle, LIBNDR_FLAG_REF_ALLOC);
10824
NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS, r->in.alias_handle));
10825
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_alias_handle_0, LIBNDR_FLAG_REF_ALLOC);
10826
if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
10827
NDR_PULL_ALLOC(ndr, r->in.sids);
10829
_mem_save_sids_0 = NDR_PULL_GET_MEM_CTX(ndr);
10830
NDR_PULL_SET_MEM_CTX(ndr, r->in.sids, LIBNDR_FLAG_REF_ALLOC);
10831
NDR_CHECK(ndr_pull_lsa_SidArray(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.sids));
10832
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_sids_0, LIBNDR_FLAG_REF_ALLOC);
10834
if (flags & NDR_OUT) {
10835
NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
10837
return NDR_ERR_SUCCESS;
10840
_PUBLIC_ void ndr_print_samr_AddMultipleMembersToAlias(struct ndr_print *ndr, const char *name, int flags, const struct samr_AddMultipleMembersToAlias *r)
10842
ndr_print_struct(ndr, name, "samr_AddMultipleMembersToAlias");
10843
if (r == NULL) { ndr_print_null(ndr); return; }
10845
if (flags & NDR_SET_VALUES) {
10846
ndr->flags |= LIBNDR_PRINT_SET_VALUES;
10848
if (flags & NDR_IN) {
10849
ndr_print_struct(ndr, "in", "samr_AddMultipleMembersToAlias");
10851
ndr_print_ptr(ndr, "alias_handle", r->in.alias_handle);
10853
ndr_print_policy_handle(ndr, "alias_handle", r->in.alias_handle);
10855
ndr_print_ptr(ndr, "sids", r->in.sids);
10857
ndr_print_lsa_SidArray(ndr, "sids", r->in.sids);
10861
if (flags & NDR_OUT) {
10862
ndr_print_struct(ndr, "out", "samr_AddMultipleMembersToAlias");
10864
ndr_print_NTSTATUS(ndr, "result", r->out.result);
10870
static enum ndr_err_code ndr_push_samr_RemoveMultipleMembersFromAlias(struct ndr_push *ndr, int flags, const struct samr_RemoveMultipleMembersFromAlias *r)
10872
if (flags & NDR_IN) {
10873
if (r->in.alias_handle == NULL) {
10874
return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
10876
NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS, r->in.alias_handle));
10877
if (r->in.sids == NULL) {
10878
return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
10880
NDR_CHECK(ndr_push_lsa_SidArray(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.sids));
10882
if (flags & NDR_OUT) {
10883
NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
10885
return NDR_ERR_SUCCESS;
10888
static enum ndr_err_code ndr_pull_samr_RemoveMultipleMembersFromAlias(struct ndr_pull *ndr, int flags, struct samr_RemoveMultipleMembersFromAlias *r)
10890
TALLOC_CTX *_mem_save_alias_handle_0;
10891
TALLOC_CTX *_mem_save_sids_0;
10892
if (flags & NDR_IN) {
10893
if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
10894
NDR_PULL_ALLOC(ndr, r->in.alias_handle);
10896
_mem_save_alias_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
10897
NDR_PULL_SET_MEM_CTX(ndr, r->in.alias_handle, LIBNDR_FLAG_REF_ALLOC);
10898
NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS, r->in.alias_handle));
10899
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_alias_handle_0, LIBNDR_FLAG_REF_ALLOC);
10900
if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
10901
NDR_PULL_ALLOC(ndr, r->in.sids);
10903
_mem_save_sids_0 = NDR_PULL_GET_MEM_CTX(ndr);
10904
NDR_PULL_SET_MEM_CTX(ndr, r->in.sids, LIBNDR_FLAG_REF_ALLOC);
10905
NDR_CHECK(ndr_pull_lsa_SidArray(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.sids));
10906
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_sids_0, LIBNDR_FLAG_REF_ALLOC);
10908
if (flags & NDR_OUT) {
10909
NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
10911
return NDR_ERR_SUCCESS;
10914
_PUBLIC_ void ndr_print_samr_RemoveMultipleMembersFromAlias(struct ndr_print *ndr, const char *name, int flags, const struct samr_RemoveMultipleMembersFromAlias *r)
10916
ndr_print_struct(ndr, name, "samr_RemoveMultipleMembersFromAlias");
10917
if (r == NULL) { ndr_print_null(ndr); return; }
10919
if (flags & NDR_SET_VALUES) {
10920
ndr->flags |= LIBNDR_PRINT_SET_VALUES;
10922
if (flags & NDR_IN) {
10923
ndr_print_struct(ndr, "in", "samr_RemoveMultipleMembersFromAlias");
10925
ndr_print_ptr(ndr, "alias_handle", r->in.alias_handle);
10927
ndr_print_policy_handle(ndr, "alias_handle", r->in.alias_handle);
10929
ndr_print_ptr(ndr, "sids", r->in.sids);
10931
ndr_print_lsa_SidArray(ndr, "sids", r->in.sids);
10935
if (flags & NDR_OUT) {
10936
ndr_print_struct(ndr, "out", "samr_RemoveMultipleMembersFromAlias");
10938
ndr_print_NTSTATUS(ndr, "result", r->out.result);
10944
static enum ndr_err_code ndr_push_samr_OemChangePasswordUser2(struct ndr_push *ndr, int flags, const struct samr_OemChangePasswordUser2 *r)
10946
if (flags & NDR_IN) {
10947
NDR_CHECK(ndr_push_unique_ptr(ndr, r->in.server));
10948
if (r->in.server) {
10949
NDR_CHECK(ndr_push_lsa_AsciiString(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.server));
10951
if (r->in.account == NULL) {
10952
return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
10954
NDR_CHECK(ndr_push_lsa_AsciiString(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.account));
10955
NDR_CHECK(ndr_push_unique_ptr(ndr, r->in.password));
10956
if (r->in.password) {
10957
NDR_CHECK(ndr_push_samr_CryptPassword(ndr, NDR_SCALARS, r->in.password));
10959
NDR_CHECK(ndr_push_unique_ptr(ndr, r->in.hash));
10961
NDR_CHECK(ndr_push_samr_Password(ndr, NDR_SCALARS, r->in.hash));
10964
if (flags & NDR_OUT) {
10965
NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
10967
return NDR_ERR_SUCCESS;
10970
static enum ndr_err_code ndr_pull_samr_OemChangePasswordUser2(struct ndr_pull *ndr, int flags, struct samr_OemChangePasswordUser2 *r)
10972
uint32_t _ptr_server;
10973
uint32_t _ptr_password;
10974
uint32_t _ptr_hash;
10975
TALLOC_CTX *_mem_save_server_0;
10976
TALLOC_CTX *_mem_save_account_0;
10977
TALLOC_CTX *_mem_save_password_0;
10978
TALLOC_CTX *_mem_save_hash_0;
10979
if (flags & NDR_IN) {
10980
NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_server));
10982
NDR_PULL_ALLOC(ndr, r->in.server);
10984
r->in.server = NULL;
10986
if (r->in.server) {
10987
_mem_save_server_0 = NDR_PULL_GET_MEM_CTX(ndr);
10988
NDR_PULL_SET_MEM_CTX(ndr, r->in.server, 0);
10989
NDR_CHECK(ndr_pull_lsa_AsciiString(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.server));
10990
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_server_0, 0);
10992
if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
10993
NDR_PULL_ALLOC(ndr, r->in.account);
10995
_mem_save_account_0 = NDR_PULL_GET_MEM_CTX(ndr);
10996
NDR_PULL_SET_MEM_CTX(ndr, r->in.account, LIBNDR_FLAG_REF_ALLOC);
10997
NDR_CHECK(ndr_pull_lsa_AsciiString(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.account));
10998
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_account_0, LIBNDR_FLAG_REF_ALLOC);
10999
NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_password));
11000
if (_ptr_password) {
11001
NDR_PULL_ALLOC(ndr, r->in.password);
11003
r->in.password = NULL;
11005
if (r->in.password) {
11006
_mem_save_password_0 = NDR_PULL_GET_MEM_CTX(ndr);
11007
NDR_PULL_SET_MEM_CTX(ndr, r->in.password, 0);
11008
NDR_CHECK(ndr_pull_samr_CryptPassword(ndr, NDR_SCALARS, r->in.password));
11009
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_password_0, 0);
11011
NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_hash));
11013
NDR_PULL_ALLOC(ndr, r->in.hash);
11018
_mem_save_hash_0 = NDR_PULL_GET_MEM_CTX(ndr);
11019
NDR_PULL_SET_MEM_CTX(ndr, r->in.hash, 0);
11020
NDR_CHECK(ndr_pull_samr_Password(ndr, NDR_SCALARS, r->in.hash));
11021
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_hash_0, 0);
11024
if (flags & NDR_OUT) {
11025
NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
11027
return NDR_ERR_SUCCESS;
11030
_PUBLIC_ void ndr_print_samr_OemChangePasswordUser2(struct ndr_print *ndr, const char *name, int flags, const struct samr_OemChangePasswordUser2 *r)
11032
ndr_print_struct(ndr, name, "samr_OemChangePasswordUser2");
11033
if (r == NULL) { ndr_print_null(ndr); return; }
11035
if (flags & NDR_SET_VALUES) {
11036
ndr->flags |= LIBNDR_PRINT_SET_VALUES;
11038
if (flags & NDR_IN) {
11039
ndr_print_struct(ndr, "in", "samr_OemChangePasswordUser2");
11041
ndr_print_ptr(ndr, "server", r->in.server);
11043
if (r->in.server) {
11044
ndr_print_lsa_AsciiString(ndr, "server", r->in.server);
11047
ndr_print_ptr(ndr, "account", r->in.account);
11049
ndr_print_lsa_AsciiString(ndr, "account", r->in.account);
11051
ndr_print_ptr(ndr, "password", r->in.password);
11053
if (r->in.password) {
11054
ndr_print_samr_CryptPassword(ndr, "password", r->in.password);
11057
ndr_print_ptr(ndr, "hash", r->in.hash);
11060
ndr_print_samr_Password(ndr, "hash", r->in.hash);
11065
if (flags & NDR_OUT) {
11066
ndr_print_struct(ndr, "out", "samr_OemChangePasswordUser2");
11068
ndr_print_NTSTATUS(ndr, "result", r->out.result);
11074
static enum ndr_err_code ndr_push_samr_ChangePasswordUser2(struct ndr_push *ndr, int flags, const struct samr_ChangePasswordUser2 *r)
11076
if (flags & NDR_IN) {
11077
NDR_CHECK(ndr_push_unique_ptr(ndr, r->in.server));
11078
if (r->in.server) {
11079
NDR_CHECK(ndr_push_lsa_String(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.server));
11081
if (r->in.account == NULL) {
11082
return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
11084
NDR_CHECK(ndr_push_lsa_String(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.account));
11085
NDR_CHECK(ndr_push_unique_ptr(ndr, r->in.nt_password));
11086
if (r->in.nt_password) {
11087
NDR_CHECK(ndr_push_samr_CryptPassword(ndr, NDR_SCALARS, r->in.nt_password));
11089
NDR_CHECK(ndr_push_unique_ptr(ndr, r->in.nt_verifier));
11090
if (r->in.nt_verifier) {
11091
NDR_CHECK(ndr_push_samr_Password(ndr, NDR_SCALARS, r->in.nt_verifier));
11093
NDR_CHECK(ndr_push_uint8(ndr, NDR_SCALARS, r->in.lm_change));
11094
NDR_CHECK(ndr_push_unique_ptr(ndr, r->in.lm_password));
11095
if (r->in.lm_password) {
11096
NDR_CHECK(ndr_push_samr_CryptPassword(ndr, NDR_SCALARS, r->in.lm_password));
11098
NDR_CHECK(ndr_push_unique_ptr(ndr, r->in.lm_verifier));
11099
if (r->in.lm_verifier) {
11100
NDR_CHECK(ndr_push_samr_Password(ndr, NDR_SCALARS, r->in.lm_verifier));
11103
if (flags & NDR_OUT) {
11104
NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
11106
return NDR_ERR_SUCCESS;
11109
static enum ndr_err_code ndr_pull_samr_ChangePasswordUser2(struct ndr_pull *ndr, int flags, struct samr_ChangePasswordUser2 *r)
11111
uint32_t _ptr_server;
11112
uint32_t _ptr_nt_password;
11113
uint32_t _ptr_nt_verifier;
11114
uint32_t _ptr_lm_password;
11115
uint32_t _ptr_lm_verifier;
11116
TALLOC_CTX *_mem_save_server_0;
11117
TALLOC_CTX *_mem_save_account_0;
11118
TALLOC_CTX *_mem_save_nt_password_0;
11119
TALLOC_CTX *_mem_save_nt_verifier_0;
11120
TALLOC_CTX *_mem_save_lm_password_0;
11121
TALLOC_CTX *_mem_save_lm_verifier_0;
11122
if (flags & NDR_IN) {
11123
NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_server));
11125
NDR_PULL_ALLOC(ndr, r->in.server);
11127
r->in.server = NULL;
11129
if (r->in.server) {
11130
_mem_save_server_0 = NDR_PULL_GET_MEM_CTX(ndr);
11131
NDR_PULL_SET_MEM_CTX(ndr, r->in.server, 0);
11132
NDR_CHECK(ndr_pull_lsa_String(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.server));
11133
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_server_0, 0);
11135
if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
11136
NDR_PULL_ALLOC(ndr, r->in.account);
11138
_mem_save_account_0 = NDR_PULL_GET_MEM_CTX(ndr);
11139
NDR_PULL_SET_MEM_CTX(ndr, r->in.account, LIBNDR_FLAG_REF_ALLOC);
11140
NDR_CHECK(ndr_pull_lsa_String(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.account));
11141
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_account_0, LIBNDR_FLAG_REF_ALLOC);
11142
NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_nt_password));
11143
if (_ptr_nt_password) {
11144
NDR_PULL_ALLOC(ndr, r->in.nt_password);
11146
r->in.nt_password = NULL;
11148
if (r->in.nt_password) {
11149
_mem_save_nt_password_0 = NDR_PULL_GET_MEM_CTX(ndr);
11150
NDR_PULL_SET_MEM_CTX(ndr, r->in.nt_password, 0);
11151
NDR_CHECK(ndr_pull_samr_CryptPassword(ndr, NDR_SCALARS, r->in.nt_password));
11152
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_nt_password_0, 0);
11154
NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_nt_verifier));
11155
if (_ptr_nt_verifier) {
11156
NDR_PULL_ALLOC(ndr, r->in.nt_verifier);
11158
r->in.nt_verifier = NULL;
11160
if (r->in.nt_verifier) {
11161
_mem_save_nt_verifier_0 = NDR_PULL_GET_MEM_CTX(ndr);
11162
NDR_PULL_SET_MEM_CTX(ndr, r->in.nt_verifier, 0);
11163
NDR_CHECK(ndr_pull_samr_Password(ndr, NDR_SCALARS, r->in.nt_verifier));
11164
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_nt_verifier_0, 0);
11166
NDR_CHECK(ndr_pull_uint8(ndr, NDR_SCALARS, &r->in.lm_change));
11167
NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_lm_password));
11168
if (_ptr_lm_password) {
11169
NDR_PULL_ALLOC(ndr, r->in.lm_password);
11171
r->in.lm_password = NULL;
11173
if (r->in.lm_password) {
11174
_mem_save_lm_password_0 = NDR_PULL_GET_MEM_CTX(ndr);
11175
NDR_PULL_SET_MEM_CTX(ndr, r->in.lm_password, 0);
11176
NDR_CHECK(ndr_pull_samr_CryptPassword(ndr, NDR_SCALARS, r->in.lm_password));
11177
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_lm_password_0, 0);
11179
NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_lm_verifier));
11180
if (_ptr_lm_verifier) {
11181
NDR_PULL_ALLOC(ndr, r->in.lm_verifier);
11183
r->in.lm_verifier = NULL;
11185
if (r->in.lm_verifier) {
11186
_mem_save_lm_verifier_0 = NDR_PULL_GET_MEM_CTX(ndr);
11187
NDR_PULL_SET_MEM_CTX(ndr, r->in.lm_verifier, 0);
11188
NDR_CHECK(ndr_pull_samr_Password(ndr, NDR_SCALARS, r->in.lm_verifier));
11189
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_lm_verifier_0, 0);
11192
if (flags & NDR_OUT) {
11193
NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
11195
return NDR_ERR_SUCCESS;
11198
_PUBLIC_ void ndr_print_samr_ChangePasswordUser2(struct ndr_print *ndr, const char *name, int flags, const struct samr_ChangePasswordUser2 *r)
11200
ndr_print_struct(ndr, name, "samr_ChangePasswordUser2");
11201
if (r == NULL) { ndr_print_null(ndr); return; }
11203
if (flags & NDR_SET_VALUES) {
11204
ndr->flags |= LIBNDR_PRINT_SET_VALUES;
11206
if (flags & NDR_IN) {
11207
ndr_print_struct(ndr, "in", "samr_ChangePasswordUser2");
11209
ndr_print_ptr(ndr, "server", r->in.server);
11211
if (r->in.server) {
11212
ndr_print_lsa_String(ndr, "server", r->in.server);
11215
ndr_print_ptr(ndr, "account", r->in.account);
11217
ndr_print_lsa_String(ndr, "account", r->in.account);
11219
ndr_print_ptr(ndr, "nt_password", r->in.nt_password);
11221
if (r->in.nt_password) {
11222
ndr_print_samr_CryptPassword(ndr, "nt_password", r->in.nt_password);
11225
ndr_print_ptr(ndr, "nt_verifier", r->in.nt_verifier);
11227
if (r->in.nt_verifier) {
11228
ndr_print_samr_Password(ndr, "nt_verifier", r->in.nt_verifier);
11231
ndr_print_uint8(ndr, "lm_change", r->in.lm_change);
11232
ndr_print_ptr(ndr, "lm_password", r->in.lm_password);
11234
if (r->in.lm_password) {
11235
ndr_print_samr_CryptPassword(ndr, "lm_password", r->in.lm_password);
11238
ndr_print_ptr(ndr, "lm_verifier", r->in.lm_verifier);
11240
if (r->in.lm_verifier) {
11241
ndr_print_samr_Password(ndr, "lm_verifier", r->in.lm_verifier);
11246
if (flags & NDR_OUT) {
11247
ndr_print_struct(ndr, "out", "samr_ChangePasswordUser2");
11249
ndr_print_NTSTATUS(ndr, "result", r->out.result);
11255
static enum ndr_err_code ndr_push_samr_GetDomPwInfo(struct ndr_push *ndr, int flags, const struct samr_GetDomPwInfo *r)
11257
if (flags & NDR_IN) {
11258
NDR_CHECK(ndr_push_unique_ptr(ndr, r->in.domain_name));
11259
if (r->in.domain_name) {
11260
NDR_CHECK(ndr_push_lsa_String(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.domain_name));
11263
if (flags & NDR_OUT) {
11264
if (r->out.info == NULL) {
11265
return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
11267
NDR_CHECK(ndr_push_samr_PwInfo(ndr, NDR_SCALARS, r->out.info));
11268
NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
11270
return NDR_ERR_SUCCESS;
11273
static enum ndr_err_code ndr_pull_samr_GetDomPwInfo(struct ndr_pull *ndr, int flags, struct samr_GetDomPwInfo *r)
11275
uint32_t _ptr_domain_name;
11276
TALLOC_CTX *_mem_save_domain_name_0;
11277
TALLOC_CTX *_mem_save_info_0;
11278
if (flags & NDR_IN) {
11279
ZERO_STRUCT(r->out);
11281
NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_domain_name));
11282
if (_ptr_domain_name) {
11283
NDR_PULL_ALLOC(ndr, r->in.domain_name);
11285
r->in.domain_name = NULL;
11287
if (r->in.domain_name) {
11288
_mem_save_domain_name_0 = NDR_PULL_GET_MEM_CTX(ndr);
11289
NDR_PULL_SET_MEM_CTX(ndr, r->in.domain_name, 0);
11290
NDR_CHECK(ndr_pull_lsa_String(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.domain_name));
11291
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_domain_name_0, 0);
11293
NDR_PULL_ALLOC(ndr, r->out.info);
11294
ZERO_STRUCTP(r->out.info);
11296
if (flags & NDR_OUT) {
11297
if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
11298
NDR_PULL_ALLOC(ndr, r->out.info);
11300
_mem_save_info_0 = NDR_PULL_GET_MEM_CTX(ndr);
11301
NDR_PULL_SET_MEM_CTX(ndr, r->out.info, LIBNDR_FLAG_REF_ALLOC);
11302
NDR_CHECK(ndr_pull_samr_PwInfo(ndr, NDR_SCALARS, r->out.info));
11303
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_info_0, LIBNDR_FLAG_REF_ALLOC);
11304
NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
11306
return NDR_ERR_SUCCESS;
11309
_PUBLIC_ void ndr_print_samr_GetDomPwInfo(struct ndr_print *ndr, const char *name, int flags, const struct samr_GetDomPwInfo *r)
11311
ndr_print_struct(ndr, name, "samr_GetDomPwInfo");
11312
if (r == NULL) { ndr_print_null(ndr); return; }
11314
if (flags & NDR_SET_VALUES) {
11315
ndr->flags |= LIBNDR_PRINT_SET_VALUES;
11317
if (flags & NDR_IN) {
11318
ndr_print_struct(ndr, "in", "samr_GetDomPwInfo");
11320
ndr_print_ptr(ndr, "domain_name", r->in.domain_name);
11322
if (r->in.domain_name) {
11323
ndr_print_lsa_String(ndr, "domain_name", r->in.domain_name);
11328
if (flags & NDR_OUT) {
11329
ndr_print_struct(ndr, "out", "samr_GetDomPwInfo");
11331
ndr_print_ptr(ndr, "info", r->out.info);
11333
ndr_print_samr_PwInfo(ndr, "info", r->out.info);
11335
ndr_print_NTSTATUS(ndr, "result", r->out.result);
11341
static enum ndr_err_code ndr_push_samr_Connect2(struct ndr_push *ndr, int flags, const struct samr_Connect2 *r)
11343
if (flags & NDR_IN) {
11344
NDR_CHECK(ndr_push_unique_ptr(ndr, r->in.system_name));
11345
if (r->in.system_name) {
11346
NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, ndr_charset_length(r->in.system_name, CH_UTF16)));
11347
NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, 0));
11348
NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, ndr_charset_length(r->in.system_name, CH_UTF16)));
11349
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));
11351
NDR_CHECK(ndr_push_samr_ConnectAccessMask(ndr, NDR_SCALARS, r->in.access_mask));
11353
if (flags & NDR_OUT) {
11354
if (r->out.connect_handle == NULL) {
11355
return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
11357
NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS, r->out.connect_handle));
11358
NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
11360
return NDR_ERR_SUCCESS;
11363
static enum ndr_err_code ndr_pull_samr_Connect2(struct ndr_pull *ndr, int flags, struct samr_Connect2 *r)
11365
uint32_t _ptr_system_name;
11366
TALLOC_CTX *_mem_save_system_name_0;
11367
TALLOC_CTX *_mem_save_connect_handle_0;
11368
if (flags & NDR_IN) {
11369
ZERO_STRUCT(r->out);
11371
NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_system_name));
11372
if (_ptr_system_name) {
11373
NDR_PULL_ALLOC(ndr, r->in.system_name);
11375
r->in.system_name = NULL;
11377
if (r->in.system_name) {
11378
_mem_save_system_name_0 = NDR_PULL_GET_MEM_CTX(ndr);
11379
NDR_PULL_SET_MEM_CTX(ndr, r->in.system_name, 0);
11380
NDR_CHECK(ndr_pull_array_size(ndr, &r->in.system_name));
11381
NDR_CHECK(ndr_pull_array_length(ndr, &r->in.system_name));
11382
if (ndr_get_array_length(ndr, &r->in.system_name) > ndr_get_array_size(ndr, &r->in.system_name)) {
11383
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));
11385
NDR_CHECK(ndr_check_string_terminator(ndr, ndr_get_array_length(ndr, &r->in.system_name), sizeof(uint16_t)));
11386
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));
11387
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_system_name_0, 0);
11389
NDR_CHECK(ndr_pull_samr_ConnectAccessMask(ndr, NDR_SCALARS, &r->in.access_mask));
11390
NDR_PULL_ALLOC(ndr, r->out.connect_handle);
11391
ZERO_STRUCTP(r->out.connect_handle);
11393
if (flags & NDR_OUT) {
11394
if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
11395
NDR_PULL_ALLOC(ndr, r->out.connect_handle);
11397
_mem_save_connect_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
11398
NDR_PULL_SET_MEM_CTX(ndr, r->out.connect_handle, LIBNDR_FLAG_REF_ALLOC);
11399
NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS, r->out.connect_handle));
11400
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_connect_handle_0, LIBNDR_FLAG_REF_ALLOC);
11401
NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
11403
return NDR_ERR_SUCCESS;
11406
_PUBLIC_ void ndr_print_samr_Connect2(struct ndr_print *ndr, const char *name, int flags, const struct samr_Connect2 *r)
11408
ndr_print_struct(ndr, name, "samr_Connect2");
11409
if (r == NULL) { ndr_print_null(ndr); return; }
11411
if (flags & NDR_SET_VALUES) {
11412
ndr->flags |= LIBNDR_PRINT_SET_VALUES;
11414
if (flags & NDR_IN) {
11415
ndr_print_struct(ndr, "in", "samr_Connect2");
11417
ndr_print_ptr(ndr, "system_name", r->in.system_name);
11419
if (r->in.system_name) {
11420
ndr_print_string(ndr, "system_name", r->in.system_name);
11423
ndr_print_samr_ConnectAccessMask(ndr, "access_mask", r->in.access_mask);
11426
if (flags & NDR_OUT) {
11427
ndr_print_struct(ndr, "out", "samr_Connect2");
11429
ndr_print_ptr(ndr, "connect_handle", r->out.connect_handle);
11431
ndr_print_policy_handle(ndr, "connect_handle", r->out.connect_handle);
11433
ndr_print_NTSTATUS(ndr, "result", r->out.result);
11439
_PUBLIC_ enum ndr_err_code ndr_push_samr_SetUserInfo2(struct ndr_push *ndr, int flags, const struct samr_SetUserInfo2 *r)
11441
if (flags & NDR_IN) {
11442
if (r->in.user_handle == NULL) {
11443
return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
11445
NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS, r->in.user_handle));
11446
NDR_CHECK(ndr_push_samr_UserInfoLevel(ndr, NDR_SCALARS, r->in.level));
11447
if (r->in.info == NULL) {
11448
return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
11450
NDR_CHECK(ndr_push_set_switch_value(ndr, r->in.info, r->in.level));
11451
NDR_CHECK(ndr_push_samr_UserInfo(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.info));
11453
if (flags & NDR_OUT) {
11454
NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
11456
return NDR_ERR_SUCCESS;
11459
_PUBLIC_ enum ndr_err_code ndr_pull_samr_SetUserInfo2(struct ndr_pull *ndr, int flags, struct samr_SetUserInfo2 *r)
11461
TALLOC_CTX *_mem_save_user_handle_0;
11462
TALLOC_CTX *_mem_save_info_0;
11463
if (flags & NDR_IN) {
11464
if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
11465
NDR_PULL_ALLOC(ndr, r->in.user_handle);
11467
_mem_save_user_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
11468
NDR_PULL_SET_MEM_CTX(ndr, r->in.user_handle, LIBNDR_FLAG_REF_ALLOC);
11469
NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS, r->in.user_handle));
11470
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_user_handle_0, LIBNDR_FLAG_REF_ALLOC);
11471
NDR_CHECK(ndr_pull_samr_UserInfoLevel(ndr, NDR_SCALARS, &r->in.level));
11472
if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
11473
NDR_PULL_ALLOC(ndr, r->in.info);
11475
_mem_save_info_0 = NDR_PULL_GET_MEM_CTX(ndr);
11476
NDR_PULL_SET_MEM_CTX(ndr, r->in.info, LIBNDR_FLAG_REF_ALLOC);
11477
NDR_CHECK(ndr_pull_set_switch_value(ndr, r->in.info, r->in.level));
11478
NDR_CHECK(ndr_pull_samr_UserInfo(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.info));
11479
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_info_0, LIBNDR_FLAG_REF_ALLOC);
11481
if (flags & NDR_OUT) {
11482
NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
11484
return NDR_ERR_SUCCESS;
11487
_PUBLIC_ void ndr_print_samr_SetUserInfo2(struct ndr_print *ndr, const char *name, int flags, const struct samr_SetUserInfo2 *r)
11489
ndr_print_struct(ndr, name, "samr_SetUserInfo2");
11490
if (r == NULL) { ndr_print_null(ndr); return; }
11492
if (flags & NDR_SET_VALUES) {
11493
ndr->flags |= LIBNDR_PRINT_SET_VALUES;
11495
if (flags & NDR_IN) {
11496
ndr_print_struct(ndr, "in", "samr_SetUserInfo2");
11498
ndr_print_ptr(ndr, "user_handle", r->in.user_handle);
11500
ndr_print_policy_handle(ndr, "user_handle", r->in.user_handle);
11502
ndr_print_samr_UserInfoLevel(ndr, "level", r->in.level);
11503
ndr_print_ptr(ndr, "info", r->in.info);
11505
ndr_print_set_switch_value(ndr, r->in.info, r->in.level);
11506
ndr_print_samr_UserInfo(ndr, "info", r->in.info);
11510
if (flags & NDR_OUT) {
11511
ndr_print_struct(ndr, "out", "samr_SetUserInfo2");
11513
ndr_print_NTSTATUS(ndr, "result", r->out.result);
11519
static enum ndr_err_code ndr_push_samr_SetBootKeyInformation(struct ndr_push *ndr, int flags, const struct samr_SetBootKeyInformation *r)
11521
if (flags & NDR_IN) {
11522
if (r->in.connect_handle == NULL) {
11523
return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
11525
NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS, r->in.connect_handle));
11526
NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->in.unknown1));
11527
NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->in.unknown2));
11528
NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->in.unknown3));
11530
if (flags & NDR_OUT) {
11531
NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
11533
return NDR_ERR_SUCCESS;
11536
static enum ndr_err_code ndr_pull_samr_SetBootKeyInformation(struct ndr_pull *ndr, int flags, struct samr_SetBootKeyInformation *r)
11538
TALLOC_CTX *_mem_save_connect_handle_0;
11539
if (flags & NDR_IN) {
11540
if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
11541
NDR_PULL_ALLOC(ndr, r->in.connect_handle);
11543
_mem_save_connect_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
11544
NDR_PULL_SET_MEM_CTX(ndr, r->in.connect_handle, LIBNDR_FLAG_REF_ALLOC);
11545
NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS, r->in.connect_handle));
11546
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_connect_handle_0, LIBNDR_FLAG_REF_ALLOC);
11547
NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->in.unknown1));
11548
NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->in.unknown2));
11549
NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->in.unknown3));
11551
if (flags & NDR_OUT) {
11552
NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
11554
return NDR_ERR_SUCCESS;
11557
_PUBLIC_ void ndr_print_samr_SetBootKeyInformation(struct ndr_print *ndr, const char *name, int flags, const struct samr_SetBootKeyInformation *r)
11559
ndr_print_struct(ndr, name, "samr_SetBootKeyInformation");
11560
if (r == NULL) { ndr_print_null(ndr); return; }
11562
if (flags & NDR_SET_VALUES) {
11563
ndr->flags |= LIBNDR_PRINT_SET_VALUES;
11565
if (flags & NDR_IN) {
11566
ndr_print_struct(ndr, "in", "samr_SetBootKeyInformation");
11568
ndr_print_ptr(ndr, "connect_handle", r->in.connect_handle);
11570
ndr_print_policy_handle(ndr, "connect_handle", r->in.connect_handle);
11572
ndr_print_uint32(ndr, "unknown1", r->in.unknown1);
11573
ndr_print_uint32(ndr, "unknown2", r->in.unknown2);
11574
ndr_print_uint32(ndr, "unknown3", r->in.unknown3);
11577
if (flags & NDR_OUT) {
11578
ndr_print_struct(ndr, "out", "samr_SetBootKeyInformation");
11580
ndr_print_NTSTATUS(ndr, "result", r->out.result);
11586
static enum ndr_err_code ndr_push_samr_GetBootKeyInformation(struct ndr_push *ndr, int flags, const struct samr_GetBootKeyInformation *r)
11588
if (flags & NDR_IN) {
11589
if (r->in.domain_handle == NULL) {
11590
return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
11592
NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS, r->in.domain_handle));
11594
if (flags & NDR_OUT) {
11595
if (r->out.unknown == NULL) {
11596
return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
11598
NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, *r->out.unknown));
11599
NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
11601
return NDR_ERR_SUCCESS;
11604
static enum ndr_err_code ndr_pull_samr_GetBootKeyInformation(struct ndr_pull *ndr, int flags, struct samr_GetBootKeyInformation *r)
11606
TALLOC_CTX *_mem_save_domain_handle_0;
11607
TALLOC_CTX *_mem_save_unknown_0;
11608
if (flags & NDR_IN) {
11609
ZERO_STRUCT(r->out);
11611
if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
11612
NDR_PULL_ALLOC(ndr, r->in.domain_handle);
11614
_mem_save_domain_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
11615
NDR_PULL_SET_MEM_CTX(ndr, r->in.domain_handle, LIBNDR_FLAG_REF_ALLOC);
11616
NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS, r->in.domain_handle));
11617
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_domain_handle_0, LIBNDR_FLAG_REF_ALLOC);
11618
NDR_PULL_ALLOC(ndr, r->out.unknown);
11619
ZERO_STRUCTP(r->out.unknown);
11621
if (flags & NDR_OUT) {
11622
if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
11623
NDR_PULL_ALLOC(ndr, r->out.unknown);
11625
_mem_save_unknown_0 = NDR_PULL_GET_MEM_CTX(ndr);
11626
NDR_PULL_SET_MEM_CTX(ndr, r->out.unknown, LIBNDR_FLAG_REF_ALLOC);
11627
NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, r->out.unknown));
11628
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_unknown_0, LIBNDR_FLAG_REF_ALLOC);
11629
NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
11631
return NDR_ERR_SUCCESS;
11634
_PUBLIC_ void ndr_print_samr_GetBootKeyInformation(struct ndr_print *ndr, const char *name, int flags, const struct samr_GetBootKeyInformation *r)
11636
ndr_print_struct(ndr, name, "samr_GetBootKeyInformation");
11637
if (r == NULL) { ndr_print_null(ndr); return; }
11639
if (flags & NDR_SET_VALUES) {
11640
ndr->flags |= LIBNDR_PRINT_SET_VALUES;
11642
if (flags & NDR_IN) {
11643
ndr_print_struct(ndr, "in", "samr_GetBootKeyInformation");
11645
ndr_print_ptr(ndr, "domain_handle", r->in.domain_handle);
11647
ndr_print_policy_handle(ndr, "domain_handle", r->in.domain_handle);
11651
if (flags & NDR_OUT) {
11652
ndr_print_struct(ndr, "out", "samr_GetBootKeyInformation");
11654
ndr_print_ptr(ndr, "unknown", r->out.unknown);
11656
ndr_print_uint32(ndr, "unknown", *r->out.unknown);
11658
ndr_print_NTSTATUS(ndr, "result", r->out.result);
11664
static enum ndr_err_code ndr_push_samr_Connect3(struct ndr_push *ndr, int flags, const struct samr_Connect3 *r)
11666
if (flags & NDR_IN) {
11667
NDR_CHECK(ndr_push_unique_ptr(ndr, r->in.system_name));
11668
if (r->in.system_name) {
11669
NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, ndr_charset_length(r->in.system_name, CH_UTF16)));
11670
NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, 0));
11671
NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, ndr_charset_length(r->in.system_name, CH_UTF16)));
11672
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));
11674
NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->in.unknown));
11675
NDR_CHECK(ndr_push_samr_ConnectAccessMask(ndr, NDR_SCALARS, r->in.access_mask));
11677
if (flags & NDR_OUT) {
11678
if (r->out.connect_handle == NULL) {
11679
return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
11681
NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS, r->out.connect_handle));
11682
NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
11684
return NDR_ERR_SUCCESS;
11687
static enum ndr_err_code ndr_pull_samr_Connect3(struct ndr_pull *ndr, int flags, struct samr_Connect3 *r)
11689
uint32_t _ptr_system_name;
11690
TALLOC_CTX *_mem_save_system_name_0;
11691
TALLOC_CTX *_mem_save_connect_handle_0;
11692
if (flags & NDR_IN) {
11693
ZERO_STRUCT(r->out);
11695
NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_system_name));
11696
if (_ptr_system_name) {
11697
NDR_PULL_ALLOC(ndr, r->in.system_name);
11699
r->in.system_name = NULL;
11701
if (r->in.system_name) {
11702
_mem_save_system_name_0 = NDR_PULL_GET_MEM_CTX(ndr);
11703
NDR_PULL_SET_MEM_CTX(ndr, r->in.system_name, 0);
11704
NDR_CHECK(ndr_pull_array_size(ndr, &r->in.system_name));
11705
NDR_CHECK(ndr_pull_array_length(ndr, &r->in.system_name));
11706
if (ndr_get_array_length(ndr, &r->in.system_name) > ndr_get_array_size(ndr, &r->in.system_name)) {
11707
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));
11709
NDR_CHECK(ndr_check_string_terminator(ndr, ndr_get_array_length(ndr, &r->in.system_name), sizeof(uint16_t)));
11710
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));
11711
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_system_name_0, 0);
11713
NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->in.unknown));
11714
NDR_CHECK(ndr_pull_samr_ConnectAccessMask(ndr, NDR_SCALARS, &r->in.access_mask));
11715
NDR_PULL_ALLOC(ndr, r->out.connect_handle);
11716
ZERO_STRUCTP(r->out.connect_handle);
11718
if (flags & NDR_OUT) {
11719
if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
11720
NDR_PULL_ALLOC(ndr, r->out.connect_handle);
11722
_mem_save_connect_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
11723
NDR_PULL_SET_MEM_CTX(ndr, r->out.connect_handle, LIBNDR_FLAG_REF_ALLOC);
11724
NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS, r->out.connect_handle));
11725
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_connect_handle_0, LIBNDR_FLAG_REF_ALLOC);
11726
NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
11728
return NDR_ERR_SUCCESS;
11731
_PUBLIC_ void ndr_print_samr_Connect3(struct ndr_print *ndr, const char *name, int flags, const struct samr_Connect3 *r)
11733
ndr_print_struct(ndr, name, "samr_Connect3");
11734
if (r == NULL) { ndr_print_null(ndr); return; }
11736
if (flags & NDR_SET_VALUES) {
11737
ndr->flags |= LIBNDR_PRINT_SET_VALUES;
11739
if (flags & NDR_IN) {
11740
ndr_print_struct(ndr, "in", "samr_Connect3");
11742
ndr_print_ptr(ndr, "system_name", r->in.system_name);
11744
if (r->in.system_name) {
11745
ndr_print_string(ndr, "system_name", r->in.system_name);
11748
ndr_print_uint32(ndr, "unknown", r->in.unknown);
11749
ndr_print_samr_ConnectAccessMask(ndr, "access_mask", r->in.access_mask);
11752
if (flags & NDR_OUT) {
11753
ndr_print_struct(ndr, "out", "samr_Connect3");
11755
ndr_print_ptr(ndr, "connect_handle", r->out.connect_handle);
11757
ndr_print_policy_handle(ndr, "connect_handle", r->out.connect_handle);
11759
ndr_print_NTSTATUS(ndr, "result", r->out.result);
11765
static enum ndr_err_code ndr_push_samr_Connect4(struct ndr_push *ndr, int flags, const struct samr_Connect4 *r)
11767
if (flags & NDR_IN) {
11768
NDR_CHECK(ndr_push_unique_ptr(ndr, r->in.system_name));
11769
if (r->in.system_name) {
11770
NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, ndr_charset_length(r->in.system_name, CH_UTF16)));
11771
NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, 0));
11772
NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, ndr_charset_length(r->in.system_name, CH_UTF16)));
11773
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));
11775
NDR_CHECK(ndr_push_samr_ConnectVersion(ndr, NDR_SCALARS, r->in.client_version));
11776
NDR_CHECK(ndr_push_samr_ConnectAccessMask(ndr, NDR_SCALARS, r->in.access_mask));
11778
if (flags & NDR_OUT) {
11779
if (r->out.connect_handle == NULL) {
11780
return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
11782
NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS, r->out.connect_handle));
11783
NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
11785
return NDR_ERR_SUCCESS;
11788
static enum ndr_err_code ndr_pull_samr_Connect4(struct ndr_pull *ndr, int flags, struct samr_Connect4 *r)
11790
uint32_t _ptr_system_name;
11791
TALLOC_CTX *_mem_save_system_name_0;
11792
TALLOC_CTX *_mem_save_connect_handle_0;
11793
if (flags & NDR_IN) {
11794
ZERO_STRUCT(r->out);
11796
NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_system_name));
11797
if (_ptr_system_name) {
11798
NDR_PULL_ALLOC(ndr, r->in.system_name);
11800
r->in.system_name = NULL;
11802
if (r->in.system_name) {
11803
_mem_save_system_name_0 = NDR_PULL_GET_MEM_CTX(ndr);
11804
NDR_PULL_SET_MEM_CTX(ndr, r->in.system_name, 0);
11805
NDR_CHECK(ndr_pull_array_size(ndr, &r->in.system_name));
11806
NDR_CHECK(ndr_pull_array_length(ndr, &r->in.system_name));
11807
if (ndr_get_array_length(ndr, &r->in.system_name) > ndr_get_array_size(ndr, &r->in.system_name)) {
11808
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));
11810
NDR_CHECK(ndr_check_string_terminator(ndr, ndr_get_array_length(ndr, &r->in.system_name), sizeof(uint16_t)));
11811
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));
11812
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_system_name_0, 0);
11814
NDR_CHECK(ndr_pull_samr_ConnectVersion(ndr, NDR_SCALARS, &r->in.client_version));
11815
NDR_CHECK(ndr_pull_samr_ConnectAccessMask(ndr, NDR_SCALARS, &r->in.access_mask));
11816
NDR_PULL_ALLOC(ndr, r->out.connect_handle);
11817
ZERO_STRUCTP(r->out.connect_handle);
11819
if (flags & NDR_OUT) {
11820
if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
11821
NDR_PULL_ALLOC(ndr, r->out.connect_handle);
11823
_mem_save_connect_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
11824
NDR_PULL_SET_MEM_CTX(ndr, r->out.connect_handle, LIBNDR_FLAG_REF_ALLOC);
11825
NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS, r->out.connect_handle));
11826
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_connect_handle_0, LIBNDR_FLAG_REF_ALLOC);
11827
NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
11829
return NDR_ERR_SUCCESS;
11832
_PUBLIC_ void ndr_print_samr_Connect4(struct ndr_print *ndr, const char *name, int flags, const struct samr_Connect4 *r)
11834
ndr_print_struct(ndr, name, "samr_Connect4");
11835
if (r == NULL) { ndr_print_null(ndr); return; }
11837
if (flags & NDR_SET_VALUES) {
11838
ndr->flags |= LIBNDR_PRINT_SET_VALUES;
11840
if (flags & NDR_IN) {
11841
ndr_print_struct(ndr, "in", "samr_Connect4");
11843
ndr_print_ptr(ndr, "system_name", r->in.system_name);
11845
if (r->in.system_name) {
11846
ndr_print_string(ndr, "system_name", r->in.system_name);
11849
ndr_print_samr_ConnectVersion(ndr, "client_version", r->in.client_version);
11850
ndr_print_samr_ConnectAccessMask(ndr, "access_mask", r->in.access_mask);
11853
if (flags & NDR_OUT) {
11854
ndr_print_struct(ndr, "out", "samr_Connect4");
11856
ndr_print_ptr(ndr, "connect_handle", r->out.connect_handle);
11858
ndr_print_policy_handle(ndr, "connect_handle", r->out.connect_handle);
11860
ndr_print_NTSTATUS(ndr, "result", r->out.result);
11866
_PUBLIC_ enum ndr_err_code ndr_push_samr_ChangePasswordUser3(struct ndr_push *ndr, int flags, const struct samr_ChangePasswordUser3 *r)
11868
if (flags & NDR_IN) {
11869
NDR_CHECK(ndr_push_unique_ptr(ndr, r->in.server));
11870
if (r->in.server) {
11871
NDR_CHECK(ndr_push_lsa_String(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.server));
11873
if (r->in.account == NULL) {
11874
return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
11876
NDR_CHECK(ndr_push_lsa_String(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.account));
11877
NDR_CHECK(ndr_push_unique_ptr(ndr, r->in.nt_password));
11878
if (r->in.nt_password) {
11879
NDR_CHECK(ndr_push_samr_CryptPassword(ndr, NDR_SCALARS, r->in.nt_password));
11881
NDR_CHECK(ndr_push_unique_ptr(ndr, r->in.nt_verifier));
11882
if (r->in.nt_verifier) {
11883
NDR_CHECK(ndr_push_samr_Password(ndr, NDR_SCALARS, r->in.nt_verifier));
11885
NDR_CHECK(ndr_push_uint8(ndr, NDR_SCALARS, r->in.lm_change));
11886
NDR_CHECK(ndr_push_unique_ptr(ndr, r->in.lm_password));
11887
if (r->in.lm_password) {
11888
NDR_CHECK(ndr_push_samr_CryptPassword(ndr, NDR_SCALARS, r->in.lm_password));
11890
NDR_CHECK(ndr_push_unique_ptr(ndr, r->in.lm_verifier));
11891
if (r->in.lm_verifier) {
11892
NDR_CHECK(ndr_push_samr_Password(ndr, NDR_SCALARS, r->in.lm_verifier));
11894
NDR_CHECK(ndr_push_unique_ptr(ndr, r->in.password3));
11895
if (r->in.password3) {
11896
NDR_CHECK(ndr_push_samr_CryptPassword(ndr, NDR_SCALARS, r->in.password3));
11899
if (flags & NDR_OUT) {
11900
if (r->out.dominfo == NULL) {
11901
return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
11903
NDR_CHECK(ndr_push_unique_ptr(ndr, *r->out.dominfo));
11904
if (*r->out.dominfo) {
11905
NDR_CHECK(ndr_push_samr_DomInfo1(ndr, NDR_SCALARS, *r->out.dominfo));
11907
if (r->out.reject == NULL) {
11908
return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
11910
NDR_CHECK(ndr_push_unique_ptr(ndr, *r->out.reject));
11911
if (*r->out.reject) {
11912
NDR_CHECK(ndr_push_userPwdChangeFailureInformation(ndr, NDR_SCALARS|NDR_BUFFERS, *r->out.reject));
11914
NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
11916
return NDR_ERR_SUCCESS;
11919
_PUBLIC_ enum ndr_err_code ndr_pull_samr_ChangePasswordUser3(struct ndr_pull *ndr, int flags, struct samr_ChangePasswordUser3 *r)
11921
uint32_t _ptr_server;
11922
uint32_t _ptr_nt_password;
11923
uint32_t _ptr_nt_verifier;
11924
uint32_t _ptr_lm_password;
11925
uint32_t _ptr_lm_verifier;
11926
uint32_t _ptr_password3;
11927
uint32_t _ptr_dominfo;
11928
uint32_t _ptr_reject;
11929
TALLOC_CTX *_mem_save_server_0;
11930
TALLOC_CTX *_mem_save_account_0;
11931
TALLOC_CTX *_mem_save_nt_password_0;
11932
TALLOC_CTX *_mem_save_nt_verifier_0;
11933
TALLOC_CTX *_mem_save_lm_password_0;
11934
TALLOC_CTX *_mem_save_lm_verifier_0;
11935
TALLOC_CTX *_mem_save_password3_0;
11936
TALLOC_CTX *_mem_save_dominfo_0;
11937
TALLOC_CTX *_mem_save_dominfo_1;
11938
TALLOC_CTX *_mem_save_reject_0;
11939
TALLOC_CTX *_mem_save_reject_1;
11940
if (flags & NDR_IN) {
11941
ZERO_STRUCT(r->out);
11943
NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_server));
11945
NDR_PULL_ALLOC(ndr, r->in.server);
11947
r->in.server = NULL;
11949
if (r->in.server) {
11950
_mem_save_server_0 = NDR_PULL_GET_MEM_CTX(ndr);
11951
NDR_PULL_SET_MEM_CTX(ndr, r->in.server, 0);
11952
NDR_CHECK(ndr_pull_lsa_String(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.server));
11953
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_server_0, 0);
11955
if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
11956
NDR_PULL_ALLOC(ndr, r->in.account);
11958
_mem_save_account_0 = NDR_PULL_GET_MEM_CTX(ndr);
11959
NDR_PULL_SET_MEM_CTX(ndr, r->in.account, LIBNDR_FLAG_REF_ALLOC);
11960
NDR_CHECK(ndr_pull_lsa_String(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.account));
11961
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_account_0, LIBNDR_FLAG_REF_ALLOC);
11962
NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_nt_password));
11963
if (_ptr_nt_password) {
11964
NDR_PULL_ALLOC(ndr, r->in.nt_password);
11966
r->in.nt_password = NULL;
11968
if (r->in.nt_password) {
11969
_mem_save_nt_password_0 = NDR_PULL_GET_MEM_CTX(ndr);
11970
NDR_PULL_SET_MEM_CTX(ndr, r->in.nt_password, 0);
11971
NDR_CHECK(ndr_pull_samr_CryptPassword(ndr, NDR_SCALARS, r->in.nt_password));
11972
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_nt_password_0, 0);
11974
NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_nt_verifier));
11975
if (_ptr_nt_verifier) {
11976
NDR_PULL_ALLOC(ndr, r->in.nt_verifier);
11978
r->in.nt_verifier = NULL;
11980
if (r->in.nt_verifier) {
11981
_mem_save_nt_verifier_0 = NDR_PULL_GET_MEM_CTX(ndr);
11982
NDR_PULL_SET_MEM_CTX(ndr, r->in.nt_verifier, 0);
11983
NDR_CHECK(ndr_pull_samr_Password(ndr, NDR_SCALARS, r->in.nt_verifier));
11984
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_nt_verifier_0, 0);
11986
NDR_CHECK(ndr_pull_uint8(ndr, NDR_SCALARS, &r->in.lm_change));
11987
NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_lm_password));
11988
if (_ptr_lm_password) {
11989
NDR_PULL_ALLOC(ndr, r->in.lm_password);
11991
r->in.lm_password = NULL;
11993
if (r->in.lm_password) {
11994
_mem_save_lm_password_0 = NDR_PULL_GET_MEM_CTX(ndr);
11995
NDR_PULL_SET_MEM_CTX(ndr, r->in.lm_password, 0);
11996
NDR_CHECK(ndr_pull_samr_CryptPassword(ndr, NDR_SCALARS, r->in.lm_password));
11997
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_lm_password_0, 0);
11999
NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_lm_verifier));
12000
if (_ptr_lm_verifier) {
12001
NDR_PULL_ALLOC(ndr, r->in.lm_verifier);
12003
r->in.lm_verifier = NULL;
12005
if (r->in.lm_verifier) {
12006
_mem_save_lm_verifier_0 = NDR_PULL_GET_MEM_CTX(ndr);
12007
NDR_PULL_SET_MEM_CTX(ndr, r->in.lm_verifier, 0);
12008
NDR_CHECK(ndr_pull_samr_Password(ndr, NDR_SCALARS, r->in.lm_verifier));
12009
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_lm_verifier_0, 0);
12011
NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_password3));
12012
if (_ptr_password3) {
12013
NDR_PULL_ALLOC(ndr, r->in.password3);
12015
r->in.password3 = NULL;
12017
if (r->in.password3) {
12018
_mem_save_password3_0 = NDR_PULL_GET_MEM_CTX(ndr);
12019
NDR_PULL_SET_MEM_CTX(ndr, r->in.password3, 0);
12020
NDR_CHECK(ndr_pull_samr_CryptPassword(ndr, NDR_SCALARS, r->in.password3));
12021
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_password3_0, 0);
12023
NDR_PULL_ALLOC(ndr, r->out.dominfo);
12024
ZERO_STRUCTP(r->out.dominfo);
12025
NDR_PULL_ALLOC(ndr, r->out.reject);
12026
ZERO_STRUCTP(r->out.reject);
12028
if (flags & NDR_OUT) {
12029
if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
12030
NDR_PULL_ALLOC(ndr, r->out.dominfo);
12032
_mem_save_dominfo_0 = NDR_PULL_GET_MEM_CTX(ndr);
12033
NDR_PULL_SET_MEM_CTX(ndr, r->out.dominfo, LIBNDR_FLAG_REF_ALLOC);
12034
NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_dominfo));
12035
if (_ptr_dominfo) {
12036
NDR_PULL_ALLOC(ndr, *r->out.dominfo);
12038
*r->out.dominfo = NULL;
12040
if (*r->out.dominfo) {
12041
_mem_save_dominfo_1 = NDR_PULL_GET_MEM_CTX(ndr);
12042
NDR_PULL_SET_MEM_CTX(ndr, *r->out.dominfo, 0);
12043
NDR_CHECK(ndr_pull_samr_DomInfo1(ndr, NDR_SCALARS, *r->out.dominfo));
12044
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_dominfo_1, 0);
12046
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_dominfo_0, LIBNDR_FLAG_REF_ALLOC);
12047
if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
12048
NDR_PULL_ALLOC(ndr, r->out.reject);
12050
_mem_save_reject_0 = NDR_PULL_GET_MEM_CTX(ndr);
12051
NDR_PULL_SET_MEM_CTX(ndr, r->out.reject, LIBNDR_FLAG_REF_ALLOC);
12052
NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_reject));
12054
NDR_PULL_ALLOC(ndr, *r->out.reject);
12056
*r->out.reject = NULL;
12058
if (*r->out.reject) {
12059
_mem_save_reject_1 = NDR_PULL_GET_MEM_CTX(ndr);
12060
NDR_PULL_SET_MEM_CTX(ndr, *r->out.reject, 0);
12061
NDR_CHECK(ndr_pull_userPwdChangeFailureInformation(ndr, NDR_SCALARS|NDR_BUFFERS, *r->out.reject));
12062
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_reject_1, 0);
12064
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_reject_0, LIBNDR_FLAG_REF_ALLOC);
12065
NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
12067
return NDR_ERR_SUCCESS;
12070
_PUBLIC_ void ndr_print_samr_ChangePasswordUser3(struct ndr_print *ndr, const char *name, int flags, const struct samr_ChangePasswordUser3 *r)
12072
ndr_print_struct(ndr, name, "samr_ChangePasswordUser3");
12073
if (r == NULL) { ndr_print_null(ndr); return; }
12075
if (flags & NDR_SET_VALUES) {
12076
ndr->flags |= LIBNDR_PRINT_SET_VALUES;
12078
if (flags & NDR_IN) {
12079
ndr_print_struct(ndr, "in", "samr_ChangePasswordUser3");
12081
ndr_print_ptr(ndr, "server", r->in.server);
12083
if (r->in.server) {
12084
ndr_print_lsa_String(ndr, "server", r->in.server);
12087
ndr_print_ptr(ndr, "account", r->in.account);
12089
ndr_print_lsa_String(ndr, "account", r->in.account);
12091
ndr_print_ptr(ndr, "nt_password", r->in.nt_password);
12093
if (r->in.nt_password) {
12094
ndr_print_samr_CryptPassword(ndr, "nt_password", r->in.nt_password);
12097
ndr_print_ptr(ndr, "nt_verifier", r->in.nt_verifier);
12099
if (r->in.nt_verifier) {
12100
ndr_print_samr_Password(ndr, "nt_verifier", r->in.nt_verifier);
12103
ndr_print_uint8(ndr, "lm_change", r->in.lm_change);
12104
ndr_print_ptr(ndr, "lm_password", r->in.lm_password);
12106
if (r->in.lm_password) {
12107
ndr_print_samr_CryptPassword(ndr, "lm_password", r->in.lm_password);
12110
ndr_print_ptr(ndr, "lm_verifier", r->in.lm_verifier);
12112
if (r->in.lm_verifier) {
12113
ndr_print_samr_Password(ndr, "lm_verifier", r->in.lm_verifier);
12116
ndr_print_ptr(ndr, "password3", r->in.password3);
12118
if (r->in.password3) {
12119
ndr_print_samr_CryptPassword(ndr, "password3", r->in.password3);
12124
if (flags & NDR_OUT) {
12125
ndr_print_struct(ndr, "out", "samr_ChangePasswordUser3");
12127
ndr_print_ptr(ndr, "dominfo", r->out.dominfo);
12129
ndr_print_ptr(ndr, "dominfo", *r->out.dominfo);
12131
if (*r->out.dominfo) {
12132
ndr_print_samr_DomInfo1(ndr, "dominfo", *r->out.dominfo);
12136
ndr_print_ptr(ndr, "reject", r->out.reject);
12138
ndr_print_ptr(ndr, "reject", *r->out.reject);
12140
if (*r->out.reject) {
12141
ndr_print_userPwdChangeFailureInformation(ndr, "reject", *r->out.reject);
12145
ndr_print_NTSTATUS(ndr, "result", r->out.result);
12151
_PUBLIC_ enum ndr_err_code ndr_push_samr_Connect5(struct ndr_push *ndr, int flags, const struct samr_Connect5 *r)
12153
if (flags & NDR_IN) {
12154
NDR_CHECK(ndr_push_unique_ptr(ndr, r->in.system_name));
12155
if (r->in.system_name) {
12156
NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, ndr_charset_length(r->in.system_name, CH_UTF16)));
12157
NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, 0));
12158
NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, ndr_charset_length(r->in.system_name, CH_UTF16)));
12159
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));
12161
NDR_CHECK(ndr_push_samr_ConnectAccessMask(ndr, NDR_SCALARS, r->in.access_mask));
12162
NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->in.level_in));
12163
if (r->in.info_in == NULL) {
12164
return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
12166
NDR_CHECK(ndr_push_set_switch_value(ndr, r->in.info_in, r->in.level_in));
12167
NDR_CHECK(ndr_push_samr_ConnectInfo(ndr, NDR_SCALARS, r->in.info_in));
12169
if (flags & NDR_OUT) {
12170
if (r->out.level_out == NULL) {
12171
return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
12173
NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, *r->out.level_out));
12174
if (r->out.info_out == NULL) {
12175
return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
12177
NDR_CHECK(ndr_push_set_switch_value(ndr, r->out.info_out, *r->out.level_out));
12178
NDR_CHECK(ndr_push_samr_ConnectInfo(ndr, NDR_SCALARS, r->out.info_out));
12179
if (r->out.connect_handle == NULL) {
12180
return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
12182
NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS, r->out.connect_handle));
12183
NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
12185
return NDR_ERR_SUCCESS;
12188
_PUBLIC_ enum ndr_err_code ndr_pull_samr_Connect5(struct ndr_pull *ndr, int flags, struct samr_Connect5 *r)
12190
uint32_t _ptr_system_name;
12191
TALLOC_CTX *_mem_save_system_name_0;
12192
TALLOC_CTX *_mem_save_info_in_0;
12193
TALLOC_CTX *_mem_save_level_out_0;
12194
TALLOC_CTX *_mem_save_info_out_0;
12195
TALLOC_CTX *_mem_save_connect_handle_0;
12196
if (flags & NDR_IN) {
12197
ZERO_STRUCT(r->out);
12199
NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_system_name));
12200
if (_ptr_system_name) {
12201
NDR_PULL_ALLOC(ndr, r->in.system_name);
12203
r->in.system_name = NULL;
12205
if (r->in.system_name) {
12206
_mem_save_system_name_0 = NDR_PULL_GET_MEM_CTX(ndr);
12207
NDR_PULL_SET_MEM_CTX(ndr, r->in.system_name, 0);
12208
NDR_CHECK(ndr_pull_array_size(ndr, &r->in.system_name));
12209
NDR_CHECK(ndr_pull_array_length(ndr, &r->in.system_name));
12210
if (ndr_get_array_length(ndr, &r->in.system_name) > ndr_get_array_size(ndr, &r->in.system_name)) {
12211
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));
12213
NDR_CHECK(ndr_check_string_terminator(ndr, ndr_get_array_length(ndr, &r->in.system_name), sizeof(uint16_t)));
12214
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));
12215
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_system_name_0, 0);
12217
NDR_CHECK(ndr_pull_samr_ConnectAccessMask(ndr, NDR_SCALARS, &r->in.access_mask));
12218
NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->in.level_in));
12219
if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
12220
NDR_PULL_ALLOC(ndr, r->in.info_in);
12222
_mem_save_info_in_0 = NDR_PULL_GET_MEM_CTX(ndr);
12223
NDR_PULL_SET_MEM_CTX(ndr, r->in.info_in, LIBNDR_FLAG_REF_ALLOC);
12224
NDR_CHECK(ndr_pull_set_switch_value(ndr, r->in.info_in, r->in.level_in));
12225
NDR_CHECK(ndr_pull_samr_ConnectInfo(ndr, NDR_SCALARS, r->in.info_in));
12226
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_info_in_0, LIBNDR_FLAG_REF_ALLOC);
12227
NDR_PULL_ALLOC(ndr, r->out.level_out);
12228
ZERO_STRUCTP(r->out.level_out);
12229
NDR_PULL_ALLOC(ndr, r->out.info_out);
12230
ZERO_STRUCTP(r->out.info_out);
12231
NDR_PULL_ALLOC(ndr, r->out.connect_handle);
12232
ZERO_STRUCTP(r->out.connect_handle);
12234
if (flags & NDR_OUT) {
12235
if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
12236
NDR_PULL_ALLOC(ndr, r->out.level_out);
12238
_mem_save_level_out_0 = NDR_PULL_GET_MEM_CTX(ndr);
12239
NDR_PULL_SET_MEM_CTX(ndr, r->out.level_out, LIBNDR_FLAG_REF_ALLOC);
12240
NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, r->out.level_out));
12241
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_level_out_0, LIBNDR_FLAG_REF_ALLOC);
12242
if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
12243
NDR_PULL_ALLOC(ndr, r->out.info_out);
12245
_mem_save_info_out_0 = NDR_PULL_GET_MEM_CTX(ndr);
12246
NDR_PULL_SET_MEM_CTX(ndr, r->out.info_out, LIBNDR_FLAG_REF_ALLOC);
12247
NDR_CHECK(ndr_pull_set_switch_value(ndr, r->out.info_out, *r->out.level_out));
12248
NDR_CHECK(ndr_pull_samr_ConnectInfo(ndr, NDR_SCALARS, r->out.info_out));
12249
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_info_out_0, LIBNDR_FLAG_REF_ALLOC);
12250
if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
12251
NDR_PULL_ALLOC(ndr, r->out.connect_handle);
12253
_mem_save_connect_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
12254
NDR_PULL_SET_MEM_CTX(ndr, r->out.connect_handle, LIBNDR_FLAG_REF_ALLOC);
12255
NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS, r->out.connect_handle));
12256
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_connect_handle_0, LIBNDR_FLAG_REF_ALLOC);
12257
NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
12259
return NDR_ERR_SUCCESS;
12262
_PUBLIC_ void ndr_print_samr_Connect5(struct ndr_print *ndr, const char *name, int flags, const struct samr_Connect5 *r)
12264
ndr_print_struct(ndr, name, "samr_Connect5");
12265
if (r == NULL) { ndr_print_null(ndr); return; }
12267
if (flags & NDR_SET_VALUES) {
12268
ndr->flags |= LIBNDR_PRINT_SET_VALUES;
12270
if (flags & NDR_IN) {
12271
ndr_print_struct(ndr, "in", "samr_Connect5");
12273
ndr_print_ptr(ndr, "system_name", r->in.system_name);
12275
if (r->in.system_name) {
12276
ndr_print_string(ndr, "system_name", r->in.system_name);
12279
ndr_print_samr_ConnectAccessMask(ndr, "access_mask", r->in.access_mask);
12280
ndr_print_uint32(ndr, "level_in", r->in.level_in);
12281
ndr_print_ptr(ndr, "info_in", r->in.info_in);
12283
ndr_print_set_switch_value(ndr, r->in.info_in, r->in.level_in);
12284
ndr_print_samr_ConnectInfo(ndr, "info_in", r->in.info_in);
12288
if (flags & NDR_OUT) {
12289
ndr_print_struct(ndr, "out", "samr_Connect5");
12291
ndr_print_ptr(ndr, "level_out", r->out.level_out);
12293
ndr_print_uint32(ndr, "level_out", *r->out.level_out);
12295
ndr_print_ptr(ndr, "info_out", r->out.info_out);
12297
ndr_print_set_switch_value(ndr, r->out.info_out, *r->out.level_out);
12298
ndr_print_samr_ConnectInfo(ndr, "info_out", r->out.info_out);
12300
ndr_print_ptr(ndr, "connect_handle", r->out.connect_handle);
12302
ndr_print_policy_handle(ndr, "connect_handle", r->out.connect_handle);
12304
ndr_print_NTSTATUS(ndr, "result", r->out.result);
12310
static enum ndr_err_code ndr_push_samr_RidToSid(struct ndr_push *ndr, int flags, const struct samr_RidToSid *r)
12312
if (flags & NDR_IN) {
12313
if (r->in.domain_handle == NULL) {
12314
return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
12316
NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS, r->in.domain_handle));
12317
NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->in.rid));
12319
if (flags & NDR_OUT) {
12320
if (r->out.sid == NULL) {
12321
return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
12323
NDR_CHECK(ndr_push_unique_ptr(ndr, *r->out.sid));
12325
NDR_CHECK(ndr_push_dom_sid2(ndr, NDR_SCALARS|NDR_BUFFERS, *r->out.sid));
12327
NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
12329
return NDR_ERR_SUCCESS;
12332
static enum ndr_err_code ndr_pull_samr_RidToSid(struct ndr_pull *ndr, int flags, struct samr_RidToSid *r)
12335
TALLOC_CTX *_mem_save_domain_handle_0;
12336
TALLOC_CTX *_mem_save_sid_0;
12337
TALLOC_CTX *_mem_save_sid_1;
12338
if (flags & NDR_IN) {
12339
ZERO_STRUCT(r->out);
12341
if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
12342
NDR_PULL_ALLOC(ndr, r->in.domain_handle);
12344
_mem_save_domain_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
12345
NDR_PULL_SET_MEM_CTX(ndr, r->in.domain_handle, LIBNDR_FLAG_REF_ALLOC);
12346
NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS, r->in.domain_handle));
12347
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_domain_handle_0, LIBNDR_FLAG_REF_ALLOC);
12348
NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->in.rid));
12349
NDR_PULL_ALLOC(ndr, r->out.sid);
12350
ZERO_STRUCTP(r->out.sid);
12352
if (flags & NDR_OUT) {
12353
if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
12354
NDR_PULL_ALLOC(ndr, r->out.sid);
12356
_mem_save_sid_0 = NDR_PULL_GET_MEM_CTX(ndr);
12357
NDR_PULL_SET_MEM_CTX(ndr, r->out.sid, LIBNDR_FLAG_REF_ALLOC);
12358
NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_sid));
12360
NDR_PULL_ALLOC(ndr, *r->out.sid);
12362
*r->out.sid = NULL;
12365
_mem_save_sid_1 = NDR_PULL_GET_MEM_CTX(ndr);
12366
NDR_PULL_SET_MEM_CTX(ndr, *r->out.sid, 0);
12367
NDR_CHECK(ndr_pull_dom_sid2(ndr, NDR_SCALARS|NDR_BUFFERS, *r->out.sid));
12368
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_sid_1, 0);
12370
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_sid_0, LIBNDR_FLAG_REF_ALLOC);
12371
NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
12373
return NDR_ERR_SUCCESS;
12376
_PUBLIC_ void ndr_print_samr_RidToSid(struct ndr_print *ndr, const char *name, int flags, const struct samr_RidToSid *r)
12378
ndr_print_struct(ndr, name, "samr_RidToSid");
12379
if (r == NULL) { ndr_print_null(ndr); return; }
12381
if (flags & NDR_SET_VALUES) {
12382
ndr->flags |= LIBNDR_PRINT_SET_VALUES;
12384
if (flags & NDR_IN) {
12385
ndr_print_struct(ndr, "in", "samr_RidToSid");
12387
ndr_print_ptr(ndr, "domain_handle", r->in.domain_handle);
12389
ndr_print_policy_handle(ndr, "domain_handle", r->in.domain_handle);
12391
ndr_print_uint32(ndr, "rid", r->in.rid);
12394
if (flags & NDR_OUT) {
12395
ndr_print_struct(ndr, "out", "samr_RidToSid");
12397
ndr_print_ptr(ndr, "sid", r->out.sid);
12399
ndr_print_ptr(ndr, "sid", *r->out.sid);
12402
ndr_print_dom_sid2(ndr, "sid", *r->out.sid);
12406
ndr_print_NTSTATUS(ndr, "result", r->out.result);
12412
static enum ndr_err_code ndr_push_samr_SetDsrmPassword(struct ndr_push *ndr, int flags, const struct samr_SetDsrmPassword *r)
12414
if (flags & NDR_IN) {
12415
NDR_CHECK(ndr_push_unique_ptr(ndr, r->in.name));
12417
NDR_CHECK(ndr_push_lsa_String(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.name));
12419
NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->in.unknown));
12420
NDR_CHECK(ndr_push_unique_ptr(ndr, r->in.hash));
12422
NDR_CHECK(ndr_push_samr_Password(ndr, NDR_SCALARS, r->in.hash));
12425
if (flags & NDR_OUT) {
12426
NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
12428
return NDR_ERR_SUCCESS;
12431
static enum ndr_err_code ndr_pull_samr_SetDsrmPassword(struct ndr_pull *ndr, int flags, struct samr_SetDsrmPassword *r)
12433
uint32_t _ptr_name;
12434
uint32_t _ptr_hash;
12435
TALLOC_CTX *_mem_save_name_0;
12436
TALLOC_CTX *_mem_save_hash_0;
12437
if (flags & NDR_IN) {
12438
NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_name));
12440
NDR_PULL_ALLOC(ndr, r->in.name);
12445
_mem_save_name_0 = NDR_PULL_GET_MEM_CTX(ndr);
12446
NDR_PULL_SET_MEM_CTX(ndr, r->in.name, 0);
12447
NDR_CHECK(ndr_pull_lsa_String(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.name));
12448
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_name_0, 0);
12450
NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->in.unknown));
12451
NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_hash));
12453
NDR_PULL_ALLOC(ndr, r->in.hash);
12458
_mem_save_hash_0 = NDR_PULL_GET_MEM_CTX(ndr);
12459
NDR_PULL_SET_MEM_CTX(ndr, r->in.hash, 0);
12460
NDR_CHECK(ndr_pull_samr_Password(ndr, NDR_SCALARS, r->in.hash));
12461
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_hash_0, 0);
12464
if (flags & NDR_OUT) {
12465
NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
12467
return NDR_ERR_SUCCESS;
12470
_PUBLIC_ void ndr_print_samr_SetDsrmPassword(struct ndr_print *ndr, const char *name, int flags, const struct samr_SetDsrmPassword *r)
12472
ndr_print_struct(ndr, name, "samr_SetDsrmPassword");
12473
if (r == NULL) { ndr_print_null(ndr); return; }
12475
if (flags & NDR_SET_VALUES) {
12476
ndr->flags |= LIBNDR_PRINT_SET_VALUES;
12478
if (flags & NDR_IN) {
12479
ndr_print_struct(ndr, "in", "samr_SetDsrmPassword");
12481
ndr_print_ptr(ndr, "name", r->in.name);
12484
ndr_print_lsa_String(ndr, "name", r->in.name);
12487
ndr_print_uint32(ndr, "unknown", r->in.unknown);
12488
ndr_print_ptr(ndr, "hash", r->in.hash);
12491
ndr_print_samr_Password(ndr, "hash", r->in.hash);
12496
if (flags & NDR_OUT) {
12497
ndr_print_struct(ndr, "out", "samr_SetDsrmPassword");
12499
ndr_print_NTSTATUS(ndr, "result", r->out.result);
12505
static enum ndr_err_code ndr_push_samr_ValidatePassword(struct ndr_push *ndr, int flags, const struct samr_ValidatePassword *r)
12507
if (flags & NDR_IN) {
12508
NDR_CHECK(ndr_push_samr_ValidatePasswordLevel(ndr, NDR_SCALARS, r->in.level));
12509
if (r->in.req == NULL) {
12510
return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
12512
NDR_CHECK(ndr_push_set_switch_value(ndr, r->in.req, r->in.level));
12513
NDR_CHECK(ndr_push_samr_ValidatePasswordReq(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.req));
12515
if (flags & NDR_OUT) {
12516
if (r->out.rep == NULL) {
12517
return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
12519
NDR_CHECK(ndr_push_unique_ptr(ndr, *r->out.rep));
12521
NDR_CHECK(ndr_push_set_switch_value(ndr, *r->out.rep, r->in.level));
12522
NDR_CHECK(ndr_push_samr_ValidatePasswordRep(ndr, NDR_SCALARS|NDR_BUFFERS, *r->out.rep));
12524
NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
12526
return NDR_ERR_SUCCESS;
12529
static enum ndr_err_code ndr_pull_samr_ValidatePassword(struct ndr_pull *ndr, int flags, struct samr_ValidatePassword *r)
12532
TALLOC_CTX *_mem_save_req_0;
12533
TALLOC_CTX *_mem_save_rep_0;
12534
TALLOC_CTX *_mem_save_rep_1;
12535
if (flags & NDR_IN) {
12536
ZERO_STRUCT(r->out);
12538
NDR_CHECK(ndr_pull_samr_ValidatePasswordLevel(ndr, NDR_SCALARS, &r->in.level));
12539
if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
12540
NDR_PULL_ALLOC(ndr, r->in.req);
12542
_mem_save_req_0 = NDR_PULL_GET_MEM_CTX(ndr);
12543
NDR_PULL_SET_MEM_CTX(ndr, r->in.req, LIBNDR_FLAG_REF_ALLOC);
12544
NDR_CHECK(ndr_pull_set_switch_value(ndr, r->in.req, r->in.level));
12545
NDR_CHECK(ndr_pull_samr_ValidatePasswordReq(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.req));
12546
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_req_0, LIBNDR_FLAG_REF_ALLOC);
12547
NDR_PULL_ALLOC(ndr, r->out.rep);
12548
ZERO_STRUCTP(r->out.rep);
12550
if (flags & NDR_OUT) {
12551
if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
12552
NDR_PULL_ALLOC(ndr, r->out.rep);
12554
_mem_save_rep_0 = NDR_PULL_GET_MEM_CTX(ndr);
12555
NDR_PULL_SET_MEM_CTX(ndr, r->out.rep, LIBNDR_FLAG_REF_ALLOC);
12556
NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_rep));
12558
NDR_PULL_ALLOC(ndr, *r->out.rep);
12560
*r->out.rep = NULL;
12563
_mem_save_rep_1 = NDR_PULL_GET_MEM_CTX(ndr);
12564
NDR_PULL_SET_MEM_CTX(ndr, *r->out.rep, 0);
12565
NDR_CHECK(ndr_pull_set_switch_value(ndr, *r->out.rep, r->in.level));
12566
NDR_CHECK(ndr_pull_samr_ValidatePasswordRep(ndr, NDR_SCALARS|NDR_BUFFERS, *r->out.rep));
12567
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_rep_1, 0);
12569
NDR_PULL_SET_MEM_CTX(ndr, _mem_save_rep_0, LIBNDR_FLAG_REF_ALLOC);
12570
NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
12572
return NDR_ERR_SUCCESS;
12575
_PUBLIC_ void ndr_print_samr_ValidatePassword(struct ndr_print *ndr, const char *name, int flags, const struct samr_ValidatePassword *r)
12577
ndr_print_struct(ndr, name, "samr_ValidatePassword");
12578
if (r == NULL) { ndr_print_null(ndr); return; }
12580
if (flags & NDR_SET_VALUES) {
12581
ndr->flags |= LIBNDR_PRINT_SET_VALUES;
12583
if (flags & NDR_IN) {
12584
ndr_print_struct(ndr, "in", "samr_ValidatePassword");
12586
ndr_print_samr_ValidatePasswordLevel(ndr, "level", r->in.level);
12587
ndr_print_ptr(ndr, "req", r->in.req);
12589
ndr_print_set_switch_value(ndr, r->in.req, r->in.level);
12590
ndr_print_samr_ValidatePasswordReq(ndr, "req", r->in.req);
12594
if (flags & NDR_OUT) {
12595
ndr_print_struct(ndr, "out", "samr_ValidatePassword");
12597
ndr_print_ptr(ndr, "rep", r->out.rep);
12599
ndr_print_ptr(ndr, "rep", *r->out.rep);
12602
ndr_print_set_switch_value(ndr, *r->out.rep, r->in.level);
12603
ndr_print_samr_ValidatePasswordRep(ndr, "rep", *r->out.rep);
12607
ndr_print_NTSTATUS(ndr, "result", r->out.result);
12613
static const struct ndr_interface_call samr_calls[] = {
12616
sizeof(struct samr_Connect),
12617
(ndr_push_flags_fn_t) ndr_push_samr_Connect,
12618
(ndr_pull_flags_fn_t) ndr_pull_samr_Connect,
12619
(ndr_print_function_t) ndr_print_samr_Connect,
12625
sizeof(struct samr_Close),
12626
(ndr_push_flags_fn_t) ndr_push_samr_Close,
12627
(ndr_pull_flags_fn_t) ndr_pull_samr_Close,
12628
(ndr_print_function_t) ndr_print_samr_Close,
12633
"samr_SetSecurity",
12634
sizeof(struct samr_SetSecurity),
12635
(ndr_push_flags_fn_t) ndr_push_samr_SetSecurity,
12636
(ndr_pull_flags_fn_t) ndr_pull_samr_SetSecurity,
12637
(ndr_print_function_t) ndr_print_samr_SetSecurity,
12642
"samr_QuerySecurity",
12643
sizeof(struct samr_QuerySecurity),
12644
(ndr_push_flags_fn_t) ndr_push_samr_QuerySecurity,
12645
(ndr_pull_flags_fn_t) ndr_pull_samr_QuerySecurity,
12646
(ndr_print_function_t) ndr_print_samr_QuerySecurity,
12652
sizeof(struct samr_Shutdown),
12653
(ndr_push_flags_fn_t) ndr_push_samr_Shutdown,
12654
(ndr_pull_flags_fn_t) ndr_pull_samr_Shutdown,
12655
(ndr_print_function_t) ndr_print_samr_Shutdown,
12660
"samr_LookupDomain",
12661
sizeof(struct samr_LookupDomain),
12662
(ndr_push_flags_fn_t) ndr_push_samr_LookupDomain,
12663
(ndr_pull_flags_fn_t) ndr_pull_samr_LookupDomain,
12664
(ndr_print_function_t) ndr_print_samr_LookupDomain,
12669
"samr_EnumDomains",
12670
sizeof(struct samr_EnumDomains),
12671
(ndr_push_flags_fn_t) ndr_push_samr_EnumDomains,
12672
(ndr_pull_flags_fn_t) ndr_pull_samr_EnumDomains,
12673
(ndr_print_function_t) ndr_print_samr_EnumDomains,
12679
sizeof(struct samr_OpenDomain),
12680
(ndr_push_flags_fn_t) ndr_push_samr_OpenDomain,
12681
(ndr_pull_flags_fn_t) ndr_pull_samr_OpenDomain,
12682
(ndr_print_function_t) ndr_print_samr_OpenDomain,
12687
"samr_QueryDomainInfo",
12688
sizeof(struct samr_QueryDomainInfo),
12689
(ndr_push_flags_fn_t) ndr_push_samr_QueryDomainInfo,
12690
(ndr_pull_flags_fn_t) ndr_pull_samr_QueryDomainInfo,
12691
(ndr_print_function_t) ndr_print_samr_QueryDomainInfo,
12696
"samr_SetDomainInfo",
12697
sizeof(struct samr_SetDomainInfo),
12698
(ndr_push_flags_fn_t) ndr_push_samr_SetDomainInfo,
12699
(ndr_pull_flags_fn_t) ndr_pull_samr_SetDomainInfo,
12700
(ndr_print_function_t) ndr_print_samr_SetDomainInfo,
12705
"samr_CreateDomainGroup",
12706
sizeof(struct samr_CreateDomainGroup),
12707
(ndr_push_flags_fn_t) ndr_push_samr_CreateDomainGroup,
12708
(ndr_pull_flags_fn_t) ndr_pull_samr_CreateDomainGroup,
12709
(ndr_print_function_t) ndr_print_samr_CreateDomainGroup,
12714
"samr_EnumDomainGroups",
12715
sizeof(struct samr_EnumDomainGroups),
12716
(ndr_push_flags_fn_t) ndr_push_samr_EnumDomainGroups,
12717
(ndr_pull_flags_fn_t) ndr_pull_samr_EnumDomainGroups,
12718
(ndr_print_function_t) ndr_print_samr_EnumDomainGroups,
12724
sizeof(struct samr_CreateUser),
12725
(ndr_push_flags_fn_t) ndr_push_samr_CreateUser,
12726
(ndr_pull_flags_fn_t) ndr_pull_samr_CreateUser,
12727
(ndr_print_function_t) ndr_print_samr_CreateUser,
12732
"samr_EnumDomainUsers",
12733
sizeof(struct samr_EnumDomainUsers),
12734
(ndr_push_flags_fn_t) ndr_push_samr_EnumDomainUsers,
12735
(ndr_pull_flags_fn_t) ndr_pull_samr_EnumDomainUsers,
12736
(ndr_print_function_t) ndr_print_samr_EnumDomainUsers,
12741
"samr_CreateDomAlias",
12742
sizeof(struct samr_CreateDomAlias),
12743
(ndr_push_flags_fn_t) ndr_push_samr_CreateDomAlias,
12744
(ndr_pull_flags_fn_t) ndr_pull_samr_CreateDomAlias,
12745
(ndr_print_function_t) ndr_print_samr_CreateDomAlias,
12750
"samr_EnumDomainAliases",
12751
sizeof(struct samr_EnumDomainAliases),
12752
(ndr_push_flags_fn_t) ndr_push_samr_EnumDomainAliases,
12753
(ndr_pull_flags_fn_t) ndr_pull_samr_EnumDomainAliases,
12754
(ndr_print_function_t) ndr_print_samr_EnumDomainAliases,
12759
"samr_GetAliasMembership",
12760
sizeof(struct samr_GetAliasMembership),
12761
(ndr_push_flags_fn_t) ndr_push_samr_GetAliasMembership,
12762
(ndr_pull_flags_fn_t) ndr_pull_samr_GetAliasMembership,
12763
(ndr_print_function_t) ndr_print_samr_GetAliasMembership,
12768
"samr_LookupNames",
12769
sizeof(struct samr_LookupNames),
12770
(ndr_push_flags_fn_t) ndr_push_samr_LookupNames,
12771
(ndr_pull_flags_fn_t) ndr_pull_samr_LookupNames,
12772
(ndr_print_function_t) ndr_print_samr_LookupNames,
12778
sizeof(struct samr_LookupRids),
12779
(ndr_push_flags_fn_t) ndr_push_samr_LookupRids,
12780
(ndr_pull_flags_fn_t) ndr_pull_samr_LookupRids,
12781
(ndr_print_function_t) ndr_print_samr_LookupRids,
12787
sizeof(struct samr_OpenGroup),
12788
(ndr_push_flags_fn_t) ndr_push_samr_OpenGroup,
12789
(ndr_pull_flags_fn_t) ndr_pull_samr_OpenGroup,
12790
(ndr_print_function_t) ndr_print_samr_OpenGroup,
12795
"samr_QueryGroupInfo",
12796
sizeof(struct samr_QueryGroupInfo),
12797
(ndr_push_flags_fn_t) ndr_push_samr_QueryGroupInfo,
12798
(ndr_pull_flags_fn_t) ndr_pull_samr_QueryGroupInfo,
12799
(ndr_print_function_t) ndr_print_samr_QueryGroupInfo,
12804
"samr_SetGroupInfo",
12805
sizeof(struct samr_SetGroupInfo),
12806
(ndr_push_flags_fn_t) ndr_push_samr_SetGroupInfo,
12807
(ndr_pull_flags_fn_t) ndr_pull_samr_SetGroupInfo,
12808
(ndr_print_function_t) ndr_print_samr_SetGroupInfo,
12813
"samr_AddGroupMember",
12814
sizeof(struct samr_AddGroupMember),
12815
(ndr_push_flags_fn_t) ndr_push_samr_AddGroupMember,
12816
(ndr_pull_flags_fn_t) ndr_pull_samr_AddGroupMember,
12817
(ndr_print_function_t) ndr_print_samr_AddGroupMember,
12822
"samr_DeleteDomainGroup",
12823
sizeof(struct samr_DeleteDomainGroup),
12824
(ndr_push_flags_fn_t) ndr_push_samr_DeleteDomainGroup,
12825
(ndr_pull_flags_fn_t) ndr_pull_samr_DeleteDomainGroup,
12826
(ndr_print_function_t) ndr_print_samr_DeleteDomainGroup,
12831
"samr_DeleteGroupMember",
12832
sizeof(struct samr_DeleteGroupMember),
12833
(ndr_push_flags_fn_t) ndr_push_samr_DeleteGroupMember,
12834
(ndr_pull_flags_fn_t) ndr_pull_samr_DeleteGroupMember,
12835
(ndr_print_function_t) ndr_print_samr_DeleteGroupMember,
12840
"samr_QueryGroupMember",
12841
sizeof(struct samr_QueryGroupMember),
12842
(ndr_push_flags_fn_t) ndr_push_samr_QueryGroupMember,
12843
(ndr_pull_flags_fn_t) ndr_pull_samr_QueryGroupMember,
12844
(ndr_print_function_t) ndr_print_samr_QueryGroupMember,
12849
"samr_SetMemberAttributesOfGroup",
12850
sizeof(struct samr_SetMemberAttributesOfGroup),
12851
(ndr_push_flags_fn_t) ndr_push_samr_SetMemberAttributesOfGroup,
12852
(ndr_pull_flags_fn_t) ndr_pull_samr_SetMemberAttributesOfGroup,
12853
(ndr_print_function_t) ndr_print_samr_SetMemberAttributesOfGroup,
12859
sizeof(struct samr_OpenAlias),
12860
(ndr_push_flags_fn_t) ndr_push_samr_OpenAlias,
12861
(ndr_pull_flags_fn_t) ndr_pull_samr_OpenAlias,
12862
(ndr_print_function_t) ndr_print_samr_OpenAlias,
12867
"samr_QueryAliasInfo",
12868
sizeof(struct samr_QueryAliasInfo),
12869
(ndr_push_flags_fn_t) ndr_push_samr_QueryAliasInfo,
12870
(ndr_pull_flags_fn_t) ndr_pull_samr_QueryAliasInfo,
12871
(ndr_print_function_t) ndr_print_samr_QueryAliasInfo,
12876
"samr_SetAliasInfo",
12877
sizeof(struct samr_SetAliasInfo),
12878
(ndr_push_flags_fn_t) ndr_push_samr_SetAliasInfo,
12879
(ndr_pull_flags_fn_t) ndr_pull_samr_SetAliasInfo,
12880
(ndr_print_function_t) ndr_print_samr_SetAliasInfo,
12885
"samr_DeleteDomAlias",
12886
sizeof(struct samr_DeleteDomAlias),
12887
(ndr_push_flags_fn_t) ndr_push_samr_DeleteDomAlias,
12888
(ndr_pull_flags_fn_t) ndr_pull_samr_DeleteDomAlias,
12889
(ndr_print_function_t) ndr_print_samr_DeleteDomAlias,
12894
"samr_AddAliasMember",
12895
sizeof(struct samr_AddAliasMember),
12896
(ndr_push_flags_fn_t) ndr_push_samr_AddAliasMember,
12897
(ndr_pull_flags_fn_t) ndr_pull_samr_AddAliasMember,
12898
(ndr_print_function_t) ndr_print_samr_AddAliasMember,
12903
"samr_DeleteAliasMember",
12904
sizeof(struct samr_DeleteAliasMember),
12905
(ndr_push_flags_fn_t) ndr_push_samr_DeleteAliasMember,
12906
(ndr_pull_flags_fn_t) ndr_pull_samr_DeleteAliasMember,
12907
(ndr_print_function_t) ndr_print_samr_DeleteAliasMember,
12912
"samr_GetMembersInAlias",
12913
sizeof(struct samr_GetMembersInAlias),
12914
(ndr_push_flags_fn_t) ndr_push_samr_GetMembersInAlias,
12915
(ndr_pull_flags_fn_t) ndr_pull_samr_GetMembersInAlias,
12916
(ndr_print_function_t) ndr_print_samr_GetMembersInAlias,
12922
sizeof(struct samr_OpenUser),
12923
(ndr_push_flags_fn_t) ndr_push_samr_OpenUser,
12924
(ndr_pull_flags_fn_t) ndr_pull_samr_OpenUser,
12925
(ndr_print_function_t) ndr_print_samr_OpenUser,
12931
sizeof(struct samr_DeleteUser),
12932
(ndr_push_flags_fn_t) ndr_push_samr_DeleteUser,
12933
(ndr_pull_flags_fn_t) ndr_pull_samr_DeleteUser,
12934
(ndr_print_function_t) ndr_print_samr_DeleteUser,
12939
"samr_QueryUserInfo",
12940
sizeof(struct samr_QueryUserInfo),
12941
(ndr_push_flags_fn_t) ndr_push_samr_QueryUserInfo,
12942
(ndr_pull_flags_fn_t) ndr_pull_samr_QueryUserInfo,
12943
(ndr_print_function_t) ndr_print_samr_QueryUserInfo,
12948
"samr_SetUserInfo",
12949
sizeof(struct samr_SetUserInfo),
12950
(ndr_push_flags_fn_t) ndr_push_samr_SetUserInfo,
12951
(ndr_pull_flags_fn_t) ndr_pull_samr_SetUserInfo,
12952
(ndr_print_function_t) ndr_print_samr_SetUserInfo,
12957
"samr_ChangePasswordUser",
12958
sizeof(struct samr_ChangePasswordUser),
12959
(ndr_push_flags_fn_t) ndr_push_samr_ChangePasswordUser,
12960
(ndr_pull_flags_fn_t) ndr_pull_samr_ChangePasswordUser,
12961
(ndr_print_function_t) ndr_print_samr_ChangePasswordUser,
12966
"samr_GetGroupsForUser",
12967
sizeof(struct samr_GetGroupsForUser),
12968
(ndr_push_flags_fn_t) ndr_push_samr_GetGroupsForUser,
12969
(ndr_pull_flags_fn_t) ndr_pull_samr_GetGroupsForUser,
12970
(ndr_print_function_t) ndr_print_samr_GetGroupsForUser,
12975
"samr_QueryDisplayInfo",
12976
sizeof(struct samr_QueryDisplayInfo),
12977
(ndr_push_flags_fn_t) ndr_push_samr_QueryDisplayInfo,
12978
(ndr_pull_flags_fn_t) ndr_pull_samr_QueryDisplayInfo,
12979
(ndr_print_function_t) ndr_print_samr_QueryDisplayInfo,
12984
"samr_GetDisplayEnumerationIndex",
12985
sizeof(struct samr_GetDisplayEnumerationIndex),
12986
(ndr_push_flags_fn_t) ndr_push_samr_GetDisplayEnumerationIndex,
12987
(ndr_pull_flags_fn_t) ndr_pull_samr_GetDisplayEnumerationIndex,
12988
(ndr_print_function_t) ndr_print_samr_GetDisplayEnumerationIndex,
12993
"samr_TestPrivateFunctionsDomain",
12994
sizeof(struct samr_TestPrivateFunctionsDomain),
12995
(ndr_push_flags_fn_t) ndr_push_samr_TestPrivateFunctionsDomain,
12996
(ndr_pull_flags_fn_t) ndr_pull_samr_TestPrivateFunctionsDomain,
12997
(ndr_print_function_t) ndr_print_samr_TestPrivateFunctionsDomain,
13002
"samr_TestPrivateFunctionsUser",
13003
sizeof(struct samr_TestPrivateFunctionsUser),
13004
(ndr_push_flags_fn_t) ndr_push_samr_TestPrivateFunctionsUser,
13005
(ndr_pull_flags_fn_t) ndr_pull_samr_TestPrivateFunctionsUser,
13006
(ndr_print_function_t) ndr_print_samr_TestPrivateFunctionsUser,
13011
"samr_GetUserPwInfo",
13012
sizeof(struct samr_GetUserPwInfo),
13013
(ndr_push_flags_fn_t) ndr_push_samr_GetUserPwInfo,
13014
(ndr_pull_flags_fn_t) ndr_pull_samr_GetUserPwInfo,
13015
(ndr_print_function_t) ndr_print_samr_GetUserPwInfo,
13020
"samr_RemoveMemberFromForeignDomain",
13021
sizeof(struct samr_RemoveMemberFromForeignDomain),
13022
(ndr_push_flags_fn_t) ndr_push_samr_RemoveMemberFromForeignDomain,
13023
(ndr_pull_flags_fn_t) ndr_pull_samr_RemoveMemberFromForeignDomain,
13024
(ndr_print_function_t) ndr_print_samr_RemoveMemberFromForeignDomain,
13029
"samr_QueryDomainInfo2",
13030
sizeof(struct samr_QueryDomainInfo2),
13031
(ndr_push_flags_fn_t) ndr_push_samr_QueryDomainInfo2,
13032
(ndr_pull_flags_fn_t) ndr_pull_samr_QueryDomainInfo2,
13033
(ndr_print_function_t) ndr_print_samr_QueryDomainInfo2,
13038
"samr_QueryUserInfo2",
13039
sizeof(struct samr_QueryUserInfo2),
13040
(ndr_push_flags_fn_t) ndr_push_samr_QueryUserInfo2,
13041
(ndr_pull_flags_fn_t) ndr_pull_samr_QueryUserInfo2,
13042
(ndr_print_function_t) ndr_print_samr_QueryUserInfo2,
13047
"samr_QueryDisplayInfo2",
13048
sizeof(struct samr_QueryDisplayInfo2),
13049
(ndr_push_flags_fn_t) ndr_push_samr_QueryDisplayInfo2,
13050
(ndr_pull_flags_fn_t) ndr_pull_samr_QueryDisplayInfo2,
13051
(ndr_print_function_t) ndr_print_samr_QueryDisplayInfo2,
13056
"samr_GetDisplayEnumerationIndex2",
13057
sizeof(struct samr_GetDisplayEnumerationIndex2),
13058
(ndr_push_flags_fn_t) ndr_push_samr_GetDisplayEnumerationIndex2,
13059
(ndr_pull_flags_fn_t) ndr_pull_samr_GetDisplayEnumerationIndex2,
13060
(ndr_print_function_t) ndr_print_samr_GetDisplayEnumerationIndex2,
13065
"samr_CreateUser2",
13066
sizeof(struct samr_CreateUser2),
13067
(ndr_push_flags_fn_t) ndr_push_samr_CreateUser2,
13068
(ndr_pull_flags_fn_t) ndr_pull_samr_CreateUser2,
13069
(ndr_print_function_t) ndr_print_samr_CreateUser2,
13074
"samr_QueryDisplayInfo3",
13075
sizeof(struct samr_QueryDisplayInfo3),
13076
(ndr_push_flags_fn_t) ndr_push_samr_QueryDisplayInfo3,
13077
(ndr_pull_flags_fn_t) ndr_pull_samr_QueryDisplayInfo3,
13078
(ndr_print_function_t) ndr_print_samr_QueryDisplayInfo3,
13083
"samr_AddMultipleMembersToAlias",
13084
sizeof(struct samr_AddMultipleMembersToAlias),
13085
(ndr_push_flags_fn_t) ndr_push_samr_AddMultipleMembersToAlias,
13086
(ndr_pull_flags_fn_t) ndr_pull_samr_AddMultipleMembersToAlias,
13087
(ndr_print_function_t) ndr_print_samr_AddMultipleMembersToAlias,
13092
"samr_RemoveMultipleMembersFromAlias",
13093
sizeof(struct samr_RemoveMultipleMembersFromAlias),
13094
(ndr_push_flags_fn_t) ndr_push_samr_RemoveMultipleMembersFromAlias,
13095
(ndr_pull_flags_fn_t) ndr_pull_samr_RemoveMultipleMembersFromAlias,
13096
(ndr_print_function_t) ndr_print_samr_RemoveMultipleMembersFromAlias,
13101
"samr_OemChangePasswordUser2",
13102
sizeof(struct samr_OemChangePasswordUser2),
13103
(ndr_push_flags_fn_t) ndr_push_samr_OemChangePasswordUser2,
13104
(ndr_pull_flags_fn_t) ndr_pull_samr_OemChangePasswordUser2,
13105
(ndr_print_function_t) ndr_print_samr_OemChangePasswordUser2,
13110
"samr_ChangePasswordUser2",
13111
sizeof(struct samr_ChangePasswordUser2),
13112
(ndr_push_flags_fn_t) ndr_push_samr_ChangePasswordUser2,
13113
(ndr_pull_flags_fn_t) ndr_pull_samr_ChangePasswordUser2,
13114
(ndr_print_function_t) ndr_print_samr_ChangePasswordUser2,
13119
"samr_GetDomPwInfo",
13120
sizeof(struct samr_GetDomPwInfo),
13121
(ndr_push_flags_fn_t) ndr_push_samr_GetDomPwInfo,
13122
(ndr_pull_flags_fn_t) ndr_pull_samr_GetDomPwInfo,
13123
(ndr_print_function_t) ndr_print_samr_GetDomPwInfo,
13129
sizeof(struct samr_Connect2),
13130
(ndr_push_flags_fn_t) ndr_push_samr_Connect2,
13131
(ndr_pull_flags_fn_t) ndr_pull_samr_Connect2,
13132
(ndr_print_function_t) ndr_print_samr_Connect2,
13137
"samr_SetUserInfo2",
13138
sizeof(struct samr_SetUserInfo2),
13139
(ndr_push_flags_fn_t) ndr_push_samr_SetUserInfo2,
13140
(ndr_pull_flags_fn_t) ndr_pull_samr_SetUserInfo2,
13141
(ndr_print_function_t) ndr_print_samr_SetUserInfo2,
13146
"samr_SetBootKeyInformation",
13147
sizeof(struct samr_SetBootKeyInformation),
13148
(ndr_push_flags_fn_t) ndr_push_samr_SetBootKeyInformation,
13149
(ndr_pull_flags_fn_t) ndr_pull_samr_SetBootKeyInformation,
13150
(ndr_print_function_t) ndr_print_samr_SetBootKeyInformation,
13155
"samr_GetBootKeyInformation",
13156
sizeof(struct samr_GetBootKeyInformation),
13157
(ndr_push_flags_fn_t) ndr_push_samr_GetBootKeyInformation,
13158
(ndr_pull_flags_fn_t) ndr_pull_samr_GetBootKeyInformation,
13159
(ndr_print_function_t) ndr_print_samr_GetBootKeyInformation,
13165
sizeof(struct samr_Connect3),
13166
(ndr_push_flags_fn_t) ndr_push_samr_Connect3,
13167
(ndr_pull_flags_fn_t) ndr_pull_samr_Connect3,
13168
(ndr_print_function_t) ndr_print_samr_Connect3,
13174
sizeof(struct samr_Connect4),
13175
(ndr_push_flags_fn_t) ndr_push_samr_Connect4,
13176
(ndr_pull_flags_fn_t) ndr_pull_samr_Connect4,
13177
(ndr_print_function_t) ndr_print_samr_Connect4,
13182
"samr_ChangePasswordUser3",
13183
sizeof(struct samr_ChangePasswordUser3),
13184
(ndr_push_flags_fn_t) ndr_push_samr_ChangePasswordUser3,
13185
(ndr_pull_flags_fn_t) ndr_pull_samr_ChangePasswordUser3,
13186
(ndr_print_function_t) ndr_print_samr_ChangePasswordUser3,
13192
sizeof(struct samr_Connect5),
13193
(ndr_push_flags_fn_t) ndr_push_samr_Connect5,
13194
(ndr_pull_flags_fn_t) ndr_pull_samr_Connect5,
13195
(ndr_print_function_t) ndr_print_samr_Connect5,
13201
sizeof(struct samr_RidToSid),
13202
(ndr_push_flags_fn_t) ndr_push_samr_RidToSid,
13203
(ndr_pull_flags_fn_t) ndr_pull_samr_RidToSid,
13204
(ndr_print_function_t) ndr_print_samr_RidToSid,
13209
"samr_SetDsrmPassword",
13210
sizeof(struct samr_SetDsrmPassword),
13211
(ndr_push_flags_fn_t) ndr_push_samr_SetDsrmPassword,
13212
(ndr_pull_flags_fn_t) ndr_pull_samr_SetDsrmPassword,
13213
(ndr_print_function_t) ndr_print_samr_SetDsrmPassword,
13218
"samr_ValidatePassword",
13219
sizeof(struct samr_ValidatePassword),
13220
(ndr_push_flags_fn_t) ndr_push_samr_ValidatePassword,
13221
(ndr_pull_flags_fn_t) ndr_pull_samr_ValidatePassword,
13222
(ndr_print_function_t) ndr_print_samr_ValidatePassword,
13226
{ NULL, 0, NULL, NULL, NULL }
13229
static const char * const samr_endpoint_strings[] = {
13230
"ncacn_np:[\\pipe\\samr]",
13235
static const struct ndr_interface_string_array samr_endpoints = {
13237
.names = samr_endpoint_strings
13240
static const char * const samr_authservice_strings[] = {
13244
static const struct ndr_interface_string_array samr_authservices = {
13246
.names = samr_authservice_strings
13250
const struct ndr_interface_table ndr_table_samr = {
13253
{0x12345778,0x1234,0xabcd,{0xef,0x00},{0x01,0x23,0x45,0x67,0x89,0xac}},
13256
.helpstring = NDR_SAMR_HELPSTRING,
13258
.calls = samr_calls,
13259
.endpoints = &samr_endpoints,
13260
.authservices = &samr_authservices