summaryrefslogtreecommitdiff
path: root/include/user/kernel/modulemgr.h
diff options
context:
space:
mode:
Diffstat (limited to 'include/user/kernel/modulemgr.h')
-rw-r--r--include/user/kernel/modulemgr.h17
1 files changed, 15 insertions, 2 deletions
diff --git a/include/user/kernel/modulemgr.h b/include/user/kernel/modulemgr.h
index 3aa6f30..b1be55d 100644
--- a/include/user/kernel/modulemgr.h
+++ b/include/user/kernel/modulemgr.h
@@ -21,6 +21,12 @@ extern "C" {
#define SCE_KERNEL_STOP_CANCEL SCE_KERNEL_STOP_FAIL
/** @} */
+typedef enum SceKernelModuleState {
+ SCE_KERNEL_MODULE_STATE_READY = 0x00000002,
+ SCE_KERNEL_MODULE_STATE_STARTED = 0x00000006,
+ SCE_KERNEL_MODULE_STATE_ENDED = 0x00000009
+} SceKernelModuleState;
+
typedef struct SceKernelSegmentInfo {
SceSize size; //!< this structure size (0x18)
SceUInt perms; //!< probably rwx in low bits
@@ -49,7 +55,7 @@ typedef struct SceKernelModuleInfo {
SceSize tlsAreaSize;
char path[256];
SceKernelSegmentInfo segments[4];
- SceUInt type; //!< 6 = user-mode PRX?
+ SceUInt state; //!< see:SceKernelModuleState
} SceKernelModuleInfo;
typedef struct SceKernelLMOption {
@@ -60,7 +66,7 @@ typedef struct SceKernelULMOption {
SceSize size;
} SceKernelULMOption;
-int sceKernelGetModuleList(int flags, SceUID *modids, int *num);
+int sceKernelGetModuleList(int flags, SceUID *modids, SceSize *num);
int sceKernelGetModuleInfo(SceUID modid, SceKernelModuleInfo *info);
SceUID sceKernelLoadModule(const char *path, int flags, SceKernelLMOption *option);
@@ -79,6 +85,13 @@ typedef struct SceKernelFwInfo {
SceUInt unk_24;
} SceKernelFwInfo;
+/**
+ * Gets system firmware information.
+ *
+ * @param[out] data - firmware information.
+ *
+ * @note - If you spoofed the firmware version it will return the spoofed firmware.
+ */
int sceKernelGetSystemSwVersion(SceKernelFwInfo *data);
#ifdef __cplusplus