8bd15bd272
Fix heapapi ownership checks
...
`mi_heap_check_owned` does not work for allocations that span
multiple blocks; `mi_is_in_heap_region` is a less precise but
working way for us to check if a pointer is in our heap.
See https://github.com/microsoft/mimalloc/issues/298
2025-10-27 17:04:57 -06:00
27860f0300
Implement ntdll NtWriteFile
2025-10-27 14:56:51 -06:00
5ebb15c440
Add BCryptPrimitives.dll ProcessPrng
2025-10-27 14:56:30 -06:00
ac0c6214d0
Support per-module TLS slots (ThreadLocalStoragePointer)
2025-10-27 13:49:15 -06:00
a240e3dc4b
Support TlsExpansionSlots (>64 TLS slots)
2025-10-27 12:27:26 -06:00
cf166f828a
Disable exceptions and RTTI
2025-10-27 10:47:38 -06:00
ac472c9dc9
Clarify wine testing information
2025-10-27 01:09:41 -06:00
50a457c5e3
Begin reworking TLS impl & add TLS loader support
2025-10-27 01:03:30 -06:00
f2743d05e7
Add hybrid epoll/thread pool async I/O backend ( #98 )
...
* Add hybrid epoll/thread pool async I/O backend
* Remove thread pool in favor of epoll AIO backend
2025-10-23 23:09:52 -07:00
1500a4f815
ReadFile/WriteFile: Require overlapped I/O on overlapped handles ( #99 )
2025-10-23 23:07:56 -07:00
5597da607a
Fix GetOverlappedResult without event & improve overlapped handling
1.0.0-beta.1
2025-10-23 11:33:09 -06:00
4d5caf91e1
Implement ConnectNamedPipe
2025-10-23 11:31:35 -06:00
8e532ccf78
Implement CreateNamedPipeA
2025-10-23 11:31:35 -06:00
fa3541fe2d
Add thread pool async I/O backend ( #97 )
...
* Add thread pool async I/O backend
* Make it work with older code
2025-10-23 10:29:23 -07:00
24fa3ef419
Implement ole32 CLSIDFromString ( #95 )
1.0.0-alpha.5
2025-10-22 08:46:53 -07:00
2e2128b4ac
Implement kernel32::FlushViewOfFile and ntdll::memset
1.0.0-alpha.4
2025-10-15 18:33:26 -06:00
0f3b98462e
ProcessManager: use unique_lock when erasing
2025-10-09 17:18:00 -06:00
bb4bee83b7
Fix pidfd reuse race condition
1.0.0-alpha.3
2025-10-09 16:52:12 -06:00
cadb3cd00e
Add .editorconfig & format some files
2025-10-09 16:51:48 -06:00
0c2c0f653b
Add Handles::clear() and run it on exit
2025-10-09 16:48:33 -06:00
e185629d19
Always use _exit to terminate (for now)
2025-10-09 13:14:59 -06:00
dc5a91c480
Simplify process spawning using SYS_clone
1.0.0-alpha.2
2025-10-09 12:33:58 -06:00
3078cef12b
Cleanup various lints and warnings
2025-10-09 12:33:13 -06:00
9cd15e9be8
Add execve/posix_spawn fallbacks for older kernels
2025-10-08 18:42:22 -06:00
cac944400f
Rework subprocess spawning using clone3/execveat
2025-10-08 18:13:54 -06:00
15ea650fd5
Use VERBOSE_LOG for more common calls
2025-10-08 18:12:50 -06:00
2ffc56f5c2
Improve heapapi implementation
2025-10-08 18:11:37 -06:00
ce57eb44a8
Replace hand-rolled MD5/SHA-1 with faster versions
2025-10-08 18:10:27 -06:00
a5c7a9a062
Use CMake presets; update README.md/AGENTS.md/.clangd
2025-10-07 22:42:43 -06:00
ef35ed9568
Update README.md
1.0.0-alpha.1
2025-10-07 17:31:39 -06:00
88ca54b95b
ci: Only push Docker images on upstream repo
2025-10-07 17:16:38 -06:00
13bb1a9679
Revamp CLI --help and add --version
2025-10-07 17:09:58 -06:00
d21fde5bc2
Don't forget the login-action
2025-10-07 16:00:17 -06:00
6b3cadf1fc
Incorporate Docker images into main CI workflow
2025-10-07 15:50:16 -06:00
de63a0b394
Rework Docker workflow to push both alpine and ubuntu variants
2025-10-07 15:28:24 -06:00
928499a2db
Add .clangd; update WIN_ENTRY/WIN_FUNC macros
2025-10-07 14:57:38 -06:00
430b6bfc9d
Gracefully fallback when io_uring fails to initialize
2025-10-07 14:16:23 -06:00
061228c971
Make liburing optional; rewrite CMakeLists.txt and enable LTO
2025-10-07 14:12:37 -06:00
df36de18bf
Implement async (overlapped) I/O with io_uring
2025-10-06 23:51:09 -06:00
f366e77956
Rewrite FindFirstFile/FindNextFile (again), add comprehensive tests
2025-10-06 17:57:54 -06:00
f5aa320800
Minor cleanup
2025-10-06 13:12:00 -06:00
f52ca2803f
Tests for handleapi, synchapi, processes
2025-10-06 10:14:03 -06:00
166b9036fd
Dont set ERROR_SUCCESS generally
...
Turns out we should only be setting this in a select few cases.
2025-10-06 00:03:10 -06:00
01ed50c4b4
Fix pipe reads; add tests for NtReadFile & pipes
2025-10-05 23:24:50 -06:00
85cf4a74c7
Add wibo path commands
2025-10-05 18:32:31 -06:00
086e08d93f
Use WIBO_PATH, WINEPATH to resolve executables as well
2025-10-05 18:25:18 -06:00
ff04eb9f41
Fix OpenProcessToken pseudo-handle regression
2025-10-05 18:16:15 -06:00
0d76e541c1
Reorg headers, module_registry -> modules, remove ActCtx msvcr80.dll hack
2025-10-05 17:46:16 -06:00
b87fb5e472
Implement some ActCtx functions for msvcr80.dll
2025-10-05 15:52:38 -06:00
5a2f8e2926
Docker build fixes
2025-10-05 14:37:45 -06:00