Re: [PATCH v3 08/11] Add support for the "[exports] rootdir" nfs.conf option to rpc.mountd

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Mon, 2019-06-03 at 10:18 -0400, Steve Dickson wrote:
> 
> On 5/31/19 12:02 PM, J. Bruce Fields wrote:
> > On Tue, May 28, 2019 at 04:31:19PM -0400, Trond Myklebust wrote:
> > > @@ -373,21 +390,22 @@ static char *next_mnt(void **v, char *p)
> > >  	FILE *f;
> > >  	struct mntent *me;
> > >  	size_t l = strlen(p);
> > > +	char *mnt_dir = NULL;
> > > +
> > >  	if (*v == NULL) {
> > >  		f = setmntent("/etc/mtab", "r");
> > >  		*v = f;
> > >  	} else
> > >  		f = *v;
> > > -	while ((me = getmntent(f)) != NULL && l > 1 &&
> > > -	       (strncmp(me->mnt_dir, p, l) != 0 ||
> > > -		me->mnt_dir[l] != '/'))
> > > -		;
> > > -	if (me == NULL) {
> > > -		endmntent(f);
> > > -		*v = NULL;
> > > -		return NULL;
> > > +	while ((me = getmntent(f)) != NULL && l > 1) {
> > > +		mnt_dir = nfsd_path_strip_root(me->mnt_dir);
> > > +
> > > +		if (strncmp(mnt_dir, p, l) == 0 && mnt_dir[l] != '/')
> > > +			return mnt_dir;
> > 
> > That should be "mnt_dir[l] == '/'", right?
> Comment says
> /* Iterate through /etc/mtab, finding mountpoints
>  * at or below a given path
>  */
> 
> So I don't think the actual '/' should returned, Trond?

Yep. You're both right. I've got an incremental patch to fix this.

-- 
Trond Myklebust
Linux NFS client maintainer, Hammerspace
trond.myklebust@xxxxxxxxxxxxxxx






[Index of Archives]     [Linux Filesystem Development]     [Linux USB Development]     [Linux Media Development]     [Video for Linux]     [Linux NILFS]     [Linux Audio Users]     [Yosemite Info]     [Linux SCSI]

  Powered by Linux