aboutsummaryrefslogtreecommitdiff
path: root/src/core/crypto/aes_util.cpp
diff options
context:
space:
mode:
authorLioncash <mathew1800@gmail.com>2018-08-04 16:52:19 -0400
committerLioncash <mathew1800@gmail.com>2018-08-04 17:30:48 -0400
commitf0a2d4da2bee82dd70dfceed75e39552bb8267aa (patch)
treeb7e949b631c624aa023c7075e19d47746a1d43a2 /src/core/crypto/aes_util.cpp
parent1fb5027501fb0355d064a56b47de136e630328c5 (diff)
aes_util: Make CalculateNintendoTweak() an internally linked function
This function doesn't directly depend on class state, so it can be hidden entirely from the interface in the cpp file.
Diffstat (limited to 'src/core/crypto/aes_util.cpp')
-rw-r--r--src/core/crypto/aes_util.cpp20
1 files changed, 10 insertions, 10 deletions
diff --git a/src/core/crypto/aes_util.cpp b/src/core/crypto/aes_util.cpp
index e2dc4acb3f..a9876c83e0 100644
--- a/src/core/crypto/aes_util.cpp
+++ b/src/core/crypto/aes_util.cpp
@@ -9,6 +9,16 @@
#include "core/crypto/key_manager.h"
namespace Core::Crypto {
+namespace {
+std::vector<u8> CalculateNintendoTweak(size_t sector_id) {
+ std::vector<u8> out(0x10);
+ for (size_t i = 0xF; i <= 0xF; --i) {
+ out[i] = sector_id & 0xFF;
+ sector_id >>= 8;
+ }
+ return out;
+}
+} // Anonymous namespace
static_assert(static_cast<size_t>(Mode::CTR) == static_cast<size_t>(MBEDTLS_CIPHER_AES_128_CTR),
"CTR has incorrect value.");
@@ -100,16 +110,6 @@ void AESCipher<Key, KeySize>::XTSTranscode(const u8* src, size_t size, u8* dest,
}
}
-template <typename Key, size_t KeySize>
-std::vector<u8> AESCipher<Key, KeySize>::CalculateNintendoTweak(size_t sector_id) {
- std::vector<u8> out(0x10);
- for (size_t i = 0xF; i <= 0xF; --i) {
- out[i] = sector_id & 0xFF;
- sector_id >>= 8;
- }
- return out;
-}
-
template class AESCipher<Key128>;
template class AESCipher<Key256>;
} // namespace Core::Crypto \ No newline at end of file