Difference between revisions of "ACT Services"
(Created page with "Category:Services The ACT module handles NNID accounts. = ACT service "act:a" = = ACT service "act:u" = {| class="wikitable" border="1" |- ! Command Header ! Available s...") |
|||
(16 intermediate revisions by 6 users not shown) | |||
Line 3: | Line 3: | ||
The ACT module handles NNID accounts. | The ACT module handles NNID accounts. | ||
− | = ACT service "act: | + | = ACT service "act:u" = |
+ | These commands are common to both act:u and act:a | ||
− | |||
{| class="wikitable" border="1" | {| class="wikitable" border="1" | ||
|- | |- | ||
Line 14: | Line 14: | ||
| 0x00010084 | | 0x00010084 | ||
| | | | ||
− | | Initialize | + | | [[ACT:Initialize|Initialize]] |
+ | |- | ||
+ | | 0x00020040 | ||
+ | | | ||
+ | | [[ACT:GetErrorCode|GetErrorCode]] | ||
+ | |- | ||
+ | | 0x00030000 | ||
+ | | | ||
+ | | GetLastResponsecode | ||
+ | |- | ||
+ | | 0x00040000? | ||
+ | | | ||
+ | | ? | ||
+ | |- | ||
+ | | 0x00050082 | ||
+ | | | ||
+ | | GetCommonInfo | ||
|- | |- | ||
| 0x000600C2 | | 0x000600C2 | ||
| | | | ||
| [[ACTU:GetAccountDataBlock|GetAccountDataBlock]] | | [[ACTU:GetAccountDataBlock|GetAccountDataBlock]] | ||
+ | |- | ||
+ | | 0x00070082 | ||
+ | | | ||
+ | | GetResultAsync | ||
+ | |- | ||
+ | | 0x000800C2 | ||
+ | | | ||
+ | | GetMiiImageData | ||
+ | |- | ||
+ | | 0x00090180 | ||
+ | | | ||
+ | | SetNfsPassword | ||
+ | |- | ||
+ | | 0x000A0040? | ||
+ | | | ||
+ | | ? | ||
+ | |- | ||
+ | | 0x000B0042 | ||
+ | | | ||
+ | | AcquireEulaList | ||
+ | |- | ||
+ | | 0x000C0082 | ||
+ | | | ||
+ | | ? | ||
+ | |- | ||
+ | | 0x000D0040 | ||
+ | | | ||
+ | | GenerateUuid | ||
+ | |- | ||
+ | | 0x000E0080? | ||
+ | | | ||
+ | | ? | ||
+ | |- | ||
+ | | 0x000F0140 | ||
+ | | | ||
+ | | FindSlotNoByUuid | ||
+ | |- | ||
+ | | 0x00100000? | ||
+ | | | ||
+ | | ? | ||
+ | |- | ||
+ | | 0x00110080 | ||
+ | | | ||
+ | | GetTransferableId | ||
+ | |- | ||
+ | | 0x00120102 | ||
+ | | | ||
+ | | AccquireNexServiceToken | ||
+ | |- | ||
+ | | 0x00130002 | ||
+ | | | ||
+ | | GetNexServiceToken | ||
+ | |- | ||
+ | | 0x00140382 | ||
+ | | | ||
+ | | AccquireIndependentServiceToken | ||
+ | |- | ||
+ | | 0x00150002 | ||
+ | | | ||
+ | | GetIndependentServiceToken | ||
+ | |- | ||
+ | | 0x00160082 | ||
+ | | | ||
+ | | AccquireAccountInfo | ||
+ | |- | ||
+ | | 0x00170084 | ||
+ | | | ||
+ | | AccquireAccountIdByPid | ||
+ | |- | ||
+ | | 0x00180044 | ||
+ | | | ||
+ | | GetPidByAccountID | ||
+ | |- | ||
+ | | 0x00190044 | ||
+ | | | ||
+ | | AcquireMii | ||
+ | |- | ||
+ | | 0x001A0042 | ||
+ | | | ||
+ | | AccquireRawAccountInfo | ||
+ | |- | ||
+ | | 0x001B0084 | ||
+ | | | ||
+ | | AccquireOtherTypePrincipalID | ||
+ | |- | ||
+ | | 0x001C0342 | ||
+ | | | ||
+ | | ? | ||
+ | |- | ||
+ | | 0x001D0004 | ||
+ | | | ||
+ | | ? | ||
+ | |- | ||
+ | | 0x001E0082 | ||
+ | | | ||
+ | | AcquireEula | ||
+ | |- | ||
+ | | 0x001F0082 | ||
+ | | | ||
+ | | AcquireEulaLanguageList | ||
+ | |- | ||
|} | |} | ||
+ | |||
+ | = ACT service "act:a" = | ||
+ | These commands are exclusive to act:a | ||
+ | |||
+ | {| class="wikitable" border="1" | ||
+ | |- | ||
+ | ! Command Header | ||
+ | ! Available since system-version | ||
+ | ! Description | ||
+ | |- | ||
+ | | 0x041300C2 | ||
+ | | | ||
+ | | UpdateMiiImage | ||
+ | |- | ||
+ | | 0x041B0142 | ||
+ | | | ||
+ | | AgreeEula | ||
+ | |- | ||
+ | | 0x04210042 | ||
+ | | | ||
+ | | UploadMii | ||
+ | |- | ||
+ | | 0x04230082 | ||
+ | | | ||
+ | | ValidateMailAddress | ||
+ | |} | ||
+ | |||
This is the service used by regular applications. | This is the service used by regular applications. | ||
+ | |||
+ | =HTTPS Requests= | ||
+ | |||
+ | With each request, ACT-sysmodule specifies request-header "X-Nintendo-Device-Model". This is the only *dedicated* request-header that's contains anything Old3DS/New3DS specific. This was implemented with [[9.0.0-20|9.0.0-X]], and presumably [[8.1.0-0_New3DS]]. The value is from a string initialized during ACT-sysmodule startup. The value-string is the [[Cfg:GetSystemModel|codename]] string for all 5 of the model values from [[Cfg:GetSystemModel]]. When the output from GetSystemModel is >=5(switch statement default case), it runs this: "len = snprintf(outstr, outmaxsize, "3DS-%u", model);" | ||
+ | |||
+ | ==Trusted Root CAs== | ||
+ | ACT module uses a [[HTTP_Services|RootCertChain]] for all HTTPS requests, the only trusted root CA is [[SSLC:RootCertChainAddDefaultCert|default]] CertID 0x3. | ||
+ | |||
+ | =New3DS= | ||
+ | Even though ACT-sysmodule uses [[PTM_Services|ptm:s]], it doesn't use CheckNew3DS at all. |
Revision as of 14:43, 10 March 2018
The ACT module handles NNID accounts.
ACT service "act:u"
These commands are common to both act:u and act:a
Command Header | Available since system-version | Description |
---|---|---|
0x00010084 | Initialize | |
0x00020040 | GetErrorCode | |
0x00030000 | GetLastResponsecode | |
0x00040000? | ? | |
0x00050082 | GetCommonInfo | |
0x000600C2 | GetAccountDataBlock | |
0x00070082 | GetResultAsync | |
0x000800C2 | GetMiiImageData | |
0x00090180 | SetNfsPassword | |
0x000A0040? | ? | |
0x000B0042 | AcquireEulaList | |
0x000C0082 | ? | |
0x000D0040 | GenerateUuid | |
0x000E0080? | ? | |
0x000F0140 | FindSlotNoByUuid | |
0x00100000? | ? | |
0x00110080 | GetTransferableId | |
0x00120102 | AccquireNexServiceToken | |
0x00130002 | GetNexServiceToken | |
0x00140382 | AccquireIndependentServiceToken | |
0x00150002 | GetIndependentServiceToken | |
0x00160082 | AccquireAccountInfo | |
0x00170084 | AccquireAccountIdByPid | |
0x00180044 | GetPidByAccountID | |
0x00190044 | AcquireMii | |
0x001A0042 | AccquireRawAccountInfo | |
0x001B0084 | AccquireOtherTypePrincipalID | |
0x001C0342 | ? | |
0x001D0004 | ? | |
0x001E0082 | AcquireEula | |
0x001F0082 | AcquireEulaLanguageList |
ACT service "act:a"
These commands are exclusive to act:a
Command Header | Available since system-version | Description |
---|---|---|
0x041300C2 | UpdateMiiImage | |
0x041B0142 | AgreeEula | |
0x04210042 | UploadMii | |
0x04230082 | ValidateMailAddress |
This is the service used by regular applications.
HTTPS Requests
With each request, ACT-sysmodule specifies request-header "X-Nintendo-Device-Model". This is the only *dedicated* request-header that's contains anything Old3DS/New3DS specific. This was implemented with 9.0.0-X, and presumably 8.1.0-0_New3DS. The value is from a string initialized during ACT-sysmodule startup. The value-string is the codename string for all 5 of the model values from Cfg:GetSystemModel. When the output from GetSystemModel is >=5(switch statement default case), it runs this: "len = snprintf(outstr, outmaxsize, "3DS-%u", model);"
Trusted Root CAs
ACT module uses a RootCertChain for all HTTPS requests, the only trusted root CA is default CertID 0x3.
New3DS
Even though ACT-sysmodule uses ptm:s, it doesn't use CheckNew3DS at all.