Migration services
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 | 
|---|---|
| 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+] | 
| 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 | |
| 1 | |
| 2 | |
| 3 | |
| 100 | 
IServer
This is "nn::migration::savedata::IServer".
This was added with [7.0.0+].
| Cmd | Name | 
|---|---|
| 0 | |
| 1 | |
| 2 | |
| 100 | |
| 101 | |
| 200 | |
| 201 | |
| 210 | [8.0.0+] | 
| 300 | |
| 400 | |
| 500 | |
| 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 | |
| 310 | |
| 320 | |
| 350 | |
| 400 | |
| 500 | |
| 996 | [8.0.0+] | 
| 997 | [8.0.0+] | 
| 998 | [8.0.0+] | 
| 999 |