LeviLamina
Loading...
Searching...
No Matches
DtlsTransport.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/external/cricket/DtlsTransportInternal.h"
7#include "mc/external/rtc/SSLHandshakeError.h"
8#include "mc/external/rtc/SSLProtocolVersion.h"
9#include "mc/external/rtc/SSLRole.h"
10#include "mc/external/rtc/Socket.h"
11#include "mc/external/webrtc/DtlsTransportState.h"
12#include "mc/external/webrtc/scoped_refptr.h"
13
14// auto generated forward declare list
15// clang-format off
16namespace cricket { class IceTransportInternal; }
17namespace rtc { class PacketTransportInternal; }
18namespace rtc { class RTCCertificate; }
19namespace rtc { class ReceivedPacket; }
20namespace rtc { class SSLCertChain; }
21namespace rtc { class StreamInterface; }
22namespace rtc { struct NetworkRoute; }
23namespace rtc { struct PacketOptions; }
24namespace rtc { struct SentPacket; }
25namespace webrtc { class RTCError; }
26namespace webrtc { class RtcEventLog; }
27namespace webrtc { struct CryptoOptions; }
28// clang-format on
29
30namespace cricket {
31
33public:
34 // member variables
35 // NOLINTBEGIN
53 // NOLINTEND
54
55public:
56 // prevent constructor by default
57 DtlsTransport& operator=(DtlsTransport const&);
60
61public:
62 // virtual functions
63 // NOLINTBEGIN
64 // vIndex: 0
65 virtual ~DtlsTransport() /*override*/;
66
67 // vIndex: 9
68 virtual ::webrtc::DtlsTransportState dtls_state() const /*override*/;
69
70 // vIndex: 1
71 virtual ::std::string const& transport_name() const /*override*/;
72
73 // vIndex: 10
74 virtual int component() const /*override*/;
75
76 // vIndex: 11
77 virtual bool IsDtlsActive() const /*override*/;
78
79 // vIndex: 19
80 virtual bool SetLocalCertificate(::webrtc::scoped_refptr<::rtc::RTCCertificate> const& certificate) /*override*/;
81
82 // vIndex: 18
83 virtual ::webrtc::scoped_refptr<::rtc::RTCCertificate> GetLocalCertificate() const /*override*/;
84
85 // vIndex: 22
86 virtual bool
87 SetRemoteFingerprint(::std::string_view digest_alg, uchar const* digest, uint64 digest_len) /*override*/;
88
89 // vIndex: 23
90 virtual ::webrtc::RTCError SetRemoteParameters(
91 ::std::string_view digest_alg,
92 uchar const* digest,
93 uint64 digest_len,
94 ::std::optional<::rtc::SSLRole> role
95 ) /*override*/;
96
97 // vIndex: 4
98 virtual int SendPacket(char const* data, uint64 size, ::rtc::PacketOptions const& options, int flags) /*override*/;
99
100 // vIndex: 6
101 virtual bool GetOption(::rtc::Socket::Option opt, int* value) /*override*/;
102
103 // vIndex: 14
104 virtual bool GetSslVersionBytes(int* version) const /*override*/;
105
106 // vIndex: 15
107 virtual bool GetSrtpCryptoSuite(int* cipher) /*override*/;
108
109 // vIndex: 17
110 virtual ushort GetSslPeerSignatureAlgorithm() const /*override*/;
111
112 // vIndex: 12
113 virtual bool GetDtlsRole(::rtc::SSLRole* role) const /*override*/;
114
115 // vIndex: 13
116 virtual bool SetDtlsRole(::rtc::SSLRole role) /*override*/;
117
118 // vIndex: 16
119 virtual bool GetSslCipherSuite(int* cipher_suite) /*override*/;
120
121 // vIndex: 20
122 virtual ::std::unique_ptr<::rtc::SSLCertChain> GetRemoteSSLCertChain() const /*override*/;
123
124 // vIndex: 21
125 virtual bool ExportKeyingMaterial(
126 ::std::string_view label,
127 uchar const* context,
128 uint64 context_len,
129 bool use_context,
130 uchar* result,
131 uint64 result_len
132 ) /*override*/;
133
134 // vIndex: 24
135 virtual ::cricket::IceTransportInternal* ice_transport() /*override*/;
136
137 // vIndex: 3
138 virtual bool receiving() const /*override*/;
139
140 // vIndex: 2
141 virtual bool writable() const /*override*/;
142
143 // vIndex: 7
144 virtual int GetError() /*override*/;
145
146 // vIndex: 8
147 virtual ::std::optional<::rtc::NetworkRoute> network_route() const /*override*/;
148
149 // vIndex: 5
150 virtual int SetOption(::rtc::Socket::Option opt, int value) /*override*/;
151 // NOLINTEND
152
153public:
154 // member functions
155 // NOLINTBEGIN
157
159
161 ::cricket::IceTransportInternal* ice_transport,
162 ::webrtc::CryptoOptions const& crypto_options,
163 ::webrtc::RtcEventLog* event_log,
164 ::rtc::SSLProtocolVersion max_version
165 );
166
168
169 MCNAPI void MaybeStartDtls();
170
171 MCNAPI void OnDtlsEvent(::rtc::StreamInterface* dtls, int sig, int err);
172
173 MCNAPI void OnDtlsHandshakeError(::rtc::SSLHandshakeError error);
174
175 MCNAPI void OnNetworkRouteChanged(::std::optional<::rtc::NetworkRoute> network_route);
176
178
180
182
183 MCNAPI void OnSentPacket(::rtc::PacketTransportInternal* transport, ::rtc::SentPacket const& sent_packet);
184
186
187 MCNAPI bool SetupDtls();
188
189 MCNAPI ::std::string ToString() const;
190
191 MCNAPI void set_dtls_state(::webrtc::DtlsTransportState state);
192
193 MCNAPI void set_receiving(bool receiving);
194
195 MCNAPI void set_writable(bool writable);
196 // NOLINTEND
197
198public:
199 // constructor thunks
200 // NOLINTBEGIN
201 MCNAPI void* $ctor(
202 ::cricket::IceTransportInternal* ice_transport,
203 ::webrtc::CryptoOptions const& crypto_options,
204 ::webrtc::RtcEventLog* event_log,
205 ::rtc::SSLProtocolVersion max_version
206 );
207 // NOLINTEND
208
209public:
210 // destructor thunk
211 // NOLINTBEGIN
212 MCNAPI void $dtor();
213 // NOLINTEND
214
215public:
216 // virtual function thunks
217 // NOLINTBEGIN
218 MCNAPI ::webrtc::DtlsTransportState $dtls_state() const;
219
220 MCNAPI ::std::string const& $transport_name() const;
221
222 MCNAPI int $component() const;
223
224 MCNAPI bool $IsDtlsActive() const;
225
227
228 MCNAPI ::webrtc::scoped_refptr<::rtc::RTCCertificate> $GetLocalCertificate() const;
229
230 MCNAPI bool $SetRemoteFingerprint(::std::string_view digest_alg, uchar const* digest, uint64 digest_len);
231
232 MCNAPI ::webrtc::RTCError $SetRemoteParameters(
233 ::std::string_view digest_alg,
234 uchar const* digest,
235 uint64 digest_len,
236 ::std::optional<::rtc::SSLRole> role
237 );
238
239 MCNAPI int $SendPacket(char const* data, uint64 size, ::rtc::PacketOptions const& options, int flags);
240
241 MCNAPI bool $GetOption(::rtc::Socket::Option opt, int* value);
242
243 MCNAPI bool $GetSslVersionBytes(int* version) const;
244
245 MCNAPI bool $GetSrtpCryptoSuite(int* cipher);
246
247 MCNAPI ushort $GetSslPeerSignatureAlgorithm() const;
248
249 MCNAPI bool $GetDtlsRole(::rtc::SSLRole* role) const;
250
251 MCNAPI bool $SetDtlsRole(::rtc::SSLRole role);
252
253 MCNAPI bool $GetSslCipherSuite(int* cipher_suite);
254
255 MCNAPI ::std::unique_ptr<::rtc::SSLCertChain> $GetRemoteSSLCertChain() const;
256
258 ::std::string_view label,
259 uchar const* context,
260 uint64 context_len,
261 bool use_context,
262 uchar* result,
263 uint64 result_len
264 );
265
266 MCNAPI ::cricket::IceTransportInternal* $ice_transport();
267
268 MCNAPI bool $receiving() const;
269
270 MCNAPI bool $writable() const;
271
272 MCNAPI int $GetError();
273
274 MCNAPI ::std::optional<::rtc::NetworkRoute> $network_route() const;
275
276 MCNAPI int $SetOption(::rtc::Socket::Option opt, int value);
277 // NOLINTEND
278
279public:
280 // vftables
281 // NOLINTBEGIN
282 MCNAPI static void** $vftable();
283 // NOLINTEND
284};
285
286} // namespace cricket
Definition DtlsTransportInternal.h:21
Definition DtlsTransport.h:32
MCAPI void OnReceivingState(::rtc::PacketTransportInternal *transport)
MCAPI::webrtc::DtlsTransportState $dtls_state() const
MCAPI bool SetupDtls()
static MCAPI void ** $vftable()
MCAPI int $component() const
MCAPI bool $GetDtlsRole(::rtc::SSLRole *role) const
MCAPI ushort $GetSslPeerSignatureAlgorithm() const
MCAPI bool $IsDtlsActive() const
MCAPI void OnReadyToSend(::rtc::PacketTransportInternal *transport)
MCAPI bool $GetSrtpCryptoSuite(int *cipher)
MCAPI bool $writable() const
MCAPI int $SendPacket(char const *data, uint64 size, ::rtc::PacketOptions const &options, int flags)
MCAPI::webrtc::RTCError $SetRemoteParameters(::std::string_view digest_alg, uchar const *digest, uint64 digest_len, ::std::optional<::rtc::SSLRole > role)
MCAPI void ConfigureHandshakeTimeout()
MCAPI DtlsTransport(::cricket::IceTransportInternal *ice_transport, ::webrtc::CryptoOptions const &crypto_options, ::webrtc::RtcEventLog *event_log, ::rtc::SSLProtocolVersion max_version)
MCAPI::std::string const & $transport_name() const
MCAPI void OnNetworkRouteChanged(::std::optional<::rtc::NetworkRoute > network_route)
MCAPI void OnReadPacket(::rtc::PacketTransportInternal *transport, ::rtc::ReceivedPacket const &packet)
MCAPI bool $GetSslVersionBytes(int *version) const
MCAPI void set_writable(bool writable)
MCAPI void OnDtlsEvent(::rtc::StreamInterface *dtls, int sig, int err)
MCAPI void OnDtlsHandshakeError(::rtc::SSLHandshakeError error)
MCAPI int $SetOption(::rtc::Socket::Option opt, int value)
MCAPI bool HandleDtlsPacket(::rtc::ArrayView< uchar const > payload)
MCAPI bool $GetSslCipherSuite(int *cipher_suite)
MCAPI bool $SetLocalCertificate(::webrtc::scoped_refptr<::rtc::RTCCertificate > const &certificate)
MCAPI bool $ExportKeyingMaterial(::std::string_view label, uchar const *context, uint64 context_len, bool use_context, uchar *result, uint64 result_len)
MCAPI ::webrtc::scoped_refptr<::rtc::RTCCertificate > $GetLocalCertificate() const
MCAPI void set_receiving(bool receiving)
MCAPI bool $SetDtlsRole(::rtc::SSLRole role)
MCAPI void OnWritableState(::rtc::PacketTransportInternal *transport)
MCAPI void MaybeStartDtls()
MCAPI::std::string ToString() const
MCAPI void * $ctor(::cricket::IceTransportInternal *ice_transport, ::webrtc::CryptoOptions const &crypto_options, ::webrtc::RtcEventLog *event_log, ::rtc::SSLProtocolVersion max_version)
MCAPI void set_dtls_state(::webrtc::DtlsTransportState state)
MCAPI ::std::unique_ptr<::rtc::SSLCertChain > $GetRemoteSSLCertChain() const
MCAPI void OnSentPacket(::rtc::PacketTransportInternal *transport, ::rtc::SentPacket const &sent_packet)
MCAPI void ConnectToIceTransport()
MCAPI bool $SetRemoteFingerprint(::std::string_view digest_alg, uchar const *digest, uint64 digest_len)
MCAPI::cricket::IceTransportInternal * $ice_transport()
MCAPI bool $receiving() const
MCAPI ::std::optional<::rtc::NetworkRoute > $network_route() const
MCAPI bool $GetOption(::rtc::Socket::Option opt, int *value)
Definition IceTransportInternal.h:26
Definition _HeaderOutputPredefine.h:260
Definition PacketTransportInternal.h:20
Definition ReceivedPacket.h:16
Definition StreamInterface.h:11
Definition RtcEventLog.h:13
Definition scoped_refptr.h:8
Definition context.h:5
Definition Alias.h:14
Definition PacketOptions.h:10
Definition SentPacket.h:12
Definition CryptoOptions.h:7