aboutsummaryrefslogtreecommitdiffstats
path: root/lib
diff options
context:
space:
mode:
authorBernd Schubert <bschubert@ddn.com>2024-09-19 15:09:04 +0200
committerBernd Schubert <bernd.schubert@fastmail.fm>2024-11-13 16:43:59 +0100
commite2eb1abb105aa52e25fbf8973595ed2b6c64416d (patch)
treebb4acce29b8cbc3c5f08789c22a086d7c72e8fe4 /lib
parent15f5c811239abca80eda2d988be7a9a9848f7c10 (diff)
downloadlibfuse-e2eb1abb105aa52e25fbf8973595ed2b6c64416d.tar.gz
Add FUSE_CAP_NO_EXPORT and use it in passthrough_hp
This should stop some more xfstest test failures.
Diffstat (limited to 'lib')
-rw-r--r--lib/fuse_lowlevel.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/lib/fuse_lowlevel.c b/lib/fuse_lowlevel.c
index 220a263..35dc3ca 100644
--- a/lib/fuse_lowlevel.c
+++ b/lib/fuse_lowlevel.c
@@ -2081,6 +2081,8 @@ void do_init(fuse_req_t req, fuse_ino_t nodeid, const void *inarg)
se->conn.capable |= FUSE_CAP_EXPIRE_ONLY;
if (inargflags & FUSE_PASSTHROUGH)
se->conn.capable |= FUSE_CAP_PASSTHROUGH;
+ if (inargflags & FUSE_NO_EXPORT_SUPPORT)
+ se->conn.capable |= FUSE_CAP_NO_EXPORT_SUPPORT;
} else {
se->conn.max_readahead = 0;
}
@@ -2217,6 +2219,8 @@ void do_init(fuse_req_t req, fuse_ino_t nodeid, const void *inarg)
*/
outarg.max_stack_depth = se->conn.max_backing_stack_depth + 1;
}
+ if (se->conn.want & FUSE_CAP_NO_EXPORT_SUPPORT)
+ outargflags |= FUSE_NO_EXPORT_SUPPORT;
if (inargflags & FUSE_INIT_EXT) {
outargflags |= FUSE_INIT_EXT;