diff options
author | Bernd Schubert <bschubert@ddn.com> | 2024-04-02 23:52:18 +0200 |
---|---|---|
committer | GitHub <noreply@github.com> | 2024-04-02 23:52:18 +0200 |
commit | e2df577a7ca0c4b06d9eb36eb79138e34cc03088 (patch) | |
tree | 4cb966aed1451c5462cad20a0e50c2c4e9b60f8c /example | |
parent | 3e283a1bcbc4ec78fb45c4a8b3f683b8e3082c53 (diff) | |
download | libfuse-e2df577a7ca0c4b06d9eb36eb79138e34cc03088.tar.gz |
Add more documentation for FUSE_CAP_EXPORT_SUPPORT (#917)
Add more documentation for FUSE_CAP_EXPORT_SUPPORT
Also remove the flag from passthrough_ll.c and passthrough_hp.cc
as these implementations do _not_ handle that flag. They just
cast fuse_ino_t to an inode and cause a heap buffer overflow
for unknown objects (simplest reproducer are the examples
in "man 2 open_by_handle_at", but to unmount/mount the file
system after name_to_handle_at and before open_by_handle_at).
Fixes https://github.com/libfuse/libfuse/issues/838
---------
Co-authored-by: Nikolaus Rath <Nikolaus@rath.org>
Diffstat (limited to 'example')
-rw-r--r-- | example/passthrough_hp.cc | 3 | ||||
-rw-r--r-- | example/passthrough_ll.c | 3 |
2 files changed, 0 insertions, 6 deletions
diff --git a/example/passthrough_hp.cc b/example/passthrough_hp.cc index 7f83a7b..7c1dadf 100644 --- a/example/passthrough_hp.cc +++ b/example/passthrough_hp.cc @@ -190,9 +190,6 @@ static int get_fs_fd(fuse_ino_t ino) { static void sfs_init(void *userdata, fuse_conn_info *conn) { (void)userdata; - if (conn->capable & FUSE_CAP_EXPORT_SUPPORT) - conn->want |= FUSE_CAP_EXPORT_SUPPORT; - if (fs.timeout && conn->capable & FUSE_CAP_WRITEBACK_CACHE) conn->want |= FUSE_CAP_WRITEBACK_CACHE; diff --git a/example/passthrough_ll.c b/example/passthrough_ll.c index 46cc8e0..4a597f2 100644 --- a/example/passthrough_ll.c +++ b/example/passthrough_ll.c @@ -170,9 +170,6 @@ static void lo_init(void *userdata, { struct lo_data *lo = (struct lo_data*) userdata; - if(conn->capable & FUSE_CAP_EXPORT_SUPPORT) - conn->want |= FUSE_CAP_EXPORT_SUPPORT; - if (lo->writeback && conn->capable & FUSE_CAP_WRITEBACK_CACHE) { if (lo->debug) |