summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorFrank Filz <ffilzlnx@us.ibm.com>2006-06-30 01:56:11 -0700
committerLinus Torvalds <torvalds@g5.osdl.org>2006-06-30 11:25:39 -0700
commit4bdff8c0950afa6a3f2efec6cd15159d97fac1e6 (patch)
treefe360f4241762d7cf8b12b6a531f75446d93b0b4
parenta56f39375a7bd183149c18286389e4a58ac9bc95 (diff)
[PATCH] knfsd: fixing missing 'expkey' support for fsid type 3
Type '3' is used for the fsid in filehandles when the device number of the device holding the filesystem has more than 8 bits in either major or minor. Unfortunately expkey_parse doesn't recognise type 3. Fix this. (Slighty modified from Frank's original) Signed-off-by: Frank Filz <ffilzlnx@us.ibm.com> Signed-off-by: Neil Brown <neilb@suse.de> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
-rw-r--r--fs/nfsd/export.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/fs/nfsd/export.c b/fs/nfsd/export.c
index 3eec30000f3..01bc68c628a 100644
--- a/fs/nfsd/export.c
+++ b/fs/nfsd/export.c
@@ -126,7 +126,7 @@ static int expkey_parse(struct cache_detail *cd, char *mesg, int mlen)
if (*ep)
goto out;
dprintk("found fsidtype %d\n", fsidtype);
- if (fsidtype > 2)
+ if (key_len(fsidtype)==0) /* invalid type */
goto out;
if ((len=qword_get(&mesg, buf, PAGE_SIZE)) <= 0)
goto out;