On Tue, Jul 8, 2014 at 1:03 PM, Christoph Hellwig <hch@xxxxxxxxxxxxx> wrote: > On Mon, Jun 30, 2014 at 11:28:01AM +0100, David Drysdale wrote: >> 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 -- To unsubscribe from this list: send the line "unsubscribe linux-api" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html