Services API: Difference between revisions
Remove duplicate |
|||
| (9 intermediate revisions by 3 users not shown) | |||
| Line 5: | Line 5: | ||
= sm: = | = sm: = | ||
This is "nn::sm::detail::IUserInterface". | This is "nn::sm::detail::IUserInterface". | ||
[12.0.0+] This is now a TIPC interface so the command numbers are subtracted by 16. | |||
{| class="wikitable" border="1" | {| class="wikitable" border="1" | ||
| Line 22: | Line 24: | ||
== RegisterClient == | == RegisterClient == | ||
Takes a PID-descriptor and a reserved input u64. | Takes a PID-descriptor and a reserved input u64. No output. | ||
[12.0.0+] Now only takes a PID-descriptor with TIPC. | |||
== GetServiceHandle == | == GetServiceHandle == | ||
Takes | Takes an input [[#ServiceName|ServiceName]]. Returns an output Service handle. | ||
== RegisterService == | == RegisterService == | ||
Takes | Takes an input [[#ServiceName|ServiceName]], an input bool '''IsLight''' and an input s32 '''MaxSessions'''. Returns an output Service handle. | ||
[ | [S2] [20.0.0+] Now takes an input [[#ServiceSpace|ServiceSpace]], a [[#ServiceName|ServiceName]], an input bool '''IsLight''' and an input s32 '''MaxSessions'''. Returns an output Service handle. | ||
== UnregisterService == | == UnregisterService == | ||
Takes | Takes an input [[#ServiceName|ServiceName]]. No output. | ||
[ | [S2] [20.0.0+] Now takes an input [[#ServiceSpace|ServiceSpace]] and a [[#ServiceName|ServiceName]]. No output. | ||
== DetachClient == | == DetachClient == | ||
Takes a PID-descriptor and a reserved input u64. | Takes a PID-descriptor and a reserved input u64. No output. | ||
= sm:m = | = sm:m = | ||
This is "nn::sm::detail::IManagerInterface". | This is "nn::sm::detail::IManagerInterface". | ||
[12.0.0+] This is now a TIPC interface so the command numbers are subtracted by 16. | |||
{| class="wikitable" border="1" | {| class="wikitable" border="1" | ||
| Line 50: | Line 56: | ||
|- | |- | ||
| 1 || [[#UnregisterProcess]] | | 1 || [[#UnregisterProcess]] | ||
|- | |||
| 2 || [S2] [[#RegisterProcess2|RegisterProcess2]] | |||
|- | |||
| 3 || [S2] [20.0.0+] [[#EnableServiceSwitchType1Debug|EnableServiceSwitchType1Debug]] | |||
|} | |} | ||
== RegisterProcess == | == RegisterProcess == | ||
Takes | Takes an input u64 PID and two type-0x5 input buffers '''AccessRightsLimit''' and '''AccessRights'''. No output. | ||
'''AccessRightsLimit''' and '''AccessRights''' contain the [[NPDM#ACID|ACID]] and [[NPDM#ACI0|ACI0]] service lists, respectively. | |||
== UnregisterProcess == | == UnregisterProcess == | ||
Takes a | Takes an input u64 PID. No output. | ||
== RegisterProcess2 == | |||
Takes an input u64 PID, a [[#ServiceSwitchType]], and two type-0x5 input buffers. | |||
== EnableServiceSwitchType1Debug == | |||
No input/output. | |||
= ServiceName = | |||
This is "nn::sm::ServiceName". This is an u64 encoded from a zero-padded string. | |||
= ServiceSwitchType = | |||
This is u8 enum "nn::sm::ServiceSwitchType". | |||
This is Switch 2 exclusive. | |||
= ServiceSpace = | |||
This is u32 enum "nn::sm::ServiceSpace". | |||
This is Switch 2 exclusive. | |||
= Service List = | = Service List = | ||
| Line 177: | Line 208: | ||
| style="background: red" | No | | style="background: red" | No | ||
| style="background: green" | Yes | | style="background: green" | Yes | ||
| hidc:s | | [20.1.0+] hidc:s | ||
| [[HID services]] | | [[HID services]] | ||
| | | | ||
| Line 183: | Line 214: | ||
| style="background: red" | No | | style="background: red" | No | ||
| style="background: green" | Yes | | style="background: green" | Yes | ||
| hidc:d | | [20.1.0+] hidc:d | ||
| [[HID services]] | | [[HID services]] | ||
| | | | ||
| Line 286: | Line 317: | ||
| style="background: green" | Yes | | style="background: green" | Yes | ||
| pl:u | | pl:u | ||
| [[NS Services]] | | [[NS Services]] | ||
| | | | ||
| Line 1,511: | Line 1,530: | ||
| [9.0.0+] lp2p:app | | [9.0.0+] lp2p:app | ||
| [[LDN services]] | | [[LDN services]] | ||
| | | [20.1.0+] Added on Switch 2. | ||
|- | |- | ||
| style="background: green" | Yes | | style="background: green" | Yes | ||
| Line 1,517: | Line 1,536: | ||
| [9.0.0+] lp2p:sys | | [9.0.0+] lp2p:sys | ||
| [[LDN services]] | | [[LDN services]] | ||
| | | [20.1.0+] Added on Switch 2. | ||
|- | |- | ||
| style="background: green" | Yes | | style="background: green" | Yes | ||
| Line 1,523: | Line 1,542: | ||
| [9.1.0+] lp2p:m | | [9.1.0+] lp2p:m | ||
| [[LDN services]] | | [[LDN services]] | ||
| | | [20.1.0+] Added on Switch 2. | ||
|- | |- | ||
| style="background: green" | Yes | | style="background: green" | Yes | ||
| Line 1,543: | Line 1,562: | ||
| | | | ||
|- | |- | ||
| style="background: red" | No | |||
| style="background: green" | Yes | | style="background: green" | Yes | ||
| [20.1.0+] ldr:cmpt | |||
| [ | |||
| [[Loader services]] | | [[Loader services]] | ||
| | | | ||
| Line 1,707: | Line 1,714: | ||
| style="background: red" | No | | style="background: red" | No | ||
| style="background: green" | Yes | | style="background: green" | Yes | ||
| npns:a | | [20.1.0+] npns:a | ||
| [[NPNS services]] | | [[NPNS services]] | ||
| | | | ||
| Line 2,097: | Line 2,104: | ||
| style="background: red" | No | | style="background: red" | No | ||
| style="background: green" | Yes | | style="background: green" | Yes | ||
| spl:rep | | [20.1.0+] spl:rep | ||
| [[SPL services]] | | [[SPL services]] | ||
| | | | ||
| Line 2,103: | Line 2,110: | ||
| style="background: red" | No | | style="background: red" | No | ||
| style="background: green" | Yes | | style="background: green" | Yes | ||
| spl:lrp | | [20.1.0+] spl:lrp | ||
| [[SPL services]] | | [[SPL services]] | ||
| | | | ||
| Line 2,403: | Line 2,410: | ||
| style="background: red" | No | | style="background: red" | No | ||
| style="background: green" | Yes | | style="background: green" | Yes | ||
| chat:sa | | [20.1.0+] chat:sa | ||
| [[Switch 2: Chat services|Chat services]] | | [[Switch 2: Chat services|Chat services]] | ||
| | | | ||
| Line 2,409: | Line 2,416: | ||
| style="background: red" | No | | style="background: red" | No | ||
| style="background: green" | Yes | | style="background: green" | Yes | ||
| chat:ch | | [20.1.0+] chat:ch | ||
| [[Switch 2: Chat services|Chat services]] | | [[Switch 2: Chat services|Chat services]] | ||
| | | | ||
| Line 2,415: | Line 2,422: | ||
| style="background: red" | No | | style="background: red" | No | ||
| style="background: green" | Yes | | style="background: green" | Yes | ||
| chat:ds | | [20.1.0+] chat:ds | ||
| [[Switch 2: Chat services|Chat services]] | | [[Switch 2: Chat services|Chat services]] | ||
| | | | ||
| Line 2,421: | Line 2,428: | ||
| style="background: red" | No | | style="background: red" | No | ||
| style="background: green" | Yes | | style="background: green" | Yes | ||
| chat:alb | | [20.1.0+] chat:alb | ||
| [[Switch 2: Chat services|Chat services]] | | [[Switch 2: Chat services|Chat services]] | ||
| | | | ||
| Line 2,427: | Line 2,434: | ||
| style="background: red" | No | | style="background: red" | No | ||
| style="background: green" | Yes | | style="background: green" | Yes | ||
| chat:con | | [20.1.0+] chat:con | ||
| [[Switch 2: Chat services|Chat services]] | | [[Switch 2: Chat services|Chat services]] | ||
| | | | ||
| Line 2,433: | Line 2,440: | ||
| style="background: red" | No | | style="background: red" | No | ||
| style="background: green" | Yes | | style="background: green" | Yes | ||
| chat:myp | | [20.1.0+] chat:myp | ||
| [[Switch 2: Chat services|Chat services]] | | [[Switch 2: Chat services|Chat services]] | ||
| | | | ||
| Line 2,439: | Line 2,446: | ||
| style="background: red" | No | | style="background: red" | No | ||
| style="background: green" | Yes | | style="background: green" | Yes | ||
| chat:hdr | | [20.1.0+] chat:hdr | ||
| [[Switch 2: Chat services|Chat services]] | | [[Switch 2: Chat services|Chat services]] | ||
| | | | ||
| Line 2,445: | Line 2,452: | ||
| style="background: red" | No | | style="background: red" | No | ||
| style="background: green" | Yes | | style="background: green" | Yes | ||
| chat:nxs | | [20.1.0+] chat:nxs | ||
| [[Switch 2: Chat services|Chat services]] | | [[Switch 2: Chat services|Chat services]] | ||
| | | | ||
| Line 2,451: | Line 2,458: | ||
| style="background: red" | No | | style="background: red" | No | ||
| style="background: green" | Yes | | style="background: green" | Yes | ||
| chat:set | | [20.1.0+] chat:set | ||
| [[Switch 2: Chat services|Chat services]] | | [[Switch 2: Chat services|Chat services]] | ||
| | | | ||
| Line 2,488: | Line 2,495: | ||
| style="background: green" | Yes | | style="background: green" | Yes | ||
| gsv:m | | gsv:m | ||
| | | [[Switch 2: GSV services|GSV services]] | ||
| | | | ||
|- | |- | ||
| Line 2,494: | Line 2,501: | ||
| style="background: green" | Yes | | style="background: green" | Yes | ||
| gsv:t | | gsv:t | ||
| | | [[Switch 2: GSV services|GSV services]] | ||
| | | | ||
|- | |- | ||
| Line 2,500: | Line 2,507: | ||
| style="background: green" | Yes | | style="background: green" | Yes | ||
| gsv:sv | | gsv:sv | ||
| | | [[Switch 2: GSV services|GSV services]] | ||
| | | | ||
|- | |- | ||
| Line 2,506: | Line 2,513: | ||
| style="background: green" | Yes | | style="background: green" | Yes | ||
| gsv:s3 | | gsv:s3 | ||
| | | [[Switch 2: GSV services|GSV services]] | ||
| | | | ||
|- | |- | ||
| Line 2,512: | Line 2,519: | ||
| style="background: green" | Yes | | style="background: green" | Yes | ||
| gsv:s4 | | gsv:s4 | ||
| | | [[Switch 2: GSV services|GSV services]] | ||
| | | | ||
|- | |- | ||
| Line 2,541: | Line 2,548: | ||
| style="background: red" | No | | style="background: red" | No | ||
| style="background: green" | Yes | | style="background: green" | Yes | ||
| tsec:m | | [20.1.0+] tsec:m | ||
| | | | ||
| | | | ||
| Line 2,637: | Line 2,644: | ||
| style="background: red" | No | | style="background: red" | No | ||
| style="background: green" | Yes | | style="background: green" | Yes | ||
| lcs | | [20.1.0+] lcs | ||
| | | | ||
| | | | ||
| Line 2,643: | Line 2,650: | ||
| style="background: red" | No | | style="background: red" | No | ||
| style="background: green" | Yes | | style="background: green" | Yes | ||
| lrp:u | | [20.1.0+] lrp:u | ||
| | | | ||
| | | | ||
| Line 2,649: | Line 2,656: | ||
| style="background: red" | No | | style="background: red" | No | ||
| style="background: green" | Yes | | style="background: green" | Yes | ||
| lrp:d | | [20.1.0+] lrp:d | ||
| | | | ||
| | | | ||
| Line 2,655: | Line 2,662: | ||
| style="background: red" | No | | style="background: red" | No | ||
| style="background: green" | Yes | | style="background: green" | Yes | ||
| cam:u | | [20.1.0+] cam:u | ||
| | | [[Switch 2: Camera services|Camera services]] | ||
| | | | ||
|- | |- | ||
| style="background: red" | No | | style="background: red" | No | ||
| style="background: green" | Yes | | style="background: green" | Yes | ||
| cam:s | | [20.1.0+] cam:s | ||
| | | [[Switch 2: Camera services|Camera services]] | ||
| | | | ||
|- | |- | ||
| style="background: red" | No | | style="background: red" | No | ||
| style="background: green" | Yes | | style="background: green" | Yes | ||
| cam:m | | [20.1.0+] cam:m | ||
| | | [[Switch 2: Camera services|Camera services]] | ||
| | | | ||
|- | |- | ||
| style="background: red" | No | | style="background: red" | No | ||
| style="background: green" | Yes | | style="background: green" | Yes | ||
| spch:a | | [20.1.0+] spch:a | ||
| | | | ||
| | | | ||
| Line 2,679: | Line 2,686: | ||
| style="background: red" | No | | style="background: red" | No | ||
| style="background: green" | Yes | | style="background: green" | Yes | ||
| stpl:u | | [20.0.0+] stpl:u | ||
| | | | ||
| | | | ||
| Line 2,685: | Line 2,692: | ||
| style="background: red" | No | | style="background: red" | No | ||
| style="background: green" | Yes | | style="background: green" | Yes | ||
| stpl:sys | | [20.0.0+] stpl:sys | ||
| | | | ||
| | | | ||
| Line 2,691: | Line 2,698: | ||
| style="background: red" | No | | style="background: red" | No | ||
| style="background: green" | Yes | | style="background: green" | Yes | ||
| stpl:dbg | | [20.0.0+] stpl:dbg | ||
| | | | ||
| | | | ||
|} | |} | ||