mirror of
https://github.com/samba-team/samba.git
synced 2025-02-09 09:57:48 +03:00
Part of fix for #5551. Split out the group enumeration functions to a BUILTIN and a Domain
specific version. Stops the domain groups appearing twice. Jeremy. (This used to be commit 77b99530e0ce0ab0f335d8b22774548d30690550)
This commit is contained in:
parent
7687a22510
commit
ae16606a90
@ -72,19 +72,6 @@ static NTSTATUS enum_groups_internal(struct winbindd_domain *domain,
|
||||
return result;
|
||||
}
|
||||
|
||||
/* list all domain groups */
|
||||
static NTSTATUS enum_dom_groups(struct winbindd_domain *domain,
|
||||
TALLOC_CTX *mem_ctx,
|
||||
uint32 *num_entries,
|
||||
struct acct_info **info)
|
||||
{
|
||||
return enum_groups_internal(domain,
|
||||
mem_ctx,
|
||||
num_entries,
|
||||
info,
|
||||
SID_NAME_DOM_GRP);
|
||||
}
|
||||
|
||||
/* List all local groups (aliases) */
|
||||
static NTSTATUS enum_local_groups(struct winbindd_domain *domain,
|
||||
TALLOC_CTX *mem_ctx,
|
||||
@ -371,6 +358,18 @@ static NTSTATUS password_policy(struct winbindd_domain *domain,
|
||||
BUILTIN specific functions.
|
||||
*********************************************************************/
|
||||
|
||||
/* list all domain groups */
|
||||
static NTSTATUS builtin_enum_dom_groups(struct winbindd_domain *domain,
|
||||
TALLOC_CTX *mem_ctx,
|
||||
uint32 *num_entries,
|
||||
struct acct_info **info)
|
||||
{
|
||||
/* BUILTIN doesn't have domain groups */
|
||||
*num_entries = 0;
|
||||
*info = NULL;
|
||||
return NT_STATUS_OK;
|
||||
}
|
||||
|
||||
/* Query display info for a domain. This returns enough information plus a
|
||||
bit extra to give an overview of domain users for the User Manager
|
||||
application. */
|
||||
@ -426,6 +425,19 @@ static NTSTATUS builtin_trusted_domains(struct winbindd_domain *domain,
|
||||
SAM specific functions.
|
||||
*********************************************************************/
|
||||
|
||||
/* list all domain groups */
|
||||
static NTSTATUS sam_enum_dom_groups(struct winbindd_domain *domain,
|
||||
TALLOC_CTX *mem_ctx,
|
||||
uint32 *num_entries,
|
||||
struct acct_info **info)
|
||||
{
|
||||
return enum_groups_internal(domain,
|
||||
mem_ctx,
|
||||
num_entries,
|
||||
info,
|
||||
SID_NAME_DOM_GRP);
|
||||
}
|
||||
|
||||
static NTSTATUS sam_query_user_list(struct winbindd_domain *domain,
|
||||
TALLOC_CTX *mem_ctx,
|
||||
uint32 *num_entries,
|
||||
@ -688,7 +700,7 @@ static NTSTATUS sam_trusted_domains(struct winbindd_domain *domain,
|
||||
struct winbindd_methods builtin_passdb_methods = {
|
||||
false,
|
||||
builtin_query_user_list,
|
||||
enum_dom_groups,
|
||||
builtin_enum_dom_groups,
|
||||
enum_local_groups,
|
||||
name_to_sid,
|
||||
sid_to_name,
|
||||
@ -707,7 +719,7 @@ struct winbindd_methods builtin_passdb_methods = {
|
||||
struct winbindd_methods sam_passdb_methods = {
|
||||
false,
|
||||
sam_query_user_list,
|
||||
enum_dom_groups,
|
||||
sam_enum_dom_groups,
|
||||
enum_local_groups,
|
||||
name_to_sid,
|
||||
sid_to_name,
|
||||
|
Loading…
x
Reference in New Issue
Block a user