From cc94bcb952b1bf16e1d3f335e5288f793ee4ca96 Mon Sep 17 00:00:00 2001 From: Günther Deschner Date: Tue, 22 Mar 2011 17:43:39 +0100 Subject: s3-winbindd: copy acct_info to wb_acct_info so we dont need passdb for it. Guenther --- source3/winbindd/winbindd.h | 10 ++++++++-- source3/winbindd/winbindd_ads.c | 6 +++--- source3/winbindd/winbindd_cache.c | 8 ++++---- source3/winbindd/winbindd_dual_srv.c | 2 +- source3/winbindd/winbindd_msrpc.c | 8 ++++---- source3/winbindd/winbindd_reconnect.c | 4 ++-- source3/winbindd/winbindd_rpc.c | 12 ++++++------ source3/winbindd/winbindd_rpc.h | 4 ++-- source3/winbindd/winbindd_samr.c | 10 +++++----- 9 files changed, 35 insertions(+), 29 deletions(-) (limited to 'source3/winbindd') diff --git a/source3/winbindd/winbindd.h b/source3/winbindd/winbindd.h index 3bb60a9f42..4f0f624d5b 100644 --- a/source3/winbindd/winbindd.h +++ b/source3/winbindd/winbindd.h @@ -219,6 +219,12 @@ struct winbindd_domain { struct winbindd_domain *prev, *next; }; +struct wb_acct_info { + fstring acct_name; /* account name */ + fstring acct_desc; /* account name */ + uint32_t rid; /* domain-relative RID */ +}; + /* per-domain methods. This is how LDAP vs RPC is selected */ struct winbindd_methods { @@ -236,13 +242,13 @@ struct winbindd_methods { NTSTATUS (*enum_dom_groups)(struct winbindd_domain *domain, TALLOC_CTX *mem_ctx, uint32 *num_entries, - struct acct_info **info); + struct wb_acct_info **info); /* get a list of domain local groups */ NTSTATUS (*enum_local_groups)(struct winbindd_domain *domain, TALLOC_CTX *mem_ctx, uint32 *num_entries, - struct acct_info **info); + struct wb_acct_info **info); /* convert one user or group name to a sid */ NTSTATUS (*name_to_sid)(struct winbindd_domain *domain, diff --git a/source3/winbindd/winbindd_ads.c b/source3/winbindd/winbindd_ads.c index 116f87315f..1fa4b81543 100644 --- a/source3/winbindd/winbindd_ads.c +++ b/source3/winbindd/winbindd_ads.c @@ -275,7 +275,7 @@ done: static NTSTATUS enum_dom_groups(struct winbindd_domain *domain, TALLOC_CTX *mem_ctx, uint32 *num_entries, - struct acct_info **info) + struct wb_acct_info **info) { ADS_STRUCT *ads = NULL; const char *attrs[] = {"userPrincipalName", "sAMAccountName", @@ -349,7 +349,7 @@ static NTSTATUS enum_dom_groups(struct winbindd_domain *domain, goto done; } - (*info) = TALLOC_ZERO_ARRAY(mem_ctx, struct acct_info, count); + (*info) = TALLOC_ZERO_ARRAY(mem_ctx, struct wb_acct_info, count); if (!*info) { status = NT_STATUS_NO_MEMORY; goto done; @@ -397,7 +397,7 @@ done: static NTSTATUS enum_local_groups(struct winbindd_domain *domain, TALLOC_CTX *mem_ctx, uint32 *num_entries, - struct acct_info **info) + struct wb_acct_info **info) { /* * This is a stub function only as we returned the domain diff --git a/source3/winbindd/winbindd_cache.c b/source3/winbindd/winbindd_cache.c index 5b1757b1dd..108e0b39b6 100644 --- a/source3/winbindd/winbindd_cache.c +++ b/source3/winbindd/winbindd_cache.c @@ -1560,7 +1560,7 @@ skip_save: static NTSTATUS enum_dom_groups(struct winbindd_domain *domain, TALLOC_CTX *mem_ctx, uint32 *num_entries, - struct acct_info **info) + struct wb_acct_info **info) { struct winbind_cache *cache = get_cache(domain); struct cache_entry *centry = NULL; @@ -1582,7 +1582,7 @@ do_fetch_cache: if (*num_entries == 0) goto do_cached; - (*info) = TALLOC_ARRAY(mem_ctx, struct acct_info, *num_entries); + (*info) = TALLOC_ARRAY(mem_ctx, struct wb_acct_info, *num_entries); if (! (*info)) { smb_panic_fn("enum_dom_groups out of memory"); } @@ -1655,7 +1655,7 @@ skip_save: static NTSTATUS enum_local_groups(struct winbindd_domain *domain, TALLOC_CTX *mem_ctx, uint32 *num_entries, - struct acct_info **info) + struct wb_acct_info **info) { struct winbind_cache *cache = get_cache(domain); struct cache_entry *centry = NULL; @@ -1677,7 +1677,7 @@ do_fetch_cache: if (*num_entries == 0) goto do_cached; - (*info) = TALLOC_ARRAY(mem_ctx, struct acct_info, *num_entries); + (*info) = TALLOC_ARRAY(mem_ctx, struct wb_acct_info, *num_entries); if (! (*info)) { smb_panic_fn("enum_dom_groups out of memory"); } diff --git a/source3/winbindd/winbindd_dual_srv.c b/source3/winbindd/winbindd_dual_srv.c index 850367274c..0d3736b2b5 100644 --- a/source3/winbindd/winbindd_dual_srv.c +++ b/source3/winbindd/winbindd_dual_srv.c @@ -246,7 +246,7 @@ NTSTATUS _wbint_QueryGroupList(struct pipes_struct *p, { struct winbindd_domain *domain = wb_child_domain(); uint32_t i, num_groups; - struct acct_info *groups; + struct wb_acct_info *groups; struct wbint_Principal *result; NTSTATUS status; diff --git a/source3/winbindd/winbindd_msrpc.c b/source3/winbindd/winbindd_msrpc.c index 1aa2349bc0..7bbcf77e8f 100644 --- a/source3/winbindd/winbindd_msrpc.c +++ b/source3/winbindd/winbindd_msrpc.c @@ -101,11 +101,11 @@ done: static NTSTATUS msrpc_enum_dom_groups(struct winbindd_domain *domain, TALLOC_CTX *mem_ctx, uint32_t *pnum_info, - struct acct_info **pinfo) + struct wb_acct_info **pinfo) { struct rpc_pipe_client *samr_pipe; struct policy_handle dom_pol; - struct acct_info *info = NULL; + struct wb_acct_info *info = NULL; uint32_t num_info = 0; TALLOC_CTX *tmp_ctx; NTSTATUS status; @@ -160,11 +160,11 @@ done: static NTSTATUS msrpc_enum_local_groups(struct winbindd_domain *domain, TALLOC_CTX *mem_ctx, uint32_t *pnum_info, - struct acct_info **pinfo) + struct wb_acct_info **pinfo) { struct rpc_pipe_client *samr_pipe; struct policy_handle dom_pol; - struct acct_info *info = NULL; + struct wb_acct_info *info = NULL; uint32_t num_info = 0; TALLOC_CTX *tmp_ctx; NTSTATUS status; diff --git a/source3/winbindd/winbindd_reconnect.c b/source3/winbindd/winbindd_reconnect.c index d04c1bf61f..62bf57ea4a 100644 --- a/source3/winbindd/winbindd_reconnect.c +++ b/source3/winbindd/winbindd_reconnect.c @@ -93,7 +93,7 @@ static NTSTATUS query_user_list(struct winbindd_domain *domain, static NTSTATUS enum_dom_groups(struct winbindd_domain *domain, TALLOC_CTX *mem_ctx, uint32 *num_entries, - struct acct_info **info) + struct wb_acct_info **info) { NTSTATUS result; @@ -111,7 +111,7 @@ static NTSTATUS enum_dom_groups(struct winbindd_domain *domain, static NTSTATUS enum_local_groups(struct winbindd_domain *domain, TALLOC_CTX *mem_ctx, uint32 *num_entries, - struct acct_info **info) + struct wb_acct_info **info) { NTSTATUS result; diff --git a/source3/winbindd/winbindd_rpc.c b/source3/winbindd/winbindd_rpc.c index 5efd57e219..ac17bc90c2 100644 --- a/source3/winbindd/winbindd_rpc.c +++ b/source3/winbindd/winbindd_rpc.c @@ -148,9 +148,9 @@ NTSTATUS rpc_enum_dom_groups(TALLOC_CTX *mem_ctx, struct rpc_pipe_client *samr_pipe, struct policy_handle *samr_policy, uint32_t *pnum_info, - struct acct_info **pinfo) + struct wb_acct_info **pinfo) { - struct acct_info *info = NULL; + struct wb_acct_info *info = NULL; uint32_t start = 0; uint32_t num_info = 0; NTSTATUS status, result; @@ -185,7 +185,7 @@ NTSTATUS rpc_enum_dom_groups(TALLOC_CTX *mem_ctx, info = TALLOC_REALLOC_ARRAY(mem_ctx, info, - struct acct_info, + struct wb_acct_info, num_info + count); if (info == NULL) { return NT_STATUS_NO_MEMORY; @@ -211,9 +211,9 @@ NTSTATUS rpc_enum_local_groups(TALLOC_CTX *mem_ctx, struct rpc_pipe_client *samr_pipe, struct policy_handle *samr_policy, uint32_t *pnum_info, - struct acct_info **pinfo) + struct wb_acct_info **pinfo) { - struct acct_info *info = NULL; + struct wb_acct_info *info = NULL; uint32_t num_info = 0; NTSTATUS status, result; struct dcerpc_binding_handle *b = samr_pipe->binding_handle; @@ -245,7 +245,7 @@ NTSTATUS rpc_enum_local_groups(TALLOC_CTX *mem_ctx, info = TALLOC_REALLOC_ARRAY(mem_ctx, info, - struct acct_info, + struct wb_acct_info, num_info + count); if (info == NULL) { return NT_STATUS_NO_MEMORY; diff --git a/source3/winbindd/winbindd_rpc.h b/source3/winbindd/winbindd_rpc.h index 42405df6e0..5513788ec8 100644 --- a/source3/winbindd/winbindd_rpc.h +++ b/source3/winbindd/winbindd_rpc.h @@ -38,14 +38,14 @@ NTSTATUS rpc_enum_dom_groups(TALLOC_CTX *mem_ctx, struct rpc_pipe_client *samr_pipe, struct policy_handle *sam_policy, uint32_t *pnum_info, - struct acct_info **pinfo); + struct wb_acct_info **pinfo); /* List all domain groups */ NTSTATUS rpc_enum_local_groups(TALLOC_CTX *mem_ctx, struct rpc_pipe_client *samr_pipe, struct policy_handle *samr_policy, uint32_t *pnum_info, - struct acct_info **pinfo); + struct wb_acct_info **pinfo); /* Convert a single name to a sid in a domain */ NTSTATUS rpc_name_to_sid(TALLOC_CTX *mem_ctx, diff --git a/source3/winbindd/winbindd_samr.c b/source3/winbindd/winbindd_samr.c index 40f0100bc3..fd49914328 100644 --- a/source3/winbindd/winbindd_samr.c +++ b/source3/winbindd/winbindd_samr.c @@ -180,11 +180,11 @@ static NTSTATUS open_internal_lsa_conn(TALLOC_CTX *mem_ctx, static NTSTATUS sam_enum_dom_groups(struct winbindd_domain *domain, TALLOC_CTX *mem_ctx, uint32_t *pnum_info, - struct acct_info **pinfo) + struct wb_acct_info **pinfo) { struct rpc_pipe_client *samr_pipe; struct policy_handle dom_pol; - struct acct_info *info = NULL; + struct wb_acct_info *info = NULL; uint32_t num_info = 0; TALLOC_CTX *tmp_ctx; NTSTATUS status, result; @@ -500,7 +500,7 @@ done: static NTSTATUS builtin_enum_dom_groups(struct winbindd_domain *domain, TALLOC_CTX *mem_ctx, uint32 *num_entries, - struct acct_info **info) + struct wb_acct_info **info) { /* BUILTIN doesn't have domain groups */ *num_entries = 0; @@ -546,11 +546,11 @@ static NTSTATUS builtin_trusted_domains(struct winbindd_domain *domain, static NTSTATUS sam_enum_local_groups(struct winbindd_domain *domain, TALLOC_CTX *mem_ctx, uint32_t *pnum_info, - struct acct_info **pinfo) + struct wb_acct_info **pinfo) { struct rpc_pipe_client *samr_pipe; struct policy_handle dom_pol; - struct acct_info *info = NULL; + struct wb_acct_info *info = NULL; uint32_t num_info = 0; TALLOC_CTX *tmp_ctx; NTSTATUS status, result; -- cgit