hos::Version: rename enum members

This commit is contained in:
Michael Scire
2020-04-13 22:19:44 -07:00
parent 79b9e07ee9
commit 6719abec65
78 changed files with 304 additions and 302 deletions

View File

@@ -39,7 +39,7 @@ namespace ams::spl::impl {
/* Max Keyslots helper. */
inline size_t GetMaxKeyslots() {
return (hos::GetVersion() >= hos::Version_600) ? MaxAesKeyslots : MaxAesKeyslotsDeprecated;
return (hos::GetVersion() >= hos::Version_6_0_0) ? MaxAesKeyslots : MaxAesKeyslotsDeprecated;
}
/* Type definitions. */
@@ -203,7 +203,7 @@ namespace ams::spl::impl {
/* Internal Keyslot utility. */
Result ValidateAesKeyslot(u32 keyslot, const void *owner) {
R_UNLESS(keyslot < GetMaxKeyslots(), spl::ResultInvalidKeyslot());
R_UNLESS((g_keyslot_owners[keyslot] == owner || hos::GetVersion() == hos::Version_100), spl::ResultInvalidKeyslot());
R_UNLESS((g_keyslot_owners[keyslot] == owner || hos::GetVersion() == hos::Version_1_0_0), spl::ResultInvalidKeyslot());
return ResultSuccess();
}
@@ -262,7 +262,7 @@ namespace ams::spl::impl {
armDCacheFlush(layout, sizeof(*layout));
smc::Result smc_res;
if (hos::GetVersion() >= hos::Version_500) {
if (hos::GetVersion() >= hos::Version_5_0_0) {
smc_res = smc::DecryptOrImportRsaPrivateKey(layout->data, src_size, access_key, key_source, static_cast<smc::DecryptOrImportMode>(option));
} else {
smc_res = smc::ImportSecureExpModKey(layout->data, src_size, access_key, key_source, option);
@@ -582,7 +582,7 @@ namespace ams::spl::impl {
}
Result AllocateAesKeyslot(u32 *out_keyslot, const void *owner) {
if (hos::GetVersion() <= hos::Version_100) {
if (hos::GetVersion() <= hos::Version_1_0_0) {
/* On 1.0.0, keyslots were kind of a wild west. */
*out_keyslot = 0;
return ResultSuccess();
@@ -601,7 +601,7 @@ namespace ams::spl::impl {
}
Result FreeAesKeyslot(u32 keyslot, const void *owner) {
if (hos::GetVersion() <= hos::Version_100) {
if (hos::GetVersion() <= hos::Version_1_0_0) {
/* On 1.0.0, keyslots were kind of a wild west. */
return ResultSuccess();
}
@@ -636,7 +636,7 @@ namespace ams::spl::impl {
smc::Result smc_res;
size_t copy_size = 0;
if (hos::GetVersion() >= hos::Version_500) {
if (hos::GetVersion() >= hos::Version_5_0_0) {
copy_size = std::min(dst_size, src_size - RsaPrivateKeyMetaSize);
smc_res = smc::DecryptOrImportRsaPrivateKey(layout->data, src_size, access_key, key_source, static_cast<smc::DecryptOrImportMode>(option));
} else {
@@ -663,7 +663,7 @@ namespace ams::spl::impl {
/* ES */
Result ImportEsKey(const void *src, size_t src_size, const AccessKey &access_key, const KeySource &key_source, u32 option) {
if (hos::GetVersion() >= hos::Version_500) {
if (hos::GetVersion() >= hos::Version_5_0_0) {
return ImportSecureExpModKey(src, src_size, access_key, key_source, option);
} else {
struct ImportEsKeyLayout {

View File

@@ -40,17 +40,17 @@ namespace ams::spl {
MAKE_SERVICE_COMMAND_META(SetConfig),
MAKE_SERVICE_COMMAND_META(GenerateRandomBytes),
MAKE_SERVICE_COMMAND_META(IsDevelopment),
MAKE_SERVICE_COMMAND_META(SetBootReason, hos::Version_300),
MAKE_SERVICE_COMMAND_META(GetBootReason, hos::Version_300),
MAKE_SERVICE_COMMAND_META(SetBootReason, hos::Version_3_0_0),
MAKE_SERVICE_COMMAND_META(GetBootReason, hos::Version_3_0_0),
MAKE_SERVICE_COMMAND_META(GenerateAesKek),
MAKE_SERVICE_COMMAND_META(LoadAesKey),
MAKE_SERVICE_COMMAND_META(GenerateAesKey),
MAKE_SERVICE_COMMAND_META(DecryptAesKey),
MAKE_SERVICE_COMMAND_META(CryptAesCtr),
MAKE_SERVICE_COMMAND_META(ComputeCmac),
MAKE_SERVICE_COMMAND_META(AllocateAesKeyslot, hos::Version_200),
MAKE_SERVICE_COMMAND_META(FreeAesKeyslot, hos::Version_200),
MAKE_SERVICE_COMMAND_META(GetAesKeyslotAvailableEvent, hos::Version_200),
MAKE_SERVICE_COMMAND_META(AllocateAesKeyslot, hos::Version_2_0_0),
MAKE_SERVICE_COMMAND_META(FreeAesKeyslot, hos::Version_2_0_0),
MAKE_SERVICE_COMMAND_META(GetAesKeyslotAvailableEvent, hos::Version_2_0_0),
};
};

View File

@@ -103,26 +103,26 @@ namespace ams::spl {
MAKE_SERVICE_COMMAND_META(DecryptRsaPrivateKey),
MAKE_SERVICE_COMMAND_META(DecryptAesKey),
MAKE_SERVICE_COMMAND_META(CryptAesCtrDeprecated, hos::Version_100, hos::Version_100),
MAKE_SERVICE_COMMAND_META(CryptAesCtr, hos::Version_200),
MAKE_SERVICE_COMMAND_META(CryptAesCtrDeprecated, hos::Version_1_0_0, hos::Version_1_0_0),
MAKE_SERVICE_COMMAND_META(CryptAesCtr, hos::Version_2_0_0),
MAKE_SERVICE_COMMAND_META(ComputeCmac),
MAKE_SERVICE_COMMAND_META(ImportEsKey),
MAKE_SERVICE_COMMAND_META(UnwrapTitleKeyDeprecated, hos::Version_100, hos::Version_200),
MAKE_SERVICE_COMMAND_META(UnwrapTitleKey, hos::Version_300),
MAKE_SERVICE_COMMAND_META(UnwrapTitleKeyDeprecated, hos::Version_1_0_0, hos::Version_2_0_0),
MAKE_SERVICE_COMMAND_META(UnwrapTitleKey, hos::Version_3_0_0),
MAKE_SERVICE_COMMAND_META(LoadTitleKey),
MAKE_SERVICE_COMMAND_META(UnwrapCommonTitleKeyDeprecated, hos::Version_200, hos::Version_200),
MAKE_SERVICE_COMMAND_META(UnwrapCommonTitleKey, hos::Version_300),
MAKE_SERVICE_COMMAND_META(UnwrapCommonTitleKeyDeprecated, hos::Version_2_0_0, hos::Version_2_0_0),
MAKE_SERVICE_COMMAND_META(UnwrapCommonTitleKey, hos::Version_3_0_0),
MAKE_SERVICE_COMMAND_META(AllocateAesKeyslot, hos::Version_200),
MAKE_SERVICE_COMMAND_META(FreeAesKeyslot, hos::Version_200),
MAKE_SERVICE_COMMAND_META(GetAesKeyslotAvailableEvent, hos::Version_200),
MAKE_SERVICE_COMMAND_META(AllocateAesKeyslot, hos::Version_2_0_0),
MAKE_SERVICE_COMMAND_META(FreeAesKeyslot, hos::Version_2_0_0),
MAKE_SERVICE_COMMAND_META(GetAesKeyslotAvailableEvent, hos::Version_2_0_0),
MAKE_SERVICE_COMMAND_META(SetBootReason, hos::Version_300),
MAKE_SERVICE_COMMAND_META(GetBootReason, hos::Version_300),
MAKE_SERVICE_COMMAND_META(SetBootReason, hos::Version_3_0_0),
MAKE_SERVICE_COMMAND_META(GetBootReason, hos::Version_3_0_0),
};
};

View File

@@ -39,27 +39,27 @@ namespace ams::spl {
MAKE_SERVICE_COMMAND_META(SetConfig),
MAKE_SERVICE_COMMAND_META(GenerateRandomBytes),
MAKE_SERVICE_COMMAND_META(IsDevelopment),
MAKE_SERVICE_COMMAND_META(SetBootReason, hos::Version_300),
MAKE_SERVICE_COMMAND_META(GetBootReason, hos::Version_300),
MAKE_SERVICE_COMMAND_META(SetBootReason, hos::Version_3_0_0),
MAKE_SERVICE_COMMAND_META(GetBootReason, hos::Version_3_0_0),
MAKE_SERVICE_COMMAND_META(GenerateAesKek),
MAKE_SERVICE_COMMAND_META(LoadAesKey),
MAKE_SERVICE_COMMAND_META(GenerateAesKey),
MAKE_SERVICE_COMMAND_META(DecryptAesKey),
MAKE_SERVICE_COMMAND_META(CryptAesCtr),
MAKE_SERVICE_COMMAND_META(ComputeCmac),
MAKE_SERVICE_COMMAND_META(AllocateAesKeyslot, hos::Version_200),
MAKE_SERVICE_COMMAND_META(FreeAesKeyslot, hos::Version_200),
MAKE_SERVICE_COMMAND_META(GetAesKeyslotAvailableEvent, hos::Version_200),
MAKE_SERVICE_COMMAND_META(DecryptRsaPrivateKeyDeprecated, hos::Version_400, hos::Version_400),
MAKE_SERVICE_COMMAND_META(DecryptRsaPrivateKey, hos::Version_500),
MAKE_SERVICE_COMMAND_META(ImportEsKeyDeprecated, hos::Version_400, hos::Version_400),
MAKE_SERVICE_COMMAND_META(ImportEsKey, hos::Version_500),
MAKE_SERVICE_COMMAND_META(AllocateAesKeyslot, hos::Version_2_0_0),
MAKE_SERVICE_COMMAND_META(FreeAesKeyslot, hos::Version_2_0_0),
MAKE_SERVICE_COMMAND_META(GetAesKeyslotAvailableEvent, hos::Version_2_0_0),
MAKE_SERVICE_COMMAND_META(DecryptRsaPrivateKeyDeprecated, hos::Version_4_0_0, hos::Version_4_0_0),
MAKE_SERVICE_COMMAND_META(DecryptRsaPrivateKey, hos::Version_5_0_0),
MAKE_SERVICE_COMMAND_META(ImportEsKeyDeprecated, hos::Version_4_0_0, hos::Version_4_0_0),
MAKE_SERVICE_COMMAND_META(ImportEsKey, hos::Version_5_0_0),
MAKE_SERVICE_COMMAND_META(UnwrapTitleKey),
MAKE_SERVICE_COMMAND_META(UnwrapCommonTitleKey, hos::Version_200),
MAKE_SERVICE_COMMAND_META(ImportDrmKey, hos::Version_500),
MAKE_SERVICE_COMMAND_META(DrmExpMod, hos::Version_500),
MAKE_SERVICE_COMMAND_META(UnwrapElicenseKey, hos::Version_600),
MAKE_SERVICE_COMMAND_META(LoadElicenseKey, hos::Version_600),
MAKE_SERVICE_COMMAND_META(UnwrapCommonTitleKey, hos::Version_2_0_0),
MAKE_SERVICE_COMMAND_META(ImportDrmKey, hos::Version_5_0_0),
MAKE_SERVICE_COMMAND_META(DrmExpMod, hos::Version_5_0_0),
MAKE_SERVICE_COMMAND_META(UnwrapElicenseKey, hos::Version_6_0_0),
MAKE_SERVICE_COMMAND_META(LoadElicenseKey, hos::Version_6_0_0),
};
};

View File

@@ -37,23 +37,23 @@ namespace ams::spl {
MAKE_SERVICE_COMMAND_META(SetConfig),
MAKE_SERVICE_COMMAND_META(GenerateRandomBytes),
MAKE_SERVICE_COMMAND_META(IsDevelopment),
MAKE_SERVICE_COMMAND_META(SetBootReason, hos::Version_300),
MAKE_SERVICE_COMMAND_META(GetBootReason, hos::Version_300),
MAKE_SERVICE_COMMAND_META(SetBootReason, hos::Version_3_0_0),
MAKE_SERVICE_COMMAND_META(GetBootReason, hos::Version_3_0_0),
MAKE_SERVICE_COMMAND_META(GenerateAesKek),
MAKE_SERVICE_COMMAND_META(LoadAesKey),
MAKE_SERVICE_COMMAND_META(GenerateAesKey),
MAKE_SERVICE_COMMAND_META(DecryptAesKey),
MAKE_SERVICE_COMMAND_META(CryptAesCtr),
MAKE_SERVICE_COMMAND_META(ComputeCmac),
MAKE_SERVICE_COMMAND_META(AllocateAesKeyslot, hos::Version_200),
MAKE_SERVICE_COMMAND_META(FreeAesKeyslot, hos::Version_200),
MAKE_SERVICE_COMMAND_META(GetAesKeyslotAvailableEvent, hos::Version_200),
MAKE_SERVICE_COMMAND_META(ImportLotusKeyDeprecated, hos::Version_400, hos::Version_400),
MAKE_SERVICE_COMMAND_META(ImportLotusKey, hos::Version_500),
MAKE_SERVICE_COMMAND_META(AllocateAesKeyslot, hos::Version_2_0_0),
MAKE_SERVICE_COMMAND_META(FreeAesKeyslot, hos::Version_2_0_0),
MAKE_SERVICE_COMMAND_META(GetAesKeyslotAvailableEvent, hos::Version_2_0_0),
MAKE_SERVICE_COMMAND_META(ImportLotusKeyDeprecated, hos::Version_4_0_0, hos::Version_4_0_0),
MAKE_SERVICE_COMMAND_META(ImportLotusKey, hos::Version_5_0_0),
MAKE_SERVICE_COMMAND_META(DecryptLotusMessage),
MAKE_SERVICE_COMMAND_META(GenerateSpecificAesKey),
MAKE_SERVICE_COMMAND_META(LoadTitleKey),
MAKE_SERVICE_COMMAND_META(GetPackage2Hash, hos::Version_500),
MAKE_SERVICE_COMMAND_META(GetPackage2Hash, hos::Version_5_0_0),
};
};

View File

@@ -85,8 +85,8 @@ namespace ams::spl {
MAKE_SERVICE_COMMAND_META(SetConfig),
MAKE_SERVICE_COMMAND_META(GenerateRandomBytes),
MAKE_SERVICE_COMMAND_META(IsDevelopment),
MAKE_SERVICE_COMMAND_META(SetBootReason, hos::Version_300),
MAKE_SERVICE_COMMAND_META(GetBootReason, hos::Version_300),
MAKE_SERVICE_COMMAND_META(SetBootReason, hos::Version_3_0_0),
MAKE_SERVICE_COMMAND_META(GetBootReason, hos::Version_3_0_0),
};
};

View File

@@ -134,13 +134,13 @@ int main(int argc, char **argv)
/* Create services. */
R_ABORT_UNLESS(g_server_manager.RegisterServer<spl::RandomService>(RandomServiceName, RandomMaxSessions));
if (hos::GetVersion() >= hos::Version_400) {
if (hos::GetVersion() >= hos::Version_4_0_0) {
R_ABORT_UNLESS(g_server_manager.RegisterServer<spl::GeneralService>(GeneralServiceName, GeneralMaxSessions));
R_ABORT_UNLESS(g_server_manager.RegisterServer<spl::CryptoService>(CryptoServiceName, CryptoMaxSessions));
R_ABORT_UNLESS(g_server_manager.RegisterServer<spl::SslService>(SslServiceName, SslMaxSessions));
R_ABORT_UNLESS(g_server_manager.RegisterServer<spl::EsService>(EsServiceName, EsMaxSessions));
R_ABORT_UNLESS(g_server_manager.RegisterServer<spl::FsService>(FsServiceName, FsMaxSessions));
if (hos::GetVersion() >= hos::Version_500) {
if (hos::GetVersion() >= hos::Version_5_0_0) {
R_ABORT_UNLESS(g_server_manager.RegisterServer<spl::ManuService>(ManuServiceName, ManuMaxSessions));
}
} else {

View File

@@ -33,20 +33,20 @@ namespace ams::spl {
MAKE_SERVICE_COMMAND_META(SetConfig),
MAKE_SERVICE_COMMAND_META(GenerateRandomBytes),
MAKE_SERVICE_COMMAND_META(IsDevelopment),
MAKE_SERVICE_COMMAND_META(SetBootReason, hos::Version_300),
MAKE_SERVICE_COMMAND_META(GetBootReason, hos::Version_300),
MAKE_SERVICE_COMMAND_META(SetBootReason, hos::Version_3_0_0),
MAKE_SERVICE_COMMAND_META(GetBootReason, hos::Version_3_0_0),
MAKE_SERVICE_COMMAND_META(GenerateAesKek),
MAKE_SERVICE_COMMAND_META(LoadAesKey),
MAKE_SERVICE_COMMAND_META(GenerateAesKey),
MAKE_SERVICE_COMMAND_META(DecryptAesKey),
MAKE_SERVICE_COMMAND_META(CryptAesCtr),
MAKE_SERVICE_COMMAND_META(ComputeCmac),
MAKE_SERVICE_COMMAND_META(AllocateAesKeyslot, hos::Version_200),
MAKE_SERVICE_COMMAND_META(FreeAesKeyslot, hos::Version_200),
MAKE_SERVICE_COMMAND_META(GetAesKeyslotAvailableEvent, hos::Version_200),
MAKE_SERVICE_COMMAND_META(DecryptRsaPrivateKeyDeprecated, hos::Version_400, hos::Version_400),
MAKE_SERVICE_COMMAND_META(DecryptRsaPrivateKey, hos::Version_500),
MAKE_SERVICE_COMMAND_META(ReEncryptRsaPrivateKey, hos::Version_500),
MAKE_SERVICE_COMMAND_META(AllocateAesKeyslot, hos::Version_2_0_0),
MAKE_SERVICE_COMMAND_META(FreeAesKeyslot, hos::Version_2_0_0),
MAKE_SERVICE_COMMAND_META(GetAesKeyslotAvailableEvent, hos::Version_2_0_0),
MAKE_SERVICE_COMMAND_META(DecryptRsaPrivateKeyDeprecated, hos::Version_4_0_0, hos::Version_4_0_0),
MAKE_SERVICE_COMMAND_META(DecryptRsaPrivateKey, hos::Version_5_0_0),
MAKE_SERVICE_COMMAND_META(ReEncryptRsaPrivateKey, hos::Version_5_0_0),
};
};

View File

@@ -33,21 +33,21 @@ namespace ams::spl {
MAKE_SERVICE_COMMAND_META(SetConfig),
MAKE_SERVICE_COMMAND_META(GenerateRandomBytes),
MAKE_SERVICE_COMMAND_META(IsDevelopment),
MAKE_SERVICE_COMMAND_META(SetBootReason, hos::Version_300),
MAKE_SERVICE_COMMAND_META(GetBootReason, hos::Version_300),
MAKE_SERVICE_COMMAND_META(SetBootReason, hos::Version_3_0_0),
MAKE_SERVICE_COMMAND_META(GetBootReason, hos::Version_3_0_0),
MAKE_SERVICE_COMMAND_META(GenerateAesKek),
MAKE_SERVICE_COMMAND_META(LoadAesKey),
MAKE_SERVICE_COMMAND_META(GenerateAesKey),
MAKE_SERVICE_COMMAND_META(DecryptAesKey),
MAKE_SERVICE_COMMAND_META(CryptAesCtr),
MAKE_SERVICE_COMMAND_META(ComputeCmac),
MAKE_SERVICE_COMMAND_META(AllocateAesKeyslot, hos::Version_200),
MAKE_SERVICE_COMMAND_META(FreeAesKeyslot, hos::Version_200),
MAKE_SERVICE_COMMAND_META(GetAesKeyslotAvailableEvent, hos::Version_200),
MAKE_SERVICE_COMMAND_META(DecryptRsaPrivateKeyDeprecated, hos::Version_400, hos::Version_400),
MAKE_SERVICE_COMMAND_META(DecryptRsaPrivateKey, hos::Version_500),
MAKE_SERVICE_COMMAND_META(ImportSslKey, hos::Version_500),
MAKE_SERVICE_COMMAND_META(SslExpMod, hos::Version_500),
MAKE_SERVICE_COMMAND_META(AllocateAesKeyslot, hos::Version_2_0_0),
MAKE_SERVICE_COMMAND_META(FreeAesKeyslot, hos::Version_2_0_0),
MAKE_SERVICE_COMMAND_META(GetAesKeyslotAvailableEvent, hos::Version_2_0_0),
MAKE_SERVICE_COMMAND_META(DecryptRsaPrivateKeyDeprecated, hos::Version_4_0_0, hos::Version_4_0_0),
MAKE_SERVICE_COMMAND_META(DecryptRsaPrivateKey, hos::Version_5_0_0),
MAKE_SERVICE_COMMAND_META(ImportSslKey, hos::Version_5_0_0),
MAKE_SERVICE_COMMAND_META(SslExpMod, hos::Version_5_0_0),
};
};