summaryrefslogtreecommitdiff
path: root/librpc/ndr/ndr.c
diff options
context:
space:
mode:
authorAndrew Tridgell <tridge@samba.org>2009-09-17 15:14:31 -0700
committerAndrew Tridgell <tridge@samba.org>2009-09-17 15:19:30 -0700
commit1a1cb92583267dea07fa8b4580bf79c8907a7f88 (patch)
tree3e94b3ccb50e5ad6350f73752cd9c7b6cfcd836d /librpc/ndr/ndr.c
parent85e06ff41d0ed58582fc540886f3e9e52ac85ca4 (diff)
downloadsamba-1a1cb92583267dea07fa8b4580bf79c8907a7f88.tar.gz
samba-1a1cb92583267dea07fa8b4580bf79c8907a7f88.tar.bz2
samba-1a1cb92583267dea07fa8b4580bf79c8907a7f88.zip
ndr: split out ndr enum functions
This allows for easier implementation of the NDR32/NDR64 split
Diffstat (limited to 'librpc/ndr/ndr.c')
-rw-r--r--librpc/ndr/ndr.c8
1 files changed, 4 insertions, 4 deletions
diff --git a/librpc/ndr/ndr.c b/librpc/ndr/ndr.c
index d629d852e8..cb47ca1d60 100644
--- a/librpc/ndr/ndr.c
+++ b/librpc/ndr/ndr.c
@@ -459,7 +459,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_subcontext_start(struct ndr_pull *ndr,
case 4: {
uint32_t content_size;
- NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &content_size));
+ NDR_CHECK(ndr_pull_uint3264(ndr, NDR_SCALARS, &content_size));
if (size_is >= 0 && size_is != content_size) {
return ndr_pull_error(ndr, NDR_ERR_SUBCONTEXT, "Bad subcontext (PULL) size_is(%d) mismatch content_size %d",
(int)size_is, (int)content_size);
@@ -544,7 +544,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_subcontext_start(struct ndr_pull *ndr,
subndr = talloc_zero(ndr, struct ndr_pull);
NDR_ERR_HAVE_NO_MEMORY(subndr);
- subndr->flags = ndr->flags;
+ subndr->flags = ndr->flags & ~LIBNDR_FLAG_NDR64;
subndr->current_mem_ctx = ndr->current_mem_ctx;
subndr->data = ndr->data + ndr->offset;
@@ -588,7 +588,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_subcontext_start(struct ndr_push *ndr,
subndr = ndr_push_init_ctx(ndr, ndr->iconv_convenience);
NDR_ERR_HAVE_NO_MEMORY(subndr);
- subndr->flags = ndr->flags;
+ subndr->flags = ndr->flags & ~LIBNDR_FLAG_NDR64;
*_subndr = subndr;
return NDR_ERR_SUCCESS;
@@ -623,7 +623,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_subcontext_end(struct ndr_push *ndr,
break;
case 4:
- NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, subndr->offset));
+ NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, subndr->offset));
break;
case 0xFFFFFC01: