nfsd_setuser() sets the current tasks fsuid, fsgid from the rpc cred cr_uid, cr_fid. it also squashes all or root. it needs to be called prior to any directory or file access. it is called in fh_verify() --- linux-2.6.16-rc4-andros/fs/nfsd/nfs4proc.c | 2 -- 1 files changed, 2 deletions(-) diff -puN fs/nfsd/nfs4proc.c~remove-setuser-putroot fs/nfsd/nfs4proc.c --- linux-2.6.16-rc4/fs/nfsd/nfs4proc.c~remove-setuser-putroot 2006-03-01 17:55:58.000000000 -0500 +++ linux-2.6.16-rc4-andros/fs/nfsd/nfs4proc.c 2006-03-01 17:56:25.000000000 -0500 @@ -289,8 +289,6 @@ nfsd4_putrootfh(struct svc_rqst *rqstp, fh_put(current_fh); status = exp_pseudoroot(rqstp->rq_client, current_fh, &rqstp->rq_chandle); - if (!status) - status = nfserrno(nfsd_setuser(rqstp, current_fh->fh_export)); return status; } _