From 15ef8f1a2f13cda195ed3c05ca7c9d815a040bb3 Mon Sep 17 00:00:00 2001 From: Pavel Březina Date: Fri, 6 Sep 2013 13:44:46 +0200 Subject: sysdb: sysdb_update_members can take either name or dn We need to work with distinguish names when processing cross-domain membership, because groups and users may be stored in different sysdb tree. Resolves: https://fedorahosted.org/sssd/ticket/2066 --- src/db/sysdb.h | 13 +++++++++++-- 1 file changed, 11 insertions(+), 2 deletions(-) (limited to 'src/db/sysdb.h') diff --git a/src/db/sysdb.h b/src/db/sysdb.h index f92321762..c2a42d5ce 100644 --- a/src/db/sysdb.h +++ b/src/db/sysdb.h @@ -690,13 +690,15 @@ int sysdb_add_group_member(struct sysdb_ctx *sysdb, struct sss_domain_info *domain, const char *group, const char *member, - enum sysdb_member_type type); + enum sysdb_member_type type, + bool is_dn); int sysdb_remove_group_member(struct sysdb_ctx *sysdb, struct sss_domain_info *domain, const char *group, const char *member, - enum sysdb_member_type type); + enum sysdb_member_type type, + bool is_dn); errno_t sysdb_update_members(struct sysdb_ctx *sysdb, struct sss_domain_info *domain, @@ -705,6 +707,13 @@ errno_t sysdb_update_members(struct sysdb_ctx *sysdb, const char *const *add_groups, const char *const *del_groups); +errno_t sysdb_update_members_dn(struct sysdb_ctx *sysdb, + struct sss_domain_info *member_domain, + const char *member, + enum sysdb_member_type type, + const char *const *add_groups, + const char *const *del_groups); + /* Password caching function. * If you are in a transaction ignore sysdb and pass in the handle. * If you are not in a transaction pass NULL in handle and provide sysdb, -- cgit