From: Andrew Morton <akpm@linux-foundation.org>
To: Ian Kent <raven@themaw.net>
Cc: Kernel Mailing List <linux-kernel@vger.kernel.org>,
autofs mailing list <autofs@linux.kernel.org>,
linux-fsdevel <linux-fsdevel@vger.kernel.org>,
Pavel Emelyanov <xemul@openvz.org>,
"Eric W. Biederman" <ebiederm@xmission.com>
Subject: Re: [PATCH 3/4] autofs4 - track uid and gid of last mount requestor
Date: Wed, 27 Feb 2008 20:45:46 -0800 [thread overview]
Message-ID: <20080227204546.72e16e8d.akpm@linux-foundation.org> (raw)
In-Reply-To: <Pine.LNX.4.64.0802261208400.8490@raven.themaw.net>
On Tue, 26 Feb 2008 12:23:20 +0900 (WST) Ian Kent <raven@themaw.net> wrote:
> Hi Andrew,
>
> Patch to track the uid and gid of the last process to request
> a mount for on an autofs dentry.
>
> Signed-off-by: Ian Kent < raven@themaw.net>
>
> Ian
>
> ---
> diff -up linux-2.6.25-rc2-mm1/fs/autofs4/inode.c.track-last-mount-ids linux-2.6.25-rc2-mm1/fs/autofs4/inode.c
> --- linux-2.6.25-rc2-mm1/fs/autofs4/inode.c.track-last-mount-ids 2008-02-20 13:11:28.000000000 +0900
> +++ linux-2.6.25-rc2-mm1/fs/autofs4/inode.c 2008-02-20 13:12:23.000000000 +0900
> @@ -43,6 +43,8 @@ struct autofs_info *autofs4_init_ino(str
>
> ino->flags = 0;
> ino->mode = mode;
> + ino->uid = 0;
> + ino->gid = 0;
> ino->inode = NULL;
> ino->dentry = NULL;
> ino->size = 0;
> diff -up linux-2.6.25-rc2-mm1/fs/autofs4/autofs_i.h.track-last-mount-ids linux-2.6.25-rc2-mm1/fs/autofs4/autofs_i.h
> --- linux-2.6.25-rc2-mm1/fs/autofs4/autofs_i.h.track-last-mount-ids 2008-02-20 13:14:03.000000000 +0900
> +++ linux-2.6.25-rc2-mm1/fs/autofs4/autofs_i.h 2008-02-20 13:14:34.000000000 +0900
> @@ -58,6 +58,9 @@ struct autofs_info {
> unsigned long last_used;
> atomic_t count;
>
> + uid_t uid;
> + gid_t gid;
> +
> mode_t mode;
> size_t size;
>
> diff -up linux-2.6.25-rc2-mm1/fs/autofs4/waitq.c.track-last-mount-ids linux-2.6.25-rc2-mm1/fs/autofs4/waitq.c
> --- linux-2.6.25-rc2-mm1/fs/autofs4/waitq.c.track-last-mount-ids 2008-02-20 13:06:20.000000000 +0900
> +++ linux-2.6.25-rc2-mm1/fs/autofs4/waitq.c 2008-02-20 13:10:23.000000000 +0900
> @@ -363,6 +363,38 @@ int autofs4_wait(struct autofs_sb_info *
>
> status = wq->status;
>
> + /*
> + * For direct and offset mounts we need to track the requestor
> + * uid and gid in the dentry info struct. This is so it can be
> + * supplied, on request, by the misc device ioctl interface.
> + * This is needed during daemon resatart when reconnecting
> + * to existing, active, autofs mounts. The uid and gid (and
> + * related string values) may be used for macro substitution
> + * in autofs mount maps.
> + */
> + if (!status) {
> + struct dentry *de = NULL;
> +
> + /* direct mount or browsable map */
> + ino = autofs4_dentry_ino(dentry);
> + if (!ino) {
> + /* If not lookup actual dentry used */
> + de = d_lookup(dentry->d_parent, &dentry->d_name);
> + ino = autofs4_dentry_ino(de);
> + }
> +
> + /* Set mount requestor */
> + if (ino) {
> + if (ino) {
> + ino->uid = wq->uid;
> + ino->gid = wq->gid;
> + }
> + }
> +
> + if (de)
> + dput(de);
> + }
> +
But uids and gids are no longer system-wide-unique. Two different users
can have the same identifiers in different namespaces. What happens then?
next prev parent reply other threads:[~2008-02-28 4:45 UTC|newest]
Thread overview: 42+ messages / expand[flat|nested] mbox.gz Atom feed top
2008-02-26 3:21 [PATCH 0/4] autofs4 - autofs needs a miscelaneous device for ioctls Ian Kent
2008-02-26 3:22 ` [PATCH 1/4] autofs4 - check for invalid dentry in getpath Ian Kent
2008-02-26 3:23 ` [PATCH 3/4] autofs4 - track uid and gid of last mount requestor Ian Kent
2008-02-26 5:14 ` [PATCH 3/4] autofs4 - track uid and gid of last mount requestor - correction Ian Kent
2008-02-28 4:45 ` Andrew Morton [this message]
2008-02-28 6:22 ` [PATCH 3/4] autofs4 - track uid and gid of last mount requestor Ian Kent
2008-02-28 6:37 ` Andrew Morton
2008-02-28 7:08 ` Ian Kent
2008-02-28 7:23 ` Andrew Morton
2008-02-28 8:00 ` Ian Kent
2008-02-28 17:13 ` Jeff Moyer
2008-02-28 19:51 ` Serge E. Hallyn
2008-02-29 3:32 ` Ian Kent
2008-02-29 16:09 ` Serge E. Hallyn
2008-02-29 16:20 ` Pavel Emelyanov
2008-02-29 17:42 ` Serge E. Hallyn
2008-03-02 0:49 ` Eric W. Biederman
2008-03-02 1:13 ` Eric W. Biederman
2008-03-03 15:28 ` Serge E. Hallyn
2008-03-04 22:16 ` Eric W. Biederman
2008-02-28 7:51 ` Pavel Emelyanov
2008-02-28 7:59 ` Andrew Morton
2008-02-28 8:06 ` Ian Kent
2008-02-28 12:31 ` [autofs] " Fabio Olive Leite
2008-02-28 12:31 ` Fabio Olive Leite
2008-02-28 20:33 ` Eric W. Biederman
2008-02-26 3:23 ` [PATCH 4/4] autofs4 - add miscelaneous device for ioctls Ian Kent
2008-02-28 5:17 ` Andrew Morton
2008-02-28 6:18 ` Ian Kent
2008-03-13 7:00 ` [RFC] " Ian Kent
2008-03-13 7:00 ` Ian Kent
2008-03-14 2:45 ` Ian Kent
2008-03-14 12:45 ` Thomas Graf
2008-03-14 14:10 ` Ian Kent
2008-02-29 16:24 ` Ian Kent
2008-04-11 7:02 ` Ian Kent
2008-04-12 4:03 ` Andrew Morton
2008-04-14 4:45 ` Ian Kent
2008-02-26 4:29 ` [PATCH 2/4] autofs4 - add mount option to display mount device Ian Kent
2008-02-28 5:17 ` Andrew Morton
2008-02-28 4:40 ` [PATCH 0/4] autofs4 - autofs needs a miscelaneous device for ioctls Andrew Morton
2008-02-28 6:07 ` Ian Kent
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=20080227204546.72e16e8d.akpm@linux-foundation.org \
--to=akpm@linux-foundation.org \
--cc=autofs@linux.kernel.org \
--cc=ebiederm@xmission.com \
--cc=linux-fsdevel@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=raven@themaw.net \
--cc=xemul@openvz.org \
/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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.