summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGünther Deschner <gd@samba.org>2009-12-14 15:33:32 +0100
committerKarolin Seeger <kseeger@samba.org>2010-02-19 14:32:31 +0100
commitdf1d697ac9070c4cb5a08452c271035dd3daa89f (patch)
treeb68554b808a521d08bef1c29fe612c4d13929eae
parent82dbb0666c0361f2350eadac09886b15c904a36c (diff)
downloadsamba-df1d697ac9070c4cb5a08452c271035dd3daa89f.tar.gz
libndr: store a subcontext buffer size in ndr_push_subcontext_start.
Guenther (cherry picked from commit 05347754ee61f06466d6d9b7f390001992f793ce) (cherry picked from commit b8f0d947baab823586cea518e091de55de7b5f56)
-rw-r--r--librpc/ndr/libndr.h1
-rw-r--r--librpc/ndr/ndr.c1
2 files changed, 2 insertions, 0 deletions
diff --git a/librpc/ndr/libndr.h b/librpc/ndr/libndr.h
index 6274b20c49d..ca920ec068b 100644
--- a/librpc/ndr/libndr.h
+++ b/librpc/ndr/libndr.h
@@ -85,6 +85,7 @@ struct ndr_push {
uint32_t offset;
uint32_t relative_base_offset;
+ uint32_t relative_end_offset;
struct ndr_token_list *relative_base_list;
struct ndr_token_list *switch_list;
diff --git a/librpc/ndr/ndr.c b/librpc/ndr/ndr.c
index 5f4ce594154..19620acc56f 100644
--- a/librpc/ndr/ndr.c
+++ b/librpc/ndr/ndr.c
@@ -596,6 +596,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_subcontext_start(struct ndr_push *ndr,
if (size_is > 0) {
NDR_CHECK(ndr_push_zero(subndr, size_is));
subndr->offset = 0;
+ subndr->relative_end_offset = size_is;
}
*_subndr = subndr;