diff options
author | Jakub Hrozek <jhrozek@redhat.com> | 2014-08-26 11:11:15 +0200 |
---|---|---|
committer | Jakub Hrozek <jhrozek@redhat.com> | 2014-08-26 16:06:49 +0200 |
commit | bb755dcacd126adad8c60e8cbea11566de67affe (patch) | |
tree | 63d73bda562427beb8a4553f0284bba6e6b26f1b /src/providers/ldap/sdap_async_groups.c | |
parent | 06ba69972e6728f97f5adbcc3cc4df811a831f53 (diff) | |
download | sssd-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/providers/ldap/sdap_async_groups.c')
-rw-r--r-- | src/providers/ldap/sdap_async_groups.c | 23 |
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: |