Commit Graph
45 Commits
Author SHA1 Message Date
Dean 6863f295a9 Merge pull request #10749 from ycbuzi/refactor/siginterrupt-libc-internal
refactor(libSceLibcInternal): serve siginterrupt from libSceLibcInternal
2026-11-05 06:35:30 +13:00
Dean 1b58cf171b Merge pull request #10392 from GabrielKLBr/feat/libc-legacy-signal-masks
feat(libc): implement legacy signal masks
2026-11-05 06:35:07 +13:00
Dean cc628cbc87 Merge pull request #12924 from heditrigui/feat/libscelibcinternal-inet-helpers
feat(libSceLibcInternal): implement inet_netof, inet_lnaof, inet_makeaddr and inet_network
2026-11-04 19:27:15 +13:00
bluandClaude Opus 5.5 24497b2406 Merge branch 'main' into refactor/siginterrupt-libc-internal
Resolves docs/dev/debt/libkernel.md: main's sigaction entry (SIGPIPE outside Windows) and this branch's signal entry, which points to libSceLibcInternal for siginterrupt.

Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-11-03 10:23:38 -07:00
Dean 8fe922d1ad Merge pull request #13273 from Celegans12/feat/libcinternal-recovered-inventory-20261030
feat(libcinternal): add recovered inventory placeholders
2026-11-03 21:10:14 +13:00
Dean 7fc59ddd6e Merge pull request #14864 from Jawschamp/feat/libc-devname
feat(libc): implement devname and devname_r
2026-11-03 18:10:59 +13:00
Dean Galvin 923d757f7f Merge commit '88bb16c20e757658078b3efce912c96b1b03502a' into HEAD
# Conflicts:
#	core/libs/prx/libSceLibcInternal/CMakeLists.txt
2026-11-03 11:45:16 +13:00
Dean c2e1a6f84d Merge pull request #14666 from miguelcoxcaballero/feat/libc-internal-pad-destructor
feat(libSceLibcInternal): run the _Pad complete-object destructor
2026-11-03 11:41:30 +13:00
Dean 54e19f8d84 Merge pull request #14659 from miguelcoxcaballero/feat/libc-internal-exception-base-destructors
feat(libSceLibcInternal): run the base-object destructors of future_error, overflow_error and underflow_error
2026-11-03 11:41:14 +13:00
bluandClaude Opus 5.5 dae55d9e12 Merge branch 'main' into refactor/siginterrupt-libc-internal
Resolves docs/dev/debt/libc.md: main's updated _Thrd entry, and siginterrupt stays documented in libSceLibcInternal.md.

Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-11-02 04:12:04 -07:00
Dean ed08af6a2f Merge pull request #10953 from AZLisme/feat/batch2-libc-legacy-signals
fix(libSceLibcInternal): export sigvec through shared runtime
2026-11-02 23:25:28 +13:00
Hedi Trigui 9eb9ba5bcd Merge branch 'upstream/main' into feat/libscelibcinternal-inet-helpers 2026-11-02 09:29:52 +01:00
Celegans12 bb4d312e54 fix(libcinternal): avoid shadowing find-last helpers
Remove the four find-last placeholders from the recovered inventory.
The named provider is searched before the libc fallback, so throwing
placeholders would shadow the working implementation under review.
Keep the remaining declarations and definitions paired.
Update the technical debt count to match the remaining exports.
2026-11-02 05:51:55 +01:00
Dean e520d9a490 Merge pull request #13835 from CodingBreadd/feat/libcinternal-math-names
feat(libSceLibcInternal): name 45 math helper exports from their NIDs
2026-11-02 13:43:58 +13:00
bluandClaude Opus 5.5 d984a64ceb Merge branch 'main' into refactor/siginterrupt-libc-internal
Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-11-01 16:22:33 -07:00
Hedi Trigui afbaef3f00 Merge branch 'upstream/main' into feat/libscelibcinternal-inet-helpers 2026-11-01 22:44:01 +01:00
Jaws a4faa2f0b6 feat(libc): implement devname and devname_r 2026-11-01 21:10:14 +00:00
Miguel Cox Caballero 73c844be0b feat(libSceLibcInternal): run the _Pad complete-object destructor 2026-11-01 16:57:47 +01:00
Miguel Cox Caballero 8bb5e09df8 feat(libSceLibcInternal): run the base-object destructors of future_error, overflow_error and underflow_error 2026-11-01 16:57:11 +01:00
Dean Galvin ae9924b381 Merge commit 'e6f57307fa7f47165d7fc1bee945abdb2f6816e7' into HEAD
# Conflicts:
#	core/libs/prx/libSceLibcInternal/libSceLibcInternal.hpp
2026-11-01 23:47:19 +13:00
AZLisme e7725d7111 feat(libc): implement shared legacy sigvec support 2026-11-01 17:21:10 +08:00
Dean a5d0655bee Merge pull request #14240 from miguelcoxcaballero/feat/libc-internal-aligned-array-new
feat(libSceLibcInternal): implement the aligned nothrow array new and the aligned array delete
2026-11-01 17:37:39 +13:00
Adrià b6bd6e7bf7 Merge pull request #13840 from CodingBreadd/feat/libcinternal-runtime-names
feat(libSceLibcInternal): name 53 runtime helper exports from their NIDs
2026-11-01 04:28:19 +01:00
Miguel Cox Caballero a675d0e45b feat(libSceLibcInternal): implement the aligned nothrow array new and the aligned array delete
NIDs s2eGsgUF9vk (_ZnamSt11align_val_tRKSt9nothrow_t) and v09ZcAhZzSc
(_ZdaPvSt11align_val_t) forward to the libc exports of the same names
instead of throwing.
2026-11-01 03:46:44 +01:00
blu 68a0d205c0 Merge remote-tracking branch 'origin/main' into refactor/siginterrupt-libc-internal 2026-10-31 02:05:49 -07:00
DariusandClaude Opus 5.5 a6f97f13cf feat(libSceLibcInternal): name 45 math helper exports from their NIDs
Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-10-31 10:53:28 +02:00
DariusandClaude Opus 5.5 ed98d46807 feat(libSceLibcInternal): name 53 runtime helper exports from their NIDs
Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-10-31 10:52:40 +02:00
MaxandClaude Opus 5.5 0e8a80443a feat(libSceLibcInternal): implement _Mtxinit, _Mtxlock, _Mtxunlock and _Mtxdst
_Mtxinit makes a recursive mutex named SceLibcI_<name> (SceLibcI without
a name) and returns 0, or 1 when the attribute or the mutex cannot be
created. _Mtxlock, _Mtxunlock and _Mtxdst return 1 when the pthread call
fails and 0 otherwise. shadPS4 and fpPS4 agree on both.

Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-10-31 03:44:45 +01:00
Kyon 6eb80871af fix(libSceLibcInternal): prevent host symbol interposition 2026-10-30 12:32:42 +00:00
Kyon 967b1c74bf Merge remote-tracking branch 'origin/main' into feat/libc-internal-320-exports 2026-10-30 12:30:57 +00:00
Codex 48f1f0db57 feat(libcinternal): add recovered inventory placeholders 2026-10-30 12:46:45 +02:00
Kyon 36ea3f125f refactor(libSceLibcInternal): exclude overlapping exports 2026-10-30 02:39:01 +00:00
Codex 0c9bfa36e2 feat(libcinternal): add missing heap inventory exports 2026-10-30 02:20:40 +02:00
Hedi Trigui 2c9970dbe2 feat(libSceLibcInternal): implement inet_netof, inet_lnaof, inet_makeaddr and inet_network 2026-10-29 22:39:37 +01:00
blu f430c9ec4e Merge remote-tracking branch 'origin/main' into refactor/siginterrupt-libc-internal
# Conflicts:
#	docs/dev/debt/libSceLibcInternal.md
2026-10-29 12:55:05 -07:00
Kyon d2ec748f20 feat(libSceLibcInternal): declare 308 callable exports 2026-10-29 18:22:22 +00:00
Adrià 7b57271358 Merge pull request #11504 from verusferro/feat/libc-xfilesystem-error
feat(libc): throw std::filesystem::filesystem_error from _Xfilesystem_error as the console's libc does
2026-10-29 13:47:45 +01:00
Dean Galvin 7c4cadadd1 fix(libc): share legacy signal mask declarations 2026-10-30 01:01:27 +13:00
p3nicillinandClaude Opus 5.5 651436d6a3 feat(libSceLibcInternal): add __opendir2
The ps5-payload-sdk's fts_build calls __opendir2 with DTF_HIDEW,
DTF_NODUP and DTF_REWIND, and PS5 Bible Reader (PPSA99793) failed to
load on the unresolved import. In FreeBSD 11 those flags only change
reading a union mount, which AnyPS5 does not have, so the call opens
the directory as opendir does; other flags throw.

Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-10-28 15:26:34 +00:00
verusferro 778c4a74ec feat(libc): throw std::filesystem::filesystem_error from _Xfilesystem_error as the console's libc does 2026-10-28 15:10:30 +03:00
bluandClaude Opus 5.5 ad36ce7766 Merge main into refactor/siginterrupt-libc-internal
Brings in #10706's export headers. SignalList.cpp now takes GuestSigaction
and _sigaction_nid_postfix from libkernel/include/Api.hpp, the
siginterrupt_nid_postfix declaration moves from libc/include/Api.hpp to
libSceLibcInternal/include/Api.hpp, and GuestSignals.cpp includes that
header for its siginterrupt checks.

Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-10-24 17:27:51 -07:00
boykopovar fdf9ca7574 fix(sdk): reconcile public headers after rebase 2026-10-24 23:17:47 +03:00
boykopovar f38d29fd08 refactor(sdk): add canonical headers for remaining libraries 2026-10-24 23:17:42 +03:00
David ea7ea289d2 refactor(libSceLibcInternal): share the statvfs layout and its conversion
fstatvfs kept the guest struct statvfs and the sfs2svfs conversion from
the kernel's statfs to itself. Both move to include/Statvfs.hpp so that
statvfs can convert a volume the same way without opening the path.
Nothing changes for fstatvfs.
2026-10-16 07:24:08 +04:00
DavidandClaude Fable 5.1 2fe382c658 feat(libSceLibcInternal): implement the posix_spawn attribute and file action calls
XPSemu (PPSA97358) imports eleven posix_spawn calls from
libSceLibcInternal.prx, one reference each, and no call site is known.
Predicted stop (import order, not measured), behind isnanf (idx 296):
`FAIL: unresolved ELF import 44hlATrd47U from libSceLibcInternal.prx`
(posix_spawnattr_init, idx 347), followed by p--TkNVsXjA, LG6O0oW9bQU,
Sj7y+JO5PcM, Ud8CbISKRGM, Hq9-2AMG+ks, IUfBO5UIZNc, Heh4KJwyoX8 (348-355),
UV4m0bznVtU, Ani6e+T-y6Q and 3Nr9caNHhyg (379-381).

The nine object calls follow FreeBSD release/11.4.0 (8c639945a445)
lib/libc/gen/posix_spawn.c: posix_spawnattr_init allocates a zeroed
attribute object (ENOMEM on failure), _destroy frees it, _setflags and
_setsigdefault store the value; posix_spawn_file_actions_init allocates an
empty list (-1 on failure, as in 11.4), _destroy frees it with its
entries, and _addopen (path copied), _adddup2 and _addclose append in
order after returning EBADF for a negative descriptor. Null or
uninitialized objects, which FreeBSD dereferences, throw.

posix_spawn and posix_spawnp throw "process creation not implemented",
as execvp does: FreeBSD validates no argument before rfork/vfork, and no
child process can be created here. TechnicalDebt records them.
guest_posix_spawn covers the attribute round trips, the recorded action
sequence, the EBADF cases and the throws. NIDs computed with
tools/nid_names.py and present in aerolib.

Co-Authored-By: Claude Fable 5.1 <[email protected]>
2026-10-13 07:56:19 +00:00