From: Frank Filz Date: Fri, 30 Jun 2006 08:56:11 +0000 (-0700) Subject: [PATCH] knfsd: fixing missing 'expkey' support for fsid type 3 X-Git-Tag: v2.6.18-rc1~272 X-Git-Url: https://err.no/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=4bdff8c0950afa6a3f2efec6cd15159d97fac1e6;p=linux-2.6 [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 Signed-off-by: Neil Brown Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds --- diff --git a/fs/nfsd/export.c b/fs/nfsd/export.c index 3eec30000f..01bc68c628 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;