Andrea Mazzoleni
c6951393e8
Exit code and logging invariants for log_fatal and hardware log_error
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
Build / build-musl (push) Waiting to run
CodeQL Advanced / Analyze (c-cpp) (push) Waiting to run
CodeQL Advanced / Analyze (actions) (push) Waiting to run
2026-09-21 17:27:07 +02:00
Andrea Mazzoleni
929ba5cebe
Detect degraded filesystems in device commands and exit with EXIT_DEGRADED
2026-09-19 09:45:47 +02:00
Andrea Mazzoleni
ecb12ee92c
Avoid duplicate fatal stderr output in GUI mode
2026-09-18 10:00:42 +02:00
Andrea Mazzoleni
d92d296bcd
Lock unsafe command-line options after enabling --lock-options
2026-09-18 10:00:41 +02:00
Andrea Mazzoleni
78abc2c7b7
Limit maximum consecutive newlines in uncrustify configuration
2026-09-14 22:33:23 +02:00
Andrea Mazzoleni
db94550cd7
Remove physical offset sorting support and default to directory order
2026-09-07 22:15:45 +02:00
Andrea Mazzoleni
82be7b07b3
Persist reallocated mapping before parity resize in force-realloc sync
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
e1574faa36
Skip self-test on status, locate, read, and test-rewrite commands
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-26 22:55:49 +02:00
Andrea Mazzoleni
dee434f09b
Move exhaustive RAID generation and recovery tests to test command
2026-08-26 16:26:42 +02:00
Andrea Mazzoleni
69a459ee43
Add comprehensive filter combination and directory pruning regression tests in selftest
2026-08-26 16:26:42 +02:00
Andrea Mazzoleni
b60979f293
Add raid_selftest() checks for all RAID modes in the test command
2026-08-25 12:13:21 +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
a89b6f3126
Fix parse_option_size() to reject negative values, ERANGE errors, and suffix multiplication overflow.
2026-08-18 23:33:59 +02:00
Andrea Mazzoleni
f453a72369
Preserve recovery state until a full clean sync completes
2026-08-18 23:33:57 +02:00
Andrea Mazzoleni
349c18a0a8
Sync rejects block ranges and always process full parity
2026-08-18 23:33:57 +02:00
Andrea Mazzoleni
3f0c194a2f
Fix snapshot commit failure propagation to ensure sync exits with error
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
00b4cbafd0
Merge the CLI and Daemon portable interface
2026-08-18 23:33:55 +02:00
Andrea Mazzoleni
d7c6a27c6d
Refactor portable support
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
Andrea Mazzoleni
5c1cf8560a
Secure external tools execution
2026-08-18 23:33:53 +02:00
Andrea Mazzoleni
c724b47189
More coverage support
2026-08-18 23:33:52 +02:00
Andrea Mazzoleni
76ce1cbb16
Add regression check for Btrfs
...
It requires root privileges as it has to create Btrfs filesystems.
2026-08-18 23:33:52 +02:00
Andrea Mazzoleni
54602422dd
Change commenting style
2026-08-18 23:33:52 +02:00
Andrea Mazzoleni
1227a8c45e
Sync no longer requires clearing the past hash
...
It no longer assumes past hashes are valid if even a single unsynced
block exists, which indicates a previous sync was interrupted.
While this makes syncing slower after an interruption, it preserves the
past hash in the content file, enabling a more reliable fix if a
disk fails following an incomplete sync.
This ensures the --import option remains functional even after an
interrupted sync.
2026-08-18 23:33:52 +02:00
Andrea Mazzoleni
2fc38017a8
Add Btrfs snapshot support for atomic sync and recovery consistency
2026-08-18 23:33:52 +02:00
Andrea Mazzoleni
3f280486bd
Fix regression with both touch and threshold active at the same time
2026-07-19 17:55:29 +02:00
Andrea Mazzoleni
e088672ccd
Fix false file modification report after threshold-aborted sync
2026-07-06 15:34:22 +02:00
Andrea Mazzoleni
bf2657b76a
Avoid saving the content file in touch if nothing changed
2026-06-10 14:49:47 +02:00
Andrea Mazzoleni
96e20b3912
Switch esc_tag and path formatting to a contiguous thread-local circular pool to eliminate stack bloat
Build / build-mac (push) Has been cancelled
Build / build-linux (push) Has been cancelled
Build / build-win (push) Has been cancelled
CodeQL Advanced / Analyze (c-cpp) (push) Has been cancelled
CodeQL Advanced / Analyze (actions) (push) Has been cancelled
2026-05-29 11:22:04 +02:00
Andrea Mazzoleni
23b4cc5fa0
Make the devices commands to fail if unsupported in the platform
2026-05-21 16:08:03 +02:00
Andrea Mazzoleni
81995ccc8d
Use eaccess() instead of access()
2026-05-21 16:08:03 +02:00
Andrea Mazzoleni
1f0136f2e5
Avoid potential size overflow in 32 bit system in option size specification
2026-05-21 16:08:02 +02:00
Andrea Mazzoleni
e17bb92f69
Avoid floating point precision errors in -p option
2026-05-21 16:08:02 +02:00
Andrea Mazzoleni
ecce8b136c
Drop the test-run option from the official binary
2026-05-21 16:08:02 +02:00
Andrea Mazzoleni
34b6a47e5e
Fixed --gui-threshold logic
Build / build-mac (push) Has been cancelled
Build / build-linux (push) Has been cancelled
Build / build-win (push) Has been cancelled
CodeQL Advanced / Analyze (c-cpp) (push) Has been cancelled
CodeQL Advanced / Analyze (actions) (push) Has been cancelled
2026-04-20 00:42:48 +02:00
Andrea Mazzoleni
4ba6ee874c
Log the modification time of the content file in probe and other commmands
2026-04-09 17:56:50 +02:00
Andrea Mazzoleni
323c943afb
Use exit code 2 if sync is aborted due to threshold limits
2026-04-09 17:56:50 +02:00
Andrea Mazzoleni
0d0431a907
Simpler Copyright string
2026-04-09 17:56:49 +02:00
Christoph Hellwig
60269a1236
Use SPDX ( https://spdx.dev/ ) tags to identify the license used for each
...
file, and a COPYING file explaining the licensing scheme, with the actual
licenses listed in the LICENSES/ directory.
2026-04-02 16:01:37 +02:00
Andrea Mazzoleni
80bb5af22e
As option argument never accept an empty string for the 0 value
2026-03-19 15:07:43 +01:00
Andrea Mazzoleni
8ee24aa26c
Avoid undefined behaviour parsing double
2026-03-19 12:59:03 +01:00
Andrea Mazzoleni
1d2ab288d1
Fix wrong variable use. No effect but also not correct.
2026-03-19 12:55:01 +01:00
Andrea Mazzoleni
189029749e
Configuration is now required also for smart and probe commands
Build / build-mac (push) Has been cancelled
Build / build-linux (push) Has been cancelled
Build / build-win (push) Has been cancelled
CodeQL Advanced / Analyze (c-cpp) (push) Has been cancelled
CodeQL Advanced / Analyze (actions) (push) Has been cancelled
2026-03-12 16:19:40 +01:00
Andrea Mazzoleni
c8f219e6e8
Comment why read doesn't refersh the disks info
2026-03-11 16:05:39 +01:00
Andrea Mazzoleni
e48cdacce5
New option --gui-touch-before
2026-03-10 23:43:21 +01:00
Andrea Mazzoleni
27c44ce56e
Quote tags in the logs
Build / build-mac (push) Waiting to run
Build / build-linux (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-03-02 17:57:29 +01:00