diff options
author | Lioncash <[email protected]> | 2020-09-14 16:47:25 -0400 |
---|---|---|
committer | Lioncash <[email protected]> | 2020-09-14 16:49:59 -0400 |
commit | e0dd440b1ff9bf4578d7b69912dfe4283bfd4e6a (patch) | |
tree | 3ef2537360711465dc0b08a79aa22a4180aa4f49 /src/core | |
parent | 1a9774f824c3ae75e9344d897deec19ba871f059 (diff) | |
download | yuzu-android-e0dd440b1ff9bf4578d7b69912dfe4283bfd4e6a.tar.gz yuzu-android-e0dd440b1ff9bf4578d7b69912dfe4283bfd4e6a.zip |
crypto/key_manager: Remove dependency on the global system accessor
We can supply the content provider as an argument instead of hardcoding
a global accessor in the implementation.
Diffstat (limited to 'src/core')
-rw-r--r-- | src/core/crypto/key_manager.cpp | 7 | ||||
-rw-r--r-- | src/core/crypto/key_manager.h | 6 |
2 files changed, 8 insertions, 5 deletions
diff --git a/src/core/crypto/key_manager.cpp b/src/core/crypto/key_manager.cpp index dc591c730..65d246050 100644 --- a/src/core/crypto/key_manager.cpp +++ b/src/core/crypto/key_manager.cpp @@ -23,7 +23,6 @@ #include "common/hex_util.h" #include "common/logging/log.h" #include "common/string_util.h" -#include "core/core.h" #include "core/crypto/aes_util.h" #include "core/crypto/key_manager.h" #include "core/crypto/partition_data_manager.h" @@ -1022,10 +1021,10 @@ void KeyManager::DeriveBase() { } } -void KeyManager::DeriveETicket(PartitionDataManager& data) { +void KeyManager::DeriveETicket(PartitionDataManager& data, + const FileSys::ContentProvider& provider) { // ETicket keys - const auto es = Core::System::GetInstance().GetContentProvider().GetEntry( - 0x0100000000000033, FileSys::ContentRecordType::Program); + const auto es = provider.GetEntry(0x0100000000000033, FileSys::ContentRecordType::Program); if (es == nullptr) { return; diff --git a/src/core/crypto/key_manager.h b/src/core/crypto/key_manager.h index 321b75323..0a7220286 100644 --- a/src/core/crypto/key_manager.h +++ b/src/core/crypto/key_manager.h @@ -20,6 +20,10 @@ namespace Common::FS { class IOFile; } +namespace FileSys { +class ContentProvider; +} + namespace Loader { enum class ResultStatus : u16; } @@ -252,7 +256,7 @@ public: bool BaseDeriveNecessary() const; void DeriveBase(); - void DeriveETicket(PartitionDataManager& data); + void DeriveETicket(PartitionDataManager& data, const FileSys::ContentProvider& provider); void PopulateTickets(); void SynthesizeTickets(); |