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