OLSC services: Difference between revisions

No edit summary
 
(6 intermediate revisions by one other user not shown)
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 =
This is "nn::olsc::srv::IOlscServiceForSystemService".
[18.0.0+] This is "nn::olsc::srv::IServiceGetter".
{| class="wikitable" border="1"
|-
! Cmd || Name
|-
| 1000 ||
|-
| 10000 || [[#GetOlscServiceForSystemService]]
|}
== GetOlscServiceForSystemService ==
No input. Returns an [[#IOlscServiceForSystemService]].
== IOlscServiceForSystemService ==
This is "nn::olsc::srv::IOlscServiceForSystemService".
This is "nn::olsc::srv::IOlscServiceForSystemService".


Line 8: Line 25:
! 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+] [[#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]].
 
== UpdateAutoTransferSeriesInfo ==
Unofficial name.


Takes an input [[Account_services#Uid|Uid]], an input u64 '''ApplicationId''' and an input [[#AutoTransferSeriesInfo]]. No output.
=== SetUserSaveDataProperty ===
 
Takes an input [[Account_services#Uid|Uid]], an input u64 '''ApplicationId''' and an input [[#UserSaveDataProperty]]. 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.


== RemoveSeriesInfoType0 ==
[19.0.0+] Now takes an additional 8-bytes of input.
Unofficial name.


=== DeleteSeriesInfo ===
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 ==
=== ITransferTaskListController ===
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 ==
This is "nn::olsc::srv::ITransferTaskListController".
This is "nn::olsc::srv::ITransferTaskListController".


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


== INativeHandleHolder ==
==== GetTransferTaskEndEventNativeHandleHolder ====
No input. Returns an [[#INativeHandleHolder]].
 
==== StopNextTransferTaskExecution ====
No input. Returns an [[#IStopperObject]].
 
==== GetTransferTaskStartEventNativeHandleHolder ====
No input. Returns an [[#INativeHandleHolder]].
 
=== INativeHandleHolder ===
This is "nn::olsc::srv::INativeHandleHolder".
This is "nn::olsc::srv::INativeHandleHolder".


Line 438: Line 350:
|}
|}


== IRemoteStorageController ==
=== IRemoteStorageController ===
This is "nn::olsc::srv::IRemoteStorageController".
This is "nn::olsc::srv::IRemoteStorageController".


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


== IAsyncResult ==
==== 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 ===
This is "nn::olsc::srv::IAsyncResult".
This is "nn::olsc::srv::IAsyncResult".


Line 514: Line 453:
|}
|}


== IDaemonController ==
=== IDaemonController ===
This is "nn::olsc::srv::IDaemonController".
This is "nn::olsc::srv::IDaemonController".


{| class="wikitable" border="1"
{| class="wikitable" border="1"
|-
|-
! Cmd || Name || Notes
! Cmd || Name
|-
|-
| 0 || ||
| 0 || GetApplicationAutoTransferSetting
|-
|-
| 1 || ||
| 1 || SetApplicationAutoTransferSetting
|-
|-
| 2 || ||
| 2 || GetGlobalAutoUploadSetting
|-
|-
| 3 || ||
| 3 || SetGlobalAutoUploadSetting
|-
|-
| 4 || ||
| 4 || RunTransferTaskAutonomyRegistration
|-
|-
| 5 || [11.0.0+] ||
| 5 || [11.0.0+] GetGlobalAutoDownloadSetting
|-
|-
| 6 || [11.0.0+] ||
| 6 || [11.0.0+] SetGlobalAutoDownloadSetting
|-
|-
| 8 || ||
| 10 || [[#CreateForbiddenSaveDataInidication]]
|-
|-
| 9 || ||  
| 11 || [[#StopAutonomyTaskExecution]]
|-
|-
| 10 || || Returns an [[#IForbiddenSaveDataIndication]]
| 12 || GetAutonomyTaskStatus
|-
|-
| 11 || || Returns an [[#IStopperObject]]
| 13 || [20.0.0+]
|-
| 12 || ||
|}
|}


== IAsyncDataTransferPolicyRequest ==
==== CreateForbiddenSaveDataInidication ====
Takes an input u64 '''ApplicationId'''. Returns an [[#IForbiddenSaveDataIndication]].
 
==== StopAutonomyTaskExecution ====
No input. Returns an [[#IStopperObject]].
 
=== IAsyncDataTransferPolicyRequest ===
This is "nn::olsc::srv::IAsyncDataTransferPolicyRequest".
This is "nn::olsc::srv::IAsyncDataTransferPolicyRequest".


Line 555: Line 498:
! Cmd || Name
! Cmd || Name
|-
|-
| 0 ||  
| 0 || GetResult
|-
|-
| 1 ||  
| 1 || Cancel
|-
|-
| 2 ||  
| 2 || IsAvailable
|-
|-
| 3 ||  
| 3 || GetSystemEvent
|-
|-
| 100 ||  
| 100 || GetDataTransferPolicy
|}
|}


== IForbiddenSaveDataIndication ==
=== IForbiddenSaveDataIndication ===
This is "nn::olsc::srv::IForbiddenSaveDataIndication".
This is "nn::olsc::srv::IForbiddenSaveDataIndication".


Line 631: Line 574:


== 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 707: Line 650:
! Cmd || Name
! Cmd || Name
|-
|-
| 100 || [[#OpenBgAgentContoller]]
| 100 || [[#OpenBgAgentController]]
|}
|}


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


Line 722: Line 663:
! 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 787: Line 728:
|}
|}


= 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"