Commit graph

41 commits

Author SHA1 Message Date
Andrea Mazzoleni
a39fb132f8 Normalize comment style
Some checks are pending
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-10-07 09:14:01 +02:00
Andrea Mazzoleni
a7a85a259c Add os_tick_us() and os_tick_ns() monotonic high-resolution timers 2026-10-02 10:38:05 +02:00
Andrea Mazzoleni
70947d4054 Print abort stacktrace to stderr and exit with code 134 on Windows 2026-10-01 08:55:44 +02:00
Andrea Mazzoleni
eb75cef0fe Avoid touch failing on missing files deleted or moved since the last sync 2026-09-30 16:07:36 +02:00
Andrea Mazzoleni
5f68fda7ae Propagate non-capacity errors during parity split growth 2026-09-24 21:52:42 +02:00
Andrea Mazzoleni
fba3f74538 Handle MinGW path conversion failures with ENAMETOOLONG and EILSEQ instead of aborting
Some checks are pending
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-24 12:57:17 +02:00
Andrea Mazzoleni
819b843163 Add timeout_sec parameter to os_command and os_script interface 2026-09-22 08:15:21 +02:00
Andrea Mazzoleni
7361c104a5 Treat closed Windows pipes as EOF when reading 2026-09-18 10:00:41 +02:00
Andrea Mazzoleni
ce699dd9f8 Handle Windows Ctrl+Break as a graceful SnapRAID interruption 2026-09-18 10:00:41 +02:00
Andrea Mazzoleni
4320f0d6b6 Add absolutepath helper for paths that may not exist 2026-09-16 12:24:12 +02:00
Andrea Mazzoleni
c1bcd6a24f Migrate Windows smartctl execution from _wpopen to os_popen and direct process spawning 2026-09-14 18:03:35 +02:00
Andrea Mazzoleni
9f48c87dd4 Encapsulate race-safe process slot synchronization and termination in OS layer for Unix and Windows 2026-09-14 15:00:20 +02:00
Andrea Mazzoleni
3bddc127f0 Assign os_script and os_command processes to the global Windows job object 2026-09-14 09:19:19 +02:00
Andrea Mazzoleni
b113accaad Fix incorrect st_nlink inheritance from directory in Windows stream scanner 2026-09-07 15:31:39 +02:00
Andrea Mazzoleni
a0c7d69067 Expose real operating system process IDs on Windows via os_display_pid()
Some checks failed
Build / build-mac (push) Has been cancelled
Build / build-linux (push) Has been cancelled
Build / build-arm32 (push) Has been cancelled
Build / build-win (push) Has been cancelled
Build / build-freebsd (push) Has been cancelled
Build / build-musl (push) Has been cancelled
CodeQL Advanced / Analyze (c-cpp) (push) Has been cancelled
CodeQL Advanced / Analyze (actions) (push) Has been cancelled
2026-09-05 11:42:01 +02:00
Andrea Mazzoleni
11fee73ec4 Separate process waiting from process-reference release to eliminate Windows HANDLE reuse race
Some checks are pending
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-04 13:31:00 +02:00
Andrea Mazzoleni
27329c6f8c Ensure reliable Windows child termination by using CREATE_SUSPENDED and handling Job Object failures
Some checks are pending
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-02 19:01:49 +02:00
Andrea Mazzoleni
44575b21b1 Handle partial writes and log unexpected stdin errors in Windows os_command 2026-09-02 11:44:38 +02:00
Andrea Mazzoleni
8142ec08a0 Clarify CREATE_NO_WINDOW console behavior in os_term comment
Some checks are pending
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-01 12:42:33 +02:00
Andrea Mazzoleni
dfe0bf19e3 Fix concurrent Windows child handle inheritance with explicit handle lists 2026-09-01 12:37:02 +02:00
Andrea Mazzoleni
40569fff2f Implement O_NOFOLLOW on Windows without following symlinks 2026-08-31 21:34:10 +02:00
Andrea Mazzoleni
0416366e2d Handle trailing-slash paths in Windows lstat using handle-based states starting 2026-08-26 09:21:24 +02:00
Andrea Mazzoleni
fdce9738e8 Document Windows Ctrl-Break termination semantics in os_term() 2026-08-18 23:33:59 +02:00
Andrea Mazzoleni
b3dc7e55c1 Use dedicated scriptcat() for cmd.exe batch parameter serialization in os_script() 2026-08-18 23:33:58 +02:00
Andrea Mazzoleni
576873f0f9 Use tv[1] as mtime in Windows futimens and utimensat emulation 2026-08-18 23:33:58 +02:00
Andrea Mazzoleni
3c88559379 Quote empty arguments in Windows command line generation 2026-08-18 23:33:58 +02:00
Andrea Mazzoleni
4ec28b4b58 Redirect uncaptured stdio streams to NUL in os_spawn on Windows 2026-08-18 23:33:58 +02:00
Andrea Mazzoleni
87977f28f4 Harden PowerShell execution with safe SearchPathW and os_spawn 2026-08-18 23:33:58 +02:00
Andrea Mazzoleni
fd09e72816 Add buffer bounds check before appending wildcard in windows_opendir_find 2026-08-18 23:33:58 +02:00
Andrea Mazzoleni
f48e406d52 Convert extended UNC paths to standard UNC format in windows_realpath 2026-08-18 23:33:58 +02:00
Andrea Mazzoleni
f9626f6e3e Normalize negative pre-1970 FILETIME timestamps via windows_time2stat 2026-08-18 23:33:58 +02:00
Andrea Mazzoleni
caeb3a9d1b Fix PrintNameOffset WCHAR index scaling and add bounds validation in windows_readlink 2026-08-18 23:33:58 +02:00
Andrea Mazzoleni
daf713820e Add os_usleep with bounded sleep loop returning on signal interruption and use it in bandwidth limiter 2026-08-18 23:33:57 +02:00
Andrea Mazzoleni
6c85573d12 Add comments explaining Windows Service console attachment flow in os_term 2026-08-18 23:33:56 +02:00
Andrea Mazzoleni
6b46e08a1f Configure PR_SET_PDEATHSIG on Linux and Job Objects on Windows to prevent orphaned subprocesses on program crash 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
76124cff00 Add bounded retry with exponential backoff for ERROR_NO_SYSTEM_RESOURCES 2026-08-18 23:33:56 +02:00
Andrea Mazzoleni
1b1ae7cce9 Add new os_kill 2026-08-18 23:33:56 +02:00
Andrea Mazzoleni
e191127b0d Add CREATE_NO_WINDOW flag to process creation in os_spawn 2026-08-18 23:33:56 +02:00
Andrea Mazzoleni
d6b51d61e7 Sync the OS interface with the daemon 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
Renamed from cmdline/mingw.c (Browse further)