]> git.baikalelectronics.ru Git - kernel.git/commit
knfsd: Allow NFSv2/3 WRITE calls to succeed when krb5i etc is used.
authorNeilBrown <neilb@suse.de>
Fri, 11 Jan 2008 22:06:52 +0000 (17:06 -0500)
committerLinus Torvalds <torvalds@woody.linux-foundation.org>
Sun, 13 Jan 2008 17:57:57 +0000 (09:57 -0800)
commit26bfae57e35972c920e7f7f0b7e4332d3a477fd5
treea804a00351abf9f81f26f679f0cbaaedba2eb188
parentd802e7f1e70fc5272f5112e389ac81f36e563d5a
knfsd: Allow NFSv2/3 WRITE calls to succeed when krb5i etc is used.

When RPCSEC/GSS and krb5i is used, requests are padded, typically to a multiple
of 8 bytes.  This can make the request look slightly longer than it
really is.

As of

44ab0917c7df2b852 "The NFSv2/NFSv3 server does not handle zero
length WRITE request correctly",

the xdr decode routines for NFSv2 and NFSv3 reject requests that aren't
the right length, so krb5i (for example) WRITE requests can get lost.

This patch relaxes the appropriate test and enhances the related comment.

Signed-off-by: Neil Brown <neilb@suse.de>
Signed-off-by: J. Bruce Fields <bfields@citi.umich.edu>
Cc: Peter Staubach <staubach@redhat.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
fs/nfsd/nfs3xdr.c
fs/nfsd/nfsxdr.c