From 91b73b1e93bb8fb38e2f1cea6c1cbd012c952542 Mon Sep 17 00:00:00 2001 From: Volker Lendecke Date: Tue, 3 Jan 2017 15:23:21 +0000 Subject: [PATCH] winbind: Remove rpc_lookup_usergroups Signed-off-by: Volker Lendecke Reviewed-by: Uri Simchoni Reviewed-by: Andreas Schneider --- source3/winbindd/winbindd_rpc.c | 74 --------------------------------- source3/winbindd/winbindd_rpc.h | 9 ---- 2 files changed, 83 deletions(-) diff --git a/source3/winbindd/winbindd_rpc.c b/source3/winbindd/winbindd_rpc.c index 2a096edf8fd..1e234ba4181 100644 --- a/source3/winbindd/winbindd_rpc.c +++ b/source3/winbindd/winbindd_rpc.c @@ -476,80 +476,6 @@ NTSTATUS rpc_rids_to_names(TALLOC_CTX *mem_ctx, return NT_STATUS_OK; } -/* Lookup groups a user is a member of. */ -NTSTATUS rpc_lookup_usergroups(TALLOC_CTX *mem_ctx, - struct rpc_pipe_client *samr_pipe, - struct policy_handle *samr_policy, - const struct dom_sid *domain_sid, - const struct dom_sid *user_sid, - uint32_t *pnum_groups, - struct dom_sid **puser_grpsids) -{ - struct policy_handle user_policy; - struct samr_RidWithAttributeArray *rid_array = NULL; - struct dom_sid *user_grpsids = NULL; - uint32_t num_groups = 0, i; - uint32_t user_rid; - NTSTATUS status, result; - struct dcerpc_binding_handle *b = samr_pipe->binding_handle; - - if (!sid_peek_check_rid(domain_sid, user_sid, &user_rid)) { - return NT_STATUS_UNSUCCESSFUL; - } - - /* Get user handle */ - status = dcerpc_samr_OpenUser(b, - mem_ctx, - samr_policy, - SEC_FLAG_MAXIMUM_ALLOWED, - user_rid, - &user_policy, - &result); - if (!NT_STATUS_IS_OK(status)) { - return status; - } - if (!NT_STATUS_IS_OK(result)) { - return result; - } - - /* Query user rids */ - status = dcerpc_samr_GetGroupsForUser(b, - mem_ctx, - &user_policy, - &rid_array, - &result); - { - NTSTATUS _result; - dcerpc_samr_Close(b, mem_ctx, &user_policy, &_result); - } - - if (!NT_STATUS_IS_OK(status)) { - return status; - } - if (!NT_STATUS_IS_OK(result)) { - return result; - } - - num_groups = rid_array->count; - - user_grpsids = talloc_array(mem_ctx, struct dom_sid, num_groups); - if (user_grpsids == NULL) { - status = NT_STATUS_NO_MEMORY; - return status; - } - - for (i = 0; i < num_groups; i++) { - sid_compose(&(user_grpsids[i]), domain_sid, - rid_array->rids[i].rid); - } - - *pnum_groups = num_groups; - - *puser_grpsids = user_grpsids; - - return NT_STATUS_OK; -} - NTSTATUS rpc_lookup_useraliases(TALLOC_CTX *mem_ctx, struct rpc_pipe_client *samr_pipe, struct policy_handle *samr_policy, diff --git a/source3/winbindd/winbindd_rpc.h b/source3/winbindd/winbindd_rpc.h index bdfc3ed948e..beb605a0053 100644 --- a/source3/winbindd/winbindd_rpc.h +++ b/source3/winbindd/winbindd_rpc.h @@ -79,15 +79,6 @@ NTSTATUS rpc_rids_to_names(TALLOC_CTX *mem_ctx, char ***pnames, enum lsa_SidType **ptypes); -/* Lookup groups a user is a member of. */ -NTSTATUS rpc_lookup_usergroups(TALLOC_CTX *mem_ctx, - struct rpc_pipe_client *samr_pipe, - struct policy_handle *samr_policy, - const struct dom_sid *domain_sid, - const struct dom_sid *user_sid, - uint32_t *pnum_groups, - struct dom_sid **puser_grpsids); - NTSTATUS rpc_lookup_useraliases(TALLOC_CTX *mem_ctx, struct rpc_pipe_client *samr_pipe, struct policy_handle *samr_policy, -- 2.47.2