freebsd-dev/sys/nfs
Robert Watson 2955f0b360 o Rather than arbitrarily construct a credential in the nfs_statfs()
VFS operation, make use of the calling process's credential.  This
  solution may not be ideal (there are a number of other possible
  proposals, including making use of the proc0 credential, adding a
  credential argument to the VFSOP, and switching from a hard-coded
  ucred to a hard-coded nfscred), it is simple and appears to
  work.  The arguments against using simply crget() are fairly
  strong: it is the only place in the code (other than a nearly
  identical invocation in ncp) where crget() is invoked, other than
  in the process credential creation code; as ucred becomes extensible,
  this use of crget() without appropriate context results in less and
  less meaningful credential data.  The implementation here will
  probably be tweaked as a result of experimentation and further
  exploration of the requirements.  In the mean-time, it allows
  progress to be made in ucred expansion for new security models without
  causing a crash every time df is used on an NFS mounted file system.

  This code has been interop tested against FreeBSD and Solaris NFS
  servers.  While using the process credentials should not introduce
  interop problems, please let me know if any turn out to exist.

Reviewed by:	freebsd-arch
2001-04-05 06:12:38 +00:00
..
bootp_subr.c Enable use of DHCP extensions. 2001-02-02 02:35:40 +00:00
krpc_subr.c * Rename M_WAIT mbuf subsystem flag to M_TRYWAIT. 2000-12-21 21:44:31 +00:00
krpc.h $Id$ -> $FreeBSD$ 1999-08-28 01:08:13 +00:00
nfs_bio.c Grab the process lock while calling psignal and before calling psignal. 2001-03-07 03:37:06 +00:00
nfs_common.c * Rename M_WAIT mbuf subsystem flag to M_TRYWAIT. 2000-12-21 21:44:31 +00:00
nfs_common.h * Rename M_WAIT mbuf subsystem flag to M_TRYWAIT. 2000-12-21 21:44:31 +00:00
nfs_node.c Use the same API as the example code. 2001-03-20 02:10:18 +00:00
nfs_nqlease.c Change and clean the mutex lock interface. 2001-02-09 06:11:45 +00:00
nfs_serv.c Preceed/preceeding are not english words. Use precede and preceding. 2001-02-18 10:43:53 +00:00
nfs_socket.c * Rename M_WAIT mbuf subsystem flag to M_TRYWAIT. 2000-12-21 21:44:31 +00:00
nfs_srvcache.c * Rename M_WAIT mbuf subsystem flag to M_TRYWAIT. 2000-12-21 21:44:31 +00:00
nfs_subs.c * Rename M_WAIT mbuf subsystem flag to M_TRYWAIT. 2000-12-21 21:44:31 +00:00
nfs_syscalls.c Switch to using a struct xucred instead of a struct xucred when not 2001-02-18 13:30:20 +00:00
nfs_vfsops.c o Rather than arbitrarily construct a credential in the nfs_statfs() 2001-04-05 06:12:38 +00:00
nfs_vnops.c Fix lockup for loopback NFS mounts. The pipelined I/O limitations could be 2001-02-28 04:13:11 +00:00
nfs.h Use a generic implementation of the Fowler/Noll/Vo hash (FNV hash). 2001-03-17 09:31:06 +00:00
nfsdiskless.h $Id$ -> $FreeBSD$ 1999-08-28 01:08:13 +00:00
nfsm_subs.h * Rename M_WAIT mbuf subsystem flag to M_TRYWAIT. 2000-12-21 21:44:31 +00:00
nfsmount.h In preparation for deprecating CIRCLEQ macros in favor of TAILQ 2000-11-14 08:00:39 +00:00
nfsnode.h In preparation for deprecating CIRCLEQ macros in favor of TAILQ 2000-11-14 08:00:39 +00:00
nfsproto.h $Id$ -> $FreeBSD$ 1999-08-28 01:08:13 +00:00
nfsrtt.h $Id$ -> $FreeBSD$ 1999-08-28 01:08:13 +00:00
nfsrvcache.h Back out the previous change to the queue(3) interface. 2000-05-26 02:09:24 +00:00
nfsv2.h $Id$ -> $FreeBSD$ 1999-08-28 01:08:13 +00:00
nqnfs.h In preparation for deprecating CIRCLEQ macros in favor of TAILQ 2000-11-14 08:00:39 +00:00
rpcv2.h $Id$ -> $FreeBSD$ 1999-08-28 01:08:13 +00:00
xdr_subs.h $Id$ -> $FreeBSD$ 1999-08-28 01:08:13 +00:00