3#include "mc/_HeaderOutputPredefine.h"
6#include "mc/external/cricket/DtlsTransportInternal.h"
7#include "mc/external/rtc/SSLProtocolVersion.h"
8#include "mc/external/rtc/SSLRole.h"
9#include "mc/external/rtc/Socket.h"
10#include "mc/external/webrtc/DtlsTransportState.h"
11#include "mc/external/webrtc/scoped_refptr.h"
56 DtlsTransport& operator=(DtlsTransport
const&);
57 DtlsTransport(DtlsTransport
const&);
63 virtual ~DtlsTransport() =
default;
65 virtual ::webrtc::DtlsTransportState dtls_state()
const ;
67 virtual ::std::string
const& transport_name()
const ;
69 virtual int component()
const ;
71 virtual bool IsDtlsActive()
const ;
75 virtual ::webrtc::scoped_refptr<::rtc::RTCCertificate> GetLocalCertificate()
const ;
78 SetRemoteFingerprint(::std::string_view digest_alg, uchar
const* digest, uint64 digest_len) ;
80 virtual ::webrtc::RTCError SetRemoteParameters(
81 ::std::string_view digest_alg,
84 ::std::optional<::rtc::SSLRole> role
87 virtual int SendPacket(
char const* data, uint64 size,
::rtc::PacketOptions const& options,
int flags) ;
89 virtual bool GetOption(::rtc::Socket::Option opt,
int* value) ;
91 virtual bool GetSslVersionBytes(
int* version)
const ;
93 virtual bool GetSrtpCryptoSuite(
int* cipher) ;
95 virtual ushort GetSslPeerSignatureAlgorithm()
const ;
97 virtual bool GetDtlsRole(::rtc::SSLRole* role)
const ;
99 virtual bool SetDtlsRole(::rtc::SSLRole role) ;
101 virtual bool GetSslCipherSuite(
int* cipher) ;
103 virtual ::std::unique_ptr<::rtc::SSLCertChain> GetRemoteSSLCertChain()
const ;
105 virtual bool ExportKeyingMaterial(
106 ::std::string_view label,
114 virtual ::cricket::IceTransportInternal* ice_transport() ;
116 virtual bool receiving()
const ;
118 virtual bool writable()
const ;
120 virtual int GetError() ;
122 virtual ::std::optional<::rtc::NetworkRoute> network_route()
const ;
124 virtual int SetOption(::rtc::Socket::Option opt,
int value) ;
136 ::rtc::SSLProtocolVersion max_version
173 ::rtc::SSLProtocolVersion max_version
195 ::std::string_view digest_alg,
198 ::std::optional<::rtc::SSLRole> role
203 MCNAPI
bool $GetOption(::rtc::Socket::Option opt,
int* value);
220 ::std::string_view label,
Definition DtlsTransportInternal.h:21
MCAPI void OnReceivingState(::rtc::PacketTransportInternal *transport)
MCAPI::webrtc::DtlsTransportState $dtls_state() const
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 bool $GetSslCipherSuite(int *cipher)
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 int $SetOption(::rtc::Socket::Option opt, int value)
MCAPI bool HandleDtlsPacket(::rtc::ArrayView< uchar const > payload)
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 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 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:310
Definition PacketTransportInternal.h:20
Definition RTCCertificate.h:18
Definition ReceivedPacket.h:16
Definition SSLCertChain.h:13
Definition StreamInterface.h:11
Definition RtcEventLog.h:13
Definition scoped_refptr.h:8
Definition NetworkRoute.h:7
Definition PacketOptions.h:10
Definition SentPacket.h:12
Definition CryptoOptions.h:7