summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--source4/libcli/rap/rap.c5
-rw-r--r--source4/libcli/rap/rap.h2
2 files changed, 6 insertions, 1 deletions
diff --git a/source4/libcli/rap/rap.c b/source4/libcli/rap/rap.c
index e08a650355..1eee811f7f 100644
--- a/source4/libcli/rap/rap.c
+++ b/source4/libcli/rap/rap.c
@@ -44,6 +44,8 @@ struct rap_call *new_rap_cli_call(TALLOC_CTX *mem_ctx, uint16_t callno)
call->ndr_push_data = ndr_push_init_ctx(call);
call->ndr_push_data->flags = RAPNDR_FLAGS;
+ call->pull_mem_ctx = mem_ctx;
+
return call;
}
@@ -217,9 +219,10 @@ NTSTATUS rap_cli_do_call(struct smbcli_tree *tree,
call->ndr_pull_param = ndr_pull_init_blob(&trans.out.params, call);
call->ndr_pull_param->flags = RAPNDR_FLAGS;
-
+ call->ndr_pull_param->current_mem_ctx = call->pull_mem_ctx;
call->ndr_pull_data = ndr_pull_init_blob(&trans.out.data, call);
call->ndr_pull_data->flags = RAPNDR_FLAGS;
+ call->ndr_pull_data->current_mem_ctx = call->pull_mem_ctx;
return result;
}
diff --git a/source4/libcli/rap/rap.h b/source4/libcli/rap/rap.h
index c611f001f1..1d44682750 100644
--- a/source4/libcli/rap/rap.h
+++ b/source4/libcli/rap/rap.h
@@ -64,6 +64,8 @@ struct rap_call {
struct ndr_push *ndr_push_param;
struct ndr_push *ndr_push_data;
+
+ TALLOC_CTX *pull_mem_ctx;
struct ndr_pull *ndr_pull_param;
struct ndr_pull *ndr_pull_data;
};