return 0;
}
+int statx_verify_directory(const struct statx *stx) {
+ assert(stx);
+
+ if (!FLAGS_SET(stx->stx_mask, STATX_TYPE))
+ return -ENODATA;
+
+ if (S_ISLNK(stx->stx_mode))
+ return -ELOOP;
+
+ if (!S_ISDIR(stx->stx_mode))
+ return -ENOTDIR;
+
+ return 0;
+}
+
int fd_verify_directory(int fd) {
if (IN_SET(fd, AT_FDCWD, XAT_FDROOT))
return 0;
int fd_verify_regular(int fd);
int stat_verify_directory(const struct stat *st);
+int statx_verify_directory(const struct statx *stx);
int fd_verify_directory(int fd);
int is_dir_at(int fd, const char *path, bool follow);
int is_dir(const char *path, bool follow);