LeviLamina
Loading...
Searching...
No Matches
SSLStreamAdapter.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/external/absl/AnyInvocable.h"
7#include "mc/external/rtc/SSLHandshakeError.h"
8#include "mc/external/rtc/SSLMode.h"
9#include "mc/external/rtc/SSLPeerCertificateDigestError.h"
10#include "mc/external/rtc/SSLProtocolVersion.h"
11#include "mc/external/rtc/SSLRole.h"
12#include "mc/external/rtc/StreamInterface.h"
13
14// auto generated forward declare list
15// clang-format off
16namespace rtc { class SSLCertChain; }
17namespace rtc { class SSLIdentity; }
18// clang-format on
19
20namespace rtc {
21
23public:
24 // member variables
25 // NOLINTBEGIN
27 // NOLINTEND
28
29public:
30 // prevent constructor by default
31 SSLStreamAdapter& operator=(SSLStreamAdapter const&);
34
35public:
36 // virtual functions
37 // NOLINTBEGIN
38 // vIndex: 0
39 virtual ~SSLStreamAdapter() /*override*/;
40
41 // vIndex: 6
42 virtual void SetIdentity(::std::unique_ptr<::rtc::SSLIdentity>) = 0;
43
44 // vIndex: 7
45 virtual ::rtc::SSLIdentity* GetIdentityForTesting() const = 0;
46
47 // vIndex: 8
48 virtual void SetServerRole(::rtc::SSLRole) = 0;
49
50 // vIndex: 9
51 virtual void SetMode(::rtc::SSLMode) = 0;
52
53 // vIndex: 10
54 virtual void SetMaxProtocolVersion(::rtc::SSLProtocolVersion) = 0;
55
56 // vIndex: 11
57 virtual void SetInitialRetransmissionTimeout(int) = 0;
58
59 // vIndex: 12
60 virtual int StartSSL() = 0;
61
62 // vIndex: 13
63 virtual bool
64 SetPeerCertificateDigest(::std::string_view, uchar const*, uint64, ::rtc::SSLPeerCertificateDigestError*) = 0;
65
66 // vIndex: 14
67 virtual ::std::unique_ptr<::rtc::SSLCertChain> GetPeerSSLCertChain() const = 0;
68
69 // vIndex: 15
70 virtual bool GetSslCipherSuite(int* cipher_suite);
71
72 // vIndex: 16
73 virtual ::rtc::SSLProtocolVersion GetSslVersion() const = 0;
74
75 // vIndex: 17
76 virtual bool GetSslVersionBytes(int*) const = 0;
77
78 // vIndex: 18
79 virtual bool ExportKeyingMaterial(
80 ::std::string_view label,
81 uchar const* context,
82 uint64 context_len,
83 bool use_context,
84 uchar* result,
85 uint64 result_len
86 );
87
88 // vIndex: 19
89 virtual ushort GetPeerSignatureAlgorithm() const = 0;
90
91 // vIndex: 20
92 virtual bool SetDtlsSrtpCryptoSuites(::std::vector<int> const& crypto_suites);
93
94 // vIndex: 21
95 virtual bool GetDtlsSrtpCryptoSuite(int* crypto_suite);
96
97 // vIndex: 22
98 virtual bool IsTlsConnected() = 0;
99 // NOLINTEND
100
101public:
102 // static functions
103 // NOLINTBEGIN
104 MCNAPI static ::std::unique_ptr<::rtc::SSLStreamAdapter> Create(
105 ::std::unique_ptr<::rtc::StreamInterface> stream,
106 ::absl::AnyInvocable<void(::rtc::SSLHandshakeError)> handshake_error
107 );
108
109 MCNAPI static ::std::string SslCipherSuiteToName(int cipher_suite);
110 // NOLINTEND
111
112public:
113 // destructor thunk
114 // NOLINTBEGIN
115 MCNAPI void $dtor();
116 // NOLINTEND
117
118public:
119 // virtual function thunks
120 // NOLINTBEGIN
121 MCNAPI bool $GetSslCipherSuite(int* cipher_suite);
122
124 ::std::string_view label,
125 uchar const* context,
126 uint64 context_len,
127 bool use_context,
128 uchar* result,
129 uint64 result_len
130 );
131
132 MCNAPI bool $SetDtlsSrtpCryptoSuites(::std::vector<int> const& crypto_suites);
133
134 MCNAPI bool $GetDtlsSrtpCryptoSuite(int* crypto_suite);
135 // NOLINTEND
136
137public:
138 // vftables
139 // NOLINTBEGIN
140 MCNAPI static void** $vftable();
141 // NOLINTEND
142};
143
144} // namespace rtc
Definition AnyInvocable.h:8
Definition SSLStreamAdapter.h:22
MCAPI bool $GetDtlsSrtpCryptoSuite(int *crypto_suite)
MCAPI bool $SetDtlsSrtpCryptoSuites(::std::vector< int > const &crypto_suites)
MCAPI bool $ExportKeyingMaterial(::std::string_view label, uchar const *context, uint64 context_len, bool use_context, uchar *result, uint64 result_len)
static MCAPI ::std::unique_ptr<::rtc::SSLStreamAdapter > Create(::std::unique_ptr<::rtc::StreamInterface > stream, ::absl::AnyInvocable< void(::rtc::SSLHandshakeError)> handshake_error)
static MCAPI void ** $vftable()
MCAPI bool $GetSslCipherSuite(int *cipher_suite)
static MCAPI ::std::string SslCipherSuiteToName(int cipher_suite)
Definition StreamInterface.h:11
Definition context.h:5
Definition Alias.h:14