Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 24 Jan 2001 10:57:03 -0800
From:      Guy Harris <gharris@flashcom.net>
To:        Guy Harris <gharris@flashcom.net>
Cc:        Mike Smith <msmith@freebsd.org>, Matthias Andree <ma@dt.e-technik.uni-dortmund.de>, Linux NFS mailing list <nfs@lists.sourceforge.net>, FreeBSD Stable <freebsd-stable@freebsd.org>
Subject:   Re: [NFS] Incompatible: FreeBSD 4.2 client, Linux 2.2.18 nfsv3 server, read-only export
Message-ID:  <20010124105703.G344@quadrajet.flashcom.com>
In-Reply-To: <20010124104216.F344@quadrajet.flashcom.com>; from gharris@flashcom.net on Wed, Jan 24, 2001 at 10:42:16AM -0800
References:  <200101241104.f0OB4sS10071@mass.dis.org> <200101241117.f0OBH7S10154@mass.dis.org> <20010124104216.F344@quadrajet.flashcom.com>

next in thread | previous in thread | raw e-mail | index | archive | help
On Wed, Jan 24, 2001 at 10:42:16AM -0800, Guy Harris wrote:
> If you do want to work around the Linux bug, you'd probably have to send
> another ACCESS request over the wire, with the write bits turned off;
> I'm not sure whether that's worth the effort or not.

An alternative patch is

*** vfs.c.dist	Sun Dec 10 16:49:44 2000
--- vfs.c	Wed Jan 24 10:54:15 2001
***************
*** 448,454 ****
  			error = nfsd_permission(export, dentry, (map->how | NO_OWNER_OVERRIDE));
  			if (error == 0)
  				result |= map->access;
! 			else if ((error == nfserr_perm) || (error == nfserr_acces)) {
  				/*
  				 *  This access type is denyed; but the 
  				 *  access query itself succeeds.
--- 448,455 ----
  			error = nfsd_permission(export, dentry, (map->how | NO_OWNER_OVERRIDE));
  			if (error == 0)
  				result |= map->access;
! 			else if ((error == nfserr_perm) || (error == nfserr_acces) ||
! 			    (error == nfserr_rofs)) {
  				/*
  				 *  This access type is denyed; but the 
  				 *  access query itself succeeds.

but you apply that one to the Linux NFS server code (in
"fs/nfsd/vfs.c"), which should fix the Linux server bug.  (I haven't
tried it, or compiled it, as my machine is currently running FreeBSD,
but I think it should, at least compile, and I expect it to solve the
problem.)


To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-stable" in the body of the message




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20010124105703.G344>