Commit graph

2370 commits

Author SHA1 Message Date
Andrea Mazzoleni
b84e6828ff Support filesystems with invalid inode numbers on individual files 2026-08-04 09:48:03 +02:00
Andrea Mazzoleni
204daf02b0 Silence clang static analyzer warnings 2026-08-04 09:48:03 +02:00
Andrea Mazzoleni
1d3ec402b9 Add bounded retry with exponential backoff for ERROR_NO_SYSTEM_RESOURCES 2026-08-04 09:48:03 +02:00
Andrea Mazzoleni
a18ce02205 Fix binary varint decoders to reject values overflowing uint32_t/uint64_t declared widths 2026-08-04 09:48:02 +02:00
Andrea Mazzoleni
2513cbee83 Validate the product/model returned by the Windows driver 2026-08-04 09:48:02 +02:00
Andrea Mazzoleni
844d45550a Update to the new RAID library 2026-08-04 09:48:02 +02:00
Andrea Mazzoleni
22101c7a25 Support dynamic runtime selection of RAID AES mode 2026-08-04 09:48:02 +02:00
Andrea Mazzoleni
842fa5bb74 Add new os_kill 2026-08-04 09:48:02 +02:00
Andrea Mazzoleni
a1aadb1032 Add CREATE_NO_WINDOW flag to process creation in os_spawn 2026-08-04 09:48:02 +02:00
Andrea Mazzoleni
428ea12599 Create symlinks to host binaries on Wine targets to run test commands natively 2026-08-04 09:48:02 +02:00
Andrea Mazzoleni
d4b9b95d8b Fix build in different directory 2026-08-04 09:48:02 +02:00
Andrea Mazzoleni
058a697f28 Defer deallocation of modified files to phase 2 to prevent copy-detection races 2026-08-04 09:48:02 +02:00
Andrea Mazzoleni
7edc91ee30 Block signal delivery across fork to prevent signal forwarding race condition in main.c 2026-08-04 09:48:02 +02:00
Andrea Mazzoleni
562d0f0dfc Cap maximum rate-limiter credit accumulation to 10 seconds to prevent huge post-pause bursts 2026-08-04 09:48:02 +02:00
Andrea Mazzoleni
6965f5a9f5 Use eaccess instead of access in unixapp.c for consistent effective privilege checking 2026-08-04 09:48:02 +02:00
Andrea Mazzoleni
77786b616e Validate WMI-returned VSS snapshot GUID format in mingwapp.c to mitigate potential command injection 2026-08-04 09:48:02 +02:00
Andrea Mazzoleni
fe6947fd7c Fix wide-character buffer size parameters in mingwapp.c snwprintf calls to prevent stack buffer overflow 2026-08-04 09:48:02 +02:00
Andrea Mazzoleni
42aebcf038 Abort execution with a fatal error if smartctl options exceed maximum argument limit 2026-08-04 09:48:02 +02:00
Andrea Mazzoleni
aa2fa36cca Update TODO 2026-08-04 09:48:02 +02:00
Andrea Mazzoleni
c4a898957b Document the concurrency boundaries of worker threads 2026-08-04 09:48:02 +02:00
Andrea Mazzoleni
45f925836e Move string functions to new str.h and str.c files 2026-08-04 09:48:02 +02:00
Andrea Mazzoleni
aed9828730 Move safe memory helper functions to dedicated memory.c and memory.h 2026-08-04 09:48:02 +02:00
Andrea Mazzoleni
beb1388420 Update HISTORY 2026-08-04 09:48:02 +02:00
Andrea Mazzoleni
75ad2eace0 Update TODO 2026-08-04 09:48:02 +02:00
Andrea Mazzoleni
051fc47061 Make os_abort to log to os_syslog 2026-08-04 09:48:02 +02:00
Andrea Mazzoleni
2060606385 Fail if the PowerShell command is too long 2026-08-04 09:48:02 +02:00
Andrea Mazzoleni
7916d2454c Fix documentation of windows_guid_is_valid 2026-08-04 09:48:02 +02:00
Andrea Mazzoleni
b20de80d87 Document handle_close failures 2026-08-04 09:48:02 +02:00
Andrea Mazzoleni
d26bb04f5b Fix typo in monothread implementation 2026-08-04 09:48:02 +02:00
Andrea Mazzoleni
ca4bc56eb0 Fix leak on error in state_write 2026-08-04 09:48:02 +02:00
Andrea Mazzoleni
4be0d3743e Fix leak on error in argutf8 2026-08-04 09:48:02 +02:00
Andrea Mazzoleni
4ff4d52df4 Avoid floating point underflow in thermal computation 2026-08-04 09:48:02 +02:00
Andrea Mazzoleni
3d97f7e04d Introduce nalloc_nofail 2026-08-04 09:48:02 +02:00
Andrea Mazzoleni
844130bad4 Fix strtrim to correctly trim strings containing only whitespace 2026-08-04 09:48:02 +02:00
Andrea Mazzoleni
e0a5bc02a5 Prevent integer wrap-around when checking string length in sgetbs 2026-08-04 09:48:02 +02:00
Andrea Mazzoleni
cd0910d723 Sanitize addr2line binary path via strspn whitelist before system call 2026-08-04 09:48:02 +02:00
Andrea Mazzoleni
08827d61df Sync the OS interface with the daemon 2026-08-04 09:48:02 +02:00
Andrea Mazzoleni
22f9f36110 Run PowerShell commands safely via base64 encoded strings 2026-08-04 09:48:01 +02:00
Andrea Mazzoleni
f064521fbe Pass element count instead of byte count to WCHAR buffer bounds 2026-08-04 09:48:01 +02:00
Andrea Mazzoleni
f9e62eb0b7 Synchronize child_process updates using interlocked Win32 APIs 2026-08-04 09:48:01 +02:00
Andrea Mazzoleni
a2b9561c15 Avoid 100% CPU utlization in thread_yield 2026-08-04 09:48:01 +02:00
Andrea Mazzoleni
61b69f7019 Document why thread_yield is used 2026-08-04 09:48:01 +02:00
Andrea Mazzoleni
29983b4b65 Abort on privilege switch failures unless errno is EPERM 2026-08-04 09:48:01 +02:00
Andrea Mazzoleni
926bc6884e Allocate minimum 1 byte in malloc_nofail when size is 0 to prevent process abort 2026-08-04 09:48:01 +02:00
Andrea Mazzoleni
b16a1aea3e Use sig_atomic_t 2026-08-04 09:48:01 +02:00
Andrea Mazzoleni
1de9e4bbc9 Clarify comment about reading uuids 2026-08-04 09:48:01 +02:00
Andrea Mazzoleni
f0e2f80017 Align data disk UUID validation and write logic with parity splits using content_uuid 2026-08-04 09:48:01 +02:00
Andrea Mazzoleni
645a587bdf Optimize redundant devuuid() calls by storing content file UUIDs in a dedicated field 2026-08-04 09:48:01 +02:00
Andrea Mazzoleni
f24fb67610 Update TODO 2026-08-04 09:48:01 +02:00
Andrea Mazzoleni
0a7366d670 Fix translation inconsistencies 2026-08-04 09:48:01 +02:00