Thread (49 messages) 49 messages, 10 authors, 2014-08-16

Re: [PATCH 01/11] fs: add O_BENEATH_ONLY flag to openat(2)

From: David Drysdale <hidden>
Date: 2014-07-08 16:54:47
Also in: lkml

On Tue, Jul 8, 2014 at 1:03 PM, Christoph Hellwig [off-list ref] wrote:
On Mon, Jun 30, 2014 at 11:28:01AM +0100, David Drysdale wrote:
quoted
Add a new O_BENEATH_ONLY flag for openat(2) which restricts the
provided path, rejecting (with -EACCES) paths that are not beneath
the provided dfd.  In particular, reject:
 - paths that contain .. components
 - paths that begin with /
 - symlinks that have paths as above.

How is this implemented in FreeBSD?  I can't find any references to
O_BENEATH_ONLY except for your patchset.
FreeBSD have the relative-only behaviour for openat() relative to a
Capsicum capability dfd [1], and for a process in capability-mode [2],
but they don't have the O_BENEATH_ONLY as a separately-accessible
openat() flag.  However, it seemed like a more widely useful idea so
separating it out was suggested.

[1] http://fxr.watson.org/fxr/source/kern/vfs_lookup.c?v=FREEBSD10#L238
[2] http://fxr.watson.org/fxr/source/kern/vfs_lookup.c?v=FREEBSD10#L171
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help