Commit graph

180 commits

Author SHA1 Message Date
Antonio SJ Musumeci
634a1489ea fuse.cpp 2025-12-15 13:56:20 -06:00
Antonio SJ Musumeci
b00e7045a2 fuse.cpp 2025-12-15 13:56:16 -06:00
Antonio SJ Musumeci
cbeefba9f9 fuse.cpp 2025-12-15 13:56:16 -06:00
Antonio SJ Musumeci
613c27d13d fuse.cpp 2025-12-15 13:55:15 -06:00
Antonio SJ Musumeci
b270971459 fuse.cpp 2025-12-15 13:45:10 -06:00
Antonio SJ Musumeci
550bf2d212 fuse.cpp 2025-12-15 13:45:07 -06:00
Antonio SJ Musumeci
2bf47f0373 fuse.cpp 2025-12-15 13:43:48 -06:00
Antonio SJ Musumeci
2151cbb5f6 fuse.cpp 2025-12-15 13:43:46 -06:00
Antonio SJ Musumeci
9f5798a97b fuse.cpp 2025-12-15 13:42:10 -06:00
Antonio SJ Musumeci
43af074c16 fuse.cpp 2025-12-15 13:41:31 -06:00
Antonio SJ Musumeci
e78f669f66 fuse.cpp 2025-12-15 11:47:33 -06:00
Antonio SJ Musumeci
760f63d72c fuse.cpp 2025-12-15 11:31:00 -06:00
Antonio SJ Musumeci
a80b4902d1 fuse.cpp 2025-12-15 11:30:58 -06:00
Antonio SJ Musumeci
80af151788 fuse.cpp 2025-12-15 11:21:15 -06:00
Antonio SJ Musumeci
6fda2bea4a fuse.cpp 2025-12-15 11:19:24 -06:00
Antonio SJ Musumeci
82ffad4feb fuse.cpp 2025-12-15 10:59:44 -06:00
Antonio SJ Musumeci
2569609740 fuse.cpp 2025-12-15 10:44:06 -06:00
Antonio SJ Musumeci
c3bab267ac fuse.cpp 2025-12-15 10:43:26 -06:00
Antonio SJ Musumeci
5819c21415 fuse.cpp 2025-12-15 10:42:48 -06:00
Antonio SJ Musumeci
499c4cb1ef fuse.cpp 2025-12-15 10:42:22 -06:00
Antonio SJ Musumeci
4380acb512 fuse.cpp 2025-12-15 10:00:22 -06:00
Antonio SJ Musumeci
385b1c5421 fuse.cpp 2025-12-15 09:55:39 -06:00
Antonio SJ Musumeci
8984052ccf fuse.cpp 2025-12-15 09:54:18 -06:00
Antonio SJ Musumeci
85c263b030 fuse.cpp 2025-12-15 00:53:44 -06:00
Antonio SJ Musumeci
a3725ca129 fuse.cpp 2025-12-15 00:53:39 -06:00
trapexit
4d1760cb69
Rework new lup policy to work on 32bit systems (#1603)
__int128 is not available on 32bit platforms. Moved to extended
precision floats.
2025-12-14 14:56:34 -06:00
trapexit
9b046d9a34
Rework credential handling to support chroot & idmap (#1595)
Some checks are pending
mkdocs / deploy (push) Waiting to run
Run in an elevated credential mode (root) and let the kernel manage
entitlements. Will result in slightly different behavior but should
not be noticed by most.
2025-12-05 21:03:48 -06:00
Emanuel Haupt
d8918458bf
libfuse: fix narrowing conversion of nsec fields on i386 (#1593)
Some checks failed
mkdocs / deploy (push) Has been cancelled
On 32 bit platforms tv_nsec is a signed long while the FUSE setattr
arguments provide nanoseconds as uint32_t. C++17 treats uint32_t -> long
in a brace initializer as a narrowing conversion and rejects it on ILP32
targets. This surfaced when building on FreeBSD i386 with clang 19 where
the compiler refused the list initialization of struct timespec.

Add explicit static_cast<long>() for the nsec fields to make the
conversion intentional and portable. This avoids build failures on i386
while leaving 64 bit builds unchanged.
2025-11-29 10:45:20 -06:00
trapexit
78551049d5
Add ability to passthrough 'nofail' mount option (#1567)
Some checks are pending
CodeQL / Analyze (push) Waiting to run
mkdocs / deploy (push) Waiting to run
2025-11-06 11:05:19 -06:00
trapexit
41b65ae9e8 Misc cleanup for FreeBSD and clang (#1560)
Some checks failed
CodeQL / Analyze (push) Has been cancelled
mkdocs / deploy (push) Has been cancelled
2025-11-02 10:49:22 -06:00
trapexit
2412ae7316
Further tweaks to config parsing and error reporting (#1559)
* Further tweaks to config parsing and error reporting

* Fix static builds
2025-11-01 15:20:30 -05:00
trapexit
37f10888a9
Add more debugging options to makefiles and cleanup (#1556)
Some checks failed
CodeQL / Analyze (push) Has been cancelled
mkdocs / deploy (push) Has been cancelled
2025-10-29 22:42:42 -05:00
trapexit
cfaad60275
Misc updates to arg parsing (#1554)
Some checks failed
CodeQL / Analyze (push) Has been cancelled
mkdocs / deploy (push) Has been cancelled
Ignore "defaults" and add a number of more modern VFS mount switches
2025-10-26 21:05:05 -05:00
trapexit
741128cb23
Fix lack of include for fmt (#1550) 2025-10-24 21:00:15 -05:00
trapexit
727c522fb8
Rework config, centralize fuse config (#1547)
Some checks are pending
CodeQL / Analyze (push) Waiting to run
mkdocs / deploy (push) Waiting to run
2025-10-24 08:20:29 -05:00
trapexit
0371f03def
Rework how fuse request context is handled (#1543)
Some checks are pending
CodeQL / Analyze (push) Waiting to run
mkdocs / deploy (push) Waiting to run
2025-10-12 23:21:36 -05:00
trapexit
d18c273293
Allow setting of passthrough max-stack-depth (#1542)
Some checks failed
CodeQL / Analyze (push) Has been cancelled
mkdocs / deploy (push) Has been cancelled
2025-10-07 21:52:13 -05:00
trapexit
0f24bb29ac
Make allow-idmap optional (default: false) (#1541)
Some checks failed
CodeQL / Analyze (push) Has been cancelled
mkdocs / deploy (push) Has been cancelled
This is just to correct default behavior for now. More investigation
is necessary to properly support idmapping.
2025-10-06 14:46:58 -05:00
trapexit
25b0bc72df
Fix dirent64::namelen calculation (#1538)
Some checks failed
CodeQL / Analyze (push) Has been cancelled
mkdocs / deploy (push) Has been cancelled
Worked fine on my machine where padding seemed to be all zeroed out
but that doesn't appear to be the case elsewhere.

Could try
https://codeberg.org/jbruchon/libjodycode/src/branch/master/dir.c#L92-L110
but needs to be tested.
2025-09-30 11:25:19 -05:00
trapexit
46f85c0f6d
Misc fixes, mostly for FreeBSD (#1536)
Some checks are pending
CodeQL / Analyze (push) Waiting to run
mkdocs / deploy (push) Waiting to run
2025-09-28 23:17:51 -05:00
trapexit
2f3e807e9d
Add getdents based readdir functions for Linux (#1533)
Some checks failed
CodeQL / Analyze (push) Has been cancelled
mkdocs / deploy (push) Has been cancelled
2025-09-23 23:51:21 -05:00
trapexit
ca59ae53a5
idmap mount support (#1523)
Some checks failed
CodeQL / Analyze (push) Has been cancelled
mkdocs / deploy (push) Has been cancelled
* Add idmap mount support

* Further replacement of std::filesystem::path to fs::path

* Update docs regarding idmap support
2025-09-18 00:07:28 -05:00
trapexit
8c649d33ee
Start using std::filesystem::path for fusepath (#1522)
Some checks are pending
CodeQL / Analyze (push) Waiting to run
mkdocs / deploy (push) Waiting to run
2025-09-17 22:51:16 -05:00
trapexit
071af2e516
More build process updates (#1516)
Some checks failed
CodeQL / Analyze (push) Has been cancelled
mkdocs / deploy (push) Has been cancelled
2025-08-29 07:51:05 -05:00
trapexit
b18aba86b6
Build improvements (#1501)
Some checks failed
CodeQL / Analyze (push) Has been cancelled
mkdocs / deploy (push) Has been cancelled
* Remove python dependency
* Remove ecfd
* Improve makefiles
* Make preload.so more 32bit compatible
2025-08-04 23:39:52 -05:00
trapexit
fa851eda3a
Ensure passthrough and keep_cache are mutually exclusive (#1493)
Some checks failed
CodeQL / Analyze (push) Has been cancelled
mkdocs / deploy (push) Has been cancelled
2025-07-06 18:31:47 -05:00
trapexit
f852474073
Update the secondary group cache (#1492)
Some checks are pending
CodeQL / Analyze (push) Waiting to run
mkdocs / deploy (push) Waiting to run
* Use concurrent_flat_map to build a global cache rather than per
thread.
* Create global maintanence thread manager for clearing unused cache
entries.
2025-07-05 17:05:53 -05:00
trapexit
77ef88b04c
Add fsck.mergerfs tool (#1483) 2025-06-23 21:57:55 -05:00
trapexit
23824eaeb4
Misc cleanup
Some checks failed
CodeQL / Analyze (push) Has been cancelled
mkdocs / deploy (push) Has been cancelled
2025-06-06 19:10:19 -05:00
trapexit
e310d24615
Add support for FUSE passthrough
Some checks are pending
CodeQL / Analyze (push) Waiting to run
mkdocs / deploy (push) Waiting to run
2025-06-05 23:47:42 -05:00