freebsd-dev/sys/fs/nfs
Rick Macklem 23b3566364 Martin Cracauer reported a problem to freebsd-current@ under the
subject "Data corruption over NFS in -current". During investigation
of this, I came across an ugly bogusity in the new NFS client where
it replaced the cr_uid with the one used for the mount. This was
done so that "system operations" like the NFSv4 Renew would be
performed as the user that did the mount. However, if any other
thread shares the credential with the one doing this operation,
it could do an RPC (or just about anything else) as the wrong cr_uid.
This patch fixes the above, by using the mount credentials instead of
the one provided as an argument for this case. It appears
to have fixed Martin's problem.
This patch is needed for NFSv4 mounts and NFSv3 mounts against
some non-FreeBSD servers that do not put post operation attributes
in the NFSv3 Statfs RPC reply.

Tested by:	Martin Cracauer (cracauer at cons.org)
Reviewed by:	jhb
MFC after:	2 weeks
2012-01-20 00:58:51 +00:00
..
nfs_commonacl.c
nfs_commonkrpc.c Martin Cracauer reported a problem to freebsd-current@ under the 2012-01-20 00:58:51 +00:00
nfs_commonport.c jwd@ reported via email that the "CacheSize" field reported by "nfsstat -e -s" 2012-01-11 02:46:42 +00:00
nfs_commonsubs.c opt_inet6.h was missing from some files in the new NFS subsystem. 2012-01-08 01:54:46 +00:00
nfs_var.h
nfs.h
nfscl.h
nfsclstate.h Post r223774, the NFSv4 client no longer has multiple instances 2011-12-03 02:27:26 +00:00
nfsdport.h
nfskpiport.h
nfsm_subs.h Add the experimental nfs subtree to the kernel, that includes 2009-05-04 15:23:58 +00:00
nfsport.h Use strchr() and strrchr(). 2012-01-02 12:12:10 +00:00
nfsproto.h
nfsrvcache.h
nfsrvstate.h
nfsv4_errstr.h
rpcv2.h
xdr_subs.h