AnyPS5/core/libs/tests
boykopovar 73d014ed83
Merge pull request #56 from oneandonlydean/feat/linux-pread-getdents
feat(libkernel): pread, pwrite, getdents and getdirentries on linux
- **pread/pwrite:** use the existing `NativePread`/`NativePwrite` and don't move the file offset. A null buffer with a non-zero size returns `EFAULT`, a negative offset `EINVAL`, and host failures go through `SceErrorFromErrno`.
- **getdirentries:**
  - reads host `getdents64` records and converts them to the FreeBSD `struct dirent` layout the guest expects (`d_fileno` u32, `d_reclen` u16, `d_type` u8, `d_namlen` u8, NUL-terminated name, record padded to 4 bytes);
  - `*basep` gets the directory position from before the read;
  - when a record doesn't fit in the guest buffer, the descriptor is moved with `lseek` back to that entry's cookie, so the next call resumes there;
  - if not even the first record fits, the call returns `EINVAL` without consuming anything, and a name longer than 255 bytes returns `ENAMETOOLONG`.
- **getdents** is `getdirentries` without `basep`.
- Adds the guest `EFAULT`, `EINVAL` and `ENAMETOOLONG` constants.
2026-09-28 09:38:47 +03:00
..
ApplicationHeap.cpp Merge branch 'main' into feat/libc-runtime-functions 2026-09-28 09:01:41 +03:00
ExceptionRuntime.cpp refactor(libc): __attribute__ replacing and removing 2026-09-06 13:02:22 +03:00
FileStreams.cpp fix(libc): fix ftools exports 2026-09-07 19:54:01 +03:00
Formatting.cpp fix(windows): va_list sysv abi parse for fomatting functions 2026-09-11 07:49:14 +03:00
GuestAddressConversion.cpp feat(kernel): translate guest IP address conversion APIs 2026-09-25 06:18:32 +10:00
GuestBufferReuse.cpp feat(video): track ordered buffer reuse reservations 2026-09-25 07:13:15 +10:00
GuestCharacter.cpp Merge remote-tracking branch 'origin/main' into feat/demons-souls-boot 2026-09-27 10:52:21 -07:00
GuestDirectory.cpp feat(libc): translate guest directory enumeration 2026-09-25 06:41:55 +10:00
GuestDirectoryEntries.cpp feat(libkernel): pread, pwrite, getdents and getdirentries on linux 2026-09-28 16:40:22 +13:00
GuestDynamicLoader.cpp feat(kernel): add tracked dynamic module loading and NID lookup 2026-09-25 06:48:50 +10:00
GuestEnvironment.cpp feat(libc): implement guest environment variable storage 2026-09-25 06:39:14 +10:00
GuestErrors.cpp feat(libc): implement guest errno message APIs 2026-09-25 06:17:18 +10:00
GuestFilesystem.cpp feat(libc): implement guest file removal and renaming 2026-09-25 06:45:30 +10:00
GuestIndexedDraw.cpp fix(agc): support explicit indexed draw commands 2026-09-28 09:09:02 +10:00
GuestLocale.cpp feat(libc): replace guest locale implementation with std::locale 2026-09-27 11:43:42 +03:00
GuestMath.cpp feat(libc): add floating-point string conversions 2026-09-25 06:55:31 +10:00
GuestMemory.cpp feat(libkernel): hinted and no-overwrite mappings, virtual range names and usleep 2026-09-28 14:22:48 +13:00
GuestModuleFixture.cpp feat(kernel): add tracked dynamic module loading and NID lookup 2026-09-25 06:48:50 +10:00
GuestOnce.cpp feat(kernel): implement guest once initialization 2026-09-25 07:22:05 +10:00
GuestRandom.cpp feat(random): implement sceRandomGetRandomNumber 2026-09-26 12:14:46 +02:00
GuestRenderingWait.cpp feat(agc): execute rendering waits against buffer reuse fences 2026-09-25 07:16:55 +10:00
GuestResolver.cpp feat(posix): translate guest address resolution APIs 2026-09-25 06:15:32 +10:00
GuestRtc.cpp feat(runtime): timed waits, sync primitive fixes, heap and RTC fixes, unattended-run switches 2026-09-26 19:00:39 -07:00
GuestSearch.cpp feat(libc): implement binary search with guest comparator ABI 2026-09-25 07:24:17 +10:00
GuestShaderLink.cpp fix(agc): preserve strict shader linkage failures 2026-09-25 07:22:06 +10:00
GuestSignals.cpp feat(kernel): bridge guest signal registration and delivery 2026-09-25 06:27:11 +10:00
GuestStandardStreams.cpp feat(libc): expose guest vsprintf formatting 2026-09-25 07:26:06 +10:00
GuestStrings.cpp Merge branch 'main' into feat/libc-runtime-functions 2026-09-28 09:01:41 +03:00
GuestSystemConfiguration.cpp feat(kernel): implement guest system configuration queries 2026-09-25 06:25:16 +10:00
GuestSystemExit.cpp feat(libc): implement immediate guest process exit 2026-09-25 07:05:07 +10:00
GuestUdp.cpp feat(kernel): support socket nonblocking flags through fcntl 2026-09-25 06:34:30 +10:00
GuestWorkingDirectory.cpp feat(libc): track guest working directory and resolve relative paths 2026-09-25 06:51:37 +10:00
HostThreadLocal.cpp fix(agc): preserve recorder buffers through Windows thread teardown 2026-09-28 09:55:01 +10:00
HostThreadLocalLibrary.cpp fix(agc): preserve recorder buffers through Windows thread teardown 2026-09-28 09:55:01 +10:00
LinearDisplayBuffer.cpp feat(videoout): present linear framebuffer layouts 2026-09-28 09:05:49 +10:00
Mspace.cpp feat(libc): mspace memalign, malloc stats, thread-unsafe flag and nested mspaces 2026-09-28 14:22:48 +13:00
PthreadStart.cpp fix(windows): precommit guest thread stacks to prevent guard page skips 2026-09-10 20:25:25 +03:00
ShaderBufferAddress.cpp test(shader): cover decoded buffer address operands 2026-09-28 09:09:02 +10:00
TextureFormatLookup.cpp fix(agc): avoid exception-driven render target format probing 2026-09-28 09:55:00 +10:00
WindowsExceptions.cpp feat(libs): add new std symbols + unused filter off by default 2026-09-24 10:28:33 +03:00
run_exception_tests.py feat(libc): add ex tests + remove bad_alloc dup 2026-09-06 07:30:59 +03:00