diff options
-rw-r--r-- | librpc/ndr/libndr.h | 1 | ||||
-rw-r--r-- | librpc/ndr/ndr_basic.c | 1 |
2 files changed, 2 insertions, 0 deletions
diff --git a/librpc/ndr/libndr.h b/librpc/ndr/libndr.h index 133a119069..d5091a6619 100644 --- a/librpc/ndr/libndr.h +++ b/librpc/ndr/libndr.h @@ -62,6 +62,7 @@ struct ndr_pull { uint32_t relative_highest_offset; uint32_t relative_base_offset; + uint32_t relative_rap_convert; struct ndr_token_list *relative_base_list; struct ndr_token_list *relative_list; diff --git a/librpc/ndr/ndr_basic.c b/librpc/ndr/ndr_basic.c index f7d6ee0449..d0d58b0884 100644 --- a/librpc/ndr/ndr_basic.c +++ b/librpc/ndr/ndr_basic.c @@ -185,6 +185,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_relative_ptr_short(struct ndr_pull *ndr, uin if (*v != 0) { ndr->ptr_count++; } + *(v) -= ndr->relative_rap_convert; return NDR_ERR_SUCCESS; } |