OLSC services: Difference between revisions

No edit summary
No edit summary
Line 1: Line 1:
OLSC (OnLine Savedata Cloud?) is a sysmodule designed for handling the online savedata cloud backup system introduced in firmware [[6.0.0]].
OLSC is a sysmodule designed for handling the online savedata cloud backup system introduced in firmware [[6.0.0]].


= olsc:s =
= olsc:s =
Line 8: Line 8:
! Cmd || Name
! Cmd || Name
|-
|-
| 0 || [[#OpenTransferTaskListController]]
| 0 || [[#GetTransferTaskListController]]
|-
|-
| 1 || [[#OpenRemoteStorageController]]
| 1 || [[#GetRemoteStorageController]]
|-
|-
| 2 || [[#OpenDaemonController]]
| 2 || [[#GetDaemonController]]
|-
|-
| 10 ||  
| 10 || PrepareDeleteUserProperty
|-
|-
| 11 ||  
| 11 || DeleteUserSaveDataProperty
|-
|-
| 12 ||  
| 12 || InvalidateMountCache
|-
|-
| 13 || [10.1.0+]  
| 13 || [10.1.0+] DeleteDeviceSaveDataProperty
|-
|-
| 100 || [[#ListLastTransferTaskErrorInfo]]
| 100 || [[#ListTransferTaskErrorInfo]]
|-
|-
| 101 || [[#GetLastErrorInfoCount]]
| 101 || [[#GetTransferTaskErrorInfoCount]]
|-
|-
| 102 || [[#RemoveLastErrorInfoOld]]
| 102 || [[#RemoveTransferTaskErrorInfo0]]
|-
|-
| 103 || [[#GetLastErrorInfo]]
| 103 || [[#GetTransferTaskErrorInfo0]]
|-
|-
| 104 || [7.0.0+] [[#GetLastErrorEventHolder]]
| 104 || [7.0.0+] [[#GetTransferTaskErrorInfoUpdateNativeHandleHolder]]
|-
|-
| 105 || [8.0.0+] [[#GetLastTransferTaskErrorInfo]]
| 105 || [8.0.0+] [[#GetTransferTaskErrorInfo]]
|-
|-
| 200 || [[#GetDataTransferPolicyInfo]]
| 200 || [[#GetDataTransferPolicy]]
|-
|-
| 201 || [[#RemoveDataTransferPolicyInfo]]
| 201 || [[#DeleteDataTransferPolicyCache]]
|-
|-
| 202 || [6.0.0-7.0.1] [[#UpdateDataTransferPolicyOld]]
| 202 || [6.0.0-7.0.1]  
|-
|-
| 203 || [7.0.0+] [[#UpdateDataTransferPolicy]]
| 203 || [7.0.0+] [[#RequestUpdateDataTransferPolicyCacheAsync]]
|-
|-
| 204 || [7.0.0+] [[#CleanupDataTransferPolicyInfo]]
| 204 || [7.0.0+] [[#ClearDataTransferPolicyCache]]
|-
|-
| 205 || [11.0.0+] [[#RequestDataTransferPolicy]]
| 205 || [11.0.0+] [[#RequestGetDataTransferPolicyAsync]]
|-
|-
| 300 || [8.0.0+] [[#GetAutoTransferSeriesInfo]]
| 300 || [8.0.0+] [[#GetUserSaveDataProperty]]
|-
|-
| 301 || [8.0.0+] [[#UpdateAutoTransferSeriesInfo]]
| 301 || [8.0.0+] [[#SetUserSaveDataProperty]]
|-
|-
| 400 || [10.1.0+] [[#CleanupSaveDataArchiveInfoType1]]
| 400 || [10.1.0+] [[#CleanupSaveDataBackupContextForSpecificApplications]]
|-
|-
| 900 || [[#CleanupTransferTask]]
| 900 || [[#DeleteAllTransferTask]]
|-
|-
| 902 || [[#CleanupSeriesInfoType0]]
| 902 || [[#DeleteAllSeriesInfo]]
|-
|-
| 903 || [[#CleanupSaveDataArchiveInfoType0]]
| 903 || [[#DeleteAllSdaInfoCache]]
|-
|-
| 904 || [[#CleanupApplicationAutoTransferSetting]]
| 904 || [[#DeleteAllApplicationSetting]]
|-
|-
| 905 || [[#CleanupErrorHistory]]
| 905 || [[#DeleteAllTransferTaskErrorInfo]]
|-
|-
| 906 || [[#SetLastError]]
| 906 || [[#RegisterTransferTaskErrorInfo]]
|-
|-
| 907 || [[#AddSaveDataArchiveInfoType0]]
| 907 || [[#AddSaveDataArchiveInfoCache]]
|-
|-
| 908 || [[#RemoveSeriesInfoType0]]
| 908 || [[#DeleteSeriesInfo]]
|-
|-
| 909 || [[#GetSeriesInfoType0]]
| 909 || [[#GetSeriesInfo]]
|-
|-
| 910 || [8.0.0+] [[#RemoveLastErrorInfo]]
| 910 || [8.0.0+] [[#RemoveTransferTaskErrorInfo]]
|-
|-
| 911 || [10.1.0+] [[#CleanupSeriesInfoType1]]
| 911 || [10.1.0+] [[#DeleteAllSeriesInfoForSaveDataBackup]]
|-
|-
| 912 || [10.1.0+] [[#RemoveSeriesInfoType1]]
| 912 || [10.1.0+] [[#DeleteSeriesInfoForSaveDataBackup]]
|-
|-
| 913 || [10.1.0+] [[#GetSeriesInfoType1]]
| 913 || [10.1.0+] [[#GetSeriesInfoForSaveDataBackup]]
|-
|-
| 1000 || [7.0.0-8.1.0] [[#UpdateIssueOld]]
| 1000 || [7.0.0-8.1.0]  
|-
|-
| 1010 || [7.0.0-8.1.0]  
| 1010 || [7.0.0-8.1.0]  
|-
|-
| 1011 || [7.0.0-8.1.0] [[#ListIssueInfoOld]]  
| 1011 || [7.0.0-8.1.0]  
|-
|-
| 1012 || [7.0.0-8.1.0] [[#GetIssueOld]]
| 1012 || [7.0.0-8.1.0]  
|-
|-
| 1013 || [7.0.0-8.1.0] [[#GetIssue2Old]]
| 1013 || [7.0.0-8.1.0]  
|-
|-
| 1014 || [7.0.0-8.1.0] [[#GetIssue3Old]]
| 1014 || [7.0.0-8.1.0]  
|-
|-
| 1020 || [7.0.0-8.1.0] [[#RepairIssueOld]]
| 1020 || [7.0.0-8.1.0]  
|-
|-
| 1021 || [7.0.0-8.1.0] [[#RepairIssueWithUserIdOld]]
| 1021 || [7.0.0-8.1.0]  
|-
|-
| 1022 || [7.0.0-8.1.0] [[#RepairIssue2Old]]
| 1022 || [7.0.0-8.1.0]  
|-
|-
| 1023 || [7.0.0-8.1.0] [[#RepairIssue3Old]]
| 1023 || [7.0.0-8.1.0]  
|-
|-
| 1024 || [7.0.0-8.1.0]
| 1024 || [7.0.0-8.1.0]  
|-
|-
| 1100 || [9.0.0+] [[#UpdateIssue]]
| 1100 || [9.0.0+] [[#RepairUpdateIssueInfoCacheAync]]
|-
|-
| 1110 || [9.0.0+]  
| 1110 || [9.0.0+] RepairGetIssueInfo
|-
|-
| 1111 || [9.0.0+] [[#ListIssueInfo]]  
| 1111 || [9.0.0+] [[#RepairListIssueInfo]]  
|-
|-
| 1112 || [9.0.0+] [[#GetIssue]]
| 1112 || [9.0.0+] [[#RepairListOperationPermissionInfo]]
|-
|-
| 1113 || [9.0.0+] [[#GetIssue2]]
| 1113 || [9.0.0+] [[#RepairListDataInfoForRepairedSaveDataDownload]]
|-
|-
| 1114 || [9.0.0+] [[#GetIssue3]]
| 1114 || [9.0.0+] [[#RepairListDataInfoForOriginalSaveDataDownload]]
|-
|-
| 1120 || [9.0.0+] [[#RepairIssue]]
| 1120 || [9.0.0+] [[#RepairUploadSaveDataAsync]]
|-
|-
| 1121 || [9.0.0+] [[#RepairIssueWithUserId]]
| 1121 || [9.0.0+] [[#RepairUploadSaveDataAsync1]]
|-
|-
| 1122 || [9.0.0+] [[#RepairIssue2]]
| 1122 || [9.0.0+] [[#RepairDownloadRepairedSaveDataAsync]]
|-
|-
| 1123 || [9.0.0+] [[#RepairIssue3]]
| 1123 || [9.0.0+] [[#RepairDownloadOriginalSaveDataAsync]]
|-
|-
| 1124 || [9.0.0+]  
| 1124 || [9.0.0+] RepairGetOperationProgressInfo
|-
|-
| 10000 || [17.0.0+]  
| 10000 || [17.0.0+] GetOlscServiceForSystemService
|}
|}


== OpenTransferTaskListController ==
== GetTransferTaskListController ==
Unofficial name.
 
No input. Returns an [[#ITransferTaskListController]].
No input. Returns an [[#ITransferTaskListController]].


== OpenRemoteStorageController ==
== GetRemoteStorageController ==
Unofficial name.
 
Takes a total of 0x10-bytes of input. Returns an [[#IRemoteStorageController]].
Takes a total of 0x10-bytes of input. Returns an [[#IRemoteStorageController]].


== OpenDaemonController ==
== GetDaemonController ==
Unofficial name.
 
No input. Returns an [[#IDaemonController]].
No input. Returns an [[#IDaemonController]].


== ListLastTransferTaskErrorInfo ==
== ListTransferTaskErrorInfo ==
Unofficial name.
 
Takes an input u32 '''Offset''' and a type-0x6 output buffer containing an array of [[#TransferTaskErrorInfo]]. Returns an output u32 '''OutSize'''.
Takes an input u32 '''Offset''' and a type-0x6 output buffer containing an array of [[#TransferTaskErrorInfo]]. Returns an output u32 '''OutSize'''.


== GetLastErrorInfoCount ==
== GetTransferTaskErrorInfoCount ==
Unofficial name.
 
No input. Returns an output u32 '''Count'''.
No input. Returns an output u32 '''Count'''.


== RemoveLastErrorInfoOld ==
== RemoveTransferTaskErrorInfo0 ==
Unofficial name.
 
Takes an input [[Account_services#Uid|Uid]] and an input u64 '''ApplicationId'''. No output.
Takes an input [[Account_services#Uid|Uid]] and an input u64 '''ApplicationId'''. No output.


== GetLastErrorInfo ==
== GetTransferTaskErrorInfo0 ==
Unofficial name.
Takes an input [[Account_services#Uid|Uid]] and an input u64 '''ApplicationId'''. Returns an output [[#TransferTaskErrorInfoForIpc0]].
 
Takes an input [[Account_services#Uid|Uid]] and an input u64 '''ApplicationId'''. Returns an output [[#ErrorInfo]].
 
== GetLastErrorEventHolder ==
Unofficial name.


== GetTransferTaskErrorInfoUpdateNativeHandleHolder ==
No input. Returns an [[#INativeHandleHolder]].
No input. Returns an [[#INativeHandleHolder]].


== GetLastTransferTaskErrorInfo ==
== GetTransferTaskErrorInfo ==
Unofficial name.
 
Takes an input [[Account_services#Uid|Uid]] and an input u64 '''ApplicationId'''. Returns an output [[#TransferTaskErrorInfo]].
Takes an input [[Account_services#Uid|Uid]] and an input u64 '''ApplicationId'''. Returns an output [[#TransferTaskErrorInfo]].


== GetDataTransferPolicyInfo ==
== GetDataTransferPolicy ==
Unofficial name.
 
Takes an input u64 '''ApplicationId'''. Returns two output u8s.  
Takes an input u64 '''ApplicationId'''. Returns two output u8s.  


== RemoveDataTransferPolicyInfo ==
== DeleteDataTransferPolicyCache ==
Unofficial name.
 
Takes an input u64 '''ApplicationId'''. No output.
Takes an input u64 '''ApplicationId'''. No output.


== UpdateDataTransferPolicyOld ==
== RequestUpdateDataTransferPolicyCacheAsync ==
Unofficial name.
 
Takes an input u64 '''ApplicationId'''. Returns an [[#IAsyncResult]].
 
== UpdateDataTransferPolicy ==
Unofficial name.
 
Takes a type-0x5 input buffer. Returns an [[#IAsyncResult]].
Takes a type-0x5 input buffer. Returns an [[#IAsyncResult]].


== CleanupDataTransferPolicyInfo ==
== ClearDataTransferPolicyCache ==
Unofficial name.
 
No input/output.
No input/output.


== RequestDataTransferPolicy ==
== RequestGetDataTransferPolicyAsync ==
Unofficial name.
 
Takes a total of 0x10-bytes of input. Returns an [[#IAsyncDataTransferPolicyRequest]].
Takes a total of 0x10-bytes of input. Returns an [[#IAsyncDataTransferPolicyRequest]].


== GetAutoTransferSeriesInfo ==
== GetUserSaveDataProperty ==
Unofficial name.
Takes an input [[Account_services#Uid|Uid]] and an input u64 '''ApplicationId'''. Returns an output [[#UserSaveDataProperty]].


Takes an input [[Account_services#Uid|Uid]] and an input u64 '''ApplicationId'''. Returns an output [[#AutoTransferSeriesInfo]].
== SetUserSaveDataProperty ==
 
Takes an input [[Account_services#Uid|Uid]], an input u64 '''ApplicationId''' and an input [[#UserSaveDataProperty]]. No output.
== UpdateAutoTransferSeriesInfo ==
Unofficial name.
 
Takes an input [[Account_services#Uid|Uid]], an input u64 '''ApplicationId''' and an input [[#AutoTransferSeriesInfo]]. No output.
 
== CleanupSaveDataArchiveInfoType1 ==
Unofficial name.


== CleanupSaveDataBackupContextForSpecificApplications ==
Takes an input [[Account_services#Uid|Uid]]. No output.
Takes an input [[Account_services#Uid|Uid]]. No output.


== CleanupTransferTask ==
== DeleteAllTransferTask ==
Unofficial name.
 
No input/output.  
No input/output.  


== CleanupSeriesInfoType0 ==
== DeleteAllSeriesInfo ==
Unofficial name.
 
Takes an input [[Account_services#Uid|Uid]]. No output.
Takes an input [[Account_services#Uid|Uid]]. No output.


== CleanupSaveDataArchiveInfoType0 ==
== DeleteAllSdaInfoCache ==
Unofficial name.
 
Takes an input [[Account_services#Uid|Uid]]. No output.
Takes an input [[Account_services#Uid|Uid]]. No output.


== CleanupApplicationAutoTransferSetting ==
== DeleteAllApplicationSetting ==
Unofficial name.
 
Takes an input [[Account_services#Uid|Uid]]. No output.
Takes an input [[Account_services#Uid|Uid]]. No output.


== CleanupErrorHistory ==
== DeleteAllTransferTaskErrorInfo ==
Unofficial name.
 
No input/output.
No input/output.


== SetLastError ==
== RegisterTransferTaskErrorInfo ==
Unofficial name.
Takes an input [[#TransferTaskErrorInfo]]. No output.
 
Takes an input [[#ErrorInfo]]. No output.
 
== AddSaveDataArchiveInfoType0 ==
Unofficial name.


== AddSaveDataArchiveInfoCache ==
Takes an input [[Account_services#Uid|Uid]] and an input [[#SaveDataArchiveInfo]]. No output.
Takes an input [[Account_services#Uid|Uid]] and an input [[#SaveDataArchiveInfo]]. No output.


[19.0.0+] Now takes an additional 8-bytes of input.
[19.0.0+] Now takes an additional 8-bytes of input.


== RemoveSeriesInfoType0 ==
== DeleteSeriesInfo ==
Unofficial name.
 
Takes an input [[Account_services#Uid|Uid]] and an input u64 '''ApplicationId'''. No output.
Takes an input [[Account_services#Uid|Uid]] and an input u64 '''ApplicationId'''. No output.


== GetSeriesInfoType0 ==
== GetSeriesInfo ==
Unofficial name.
 
Takes an input [[Account_services#Uid|Uid]] and an input u64 '''ApplicationId'''. Returns an output [[#SeriesInfo]].
Takes an input [[Account_services#Uid|Uid]] and an input u64 '''ApplicationId'''. Returns an output [[#SeriesInfo]].


== RemoveLastErrorInfo ==
== RemoveTransferTaskErrorInfo ==
Unofficial name.
Same as [[#RemoveTransferTaskErrorInfo0]].
 
Same as [[#RemoveLastErrorInfoOld]].
 
== CleanupSeriesInfoType1 ==
Unofficial name.


== DeleteAllSeriesInfoForSaveDataBackup ==
Takes an input [[Account_services#Uid|Uid]]. No output.
Takes an input [[Account_services#Uid|Uid]]. No output.


== RemoveSeriesInfoType1 ==
== DeleteSeriesInfoForSaveDataBackup ==
Unofficial name.
 
Takes an input [[Account_services#Uid|Uid]] and an input u64 '''ApplicationId'''. No output.
Takes an input [[Account_services#Uid|Uid]] and an input u64 '''ApplicationId'''. No output.


== GetSeriesInfoType1 ==
== GetSeriesInfoForSaveDataBackup ==
Unofficial name.
 
Takes an input [[Account_services#Uid|Uid]] and an input u64 '''ApplicationId'''. Returns an output [[#SeriesInfo]].
Takes an input [[Account_services#Uid|Uid]] and an input u64 '''ApplicationId'''. Returns an output [[#SeriesInfo]].


== UpdateIssueOld ==
== RepairUpdateIssueInfoCacheAync ==
Unofficial name.
 
No input. Returns an [[#IAsyncResult]].
No input. Returns an [[#IAsyncResult]].


== ListIssueInfoOld ==
== RepairListIssueInfo ==
Unofficial name.
 
Takes an input u32 '''Offset''' and a type-0x6 output buffer containing an array of [[#IssueInfo]]. Returns an output u32 '''OutSize'''.
Takes an input u32 '''Offset''' and a type-0x6 output buffer containing an array of [[#IssueInfo]]. Returns an output u32 '''OutSize'''.


== GetIssueOld ==
== RepairListOperationPermissionInfo ==
Unofficial name.
 
Takes an input u64 '''IssueId''' and a type-0x6 output buffer. Returns an output u32 '''OutSize'''.
Takes an input u64 '''IssueId''' and a type-0x6 output buffer. Returns an output u32 '''OutSize'''.


== GetIssue2Old ==
== RepairListDataInfoForRepairedSaveDataDownload ==
Unofficial name.
 
Takes an input u64 '''IssueId''' and a type-0x6 output buffer. Returns an output u32 '''OutSize'''.
Takes an input u64 '''IssueId''' and a type-0x6 output buffer. Returns an output u32 '''OutSize'''.


== GetIssue3Old ==
== RepairListDataInfoForOriginalSaveDataDownload ==
Unofficial name.
 
Takes an input u64 '''IssueId''' and a type-0x6 output buffer. Returns an output u32 '''OutSize'''.
Takes an input u64 '''IssueId''' and a type-0x6 output buffer. Returns an output u32 '''OutSize'''.


== RepairIssueOld ==
== RepairUploadSaveDataAsync ==
Unofficial name.
 
Takes an input u64 '''IssueId'''. Returns an [[#IAsyncResult]].
Takes an input u64 '''IssueId'''. Returns an [[#IAsyncResult]].


== RepairIssueWithUserIdOld ==
== RepairUploadSaveDataAsync1 ==
Unofficial name.
 
Takes an input u64 '''IssueId''' and an input u128 '''UserId'''. Returns an [[#IAsyncResult]].
Takes an input u64 '''IssueId''' and an input u128 '''UserId'''. Returns an [[#IAsyncResult]].


== RepairIssue2Old ==
== RepairDownloadRepairedSaveDataAsync ==
Unofficial name.
 
Takes an input u64 '''IssueId'''. Returns an [[#IAsyncResult]].
Takes an input u64 '''IssueId'''. Returns an [[#IAsyncResult]].


== RepairIssue3Old ==
== RepairDownloadOriginalSaveDataAsync ==
Unofficial name.
 
Takes an input u64 '''IssueId'''. Returns an [[#IAsyncResult]].
Takes an input u64 '''IssueId'''. Returns an [[#IAsyncResult]].
== UpdateIssue ==
Unofficial name.
Same as [[#UpdateIssueOld]].
== ListIssueInfo ==
Unofficial name.
Same as [[#ListIssueInfoOld]].
== GetIssue ==
Unofficial name.
Same as [[#GetIssueOld]].
== GetIssue2 ==
Unofficial name.
Same as [[#GetIssue2Old]].
== GetIssue3 ==
Unofficial name.
Same as [[#GetIssue3Old]].
== RepairIssue ==
Unofficial name.
Same as [[#RepairIssueOld]].
== RepairIssueWithUserId ==
Unofficial name.
Same as [[#RepairIssueWithUserIdOld]].
== RepairIssue2 ==
Unofficial name.
Same as [[#RepairIssue2Old]].
== RepairIssue3 ==
Unofficial name.
Same as [[#RepairIssue3Old]].


== ITransferTaskListController ==
== ITransferTaskListController ==
Line 377: Line 249:
{| class="wikitable" border="1"
{| class="wikitable" border="1"
|-
|-
! Cmd || Name || Notes
! Cmd || Name
|-
|-
| 0 || ||
| 0 || GetTransferTaskCountForOcean
|-
|-
| 1 || ||
| 1 || GetTransferTaskInfoForOcean
|-
|-
| 2 || ||
| 2 || ListTransferTaskInfoForOcean
|-
|-
| 3 || ||
| 3 || DeleteTransferTaskForOcean
|-
|-
| 4 || ||
| 4 || RaiseTransferTaskPriorityForOcean
|-
|-
| 5 || || Returns an [[#INativeHandleHolder]]
| 5 || [[#GetTransferTaskEndEventNativeHandleHolder]]
|-
|-
| 6 || ||
| 6 || GetTransferTaskProgressForOcean
|-
|-
| 7 || ||
| 7 || GetTransferTaskLastResultForOcean
|-
|-
| 8 || || Returns an [[#IStopperObject]]
| 8 || [[#StopNextTransferTaskExecution]]
|-
|-
| 9 || || Returns an [[#INativeHandleHolder]]
| 9 || [[#GetTransferTaskStartEventNativeHandleHolder]]
|-
|-
| 10 || ||
| 10 || SuspendTransferTaskForOcean
|-
|-
| 11 || ||
| 11 || GetCurrentTransferTaskInfoForOcean
|-
|-
| 12 || ||
| 12 || FindTransferTaskInfoForOcean
|-
|-
| 13 || [9.0.0+] ||
| 13 || [9.0.0+] CancelCurrentRepairTransferTask
|-
|-
| 14 || [9.0.0+] ||
| 14 || [9.0.0+] GetRepairTransferTaskProgress
|-
|-
| 15 || [9.0.0+] ||
| 15 || [9.0.0+] EnsureExecutableForRepairTransferTask
|-
|-
| 16 || [10.1.0+] ||
| 16 || [10.1.0+] GetTransferTaskCount
|-
|-
| 17 || [10.1.0+] ||
| 17 || [10.1.0+] GetTransferTaskInfo
|-
|-
| 18 || [10.1.0+] ||
| 18 || [10.1.0+] ListTransferTaskInfo
|-
|-
| 19 || [10.1.0+] ||
| 19 || [10.1.0+] DeleteTransferTask
|-
|-
| 20 || [10.1.0+] ||
| 20 || [10.1.0+] RaiseTransferTaskPriority
|-
|-
| 21 || [10.1.0+] ||
| 21 || [10.1.0+] GetTransferTaskProgress
|-
|-
| 22 || [10.1.0+] ||
| 22 || [10.1.0+] GetTransferTaskLastResult
|-
|-
| 23 || [10.1.0+] ||
| 23 || [10.1.0+] SuspendTransferTask
|-
|-
| 24 || [10.1.0+] ||
| 24 || [10.1.0+] GetCurrentTransferTaskInfo
|-
|-
| 25 || [10.1.0+] ||
| 25 || [10.1.0+] FindTransferTaskInfo
|}
|}
=== GetTransferTaskEndEventNativeHandleHolder ===
No input. Returns an [[#INativeHandleHolder]].
=== StopNextTransferTaskExecution ===
No input. Returns an [[#IStopperObject]].
=== GetTransferTaskStartEventNativeHandleHolder ===
No input. Returns an [[#INativeHandleHolder]].


== INativeHandleHolder ==
== INativeHandleHolder ==
Line 447: Line 328:
{| class="wikitable" border="1"
{| class="wikitable" border="1"
|-
|-
! Cmd || Name || Notes
! Cmd || Name
|-
|-
| 0 || ||
| 0 || RegisterUploadSaveDataTransferTask
|-
|-
| 1 || ||
| 1 || RegisterDownloadSaveDataTransferTask
|-
|-
| 2 || [6.0.0-7.0.1] ||
| 2 || [6.0.0-7.0.1]  
|-
|-
| 3 || ||
| 3 || GetCount
|-
|-
| 4 || [6.0.0-7.0.1] ||
| 4 || [6.0.0-7.0.1]
|-
|-
| 6 || ||
| 6 || ClearDataInfoCache
|-
|-
| 7 || ||
| 7 || [[#RequestUpdateDataInfoCacheAsync]]
|-
|-
| 8 || || Returns an [[#IAsyncResult]]
| 8 || [[#RequestUpdateDataInfoCacheOfSpecifiedApplicationAsync]]
|-
|-
| 9 || || Returns an [[#IAsyncResult]]
| 9 || DeleteDataInfoCache
|-
|-
| 10 || ||
| 10 || GetDataNewness
|-
|-
| 11 || || Returns an [[#IAsyncResult]]
| 11 || [[#RequestDeleteDataAsync]]
|-
|-
| 12 || ||
| 12 || RegisterUploadSaveDataTransferTaskDetail
|-
|-
| 13 || || Returns an [[#IAsyncResult]]
| 13 || [[#RequestRegisterNotificationTokenAsync]]
|-
|-
| 14 || ||
| 14 || GetDataNewnessByApplicationId
|-
|-
| 15 || ||
| 15 || RegisterUploadSaveDataTransferTaskForAutonomyRegistration
|-
|-
| 16 || || Returns an [[#IAsyncResult]]
| 16 || [[#RequestCleanupToDeleteSaveDataArchiveAsync]]
|-
|-
| 17 || [7.0.0+] ||
| 17 || [7.0.0+] ListDataInfo
|-
|-
| 18 || [7.0.0+] ||
| 18 || [7.0.0+] GetDataInfo
|-
|-
| 19 || [7.0.0+] || Returns an [[#INativeHandleHolder]].
| 19 || [7.0.0+] [[#GetDataInfoCacheUpdateNativeHandleHolder]]
|-
|-
| 20 || [10.1.0+] || No input, returns an [[#IAsyncResult]].
| 20 || [10.1.0+] [[#RequestUpdateSaveDataBackupInfoCacheAsync]]
|-
|-
| 21 || [11.0.0+] ||
| 21 || [11.0.0+] ListLoadedDataInfo
|-
|-
| 22 || [11.0.0+] ||
| 22 || [11.0.0+] GetLoadedDataInfo
|-
|-
| 23 || [11.0.0+] ||
| 23 || [11.0.0+] ApplyLoadedData
|-
|-
| 24 || [11.0.0+] ||
| 24 || [11.0.0+] DeleteLoadedData
|-
|-
| 25 || [11.0.0+] ||
| 25 || [11.0.0+] RegisterDownloadSaveDataTransferTaskForAutonomyRegistration
|-
|-
| 900 || [11.0.0+] ||
| 900 || [11.0.0+] SetLoadedDataMissing
|}
|}
=== RequestUpdateDataInfoCacheAsync ===
No input. Returns an [[#IAsyncResult]].
=== RequestUpdateDataInfoCacheOfSpecifiedApplicationAsync ===
No input. Returns an [[#IAsyncResult]].
=== RequestDeleteDataAsync ===
No input. Returns an [[#IAsyncResult]].
=== RequestRegisterNotificationTokenAsync ===
No input. Returns an [[#IAsyncResult]].
=== RequestCleanupToDeleteSaveDataArchiveAsync ===
No input. Returns an [[#IAsyncResult]].
=== GetDataInfoCacheUpdateNativeHandleHolder ===
No input. Returns an [[#INativeHandleHolder]].
=== RequestUpdateSaveDataBackupInfoCacheAsync ===
No input. Returns an [[#IAsyncResult]].


== IAsyncResult ==
== IAsyncResult ==
Line 523: Line 425:
{| class="wikitable" border="1"
{| class="wikitable" border="1"
|-
|-
! Cmd || Name || Notes
! Cmd || Name
|-
| 0 || ||
|-
| 1 || ||
|-
|-
| 2 || ||
| 0 || GetApplicationAutoTransferSetting
|-
|-
| 3 || ||
| 1 || SetApplicationAutoTransferSetting
|-
|-
| 4 || ||
| 2 || GetGlobalAutoUploadSetting
|-
|-
| 5 || [11.0.0+] ||  
| 3 || SetGlobalAutoUploadSetting
|-
|-
| 6 || [11.0.0+] ||  
| 4 || RunTransferTaskAutonomyRegistration
|-
|-
| 8 || ||
| 5 || [11.0.0+] GetGlobalAutoDownloadSetting
|-
|-
| 9 || ||  
| 6 || [11.0.0+] SetGlobalAutoDownloadSetting
|-
|-
| 10 || || Returns an [[#IForbiddenSaveDataIndication]]
| 10 || [[#CreateForbiddenSaveDataInidication]]
|-
|-
| 11 || || Returns an [[#IStopperObject]]
| 11 || [[#StopAutonomyTaskExecution]]
|-
|-
| 12 || ||
| 12 || GetAutonomyTaskStatus
|}
|}
=== CreateForbiddenSaveDataInidication ===
Takes an input u64 '''ApplicationId'''. Returns an [[#IForbiddenSaveDataIndication]].
=== StopAutonomyTaskExecution ===
No input. Returns an [[#IStopperObject]].


== IAsyncDataTransferPolicyRequest ==
== IAsyncDataTransferPolicyRequest ==
Line 559: Line 463:
! Cmd || Name
! Cmd || Name
|-
|-
| 0 ||  
| 0 || GetResult
|-
|-
| 1 ||  
| 1 || Cancel
|-
|-
| 2 ||  
| 2 || IsAvailable
|-
|-
| 3 ||  
| 3 || GetSystemEvent
|-
|-
| 100 ||  
| 100 || GetDataTransferPolicy
|}
|}


Line 635: Line 539:


== VerifySaveDataBackupLicenseAsync ==
== VerifySaveDataBackupLicenseAsync ==
Takes a total of 0x10-bytes of input, returns an output [[#IAsyncResult]].
Takes a total of 0x10-bytes of input. Returns an output [[#IAsyncResult]].


== UpdateSaveDataBackupInfoCacheAsync ==
== UpdateSaveDataBackupInfoCacheAsync ==
Takes a total of 0x10-bytes of input, returns an output [[#IAsyncResult]].
Takes a total of 0x10-bytes of input. Returns an output [[#IAsyncResult]].


== DeleteSaveDataBackupAsync ==
== DeleteSaveDataBackupAsync ==
Takes a total of 0x18-bytes of input, returns an output [[#IAsyncResult]].
Takes a total of 0x18-bytes of input. Returns an output [[#IAsyncResult]].


== ListDownloadableSaveDataBackupInfoAsync ==
== ListDownloadableSaveDataBackupInfoAsync ==
Takes a total of 0x18-bytes of input, a TransferMemory handle, returns an output [[#IAsyncListData]].
Takes a total of 0x18-bytes of input, a TransferMemory handle. Returns an output [[#IAsyncListData]].


== DownloadSaveDataBackupAsync ==
== DownloadSaveDataBackupAsync ==
Takes a total of 0x18-bytes of input, returns an output [[#IAsyncTransferRequest]].
Takes a total of 0x18-bytes of input. Returns an output [[#IAsyncTransferRequest]].


== VerifySaveDataBackupLicenseAsyncForDebug ==
== VerifySaveDataBackupLicenseAsyncForDebug ==
Line 711: Line 615:
! Cmd || Name
! Cmd || Name
|-
|-
| 100 || [[#OpenBgAgentContoller]]
| 100 || [[#OpenBgAgentController]]
|}
|}


== OpenBgAgentContoller ==
== OpenBgAgentController ==
Unofficial name.
 
No input. Returns an [[#IBgAgentContoller]].
No input. Returns an [[#IBgAgentContoller]].


Line 726: Line 628:
! Cmd || Name
! Cmd || Name
|-
|-
| 100 ||  
| 100 || RequestDefaultProfileDownload
|}
|}


= ErrorInfo =
= TransferTaskErrorInfoForIpc0 =
This is a 0x30-byte struct.
This is "nn::olsc::TransferTaskErrorInfoForIpc0". This is a 0x30-byte struct.


{| class="wikitable" border="1"
{| class="wikitable" border="1"
Line 791: Line 693:
|}
|}


= AutoTransferSeriesInfo =
= UserSaveDataProperty =
This is a 0x18-byte struct.
This is "nn::olsc::UserSaveDataProperty". This is a 0x18-byte struct.


{| class="wikitable" border="1"
{| class="wikitable" border="1"