tech-kern archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

Re: Adding linux_link(2) system call, second round



On Tue, Aug 02, 2011 at 05:45:56PM +0200, Rhialto wrote:
> Ok, then we also want openat(2), fchmodat(2) (which seems to be misnamed
> and looks more like a chmodat(2)), unlinkat(2), fchownat(2) (same remark
> as fchmodat), etc.

And you forgot fexecve(). I agree we want all of them, but I do not think
we want everything at once.

We have linkat(2) which fixes the problem of hard linking symlinks. This
is a small and harmless change.  And we have these "*at" functions that
allow specifying pathnames relative to a directory specified by a file
descriptor. That means modifying the namei interface, not a challenge, 
but something a bit more intrusive. Therefore I would like to go 
incremental, by first supproting this:
        linkat (AT_FDCW, name1, AT_FDCW, name2, 0)
        linkat (AT_FDCW, name1, AT_FDCW, name2, AT_SYMLINK_FOLLOW)
and return ENOSYS if fd1 and fd2 have values other than AT_FDCW.

Then do the full Extended API set 2. 

-- 
Emmanuel Dreyfus
manu%netbsd.org@localhost


Home | Main Index | Thread Index | Old Index