LeviLamina
Loading...
Searching...
No Matches
EncryptedNetworkPeer.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/network/Compressibility.h"
7#include "mc/network/NetworkPeer.h"
8
9// auto generated forward declare list
10// clang-format off
11namespace Crypto::Hash { class HMAC; }
12namespace Crypto::Symmetric { class Symmetric; }
13// clang-format on
14
16public:
17 // member variables
18 // NOLINTBEGIN
19 ::ll::TypedStorage<8, 8, ::std::unique_ptr<::Crypto::Symmetric::Symmetric>> mDecryption;
20 ::ll::TypedStorage<8, 8, ::std::unique_ptr<::Crypto::Hash::HMAC>> mEncryptionMAC;
21 ::ll::TypedStorage<8, 8, ::std::unique_ptr<::Crypto::Symmetric::Symmetric>> mEncryption;
22 ::ll::TypedStorage<8, 8, ::std::unique_ptr<::Crypto::Hash::HMAC>> mDecryptionMAC;
23 ::ll::TypedStorage<8, 8, uint64> mSendCounter;
24 ::ll::TypedStorage<8, 8, uint64> mReceiveCounter;
25 ::ll::TypedStorage<8, 32, ::std::string> mSendEncryptedDataBuffer;
26 ::ll::TypedStorage<8, 32, ::std::string> mSendSignedDataBuffer;
27 ::ll::TypedStorage<8, 32, ::std::string> mRecvEncryptedDataBuffer;
28 ::ll::TypedStorage<8, 32, ::std::string> mRecvSignedDataBuffer;
29 ::ll::TypedStorage<8, 32, ::std::string> mRecvDecryptedDataBuffer;
30 ::ll::TypedStorage<1, 1, bool> mSkipEncryption;
31 // NOLINTEND
32
33public:
34 // virtual functions
35 // NOLINTBEGIN
36 virtual ~EncryptedNetworkPeer() /*override*/ = default;
37
38 virtual void sendPacket(
39 ::std::string const& data,
40 ::NetworkPeer::Reliability reliability,
41 ::Compressibility compressible
42 ) /*override*/;
43
44 virtual ::NetworkPeer::NetworkStatus getNetworkStatus() const /*override*/;
45
46 virtual bool isEncrypted() const /*override*/;
47
48 virtual ::NetworkPeer::DataStatus _receivePacket(
49 ::std::string& outData,
50 ::std::shared_ptr<::std::chrono::steady_clock::time_point> const& timepointPtr
51 ) /*override*/;
52 // NOLINTEND
53
54public:
55 // member functions
56 // NOLINTBEGIN
57 MCAPI void enableEncryption(::std::string const& symmetricKey);
58 // NOLINTEND
59
60public:
61 // virtual function thunks
62 // NOLINTBEGIN
63 MCAPI void
64 $sendPacket(::std::string const& data, ::NetworkPeer::Reliability reliability, ::Compressibility compressible);
65
66 MCFOLD ::NetworkPeer::NetworkStatus $getNetworkStatus() const;
67
68 MCAPI bool $isEncrypted() const;
69
70 MCAPI ::NetworkPeer::DataStatus $_receivePacket(
71 ::std::string& outData,
72 ::std::shared_ptr<::std::chrono::steady_clock::time_point> const& timepointPtr
73 );
74
75
76 // NOLINTEND
77
78public:
79 // vftables
80 // NOLINTBEGIN
81 MCNAPI static void** $vftable();
82 // NOLINTEND
83};
Definition HMAC.h:15
Definition Symmetric.h:12
Definition EncryptedNetworkPeer.h:15
static MCAPI void ** $vftable()
Definition NetworkPeer.h:8