aboutsummaryrefslogtreecommitdiffstats
path: root/lib/fuse_signals.c
diff options
context:
space:
mode:
authorBernd Schubert <bschubert@ddn.com>2025-04-16 00:24:42 +0200
committerBernd Schubert <bernd@bsbernd.com>2025-04-16 16:14:58 +0200
commit08ac8aee19938ce86d45c5776c013bc4d9303750 (patch)
tree4ae0d369d7238dec38493e0f7bdf10fcdd709d95 /lib/fuse_signals.c
parentdb59dd41ab4ed2ca89dae32aa6f106f82bb1056e (diff)
downloadlibfuse-08ac8aee19938ce86d45c5776c013bc4d9303750.tar.gz
conn: prevent duplicate flag conversion in high-level interface
The high-level interface triggers flag conversion twice: once in the high-level init and once in the low-level init. This caused false "both 'want' and 'want_ext' are set" errors when using fuse_set_feature_flag() or fuse_unset_feature_flag(). The existing check for duplicate conversion only worked when 32-bit flags were set directly. When using the preferred flag manipulation functions, conn->want and the lower 32 bits of conn->want_ext would differ, triggering the error. Fix this by synchronizing conn->want with the lower 32 bits of conn->want_ext after conversion, ensuring consistent state for subsequent calls. Closes: https://github.com/libfuse/libfuse/issues/1171 Signed-off-by: Bernd Schubert <bschubert@ddn.com>
Diffstat (limited to 'lib/fuse_signals.c')
0 files changed, 0 insertions, 0 deletions