linux-nfs.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Karel Zak <kzak@redhat.com>
To: linux-nfs@vger.kernel.org
Cc: Steve Dickson <steved@redhat.com>, Karel Zak <kzak@redhat.com>
Subject: [PATCH] mount.nfs: don't overwrite mount options from /etc/nfsmount.conf
Date: Thu, 22 Dec 2011 15:14:52 +0100	[thread overview]
Message-ID: <1324563292-22058-1-git-send-email-kzak@redhat.com> (raw)

The libmount (as well as mount(8)) ignores mount options from command
line if running in restricted mode (suid, non-root-user) and all
options are read from fstab only.

It means that all options are replaced with stuff from fstab,
including mount options from nfsmount.conf. This is bug.

We have to apply fstab and then nfsmount.conf.

Signed-off-by: Karel Zak <kzak@redhat.com>
---
 utils/mount/mount_libmount.c |   15 +++++++++++++++
 1 files changed, 15 insertions(+), 0 deletions(-)

diff --git a/utils/mount/mount_libmount.c b/utils/mount/mount_libmount.c
index e450d79..e8f17a9 100644
--- a/utils/mount/mount_libmount.c
+++ b/utils/mount/mount_libmount.c
@@ -346,6 +346,21 @@ static int mount_main(struct libmnt_context *cxt, int argc, char **argv)
 
 	if (chk_mountpoint(mount_point))
 		goto err;
+
+	/*
+	 * The libmount strictly uses only options from fstab if running in
+	 * restricted mode (suid, non-root user). This is done in
+	 * mnt_context_prepare_mount() by default.
+	 *
+	 * We have to read fstab before nfsmount.conf, otherwise the options
+	 * from nfsmount.conf will be ignored (overwrited).
+	 */
+	rc = mnt_context_apply_fstab(cxt);
+	if (rc) {
+		nfs_error(_("%s: failed to apply fstab options\n"), progname);
+		goto err;
+	}
+
 	/*
 	 * Concatenate mount options from the configuration file
 	 */
-- 
1.7.7.4


             reply	other threads:[~2011-12-22 14:15 UTC|newest]

Thread overview: 2+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2011-12-22 14:14 Karel Zak [this message]
2012-01-05 21:42 ` [PATCH] mount.nfs: don't overwrite mount options from /etc/nfsmount.conf Steve Dickson

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1324563292-22058-1-git-send-email-kzak@redhat.com \
    --to=kzak@redhat.com \
    --cc=linux-nfs@vger.kernel.org \
    --cc=steved@redhat.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).