Antonio SJ Musumeci
|
a78aef36e0
|
Additional check for ENOTCONN on mount
|
1 week ago |
Antonio SJ Musumeci
|
0d05523dfd
|
Move maintainence thread func take u64 rather than int
signed rollover is UB
|
1 week ago |
Antonio SJ Musumeci
|
0cfab60f37
|
replace raw C-strings with std::string in converted libfuse files
util/mount.mergerfs.cpp:
- Remove xstrdup/xrealloc wrappers entirely
- Convert type, source, options, command, setuid to std::string
- Replace add_arg() pointer-rewriting with shell_quote() returning std::string
- Replace add_option() with simple std::string += concatenation
- Fix const_cast UB on string literal assignment
lib/helper.cpp:
- Convert add_default_subtype local subtype_opt: malloc+snprintf+free -> std::string construction
lib/mount_generic.h:
- Convert fuse_mount_sys locals source/type: malloc+strcpy+strcat -> std::string
- Remove 4 unnecessary free() calls (RAII cleanup)
- .c_str() at mount() and fuse_mnt_add_mount() boundaries
lib/mount_util.h:
- Rewrite fuse_mnt_resolve_path internals using std::string: rfind/substr
instead of manual pointer arithmetic, strrchr, strlen chains
|
1 week ago |
Antonio SJ Musumeci
|
21966ade97
|
Convert vendored/libfuse C sources to C++17
Convert all C source files in vendored/libfuse/ to C++17:
- lib/crc32b.c -> crc32b.cpp (const void* cast)
- lib/fuse_opt.c -> fuse_opt.cpp (designated init, void* arithmetic)
- lib/fuse_signals.c -> fuse_signals.cpp
- lib/helper.c -> helper.cpp (void* data cast)
- lib/mount.c -> mount.cpp (thin wrapper)
- lib/mount_generic.c -> mount_generic.h (static inline, #pragma once)
- lib/mount_bsd.c -> mount_bsd.h (static inline, #pragma once)
- lib/mount_util.c -> mount_util.h (static inline, #pragma once)
- util/fusermount.c -> fusermount.cpp
- util/mount.mergerfs.c -> mount.mergerfs.cpp
Key changes:
- Replace C99 designated initializer in fuse_opt_parse with field-by-field init
- Fix void* pointer arithmetic via char* base + offset pattern
- All C-style (T*)voidptr casts replaced with static_cast/reinterpret_cast
- Remove redundant #define _GNU_SOURCE (already in FUSE_FLAGS)
- Wrap __clone2 declaration in extern "C" for ia64 path
- Update Makefile: empty SRC_C, build utils with $(CXX) instead of $(CC)
- Remove stale .c files now replaced by .cpp/.h counterparts
All binaries build cleanly: mergerfs, mergerfs-fusermount, mount.mergerfs
|
1 week ago |
Antonio SJ Musumeci
|
96eb51eecb
|
Move fuse_session to C++ and make exit flag atomic
|
1 week ago |
Antonio SJ Musumeci
|
881147daa2
|
Fix null ptr handling issue in ioctl processing
|
1 week ago |
Antonio SJ Musumeci
|
3099b15db1
|
More aggressive error handing with pagesize queries
|
2 weeks ago |
Antonio SJ Musumeci
|
07b1e6bdba
|
Auto-commit fuse_msgbuf.cpp
|
2 weeks ago |
Antonio SJ Musumeci
|
7763c7384a
|
Use fatal::abort() rather than assert in places
|
2 weeks ago |
Antonio SJ Musumeci
|
61365d226d
|
Move scope_guard to vendored/
|
2 weeks ago |
Antonio SJ Musumeci
|
076e359891
|
Improve thread pool
|
2 weeks ago |
Antonio SJ Musumeci
|
164b7f73c9
|
Misc fixes and improvements to thread pool
|
3 weeks ago |
Antonio SJ Musumeci
|
e5d897f3dc
|
Ensure zero initialized timeouts structs
|
3 weeks ago |
Antonio SJ Musumeci
|
1b1e14ca29
|
Remove dead branch in fuse_reply_data
|
3 weeks ago |
Antonio SJ Musumeci
|
82b89aa099
|
Change session->exited to sig_atomic_t
|
3 weeks ago |
Antonio SJ Musumeci
|
aa91e1b2ba
|
Initialize stat buffer and add stat call in fuse_mount_sys
|
3 weeks ago |
Antonio SJ Musumeci
|
82e81afcdc
|
Add NULL check for cmsg in receive_fd to prevent segfault
|
3 weeks ago |
Antonio SJ Musumeci
|
5a9a17afcb
|
fix objpool: add size tracking, improve allocation matching; fix msgbuf: clear pool on size change
|
3 weeks ago |
Antonio SJ Musumeci
|
6a6aa054cd
|
Add support for Arch, btw
|
2 weeks ago |
Antonio SJ Musumeci
|
04939bbe72
|
No longer explicitly error out on broken mount point
If ENOTCONN (broken FUSE mount) umount first and continue to mount.
|
3 weeks ago |
Antonio SJ Musumeci
|
53c5a2cf1e
|
Move fmtlib to vendored and upgrade to 12.1.0
|
4 weeks ago |
Antonio SJ Musumeci
|
eb8074ed9a
|
Update vendored/nonstd to latest and fix API usage
|
4 weeks ago |
Antonio SJ Musumeci
|
38c19df95a
|
Update vendored/boost to 1.90.0
|
4 weeks ago |
Antonio SJ Musumeci
|
b1228f11bd
|
Update vendored/acutest to latest master
|
4 weeks ago |
Antonio SJ Musumeci
|
cfafafd7ff
|
Update vendored/CLI11 to v2.6.2
|
4 weeks ago |
Antonio SJ Musumeci
|
c8ce82ce54
|
Update vendored/subprocess to v2.5
|
4 weeks ago |
Antonio SJ Musumeci
|
05c3d97368
|
Update vendored/rapidhash to v3
|
4 weeks ago |
Antonio SJ Musumeci
|
8f1ef59770
|
Move 3rd party libraries to "vendored" directory
|
4 weeks ago |