Date: Fri, 31 Aug 2012 17:33:24 +0300 From: Andrey Simonenko <simon@comsys.ntu-kpi.kiev.ua> To: Rick Macklem <rmacklem@uoguelph.ca> Cc: freebsd-fs@FreeBSD.ORG, rmacklem@FreeBSD.org Subject: Re: Why vfs_stdcheckexp is a VFS operation? Message-ID: <20120831143324.GA81282@pm513-1.comsys.ntu-kpi.kiev.ua> In-Reply-To: <42823120.1362161.1346414363645.JavaMail.root@erie.cs.uoguelph.ca> References: <20120831110151.GA21041@pm513-1.comsys.ntu-kpi.kiev.ua> <42823120.1362161.1346414363645.JavaMail.root@erie.cs.uoguelph.ca>
next in thread | previous in thread | raw e-mail | index | archive | help
On Fri, Aug 31, 2012 at 07:59:23AM -0400, Rick Macklem wrote: > Andrey Simonenko wrote: > > On Wed, Aug 29, 2012 at 08:59:11AM -0400, Rick Macklem wrote: > > > > > > It seems that changing the semantics of /etc/exports is very > > > difficult > > > (it's a stumbling block w.r.t. adoption of nfse, as an example) at > > > this > > > time so, although confusing, exporting a directory that is not a > > > mount > > > point results in the entire mount point exported for NFS RPCs, but a > > > restriction of only mounting that directory is enforced for the > > > Mount > > > protocol (only done at mount time and only for NFSv3). > > > > > > > Which information is the statement about semantics of exports(5) and > > nfse is based on? > > I was just going on what you have posted. You always seem to say that > certain buggy cases for how mountd interprets /etc/exports is handled > differently for nfse, but I may have misunderstood. It depends on the year of my posts related to NFSE, I modified and improved it many times, so something said before can be wrong comparing with implementation from more recent versions. Brief statements: 1. nfse works with nfs.exports(5) that is not compatible with exports(5). 2. nfse run with the -C switch is completely compatible with exports(5). 3. mountd is incompatible with exports(5). Detail description for 2 and 3 statements is here: http://nfse.sourceforge.net/COMPATIBILITY Originally mountd was more or less compatible with exports(5), but it was broken several years ago. I corrected some of these mistakes: http://www.freebsd.org/cgi/query-pr.cgi?pr=bin/170295 http://www.freebsd.org/cgi/query-pr.cgi?pr=bin/170413 http://www.freebsd.org/cgi/query-pr.cgi?pr=bin/170447 Some command line options that exist in mountd are not supported by nfse. Some of these command line options do not work correctly or are ignored in mountd. There are some questions related to integration that I gave in the QUESTIONS file from the NFSE archive. New nfs.exports(5) was proposed, just because existent exports(5) cannot solve some configuration tasks. The style of nfs.exports(5) is based on style of exports(5) from FreeBSD, but semantics is different. If one wants to use exports(5), then there is the compatibility mode in nfse (the -C command line switch). Some existent exports(5) configurations will not work, just because they were not written according to exports(5) rules and "nfse -C" is completely compatible with exports(5) rules and is strict to exports(5) rules. (well the -webnfs option is not supported by nfse) >From my point of view there are logic errors in exports(5), I tried to correct them in nfs.exports(5). There are logic errors in mountd from CURRENT and recent STABLEs, so people can get some unexpected results and because of complexity of exports(5) (mount points vs subdirectories) can think that this is correct behaviour and mountd is just more flexible.
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20120831143324.GA81282>