Andrea Mazzoleni
|
136f648cb5
|
Validate persistent state before content serialization
|
2026-08-31 10:39:17 +02:00 |
|
Andrea Mazzoleni
|
395291bd9a
|
Implement crash-safe --force-full sync with persistent BLOCK_STATE_REBUILD
|
2026-08-31 10:39:17 +02:00 |
|
Andrea Mazzoleni
|
457c5b7ec2
|
Reject unbounded mapping counts and duplicate disk mappings in content decoding
|
2026-08-31 10:39:17 +02:00 |
|
Andrea Mazzoleni
|
3571052504
|
Reject duplicate or misplaced blockmax records in content decoding
|
2026-08-31 10:39:17 +02:00 |
|
Andrea Mazzoleni
|
0277da9178
|
Validate serialized info timestamps in content file parser to prevent 64-bit overflow
|
2026-08-31 10:39:17 +02:00 |
|
Andrea Mazzoleni
|
c7ab4e9db9
|
Abort on duplicated info records when reading content
|
2026-08-31 10:39:09 +02:00 |
|
Andrea Mazzoleni
|
c5f6d3c574
|
Abort with internal inconsistency on duplicate or misplaced hash and prevhash records in content file
|
2026-08-27 21:23:56 +02:00 |
|
Andrea Mazzoleni
|
b5cc5eb007
|
Fix integer overflow in deleted block count byte size conversion in content parser
|
2026-08-27 17:38:18 +02:00 |
|
Andrea Mazzoleni
|
7930ff82df
|
Validate serialized disk mapping positions to prevent integer overflow and out-of-bounds access
Build / build-mac (push) Waiting to run
Build / build-linux (push) Waiting to run
Build / build-arm32 (push) Waiting to run
Build / build-win (push) Waiting to run
Build / build-freebsd (push) Waiting to run
CodeQL Advanced / Analyze (c-cpp) (push) Waiting to run
CodeQL Advanced / Analyze (actions) (push) Waiting to run
|
2026-08-27 16:29:34 +02:00 |
|
Andrea Mazzoleni
|
237c9f0497
|
Enforce BLOCK_MAX limits on both 32-bit and 64-bit builds
|
2026-08-27 16:29:34 +02:00 |
|
Andrea Mazzoleni
|
4aef405259
|
Validate serialized sub pathnames in content files to prevent path traversal
|
2026-08-26 22:55:49 +02:00 |
|
Andrea Mazzoleni
|
95ac8d7b51
|
Validate serialized nanoseconds range when reading content files
|
2026-08-26 22:35:22 +02:00 |
|
Andrea Mazzoleni
|
e58eb16768
|
Avoid info memory allocation for zero runs and bound blockmax in content decoding
|
2026-08-26 22:35:22 +02:00 |
|
Andrea Mazzoleni
|
31661e13bd
|
Abort with internal inconsistency on duplicate or misplaced blocksize and hashsize records in content file
|
2026-08-26 21:19:59 +02:00 |
|
Andrea Mazzoleni
|
33d96adbce
|
Validate that the total disk buffer memory does not exceed 256 MiB
|
2026-08-26 21:11:46 +02:00 |
|
Andrea Mazzoleni
|
65e1eac061
|
Fix int64_t overflow on file size when decoding content file
|
2026-08-26 21:11:46 +02:00 |
|
Andrea Mazzoleni
|
c7b8068e36
|
Fix 32-bit integer truncation in block metadata allocations and file_block
|
2026-08-26 21:11:46 +02:00 |
|
Andrea Mazzoleni
|
78e87549ca
|
Improve directory scan filesystem boundary detection using statx() for mount and subvolume IDs
|
2026-08-26 09:21:24 +02:00 |
|
Andrea Mazzoleni
|
6583897fcf
|
Reserve snapraid- prefix for native ZFS snapshots and introduce fssnapshot_path
|
2026-08-26 09:21:24 +02:00 |
|
Andrea Mazzoleni
|
ebb199de3d
|
Fix snapshot path resolution and aliased paths by storing sub_dir in fssnapshot_struct
|
2026-08-26 09:21:24 +02:00 |
|
Andrea Mazzoleni
|
abcdd688dd
|
Improve snapshot fallback warning messages to inform users of reduced recovery capability if files changed since the last sync
|
2026-08-26 09:21:24 +02:00 |
|
Andrea Mazzoleni
|
fd65dbd9ea
|
Fix undefined behavior by making TommyDS foreach callback signatures take void*
Build / build-mac (push) Waiting to run
Build / build-linux (push) Waiting to run
Build / build-arm32 (push) Waiting to run
Build / build-win (push) Waiting to run
CodeQL Advanced / Analyze (c-cpp) (push) Waiting to run
CodeQL Advanced / Analyze (actions) (push) Waiting to run
|
2026-08-24 23:03:00 +02:00 |
|
Andrea Mazzoleni
|
15831064a1
|
Extend parent directory fsync after content file rename to all platforms
|
2026-08-18 23:33:59 +02:00 |
|
Andrea Mazzoleni
|
b959f0056e
|
Quiesce read-ahead before thermal spin-down
|
2026-08-18 23:33:58 +02:00 |
|
Andrea Mazzoleni
|
ef6fa54ee2
|
Fix parity writer error propagation in io_flush and abort sync on parity write failures
|
2026-08-18 23:33:58 +02:00 |
|
Andrea Mazzoleni
|
fa0a77f84c
|
Add missing esc_tag() in status and parity split log tags
|
2026-08-18 23:33:58 +02:00 |
|
Andrea Mazzoleni
|
d4ae953137
|
Fix sopen_write call signature in HAVE_MT_WRITE block by adding stream flags
|
2026-08-18 23:33:58 +02:00 |
|
Andrea Mazzoleni
|
9ef9155ccf
|
Enforce content file CRC as terminal by rejecting trailing data and terminating parse loop
|
2026-08-18 23:33:58 +02:00 |
|
Andrea Mazzoleni
|
9c6e3952c5
|
Remove unused MetroHash implementation and references
|
2026-08-18 23:33:58 +02:00 |
|
Andrea Mazzoleni
|
8c9a91c93b
|
Improve error message when content files are damaged or truncated
|
2026-08-18 23:33:58 +02:00 |
|
Andrea Mazzoleni
|
f453a72369
|
Preserve recovery state until a full clean sync completes
|
2026-08-18 23:33:57 +02:00 |
|
Andrea Mazzoleni
|
9255157519
|
Fix per-file block index overflow beyond 32 bits
|
2026-08-18 23:33:57 +02:00 |
|
Andrea Mazzoleni
|
6c8bee76fa
|
Continue snapshot renames across per-disk failures
|
2026-08-18 23:33:57 +02:00 |
|
Andrea Mazzoleni
|
3d23853de7
|
Log explicit warning when missing snapshots fall back to live filesystem
|
2026-08-18 23:33:57 +02:00 |
|
Andrea Mazzoleni
|
7b7a2d5d00
|
Fail sync if snapshot setup fails on a supported filesystem
|
2026-08-18 23:33:57 +02:00 |
|
Andrea Mazzoleni
|
661e539f45
|
Defer pending snapshot promotion until parity sync
|
2026-08-18 23:33:57 +02:00 |
|
Andrea Mazzoleni
|
0ca7c65049
|
Support filesystems with invalid inode numbers on individual files
|
2026-08-18 23:33:56 +02:00 |
|
Andrea Mazzoleni
|
c79f82bc99
|
Update to the new RAID library
|
2026-08-18 23:33:56 +02:00 |
|
Andrea Mazzoleni
|
1b2f619852
|
Fix typo in monothread implementation
|
2026-08-18 23:33:56 +02:00 |
|
Andrea Mazzoleni
|
3a8c5917fd
|
Fix leak on error in state_write
|
2026-08-18 23:33:56 +02:00 |
|
Andrea Mazzoleni
|
3484965b89
|
Align data disk UUID validation and write logic with parity splits using content_uuid
|
2026-08-18 23:33:55 +02:00 |
|
Andrea Mazzoleni
|
452adbd8d9
|
Optimize redundant devuuid() calls by storing content file UUIDs in a dedicated field
|
2026-08-18 23:33:55 +02:00 |
|
Andrea Mazzoleni
|
133e527643
|
Add support for specifying case-insensitive SMART attribute names in the smartignore option
|
2026-08-18 23:33:55 +02:00 |
|
Andrea Mazzoleni
|
00b4cbafd0
|
Merge the CLI and Daemon portable interface
|
2026-08-18 23:33:55 +02:00 |
|
Andrea Mazzoleni
|
52f7c2184f
|
Add support for custom smartctl info options using a [info: ...] tag
|
2026-08-18 23:33:54 +02:00 |
|
Andrea Mazzoleni
|
d7c6a27c6d
|
Refactor portable support
|
2026-08-18 23:33:54 +02:00 |
|
Andrea Mazzoleni
|
bb401e2e3f
|
Rename randomize to os_randomize
|
2026-08-18 23:33:54 +02:00 |
|
Andrea Mazzoleni
|
f40b2decdb
|
Further conversions from 32 to 64 bits
|
2026-08-18 23:33:54 +02:00 |
|
Andrea Mazzoleni
|
bbd3c23cd2
|
Migrate block_off_t to 64-bit with updated CLI parsing, VLQ serialization, and format specifiers
|
2026-08-18 23:33:54 +02:00 |
|
Andrea Mazzoleni
|
87313c2bfd
|
Delete snapshot links in Windows
|
2026-08-18 23:33:53 +02:00 |
|