Line 1:
Line 1:
−
==BOSS Service "boss:U"==
+
==BOSS User Service "boss:U"==
{| class="wikitable" border="1"
{| class="wikitable" border="1"
|-
|-
Line 9:
Line 9:
|-
|-
| 0x00020100
| 0x00020100
−
| [[BOSS:SetStorageInfo|SetStorageInfo]]
+
| [[BOSSU:SetStorageInfo|SetStorageInfo]]
|-
|-
| 0x00030000
| 0x00030000
−
| [[BOSS:UnregisterStorage|UnregisterStorage]]
+
| [[BOSSU:UnregisterStorage|UnregisterStorage]]
|-
|-
| 0x00040000
| 0x00040000
−
| GetTaskStorageInfo
+
| [[BOSSU:GetStorageInfo|GetStorageInfo]]
|-
|-
| 0x00050042
| 0x00050042
−
| ?
+
| [[BOSSU:RegisterPrivateRootCa|RegisterPrivateRootCa]]
|-
|-
| 0x00060084
| 0x00060084
−
| This writes the content of the input buffers into files "bossdb:/%s_CL" and "bossdb:/%s_CLK", where "%s" is generated from the programID.
+
| [[BOSSU:RegisterPrivateClientCert|RegisterPrivateClientCert]] <nowiki>(u32 Size0, u32 Size1, ((Size0<<4) | 10), Buf0, ((Size1<<4) | 10), Buf1)</nowiki> This writes the content of the input buffers into files "bossdb:/%s_CL" and "bossdb:/%s_CLK", where "%s" is generated from the programID.
|-
|-
| 0x00070000
| 0x00070000
−
| ?
+
| [[BOSSU:GetNewArrivalFlag|GetNewArrivalFlag]]
|-
|-
| 0x00080002
| 0x00080002
−
| Used for sending a handle. This is used with a table of programIDs etc with a maximum of 5 entries.
+
| [[BOSSU:RegisterNewArrivalEvent|RegisterNewArrivalEvent]]: Used for sending a handle. This is used with a table of programIDs etc with a maximum of 5 entries.
|-
|-
| 0x00090040
| 0x00090040
−
| [[BOSS:SetOptoutFlag|SetOptoutFlag]]
+
| [[BOSSU:SetOptoutFlag|SetOptoutFlag]]
|-
|-
| 0x000A0000
| 0x000A0000
−
| [[BOSS:GetOptoutFlag|GetOptoutFlag]]
+
| [[BOSSU:GetOptoutFlag|GetOptoutFlag]]
|-
|-
| 0x000B00C2
| 0x000B00C2
Line 48:
Line 48:
|-
|-
| 0x000F0042
| 0x000F0042
−
| ?
+
| [[BOSSU:GetStepIdList|GetStepIdList]]
|-
|-
| 0x00100102
| 0x00100102
Line 54:
Line 54:
|-
|-
| 0x00110102
| 0x00110102
−
| ?
+
| [[BOSSU:GetNsDataIdList1|GetNsDataIdList1]]
|-
|-
| 0x00120102
| 0x00120102
−
| ?
+
| [[BOSSU:GetNsDataIdList2|GetNsDataIdList2]]
|-
|-
| 0x00130102
| 0x00130102
−
| ?
+
| [[BOSSU:GetNsDataIdList3|GetNsDataIdList3]]
|-
|-
| 0x00140082
| 0x00140082
Line 72:
Line 72:
|-
|-
| 0x00170082
| 0x00170082
−
| ?
+
| [[BOSSU:UpdateTaskInterval|UpdateTaskInterval]]
|-
|-
| 0x00180082
| 0x00180082
−
| UpdateTaskCount
+
| [[BOSSU:UpdateTaskCount|UpdateTaskCount]]
|-
|-
| 0x00190042
| 0x00190042
−
| ?
+
| [[BOSSU:GetTaskInterval|GetTaskInterval]]
|-
|-
| 0x001A0042
| 0x001A0042
−
| GetTaskCount
+
| [[BOSSU:GetTaskCount|GetTaskCount]]
|-
|-
| 0x001B0042
| 0x001B0042
−
| GetTaskServiceStatus
+
| [[BOSSU:GetTaskServiceStatus|GetTaskServiceStatus]]
|-
|-
| 0x001C0042
| 0x001C0042
Line 96:
Line 96:
|-
|-
| 0x001F0000
| 0x001F0000
−
| [[BOSS:GetTaskFinishHandle|GetTaskFinishHandle]]
+
| [[BOSSU:GetTaskFinishHandle|GetTaskFinishHandle]]
|-
|-
| 0x00200082
| 0x00200082
Line 102:
Line 102:
|-
|-
| 0x00210042
| 0x00210042
−
| GetTaskResult
+
| [[BOSSU:GetTaskResult|GetTaskResult]]
|-
|-
| 0x00220042
| 0x00220042
−
| ?
+
| [[BOSSU:GetTaskCommErrorCode|GetTaskCommErrorCode]]
|-
|-
| 0x002300C2
| 0x002300C2
−
| GetTaskStatus
+
| [[BOSSU:GetTaskStatus|GetTaskStatus]]
|-
|-
| 0x00240082
| 0x00240082
−
| ?
+
| [[BOSSU:GetTaskError|GetTaskError]]
|-
|-
| 0x00250082
| 0x00250082
−
| ?
+
| [[BOSSU:GetTaskInfo|GetTaskInfo]]
|-
|-
| 0x00260040
| 0x00260040
−
| [[BOSS:DeleteNsData|DeleteNsData]]
+
| [[BOSSU:DeleteNsData|DeleteNsData]]
|-
|-
| 0x002700C2
| 0x002700C2
Line 126:
Line 126:
|-
|-
| 0x00290080
| 0x00290080
−
| ?
+
| [[BOSSU:SetNsDataAdditionalInfo|SetNsDataAdditionalInfo]]
|-
|-
| 0x002A0040
| 0x002A0040
−
| Unknown. Writes an output u32 to cmdreply[2].
+
| [[BOSSU:GetNsDataAdditionalInfo|GetNsDataAdditionalInfo]]. Writes an output u32 to cmdreply[2].
|-
|-
| 0x002B0080
| 0x002B0080
−
| SetNsDataNewFlag
+
| [[BOSSU:SetNsDataNewFlag|SetNsDataNewFlag]]
|-
|-
| 0x002C0040
| 0x002C0040
−
| GetNsDataNewFlag
+
| [[BOSSU:GetNsDataNewFlag|GetNsDataNewFlag]]
|-
|-
| 0x002D0040
| 0x002D0040
−
| unknown...
+
| [[BOSSU:GetNsDataLastUpdate|GetNsDataLastUpdate]] (u32 NsDataId) Writes an output u64 to cmdreply[2-3], from the content file in extdata.
|-
|-
| 0x002E0040
| 0x002E0040
−
| [[BOSS:GetErrorCode|GetErrorCode]]
+
| [[BOSSU:GetErrorCode|GetErrorCode]]
|-
|-
| 0x002F0140
| 0x002F0140
−
| RegisterStorageEntry
+
| [[BOSSU:RegisterStorageEntry|RegisterStorageEntry]]
|-
|-
| 0x00300000
| 0x00300000
−
| unknown...
+
| [[BOSSU:GetStorageEntryInfo|GetStorageEntryInfo]]
|-
|-
| 0x00310100
| 0x00310100
−
| ?
+
| [[BOSSU:SetStorageOption|SetStorageOption]]
|-
|-
| 0x00320000
| 0x00320000
−
| ?
+
| [[BOSSU:GetStorageOption|GetStorageOption]]
|-
|-
| 0x00330042
| 0x00330042
−
| [[BOSS:StartBgImmediate|StartBgImmediate]]
+
| [[BOSSU:StartBgImmediate|StartBgImmediate]]
|-
|-
| 0x00340042
| 0x00340042
−
| [[BOSS:GetTaskProperty0|GetTaskProperty0]]
+
| [[BOSSU:GetTaskPriority|GetTaskPriority]]
|-
|-
| 0x003500C2
| 0x003500C2
−
| RegisterImmediateTask
+
| [[BOSSU:RegisterImmediateTask|RegisterImmediateTask]]
|-
|-
| 0x00360084
| 0x00360084
−
| unknown...
+
| [[BOSSU:SetTaskQuery|SetTaskQuery]] <nowiki>(u32 TaskID_Size, u32 BufSize, ((TaskID_Size<<4) | 10), TaskID_buf, ((BufSize<<4) | 10), Buf)</nowiki> BufSize must match 0x60.
|-
|-
| 0x00370084
| 0x00370084
−
| ?
+
| [[BOSSU:GetTaskQuery|GetTaskQuery]] <nowiki>(u32 TaskID_Size, u32 BufSize, ((TaskID_Size<<4) | 10), TaskID_buf, ((BufSize<<4) | 10), Buf)</nowiki> BufSize must match 0x60.
|}
|}
−
==Privileged BOSS Service "boss:P"==
+
==BOSS Privileged Service "boss:P"==
{| class="wikitable" border="1"
{| class="wikitable" border="1"
|-
|-
Line 179:
Line 179:
| 0x04010082
| 0x04010082
| [[BOSSP:InitializeSessionPrivileged|InitializeSessionPrivileged]]
| [[BOSSP:InitializeSessionPrivileged|InitializeSessionPrivileged]]
+
|-
+
| 0x04020000
+
| ?
+
|-
+
| 0x04030000
+
| ?
|-
|-
| 0x04040080
| 0x04040080
Line 184:
Line 190:
|-
|-
| 0x040500C0
| 0x040500C0
−
| unknown...
+
| [[BOSSP:SetAppNewFlag|SetAppNewFlag]]
|-
|-
| 0x040600C0
| 0x040600C0
−
| unknown...
+
| [[BOSSP:SetOptoutFlagPrivileged|SetOptoutFlagPrivileged]]
|-
|-
| 0x04070080
| 0x04070080
−
| unknown...
+
| [[BOSSP:GetOptoutFlagPrivileged|GetOptoutFlagPrivileged]]
+
|-
+
| 0x04080040
+
| (u8 optout) Sets the optout flag to all apps?
|-
|-
| 0x04090102
| 0x04090102
−
| unknown...
+
| [[BOSSP:UnregisterTaskPrivileged|UnregisterTaskPrivileged]]
+
|-
+
| 0x040A0000
+
| [[BOSSP:GetAppIdList|GetAppIdList]]
|-
|-
| 0x040B0080
| 0x040B0080
−
| unknown...
+
| [[BOSSP:GetTaskIdListPrivileged|GetTaskIdListPrivileged]]
+
|-
+
| 0x040C00C2
+
| [[BOSSP:GetStepIdListPrivileged|GetStepIdListPrivileged]]
|-
|-
| 0x040D0182
| 0x040D0182
−
| unknown...
+
| [[BOSSP:GetNsDataIdListPrivileged|GetNsDataIdListPrivileged]]
+
|-
+
| 0x040E0182
+
| [[BOSSP:GetNsDataIdListPrivileged1|GetNsDataIdListPrivileged1]]
+
|-
+
| 0x040F0102
+
| [[BOSSP:GetTaskInfoPrivileged|GetTaskInfoPrivileged]]
+
|-
+
| 0x04100102
+
| [[BOSSP:GetTaskStatusPrivileged1|GetTaskStatusPrivileged1]] Same as GetTaskStatusPrivileged, but the input bool is set to false
+
|-
+
| 0x04110102
+
| [[BOSSP:GetTaskErrorPrivileged|GetTaskErrorPrivileged]]
+
|-
+
| 0x04120000
+
| Related to the sysmodule savedata?
|-
|-
| 0x04130082
| 0x04130082
| [[BOSSP:SendPropertyPrivileged|SendPropertyPrivileged]]
| [[BOSSP:SendPropertyPrivileged|SendPropertyPrivileged]]
+
|-
+
| 0x04140082
+
| [[BOSSP:ReceivePropertyPrivileged|ReceivePropertyPrivileged]]
|-
|-
| 0x041500C0
| 0x041500C0
−
| DeleteNsDataPrivileged
+
| [[BOSSP:DeleteNsDataPrivileged|DeleteNsDataPrivileged]]
|-
|-
| 0x04160142
| 0x04160142
Line 212:
Line 245:
| 0x04170182
| 0x04170182
| [[BOSSP:ReadNsDataPrivileged|ReadNsDataPrivileged]]
| [[BOSSP:ReadNsDataPrivileged|ReadNsDataPrivileged]]
+
|-
+
| 0x04180100
+
| [[BOSSP:SetNsDataAdditionalInfoPrivileged|SetNsDataAdditionalInfoPrivileged]]
+
|-
+
| 0x041900C0
+
| [[BOSSP:GetNsDataAdditionalInfoPrivileged|GetNsDataAdditionalInfoPrivileged]]
|-
|-
| 0x041A0100
| 0x041A0100
−
| SetNsDataNewFlagPrivileged
+
| [[BOSSP:SetNsDataNewFlagPrivileged|SetNsDataNewFlagPrivileged]]
|-
|-
| 0x041B00C0
| 0x041B00C0
−
| GetNsDataNewFlagPrivileged
+
| [[BOSSP:GetNsDataNewFlagPrivileged|GetNsDataNewFlagPrivileged]]
|-
|-
| 0x041C00C0
| 0x041C00C0
−
| unknown...
+
| [[BOSSP:GetNsDataLastUpdatePrivileged|GetNsDataLastUpdatePrivileged]]
+
|-
+
| 0x041D0040
+
| (bool unk_flag1)
+
|-
+
| 0x041E0000
+
| Returns: bool unk_flag1
+
|-
+
| 0x041F0040
+
| [[BOSSP:SetTestModeAvailability|SetTestModeAvailability]] (bool test_mode_flag)
+
|-
+
| 0x04200000
+
| [[BOSSP:GetTestModeAvailability|GetTestModeAvailability]]. Returns: bool test_mode_flag
+
|-
+
| 0x04210000?
+
| Stubbed
+
|-
+
| 0x04220000
+
| ?
+
|-
+
| 0x04230000?
+
| Stubbed
+
|-
+
| 0x04240000
+
| ?
+
|-
+
| 0x04250042
+
| [[BOSSP:SetPolicyListEnvId|SetPolicyListEnvId]]. Sets the policylist env ID (default env ID is "p01"): strncpy("p01", in, 8)
+
|-
+
| 0x04260042
+
| [[BOSSP:GetPolicyListEnvId|GetPolicyListEnvId]]. Gets the policylist env ID (default env ID is "p01"): strcpy(out, "p01")
+
|-
+
| 0x04270042
+
| [[BOSSP:SetPolicyListUrl|SetPolicyListUrl]]. Sets a custom policylist URL. Max of 0x200 chars
+
|-
+
| 0x04280042
+
| [[BOSSP:GetPolicyListUrl|GetPolicyListUrl]]. Gets the custom policylist URL
+
|-
+
| 0x04290002
+
| (Handle unk)
+
|-
+
| 0x042A0000
+
| Closes the previous handle
+
|-
+
| 0x042B0000
+
| Returns: u8 unk
+
|-
+
| 0x042C0042
+
| <nowiki>(u32 Size, ((Size<<4)|0xC), Buf)</nowiki>
+
|-
+
| 0x042D0000
+
| Returns: u32 unk
|-
|-
| 0x042E00C2
| 0x042E00C2
−
| unknown...
+
| [[BOSSP:StartTaskPrivileged|StartTaskPrivileged]]
|-
|-
| 0x042F00C2
| 0x042F00C2
−
| unknown...
+
| [[BOSSP:StartTaskImmediatePrivileged|StartTaskImmediatePrivileged]]
|-
|-
| 0x043000C2
| 0x043000C2
−
| unknown...
+
| [[BOSSP:CancelTaskPrivileged|CancelTaskPrivileged]]
+
|-
+
| 0x04310040
+
| (u32 unk_4) The input is stored in a variable whose default value is 0x70
+
|-
+
| 0x04320040
+
| Returns: u32 unk_4
+
|-
+
| 0x04330080
+
| [[BOSSP:GetStorageOptionPrivileged|GetStorageOptionPrivileged]]
+
|-
+
| 0x043400C2
+
| [[BOSSP:StartBgImmediatePrivileged|StartBgImmediatePrivileged]]
+
|-
+
| 0x04350042
+
| <nowiki>(u32 Size, ((Size<<4)|0xA), Buf)</nowiki>. Stubbed
+
|-
+
| 0x04360042
+
| <nowiki>(u32 Size, ((Size<<4)|0xC), Buf)</nowiki>. Stubbed
+
|-
+
| 0x043700C2
+
| [[BOSSP:GetTaskPriorityPrivileged|GetTaskPriorityPrivileged]]
+
|-
+
| 0x04380000
+
| ?
+
|-
+
| 0x04390104
+
| [[BOSSP:GetTaskQueryPrivileged|GetTaskQueryPrivileged]]
+
|-
+
| 0x043A0042
+
| <nowiki>(u32 Size, ((Size<<4)|0xA), Buf)</nowiki>. Stubbed
+
|-
+
| 0x043B0042
+
| <nowiki>(u32 Size, ((Size<<4)|0xC), Buf)</nowiki>. Stubbed
+
|-
+
| 0x043C0080
+
| (u64 title_id)
+
|-
+
| 0x043D0080
+
| (u64 title_id)
+
|-
+
| 0x043E0042
+
| [[BOSSP:SetSprelayUrl|SetSprelayUrl]] <nowiki>(u32 Size, ((Size<<4)|0xA), Buf)</nowiki>. Sets the sprelay URL
+
|-
+
| 0x043F0042
+
| [[BOSSP:GetSprelayUrl|GetSprelayUrl]] <nowiki>(u32 Size, ((Size<<4)|0xC), Buf)</nowiki>. Gets the sprelay URL
+
|-
+
| 0x04400080
+
| [[BOSSP:SetSprelayInterval|SetSprelayInterval]] (u32 interval, u32 unk). Sets the sprelay interval, and other things
+
|-
+
| 0x04410000
+
| [[BOSSP:GetSprelayInterval|GetSprelayInterval]] Returns: u32 interval, u32 unk. Gets the sprelay interval, and other things
+
|-
+
| 0x04420000
+
| ?
+
|-
+
| 0x04430042
+
| <nowiki>(u32 Size, ((Size<<4)|0xC), Buf)</nowiki>. Size must be at least 0x208
+
|-
+
| 0x04440042
+
| <nowiki>(u32 Size, ((Size<<4)|0xC), Buf)</nowiki>. Size must be at least 0x130
+
|-
+
| 0x04450040
+
| (u8 unk_5)
+
|-
+
| 0x04460000
+
| Returns: u8 unk_5
+
|-
+
| 0x04470002
+
| [[BOSSP:RegisterNewArrivalEventPrivileged|RegisterNewArrivalEventPrivileged]]
+
|-
+
| 0x04480000?
+
| Stubbed
|-
|-
| 0x04490142
| 0x04490142
−
| unknown...
+
| [[BOSSP:RegisterTaskPrivileged|RegisterTaskPrivileged]]
|-
|-
| 0x044A0180
| 0x044A0180
−
| unknown...
+
| [[BOSSP:SetStorageInfoPrivileged|SetStorageInfoPrivileged]]
+
|-
+
| 0x044B01C0
+
| [[BOSSP:RegisterStorageEntryPrivileged|RegisterStorageEntryPrivileged]]
+
|-
+
| 0x044C0080
+
| [[BOSSP:UnregisterStoragePrivileged|UnregisterStoragePrivileged]]
|-
|-
| 0x044D0080
| 0x044D0080
−
| unknown...
+
| [[BOSSP:GetStorageInfoPrivileged|GetStorageInfoPrivileged]]
+
|-
+
| 0x044E0080
+
| [[BOSSP:GetStorageEntryInfoPrivileged|GetStorageEntryInfoPrivileged]]
+
|-
+
| 0x044F0102
+
| [[BOSSP:UpdateTaskIntervalPrivileged|UpdateTaskIntervalPrivileged]]
|-
|-
| 0x04500102
| 0x04500102
−
| unknown...
+
| [[BOSSP:UpdateTaskCountPrivileged|UpdateTaskCountPrivileged]]
+
|-
+
| 0x045100C2
+
| [[BOSSP:GetTaskIntervalPrivileged|GetTaskIntervalPrivileged]]
+
|-
+
| 0x045200C2
+
| [[BOSSP:GetTaskCountPrivileged|GetTaskCountPrivileged]]
+
|-
+
| 0x045300C2
+
| [[BOSSP:GetTaskServiceStatusPrivileged|GetTaskServiceStatusPrivileged]]
|-
|-
| 0x04540102
| 0x04540102
−
| unknown...
+
| [[BOSSP:GetTaskStatePrivileged|GetTaskStatePrivileged]]
|-
|-
| 0x045500C2
| 0x045500C2
−
| unknown...
+
| [[BOSSP:GetTaskResultPrivileged|GetTaskResultPrivileged]]
+
|-
+
| 0x045600C2
+
| [[BOSSP:GetTaskCommErrorCodePrivileged|GetTaskCommErrorCodePrivileged]]
+
|-
+
| 0x04570142
+
| [[BOSSP:GetTaskStatusPrivileged|GetTaskStatusPrivileged]]
|-
|-
| 0x04580104
| 0x04580104
−
| ?
+
| [[BOSSP:SetTaskQueryPrivileged|SetTaskQueryPrivileged]]
|}
|}
Line 258:
Line 447:
==BOSS Service "boss:M"==
==BOSS Service "boss:M"==
+
+
{| class="wikitable" border="1"
+
|-
+
! Command Header
+
! Description
+
|-
+
| 0x00010002
+
| ?
+
|-
+
| 0x00020000
+
| ?
+
|-
+
| 0x00030040
+
| ?
+
|-
+
| 0x00040000
+
| ?
+
|-
+
| 0x00050000
+
| ?
+
|-
+
| 0x00060000
+
| ?
+
|-
+
| 0x00070000
+
| ?
+
|}
+
+
==programIDs==
+
BOSS uses programIDs raw without any handling for the New3DS programID-low bitmask. For example, attempting a NsDataId listing with the New3DS bitmask set will fail, if BOSS is only setup for that programID with the New3DS bitmask clear.
+
+
When [[BOSSU:InitializeSession|initializing]] BOSS with the default programID, the New3DS programID-low bitmask is always clear for New3DS titles since that's how it was originally registered with [[Filesystem_services|FS]]. Hence, the programID in the [[SpotPass|BOSS-container]] must always have the New3DS bitmask clear. This also means everything using the BOSSP commands with the raw programIDs loaded from AM title-listing are broken with New3DS titles, for example [[Extended_Banner]].
==Content Data Storage==
==Content Data Storage==
Line 263:
Line 484:
All of these commands using [[FS:CheckAuthorityToAccessExtSaveData]] are: [[BOSS:SetStorageInfo]] and RegisterStorageEntry, for both BOSSU and BOSSP.
All of these commands using [[FS:CheckAuthorityToAccessExtSaveData]] are: [[BOSS:SetStorageInfo]] and RegisterStorageEntry, for both BOSSU and BOSSP.
+
+
BOSS-container content is stored in the extdata registered for the programID specified in the BOSS-container, what task it's associated with / what title registered it is irrelevant with BOSS-container data storage.
==Custom SpotPass content==
==Custom SpotPass content==
Line 332:
Line 555:
| 0x0
| 0x0
| 0x4
| 0x4
−
| ?
+
| Content data-type, originally from the [[SpotPass|BOSS-container]].
|}
|}
Line 437:
Line 660:
| 0x1
| 0x1
| Unknown. Usually 0x2?
| Unknown. Usually 0x2?
+
|-
+
| 0x6
+
| 0x1
+
| ?
|-
|-
| 0x7
| 0x7
| 0x200
| 0x200
| URL
| URL
+
|-
+
| 0x8
+
| 0x4
+
| ?
+
|-
+
| 0x9
+
| 0x1
+
| ?
+
|-
+
| 0xA
+
| 0x100
+
| ?
+
|-
+
| 0xB
+
| 0x200
+
| ?
|-
|-
| 0xC
| 0xC
|
|
−
| [[BOSSU:SendPropertyHandle]] is used for this. This property is only setup for HTTP uploads?
+
| [[BOSSU:SendPropertyHandle]] is used for this. This property is only setup for HTTP uploads? This can be used with [[BOSSU:SendProperty]] too but that's not the intended use.
|-
|-
| 0xD
| 0xD
Line 457:
Line 700:
| 0xC
| 0xC
| 3 words. Last word is unknown, normally 0(non-zero doesn't seem to affect any HTTPC commands). [[HTTPC:AddDefaultCert]] is called twice for each of the first two words which are used as certIDs(not masked to u8).
| 3 words. Last word is unknown, normally 0(non-zero doesn't seem to affect any HTTPC commands). [[HTTPC:AddDefaultCert]] is called twice for each of the first two words which are used as certIDs(not masked to u8).
+
|-
+
| 0x10
+
| 0x1
+
| When non-zero this enables loading the client cert+privk from FS, requires the filepaths to be actually set.
+
|-
+
| 0x11
+
| 0x1
+
| When non-zero this enables loading a trusted rootCA cert DER from FS, requires the filepath to be actually set.
+
|-
+
| 0x12
+
| 0x1
+
| ?
+
|-
+
| 0x13
+
| 0x4
+
| ?
+
|-
+
| 0x14
+
| 0x4
+
| ?
+
|-
+
| 0x15
+
| 0x40
+
| ?
+
|-
+
| 0x16
+
| 0x4
+
| ?
+
|-
+
| 0x18
+
| 0x1
+
| ?
+
|-
+
| 0x19
+
| 0x1
+
| ?
+
|-
+
| 0x1A
+
| 0x1
+
| ?
+
|-
+
| 0x1B
+
| 0x4
+
| ?
+
|-
+
| 0x1C
+
| 0x4
+
| ?
|-
|-
| 0x35
| 0x35
Line 465:
Line 756:
| 0x400
| 0x400
| List of TaskIDs. [[BOSSU:GetTaskIdList]] is used before [[BOSSU:ReceiveProperty|reading]] this.
| List of TaskIDs. [[BOSSU:GetTaskIdList]] is used before [[BOSSU:ReceiveProperty|reading]] this.
+
|-
+
| 0x3B
+
| 0x4
+
| ?
+
|-
+
| 0x3E
+
| 0x200
+
| ?
+
|-
+
| 0x3F
+
| 0x1
+
| ?
|}
|}
+
+
The only valid PropertyIDs for [[BOSSU:SendProperty]] are the ones listed above, except 0x35 and 0x36. If the specified size for the command is larger than the property size, it will use the actual property size instead. When the specified size is less than the actual property size, all of the property data that won't be written to is cleared.
==TaskStatus==
==TaskStatus==
Line 499:
Line 804:
| 0xC8A0F833
| 0xC8A0F833
| taskID not found.
| taskID not found.
+
|-
+
| 0xC8A0F836
+
| taskID already exists, for task creation.
+
|-
+
| 0xC8A0F842
+
| The specified programID is not setup for BOSS.
+
|-
+
| 0xC8A0F843
+
| The specified NsDataId was not found.
|}
|}
+
+
[[Category:Services]]