Home
last modified time | relevance | path

Searched refs:group_info (Results 1 – 24 of 24) sorted by relevance

/linux-4.1.27/kernel/
Dgroups.c12 struct group_info *groups_alloc(int gidsetsize) in groups_alloc()
14 struct group_info *group_info; in groups_alloc() local
21 group_info = kmalloc(sizeof(*group_info) + nblocks*sizeof(gid_t *), GFP_USER); in groups_alloc()
22 if (!group_info) in groups_alloc()
24 group_info->ngroups = gidsetsize; in groups_alloc()
25 group_info->nblocks = nblocks; in groups_alloc()
26 atomic_set(&group_info->usage, 1); in groups_alloc()
29 group_info->blocks[0] = group_info->small_block; in groups_alloc()
36 group_info->blocks[i] = b; in groups_alloc()
39 return group_info; in groups_alloc()
[all …]
Duid16.c112 struct group_info *group_info) in groups16_to_user() argument
119 for (i = 0; i < group_info->ngroups; i++) { in groups16_to_user()
120 kgid = GROUP_AT(group_info, i); in groups16_to_user()
129 static int groups16_from_user(struct group_info *group_info, in groups16_from_user() argument
137 for (i = 0; i < group_info->ngroups; i++) { in groups16_from_user()
145 GROUP_AT(group_info, i) = kgid; in groups16_from_user()
159 i = cred->group_info->ngroups; in SYSCALL_DEFINE2()
165 if (groups16_to_user(grouplist, cred->group_info)) { in SYSCALL_DEFINE2()
176 struct group_info *group_info; in SYSCALL_DEFINE2() local
184 group_info = groups_alloc(gidsetsize); in SYSCALL_DEFINE2()
[all …]
Dcred.c33 struct group_info init_groups = { .usage = ATOMIC_INIT(2) };
59 .group_info = &init_groups,
116 if (cred->group_info) in put_cred_rcu()
117 put_group_info(cred->group_info); in put_cred_rcu()
257 get_group_info(new->group_info); in prepare_creds()
612 get_group_info(new->group_info); in prepare_kernel_cred()
/linux-4.1.27/include/linux/
Dcred.h32 struct group_info { struct
49 static inline struct group_info *get_group_info(struct group_info *gi) in get_group_info()
59 #define put_group_info(group_info) \ argument
61 if (atomic_dec_and_test(&(group_info)->usage)) \
62 groups_free(group_info); \
65 extern struct group_info init_groups;
67 extern struct group_info *groups_alloc(int);
68 extern void groups_free(struct group_info *);
73 static inline void groups_free(struct group_info *group_info) in groups_free() argument
86 extern int set_current_groups(struct group_info *);
[all …]
Dinit_task.h71 extern struct group_info init_groups;
/linux-4.1.27/net/sunrpc/
Dauth_generic.c97 gcred->acred.group_info = acred->group_info; in generic_create_cred()
99 if (gcred->acred.group_info != NULL) in generic_create_cred()
100 get_group_info(gcred->acred.group_info); in generic_create_cred()
118 if (gcred->acred.group_info != NULL) in generic_free_cred()
119 put_group_info(gcred->acred.group_info); in generic_free_cred()
165 if (gcred->acred.group_info == acred->group_info) in generic_match()
169 if (gcred->acred.group_info->ngroups != acred->group_info->ngroups) in generic_match()
171 for (i = 0; i < gcred->acred.group_info->ngroups; i++) { in generic_match()
172 if (!gid_eq(GROUP_AT(gcred->acred.group_info, i), in generic_match()
173 GROUP_AT(acred->group_info, i))) in generic_match()
Dauth_unix.c77 if (acred->group_info != NULL) in unx_create_cred()
78 groups = acred->group_info->ngroups; in unx_create_cred()
84 cred->uc_gids[i] = GROUP_AT(acred->group_info, i); in unx_create_cred()
127 if (acred->group_info != NULL) in unx_match()
128 groups = acred->group_info->ngroups; in unx_match()
132 if (!gid_eq(cred->uc_gids[i], GROUP_AT(acred->group_info, i))) in unx_match()
Dsvcauth_unix.c414 struct group_info *gi;
628 static struct group_info *unix_gid_find(kuid_t uid, struct svc_rqst *rqstp) in unix_gid_find()
631 struct group_info *gi; in unix_gid_find()
660 struct group_info *gi; in svcauth_unix_set_client()
Dauth.c633 acred.group_info = cred->group_info; in rpcauth_lookupcred()
/linux-4.1.27/arch/s390/kernel/
Dcompat_linux.c184 static int groups16_to_user(u16 __user *grouplist, struct group_info *group_info) in groups16_to_user() argument
191 for (i = 0; i < group_info->ngroups; i++) { in groups16_to_user()
192 kgid = GROUP_AT(group_info, i); in groups16_to_user()
201 static int groups16_from_user(struct group_info *group_info, u16 __user *grouplist) in groups16_from_user() argument
208 for (i = 0; i < group_info->ngroups; i++) { in groups16_from_user()
216 GROUP_AT(group_info, i) = kgid; in groups16_from_user()
230 get_group_info(cred->group_info); in COMPAT_SYSCALL_DEFINE2()
231 i = cred->group_info->ngroups; in COMPAT_SYSCALL_DEFINE2()
237 if (groups16_to_user(grouplist, cred->group_info)) { in COMPAT_SYSCALL_DEFINE2()
243 put_group_info(cred->group_info); in COMPAT_SYSCALL_DEFINE2()
[all …]
/linux-4.1.27/fs/nfsd/
Dauth.c22 struct group_info *rqgi; in nfsd_setuser()
23 struct group_info *gi; in nfsd_setuser()
Dnfs4state.c1889 static bool groups_equal(struct group_info *g1, struct group_info *g2) in groups_equal()
/linux-4.1.27/include/linux/sunrpc/
Dauth.h39 struct group_info *group_info; member
Dsvcauth.h24 struct group_info *cr_group_info;
/linux-4.1.27/fs/proc/
Darray.c138 struct group_info *group_info; in task_state() local
185 group_info = cred->group_info; in task_state()
186 for (g = 0; g < group_info->ngroups; g++) in task_state()
188 from_kgid_munged(user_ns, GROUP_AT(group_info, g))); in task_state()
/linux-4.1.27/drivers/staging/lustre/lustre/include/linux/
Dlustre_compat25.h51 #define current_ngroups current_cred()->group_info->ngroups
52 #define current_groups current_cred()->group_info->small_block
/linux-4.1.27/security/keys/
Dpermission.c53 ret = groups_search(cred->group_info, key->gid); in key_task_permission()
Dprocess_keys.c846 new->group_info = get_group_info(old->group_info); in key_change_session_keyring()
/linux-4.1.27/net/ipv4/
Dping.c258 struct group_info *group_info; in ping_init_sock() local
270 group_info = get_current_groups(); in ping_init_sock()
271 count = group_info->ngroups; in ping_init_sock()
272 for (i = 0; i < group_info->nblocks; i++) { in ping_init_sock()
275 kgid_t gid = group_info->blocks[i][j]; in ping_init_sock()
286 put_group_info(group_info); in ping_init_sock()
/linux-4.1.27/sound/pci/asihpi/
Dhpifunc.c822 *poutstream_map = hr.u.d.u.group_info.outstream_group_map; in hpi_outstream_group_get_map()
824 *pinstream_map = hr.u.d.u.group_info.instream_group_map; in hpi_outstream_group_get_map()
1180 *poutstream_map = hr.u.d.u.group_info.outstream_group_map; in hpi_instream_group_get_map()
1182 *pinstream_map = hr.u.d.u.group_info.instream_group_map; in hpi_instream_group_get_map()
Dhpi_internal.h772 } group_info; member
/linux-4.1.27/Documentation/security/
Dcredentials.txt287 (2) the reference count on the group_info struct it points to may be changed;
376 struct group_info *get_current_groups(void);
/linux-4.1.27/drivers/staging/lustre/lustre/ptlrpc/
Dsec.c2321 memcpy(pud->pud_groups, current_cred()->group_info->blocks[0], in sptlrpc_pack_user_desc()
Dservice.c2263 struct group_info *ginfo = NULL; in ptlrpc_main()