summaryrefslogtreecommitdiffstats
path: root/src/stat.c
diff options
context:
space:
mode:
authorTavian Barnes <tavianator@tavianator.com>2024-01-13 12:42:42 -0500
committerTavian Barnes <tavianator@tavianator.com>2024-01-13 12:42:42 -0500
commite9588c49d5539ded993f720fc6855d6fa878c997 (patch)
treed827157c37f59335252ba874fd41604984775471 /src/stat.c
parentd6cae04b54c1d58223e1719101b7c54d348e8d80 (diff)
downloadbfs-e9588c49d5539ded993f720fc6855d6fa878c997.tar.xz
bfstd: New {error,errno}_is_like() functions
We used to have is_nonexistence_error() to consistently treat ENOENT and ENOTDIR the same. Recently, we started considering EFAULT the same as ENAMETOOLONG on DragonFly BSD to work around a kernel bug. Unify both of these behind a more generic interface.
Diffstat (limited to 'src/stat.c')
-rw-r--r--src/stat.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/src/stat.c b/src/stat.c
index d7387c6..91aa092 100644
--- a/src/stat.c
+++ b/src/stat.c
@@ -260,7 +260,7 @@ static int bfs_stat_tryfollow(int at_fd, const char *at_path, int at_flags, int
if (ret != 0
&& (bfs_flags & (BFS_STAT_NOFOLLOW | BFS_STAT_TRYFOLLOW)) == BFS_STAT_TRYFOLLOW
- && is_nonexistence_error(errno))
+ && errno_is_like(ENOENT))
{
at_flags |= AT_SYMLINK_NOFOLLOW;
ret = bfs_stat_explicit(at_fd, at_path, at_flags, x_flags, buf);