OLSC services

Revision as of 21:22, 5 April 2023 by Hexkyz (talk | contribs)

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

Cmd Name
0 #OpenTransferTaskListController
1 #OpenRemoteStorageController
2 #OpenDaemonController
10
11
12
13 [10.1.0+]
100
101
102
103
104 [7.0.0+] #GetLastErrorEventHolder
105 [8.0.0+] #GetLastErrorInfo
200 #GetDataTransferPolicyInfoCacheEntry
201 #RemoveDataTransferPolicyInfoCacheEntry
202 [6.0.0-7.0.1] #UpdateDataTransferPolicyOld
203 [7.0.0+] #UpdateDataTransferPolicy
204 [7.0.0+] #CleanupDataTransferPolicyInfoCache
205 [11.0.0+] #RequestDataTransferPolicy
300 [8.0.0+] #GetSeriesInfo
301 [8.0.0+] #UpdateSeriesInfo
400 [10.1.0+] #CleanupSaveDataArchiveInfoCache
900
902
903
904
905
906
907
908
909
910 [8.0.0+]
911 [10.1.0+]
912 [10.1.0+]
913 [10.1.0+]
1000 [7.0.0-8.1.0] #UpdateIssueInfoCacheOld
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] #RepairOld
1021 [7.0.0-8.1.0] #RepairWithUserIdOld
1022 [7.0.0-8.1.0] #Repair2Old
1023 [7.0.0-8.1.0] #Repair3Old
1024 [7.0.0-8.1.0]
1100 [9.0.0+] #UpdateIssueInfoCache
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+] #Repair
1121 [9.0.0+] #RepairWithUserId
1122 [9.0.0+] #Repair2
1123 [9.0.0+] #Repair3
1124 [9.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.

GetLastErrorEventHolder

Unofficial name.

No input. Returns an #INativeHandleHolder.

GetLastErrorInfo

Unofficial name.

Takes an input Uid and an input u64 ApplicationId. Returns an output #ErrorInfo.

GetDataTransferPolicyInfoCacheEntry

Unofficial name.

Takes an input u64 ApplicationId. Returns two output u8s.

RemoveDataTransferPolicyInfoCacheEntry

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.

CleanupDataTransferPolicyInfoCache

Unofficial name.

No input/output.

RequestDataTransferPolicy

Unofficial name.

Takes a total of 0x10-bytes of input. Returns an #IAsyncDataTransferPolicyRequest.

GetSeriesInfo

Unofficial name.

Takes an input Uid and an input u64 ApplicationId. Returns an output #SeriesInfo.

UpdateSeriesInfo

Unofficial name.

Takes an input Uid, an input u64 ApplicationId and an input #SeriesInfo. No output.

CleanupSaveDataArchiveInfoCache

Unofficial name.

Takes a total of 0x10-bytes of input. No output.

UpdateIssueInfoCacheOld

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.

RepairOld

Unofficial name.

Takes an input u64 IssueId. Returns an #IAsyncResult.

RepairWithUserIdOld

Unofficial name.

Takes an input u64 IssueId and an input u128 UserId. Returns an #IAsyncResult.

Repair2Old

Unofficial name.

Takes an input u64 IssueId. Returns an #IAsyncResult.

Repair3Old

Unofficial name.

Takes an input u64 IssueId. Returns an #IAsyncResult.

UpdateIssueInfoCache

Same as #UpdateIssueInfoCacheOld.

ListIssueInfo

Same as #ListIssueInfoOld.

GetIssue

Same as #GetIssueOld.

GetIssue2

Same as #GetIssue2Old.

GetIssue3

Same as #GetIssue3Old.

Repair

Same as #RepairOld.

RepairWithUserId

Same as #RepairWithUserIdOld.

Repair2

Same as #Repair2Old.

Repair3

Same as #Repair3Old.

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 0x1
0x19 0x7 Reserved
0x20 0x8
0x28 0x4 ErrorCode
0x2C 0x4 Reserved

SeriesInfo

This is "nn::olsc::srv::SeriesInfo". This is a 0x18-byte struct.

Offset Size Description
0x0 0x1
0x1 0x7 Reserved
0x8 0x8
0x10 0x8

IssueInfo

This is "nn::olsc::repair::IssueInfo". This is a 0x14-byte struct.

Offset Size Description
0x0 0x8 IssueId
0x8 0x8
0x10 0x3
0x13 0x1