Difference between revisions of "Settings services"
| (3 intermediate revisions by one other user not shown) | |||
| Line 31: | Line 31: | ||
|} | |} | ||
| − | Used for accessing data calibrated at the factory. | + | Used for accessing data calibrated at the factory. Probably only for console-unique data?(Everything read so far has been console-unique) |
== GetDeviceCert == | == GetDeviceCert == | ||
Takes a type-0x16 output buffer with fixed size 0x180. | Takes a type-0x16 output buffer with fixed size 0x180. | ||
| − | Returns the DeviceCert. | + | Returns the DeviceCert. This is identical to 3DS DeviceCert/CTCert besides the strings. NIM loads the DeviceId from this. |
== GetDeviceCert2 == | == GetDeviceCert2 == | ||
| Line 46: | Line 46: | ||
Takes a type-0x16 output buffer with fixed size 0x134. | Takes a type-0x16 output buffer with fixed size 0x134. | ||
| − | Returns the encrypted TLS client-privk. | + | Returns a container-structure for the encrypted TLS client-privk. Decrypting this fails unless an unknown size >0x134 is passed to this setcal cmd? |
Used by SSL-sysmodule, see [[SSL_services|here]]. | Used by SSL-sysmodule, see [[SSL_services|here]]. | ||
| Line 53: | Line 53: | ||
Takes a type-0x16 output buffer with fixed size 0x804. | Takes a type-0x16 output buffer with fixed size 0x804. | ||
| − | Returns the plaintext TLS client-cert | + | Returns a container-structure for the plaintext TLS client-cert. |
| + | |||
| + | Used by SSL-sysmodule, see [[SSL_services|here]]. | ||
| + | |||
| + | === setcal Container Structure === | ||
| + | {| class="wikitable" border="1" | ||
| + | |- | ||
| + | ! Offset | ||
| + | ! Size | ||
| + | ! Name | ||
| + | |- | ||
| + | | 0x0 | ||
| + | | 0x4 | ||
| + | | Size (same size used for decryption if needed) | ||
| + | |- | ||
| + | | 0x4 | ||
| + | | {above size} | ||
| + | | Actual data starts here. | ||
| + | |} | ||
= set:sys = | = set:sys = | ||
| Line 63: | Line 81: | ||
|- | |- | ||
| ? || GetSerialNumber (Returns the 0x18-byte SerialNumber string) | | ? || GetSerialNumber (Returns the 0x18-byte SerialNumber string) | ||
| + | |- | ||
| + | | 56 || [[Flash_Filesystem#PRODINFOF|GetWirelessCertification]] | ||
|} | |} | ||
Latest revision as of 10:28, 2 July 2017
Contents
set
| Cmd | Name |
|---|---|
| 0 | GetLanguageCode |
| 1 | SetLanguageCode |
| 3 | |
| 4 |
set:fd
set:cal
| Cmd | Name |
|---|---|
| 14 | GetDeviceCert |
| 15 | GetDeviceCert2 |
| 16 | GetTLSClientPrivk |
| 17 | GetTLSClientCert |
Used for accessing data calibrated at the factory. Probably only for console-unique data?(Everything read so far has been console-unique)
GetDeviceCert
Takes a type-0x16 output buffer with fixed size 0x180.
Returns the DeviceCert. This is identical to 3DS DeviceCert/CTCert besides the strings. NIM loads the DeviceId from this.
GetDeviceCert2
Takes a type-0x16 output buffer with fixed size 0x240.
Same as GetDeviceCert, except this returns more data and the data starts differing at offset 0x108 compared to GetDeviceCert.
GetTLSClientPrivk
Takes a type-0x16 output buffer with fixed size 0x134.
Returns a container-structure for the encrypted TLS client-privk. Decrypting this fails unless an unknown size >0x134 is passed to this setcal cmd?
Used by SSL-sysmodule, see here.
GetTLSClientCert
Takes a type-0x16 output buffer with fixed size 0x804.
Returns a container-structure for the plaintext TLS client-cert.
Used by SSL-sysmodule, see here.
setcal Container Structure
| Offset | Size | Name |
|---|---|---|
| 0x0 | 0x4 | Size (same size used for decryption if needed) |
| 0x4 | {above size} | Actual data starts here. |
set:sys
| Cmd | Name |
|---|---|
| ? | GetSystemVersion |
| ? | GetSerialNumber (Returns the 0x18-byte SerialNumber string) |
| 56 | GetWirelessCertification |
GetSystemVersion
Returns the content of the System_Version_Title "/file".