summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-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 124c5f0d6e1..41e214da2a4 100644
--- a/librpc/ndr/libndr.h
+++ b/librpc/ndr/libndr.h
@@ -86,6 +86,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 0ff43c3eb45..e78b7ee94a3 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;