3.2 KiB
libSceNpSessionSignaling technical debt
Unknown function info
-
sceNpSessionSignalingInitialize, sceNpSessionSignalingCreateContext and sceNpSessionSignalingCreateContext2 - the initialization layout is 40 bytes; both context layouts are 56 bytes with callback and user-data pairs. The second context variant adds a group identifier to its connection callback. Pool allocation, callback delivery and underlying NP account validation are not implemented; priority and affinity settings do not affect host scheduling.
-
sceNpSessionSignalingGetConnectionStatus, sceNpSessionSignalingActivateSession and sceNpSessionSignalingActivateUser - initialization, context lookup and output validation follow the system library. Connections never activate in the offline runtime; activation returns unavailable and a connection query on a valid context returns connection-not-found without writing outputs. SDK-dependent peer-address validation and local-network discovery remain incomplete.
-
sceNpSessionSignalingCreateJoinActivate, sceNpSessionSignalingGetCustomProperty, sceNpSessionSignalingGetGroupFromPeerAddress, sceNpSessionSignalingInitializeWithPort, sceNpSessionSignalingJoinActivate and sceNpSessionSignalingSetCustomProperty (libSceNpSessionSignaling) - names and NIDs are present in the PS5 3.20 export inventory, but no credible prototypes were found. They are declared without parameters solely to resolve known imports; this is not an ABI claim.
Functional
-
sceNpSessionSignalingGetGroupInfo, sceNpSessionSignalingGetGroupFromSessionId, sceNpSessionSignalingGetConnectionFromNetAddress, sceNpSessionSignalingGetConnectionFromNetAddress2, sceNpSessionSignalingGetConnectionFromPeerAddress, sceNpSessionSignalingGetConnectionFromPeerAddress2 (libSceNpSessionSignaling) - no session ever activates here, so every lookup on a valid context ends at not-found (group 0x8055330A, connection 0x8055330C). The signatures and the checks before it are the PS5 13.60 module's, read from disassembly: 0x80553301 before initialization, 0x80553303 for a null pointer, then 0x80553308 for an unknown context
-
sceNpSessionSignalingGetGroupFromSessionId, sceNpSessionSignalingGetConnectionFromPeerAddress, sceNpSessionSignalingGetConnectionFromPeerAddress2 (libSceNpSessionSignaling) - three titles disassembled for this entry import them, five call sites in all: PPSA02530 (GroupFromSessionId 0x87c9118, PeerAddress2 0x87c912f), PPSA02225 (PeerAddress2 0x9e5595 and 0x9e5787) and PPSA01285 (PeerAddress 0xeecf55). PPSA02530 and PPSA01285 test the result only for negative, PPSA02225 at 0x9e5787 only for nonzero, and none of these sites compares it with a specific code; on a negative result PPSA02530 jumps to 0x87c914d, and on a nonzero result PPSA02225 jumps to 0x9e53d0 at 0x9e5787. What PPSA01285 does after a negative result (a wait path from 0xeecf9b) was not read.