Changeset View
Changeset View
Standalone View
Standalone View
sys/compat/linux/linux_stats.c
Show First 20 Lines • Show All 768 Lines • ▼ Show 20 Lines | |||||
int | int | ||||
linux_statx(struct thread *td, struct linux_statx_args *args) | linux_statx(struct thread *td, struct linux_statx_args *args) | ||||
{ | { | ||||
char *path; | char *path; | ||||
int error, dirfd, flags, unsupported; | int error, dirfd, flags, unsupported; | ||||
struct stat buf; | struct stat buf; | ||||
unsupported = args->flags & ~(LINUX_AT_SYMLINK_NOFOLLOW | LINUX_AT_EMPTY_PATH); | unsupported = args->flags & ~(LINUX_AT_SYMLINK_NOFOLLOW | | ||||
LINUX_AT_EMPTY_PATH | LINUX_AT_NO_AUTOMOUNT); | |||||
if (unsupported != 0) { | if (unsupported != 0) { | ||||
linux_msg(td, "statx unsupported flags 0x%x", unsupported); | linux_msg(td, "statx unsupported flags 0x%x", unsupported); | ||||
return (EINVAL); | return (EINVAL); | ||||
} | } | ||||
flags = (args->flags & LINUX_AT_SYMLINK_NOFOLLOW) ? | flags = (args->flags & LINUX_AT_SYMLINK_NOFOLLOW) ? | ||||
AT_SYMLINK_NOFOLLOW : 0; | AT_SYMLINK_NOFOLLOW : 0; | ||||
flags |= (args->flags & LINUX_AT_EMPTY_PATH) ? | flags |= (args->flags & LINUX_AT_EMPTY_PATH) ? | ||||
Show All 17 Lines |