Files
AnyPS5/docs/dev/debt/libSceNpMatching2.md
T
Federico Marras 4bb91851bb feat(libSceNpMatching2): model contexts offline
The context calls, the callback registrations and
SetDefaultRequestOptParam threw. They now follow shadPS4's checks and
context ids, ContextStart returns SCE_NET_ERROR_RESOLVER_ETIMEDOUT, the
answer shadPS4 records for a console without internet access, and
Terminate releases the contexts.
2026-10-22 22:55:51 +02:00

1.6 KiB

libSceNpMatching2 technical debt

Functional

  • sceNpMatching2Initialize, sceNpMatching2Terminate (libSceNpMatching2) - only the library state is kept: initialization checks the parameter's size field (0x28, or 0x30 with an SSL pool) as shadPS4 does and starts no thread; a second initialization returns ALREADY_INITIALIZED and a termination without one NOT_INITIALIZED. The pool, thread and SSL settings are not used: no matching server is reached. Not measured on a console
  • sceNpMatching2CreateContext and the context calls (libSceNpMatching2) - offline only, not measured on a PS5: the checks follow shadPS4 and its context manager (a 0x28-byte parameter, ten ids handed out round-robin). sceNpMatching2ContextStart returns 0x804101E2 (SCE_NET_ERROR_RESOLVER_ETIMEDOUT), which shadPS4 says was confirmed on a console disconnected from the internet, so no context starts and sceNpMatching2ContextStop answers CONTEXT_NOT_STARTED. Callbacks and the default request option are checked but never used. The room, user, world, server-id and signaling-info calls still throw