NS services: Difference between revisions
No edit summary |
|||
Line 1,686: | Line 1,686: | ||
HasApplicationRecord is called with the input [[NCM_services#ApplicationId|ApplicationId]], an error is returned if the record isn't found. | HasApplicationRecord is called with the input [[NCM_services#ApplicationId|ApplicationId]], an error is returned if the record isn't found. | ||
[[#ApplicationDeliveryInfo|RequiredApplicationVersion]] is initially set to the output version from [[Shared_Database_services|avm]] GetLaunchRequiredVersion. Later when ContentMetaType == Application etc, it calls a func. This func uses [[NCM_services|ncm]] IContentMetaDatabase GetRequiredApplicationVersion. If the output version is higher than the [[#ApplicationDeliveryInfo|RequiredApplicationVersion]] field then the output version is written here. Immediately aferwards, it also checks whether the bit for Compacted is set from [[NCM_services|ncm]] IContentMetaDatabase GetAttributes, clearing [[#ApplicationDeliveryInfo|ApplicationVersion]] if the attribute is set. | |||
[20.0.0+] [[#ApplicationDeliveryInfo|ApplicationDeliveryInfo]] ContentMetaPlatform and ProperProgramExists are now set using data from [[NCM_services|ncm]]. | [20.0.0+] [[#ApplicationDeliveryInfo|ApplicationDeliveryInfo]] ContentMetaPlatform and ProperProgramExists are now set using data from [[NCM_services|ncm]]. | ||
[20.0.0+] [[Shared_Database_services|pl:s]] GetFunctionBlackListSystemVersionToAuthorize with ApplicationFunctionAuthorizationId=0x5 is now used, the output version is written to [[#ApplicationDeliveryInfo|RequiredSystemVersion]] when it's higher than the value previously written here. | [20.0.0+] [[Shared_Database_services|pl:s]] GetFunctionBlackListSystemVersionToAuthorize with ApplicationFunctionAuthorizationId=0x5 is now used, the output version is written to [[#ApplicationDeliveryInfo|RequiredSystemVersion]] when it's higher than the value previously written here. | ||
[20.0.0+] [[Shared_Database_services|pl:s]] GetRequiredApplicationVersion with ApplicationFunctionAuthorizationId=0x5 is now used, the output version is written to [[#ApplicationDeliveryInfo|RequiredApplicationVersion]] when it's higher than the value previously written here. | |||
==== HasAllContentsToDeliver ==== | ==== HasAllContentsToDeliver ==== | ||
Line 4,623: | Line 4,627: | ||
| 0x0 || 0x4 || ApplicationDeliveryProtocolVersion. | | 0x0 || 0x4 || ApplicationDeliveryProtocolVersion. | ||
|- | |- | ||
| 0x4 || 0x4 || | | 0x4 || 0x4 || Padding | ||
|- | |- | ||
| 0x8 || 0x8 || ApplicationId. | | 0x8 || 0x8 || ApplicationId. | ||
Line 4,629: | Line 4,633: | ||
| 0x10 || 0x4 || ApplicationVersion. | | 0x10 || 0x4 || ApplicationVersion. | ||
|- | |- | ||
| 0x14 || 0x4 || | | 0x14 || 0x4 || RequiredApplicationVersion. | ||
|- | |- | ||
| 0x18 || 0x4 || RequiredSystemVersion. | | 0x18 || 0x4 || RequiredSystemVersion. | ||
Line 4,639: | Line 4,643: | ||
| 0x21 || 0x1 || [20.0.0+] ProperProgramExists. Set to whether the bit for ProperProgramExists is set from [[NCM_services|ncm]] IContentMetaDatabase GetAttributes. | | 0x21 || 0x1 || [20.0.0+] ProperProgramExists. Set to whether the bit for ProperProgramExists is set from [[NCM_services|ncm]] IContentMetaDatabase GetAttributes. | ||
|- | |- | ||
| 0x22 || 0xBE || | | 0x22 || 0xBE || Reserved | ||
|- | |- | ||
| 0xE0 || 0x20 || HMAC-SHA256 over the previous 0xE0-bytes. Uses a different key than [[#SystemDeliveryInfo]]. | | 0xE0 || 0x20 || HMAC-SHA256 over the previous 0xE0-bytes. Uses a different key than [[#SystemDeliveryInfo]]. |