sunrpc: Use kuid_t and kgid_t where appropriate
authorEric W. Biederman <ebiederm@xmission.com>
Sat, 2 Feb 2013 00:31:17 +0000 (16:31 -0800)
committerEric W. Biederman <ebiederm@xmission.com>
Wed, 13 Feb 2013 14:15:16 +0000 (06:15 -0800)
Convert variables that store uids and gids to be of type
kuid_t and kgid_t instead of type uid_t and gid_t.

Cc: "J. Bruce Fields" <bfields@fieldses.org>
Cc: Trond Myklebust <Trond.Myklebust@netapp.com>
Signed-off-by: "Eric W. Biederman" <ebiederm@xmission.com>
include/linux/sunrpc/auth.h
include/linux/sunrpc/svcauth.h
net/sunrpc/auth_gss/auth_gss.c
net/sunrpc/auth_unix.c
net/sunrpc/svcauth_unix.c

index f25ba922baaf022dc3814f9705a5fd51749d1422..58fda1c3c783948f4627361eba9bc93a51bde796 100644 (file)
 
 #include <linux/atomic.h>
 #include <linux/rcupdate.h>
+#include <linux/uidgid.h>
 
 /* size of the nodename buffer */
 #define UNX_MAXNODENAME        32
 
 /* Work around the lack of a VFS credential */
 struct auth_cred {
-       uid_t   uid;
-       gid_t   gid;
+       kuid_t  uid;
+       kgid_t  gid;
        struct group_info *group_info;
        const char *principal;
        unsigned char machine_cred : 1;
@@ -48,7 +49,7 @@ struct rpc_cred {
        unsigned long           cr_flags;       /* various flags */
        atomic_t                cr_count;       /* ref count */
 
-       uid_t                   cr_uid;
+       kuid_t                  cr_uid;
 
        /* per-flavor data */
 };
index dd74084a9799891309f54db25b8259ae3388f3c8..ff374ab3083902a7052a07b2ca8bb40cf3136338 100644 (file)
@@ -18,8 +18,8 @@
 #include <linux/cred.h>
 
 struct svc_cred {
-       uid_t                   cr_uid;
-       gid_t                   cr_gid;
+       kuid_t                  cr_uid;
+       kgid_t                  cr_gid;
        struct group_info       *cr_group_info;
        u32                     cr_flavor; /* pseudoflavor */
        char                    *cr_principal; /* for gss */
index 6e5c824b040b75518cb89973261c08f9a7ff2384..4daab81ca3372fb54e83530cfcfdb4fd9b9a025f 100644 (file)
@@ -256,7 +256,7 @@ err:
 
 struct gss_upcall_msg {
        atomic_t count;
-       uid_t   uid;
+       kuid_t  uid;
        struct rpc_pipe_msg msg;
        struct list_head list;
        struct gss_auth *auth;
@@ -303,7 +303,7 @@ gss_release_msg(struct gss_upcall_msg *gss_msg)
 }
 
 static struct gss_upcall_msg *
-__gss_find_upcall(struct rpc_pipe *pipe, uid_t uid)
+__gss_find_upcall(struct rpc_pipe *pipe, kuid_t uid)
 {
        struct gss_upcall_msg *pos;
        list_for_each_entry(pos, &pipe->in_downcall, list) {
@@ -445,7 +445,7 @@ static void gss_encode_msg(struct gss_upcall_msg *gss_msg,
 
 static struct gss_upcall_msg *
 gss_alloc_msg(struct gss_auth *gss_auth, struct rpc_clnt *clnt,
-               uid_t uid, const char *service_name)
+               kuid_t uid, const char *service_name)
 {
        struct gss_upcall_msg *gss_msg;
        int vers;
@@ -475,7 +475,7 @@ gss_setup_upcall(struct rpc_clnt *clnt, struct gss_auth *gss_auth, struct rpc_cr
        struct gss_cred *gss_cred = container_of(cred,
                        struct gss_cred, gc_base);
        struct gss_upcall_msg *gss_new, *gss_msg;
-       uid_t uid = cred->cr_uid;
+       kuid_t uid = cred->cr_uid;
 
        gss_new = gss_alloc_msg(gss_auth, clnt, uid, gss_cred->gc_principal);
        if (IS_ERR(gss_new))
index 2f8627082fa759c0d75e5daa8b2c4c2139ed30ad..372d9156f6e3aa4b8ae049aeeb20519e836cedaf 100644 (file)
@@ -18,8 +18,8 @@
 
 struct unx_cred {
        struct rpc_cred         uc_base;
-       gid_t                   uc_gid;
-       gid_t                   uc_gids[NFS_NGROUPS];
+       kgid_t                  uc_gid;
+       kgid_t                  uc_gids[NFS_NGROUPS];
 };
 #define uc_uid                 uc_base.cr_uid
 
index c8cb5dc8d8711e06259b397c5891e327f2038a65..caae662f9fa3c3774e68b29ef8c0196673ef6cdb 100644 (file)
@@ -415,7 +415,7 @@ svcauth_unix_info_release(struct svc_xprt *xpt)
 
 struct unix_gid {
        struct cache_head       h;
-       uid_t                   uid;
+       kuid_t                  uid;
        struct group_info       *gi;
 };
 
@@ -475,7 +475,7 @@ static int unix_gid_upcall(struct cache_detail *cd, struct cache_head *h)
        return sunrpc_cache_pipe_upcall(cd, h, unix_gid_request);
 }
 
-static struct unix_gid *unix_gid_lookup(struct cache_detail *cd, uid_t uid);
+static struct unix_gid *unix_gid_lookup(struct cache_detail *cd, kuid_t uid);
 
 static int unix_gid_parse(struct cache_detail *cd,
                        char *mesg, int mlen)
@@ -615,7 +615,7 @@ void unix_gid_cache_destroy(struct net *net)
        cache_destroy_net(cd, net);
 }
 
-static struct unix_gid *unix_gid_lookup(struct cache_detail *cd, uid_t uid)
+static struct unix_gid *unix_gid_lookup(struct cache_detail *cd, kuid_t uid)
 {
        struct unix_gid ug;
        struct cache_head *ch;
@@ -628,7 +628,7 @@ static struct unix_gid *unix_gid_lookup(struct cache_detail *cd, uid_t uid)
                return NULL;
 }
 
-static struct group_info *unix_gid_find(uid_t uid, struct svc_rqst *rqstp)
+static struct group_info *unix_gid_find(kuid_t uid, struct svc_rqst *rqstp)
 {
        struct unix_gid *ug;
        struct group_info *gi;