On Tue, Apr 07, 2009 at 10:54:31AM -0400, Oleg Drokin wrote: >> In the end it DOES seem that fstatat(2) is a sufficient interface for >> this: >> >> int fstatat(int dirfd, const char *pathname, struct stat *buf, >> int flags); >> since it is working on the directory and passing in the filenames >> for each file. There is even a AT_SYMLINK_NOFOLLOW to avoid the >> need to have a separate "l" version. > > I thought about it, but unless we would allow userspace to pass in > the magic AT_FDCWD, they would still would need to open something > even if only once per run (and probably once per dir, to avoid > extra lookup overhead), and that is probably not very desirable. AT_FDCWD is part of the Posix-specified *at interface and can be passed in from userspace since day1. Apropos Posix, you should probably talk to Uli Drepper about exposing these things in glibc and possibly standardizing it through Austin group (or whatever replaced it) -- To unsubscribe from this list: send the line "unsubscribe linux-fsdevel" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html