|
@@ -157,17 +157,13 @@ int groups_search(const struct group_info *group_info, kgid_t grp)
|
|
|
* set_groups - Change a group subscription in a set of credentials
|
|
|
* @new: The newly prepared set of credentials to alter
|
|
|
* @group_info: The group list to install
|
|
|
- *
|
|
|
- * Validate a group subscription and, if valid, insert it into a set
|
|
|
- * of credentials.
|
|
|
*/
|
|
|
-int set_groups(struct cred *new, struct group_info *group_info)
|
|
|
+void set_groups(struct cred *new, struct group_info *group_info)
|
|
|
{
|
|
|
put_group_info(new->group_info);
|
|
|
groups_sort(group_info);
|
|
|
get_group_info(group_info);
|
|
|
new->group_info = group_info;
|
|
|
- return 0;
|
|
|
}
|
|
|
|
|
|
EXPORT_SYMBOL(set_groups);
|
|
@@ -182,18 +178,12 @@ EXPORT_SYMBOL(set_groups);
|
|
|
int set_current_groups(struct group_info *group_info)
|
|
|
{
|
|
|
struct cred *new;
|
|
|
- int ret;
|
|
|
|
|
|
new = prepare_creds();
|
|
|
if (!new)
|
|
|
return -ENOMEM;
|
|
|
|
|
|
- ret = set_groups(new, group_info);
|
|
|
- if (ret < 0) {
|
|
|
- abort_creds(new);
|
|
|
- return ret;
|
|
|
- }
|
|
|
-
|
|
|
+ set_groups(new, group_info);
|
|
|
return commit_creds(new);
|
|
|
}
|
|
|
|