Difference between revisions of "OLSC services"
(12 intermediate revisions by 4 users not shown) | |||
Line 1: | Line 1: | ||
− | OLSC (OnLine Savedata Cloud?) is a sysmodule designed for handling the | + | OLSC (OnLine Savedata Cloud?) is a sysmodule designed for handling the online savedata cloud backup system introduced in firmware [[6.0.0]]. |
= olsc:s = | = olsc:s = | ||
Line 6: | Line 6: | ||
{| class="wikitable" border="1" | {| class="wikitable" border="1" | ||
|- | |- | ||
− | ! Cmd || Name || | + | ! Cmd || Name |
+ | |- | ||
+ | | 0 || [[#OpenTransferTaskListController]] | ||
+ | |- | ||
+ | | 1 || [[#OpenRemoteStorageController]] | ||
+ | |- | ||
+ | | 2 || [[#OpenDaemonController]] | ||
+ | |- | ||
+ | | 10 || | ||
+ | |- | ||
+ | | 11 || | ||
+ | |- | ||
+ | | 12 || | ||
+ | |- | ||
+ | | 13 || [10.1.0+] | ||
|- | |- | ||
− | | | + | | 100 || [[#ListLastTransferTaskErrorInfo]] |
|- | |- | ||
− | | | + | | 101 || [[#GetLastErrorInfoCount]] |
|- | |- | ||
− | | | + | | 102 || [[#RemoveLastErrorInfoOld]] |
|- | |- | ||
− | | | + | | 103 || [[#GetLastErrorInfo]] |
|- | |- | ||
− | | | + | | 104 || [7.0.0+] [[#GetLastErrorEventHolder]] |
|- | |- | ||
− | | | + | | 105 || [8.0.0+] [[#GetLastTransferTaskErrorInfo]] |
|- | |- | ||
− | | | + | | 200 || [[#GetDataTransferPolicyInfo]] |
|- | |- | ||
− | | | + | | 201 || [[#RemoveDataTransferPolicyInfo]] |
|- | |- | ||
− | | | + | | 202 || [6.0.0-7.0.1] [[#UpdateDataTransferPolicyOld]] |
|- | |- | ||
− | | | + | | 203 || [7.0.0+] [[#UpdateDataTransferPolicy]] |
|- | |- | ||
− | | | + | | 204 || [7.0.0+] [[#CleanupDataTransferPolicyInfo]] |
|- | |- | ||
− | | | + | | 205 || [11.0.0+] [[#RequestDataTransferPolicy]] |
|- | |- | ||
− | | | + | | 300 || [8.0.0+] [[#GetAutoTransferSeriesInfo]] |
|- | |- | ||
− | | | + | | 301 || [8.0.0+] [[#UpdateAutoTransferSeriesInfo]] |
|- | |- | ||
− | | | + | | 400 || [10.1.0+] [[#CleanupSaveDataArchiveInfoType1]] |
|- | |- | ||
− | | | + | | 900 || [[#CleanupTransferTask]] |
|- | |- | ||
− | | | + | | 902 || [[#CleanupSeriesInfoType0]] |
|- | |- | ||
− | | | + | | 903 || [[#CleanupSaveDataArchiveInfoType0]] |
|- | |- | ||
− | | | + | | 904 || [[#CleanupApplicationAutoTransferSetting]] |
|- | |- | ||
− | | | + | | 905 || [[#CleanupErrorHistory]] |
|- | |- | ||
− | | | + | | 906 || [[#SetLastError]] |
|- | |- | ||
− | | | + | | 907 || [[#AddSaveDataArchiveInfoType0]] |
|- | |- | ||
− | | | + | | 908 || [[#RemoveSeriesInfoType0]] |
|- | |- | ||
− | | | + | | 909 || [[#GetSeriesInfoType0]] |
|- | |- | ||
− | | | + | | 910 || [8.0.0+] [[#RemoveLastErrorInfo]] |
|- | |- | ||
− | | | + | | 911 || [10.1.0+] [[#CleanupSeriesInfoType1]] |
|- | |- | ||
− | | | + | | 912 || [10.1.0+] [[#RemoveSeriesInfoType1]] |
|- | |- | ||
− | | | + | | 913 || [10.1.0+] [[#GetSeriesInfoType1]] |
|- | |- | ||
− | | | + | | 1000 || [7.0.0-8.1.0] [[#UpdateIssueOld]] |
|- | |- | ||
− | | | + | | 1010 || [7.0.0-8.1.0] |
|- | |- | ||
− | | | + | | 1011 || [7.0.0-8.1.0] [[#ListIssueInfoOld]] |
|- | |- | ||
− | | | + | | 1012 || [7.0.0-8.1.0] [[#GetIssueOld]] |
|- | |- | ||
− | | | + | | 1013 || [7.0.0-8.1.0] [[#GetIssue2Old]] |
|- | |- | ||
− | | | + | | 1014 || [7.0.0-8.1.0] [[#GetIssue3Old]] |
|- | |- | ||
− | | | + | | 1020 || [7.0.0-8.1.0] [[#RepairIssueOld]] |
|- | |- | ||
− | | | + | | 1021 || [7.0.0-8.1.0] [[#RepairIssueWithUserIdOld]] |
|- | |- | ||
− | | | + | | 1022 || [7.0.0-8.1.0] [[#RepairIssue2Old]] |
|- | |- | ||
− | | | + | | 1023 || [7.0.0-8.1.0] [[#RepairIssue3Old]] |
|- | |- | ||
− | | | + | | 1024 || [7.0.0-8.1.0] |
|- | |- | ||
− | | | + | | 1100 || [9.0.0+] [[#UpdateIssue]] |
|- | |- | ||
− | | | + | | 1110 || [9.0.0+] |
|- | |- | ||
− | | | + | | 1111 || [9.0.0+] [[#ListIssueInfo]] |
|- | |- | ||
− | | | + | | 1112 || [9.0.0+] [[#GetIssue]] |
|- | |- | ||
− | | | + | | 1113 || [9.0.0+] [[#GetIssue2]] |
|- | |- | ||
− | | | + | | 1114 || [9.0.0+] [[#GetIssue3]] |
|- | |- | ||
− | | | + | | 1120 || [9.0.0+] [[#RepairIssue]] |
|- | |- | ||
− | | | + | | 1121 || [9.0.0+] [[#RepairIssueWithUserId]] |
|- | |- | ||
− | | | + | | 1122 || [9.0.0+] [[#RepairIssue2]] |
|- | |- | ||
− | | | + | | 1123 || [9.0.0+] [[#RepairIssue3]] |
|- | |- | ||
− | | | + | | 1124 || [9.0.0+] |
|- | |- | ||
− | | | + | | 10000 || [17.0.0+] |
|} | |} | ||
+ | |||
+ | == OpenTransferTaskListController == | ||
+ | Unofficial name. | ||
+ | |||
+ | No input. Returns an [[#ITransferTaskListController]]. | ||
+ | |||
+ | == OpenRemoteStorageController == | ||
+ | Unofficial name. | ||
+ | |||
+ | Takes a total of 0x10-bytes of input. Returns an [[#IRemoteStorageController]]. | ||
+ | |||
+ | == OpenDaemonController == | ||
+ | Unofficial name. | ||
+ | |||
+ | No input. Returns an [[#IDaemonController]]. | ||
+ | |||
+ | == ListLastTransferTaskErrorInfo == | ||
+ | Unofficial name. | ||
+ | |||
+ | Takes an input u32 '''Offset''' and a type-0x6 output buffer containing an array of [[#TransferTaskErrorInfo]]. Returns an output u32 '''OutSize'''. | ||
+ | |||
+ | == GetLastErrorInfoCount == | ||
+ | Unofficial name. | ||
+ | |||
+ | No input. Returns an output u32 '''Count'''. | ||
+ | |||
+ | == RemoveLastErrorInfoOld == | ||
+ | Unofficial name. | ||
+ | |||
+ | Takes an input [[Account_services#Uid|Uid]] and an input u64 '''ApplicationId'''. No output. | ||
+ | |||
+ | == GetLastErrorInfo == | ||
+ | Unofficial name. | ||
+ | |||
+ | Takes an input [[Account_services#Uid|Uid]] and an input u64 '''ApplicationId'''. Returns an output [[#ErrorInfo]]. | ||
+ | |||
+ | == GetLastErrorEventHolder == | ||
+ | Unofficial name. | ||
+ | |||
+ | No input. Returns an [[#INativeHandleHolder]]. | ||
+ | |||
+ | == GetLastTransferTaskErrorInfo == | ||
+ | Unofficial name. | ||
+ | |||
+ | Takes an input [[Account_services#Uid|Uid]] and an input u64 '''ApplicationId'''. Returns an output [[#TransferTaskErrorInfo]]. | ||
+ | |||
+ | == GetDataTransferPolicyInfo == | ||
+ | Unofficial name. | ||
+ | |||
+ | Takes an input u64 '''ApplicationId'''. Returns two output u8s. | ||
+ | |||
+ | == RemoveDataTransferPolicyInfo == | ||
+ | Unofficial name. | ||
+ | |||
+ | Takes an input u64 '''ApplicationId'''. No output. | ||
+ | |||
+ | == UpdateDataTransferPolicyOld == | ||
+ | Unofficial name. | ||
+ | |||
+ | Takes an input u64 '''ApplicationId'''. Returns an [[#IAsyncResult]]. | ||
+ | |||
+ | == UpdateDataTransferPolicy == | ||
+ | Unofficial name. | ||
+ | |||
+ | Takes a type-0x5 input buffer. Returns an [[#IAsyncResult]]. | ||
+ | |||
+ | == CleanupDataTransferPolicyInfo == | ||
+ | Unofficial name. | ||
+ | |||
+ | No input/output. | ||
+ | |||
+ | == RequestDataTransferPolicy == | ||
+ | Unofficial name. | ||
+ | |||
+ | Takes a total of 0x10-bytes of input. Returns an [[#IAsyncDataTransferPolicyRequest]]. | ||
+ | |||
+ | == GetAutoTransferSeriesInfo == | ||
+ | Unofficial name. | ||
+ | |||
+ | 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. | ||
+ | |||
+ | == CleanupSaveDataArchiveInfoType1 == | ||
+ | Unofficial name. | ||
+ | |||
+ | Takes an input [[Account_services#Uid|Uid]]. No output. | ||
+ | |||
+ | == CleanupTransferTask == | ||
+ | Unofficial name. | ||
+ | |||
+ | No input/output. | ||
+ | |||
+ | == CleanupSeriesInfoType0 == | ||
+ | Unofficial name. | ||
+ | |||
+ | Takes an input [[Account_services#Uid|Uid]]. No output. | ||
+ | |||
+ | == CleanupSaveDataArchiveInfoType0 == | ||
+ | Unofficial name. | ||
+ | |||
+ | Takes an input [[Account_services#Uid|Uid]]. No output. | ||
+ | |||
+ | == CleanupApplicationAutoTransferSetting == | ||
+ | Unofficial name. | ||
+ | |||
+ | Takes an input [[Account_services#Uid|Uid]]. No output. | ||
+ | |||
+ | == CleanupErrorHistory == | ||
+ | Unofficial name. | ||
+ | |||
+ | No input/output. | ||
+ | |||
+ | == SetLastError == | ||
+ | Unofficial name. | ||
+ | |||
+ | Takes an input [[#ErrorInfo]]. No output. | ||
+ | |||
+ | == AddSaveDataArchiveInfoType0 == | ||
+ | Unofficial name. | ||
+ | |||
+ | Takes an input [[Account_services#Uid|Uid]] and an input [[#SaveDataArchiveInfo]]. No output. | ||
+ | |||
+ | == RemoveSeriesInfoType0 == | ||
+ | Unofficial name. | ||
+ | |||
+ | Takes an input [[Account_services#Uid|Uid]] and an input u64 '''ApplicationId'''. No output. | ||
+ | |||
+ | == GetSeriesInfoType0 == | ||
+ | Unofficial name. | ||
+ | |||
+ | Takes an input [[Account_services#Uid|Uid]] and an input u64 '''ApplicationId'''. Returns an output [[#SeriesInfo]]. | ||
+ | |||
+ | == RemoveLastErrorInfo == | ||
+ | Unofficial name. | ||
+ | |||
+ | Same as [[#RemoveLastErrorInfoOld]]. | ||
+ | |||
+ | == CleanupSeriesInfoType1 == | ||
+ | Unofficial name. | ||
+ | |||
+ | Takes an input [[Account_services#Uid|Uid]]. No output. | ||
+ | |||
+ | == RemoveSeriesInfoType1 == | ||
+ | Unofficial name. | ||
+ | |||
+ | Takes an input [[Account_services#Uid|Uid]] and an input u64 '''ApplicationId'''. No output. | ||
+ | |||
+ | == GetSeriesInfoType1 == | ||
+ | Unofficial name. | ||
+ | |||
+ | Takes an input [[Account_services#Uid|Uid]] and an input u64 '''ApplicationId'''. Returns an output [[#SeriesInfo]]. | ||
+ | |||
+ | == UpdateIssueOld == | ||
+ | Unofficial name. | ||
+ | |||
+ | No input. Returns an [[#IAsyncResult]]. | ||
+ | |||
+ | == ListIssueInfoOld == | ||
+ | Unofficial name. | ||
+ | |||
+ | Takes an input u32 '''Offset''' and a type-0x6 output buffer containing an array of [[#IssueInfo]]. Returns an output u32 '''OutSize'''. | ||
+ | |||
+ | == GetIssueOld == | ||
+ | Unofficial name. | ||
+ | |||
+ | Takes an input u64 '''IssueId''' and a type-0x6 output buffer. Returns an output u32 '''OutSize'''. | ||
+ | |||
+ | == GetIssue2Old == | ||
+ | Unofficial name. | ||
+ | |||
+ | Takes an input u64 '''IssueId''' and a type-0x6 output buffer. Returns an output u32 '''OutSize'''. | ||
+ | |||
+ | == GetIssue3Old == | ||
+ | Unofficial name. | ||
+ | |||
+ | Takes an input u64 '''IssueId''' and a type-0x6 output buffer. Returns an output u32 '''OutSize'''. | ||
+ | |||
+ | == RepairIssueOld == | ||
+ | Unofficial name. | ||
+ | |||
+ | Takes an input u64 '''IssueId'''. Returns an [[#IAsyncResult]]. | ||
+ | |||
+ | == RepairIssueWithUserIdOld == | ||
+ | Unofficial name. | ||
+ | |||
+ | Takes an input u64 '''IssueId''' and an input u128 '''UserId'''. Returns an [[#IAsyncResult]]. | ||
+ | |||
+ | == RepairIssue2Old == | ||
+ | Unofficial name. | ||
+ | |||
+ | Takes an input u64 '''IssueId'''. Returns an [[#IAsyncResult]]. | ||
+ | |||
+ | == RepairIssue3Old == | ||
+ | Unofficial name. | ||
+ | |||
+ | 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 149: | Line 408: | ||
|- | |- | ||
| 15 || [9.0.0+] || | | 15 || [9.0.0+] || | ||
+ | |- | ||
+ | | 16 || [10.1.0+] || | ||
+ | |- | ||
+ | | 17 || [10.1.0+] || | ||
+ | |- | ||
+ | | 18 || [10.1.0+] || | ||
+ | |- | ||
+ | | 19 || [10.1.0+] || | ||
+ | |- | ||
+ | | 20 || [10.1.0+] || | ||
+ | |- | ||
+ | | 21 || [10.1.0+] || | ||
+ | |- | ||
+ | | 22 || [10.1.0+] || | ||
+ | |- | ||
+ | | 23 || [10.1.0+] || | ||
+ | |- | ||
+ | | 24 || [10.1.0+] || | ||
+ | |- | ||
+ | | 25 || [10.1.0+] || | ||
|} | |} | ||
Line 205: | Line 484: | ||
|- | |- | ||
| 19 || [7.0.0+] || Returns an [[#INativeHandleHolder]]. | | 19 || [7.0.0+] || Returns an [[#INativeHandleHolder]]. | ||
+ | |- | ||
+ | | 20 || [10.1.0+] || No input, returns an [[#IAsyncResult]]. | ||
+ | |- | ||
+ | | 21 || [11.0.0+] || | ||
+ | |- | ||
+ | | 22 || [11.0.0+] || | ||
+ | |- | ||
+ | | 23 || [11.0.0+] || | ||
+ | |- | ||
+ | | 24 || [11.0.0+] || | ||
+ | |- | ||
+ | | 25 || [11.0.0+] || | ||
+ | |- | ||
+ | | 900 || [11.0.0+] || | ||
|} | |} | ||
Line 239: | Line 532: | ||
|- | |- | ||
| 4 || || | | 4 || || | ||
+ | |- | ||
+ | | 5 || [11.0.0+] || | ||
+ | |- | ||
+ | | 6 || [11.0.0+] || | ||
|- | |- | ||
| 8 || || | | 8 || || | ||
Line 249: | Line 546: | ||
|- | |- | ||
| 12 || || | | 12 || || | ||
+ | |} | ||
+ | |||
+ | == IAsyncDataTransferPolicyRequest == | ||
+ | This is "nn::olsc::srv::IAsyncDataTransferPolicyRequest". | ||
+ | |||
+ | This was added with [11.0.0+]. | ||
+ | |||
+ | {| class="wikitable" border="1" | ||
+ | |- | ||
+ | ! Cmd || Name | ||
+ | |- | ||
+ | | 0 || | ||
+ | |- | ||
+ | | 1 || | ||
+ | |- | ||
+ | | 2 || | ||
+ | |- | ||
+ | | 3 || | ||
+ | |- | ||
+ | | 100 || | ||
|} | |} | ||
Line 292: | Line 609: | ||
| 26 || [[#DownloadSaveDataBackupAsync]] | | 26 || [[#DownloadSaveDataBackupAsync]] | ||
|- | |- | ||
− | | | + | | 27 || [11.0.0+] UploadSaveDataBackupAsync |
|- | |- | ||
− | | | + | | 9010 || [10.0.0-10.0.4] [[#VerifySaveDataBackupLicenseAsyncForDebug]] |
|- | |- | ||
− | | | + | | 9013 || [10.0.0-10.0.4] GetSaveDataBackupSettingForDebug |
|- | |- | ||
− | | | + | | 9014 || [10.0.0-10.0.4] SetSaveDataBackupSettingEnabledForDebug |
|- | |- | ||
− | | | + | | 9015 || [10.0.0-10.0.4] SetCustomDataForDebug |
|- | |- | ||
− | | | + | | 9016 || [10.0.0-10.0.4] DeleteSaveDataBackupSettingForDebug |
|- | |- | ||
− | | | + | | 9018 || [10.0.0-10.0.4] GetSaveDataBackupInfoCacheForDebug |
|- | |- | ||
− | | | + | | 9019 || [10.0.0-10.0.4] [[#UpdateSaveDataBackupInfoCacheAsyncForDebug]] |
|- | |- | ||
− | | | + | | 9022 || [10.0.0-10.0.4] [[#DeleteSaveDataBackupAsyncForDebug]] |
|- | |- | ||
− | | 9026 || [[#DownloadSaveDataBackupAsyncForDebug]] | + | | 9025 || [10.0.0-10.0.4] [[#ListDownloadableSaveDataBackupInfoAsyncForDebug]] |
+ | |- | ||
+ | | 9026 || [10.0.0-10.0.4] [[#DownloadSaveDataBackupAsyncForDebug]] | ||
|} | |} | ||
Line 323: | Line 642: | ||
== ListDownloadableSaveDataBackupInfoAsync == | == ListDownloadableSaveDataBackupInfoAsync == | ||
− | Takes a total of 0x18-bytes of input, a handle, returns an output [[#IAsyncListData]]. | + | Takes a total of 0x18-bytes of input, a TransferMemory handle, returns an output [[#IAsyncListData]]. |
== DownloadSaveDataBackupAsync == | == DownloadSaveDataBackupAsync == | ||
Line 348: | Line 667: | ||
{| class="wikitable" border="1" | {| class="wikitable" border="1" | ||
|- | |- | ||
− | ! Cmd || Name | + | ! Cmd || Name |
|- | |- | ||
| 0 || GetResult | | 0 || GetResult | ||
Line 380: | Line 699: | ||
| 100 || GetOperationProgressInfo | | 100 || GetOperationProgressInfo | ||
|} | |} | ||
+ | |||
+ | = spbg:sp = | ||
+ | This is "nn::sprofile::srv::ISProfileBgAgentForSystemProcess". | ||
+ | |||
+ | This was added with [13.1.0+]. | ||
+ | |||
+ | {| class="wikitable" border="1" | ||
+ | |- | ||
+ | ! Cmd || Name | ||
+ | |- | ||
+ | | 100 || [[#OpenBgAgentContoller]] | ||
+ | |} | ||
+ | |||
+ | == OpenBgAgentContoller == | ||
+ | Unofficial name. | ||
+ | |||
+ | No input. Returns an [[#IBgAgentContoller]]. | ||
+ | |||
+ | == IBgAgentContoller == | ||
+ | This is "nn::sprofile::srv::IBgAgentContoller". | ||
+ | |||
+ | {| class="wikitable" border="1" | ||
+ | |- | ||
+ | ! Cmd || Name | ||
+ | |- | ||
+ | | 100 || | ||
+ | |} | ||
+ | |||
+ | = ErrorInfo = | ||
+ | This is a 0x30-byte struct. | ||
+ | |||
+ | {| class="wikitable" border="1" | ||
+ | |- | ||
+ | ! Offset | ||
+ | ! Size | ||
+ | ! Description | ||
+ | |- | ||
+ | | 0x0 || 0x10 || [[Account_services#Uid|Uid]] | ||
+ | |- | ||
+ | | 0x10 || 0x8 || ApplicationId | ||
+ | |- | ||
+ | | 0x18 || 0x2 || | ||
+ | |- | ||
+ | | 0x1A || 0x6 || Reserved | ||
+ | |- | ||
+ | | 0x20 || 0x8 || | ||
+ | |- | ||
+ | | 0x28 || 0x4 || ErrorCode | ||
+ | |- | ||
+ | | 0x2C || 0x4 || Reserved | ||
+ | |} | ||
+ | |||
+ | = TransferTaskErrorInfo = | ||
+ | This is "nn::olsc::TransferTaskErrorInfo". This is a 0x30-byte struct. | ||
+ | |||
+ | {| class="wikitable" border="1" | ||
+ | |- | ||
+ | ! Offset | ||
+ | ! Size | ||
+ | ! Description | ||
+ | |- | ||
+ | | 0x0 || 0x10 || [[Account_services#Uid|Uid]] | ||
+ | |- | ||
+ | | 0x10 || 0x8 || ApplicationId | ||
+ | |- | ||
+ | | 0x18 || 0x1 || | ||
+ | |- | ||
+ | | 0x19 || 0x7 || Reserved | ||
+ | |- | ||
+ | | 0x20 || 0x8 || | ||
+ | |- | ||
+ | | 0x28 || 0x4 || ErrorCode | ||
+ | |- | ||
+ | | 0x2C || 0x4 || Reserved | ||
+ | |} | ||
+ | |||
+ | = SeriesInfo = | ||
+ | This is "nn::olsc::srv::SeriesInfo". This is a 0x10-byte struct. | ||
+ | |||
+ | {| class="wikitable" border="1" | ||
+ | |- | ||
+ | ! Offset | ||
+ | ! Size | ||
+ | ! Description | ||
+ | |- | ||
+ | | 0x0 || 0x8 || | ||
+ | |- | ||
+ | | 0x8 || 0x8 || | ||
+ | |} | ||
+ | |||
+ | = AutoTransferSeriesInfo = | ||
+ | This is a 0x18-byte struct. | ||
+ | |||
+ | {| class="wikitable" border="1" | ||
+ | |- | ||
+ | ! Offset | ||
+ | ! Size | ||
+ | ! Description | ||
+ | |- | ||
+ | | 0x0 || 0x1 || AutoTransferSetting | ||
+ | |- | ||
+ | | 0x1 || 0x7 || Reserved | ||
+ | |- | ||
+ | | 0x8 || 0x8 || | ||
+ | |- | ||
+ | | 0x10 || 0x8 || | ||
+ | |} | ||
+ | |||
+ | = IssueInfo = | ||
+ | This is "nn::olsc::repair::IssueInfo". This is a 0x20-byte struct. | ||
+ | |||
+ | = SaveDataArchiveInfo = | ||
+ | This is "nn::olsc::srv::SaveDataArchiveInfo". This is a 0x60-byte struct. | ||
[[Category:Services]] | [[Category:Services]] |
Revision as of 21:41, 12 October 2023
OLSC (OnLine Savedata Cloud?) is a sysmodule designed for handling the online savedata cloud backup system introduced in firmware 6.0.0.
olsc:s
This is "nn::olsc::srv::IOlscServiceForSystemService".
OpenTransferTaskListController
Unofficial name.
No input. Returns an #ITransferTaskListController.
OpenRemoteStorageController
Unofficial name.
Takes a total of 0x10-bytes of input. Returns an #IRemoteStorageController.
OpenDaemonController
Unofficial name.
No input. Returns an #IDaemonController.
ListLastTransferTaskErrorInfo
Unofficial name.
Takes an input u32 Offset and a type-0x6 output buffer containing an array of #TransferTaskErrorInfo. Returns an output u32 OutSize.
GetLastErrorInfoCount
Unofficial name.
No input. Returns an output u32 Count.
RemoveLastErrorInfoOld
Unofficial name.
Takes an input Uid and an input u64 ApplicationId. No output.
GetLastErrorInfo
Unofficial name.
Takes an input Uid and an input u64 ApplicationId. Returns an output #ErrorInfo.
GetLastErrorEventHolder
Unofficial name.
No input. Returns an #INativeHandleHolder.
GetLastTransferTaskErrorInfo
Unofficial name.
Takes an input Uid and an input u64 ApplicationId. Returns an output #TransferTaskErrorInfo.
GetDataTransferPolicyInfo
Unofficial name.
Takes an input u64 ApplicationId. Returns two output u8s.
RemoveDataTransferPolicyInfo
Unofficial name.
Takes an input u64 ApplicationId. No output.
UpdateDataTransferPolicyOld
Unofficial name.
Takes an input u64 ApplicationId. Returns an #IAsyncResult.
UpdateDataTransferPolicy
Unofficial name.
Takes a type-0x5 input buffer. Returns an #IAsyncResult.
CleanupDataTransferPolicyInfo
Unofficial name.
No input/output.
RequestDataTransferPolicy
Unofficial name.
Takes a total of 0x10-bytes of input. Returns an #IAsyncDataTransferPolicyRequest.
GetAutoTransferSeriesInfo
Unofficial name.
Takes an input Uid and an input u64 ApplicationId. Returns an output #AutoTransferSeriesInfo.
UpdateAutoTransferSeriesInfo
Unofficial name.
Takes an input Uid, an input u64 ApplicationId and an input #AutoTransferSeriesInfo. No output.
CleanupSaveDataArchiveInfoType1
Unofficial name.
Takes an input Uid. No output.
CleanupTransferTask
Unofficial name.
No input/output.
CleanupSeriesInfoType0
Unofficial name.
Takes an input Uid. No output.
CleanupSaveDataArchiveInfoType0
Unofficial name.
Takes an input Uid. No output.
CleanupApplicationAutoTransferSetting
Unofficial name.
Takes an input Uid. No output.
CleanupErrorHistory
Unofficial name.
No input/output.
SetLastError
Unofficial name.
Takes an input #ErrorInfo. No output.
AddSaveDataArchiveInfoType0
Unofficial name.
Takes an input Uid and an input #SaveDataArchiveInfo. No output.
RemoveSeriesInfoType0
Unofficial name.
Takes an input Uid and an input u64 ApplicationId. No output.
GetSeriesInfoType0
Unofficial name.
Takes an input Uid and an input u64 ApplicationId. Returns an output #SeriesInfo.
RemoveLastErrorInfo
Unofficial name.
Same as #RemoveLastErrorInfoOld.
CleanupSeriesInfoType1
Unofficial name.
Takes an input Uid. No output.
RemoveSeriesInfoType1
Unofficial name.
Takes an input Uid and an input u64 ApplicationId. No output.
GetSeriesInfoType1
Unofficial name.
Takes an input Uid and an input u64 ApplicationId. Returns an output #SeriesInfo.
UpdateIssueOld
Unofficial name.
No input. Returns an #IAsyncResult.
ListIssueInfoOld
Unofficial name.
Takes an input u32 Offset and a type-0x6 output buffer containing an array of #IssueInfo. Returns an output u32 OutSize.
GetIssueOld
Unofficial name.
Takes an input u64 IssueId and a type-0x6 output buffer. Returns an output u32 OutSize.
GetIssue2Old
Unofficial name.
Takes an input u64 IssueId and a type-0x6 output buffer. Returns an output u32 OutSize.
GetIssue3Old
Unofficial name.
Takes an input u64 IssueId and a type-0x6 output buffer. Returns an output u32 OutSize.
RepairIssueOld
Unofficial name.
Takes an input u64 IssueId. Returns an #IAsyncResult.
RepairIssueWithUserIdOld
Unofficial name.
Takes an input u64 IssueId and an input u128 UserId. Returns an #IAsyncResult.
RepairIssue2Old
Unofficial name.
Takes an input u64 IssueId. Returns an #IAsyncResult.
RepairIssue3Old
Unofficial name.
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
This is "nn::olsc::srv::ITransferTaskListController".
Cmd | Name | Notes |
---|---|---|
0 | ||
1 | ||
2 | ||
3 | ||
4 | ||
5 | Returns an #INativeHandleHolder | |
6 | ||
7 | ||
8 | Returns an #IStopperObject | |
9 | Returns an #INativeHandleHolder | |
10 | ||
11 | ||
12 | ||
13 | [9.0.0+] | |
14 | [9.0.0+] | |
15 | [9.0.0+] | |
16 | [10.1.0+] | |
17 | [10.1.0+] | |
18 | [10.1.0+] | |
19 | [10.1.0+] | |
20 | [10.1.0+] | |
21 | [10.1.0+] | |
22 | [10.1.0+] | |
23 | [10.1.0+] | |
24 | [10.1.0+] | |
25 | [10.1.0+] |
INativeHandleHolder
This is "nn::olsc::srv::INativeHandleHolder".
Cmd | Name |
---|---|
0 | GetNativeHandle |
IRemoteStorageController
This is "nn::olsc::srv::IRemoteStorageController".
Cmd | Name | Notes |
---|---|---|
0 | ||
1 | ||
2 | [6.0.0-7.0.1] | |
3 | ||
4 | [6.0.0-7.0.1] | |
6 | ||
7 | ||
8 | Returns an #IAsyncResult | |
9 | Returns an #IAsyncResult | |
10 | ||
11 | Returns an #IAsyncResult | |
12 | ||
13 | Returns an #IAsyncResult | |
14 | ||
15 | ||
16 | Returns an #IAsyncResult | |
17 | [7.0.0+] | |
18 | [7.0.0+] | |
19 | [7.0.0+] | Returns an #INativeHandleHolder. |
20 | [10.1.0+] | No input, returns an #IAsyncResult. |
21 | [11.0.0+] | |
22 | [11.0.0+] | |
23 | [11.0.0+] | |
24 | [11.0.0+] | |
25 | [11.0.0+] | |
900 | [11.0.0+] |
IAsyncResult
This is "nn::olsc::srv::IAsyncResult".
Cmd | Name |
---|---|
0 | GetResult |
1 | Cancel |
2 | IsAvailable |
3 | GetSystemEvent |
IDaemonController
This is "nn::olsc::srv::IDaemonController".
Cmd | Name | Notes |
---|---|---|
0 | ||
1 | ||
2 | ||
3 | ||
4 | ||
5 | [11.0.0+] | |
6 | [11.0.0+] | |
8 | ||
9 | ||
10 | Returns an #IForbiddenSaveDataIndication | |
11 | Returns an #IStopperObject | |
12 |
IAsyncDataTransferPolicyRequest
This is "nn::olsc::srv::IAsyncDataTransferPolicyRequest".
This was added with [11.0.0+].
Cmd | Name |
---|---|
0 | |
1 | |
2 | |
3 | |
100 |
IForbiddenSaveDataIndication
This is "nn::olsc::srv::IForbiddenSaveDataIndication".
Cmd | Name |
---|---|
0 | Update |
olsc:u
This is "nn::olsc::srv::IOlscServiceForApplication".
This was added with [10.0.0+].
Cmd | Name |
---|---|
0 | Initialize |
10 | #VerifySaveDataBackupLicenseAsync |
13 | GetSaveDataBackupSetting |
14 | SetSaveDataBackupSettingEnabled |
15 | SetCustomData |
16 | DeleteSaveDataBackupSetting |
18 | GetSaveDataBackupInfoCache |
19 | #UpdateSaveDataBackupInfoCacheAsync |
22 | #DeleteSaveDataBackupAsync |
25 | #ListDownloadableSaveDataBackupInfoAsync |
26 | #DownloadSaveDataBackupAsync |
27 | [11.0.0+] UploadSaveDataBackupAsync |
9010 | [10.0.0-10.0.4] #VerifySaveDataBackupLicenseAsyncForDebug |
9013 | [10.0.0-10.0.4] GetSaveDataBackupSettingForDebug |
9014 | [10.0.0-10.0.4] SetSaveDataBackupSettingEnabledForDebug |
9015 | [10.0.0-10.0.4] SetCustomDataForDebug |
9016 | [10.0.0-10.0.4] DeleteSaveDataBackupSettingForDebug |
9018 | [10.0.0-10.0.4] GetSaveDataBackupInfoCacheForDebug |
9019 | [10.0.0-10.0.4] #UpdateSaveDataBackupInfoCacheAsyncForDebug |
9022 | [10.0.0-10.0.4] #DeleteSaveDataBackupAsyncForDebug |
9025 | [10.0.0-10.0.4] #ListDownloadableSaveDataBackupInfoAsyncForDebug |
9026 | [10.0.0-10.0.4] #DownloadSaveDataBackupAsyncForDebug |
VerifySaveDataBackupLicenseAsync
Takes a total of 0x10-bytes of input, returns an output #IAsyncResult.
UpdateSaveDataBackupInfoCacheAsync
Takes a total of 0x10-bytes of input, returns an output #IAsyncResult.
DeleteSaveDataBackupAsync
Takes a total of 0x18-bytes of input, returns an output #IAsyncResult.
ListDownloadableSaveDataBackupInfoAsync
Takes a total of 0x18-bytes of input, a TransferMemory handle, returns an output #IAsyncListData.
DownloadSaveDataBackupAsync
Takes a total of 0x18-bytes of input, returns an output #IAsyncTransferRequest.
VerifySaveDataBackupLicenseAsyncForDebug
Same as #VerifySaveDataBackupLicenseAsync.
UpdateSaveDataBackupInfoCacheAsyncForDebug
Same as #UpdateSaveDataBackupInfoCacheAsync.
DeleteSaveDataBackupAsyncForDebug
Same as #DeleteSaveDataBackupAsync.
ListDownloadableSaveDataBackupInfoAsyncForDebug
Same as #ListDownloadableSaveDataBackupInfoAsync.
DownloadSaveDataBackupAsyncForDebug
Same as #DownloadSaveDataBackupAsync.
IAsyncListData
This is "nn::olsc::srv::IAsyncListData".
Cmd | Name |
---|---|
0 | GetResult |
1 | Cancel |
2 | IsAvailable |
3 | GetSystemEvent |
100 | GetDataCount |
101 | GetData |
IAsyncTransferRequest
This is "nn::olsc::srv::IAsyncTransferRequest".
Cmd | Name |
---|---|
0 | GetResult |
1 | Cancel |
2 | IsAvailable |
3 | GetSystemEvent |
100 | GetOperationProgressInfo |
spbg:sp
This is "nn::sprofile::srv::ISProfileBgAgentForSystemProcess".
This was added with [13.1.0+].
Cmd | Name |
---|---|
100 | #OpenBgAgentContoller |
OpenBgAgentContoller
Unofficial name.
No input. Returns an #IBgAgentContoller.
IBgAgentContoller
This is "nn::sprofile::srv::IBgAgentContoller".
Cmd | Name |
---|---|
100 |
ErrorInfo
This is a 0x30-byte struct.
Offset | Size | Description |
---|---|---|
0x0 | 0x10 | Uid |
0x10 | 0x8 | ApplicationId |
0x18 | 0x2 | |
0x1A | 0x6 | Reserved |
0x20 | 0x8 | |
0x28 | 0x4 | ErrorCode |
0x2C | 0x4 | Reserved |
TransferTaskErrorInfo
This is "nn::olsc::TransferTaskErrorInfo". This is a 0x30-byte struct.
Offset | Size | Description |
---|---|---|
0x0 | 0x10 | Uid |
0x10 | 0x8 | ApplicationId |
0x18 | 0x1 | |
0x19 | 0x7 | Reserved |
0x20 | 0x8 | |
0x28 | 0x4 | ErrorCode |
0x2C | 0x4 | Reserved |
SeriesInfo
This is "nn::olsc::srv::SeriesInfo". This is a 0x10-byte struct.
Offset | Size | Description |
---|---|---|
0x0 | 0x8 | |
0x8 | 0x8 |
AutoTransferSeriesInfo
This is a 0x18-byte struct.
Offset | Size | Description |
---|---|---|
0x0 | 0x1 | AutoTransferSetting |
0x1 | 0x7 | Reserved |
0x8 | 0x8 | |
0x10 | 0x8 |
IssueInfo
This is "nn::olsc::repair::IssueInfo". This is a 0x20-byte struct.
SaveDataArchiveInfo
This is "nn::olsc::srv::SaveDataArchiveInfo". This is a 0x60-byte struct.