git.openpandora.org
/
pandora-kernel.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
MIPS: TXX9: use IS_ENABLED() macro
[pandora-kernel.git]
/
kernel
/
groups.c
diff --git
a/kernel/groups.c
b/kernel/groups.c
index
1cc476d
..
b65d45c
100644
(file)
--- a/
kernel/groups.c
+++ b/
kernel/groups.c
@@
-2,7
+2,7
@@
* Supplementary group IDs
*/
#include <linux/cred.h>
* Supplementary group IDs
*/
#include <linux/cred.h>
-#include <linux/
module
.h>
+#include <linux/
export
.h>
#include <linux/slab.h>
#include <linux/security.h>
#include <linux/syscalls.h>
#include <linux/slab.h>
#include <linux/security.h>
#include <linux/syscalls.h>
@@
-103,7
+103,7
@@
static int groups_from_user(struct group_info *group_info,
}
/* a simple Shell sort */
}
/* a simple Shell sort */
-
static
void groups_sort(struct group_info *group_info)
+void groups_sort(struct group_info *group_info)
{
int base, max, stride;
int gidsetsize = group_info->ngroups;
{
int base, max, stride;
int gidsetsize = group_info->ngroups;
@@
-130,6
+130,7
@@
static void groups_sort(struct group_info *group_info)
stride /= 3;
}
}
stride /= 3;
}
}
+EXPORT_SYMBOL(groups_sort);
/* a simple bsearch */
int groups_search(const struct group_info *group_info, gid_t grp)
/* a simple bsearch */
int groups_search(const struct group_info *group_info, gid_t grp)
@@
-164,7
+165,6
@@
int groups_search(const struct group_info *group_info, gid_t grp)
int set_groups(struct cred *new, struct group_info *group_info)
{
put_group_info(new->group_info);
int 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;
get_group_info(group_info);
new->group_info = group_info;
return 0;
@@
-247,6
+247,7
@@
SYSCALL_DEFINE2(setgroups, int, gidsetsize, gid_t __user *, grouplist)
return retval;
}
return retval;
}
+ groups_sort(group_info);
retval = set_current_groups(group_info);
put_group_info(group_info);
retval = set_current_groups(group_info);
put_group_info(group_info);