lkml.org 
[lkml]   [2009]   [Jan]   [6]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    SubjectRe: [PATCH] Introduce d_realpath().
    From
    Date
    On Tue, 06 Jan 2009, Tetsuo Handa wrote:
    > Al, thank you very much for processing security_path_*() patch.
    > Now James is reviewing our patch and he suggested
    > following parts need your acknowledgments.
    > Will you review and ACK for introducing a variant of d_path()?
    >
    > --------------------
    > Subject: Introduce d_realpath().
    >
    > To remove factors that make pathname based access control difficult
    > (e.g. symbolic links, "..", "//", chroot() etc.), a variant of d_path()
    > which traverses up to the root of the namespace is needed.
    >
    > This patch introduces d_realpath(), a variant of d_path().
    > While d_path() stops traversing at current->fs->root,
    > d_realpath() doesn't stop traversiong at current->fs->root.
    >
    > Three differences compared to d_path().
    > (1) Ignores current process's root directory.

    I'd suggest calling __d_path() and passing in the namespace root
    instead of the process root. That would be a lot simpler and result
    in less code duplication.

    > (2) Trailing '/' is added if the pathname refers to a directory.

    Caller can do this.

    > (3) /proc/PID/ is represented as /proc/self/ if PID equals current->tgid.

    This too. Such hacks really don't belong in generic VFS functions.

    Thanks,
    Miklos


    \
     
     \ /
      Last update: 2009-01-06 21:39    [W:0.023 / U:1.380 seconds]
    ©2003-2016 Jasper Spaans. hosted at Digital OceanAdvertise on this site