NDR_CHECK(ndr_push_set_switch_value(ndr, &r->object, sec_ace_object(r->type)));
NDR_CHECK(ndr_push_security_ace_object_ctr(ndr, NDR_SCALARS, &r->object));
NDR_CHECK(ndr_push_dom_sid(ndr, NDR_SCALARS, &r->trustee));
- {
+ if (sec_ace_has_extra_blob(r->type) || r->coda.ignored.length != 0) {
struct ndr_push *_ndr_coda;
NDR_CHECK(ndr_push_subcontext_start(ndr, &_ndr_coda, 0, ndr_subcontext_size_of_ace_coda(r, ndr_size_security_ace(r, ndr->flags), ndr->flags)));
NDR_CHECK(ndr_push_set_switch_value(_ndr_coda, &r->coda, r->type));