From b18e64f1d7682a1cddf7f3b9d79c5d6fbd1f6260 Mon Sep 17 00:00:00 2001 From: Stefan Metzmacher Date: Tue, 8 Mar 2011 16:29:44 +0100 Subject: [PATCH] pidl:Samba4/NDR/Parser: set LIBNDR_FLAG_WITHIN_PIPE metze --- pidl/lib/Parse/Pidl/Samba4/NDR/Parser.pm | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/pidl/lib/Parse/Pidl/Samba4/NDR/Parser.pm b/pidl/lib/Parse/Pidl/Samba4/NDR/Parser.pm index 432e52f89c45..1788c4ea1b41 100644 --- a/pidl/lib/Parse/Pidl/Samba4/NDR/Parser.pm +++ b/pidl/lib/Parse/Pidl/Samba4/NDR/Parser.pm @@ -2279,6 +2279,8 @@ sub ParsePipePushChunk($$) $self->pidl("{"); $self->indent; + $self->pidl("uint64_t _flags_save = $ndr->flags;"); + $self->pidl("ndr_set_flags(&$ndr->flags, LIBNDR_FLAG_WITHIN_PIPE);"); $self->ParseStructPush($struct, $ndr, $varname); $self->pidl(""); @@ -2286,6 +2288,7 @@ sub ParsePipePushChunk($$) $self->pidl("NDR_CHECK(ndr_push_pipe_chunk_trailer(ndr, ndr_flags, $varname->count));"); $self->pidl(""); + $self->pidl("$ndr->flags = _flags_save;"); $self->pidl("return NDR_ERR_SUCCESS;"); $self->deindent; $self->pidl("}"); @@ -2312,6 +2315,8 @@ sub ParsePipePullChunk($$) $self->pidl("{"); $self->indent; + $self->pidl("uint64_t _flags_save = $ndr->flags;"); + $self->pidl("ndr_set_flags(&$ndr->flags, LIBNDR_FLAG_WITHIN_PIPE);"); $self->ParseStructPull($struct, $ndr, $varname); $self->pidl(""); @@ -2319,6 +2324,7 @@ sub ParsePipePullChunk($$) $self->pidl("NDR_CHECK(ndr_check_pipe_chunk_trailer($ndr, ndr_flags, $varname->count));"); $self->pidl(""); + $self->pidl("$ndr->flags = _flags_save;"); $self->pidl("return NDR_ERR_SUCCESS;"); $self->deindent; $self->pidl("}"); @@ -2346,7 +2352,10 @@ sub ParsePipePrintChunk($$) $self->pidl("_PUBLIC_ void ndr_print_$name(struct ndr_print *$ndr, const char *name, $args)"); $self->pidl("{"); $self->indent; + $self->pidl("uint64_t _flags_save = $ndr->flags;"); + $self->pidl("ndr_set_flags(&$ndr->flags, LIBNDR_FLAG_WITHIN_PIPE);"); $self->ParseTypePrint($struct, $ndr, $varname); + $self->pidl("$ndr->flags = _flags_save;"); $self->deindent; $self->pidl("}"); $self->pidl(""); -- 2.34.1