From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from relay.sgi.com (relay2.corp.sgi.com [137.38.102.29]) by oss.sgi.com (Postfix) with ESMTP id 19CFD7CA0 for ; Mon, 29 Aug 2016 10:13:32 -0500 (CDT) Received: from cuda.sgi.com (cuda3.sgi.com [192.48.176.15]) by relay2.corp.sgi.com (Postfix) with ESMTP id C3A9D304064 for ; Mon, 29 Aug 2016 08:13:28 -0700 (PDT) Received: from userp1040.oracle.com (userp1040.oracle.com [156.151.31.81]) by cuda.sgi.com with ESMTP id 5LxRVCt7U5Sgc1uy (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NO) for ; Mon, 29 Aug 2016 08:13:26 -0700 (PDT) Date: Mon, 29 Aug 2016 08:13:23 -0700 From: "Darrick J. Wong" Subject: Re: [PATCH] xfsprogs: don't populate fs table with foreign fs paths unless foreign_allowed Message-ID: <20160829151323.GG22760@birch.djwong.org> References: <1472478012-23627-1-git-send-email-billodo@redhat.com> MIME-Version: 1.0 Content-Disposition: inline In-Reply-To: <1472478012-23627-1-git-send-email-billodo@redhat.com> List-Id: XFS Filesystem from SGI List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Errors-To: xfs-bounces@oss.sgi.com Sender: xfs-bounces@oss.sgi.com To: Bill O'Donnell Cc: xfs@oss.sgi.com On Mon, Aug 29, 2016 at 08:40:12AM -0500, Bill O'Donnell wrote: > Commits b20b6c2 and 29647c8 modified xfs_quota for use on > non-XFS filesystems. One modification in fs_initialise_mounts > (paths.c) resulted in an xfstest fail (xfs/261), due to foreign > fs paths entering the fs table. > > This patch reverts the behavior in fs_initialise_mounts back > to skip populating the table with foreign paths, unless the > -f flag is thrown in xfs_quota to set foreign_allowed true. > > Signed-off-by: Bill O'Donnell > --- > libxcmd/paths.c | 5 +++++ > quota/init.c | 1 - > 2 files changed, 5 insertions(+), 1 deletion(-) > > diff --git a/libxcmd/paths.c b/libxcmd/paths.c > index 4158688..7375c0e 100644 > --- a/libxcmd/paths.c > +++ b/libxcmd/paths.c > @@ -34,6 +34,7 @@ extern char *progname; > int fs_count; > struct fs_path *fs_table; > struct fs_path *fs_path; > +bool foreign_allowed = false; /* foreign filesystems not allowed (default) */ /me wonders if this would be better as a parameter to fs_table_initialise_mounts() ? --D > > char *mtab_file; > #define PROC_MOUNTS "/proc/self/mounts" > @@ -311,6 +312,10 @@ fs_table_initialise_mounts( > return errno; > > while ((mnt = getmntent(mtp)) != NULL) { > + /* don't populate if not XFS, and foreign fs disallowed */ > + if ((strcmp(mnt->mnt_type, "xfs") != 0) && > + !foreign_allowed) > + continue; > if (!realpath(mnt->mnt_dir, rmnt_dir)) > continue; > if (!realpath(mnt->mnt_fsname, rmnt_fsname)) > diff --git a/quota/init.c b/quota/init.c > index 44be322..65e4dad 100644 > --- a/quota/init.c > +++ b/quota/init.c > @@ -24,7 +24,6 @@ > char *progname; > int exitcode; > int expert; > -bool foreign_allowed = false; > > static char **projopts; /* table of project names (cmdline) */ > static int nprojopts; /* number of entries in name table. */ > -- > 2.7.4 > > _______________________________________________ > xfs mailing list > xfs@oss.sgi.com > http://oss.sgi.com/mailman/listinfo/xfs _______________________________________________ xfs mailing list xfs@oss.sgi.com http://oss.sgi.com/mailman/listinfo/xfs