summaryrefslogtreecommitdiffstats
path: root/fs/nfsd/auth.c
diff options
context:
space:
mode:
authorDavid Vrabel <david.vrabel@csr.com>2009-02-02 17:52:39 +0000
committerDavid Vrabel <david.vrabel@csr.com>2009-02-02 17:52:39 +0000
commit8f04915532485d81e7f6c580a396ea7b01094221 (patch)
treec5740e961a025f2fb6b520a2bc5937f19d4345ab /fs/nfsd/auth.c
parent8f5140a6a0b1a9aa79585b0008e88c5d266c5c1d (diff)
parent45c82b5a770be66845687a7d027c8b52946d59af (diff)
downloadop-kernel-dev-8f04915532485d81e7f6c580a396ea7b01094221.zip
op-kernel-dev-8f04915532485d81e7f6c580a396ea7b01094221.tar.gz
Merge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6 into for-upstream
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 c903e04..5573508 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:
OpenPOWER on IntegriCloud