vitasdk
Documentation of the vitasdk
ssmgr.h
Go to the documentation of this file.
1 
6 #ifndef _PSP2KERN_KERNEL_SSMGR_H_
7 #define _PSP2KERN_KERNEL_SSMGR_H_
8 
9 #include <vitasdk/build_utils.h>
10 #include <psp2kern/types.h>
11 
12 #ifdef __cplusplus
13 extern "C" {
14 #endif
15 
16 typedef struct SceConsoleId { // size is 0x10
17  uint16_t unk;
18  uint16_t company_code;
19  uint16_t product_code;
20  uint16_t product_sub_code;
21  union {
22  struct {
23  uint8_t unk2: 2;
24  uint8_t factory_code: 6;
25  };
26  uint8_t chassis_check;
27  };
28  uint8_t unk3[7];
29 } SceConsoleId;
31 
32 typedef struct SceOpenPsId { // size is 0x10
33  uint8_t open_psid[0x10];
34 } SceOpenPsId;
36 
37 typedef struct ScePsCode { // size is 0x10
38  uint16_t company_code;
39  uint16_t product_code;
40  uint16_t product_sub_code;
41  uint16_t factory_code;
42 } ScePsCode;
44 
48 
50 
51 int ksceSblDmac5AesCbcDec(const void *src, void *dst, int size, const void *key, int key_size, void *iv, int mask_enable);
52 int ksceSblDmac5AesCbcEnc(const void *src, void *dst, int size, const void *key, int key_size, void *iv, int mask_enable);
53 int ksceSblDmac5AesCtrDec(const void *src, void *dst, int size, const void *key, int key_size, void *iv, int mask_enable);
54 
55 #define ksceSblSsMgrAesCtrDecrypt ksceSblDmac5AesCtrDec
56 
57 typedef struct ScePortabilityData { // size is 0x24
58  SceSize msg_size; // max size is 0x20
59  uint8_t msg[0x20];
62 
64 
65 #ifdef __cplusplus
66 }
67 #endif
68 
69 #endif /* _PSP2KERN_KERNEL_SSMGR_H_ */
ScePsCode pscode
Definition: kbl.h:18
SceSize size
struct size(variable size)
Definition: debug.h:0
int ksceSblSsDecryptWithPortability(SceUInt32 key_type, void *iv, ScePortabilityData *src, ScePortabilityData *dst)
uint16_t product_code
Definition: ssmgr.h:19
int ksceSblDmac5AesCbcDec(const void *src, void *dst, int size, const void *key, int key_size, void *iv, int mask_enable)
VITASDK_BUILD_ASSERT_EQ(0x10, SceConsoleId)
uint8_t unk3[7]
Definition: ssmgr.h:28
int ksceSblDmac5AesCtrDec(const void *src, void *dst, int size, const void *key, int key_size, void *iv, int mask_enable)
int ksceSblAimgrGetOpenPsId(SceOpenPsId *open_psid)
uint8_t msg[0x20]
Definition: ssmgr.h:59
uint8_t open_psid[0x10]
Definition: ssmgr.h:33
uint8_t factory_code
Definition: ssmgr.h:24
SceSize msg_size
Definition: ssmgr.h:58
uint16_t factory_code
Definition: ssmgr.h:41
uint8_t chassis_check
Definition: ssmgr.h:26
int ksceSblDmac5AesCbcEnc(const void *src, void *dst, int size, const void *key, int key_size, void *iv, int mask_enable)
int ksceSblRngPseudoRandomNumber(void *result, SceSize size)
uint16_t product_code
Definition: ssmgr.h:39
uint16_t company_code
Definition: ssmgr.h:18
uint16_t unk
Definition: ssmgr.h:17
uint16_t product_sub_code
Definition: ssmgr.h:20
uint16_t product_sub_code
Definition: ssmgr.h:40
int ksceSblAimgrGetConsoleId(SceConsoleId *cid)
uint8_t unk2
Definition: ssmgr.h:23
int ksceSblAimgrGetPscode(ScePsCode *pscode)
uint16_t company_code
Definition: ssmgr.h:38
Definition: ssmgr.h:16
Definition: ssmgr.h:32
Definition: ssmgr.h:57
Definition: ssmgr.h:37
unsigned int SceSize
Definition: types.h:56
uint32_t SceUInt32
Definition: types.h:45