Stefan Metzmacher [off-list ref] wrote:
quoted
fsinfo() may be called like the following, for example:
struct fsinfo_params params = {
.at_flags = AT_SYMLINK_NOFOLLOW,
Shouldn't all new syscalls be able to provide the RESOLVE_ flags
supported in openat2?
If that's the rule, then fine. I presume these are a replacement for AT_*.
But the set of RESOLVE_* flags does not appear to be complete - and why's it
not in linux/fs.h if it's meant to be used by everything?
Anyway, it lacks a RESOLVE_NO_AUTOMOUNT flag. This is not quite the same as
the documented behaviour of RESOLVE_NO_XDEV.
quoted
len = fsinfo(AT_FDCWD, "/afs/grand.central.org/doc", ¶ms,
&address, sizeof(address));
Also passing sizeof(params) would allow future updates of fsinfo_params,
also similar to openat2(), clone3()...
I can put that at the beginning of the params block or put dirfd in there. If
I remember rightly, 6-arg syscalls are discouraged because they may need
special handling on some arches.
David