IPCCommandExample2
Revision as of 15:03, 9 September 2016 by Neobrain (talk | contribs) (Created page with "Adapted from PS:EncryptDecryptAes to illustrate the new IPC command templates. =Request= {{IPC/Request}} {{#vardefine:ipc_offset|0}} {{IPC/RequestEntry|Header code [0x000...")
Adapted from PS:EncryptDecryptAes to illustrate the new IPC command templates.
Request[edit]
Index Word | Description |
---|---|
0 | Header code [0x00040204] |
1 | Size in bytes |
2 | Destination size in bytes (Unused) |
3 | IV / CTR |
4 | IV / CTR |
5 | IV / CTR |
6 | IV / CTR |
7 | u8 Algorithm Type (0..5) |
8 | u8 Key Type (0..7) |
9 | Descriptor for mapping a read-only buffer in the target process |
10 | Source pointer |
11 | Descriptor for mapping a write-only buffer in the target process |
12 | Destination pointer |
Response[edit]
Index Word | Description |
---|---|
0 | Header code [0x00040144] |
1 | Result code |
2-5 | See here. |
Description[edit]
This is a wrapper for PSPXI:EncryptDecryptAes. Before using this PSPXI command, PS module will check whether the algorithm type is AES-CCM. PS module will return error-code 0xC90107E8 when the algorithm type is AES-CCM, since PSPXI:EncryptDecryptAes doesn't support AES-CCM. When the algorithm type is AES-CBC, PS module will clear the low 4-bits of the data size.