#include "afs/nfsclient.h"
#include "osi_compat.h"
-#ifdef AFS_LINUX26_ONEGROUP_ENV
-# define NUMPAGGROUPS 1
+#ifdef AFS_PAG_ONEGROUP_ENV
static afs_uint32
afs_linux_pag_from_groups(struct group_info *group_info) {
afs_uint32 g0 = 0;
afs_uint32 i;
- if (group_info->ngroups < NUMPAGGROUPS)
+ if (group_info->ngroups < AFS_NUMPAGGROUPS)
return NOPAG;
for (i = 0; i < group_info->ngroups; i++) {
afs_kgid_t newkgid = afs_make_kgid(newpag);
if (afs_linux_pag_from_groups(old) == NOPAG)
- need_space = NUMPAGGROUPS;
+ need_space = AFS_NUMPAGGROUPS;
*new = groups_alloc(old->ngroups + need_space);
}
#else
-# define NUMPAGGROUPS 2
static inline afs_uint32
afs_linux_pag_from_groups(struct group_info *group_info) {
- if (group_info->ngroups < NUMPAGGROUPS)
+ if (group_info->ngroups < AFS_NUMPAGGROUPS)
return NOPAG;
return afs_get_pag_from_groups(GROUP_AT(group_info, 0), GROUP_AT(group_info, 1));
gid_t g1;
if (afs_linux_pag_from_groups(old) == NOPAG)
- need_space = NUMPAGGGROUPS;
+ need_space = AFS_NUMPAGGROUPS;
*new = groups_alloc(old->ngroups + need_space);
return code;
}
-
+#ifndef LINUX_KEYRING_SUPPORT
/* Intercept the standard system call. */
extern asmlinkage long (*sys_setgroupsp) (int gidsetsize, gid_t * grouplist);
asmlinkage long
return (-code);
}
-#if defined(AFS_PPC64_LINUX20_ENV)
+# if defined(AFS_PPC64_LINUX20_ENV)
/* Intercept the uid16 system call as used by 32bit programs. */
extern asmlinkage long (*sys32_setgroupsp)(int gidsetsize, gid_t *grouplist);
asmlinkage long afs32_xsetgroups(int gidsetsize, gid_t *grouplist)
/* Linux syscall ABI returns errno as negative */
return (-code);
}
-#endif
+# endif
-#if defined(AFS_SPARC64_LINUX20_ENV) || defined(AFS_AMD64_LINUX20_ENV)
+# if defined(AFS_SPARC64_LINUX20_ENV) || defined(AFS_AMD64_LINUX20_ENV)
/* Intercept the uid16 system call as used by 32bit programs. */
-#ifdef AFS_AMD64_LINUX20_ENV
+# ifdef AFS_AMD64_LINUX20_ENV
extern asmlinkage long (*sys32_setgroupsp) (int gidsetsize, u16 * grouplist);
-#endif /* AFS_AMD64_LINUX20_ENV */
-#ifdef AFS_SPARC64_LINUX26_ENV
+# endif /* AFS_AMD64_LINUX20_ENV */
+# ifdef AFS_SPARC64_LINUX26_ENV
extern asmlinkage int (*sys32_setgroupsp) (int gidsetsize,
__kernel_gid32_t * grouplist);
-#endif /* AFS_SPARC64_LINUX26_ENV */
+# endif /* AFS_SPARC64_LINUX26_ENV */
asmlinkage long
afs32_xsetgroups(int gidsetsize, u16 * grouplist)
{
}
/* Intercept the uid32 system call as used by 32bit programs. */
-#ifdef AFS_AMD64_LINUX20_ENV
+# ifdef AFS_AMD64_LINUX20_ENV
extern asmlinkage long (*sys32_setgroups32p) (int gidsetsize, gid_t * grouplist);
-#endif /* AFS_AMD64_LINUX20_ENV */
-#ifdef AFS_SPARC64_LINUX26_ENV
+# endif /* AFS_AMD64_LINUX20_ENV */
+# ifdef AFS_SPARC64_LINUX26_ENV
extern asmlinkage int (*sys32_setgroups32p) (int gidsetsize,
__kernel_gid32_t * grouplist);
-#endif /* AFS_SPARC64_LINUX26_ENV */
+# endif /* AFS_SPARC64_LINUX26_ENV */
asmlinkage long
afs32_xsetgroups32(int gidsetsize, gid_t * grouplist)
{
/* Linux syscall ABI returns errno as negative */
return (-code);
}
-#endif
-
+# endif
+#endif /* !LINUX_KEYRING_SUPPORT */
#ifdef LINUX_KEYRING_SUPPORT
static void afs_pag_describe(const struct key *key, struct seq_file *m)