Commit graph

1022 commits

Author SHA1 Message Date
Andrea Mazzoleni
6c8bee76fa Continue snapshot renames across per-disk failures 2026-08-18 23:33:57 +02:00
Andrea Mazzoleni
7eaec5ca70 Fix thermal device list cleanup on early exits 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
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
cd4e06a215 Fix Bcachefs snapshot renaming to use the atomic rename syscall 2026-08-18 23:33:57 +02:00
Andrea Mazzoleni
1c3f695d5a Isolate child process group with setpgid to prevent double signal delivery 2026-08-18 23:33:57 +02:00
Andrea Mazzoleni
4defb748e8 Document why invalid GUID validation in fssnapshot_create returns immediately without WMI cleanup 2026-08-18 23:33:57 +02:00
Andrea Mazzoleni
eebb3943e5 Protect rate limiter state updates with a mutex to prevent data races 2026-08-18 23:33:57 +02:00
Andrea Mazzoleni
b4a694bb10 Align Windows rotational device detection fallback with Unix by assuming rotational when unknown 2026-08-18 23:33:57 +02:00
Andrea Mazzoleni
3e4f79180e Fix potential division by zero in nalloc_nofail when size is zero 2026-08-18 23:33:57 +02:00
Andrea Mazzoleni
74a62a8d82 Change the speed report link 2026-08-18 23:33:57 +02:00
Andrea Mazzoleni
86a9064a68 Add S_ISBLK checks to devdereference_btrfs and devdereference_bcachefs 2026-08-18 23:33:57 +02:00
Andrea Mazzoleni
c4d509438f Add devlabel_dev to read volume labels from /dev/disk/by-label 2026-08-18 23:33:57 +02:00
Andrea Mazzoleni
f818d9426b Remove libblkid support and build dependency 2026-08-18 23:33:57 +02:00
Andrea Mazzoleni
413e46251e Add FS_IOC_GETFSLABEL ioctl support for reading filesystem labels in Linux 2026-08-18 23:33:57 +02:00
Andrea Mazzoleni
97b13557fe Reset all SMART attribute fields (raw, norm, worst, thresh) to SMART_UNASSIGNED when ignored 2026-08-18 23:33:56 +02:00
Andrea Mazzoleni
3a3152a36f Comment about syshex 2026-08-18 23:33:56 +02:00
Andrea Mazzoleni
6491de0eaa Fail devdereference_zfs and devdereference_bcachefs if stat or S_ISBLK checks fail on any device 2026-08-18 23:33:56 +02:00
Andrea Mazzoleni
f518a1ba18 Return error in devdereference_bcachefs if no devices are found 2026-08-18 23:33:56 +02:00
Andrea Mazzoleni
8562e4f28e Free devlist allocations on error in devdereference_btrfs 2026-08-18 23:33:56 +02:00
Andrea Mazzoleni
c4511e28bc Fallback to rotational in devpower if sysfs attribute is unknown 2026-08-18 23:33:56 +02:00
Andrea Mazzoleni
0ca7c65049 Support filesystems with invalid inode numbers on individual files 2026-08-18 23:33:56 +02:00
Andrea Mazzoleni
3878c0e2e6 Silence clang static analyzer warnings 2026-08-18 23:33:56 +02:00
Andrea Mazzoleni
05884d7aa0 Fix binary varint decoders to reject values overflowing uint32_t/uint64_t declared widths 2026-08-18 23:33:56 +02:00
Andrea Mazzoleni
02413b756c Validate the product/model returned by the Windows driver 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
9a2ea26a62 Fix build in different directory 2026-08-18 23:33:56 +02:00
Andrea Mazzoleni
4ebdfe8c8f Defer deallocation of modified files to phase 2 to prevent copy-detection races 2026-08-18 23:33:56 +02:00
Andrea Mazzoleni
821756371c Block signal delivery across fork to prevent signal forwarding race condition in main.c 2026-08-18 23:33:56 +02:00
Andrea Mazzoleni
9621655a10 Cap maximum rate-limiter credit accumulation to 10 seconds to prevent huge post-pause bursts 2026-08-18 23:33:56 +02:00
Andrea Mazzoleni
a7a8ac48c3 Use eaccess instead of access in unixapp.c for consistent effective privilege checking 2026-08-18 23:33:56 +02:00
Andrea Mazzoleni
0051c58231 Validate WMI-returned VSS snapshot GUID format in mingwapp.c to mitigate potential command injection 2026-08-18 23:33:56 +02:00
Andrea Mazzoleni
7aff21e3a9 Fix wide-character buffer size parameters in mingwapp.c snwprintf calls to prevent stack buffer overflow 2026-08-18 23:33:56 +02:00
Andrea Mazzoleni
6ed860eac3 Abort execution with a fatal error if smartctl options exceed maximum argument limit 2026-08-18 23:33:56 +02:00
Andrea Mazzoleni
d49a45c43f Document the concurrency boundaries of worker threads 2026-08-18 23:33:56 +02:00
Andrea Mazzoleni
2bf0fcf97c Move string functions to new str.h and str.c files 2026-08-18 23:33:56 +02:00
Andrea Mazzoleni
4da1ab072b Move safe memory helper functions to dedicated memory.c and memory.h 2026-08-18 23:33:56 +02:00
Andrea Mazzoleni
19297d6c3d Fail if the PowerShell command is too long 2026-08-18 23:33:56 +02:00
Andrea Mazzoleni
ad6ddafd05 Fix documentation of windows_guid_is_valid 2026-08-18 23:33:56 +02:00
Andrea Mazzoleni
ebe2bbe76c Document handle_close failures 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
ff0a4a444a Fix leak on error in argutf8 2026-08-18 23:33:55 +02:00
Andrea Mazzoleni
f17b502652 Avoid floating point underflow in thermal computation 2026-08-18 23:33:55 +02:00
Andrea Mazzoleni
bbcdb72a9f Introduce nalloc_nofail 2026-08-18 23:33:55 +02:00
Andrea Mazzoleni
8de159289a Fix strtrim to correctly trim strings containing only whitespace 2026-08-18 23:33:55 +02:00
Andrea Mazzoleni
760e0660c8 Prevent integer wrap-around when checking string length in sgetbs 2026-08-18 23:33:55 +02:00
Andrea Mazzoleni
f627f3be80 Run PowerShell commands safely via base64 encoded strings 2026-08-18 23:33:55 +02:00