Files
AnyPS5/docs/dev/debt/libSceNpAuth.md
T

2.7 KiB

libSceNpAuth technical debt

Unknown function info

  • sceNpAuthGetAuthorizedAppCode (libSceNpAuth) - declared without parameters and returns SCE_NP_ERROR_SIGNED_OUT without reading them, as there is no PSN sign-in; the request parameter and code output are not known. Minecraft (PPSA17221) imports it, fails to load without it, and after its sign-in dialog treats the signed-out code as offline play.
  • sceNpAuthAbortRequest, sceNpAuthGetAuthorizationCode, sceNpAuthGetAuthorizationCodeA, sceNpAuthGetAuthorizationCodeV3, sceNpAuthGetIdToken, sceNpAuthGetIdTokenA, sceNpAuthGetIdTokenV3, sceNpAuthPollAsync, sceNpAuthWaitAsync (libSceNpAuth) - request tracking, ORBIS_NP_AUTH_ERROR_REQUEST_NOT_FOUND (0x80550306) on unknown IDs, ORBIS_NP_AUTH_ERROR_INVALID_ID (0x80550307) on non-async or unprocessed requests in Poll/Wait, ORBIS_NP_AUTH_ERROR_INVALID_ARGUMENT (0x80550301) on null arguments, and ORBIS_NP_AUTH_ERROR_ABORTED (0x80550304) follow shadPS4 (PS4); the A calls forward to their V3 counterparts, which in shadPS4 (AuthorizationCode A, V3; IdToken A, V3) call the same helper and differ only in a version flag; async requests defer SCE_NP_ERROR_SIGNED_OUT to Poll/Wait while sync requests fail immediately; PSN is not contacted. Parameter size validation and PS5 behavior are unverified
  • sceNpAuthSetTimeout (libSceNpAuth) - imported by PPSA01317, which fails to load without it. The signature (reqId, resolveRetry, resolveTimeout, connTimeout, sendTimeout, recvTimeout) follows shadPS4 (PS4), which only stubs it. An unknown request ID returns ORBIS_NP_AUTH_ERROR_REQUEST_NOT_FOUND like the other request calls; otherwise it returns OK and keeps nothing, as no request reaches the network the timeouts would bound. Argument checks of the console are unverified