Lines Matching defs:ndr

30  *  librpc/ndr/gen_ndr/ndr_security.c
31 * librpc/ndr/ndr_misc.c
32 * librpc/ndr/ndr_sec_helper.c
36 #include <ndr.h>
40 ndr_pull_GUID(struct ndr_pull *ndr,
46 NDR_PULL_CHECK_FLAGS(ndr, ndr_flags);
48 NDR_CHECK(ndr_pull_align(ndr, 4));
49 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->time_low));
50 NDR_CHECK(ndr_pull_uint16(ndr, NDR_SCALARS, &r->time_mid));
51 NDR_CHECK(ndr_pull_uint16(ndr, NDR_SCALARS, &r->time_hi_and_version));
53 NDR_CHECK(ndr_pull_array_uint8(ndr,
58 NDR_CHECK(ndr_pull_array_uint8(ndr, NDR_SCALARS, r->node, size_node_0));
59 NDR_CHECK(ndr_pull_trailer_align(ndr, 4));
67 ndr_pull_security_ace_flags(struct ndr_pull *ndr,
72 NDR_CHECK(ndr_pull_uint8(ndr, ndr_flags, &v));
79 ndr_pull_security_ace_type(struct ndr_pull *ndr,
84 NDR_CHECK(ndr_pull_enum_uint8(ndr, ndr_flags, &v));
91 ndr_pull_security_ace_object_flags(struct ndr_pull *ndr,
96 NDR_CHECK(ndr_pull_uint32(ndr, ndr_flags, &v));
103 ndr_pull_security_ace_object_type(struct ndr_pull *ndr,
108 level = ndr_pull_get_switch_value(ndr, r);
109 NDR_PULL_CHECK_FLAGS(ndr, ndr_flags);
111 NDR_CHECK(ndr_pull_union_align(ndr, 4));
114 NDR_CHECK(ndr_pull_GUID(ndr, NDR_SCALARS, &r->type));
133 ndr_pull_security_ace_object_inherited_type(struct ndr_pull *ndr,
138 level = ndr_pull_get_switch_value(ndr, r);
139 NDR_PULL_CHECK_FLAGS(ndr, ndr_flags);
141 NDR_CHECK(ndr_pull_union_align(ndr, 4));
144 NDR_CHECK(ndr_pull_GUID(ndr,
164 ndr_pull_security_ace_object(struct ndr_pull *ndr,
168 NDR_PULL_CHECK_FLAGS(ndr, ndr_flags);
170 NDR_CHECK(ndr_pull_align(ndr, 4));
172 (ndr, NDR_SCALARS, &r->flags));
174 (ndr, &r->type, r->flags & SEC_ACE_OBJECT_TYPE_PRESENT));
176 (ndr, NDR_SCALARS, &r->type));
178 (ndr,
182 (ndr, NDR_SCALARS, &r->inherited_type));
183 NDR_CHECK(ndr_pull_trailer_align(ndr, 4));
187 (ndr, NDR_BUFFERS, &r->type));
189 (ndr, NDR_BUFFERS, &r->inherited_type));
196 ndr_pull_security_ace_object_ctr(struct ndr_pull *ndr,
201 level = ndr_pull_get_switch_value(ndr, r);
202 NDR_PULL_CHECK_FLAGS(ndr, ndr_flags);
204 NDR_CHECK(ndr_pull_union_align(ndr, 4));
208 (ndr, NDR_SCALARS, &r->object));
212 (ndr, NDR_SCALARS, &r->object));
216 (ndr, NDR_SCALARS, &r->object));
220 (ndr, NDR_SCALARS, &r->object));
230 (ndr, NDR_BUFFERS, &r->object));
234 (ndr, NDR_BUFFERS, &r->object));
238 (ndr, NDR_BUFFERS, &r->object));
242 (ndr, NDR_BUFFERS, &r->object));
252 ndr_pull_dom_sid(struct ndr_pull *ndr,
258 NDR_CHECK(ndr_pull_align(ndr, 4));
259 NDR_CHECK(ndr_pull_uint8(ndr, NDR_SCALARS, &r->sid_rev_num));
260 NDR_CHECK(ndr_pull_int8(ndr, NDR_SCALARS, &r->num_auths));
262 return ndr_pull_error(ndr, NDR_ERR_RANGE, "value out of range");
264 NDR_CHECK(ndr_pull_array_uint8(ndr, NDR_SCALARS, r->id_auth, 6));
270 (ndr, NDR_SCALARS, &r->sub_auths[cntr_sub_auths_0]));
277 ndr_pull_security_ace(struct ndr_pull *ndr,
282 uint32_t start_ofs = ndr->offset;
285 NDR_CHECK(ndr_pull_align(ndr, 4));
286 NDR_CHECK(ndr_pull_security_ace_type(ndr, NDR_SCALARS, &r->type));
287 NDR_CHECK(ndr_pull_security_ace_flags(ndr, NDR_SCALARS, &r->flags));
288 NDR_CHECK(ndr_pull_uint16(ndr, NDR_SCALARS, &r->size));
289 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->access_mask));
290 NDR_CHECK(ndr_pull_set_switch_value(ndr, &r->object, r->type));
292 (ndr, NDR_SCALARS, &r->object));
293 NDR_CHECK(ndr_pull_dom_sid(ndr, NDR_SCALARS, &r->trustee));
294 size = ndr->offset - start_ofs;
296 return ndr_pull_error(ndr, NDR_ERR_BUFSIZE,
301 NDR_PULL_NEED_BYTES(ndr, pad);
302 ndr->offset += pad;
306 (ndr, NDR_BUFFERS, &r->object));
312 ndr_pull_security_acl_revision(struct ndr_pull *ndr,
317 NDR_CHECK(ndr_pull_enum_uint1632(ndr, ndr_flags, &v));
324 ndr_pull_security_acl(struct ndr_pull *ndr,
331 NDR_PULL_CHECK_FLAGS(ndr, ndr_flags);
333 NDR_CHECK(ndr_pull_align(ndr, 4));
335 (ndr, NDR_SCALARS, &r->revision));
336 NDR_CHECK(ndr_pull_uint16(ndr, NDR_SCALARS, &r->size));
337 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->num_aces));
339 return ndr_pull_error(ndr, NDR_ERR_RANGE, "value out of range");
342 NDR_PULL_ALLOC_N(ndr, r->aces, size_aces_0);
343 _mem_save_aces_0 = NDR_PULL_GET_MEM_CTX(ndr);
344 NDR_PULL_SET_MEM_CTX(ndr, r->aces, 0);
347 (ndr, NDR_SCALARS, &r->aces[cntr_aces_0]));
349 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_aces_0, 0);
350 NDR_CHECK(ndr_pull_trailer_align(ndr, 4));
354 _mem_save_aces_0 = NDR_PULL_GET_MEM_CTX(ndr);
355 NDR_PULL_SET_MEM_CTX(ndr, r->aces, 0);
358 (ndr, NDR_BUFFERS, &r->aces[cntr_aces_0]));
360 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_aces_0, 0);
367 ndr_pull_security_descriptor_revision(struct ndr_pull *ndr,
372 NDR_CHECK(ndr_pull_enum_uint8(ndr, ndr_flags, &v));
380 ndr_pull_security_descriptor_type(struct ndr_pull *ndr,
385 NDR_CHECK(ndr_pull_uint16(ndr, ndr_flags, &v));
392 ad_gpo_ndr_pull_security_descriptor(struct ndr_pull *ndr,
404 uint32_t _flags_save_STRUCT = ndr->flags;
407 ndr_set_flags(&ndr->flags, LIBNDR_FLAG_LITTLE_ENDIAN);
408 NDR_PULL_CHECK_FLAGS(ndr, ndr_flags);
410 NDR_CHECK(ndr_pull_align(ndr, 5));
411 NDR_CHECK(ndr_pull_security_descriptor_revision(ndr,
414 NDR_CHECK(ndr_pull_security_descriptor_type(ndr,
417 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_owner_sid));
419 NDR_PULL_ALLOC(ndr, r->owner_sid);
420 NDR_CHECK(ndr_pull_relative_ptr1(ndr,
426 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_group_sid));
428 NDR_PULL_ALLOC(ndr, r->group_sid);
429 NDR_CHECK(ndr_pull_relative_ptr1(ndr,
435 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_sacl));
437 NDR_PULL_ALLOC(ndr, r->sacl);
438 NDR_CHECK(ndr_pull_relative_ptr1(ndr, r->sacl, _ptr_sacl));
442 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_dacl));
444 NDR_PULL_ALLOC(ndr, r->dacl);
445 NDR_CHECK(ndr_pull_relative_ptr1(ndr, r->dacl, _ptr_dacl));
449 NDR_CHECK(ndr_pull_trailer_align(ndr, 5));
453 _relative_save_offset = ndr->offset;
454 NDR_CHECK(ndr_pull_relative_ptr2(ndr, r->owner_sid));
455 _mem_save_owner_sid_0 = NDR_PULL_GET_MEM_CTX(ndr);
456 NDR_PULL_SET_MEM_CTX(ndr, r->owner_sid, 0);
457 NDR_CHECK(ndr_pull_dom_sid(ndr, NDR_SCALARS, r->owner_sid));
458 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_owner_sid_0, 0);
459 if (ndr->offset > ndr->relative_highest_offset) {
460 ndr->relative_highest_offset = ndr->offset;
462 ndr->offset = _relative_save_offset;
465 _relative_save_offset = ndr->offset;
466 NDR_CHECK(ndr_pull_relative_ptr2(ndr, r->group_sid));
467 _mem_save_group_sid_0 = NDR_PULL_GET_MEM_CTX(ndr);
468 NDR_PULL_SET_MEM_CTX(ndr, r->group_sid, 0);
469 NDR_CHECK(ndr_pull_dom_sid(ndr, NDR_SCALARS, r->group_sid));
470 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_group_sid_0, 0);
471 if (ndr->offset > ndr->relative_highest_offset) {
472 ndr->relative_highest_offset = ndr->offset;
474 ndr->offset = _relative_save_offset;
477 _relative_save_offset = ndr->offset;
478 NDR_CHECK(ndr_pull_relative_ptr2(ndr, r->sacl));
479 _mem_save_sacl_0 = NDR_PULL_GET_MEM_CTX(ndr);
480 NDR_PULL_SET_MEM_CTX(ndr, r->sacl, 0);
481 NDR_CHECK(ndr_pull_security_acl(ndr,
484 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_sacl_0, 0);
485 if (ndr->offset > ndr->relative_highest_offset) {
486 ndr->relative_highest_offset = ndr->offset;
488 ndr->offset = _relative_save_offset;
491 _relative_save_offset = ndr->offset;
492 NDR_CHECK(ndr_pull_relative_ptr2(ndr, r->dacl));
493 _mem_save_dacl_0 = NDR_PULL_GET_MEM_CTX(ndr);
494 NDR_PULL_SET_MEM_CTX(ndr, r->dacl, 0);
495 NDR_CHECK(ndr_pull_security_acl(ndr,
498 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_dacl_0, 0);
499 if (ndr->offset > ndr->relative_highest_offset) {
500 ndr->relative_highest_offset = ndr->offset;
502 ndr->offset = _relative_save_offset;
505 ndr->flags = _flags_save_STRUCT;