summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorJakub Hrozek <jhrozek@redhat.com>2014-08-26 11:11:15 +0200
committerJakub Hrozek <jhrozek@redhat.com>2014-08-26 16:06:49 +0200
commitbb755dcacd126adad8c60e8cbea11566de67affe (patch)
tree63d73bda562427beb8a4553f0284bba6e6b26f1b /src
parent06ba69972e6728f97f5adbcc3cc4df811a831f53 (diff)
downloadsssd-bb755dcacd126adad8c60e8cbea11566de67affe.tar.gz
sssd-bb755dcacd126adad8c60e8cbea11566de67affe.tar.xz
sssd-bb755dcacd126adad8c60e8cbea11566de67affe.zip
LDAP: Split out linking primary group members into a separate function
The function sdap_fill_memberships did several tasks. It's more readable to split linking the primary members into a separate function. Reviewed-by: Pavel Reichl <preichl@redhat.com>
Diffstat (limited to 'src')
-rw-r--r--src/providers/ldap/sdap_async_groups.c23
1 files changed, 16 insertions, 7 deletions
diff --git a/src/providers/ldap/sdap_async_groups.c b/src/providers/ldap/sdap_async_groups.c
index a21b0332e..c8e893259 100644
--- a/src/providers/ldap/sdap_async_groups.c
+++ b/src/providers/ldap/sdap_async_groups.c
@@ -191,6 +191,21 @@ sdap_dn_by_primary_gid(TALLOC_CTX *mem_ctx, struct sysdb_attrs *ldap_attrs,
return EOK;
}
+static void link_pgroup_members(struct sysdb_attrs *group_attrs,
+ struct ldb_message_element *member_el,
+ char **userdns,
+ size_t nuserdns)
+{
+ int i;
+
+ for (i=0; i < nuserdns; i++) {
+ member_el->values[member_el->num_values + i].data = (uint8_t *) \
+ talloc_steal(group_attrs, userdns[i]);
+ member_el->values[member_el->num_values + i].length = strlen(userdns[i]);
+ }
+ member_el->num_values += nuserdns;
+}
+
static int sdap_fill_memberships(struct sdap_options *opts,
struct sysdb_attrs *group_attrs,
struct sysdb_ctx *ctx,
@@ -285,13 +300,7 @@ static int sdap_fill_memberships(struct sdap_options *opts,
}
el->num_values = j;
- for (i=0; i < nuserdns; i++) {
- el->values[el->num_values + i].data = (uint8_t *) \
- talloc_steal(group_attrs, userdns[i]);
- el->values[el->num_values + i].length = strlen(userdns[i]);
- }
- el->num_values += nuserdns;
-
+ link_pgroup_members(group_attrs, el, userdns, nuserdns);
ret = EOK;
done: