summaryrefslogtreecommitdiffstats
path: root/fs/nfsd/auth.c
diff options
context:
space:
mode:
authorTakashi Iwai <tiwai@suse.de>2009-02-09 17:20:13 +0100
committerTakashi Iwai <tiwai@suse.de>2009-02-09 17:20:13 +0100
commitd9f8e9c34150ebec2be07bb95b6a23d99ba1f6de (patch)
tree1e8c402df9b1154f4ca37eb5242f960ef7aab747 /fs/nfsd/auth.c
parent2ebfb8eeb8f244f9d25937d31a947895cf819e26 (diff)
parent8bd4bb7a35e8ebb015a531218614c48e10a3c4ee (diff)
downloadkernel-crypto-d9f8e9c34150ebec2be07bb95b6a23d99ba1f6de.tar.gz
kernel-crypto-d9f8e9c34150ebec2be07bb95b6a23d99ba1f6de.tar.xz
kernel-crypto-d9f8e9c34150ebec2be07bb95b6a23d99ba1f6de.zip
Merge branch 'topic/quirk-cleanup' into topic/misc
Diffstat (limited to 'fs/nfsd/auth.c')
-rw-r--r--fs/nfsd/auth.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/fs/nfsd/auth.c b/fs/nfsd/auth.c
index c903e04aa21..5573508f707 100644
--- a/fs/nfsd/auth.c
+++ b/fs/nfsd/auth.c
@@ -49,6 +49,8 @@ int nfsd_setuser(struct svc_rqst *rqstp, struct svc_export *exp)
new->fsuid = exp->ex_anon_uid;
new->fsgid = exp->ex_anon_gid;
gi = groups_alloc(0);
+ if (!gi)
+ goto oom;
} else if (flags & NFSEXP_ROOTSQUASH) {
if (!new->fsuid)
new->fsuid = exp->ex_anon_uid;
@@ -85,6 +87,7 @@ int nfsd_setuser(struct svc_rqst *rqstp, struct svc_export *exp)
new->cap_effective = cap_raise_nfsd_set(new->cap_effective,
new->cap_permitted);
put_cred(override_creds(new));
+ put_cred(new);
return 0;
oom: