summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorStefan Metzmacher <metze@samba.org>2010-03-08 16:27:14 +0100
committerStefan Metzmacher <metze@samba.org>2010-03-12 15:25:42 +0100
commita3ae9802d47f7a39030be089d15fc42f8e8917e6 (patch)
tree851c63c1ec8114f1130854aee2752eb28f1aef37
parent77fb700e2096a0fbd1ed9361f476898b2b7771c5 (diff)
downloadsamba-a3ae9802d47f7a39030be089d15fc42f8e8917e6.tar.gz
samba-a3ae9802d47f7a39030be089d15fc42f8e8917e6.tar.bz2
samba-a3ae9802d47f7a39030be089d15fc42f8e8917e6.zip
s4:libnet: keep a dcerpc_binding_handle for samr and lsa
metze
-rw-r--r--source4/libnet/libnet.h2
-rw-r--r--source4/libnet/libnet_rpc.c2
2 files changed, 4 insertions, 0 deletions
diff --git a/source4/libnet/libnet.h b/source4/libnet/libnet.h
index 9964a3f526..c1a2e3708b 100644
--- a/source4/libnet/libnet.h
+++ b/source4/libnet/libnet.h
@@ -30,6 +30,7 @@ struct libnet_context {
/* samr connection parameters - opened handles and related properties */
struct {
struct dcerpc_pipe *pipe;
+ struct dcerpc_binding_handle *samr_handle;
const char *name;
struct dom_sid *sid;
uint32_t access_mask;
@@ -41,6 +42,7 @@ struct libnet_context {
/* lsa connection parameters - opened handles and related properties */
struct {
struct dcerpc_pipe *pipe;
+ struct dcerpc_binding_handle *lsa_handle;
const char *name;
uint32_t access_mask;
struct policy_handle handle;
diff --git a/source4/libnet/libnet_rpc.c b/source4/libnet/libnet_rpc.c
index 1c35ef6ca1..a681c28106 100644
--- a/source4/libnet/libnet_rpc.c
+++ b/source4/libnet/libnet_rpc.c
@@ -884,9 +884,11 @@ static NTSTATUS libnet_RpcConnectDCInfo_recv(struct composite_context *c, struct
mem_ctx is freed */
if (r->in.dcerpc_iface == &ndr_table_samr) {
ctx->samr.pipe = talloc_reference(ctx, r->out.dcerpc_pipe);
+ ctx->samr.samr_handle = ctx->samr.pipe->binding_handle;
} else if (r->in.dcerpc_iface == &ndr_table_lsarpc) {
ctx->lsa.pipe = talloc_reference(ctx, r->out.dcerpc_pipe);
+ ctx->lsa.lsa_handle = ctx->lsa.pipe->binding_handle;
}
} else {