Difference between revisions of "CECDU:WriteMessageWithHMAC"

From 3dbrew
Jump to navigation Jump to search
(Created page with "=Request= {| class="wikitable" border="1" |- ! Index Word ! Description |- | 0 | Header code [0x00070106] |- | 1 | NCCH Program ID |- | 2 | bool is_out_box? |- | 3 | message...")
 
 
(2 intermediate revisions by 2 users not shown)
Line 1: Line 1:
 
=Request=
 
=Request=
{| class="wikitable" border="1"
+
{{IPC/Request}}
|-
+
{{#vardefine:ipc_offset|0}}
!  Index Word
+
{{IPC/RequestEntry|Header code [0x00070106]}}
!  Description
+
{{IPC/RequestEntry|NCCH Program ID}}
|-
+
{{IPC/RequestEntry|bool is_out_box?}}
| 0
+
{{IPC/RequestEntry|message ID size (unused, always 8)}}
| Header code [0x00070106]
+
{{IPC/RequestEntry|buffer size (unused)}}
|-
+
{{IPC/MapPointerR|buffer address}}
| 1
+
{{IPC/MapPointerR|HMAC key address}}
| NCCH Program ID
+
{{IPC/MapPointerRW|message ID address}}
|-
+
{{IPC/RequestEnd}}
| 2
 
| bool is_out_box?
 
|-
 
| 3
 
| message ID size (unused, always 8)
 
|-
 
| 4
 
| buffer size (unused)
 
|-
 
| 5
 
| [[IPC#Buffer_Mapping_Translation|Buffer Mapping Descriptor(R)]] = (buffer_size << 4) | 0xA
 
|-
 
| 6
 
| buffer address
 
|-
 
| 7
 
| [[IPC#Buffer_Mapping_Translation|Buffer Mapping Descriptor(R)]] = (HMAC_key_size << 4) | 0xA
 
|-
 
| 8
 
| HMAC key address
 
|-
 
| 9
 
| [[IPC#Buffer_Mapping_Translation|Buffer Mapping Descriptor(RW)]] = (message_ID_size << 4) | 0xE
 
|-
 
| 10
 
| message ID address
 
|-
 
|}
 
  
 
=Response=
 
=Response=
{| class="wikitable" border="1"
+
{{IPC/Request}}
|-
+
{{#vardefine:ipc_offset|0}}
!  Index Word
+
{{IPC/RequestEntry|Header code [0x00070046]}}
!  Description
+
{{IPC/RequestEntry|Result code}}
|-
+
{{IPC/MapPointerR|buffer address}}
| 0
+
{{IPC/MapPointerR|HMAC key address}}
| Header code [0x00070046]
+
{{IPC/MapPointerRW|message ID address}}
|-
+
{{IPC/RequestEnd}}
| 1
 
| Result code
 
|-
 
| 2
 
| [[IPC#Buffer_Mapping_Translation|Buffer Unmapping Descriptor(R)]] = (buffer_size << 4) | 0xA
 
|-
 
| 3
 
| buffer address
 
|-
 
| 4
 
| [[IPC#Buffer_Mapping_Translation|Buffer Unmapping Descriptor(R)]] = (HMAC_key_size << 4) | 0xA
 
|-
 
| 5
 
| HMAC key address
 
|-
 
| 6
 
| [[IPC#Buffer_Mapping_Translation|Buffer Unmapping Descriptor(RW)]] = (message_ID_size << 4) | 0xE
 
|-
 
| 7
 
| message ID address
 
|-
 
|}
 

Latest revision as of 09:25, 10 September 2016

Request[edit]

Index Word Description
0 Header code [0x00070106]
1 NCCH Program ID
2 bool is_out_box?
3 message ID size (unused, always 8)
4 buffer size (unused)
5 Descriptor for mapping a read-only buffer in the target process
6 buffer address
7 Descriptor for mapping a read-only buffer in the target process
8 HMAC key address
9 Descriptor for mapping a read/write buffer in the target process
10 message ID address

Response[edit]

Index Word Description
0 Header code [0x00070046]
1 Result code
2 Descriptor for mapping a read-only buffer in the target process
3 buffer address
4 Descriptor for mapping a read-only buffer in the target process
5 HMAC key address
6 Descriptor for mapping a read/write buffer in the target process
7 message ID address