diff options
Diffstat (limited to 'source4/librpc/rpc/rpc_lsa.c')
-rw-r--r-- | source4/librpc/rpc/rpc_lsa.c | 11 |
1 files changed, 6 insertions, 5 deletions
diff --git a/source4/librpc/rpc/rpc_lsa.c b/source4/librpc/rpc/rpc_lsa.c index 8a627aa562..f11519a3c3 100644 --- a/source4/librpc/rpc/rpc_lsa.c +++ b/source4/librpc/rpc/rpc_lsa.c @@ -51,6 +51,7 @@ NTSTATUS dcerpc_lsa_OpenPolicy(struct dcerpc_pipe *p, r.in.system_name = &s; r.in.attr = attr; r.in.desired_access = access_mask; + r.out.handle = handle; /* make the call */ status = dcerpc_ndr_request(p, LSA_OPENPOLICY, mem_ctx, @@ -62,7 +63,6 @@ NTSTATUS dcerpc_lsa_OpenPolicy(struct dcerpc_pipe *p, } /* and extract the .out parameters */ - *handle = *r.out.handle; status = r.out.result; done: @@ -93,6 +93,7 @@ NTSTATUS dcerpc_lsa_OpenPolicy2(struct dcerpc_pipe *p, r.in.system_name = server; r.in.attr = attr; r.in.desired_access = access_mask; + r.out.handle = handle; /* make the call */ status = dcerpc_ndr_request(p, LSA_OPENPOLICY2, mem_ctx, @@ -104,7 +105,6 @@ NTSTATUS dcerpc_lsa_OpenPolicy2(struct dcerpc_pipe *p, } /* and extract the .out parameters */ - *handle = *r.out.handle; status = r.out.result; done: @@ -127,9 +127,12 @@ NTSTATUS dcerpc_lsa_EnumSids(struct dcerpc_pipe *p, /* fill the .in side of the call */ r.in.handle = handle; - r.in.resume_handle = *resume_handle; + r.in.resume_handle = resume_handle; r.in.num_entries = num_entries; + r.out.resume_handle = resume_handle; + r.out.sids = sids; + /* make the call */ status = dcerpc_ndr_request(p, LSA_ENUM_ACCOUNTS, mem_ctx, (ndr_push_fn_t) ndr_push_lsa_EnumSids, @@ -140,8 +143,6 @@ NTSTATUS dcerpc_lsa_EnumSids(struct dcerpc_pipe *p, } /* and extract the .out parameters */ - *resume_handle = r.out.resume_handle; - *sids = *r.out.sids; status = r.out.result; done: |