Difference between revisions of "ACT Services"

From 3dbrew
Jump to navigation Jump to search
Line 29: Line 29:
 
=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 23:01, 23 March 2016


The ACT module handles NNID accounts.

ACT service "act:a"

ACT service "act:u"

Command Header Available since system-version Description
0x00010084 Initialize? cmd[1] = u32 ctrsdkversion_probably, cmd[2] = unknown, cmd[3] = 0x20(kernel PID header), cmd[4] = PID value written by kernel, cmd[5] = 0x0(handle-transfer header for kernel), cmd[6] = handle value.
0x00020040 Unknown
0x000600C2 GetAccountDataBlock

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.