diff options
-rw-r--r-- | include/kernel/kernel/modulemgr.h | 30 | ||||
-rw-r--r-- | nids/360/SceKernelModulemgr.yml | 6 |
2 files changed, 21 insertions, 15 deletions
diff --git a/include/kernel/kernel/modulemgr.h b/include/kernel/kernel/modulemgr.h index bbf42b6..3432b3d 100644 --- a/include/kernel/kernel/modulemgr.h +++ b/include/kernel/kernel/modulemgr.h @@ -112,16 +112,18 @@ typedef struct { }; } SceKernelModuleListInfo; -typedef struct -{ - SceSize size; //!< sizeof(SceKernelModuleInfo2) +typedef struct { + SceSize size; //!< sizeof(SceKernelModuleInfo2) : 0x120 SceUID modid1; - uint32_t unk1; - uint32_t unk2; - uint32_t unk3; - uint32_t unk4; - char module_name[256]; - uint32_t unk5; + uint32_t unk_0x08; + uint16_t unk_0x0C; + uint16_t unk_0x0E; + uint16_t unk_0x10; + uint16_t unk_0x12; + uint16_t unk_0x14; + uint16_t unk_0x16; + char module_name[0x100]; // offset : 0x18 + uint32_t unk_0x118; SceUID modid2; } SceKernelModuleInfo2; @@ -193,15 +195,13 @@ SceUID sceKernelGetProcessMainModule(SceUID pid); int sceKernelGetModuleList2(SceUID pid, SceKernelModuleListInfo *infolists, size_t *num); /** - * @param[in] pid - target pid - * @param[in] modid - target modid - * @param[out] info - info output - * @param[in] unk1 - set 0x120 - * @param[in] unk2 - set 0x120 + * @param[in] pid - target pid + * @param[in] modid - target modid + * @param[out] info - info output * * @return 0 on success, < 0 on error. */ -int sceKernelGetModuleInfo2(SceUID pid, SceUID modid, SceKernelModuleInfo2 *info, int unk1, int unk2); +int sceKernelGetModuleInfo2(SceUID pid, SceUID modid, SceKernelModuleInfo2 *info); int sceKernelGetModuleLibraryInfo(SceUID pid, SceUID modid, void *unk1, const void *unk2, int unk3); int sceKernelGetModuleUid(SceUID pid, SceUID modid, SceUID *modid_out, const void *unk1, int unk2); diff --git a/nids/360/SceKernelModulemgr.yml b/nids/360/SceKernelModulemgr.yml index 84718bb..1f1cb61 100644 --- a/nids/360/SceKernelModulemgr.yml +++ b/nids/360/SceKernelModulemgr.yml @@ -32,6 +32,7 @@ modules: SceModulemgrForDriver: nid: 0xD4A60A52 functions: + sceKernelGetModuleInfoByAddr: 0x1D9E0F7E sceKernelGetSystemSwVersion: 0x5182E212 sceKernelLoadModule: 0x86D8D634 sceKernelLoadStartModule: 0x189BFBBB @@ -50,8 +51,10 @@ modules: nid: 0xC445FA63 functions: sceKernelFinalizeKbl: 0xFDD7F646 + sceKernelGetModuleIdByAddr: 0x0053BA4A sceKernelGetModuleInfo: 0xD269F915 sceKernelGetModuleInfo2: 0x6A655255 + sceKernelGetModuleInfoMinByAddr: 0x8309E043 sceKernelGetModuleInternal: 0xFE303863 sceKernelGetModuleLibraryInfo: 0xD4BF409C sceKernelGetModuleList: 0x97CF7B4E @@ -64,9 +67,12 @@ modules: sceKernelLoadPreloadingModules: 0x3AD26B43 sceKernelLoadProcessImage: 0xAC4EABDB sceKernelLoadPtLoadSegForFwloader: 0x448810D5 + sceKernelModuleUnloadMySelf: 0x2A69385E sceKernelMountBootfs: 0x01360661 sceKernelRegisterSyscall: 0xB427025E + sceKernelSetupForModulemgr: 0x3382952B sceKernelStartModuleForPid: 0x6DF745D5 + sceKernelStartPreloadingModules: 0x432DCC7A sceKernelStopModuleForPid: 0x7BB4CE54 sceKernelUmountBootfs: 0x9C838A6B sceKernelUnloadModuleForPid: 0x5972E2CC |