shadPS4/src/core/libraries
Stephen Miller 410313ca87
Implement sceKernelGetModuleInfo, sceKernelGetModuleInfoInternal, and sceKernelGetModuleList (#2850)
* Fix GetModule exception

Simple mistake

* Prevent OOB writes in add_segment

Due to mistakes in our linker logic, OpenOrbis' libSceFios2 causes OOB writes here.
While the ideal solution would be to fix the erroneous behavior, the best I'm capable of right now is just preventing the OOB writes.

* Implement sceKernelGetModuleInfo, sceKernelGetModuleInfoInternal, sceKernelGetModuleList

These are implemented based on hardware observations and a homebrew sample made by red_prig. I've yet to test what error cases can show up.

* Clang

* Accurate error returns

If there are more modules than provided space, then return kernel ENOMEM.
If either handles or out_count are null, return kernel EFAULT.

* Accurate error checks in ModuleInfo functions

* Clang
2025-04-27 09:32:01 +03:00
..
ajm Avoid processing job buffers before codec initialization (#2507) 2025-02-23 06:47:44 +03:00
app_content change sizeof to TmpMount.size (#2523) 2025-02-24 12:44:22 +02:00
audio libraries: Initial Audio3d implementation. (#2776) 2025-04-13 23:46:10 -07:00
audio3d libraries: Initial Audio3d implementation. (#2776) 2025-04-13 23:46:10 -07:00
avplayer fix: fix #1457 again by moving av_err2str to a common header (#1688) 2024-12-08 00:52:03 +02:00
disc_map HLE discmap (#2686) 2025-03-25 23:54:32 +02:00
fiber libraries/fiber: print fiber ctx size on stack overflow 2025-01-24 19:37:34 +01:00
game_live_streaming Network libs fixes , stubs and more (#1324) 2024-10-11 10:37:36 +03:00
gnmdriver Emulate memory behavior of libSceGnmDriver initialization (#2807) 2025-04-18 23:41:33 +03:00
hmd libSceHmd Stubs (#2355) 2025-02-05 17:24:53 +02:00
ime Implement sceImeDialogGetPanelSize (#2839) 2025-04-24 13:13:44 -07:00
jpeg Support for Vulkan 1.4 (#1665) 2024-12-07 19:41:41 +02:00
kernel Implement sceKernelGetModuleInfo, sceKernelGetModuleInfoInternal, and sceKernelGetModuleList (#2850) 2025-04-27 09:32:01 +03:00
libc_internal libcInternal HLE fixes (#2491) 2025-02-22 10:56:35 +02:00
libpng hot-fix: debug build fixed 2024-12-01 15:46:08 +01:00
mouse dummy sceMouse module and change sceMouseRead to debug to reduce spam (#2074) 2025-01-06 18:45:53 +02:00
move libraries: Reduce some controller log spam. (#2777) 2025-04-13 18:12:02 +03:00
network [Lib] libsceHttp (#2576) 2025-03-02 23:09:38 +02:00
ngs2 Fix libSceNgs2 HLE regressions (#2732) 2025-04-01 08:57:47 +03:00
np_auth NpAuth library stub (#2808) 2025-04-18 23:42:17 +03:00
np_common Implement sceNpCmp functions (#2114) 2025-01-11 17:58:07 +01:00
np_manager Additional libSceNpManager functions and cleanup (#2195) 2025-01-19 19:12:42 -08:00
np_party stubbed webbrowserdialog,npparty (#2234) 2025-01-24 19:22:06 +02:00
np_score Reorganization of includes (Part 2) 2024-08-30 15:48:21 +02:00
np_trophy load trophy from .wav (#2603) 2025-03-06 16:20:55 +02:00
np_web_api Add libSceNpWebApi (#2150) 2025-01-15 13:19:41 +02:00
pad libraries: Reduce some controller log spam. (#2777) 2025-04-13 18:12:02 +03:00
playgo video_core: Various small improvements and bug fixes (#2525) 2025-02-24 14:31:12 +02:00
random core: Library cleanup (#1631) 2024-11-30 22:37:36 +02:00
razor_cpu libraries: Add libSceRazorCpu HLE skeleton. (#1624) 2024-11-30 11:30:22 +02:00
remote_play Network libs fixes , stubs and more (#1324) 2024-10-11 10:37:36 +03:00
rtc core: Library cleanup (#1631) 2024-11-30 22:37:36 +02:00
save_data language fix (#2421) 2025-02-13 20:01:35 +02:00
screenshot Reorganization of includes (Part 2) 2024-08-30 15:48:21 +02:00
share_play Network libs fixes , stubs and more (#1324) 2024-10-11 10:37:36 +03:00
system Sysmodules (#2826) 2025-04-24 14:46:22 -07:00
ulobjmgr libraries: Proper ulobjmgr stubs (#2740) 2025-04-02 02:41:40 +02:00
usbd usbd: Implement libusb passthrough (#2271) 2025-03-31 18:55:21 +03:00
videodec hotfix: Raise videodec memory back up to 16MB. 2025-01-29 01:32:12 -08:00
videoout VideoOut event cleanup (#2849) 2025-04-27 09:04:17 +03:00
web_browser_dialog stubbed webbrowserdialog,npparty (#2234) 2025-01-24 19:22:06 +02:00
zlib libraries: Implement libSceZlib. (#2256) 2025-01-28 18:48:19 +02:00
error_codes.h core: Library cleanup (#1631) 2024-11-30 22:37:36 +02:00
libs.cpp NpAuth library stub (#2808) 2025-04-18 23:42:17 +03:00
libs.h kernel: Rewrite pthread emulation (#1440) 2024-11-21 22:59:38 +02:00