Commit Graph
6285 Commits
Author SHA1 Message Date
Dean 9021e9b66e Merge pull request #10621 from Retr0G28/fix/socketpair-fstat-inode
fix(libkernel): report NODEV and a per-socket inode from fstat on a socketpair end
2026-10-27 10:30:31 +13:00
Dean 5a2aa03726 Merge pull request #9195 from gazaret/feat/libkernel-sys-uuidgen
feat(libkernel_sys): implement uuidgen
2026-10-27 10:29:18 +13:00
Dean fd75cc804d Merge pull request #9095 from mazen320/fix/unlinkat-windows-junction
fix(libkernel): treat Windows junctions in unlinkat like unlink and rmdir
2026-10-27 10:29:02 +13:00
Dean a142f7b0dd Merge pull request #9015 from akkadbakkad89/feat/np-webapi-up-generics
feat(libSceNpCppWebApi): cover the UserProfile models and remaining Common instantiations
2026-10-27 10:28:47 +13:00
Adrià a2175b54fd Merge pull request #10644 from yash27git/docs/contentdelete-abi-evidence
docs(libSceContentDelete): clarify unresolved export contracts
2026-10-26 22:20:29 +01:00
Adrià 8c7cf8269f Merge pull request #10638 from xXPBSXx/docs/debt-npsessionsignaling-lookups-title
docs(debt): note how titles call the sceNpSessionSignaling lookups
2026-10-26 22:18:26 +01:00
Adrià 7a21897555 Merge pull request #10636 from xXPBSXx/docs/debt-font-renderglyphimage-title
docs(debt): note how titles call sceFontRenderCharGlyphImage
2026-10-26 22:18:09 +01:00
Alvaro 0c037dd918 feat(libSceLibreSsl): implement X509_STORE_CTX_get_chain 2026-10-26 22:16:16 +01:00
Alvaro 7ac490f240 feat(libSceLibreSsl): implement X509_STORE_CTX_get_current_cert 2026-10-26 22:16:16 +01:00
Alvaro 1c7856a471 feat(libSceLibreSsl): implement X509_STORE_CTX_get_error_depth 2026-10-26 22:16:16 +01:00
Alvaro 1e88908181 fix(libSceLibreSsl): resolve the DH, DSA and GOST types in EVP_PKEY_type 2026-10-26 22:16:15 +01:00
Alvaro da1fa540c1 feat(libSceLibreSsl): implement X509_STORE_CTX_set_error 2026-10-26 22:16:15 +01:00
Alvaro 8ca226f420 feat(libSceLibreSsl): implement X509_STORE_CTX_get_error 2026-10-26 22:16:15 +01:00
Alvaro 93738dfbe9 feat(libSceLibreSsl): implement EVP_PKEY_type 2026-10-26 22:16:14 +01:00
simnJS 313a63f293 fix(libSceUsbStorage): follow a moved volume, stop unregistered callbacks and check IsExist's directory 2026-10-26 22:07:52 +01:00
noamrogerandClaude Opus 5.5 bffc7eda85 feat(libSceHttp2): implement request option getters, header removal and callbacks
Keep the auth and auto-redirect flags, headers and the auth-info and
pre-send callbacks in Http2::Settings, so requests copy them from their
template and they freeze once transport exists. Accepted kinds, error
codes and their order follow the firmware 13.42 module as reported in
the review: option, header and callback calls reject contexts and
cookie boxes, sceHttp2AuthCacheFlush validates the context,
sceHttp2RedirectCacheFlush ignores its argument and the auto-redirect
flag keeps the stored int.

Co-Authored-By: Claude Opus 5.5 (1M context) <[email protected]>
Claude-Session: https://claude.ai/code/session_01QdXm6rjuENJGYLZh5hc8cQ
2026-10-26 20:53:23 +00:00
orezraeyandClaude Opus 5.5 df2f94fcba Merge main into fix/librtc-rfc3339-precise-measured-ps5
Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-10-26 17:41:34 -03:00
Adrià e61a7c7e24 Merge pull request #9509 from 011010/fix/poll-guest-urgent
fix(libkernel): report urgent data in poll on macOS
2026-10-26 21:27:41 +01:00
Adrià c8809e82e4 Merge pull request #10449 from alvaroelpob/feat/libscelibressl-rsa-flags-size
feat(libSceLibreSsl): implement RSA_flags and RSA_size
2026-10-26 21:26:37 +01:00
Adrià cf69e44eca Merge pull request #10534 from noamroger/claude/project-thread-io5xtc
feat(libSceHttp2): store cookies in cookie boxes
2026-10-26 21:25:37 +01:00
Dean bfbc55a45b Merge pull request #11162 from orezraey/docs/libscertc-field-accessors-measured-ps5
fix(libSceRtc): drop the date field getters and setters a PS5 does not export
2026-10-27 09:23:29 +13:00
Dean 51e55a079f Merge pull request #11149 from EagleBearerYS/feat/ajm-batch-builders-done
fix(libSceAjm.native): reject a null batch buffer list with a nonzero count in sceAjmBatchJobRunSplit
2026-10-27 09:22:27 +13:00
janzezno 4f7e51f399 perf(agc): re-check only the host imports a registry change can reach
refreshImports checked every live host import, failure and refusal
again at each guest allocation registry change. A title that maps
memory often (SuperTuxKart, ~1650 maps a second) paid a walk that grew
with the live imports: ~34 FPS with ~1.1 GiB of imports on RADV.

The import table now keeps a weak_ptr snapshot of the ranges it was
last checked against and diffs it with the new lease. Only imports
whose import window touches a changed span, and imports made since the
last refresh, are checked again. Every import is checked when the window
is 0 or the window or budget changed. SuperTuxKart's menu goes from
~34 to ~45 FPS with the same imports live.
2026-10-26 21:19:58 +01:00
xXPBSXx 6e418d3342 Merge remote-tracking branch 'upstream/main' into libm/sinh-msun 2026-10-26 21:18:09 +01:00
Dean fc7e583e6e Merge pull request #11035 from orezraey/fix/libsceaudioout-repeated-init-measured-ps5
fix(libSceAudioOut): fail a repeated sceAudioOut2Initialize and sceAudioOutInit as measured on a PS5
2026-10-27 09:16:48 +13:00
Dean ce6b15b234 Merge pull request #10958 from AZLisme/feat/posix-webkit-raw-addresses
feat(libScePosixForWebKit): resolve raw socket address hints
2026-10-27 09:13:12 +13:00
Dean 43c0841507 Merge pull request #10881 from EagleBearerYS/feat/scenet-config-and-ether-calls
feat(libSceNet): implement sceNetInitParam and the loopback answer of sceNetConfigGetIfFlags
2026-10-27 09:07:50 +13:00
xXPBSXx dd44db30b0 Merge remote-tracking branch 'upstream/main' into libm/sinh-msun 2026-10-26 21:04:52 +01:00
Dean 17ecaca307 Merge pull request #10694 from kyon-eth/feat/audio3d-error-strings
feat(libSceAudio3d): implement error descriptions
2026-10-27 09:02:14 +13:00
Dean 265c36523c Merge pull request #10175 from orezraey/fix/libc-fetestexcept-measured-ps5
fix(libc): return fetestexcept's unmasked status bits as measured on a PS5
2026-10-27 08:57:53 +13:00
javierUDP 5a9631df3b docs(relinker): record SHA, AVX-512 and XSAVE under Rosetta on an M5
The entry for the M5 running macOS 26.4 did not say what Rosetta does
with SHA or AVX-512, and the XSAVE entry was measured only on macOS
27.0.1. On that host sha1rnds4 and a 256-bit-wide vpaddd on zmm raise an
illegal instruction alongside RDSEED, CLWB, RDPID, ADCX and ADOX, while
XSAVE writes an XSTATE_BV of 0x7 and XGETBV returns the same x87, SSE
and AVX mask although CPUID leaf 1 still reports neither XSAVE nor
OSXSAVE.

The BMI1 and BMI2 results were compared with the Intel SDM definitions
over 200,000 random inputs each for PDEP, PEXT, BEXTR, BZHI, LZCNT and
TZCNT, so the entry can say they compute the documented result rather
than only that they avoid a fault.
2026-10-26 16:49:15 -03:00
Yunus Shaikh 8d3f15f0e0 Merge main into feat/appcontent-addcont-ids-and-rudp-mss-v2 2026-10-26 12:43:42 -07:00
Dean e0b13f2990 Merge pull request #10954 from AZLisme/feat/batch2-rudp-empty-poll
test(libSceRudp): cover empty poll wait behavior
2026-10-27 08:35:26 +13:00
Adrià 95807428c7 Merge pull request #10522 from YossiYad/feat/camera-without-device
feat(libSceCamera): answer 47 camera exports as a console with no camera connected
2026-10-26 20:32:45 +01:00
roboterspinne 823251ddf5 docs(relinker): record the Windows GS trap refusals as debt
A Windows conversion now fails when a code entry lies after the first
byte of a guest GS instruction that the TLS builder replaces with UD2.
The new debt entry names both messages, says that no option skips the
checks and that Linux output keeps the instruction, so a user who hits
the refusal knows which target to use.
2026-10-26 20:31:54 +01:00
AZLisme 0d6de39b3d docs(libSceNetCtl): remove trailing blank lines 2026-10-27 03:30:16 +08:00
AZLisme 61e16da2c5 feat(libSceNetCtl): deliver IPv6 state callbacks 2026-10-27 03:30:16 +08:00
Dean 930a681f2a Merge pull request #9879 from thuanquang/fix/linear-target-import-creation
perf(agc): create the host import of a linear color target in registered memory
2026-10-27 08:18:22 +13:00
Alvaro ddb51767c0 feat(libSceLibreSsl): implement RSA_size 2026-10-26 20:17:36 +01:00
Alvaro d7928af60f feat(libSceLibreSsl): implement RSA_flags 2026-10-26 20:17:27 +01:00
Retr0 ada29c700c docs(libkernel): state only the socketpair inode numbering as a gap from uipc_sense 2026-10-26 21:14:34 +02:00
noamrogerandClaude Opus 5.5 98be52cd38 feat(libSceHttp2): store cookies in cookie boxes
Co-Authored-By: Claude Opus 5.5 (1M context) <[email protected]>
Claude-Session: https://claude.ai/code/session_01VcCKPwMu3oNWaS8AUph6MW
2026-10-26 20:10:35 +01:00
Retr0 d99208fa84 Merge remote-tracking branch 'origin/main' into fix/socketpair-fstat-inode
# Conflicts:
#	core/libs/prx/libkernel/Socket/src/Udp.cpp
#	docs/dev/debt/libkernel.md
2026-10-26 21:09:20 +02:00
xXPBSXxandClaude Sonnet 5.5 905b15f25c fix(libc): compute sinh with FreeBSD msun's algorithm
sinh_nid_postfix called the host libm's sinh. It now follows the branches and
thresholds of FreeBSD msun's e_sinh.c (release/11.4.0): below 22 through expm1,
between 22 and ln(DBL_MAX) through exp, and up to the overflow threshold through
exp scaled as in k_exp.c's __ldexp_exp. Below 22 the results are bit-identical to
msun; from 22 on they depend on the exp this file provides.

Co-Authored-By: Claude Sonnet 5.5 <[email protected]>
2026-10-26 20:01:35 +01:00
Adrià afc780e681 Merge pull request #10507 from orezraey/feat/videoout-composite-overlay
feat(videoout): composite the overlay bus over the main output
2026-10-26 20:00:54 +01:00
011010 9e23a9263c fix(libkernel): report urgent data in poll on macOS
XNU's poll never reports POLLPRI for out-of-band data, so a guest poll
that asks for it never sees the urgent byte: guest_poll aborts at the
OOB case and a title waiting on priority data would sleep to its
timeout.

On macOS the pending byte is read from SIOCATMARK, which reports it
without consuming it and has no descriptor limit, unlike the fd_set
probe this replaces. POLLRDBAND is set with POLLPRI as FreeBSD 11.4's
sopoll_generic does, and the wait takes the sliced path main already
uses for a kqueue wait, so it wakes on the next slice instead of at the
deadline.

recv(MSG_OOB | MSG_PEEK) was measured to consume the byte on macOS
27.0.1 and kevent with NOTE_OOB does not fire there, which is why the
probe is SIOCATMARK. The select and libSceNet poll paths still miss
urgent data on macOS and are recorded in the debt entry.
2026-10-26 13:00:51 -06:00
Evrim Cicek a7b52084ec fix(libc): set up streams for writing after a read as FreeBSD does on Windows
On Windows the UCRT drops a write that directly follows a read on an r+,
w+ or a+ stream: fputc and fprintf report success, fwrite returns 0 and
fputs returns EOF, all without the error indicator, and the file is left
unchanged, also after an fflush. On a stream open only for reading, fputc
after a read reports success as well.

Writes now first do what FreeBSD 11.4's __swsetup does: a stream open only
for reading fails with EBADF and sets the error indicator, and an update
stream that is reading drops its read buffer and ungetc data, clears end
of file and writes at the descriptor's offset. This covers fwrite, fputs,
fputc, putc_unlocked, fprintf, fprintf_s, fputwc, fputws, fwprintf,
fwprintf_s, puts and wprintf, and printf, vprintf and printf_s, which
write to standard output through PrintWindows and now return -1 there
instead of throwing.

Linux is unchanged: glibc writes at the stream position, which the libc
technical debt now records.
2026-10-26 21:53:56 +03:00
Adrià d891568dfc Merge pull request #10499 from frankea/fix/kernel-gettimezone-host-zone
fix(libkernel): report the host zone's standard offset and daylight saving amount from sceKernelGettimezone
2026-10-26 19:51:44 +01:00
Adrià c9a6013f4d Merge pull request #10468 from JJenkx/fix/libc-nextafter-fenv
fix(libc): preserve nextafter exception flags and denormal modes
2026-10-26 19:50:43 +01:00
Yossi Yadgar 4a515a751f fix(libSceCamera): validate live handles and publish camera API types 2026-10-26 19:49:12 +01:00