// The subclass of SrtpTransport is used for DTLS-SRTP. When the DTLS handshake // is finished, it extracts the keying materials from DtlsTransport and // configures the SrtpSessions in the base class. class DtlsSrtpTransport : public SrtpTransport { public:
DtlsSrtpTransport(bool rtcp_mux_enabled, const FieldTrialsView& field_trials);
private: bool IsDtlsActive(); bool IsDtlsConnected(); bool IsDtlsWritable(); bool DtlsHandshakeCompleted(); void MaybeSetupDtlsSrtp(); void SetupRtpDtlsSrtp(); void SetupRtcpDtlsSrtp(); bool ExtractParams(DtlsTransportInternal* dtls_transport,
int* selected_crypto_suite,
ZeroOnFreeBuffer<uint8_t>* send_key,
ZeroOnFreeBuffer<uint8_t>* recv_key); // Updates the DTLS transport and manages the state subscription. void SetupDtlsTransport(DtlsTransportInternal* dtls_transport, bool is_rtcp);
// Checks if the transport changed, and if so, unsubscribes from the old one. // Returns true if the transport changed. bool MaybeUnsubscribe(DtlsTransportInternal* old_transport,
DtlsTransportInternal* new_transport);
Die Informationen auf dieser Webseite wurden
nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit,
noch Qualität der bereit gestellten Informationen zugesichert.
Bemerkung:
Die farbliche Syntaxdarstellung und die Messung sind noch experimentell.