spoolss: use subcontext in NDR_SPOOLSS_PUSH_ENUM_OUT macro.
authorStefan Metzmacher <metze@samba.org>
Wed, 23 Dec 2009 14:52:39 +0000 (15:52 +0100)
committerStefan Metzmacher <metze@samba.org>
Thu, 18 Feb 2010 14:47:56 +0000 (15:47 +0100)
metze

librpc/ndr/ndr_spoolss_buf.c

index 0012ce3e2acbb33e2dc24a68a20fb122d1ac0e6e..e41f9436b1ec4297606df91385248a910971622a 100644 (file)
                NDR_ERR_HAVE_NO_MEMORY(_ndr_info);\
                _ndr_info->flags= ndr->flags;\
                if (r->out.info) {\
+                       struct ndr_push *_subndr_info;\
                        struct __##fn __r;\
                        __r.in.level    = r->in.level;\
                        __r.in.count    = *r->out.count;\
                        __r.out.info    = *r->out.info;\
-                       NDR_CHECK(ndr_push___##fn(_ndr_info, flags, &__r)); \
+                       NDR_CHECK(ndr_push_subcontext_start(_ndr_info, &_subndr_info, 0, r->in.offered));\
+                       NDR_CHECK(ndr_push___##fn(_subndr_info, flags, &__r)); \
+                       NDR_CHECK(ndr_push_subcontext_end(_ndr_info, _subndr_info, 0, r->in.offered));\
                }\
                if (r->in.offered > _ndr_info->offset) {\
                        uint32_t _padding_len = r->in.offered - _ndr_info->offset;\