34 SSLStreamAdapter& operator=(SSLStreamAdapter
const&);
35 SSLStreamAdapter(SSLStreamAdapter
const&);
41 virtual ~SSLStreamAdapter() ;
43 virtual void SetIdentity(::std::unique_ptr<::webrtc::SSLIdentity>
identity) = 0;
45 virtual ::webrtc::SSLIdentity* GetIdentityForTesting()
const = 0;
47 virtual void SetServerRole(::webrtc::SSLRole role) = 0;
49 virtual void SetMode(::webrtc::SSLMode mode) = 0;
51 virtual void SetMaxProtocolVersion(::webrtc::SSLProtocolVersion version) = 0;
53 virtual void SetInitialRetransmissionTimeout(
int timeout_ms) = 0;
55 virtual void SetMTU(
int mtu) = 0;
57 virtual int StartSSL() = 0;
59 virtual ::webrtc::SSLPeerCertificateDigestError
62 virtual bool SetPeerCertificateDigest(
63 ::std::string_view digest_alg,
64 uchar
const* digest_val,
66 ::webrtc::SSLPeerCertificateDigestError* error
69 virtual ::std::unique_ptr<::webrtc::SSLCertChain> GetPeerSSLCertChain()
const = 0;
71 virtual bool GetSslCipherSuite(
int* cipher_suite)
const = 0;
73 virtual ::std::optional<::std::string_view> GetTlsCipherSuiteName()
const = 0;
75 virtual ::webrtc::SSLProtocolVersion GetSslVersion()
const = 0;
77 virtual bool GetSslVersionBytes(
int* version)
const = 0;
81 virtual ushort GetPeerSignatureAlgorithm()
const = 0;
83 virtual bool SetDtlsSrtpCryptoSuites(::std::vector<int>
const& ciphers) = 0;
85 virtual bool GetDtlsSrtpCryptoSuite(
int* crypto_suite)
const = 0;
87 virtual bool IsTlsConnected() = 0;
89 virtual int GetRetransmissionCount()
const = 0;
91 virtual bool SetSslGroupIds(::std::vector<ushort>
const& groups) = 0;
93 virtual ushort GetSslGroupId()
const = 0;
99 MCNAPI static ::std::unique_ptr<::webrtc::SSLStreamAdapter>
Create(
100 ::std::unique_ptr<::webrtc::StreamInterface> stream,
105 MCNAPI static ::std::vector<ushort>
119 ::std::string_view digest_alg,
120 uchar
const* digest_val,
122 ::webrtc::SSLPeerCertificateDigestError* error
static MCAPI ::std::unique_ptr<::webrtc::SSLStreamAdapter > Create(::std::unique_ptr<::webrtc::StreamInterface > stream, ::absl::AnyInvocable< void(::webrtc::SSLHandshakeError)> handshake_error, ::webrtc::FieldTrialsView const *field_trials)