summaryrefslogtreecommitdiffstats
path: root/src/core/crypto/aes_util.h
diff options
context:
space:
mode:
authorLioncash <mathew1800@gmail.com>2020-08-03 20:14:39 +0200
committerLioncash <mathew1800@gmail.com>2020-08-03 20:29:58 +0200
commit15660bd8570735139d91d0165a2614747f570202 (patch)
tree6886854694175d87bf33924c1799b1b46e4fd05d /src/core/crypto/aes_util.h
parentipc: Allow all trivially copyable objects to be passed directly into WriteBuffer (#4465) (diff)
downloadyuzu-15660bd8570735139d91d0165a2614747f570202.tar
yuzu-15660bd8570735139d91d0165a2614747f570202.tar.gz
yuzu-15660bd8570735139d91d0165a2614747f570202.tar.bz2
yuzu-15660bd8570735139d91d0165a2614747f570202.tar.lz
yuzu-15660bd8570735139d91d0165a2614747f570202.tar.xz
yuzu-15660bd8570735139d91d0165a2614747f570202.tar.zst
yuzu-15660bd8570735139d91d0165a2614747f570202.zip
Diffstat (limited to 'src/core/crypto/aes_util.h')
-rw-r--r--src/core/crypto/aes_util.h9
1 files changed, 6 insertions, 3 deletions
diff --git a/src/core/crypto/aes_util.h b/src/core/crypto/aes_util.h
index edc4ab910..e2a304186 100644
--- a/src/core/crypto/aes_util.h
+++ b/src/core/crypto/aes_util.h
@@ -6,7 +6,6 @@
#include <memory>
#include <type_traits>
-#include <vector>
#include "common/common_types.h"
#include "core/file_sys/vfs.h"
@@ -32,10 +31,12 @@ class AESCipher {
public:
AESCipher(Key key, Mode mode);
-
~AESCipher();
- void SetIV(std::vector<u8> iv);
+ template <typename ContiguousContainer>
+ void SetIV(const ContiguousContainer& container) {
+ SetIVImpl(std::data(container), std::size(container));
+ }
template <typename Source, typename Dest>
void Transcode(const Source* src, std::size_t size, Dest* dest, Op op) const {
@@ -59,6 +60,8 @@ public:
std::size_t sector_size, Op op);
private:
+ void SetIVImpl(const u8* data, std::size_t size);
+
std::unique_ptr<CipherContext> ctx;
};
} // namespace Core::Crypto