summaryrefslogtreecommitdiffstats
path: root/src/db/sysdb.h
diff options
context:
space:
mode:
authorStephen Gallagher <sgallagh@redhat.com>2010-07-28 12:24:39 -0400
committerStephen Gallagher <sgallagh@redhat.com>2010-07-30 15:57:58 -0400
commit41edee286a924ec00ed9b9fc8a9cb37539fc6237 (patch)
tree2f21c6ca6d7461d372ddb637e0531c226264f3c4 /src/db/sysdb.h
parentd412e76b28894271a29ce53eac47de562fc86a59 (diff)
downloadsssd-41edee286a924ec00ed9b9fc8a9cb37539fc6237.tar.gz
sssd-41edee286a924ec00ed9b9fc8a9cb37539fc6237.tar.xz
sssd-41edee286a924ec00ed9b9fc8a9cb37539fc6237.zip
Add sysdb_update_members function
This function will take a user, a list of groups that this user should be added to and a list of groups the user should be removed from and will recursively call sysdb_[add|remove]_group_member Includes a unit test
Diffstat (limited to 'src/db/sysdb.h')
-rw-r--r--src/db/sysdb.h10
1 files changed, 10 insertions, 0 deletions
diff --git a/src/db/sysdb.h b/src/db/sysdb.h
index 2de2a6485..04ce49e66 100644
--- a/src/db/sysdb.h
+++ b/src/db/sysdb.h
@@ -537,6 +537,16 @@ struct tevent_req *sysdb_remove_group_member_send(TALLOC_CTX *mem_ctx,
const char *member);
int sysdb_remove_group_member_recv(struct tevent_req *req);
+
+struct tevent_req * sysdb_update_members_send(TALLOC_CTX *mem_ctx,
+ struct tevent_context *ev,
+ struct sysdb_handle *handle,
+ struct sss_domain_info *domain,
+ char *user,
+ char **add_groups,
+ char **del_groups);
+errno_t sysdb_update_members_recv(struct tevent_req *req);
+
/* 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,