ACT Services: Difference between revisions
DaniElectra (talk | contribs) m Add link to ACTU:GetCommonInfo and add more commands |
|||
(13 intermediate revisions by 8 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 | ||
| | | | ||
| | | [[ACT:Initialize|Initialize]] | ||
|- | |- | ||
| 0x00020040 | | 0x00020040 | ||
| | | | ||
| | | [[ACT:GetErrorCode|GetErrorCode]] | ||
|- | |||
| 0x00030000 | |||
| | |||
| GetLastResponsecode | |||
|- | |||
| 0x00040000? | |||
| | |||
| ? | |||
|- | |||
| 0x00050082 | |||
| | |||
| [[ACTU:GetCommonInfo|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 | |||
|- | |||
| 0x04020000 | |||
| | |||
| [[ACTA:CreateLocalAccount|CreateLocalAccount]] | |||
|- | |||
| 0x04040080 | |||
| | |||
| [[ACTA:ResetAccount|ResetAccount]] | |||
|- | |||
| 0x04090040 | |||
| | |||
| [[ACTA:SetDefaultAccount|SetDefaultAccount]] | |||
|- | |||
| 0x041207C0 | |||
| | |||
| [[ACTA:UpdateMii|UpdateMii]] | |||
|- | |||
| 0x041300C2 | |||
| | |||
| UpdateMiiImage | |||
|- | |||
| 0x041B0142 | |||
| | |||
| AgreeEula | |||
|- | |||
| 0x04210042 | |||
| | |||
| UploadMii | |||
|- | |||
| 0x04230082 | |||
| | |||
| ValidateMailAddress | |||
|} | |} | ||
This is the service used by regular applications. | This is the service used by regular applications. | ||
Line 29: | Line 185: | ||
=HTTPS Requests= | =HTTPS Requests= | ||
With each request, ACT-sysmodule specifies request-header "X-Nintendo-Device-Model". 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);" | 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== | ==Trusted Root CAs== |
Revision as of 01:14, 26 September 2023
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 |
---|---|---|
0x04020000 | CreateLocalAccount | |
0x04040080 | ResetAccount | |
0x04090040 | SetDefaultAccount | |
0x041207C0 | UpdateMii | |
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.