LeviLamina
Loading...
Searching...
No Matches
OpenSSLSymmetricInterface.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/deps/crypto/symmetric/ISystemInterface.h"
7
8namespace Crypto::Symmetric {
9
11public:
12 // member variables
13 // NOLINTBEGIN
18 // NOLINTEND
19
20public:
21 // prevent constructor by default
25
26public:
27 // virtual functions
28 // NOLINTBEGIN
29 // vIndex: 1
30 virtual void init(::std::string const& key, ::std::string const& IV) /*override*/;
31
32 // vIndex: 2
33 virtual void encrypt(::std::string const& plaintext, ::std::string& out) /*override*/;
34
35 // vIndex: 3
36 virtual void decrypt(::std::string const& ciphertext, ::std::string& out) /*override*/;
37
38 // vIndex: 4
39 virtual uint64 getKeySize() const /*override*/;
40
41 // vIndex: 5
42 virtual uint64 getBlockSize() const /*override*/;
43
44 // vIndex: 6
45 virtual uint64 getEncryptionBufferSize(uint64 inputSize) const /*override*/;
46
47 // vIndex: 7
48 virtual bool
49 encryptToBuffer(::gsl::span<char const> input, ::gsl::span<char> output, uint64& bytesWritten) /*override*/;
50
51 // vIndex: 0
52 virtual ~OpenSSLSymmetricInterface() /*override*/ = default;
53 // NOLINTEND
54
55public:
56 // destructor thunk
57 // NOLINTBEGIN
58
59 // NOLINTEND
60
61public:
62 // virtual function thunks
63 // NOLINTBEGIN
64 MCAPI void $init(::std::string const& key, ::std::string const& IV);
65
66 MCAPI void $encrypt(::std::string const& plaintext, ::std::string& out);
67
68 MCAPI void $decrypt(::std::string const& ciphertext, ::std::string& out);
69
70 MCAPI uint64 $getKeySize() const;
71
72 MCAPI uint64 $getBlockSize() const;
73
74 MCAPI uint64 $getEncryptionBufferSize(uint64 inputSize) const;
75
76 MCAPI bool $encryptToBuffer(::gsl::span<char const> input, ::gsl::span<char> output, uint64& bytesWritten);
77 // NOLINTEND
78
79public:
80 // vftables
81 // NOLINTBEGIN
82 MCAPI static void** $vftable();
83 // NOLINTEND
84};
85
86} // namespace Crypto::Symmetric
Definition ISystemInterface.h:7
Definition OpenSSLSymmetricInterface.h:10
Definition Alias.h:14