]> asedeno.scripts.mit.edu Git - linux.git/commitdiff
sunrpc: rename NFS_NGROUPS to UNX_NGROUPS for auth unix
authorKinglong Mee <kinglongmee@gmail.com>
Tue, 7 Feb 2017 13:48:11 +0000 (21:48 +0800)
committerAnna Schumaker <Anna.Schumaker@Netapp.com>
Wed, 8 Feb 2017 22:02:45 +0000 (17:02 -0500)
NFS_NGROUPS has been move to sunrpc, rename to UNX_NGROUPS.

Signed-off-by: Kinglong Mee <kinglongmee@gmail.com>
Signed-off-by: Anna Schumaker <Anna.Schumaker@Netapp.com>
include/linux/sunrpc/auth.h
net/sunrpc/auth_unix.c
net/sunrpc/svcauth_unix.c

index b1bc62ba20a26d56df1d43794023a60e80e1ffef..39c85fb1f0edcba1474168496c14636eb80b2f91 100644 (file)
@@ -32,6 +32,7 @@
  */
 #define UNX_MAXNODENAME        __NEW_UTS_LEN
 #define UNX_CALLSLACK  (21 + XDR_QUADLEN(UNX_MAXNODENAME))
+#define UNX_NGROUPS    16
 
 struct rpcsec_gss_info;
 
index 306fc0f545967a1643a4b80c6d787637a9950329..82337e1ec9cdc76cdcd30fe9fda0684814c95258 100644 (file)
 #include <linux/sunrpc/auth.h>
 #include <linux/user_namespace.h>
 
-#define NFS_NGROUPS    16
-
 struct unx_cred {
        struct rpc_cred         uc_base;
        kgid_t                  uc_gid;
-       kgid_t                  uc_gids[NFS_NGROUPS];
+       kgid_t                  uc_gids[UNX_NGROUPS];
 };
 #define uc_uid                 uc_base.cr_uid
 
@@ -82,13 +80,13 @@ unx_create_cred(struct rpc_auth *auth, struct auth_cred *acred, int flags, gfp_t
 
        if (acred->group_info != NULL)
                groups = acred->group_info->ngroups;
-       if (groups > NFS_NGROUPS)
-               groups = NFS_NGROUPS;
+       if (groups > UNX_NGROUPS)
+               groups = UNX_NGROUPS;
 
        cred->uc_gid = acred->gid;
        for (i = 0; i < groups; i++)
                cred->uc_gids[i] = acred->group_info->gid[i];
-       if (i < NFS_NGROUPS)
+       if (i < UNX_NGROUPS)
                cred->uc_gids[i] = INVALID_GID;
 
        return &cred->uc_base;
@@ -132,12 +130,12 @@ unx_match(struct auth_cred *acred, struct rpc_cred *rcred, int flags)
 
        if (acred->group_info != NULL)
                groups = acred->group_info->ngroups;
-       if (groups > NFS_NGROUPS)
-               groups = NFS_NGROUPS;
+       if (groups > UNX_NGROUPS)
+               groups = UNX_NGROUPS;
        for (i = 0; i < groups ; i++)
                if (!gid_eq(cred->uc_gids[i], acred->group_info->gid[i]))
                        return 0;
-       if (groups < NFS_NGROUPS && gid_valid(cred->uc_gids[groups]))
+       if (groups < UNX_NGROUPS && gid_valid(cred->uc_gids[groups]))
                return 0;
        return 1;
 }
@@ -166,7 +164,7 @@ unx_marshal(struct rpc_task *task, __be32 *p)
        *p++ = htonl((u32) from_kuid(&init_user_ns, cred->uc_uid));
        *p++ = htonl((u32) from_kgid(&init_user_ns, cred->uc_gid));
        hold = p++;
-       for (i = 0; i < 16 && gid_valid(cred->uc_gids[i]); i++)
+       for (i = 0; i < UNX_NGROUPS && gid_valid(cred->uc_gids[i]); i++)
                *p++ = htonl((u32) from_kgid(&init_user_ns, cred->uc_gids[i]));
        *hold = htonl(p - hold - 1);            /* gid array length */
        *base = htonl((p - base - 1) << 2);     /* cred length */
index 64af4f034de693f921faf3f818d833e868b0a2e2..f81eaa8e08888a1a16041548521a5908bf8a9a50 100644 (file)
@@ -403,7 +403,7 @@ svcauth_unix_info_release(struct svc_xprt *xpt)
 /****************************************************************************
  * auth.unix.gid cache
  * simple cache to map a UID to a list of GIDs
- * because AUTH_UNIX aka AUTH_SYS has a max of 16
+ * because AUTH_UNIX aka AUTH_SYS has a max of UNX_NGROUPS
  */
 #define        GID_HASHBITS    8
 #define        GID_HASHMAX     (1<<GID_HASHBITS)
@@ -810,7 +810,7 @@ svcauth_unix_accept(struct svc_rqst *rqstp, __be32 *authp)
        cred->cr_uid = make_kuid(&init_user_ns, svc_getnl(argv)); /* uid */
        cred->cr_gid = make_kgid(&init_user_ns, svc_getnl(argv)); /* gid */
        slen = svc_getnl(argv);                 /* gids length */
-       if (slen > 16 || (len -= (slen + 2)*4) < 0)
+       if (slen > UNX_NGROUPS || (len -= (slen + 2)*4) < 0)
                goto badcred;
        cred->cr_group_info = groups_alloc(slen);
        if (cred->cr_group_info == NULL)