Commit Graph
8546 Commits
Author SHA1 Message Date
harisibrar1andClaude Opus 5.5 d77777a94b feat(libSceLibreSsl): implement the SSL and SSL_CTX ex_data index registry as LibreSSL 2.5.4 does
SSL_get_ex_new_index and SSL_CTX_get_ex_new_index number their indices
per class from 0, SSL_get_ex_data_X509_STORE_CTX_idx allocates its
class-5 index once, and CRYPTO_cleanup_all_ex_data releases every class.
An allocation failure returns -1 with ERR_R_MALLOC_FAILURE queued.

Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-10-26 00:24:32 -04:00
orezraeyandClaude Opus 5.5 3a2638ada6 docs(libkernel): note that pthread_create_name_np shares the long-name handle path
Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-10-26 00:37:49 -03:00
Dean 034b60a2d4 Merge pull request #10239 from voidlakhan/fix/npgameintent-invalid-argument-error
fix(libSceNpGameIntent): return errors for invalid arguments and uninitialized calls
2026-10-26 16:23:39 +13:00
Dean 0ce4b82c2d Merge pull request #10243 from orezraey/fix/libkernel-rtld-thread-atexit-measured-ps5
fix(libkernel): answer the thread atexit references as measured on a PS5
2026-10-26 16:23:13 +13:00
UnhealthyKraken abee73c481 fix(freetype): return invalid argument for null PFR faces 2026-10-26 03:21:51 +00:00
frankea 37857ceb29 fix(agc): write the console's DRAW_INDEX_MULTI_INST packet for sceAgcDcbDrawIndexMultiInstanced
On a PS5 the builder writes 15 dwords: a tag write of 0xc6000006, opcode 0x3a with its arguments, initiator 0x80 whatever the modifier, and a closing tag write; GetSize returns 60. AnyPS5 wrote NUM_INSTANCES and DRAW_INDEX_2 under argument meanings nothing confirms. The driver refuses 0x3a, whose field meanings are not known, and names it DRAW_INDEX_MULTI_INST as Linux's nvd.h does.
2026-10-25 23:14:39 -04:00
Bipin 04ab37b35d fix(core): apply the measured opus encoder console behaviour
Create, CreateEx, Destroy, GetSize and Initialize follow the firmware
13.42 export measurements reported on the pull request: bases 0x813F0000
and 0x81770000, the pointer validated first (+0x01), then sample rate
(+0x10/+0x0F), channels (+0x0D/+0x0C) and application (+0x11/+0x10), the
required caller application 2051 for CELT and 2048 for SILK, the 0x17B2
state marker at +0xCC/+0xE8 behind Destroy (+0x16/+0x15) and fixed
728/752-byte GetSize values; a successful create zero-fills the console
state size. The internal encoder keeps the restricted celt and silk
applications whose packet identity the tests compare, float included.

The tests declare entry points through the libraries' Api.hpp instead of
local prototypes, cast states to the opaque encoder types, drop the silk
ctl/cancel/priority/timeout and live-encoder Terminate throw pins and
compare both float sections against opus_encode_float. Ctl,
Encode*WithPriority and the silk cancel and timeout entry points keep
their throwing stubs, and the debt notes carry the measurement with the
remaining gaps.
2026-10-26 08:41:34 +05:30
Rookie 9a914b76aa fix(libSceCesCs): map the GB 18030 profiles as the console does 2026-10-26 03:02:37 +00:00
UnhealthyKraken 9a7affe788 Merge remote-tracking branch 'origin/main' into HEAD 2026-10-26 02:57:52 +00:00
Dean 14eb2cda22 Merge pull request #10640 from rocklouis055/feat/nputility-lookup-async
feat(libSceNpUtility): implement lookup async requests, waits and timeouts
2026-10-26 15:43:03 +13:00
orezraeyandClaude Opus 5.5 053ca30db4 docs(libkernel): shorten the socket option bits debt entry under 1000 characters
Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-10-25 23:40:28 -03:00
frankea c5ab2f5b90 fix(agc): return 0 from the wait and context state GetSize calls for an invalid argument
On a PS5, sceAgcAcbWaitOnAddressGetSize and sceAgcDcbWaitOnAddressGetSize return 56 for size 0, 64 for size 1 and 0 for any other 32-bit value, and sceAgcDcbContextStateOpGetSize returns 0 for an operation above 3. The ACB wait size takes a 32-bit argument instead of a byte.
2026-10-25 22:38:48 -04:00
Dean 9f386f3a29 Merge pull request #9157 from shanu337/videoout-color-space-wrappers
refactor(libSceVideoOut): consolidate color space wrappers and add Flip tests
2026-10-26 15:32:59 +13:00
orezraeyandClaude Opus 5.5 85a1bf2b31 Merge main into fix/libkernel-dupfd-cloexec-measured-ps5
Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-10-25 23:27:02 -03:00
JJenkxandClaude Opus 5.5 ca1b62a3bd fix(libc): compute tanh with FreeBSD msun's algorithm, as titles' libc.prx does
tanh returned the host's tanh, whose last bit differs from the titles' copy
on Windows. The titles' copy is FreeBSD msun's s_tanh.c over msun's expm1,
and it sets no errno. tanh now computes that algorithm over this file's
Expm1.

Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-10-25 22:26:16 -04:00
orezraeyandClaude Opus 5.5 0850552608 Merge main into docs/libkernel-flexible-flag-8000-measured-ps5
Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-10-25 23:25:51 -03:00
JJenkxandClaude Opus 5.5 6d9fd5d1e7 fix(libc): store EDOM from asinf where titles' libc.prx does
asinf left errno unchanged for |x| > 1, the infinities and NaN, following
included, stores EDOM there and leaves it alone for |x| <= 1; asinf now
does the same, and the test expects it.

Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-10-25 22:18:51 -04:00
JJenkxandClaude Opus 5.5 ebc8bcc106 fix(libc): compute asinf with FreeBSD msun's algorithm, as titles' libc.prx does
asinf returned the host asin, so its last bit depended on the host: on
Windows it differs from the libc.prx that titles ship on 5,413,834 of the
floats in (-1, 1). That libc.prx is msun's e_asinf.c, which gives the same
bits as PPSA07923's and PPSA05916's copies for all 2^32 arguments. errno
is still left unchanged for |x| > 1 and NaN.

Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-10-25 22:18:51 -04:00
JJenkxandClaude Opus 5.5 035d9c0821 fix(libc): compute cbrt with FreeBSD msun's algorithm, as titles' libc.prx does
cbrt returned the host's cbrt, whose last bit differs from the titles' copy
on Windows on 99,933,841 of 320 million random arguments, about 31%. The
titles' copy is FreeBSD msun's s_cbrt.c, and cbrt now computes it.

Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-10-25 22:18:40 -04:00
JJenkx ad111b3ce1 fix(libc): preserve acoshf domain errno and exception flags 2026-10-25 22:07:34 -04:00
GruzzberryandClaude Sonnet 5.5 4ccb760d12 fix(libc): realpath resolves symbolic links like FreeBSD
Co-Authored-By: Claude Sonnet 5.5 <[email protected]>
2026-10-26 01:59:58 +00:00
AZLisme 816ca46c66 docs(libressl3): qualify ASN.1 native decoding evidence 2026-10-26 09:51:16 +08:00
Dean 3326a27071 Merge pull request #10523 from YossiYad/feat/np-tus-sync-wrappers
feat(libSceNpTus): implement the nine blocking data and variable calls
2026-10-26 14:48:15 +13:00
harisibrar1 7746b7a6f9 Merge remote-tracking branch 'origin/main' into fix/so-acceptfilter-einval 2026-10-25 21:44:28 -04:00
Dean a3987a1eca Merge pull request #10718 from rooklz/fix/cescs-strict-jis0208
fix(libSceCesCs): map the strict JIS X 0208 profiles' unsettled cells as the console does
2026-10-26 14:40:45 +13:00
Dean Galvin 72598e34c8 Merge branch 'main' into pr/unwatch-hook-exits-v2 2026-10-26 14:36:49 +13:00
xXPBSXx 4322713f2a Merge upstream/main into docs/debt-hmd2-open-initialize-title 2026-10-26 02:32:21 +01:00
Dean 732ab06f41 Merge pull request #10354 from JJenkx/windows/libc-nextafter-msun
fix(libc): compute nextafter and nextafterf with FreeBSD msun's algorithm, as titles' libc.prx does
2026-10-26 14:30:57 +13:00
Dean d31f372e33 Merge pull request #10062 from imellag/fix/agc-moltenvk-destroy-at-idle
fix(agc): destroy buffers and memory on MoltenVK only while the graphics queue is idle
2026-10-26 14:28:45 +13:00
Dean 517a7b12b8 Merge pull request #10525 from YossiYad/feat/np-party-plain-queries
feat(libSceNpParty): implement sceNpPartyGetMembers, sceNpPartyGetMemberInfo and sceNpPartyRegisterHandler
2026-10-26 14:27:45 +13:00
Dean 853ffe0f69 Merge pull request #10794 from slopgobblercobbler/feat/kernel-sys-sce-pthread-main
feat(libkernel_sys): implement scePthreadMain through pthread_main_np
2026-10-26 14:27:16 +13:00
Adrià 3b252b44fe Merge pull request #9561 from DavidSamir/feat/libkernel-fcntl-osync
feat(libkernel): sync each write on a file whose O_FSYNC flag is set
2026-10-26 02:26:06 +01:00
p3nicillinandClaude Opus 5.5 2387f0ece7 test(libkernel): check that MAP_EXCL replacement leaves neighbouring pages alone
Also word the debt entry as Prospero Win's report, not a measurement here.

Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-10-26 01:24:42 +00:00
Dean Galvin e76147bca9 Merge branch 'main' into fix/pngdec-large-image-info 2026-10-26 14:17:59 +13:00
Dean 1c9064435d Merge pull request #10451 from Danigamer05/fix/pngdec-16bit-input
fix(pngdec): honor the 16-bit input attribute
2026-10-26 14:16:21 +13:00
Dean 0f34ebb853 Merge pull request #10446 from Danigamer05/fix/keyboard-key2char-contract
fix(keyboard): preserve raw keys and ignore the Kana LED
2026-10-26 14:12:38 +13:00
orezraeyandClaude Opus 5.5 655d0f3f32 Merge main into feat/videoout-composite-overlay
Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-10-25 21:51:50 -03:00
JJenkxandClaude Opus 5.5 0f7056d67b fix(libc): compute logb and logbf with FreeBSD msun's algorithm, as titles' libc.prx does
logb and logbf returned the host's logb, which sets ERANGE for a zero
argument on Windows and returns signalling NaNs unquieted. The titles'
copies are FreeBSD msun's s_logb.c and s_logbf.c, which set no errno and
quiet a NaN through x * x; both functions now compute that algorithm.

Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-10-25 20:50:11 -04:00
kenny soloandClaude Opus 5.5 aea49c62ad docs(libkernel): end the pthread_cond_setname_np debt entry with a period
Co-Authored-By: Claude Opus 5.5 (1M context) <[email protected]>
2026-10-25 20:41:35 -04:00
kenny soloandClaude Opus 5.5 15ed96d647 fix(libkernel): stop storing the pthread_cond_setname_np name
scePthreadCondInit ignores its name and nothing reads a condition variable name back, so pthread_cond_setname_np now only validates the condition variable and the name. Drops the stale libkernel_sys declaration and moves the debt entry to Silent stubs, citing shadPS4.

Co-Authored-By: Claude Opus 5.5 (1M context) <[email protected]>
2026-10-25 20:41:35 -04:00
kenny soloandClaude Opus 5.5 70557b2e16 feat(libkernel): add pthread_cond_setname_np
Store the name on the condition variable, creating a statically initialized one first, and return EINVAL for a destroyed one. A null cond or a null name throws, recorded in the libkernel debt file.

Co-Authored-By: Claude Opus 5.5 (1M context) <[email protected]>
2026-10-25 20:41:35 -04:00
Dean 5b85225ef3 Merge pull request #9797 from Terminev/feat/npwebapi-offline-requests
feat(libSceNpWebApi): add user contexts, requests and push event callbacks offline
2026-10-26 13:34:33 +13:00
harisibrar1andClaude Opus 5.5 344acf3e66 docs(libSceRudp): link the detailed 13.42 report for sceRudpPollCancel
Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-10-25 20:28:44 -04:00
frankea 4db6ed7635 Merge remote-tracking branch 'origin/main' into fix/kernel-gettimezone-host-zone
# Conflicts:
#	core/libs/tests/GuestFreebsdClocks.cpp
2026-10-25 20:22:45 -04:00
frankea b5c6010f80 Merge remote-tracking branch 'origin/main' into fix/direct-memory-12gib 2026-10-25 20:21:28 -04:00
Adrià 97d33464c5 Merge pull request #9527 from AlxcBTW/pr/libc-annex-k-stream-io
feat(libc): add the Annex K stream printf, scanf and freopen_s functions
2026-10-26 01:21:26 +01:00
Adrià 898a7fef4f Merge pull request #9631 from UnhealthyKraken/feat/libc-fetch-seqcst
feat(libc): implement sequential bitwise fetch helpers
2026-10-26 01:11:55 +01:00
Rookie a8c6b562d6 fix(libSceCesCs): map the strict JIS X 0208 profiles' unsettled cells as the console does 2026-10-26 00:10:31 +00:00
orezraeyandClaude Opus 5.5 19566dbee8 fix(libkernel): set MSG_CTRUNC for an empty recvmsg control buffer as FreeBSD 11.4 does
Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-10-25 21:05:10 -03:00
Danigamer05 94e88881d4 feat(libc): implement unsigned 64-bit minimum 2026-10-26 01:01:08 +01:00