aboutsummaryrefslogtreecommitdiff
path: root/src/xz/io.c
diff options
context:
space:
mode:
Diffstat (limited to '')
-rw-r--r--src/xz/io.c8
1 files changed, 8 insertions, 0 deletions
diff --git a/src/xz/io.c b/src/xz/io.c
index 0ec63f03..49d3d8bc 100644
--- a/src/xz/io.c
+++ b/src/xz/io.c
@@ -300,6 +300,14 @@ io_open_src(file_pair *pair)
if (errno == ENOTSUP)
was_symlink = true;
+# elif defined(__NetBSD__)
+ // FIXME? As of 2008-11-20, NetBSD doesn't document what
+ // errno is used with O_NOFOLLOW. It seems to be EFTYPE,
+ // but since it isn't documented, it may be wrong to rely
+ // on it here.
+ if (errno == EFTYPE)
+ was_symlink = true;
+
# else
if (errno == ELOOP && reg_files_only) {
const int saved_errno = errno;