diff options
author | Alik Aslanyan <inline0@pm.me> | 2025-09-09 23:35:40 +0400 |
---|---|---|
committer | Bernd Schubert <bernd@bsbernd.com> | 2025-09-19 00:14:45 +0200 |
commit | 52a633a5d4435f1965fc8d44cf9a705e6679f793 (patch) | |
tree | e524a3d64550dd45f6d276076ad6b898b53503a1 /example/README.compile | |
parent | 6e4557c57c4ce63de4042f77dcbf58627d13a59b (diff) | |
download | libfuse-52a633a5d4435f1965fc8d44cf9a705e6679f793.tar.gz |
fuse_lowlevel.c: allow passing ops as NULL
During testing of LACT using various sanitizers issue with libfuse.so
leaking memory and reading uninitialized memory was uncovered. While
this was due to ABI misusage on the side of fuser (Rust wrapper for
libfuse.so), we now allow creating a no-op session by passing ops as
NULL.
fuser and other libfuse users is using fuse_session_new() with
NULL struct fuse_lowlevel_ops *op and op_size=0. This resulted
in a warning, but otherwise succeeded. The resulting fuse_session
is just passed to fuse_session_mount() so that libfuse could
do the actual mount. Fuse kernel request handling is not done
through libfuse but their own layer.
Edit by Bernd:
- Update the commit message
- moved using null_ops to fuse_session_new_30() as that is
actually called by the external fuse_session_new().
- forbidding NULL struct fuse_lowlevel_ops *op and 0 op_size
in fuse_session_new_versioned()
- various other NULL ptr checks in fuse_session_new() that
now result in failure.
Signed-off-by: Alik Aslanyan <inline0@pm.me>
Signed-off-by: Bernd Schubert <bernd@bsbernd.com>
Diffstat (limited to 'example/README.compile')
0 files changed, 0 insertions, 0 deletions