2.5 KiB
libSceNpAuth technical debt
Unknown function info
- 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, andORBIS_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 deferSCE_NP_ERROR_SIGNED_OUTto Poll/Wait while sync requests fail immediately; PSN is not contacted. Parameter size validation and PS5 behavior are unverified
Functional
-
sceNpAuthSetTimeout: native validation and storage are implemented: retry must be nonnegative, the all-zero tuple is invalid, resolve timeout is zero or at least 1000000, and other timeouts are zero or at least 10000000. Invalid arguments precede request lookup. Stored settings currently have no transport to configure because authentication remains offline.
-
sceNpAuthGetAuthorizedAppCode: the five-argument ABI and 40-byte request parameter are recovered. Pointer, size, user, option and request-ID validation replaces the unconditional signed-out result. Valid calls throw because authorization and asynchronous result delivery are not implemented. Client-ID storage is copied as 136 bytes by the firmware; its internal fields and the complete output-code format remain unresolved.