Difference between revisions of "Migration services"
(9 intermediate revisions by 3 users not shown) | |||
Line 1: | Line 1: | ||
− | Migration is a sysmodule designed for handling the | + | Migration is a sysmodule designed for handling the Switch-to-Switch transfer system introduced in firmware [[4.0.0]]. |
= mig:usr = | = mig:usr = | ||
Line 7: | Line 7: | ||
|- | |- | ||
! Cmd || Name | ! Cmd || Name | ||
+ | |- | ||
+ | | 0 || [19.0.0+] | ||
|- | |- | ||
| 10 || TryGetLastMigrationInfo | | 10 || TryGetLastMigrationInfo | ||
|- | |- | ||
− | | 100 || CreateServer | + | | 100 || [[#CreateServer]] |
|- | |- | ||
− | | 101 || ResumeServer | + | | 101 || [[#ResumeServer]] |
|- | |- | ||
− | | 200 || CreateClient | + | | 200 || [[#CreateClient]] |
|- | |- | ||
− | | 201 || ResumeClient | + | | 201 || [[#ResumeClient]] |
+ | |- | ||
+ | | 1001 || [8.0.0+] | ||
|- | |- | ||
| 1010 || [7.0.0+] | | 1010 || [7.0.0+] | ||
Line 23: | Line 27: | ||
|- | |- | ||
| 1101 || [7.0.0+] | | 1101 || [7.0.0+] | ||
+ | |- | ||
+ | | 1110 || [17.0.0+] | ||
|- | |- | ||
| 1200 || [7.0.0+] | | 1200 || [7.0.0+] | ||
Line 28: | Line 34: | ||
| 1201 || [7.0.0+] | | 1201 || [7.0.0+] | ||
|} | |} | ||
+ | |||
+ | == CreateServer == | ||
+ | Takes a total of 0x18-bytes of input, a type-0x19 input buffer, a TransferMemory handle, returns an [[#IServer]]. | ||
+ | |||
+ | == ResumeServer == | ||
+ | Takes an input u32, a TransferMemory handle, returns an [[#IServer]]. | ||
+ | |||
+ | == CreateClient == | ||
+ | Takes an input u32, a type-0x19 input buffer, a TransferMemory handle, returns an [[#IClient]]. | ||
+ | |||
+ | == ResumeClient == | ||
+ | Takes an input u32, a TransferMemory handle, returns an [[#IClient]]. | ||
+ | |||
+ | == Cmd1001 == | ||
+ | Takes a total of 8-bytes of input, returns an [[#IAsyncSaveDataMigrationPolicyInfoContext]]. | ||
+ | |||
+ | == Cmd1100 == | ||
+ | Takes a total of 0x20-bytes of input, a type-0x19 input buffer, a TransferMemory handle, returns an [[#IServer_2|IServer]]. | ||
+ | |||
+ | == Cmd1101 == | ||
+ | Takes an input u32, a TransferMemory handle, returns an [[#IServer_2|IServer]]. | ||
+ | |||
+ | == Cmd1200 == | ||
+ | Takes an input u32, a type-0x19 input buffer, a TransferMemory handle, returns an [[#IClient_2|IClient]]. | ||
+ | |||
+ | == Cmd1201 == | ||
+ | Takes an input u32, a TransferMemory handle, returns an [[#IClient_2|IClient]]. | ||
== IServer == | == IServer == | ||
Line 110: | Line 143: | ||
== IAsyncContext == | == IAsyncContext == | ||
− | This is "nn::migration:: | + | This is "nn::migration::detail::IAsyncContext". |
{| class="wikitable" border="1" | {| class="wikitable" border="1" | ||
Line 123: | Line 156: | ||
|- | |- | ||
| 3 || GetResult | | 3 || GetResult | ||
+ | |- | ||
+ | |} | ||
+ | |||
+ | == IAsyncSaveDataMigrationPolicyInfoContext == | ||
+ | This is "nn::migration::detail::IAsyncSaveDataMigrationPolicyInfoContext". | ||
+ | |||
+ | {| class="wikitable" border="1" | ||
+ | |- | ||
+ | ! Cmd || Name | ||
+ | |- | ||
+ | | 0 || GetSystemEvent | ||
+ | |- | ||
+ | | 1 || Cancel | ||
+ | |- | ||
+ | | 2 || HasDone | ||
+ | |- | ||
+ | | 3 || GetResult | ||
+ | |- | ||
+ | | 100 || GetSaveDataMigrationPolicyInfo | ||
+ | |} | ||
+ | |||
+ | == IServer == | ||
+ | This is "nn::migration::savedata::IServer". | ||
+ | |||
+ | This was added with [7.0.0+]. | ||
+ | |||
+ | {| class="wikitable" border="1" | ||
+ | |- | ||
+ | ! Cmd || Name | ||
+ | |- | ||
+ | | 0 || | ||
+ | |- | ||
+ | | 1 || | ||
+ | |- | ||
+ | | 2 || | ||
+ | |- | ||
+ | | 3 || [17.0.0+] | ||
+ | |- | ||
+ | | 100 || | ||
+ | |- | ||
+ | | 101 || | ||
+ | |- | ||
+ | | 200 || | ||
+ | |- | ||
+ | | 201 || | ||
+ | |- | ||
+ | | 210 || [8.0.0+] | ||
+ | |- | ||
+ | | 300 || | ||
+ | |- | ||
+ | | 400 || | ||
+ | |- | ||
+ | | 500 || | ||
+ | |- | ||
+ | | 510 || [19.0.0+] | ||
+ | |- | ||
+ | | 998 || [8.0.0+] | ||
+ | |- | ||
+ | | 999 || [8.0.0+] | ||
+ | |- | ||
+ | |} | ||
+ | |||
+ | == IClient == | ||
+ | This is "nn::migration::savedata::IClient". | ||
+ | |||
+ | This was added with [7.0.0+]. | ||
+ | |||
+ | {| class="wikitable" border="1" | ||
+ | |- | ||
+ | ! Cmd || Name | ||
+ | |- | ||
+ | | 0 || | ||
+ | |- | ||
+ | | 100 || | ||
+ | |- | ||
+ | | 200 || | ||
+ | |- | ||
+ | | 201 || | ||
+ | |- | ||
+ | | 210 || | ||
+ | |- | ||
+ | | 220 || [8.0.0+] | ||
+ | |- | ||
+ | | 221 || [8.0.0+] | ||
+ | |- | ||
+ | | 300 || | ||
+ | |- | ||
+ | | 301 || | ||
+ | |- | ||
+ | | 302 || | ||
+ | |- | ||
+ | | 303 || | ||
+ | |- | ||
+ | | 304 || [17.0.0+] | ||
+ | |- | ||
+ | | 310 || | ||
+ | |- | ||
+ | | 320 || | ||
+ | |- | ||
+ | | 350 || | ||
+ | |- | ||
+ | | 400 || | ||
+ | |- | ||
+ | | 500 || | ||
+ | |- | ||
+ | | 510 || [19.0.0+] | ||
+ | |- | ||
+ | | 996 || [8.0.0+] | ||
+ | |- | ||
+ | | 997 || [8.0.0+] | ||
+ | |- | ||
+ | | 998 || [8.0.0+] | ||
+ | |- | ||
+ | | 999 || | ||
|- | |- | ||
|} | |} | ||
[[Category:Services]] | [[Category:Services]] |
Latest revision as of 20:46, 20 November 2024
Migration is a sysmodule designed for handling the Switch-to-Switch transfer system introduced in firmware 4.0.0.
mig:usr
This is "nn::migration::user::IService"
Cmd | Name |
---|---|
0 | [19.0.0+] |
10 | TryGetLastMigrationInfo |
100 | #CreateServer |
101 | #ResumeServer |
200 | #CreateClient |
201 | #ResumeClient |
1001 | [8.0.0+] |
1010 | [7.0.0+] |
1100 | [7.0.0+] |
1101 | [7.0.0+] |
1110 | [17.0.0+] |
1200 | [7.0.0+] |
1201 | [7.0.0+] |
CreateServer
Takes a total of 0x18-bytes of input, a type-0x19 input buffer, a TransferMemory handle, returns an #IServer.
ResumeServer
Takes an input u32, a TransferMemory handle, returns an #IServer.
CreateClient
Takes an input u32, a type-0x19 input buffer, a TransferMemory handle, returns an #IClient.
ResumeClient
Takes an input u32, a TransferMemory handle, returns an #IClient.
Cmd1001
Takes a total of 8-bytes of input, returns an #IAsyncSaveDataMigrationPolicyInfoContext.
Cmd1100
Takes a total of 0x20-bytes of input, a type-0x19 input buffer, a TransferMemory handle, returns an IServer.
Cmd1101
Takes an input u32, a TransferMemory handle, returns an IServer.
Cmd1200
Takes an input u32, a type-0x19 input buffer, a TransferMemory handle, returns an IClient.
Cmd1201
Takes an input u32, a TransferMemory handle, returns an IClient.
IServer
This is "nn::migration::user::IServer"
Cmd | Name |
---|---|
0 | GetUid |
1 | GetServerProfile |
100 | PrepareAsync |
101 | GetConnectionRequirement |
200 | WaitConnectionAsync |
201 | GetClientProfile |
202 | AcceptConnectionAsync |
203 | DeclineConnectionAsync |
300 | ProcessTransferAsync |
400 | CompleteAsync |
500 | Abort |
IClient
This is "nn::migration::user::IClient"
Cmd | Name |
---|---|
0 | GetClientProfile |
10 | CreateLoginSession |
11 | GetNetworkServiceAccountId |
12 | GetUserNickname |
13 | GetUserProfileImage |
100 | PrepareAsync |
101 | GetConnectionRequirement |
200 | ScanServersAsync |
201 | ListServers |
210 | ConnectByServerIdAsync |
300 | GetStorageShortfall |
301 | GetTotalTransferInfo |
302 | GetImmigrantUid |
310 | GetCurrentTransferInfo |
311 | GetCurrentRelatedApplications |
320 | TransferNextAsync |
350 | SuspendAsync |
400 | CompleteAsync |
500 | Abort |
999 | DebugSynchronizeStateInFinalizationAsync |
IAsyncContext
This is "nn::migration::detail::IAsyncContext".
Cmd | Name |
---|---|
0 | GetSystemEvent |
1 | Cancel |
2 | HasDone |
3 | GetResult |
IAsyncSaveDataMigrationPolicyInfoContext
This is "nn::migration::detail::IAsyncSaveDataMigrationPolicyInfoContext".
Cmd | Name |
---|---|
0 | GetSystemEvent |
1 | Cancel |
2 | HasDone |
3 | GetResult |
100 | GetSaveDataMigrationPolicyInfo |
IServer
This is "nn::migration::savedata::IServer".
This was added with [7.0.0+].
Cmd | Name |
---|---|
0 | |
1 | |
2 | |
3 | [17.0.0+] |
100 | |
101 | |
200 | |
201 | |
210 | [8.0.0+] |
300 | |
400 | |
500 | |
510 | [19.0.0+] |
998 | [8.0.0+] |
999 | [8.0.0+] |
IClient
This is "nn::migration::savedata::IClient".
This was added with [7.0.0+].
Cmd | Name |
---|---|
0 | |
100 | |
200 | |
201 | |
210 | |
220 | [8.0.0+] |
221 | [8.0.0+] |
300 | |
301 | |
302 | |
303 | |
304 | [17.0.0+] |
310 | |
320 | |
350 | |
400 | |
500 | |
510 | [19.0.0+] |
996 | [8.0.0+] |
997 | [8.0.0+] |
998 | [8.0.0+] |
999 |