Deathloop (PPSA01670) imports sceHttpAbortWaitRequest; Planet Coaster (PPSA01736) and Palworld import sceHttpWaitRequest. Epoll handles are kept in a registry with an abort flag, a destroyed flag and a condition variable. A wait with a negative timeout blocks until sceHttpAbortWaitRequest, sceHttpDestroyEpoll or the sceHttpTerm of the last context wakes it; a bounded wait still returns 0 events. An abort stays set and makes every later wait return SCE_HTTP_ERROR_ABORTED (0x80431080); a wait woken by destroy or term returns 0 events. sceHttpDestroyEpoll no longer frees a handle a waiter is blocked on. sceHttpInit registers its context, and the epoll calls and sceHttpTerm return BEFORE_INIT without a live context and INVALID_ID for an unknown context or handle. Behaviour and error codes: shadPS4 src/core/libraries/network/http.cpp and http_error.h at a8a70da595da2a96e0410309472ba4a7eb558144. Signature (void* eh): Orbital tools/ida/db_types.json at b321fcdbd700cc02da1cb1ad25412781d5ec73c6 and SharpProspero src/SharpProspero/Interop/Net/Http.cs at 60977b29103452b9681ae10c7a9011d44965bf16. Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com> (cherry picked from commit 766997df3f8329fd6e8e7aac2b5d83daf88c8292) |
||
|---|---|---|
| .. | ||
| Decoder | ||
| libs | ||
| relinker | ||
| shader/recompiler | ||