Remove usage of sigslot and replace with a function pointer.

- Deleted unused sigslot.

Bug: webrtc:11943
Change-Id: I7863dd04e3e63fcba0eabd0dd752ab339614814e
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/207840
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Reviewed-by: Harald Alvestrand <hta@webrtc.org>
Commit-Queue: Lahiru Ginnaliya Gamathige <glahiru@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#33327}
This commit is contained in:
Lahiru Ginnaliya Gamathige 2021-02-17 00:43:21 -08:00 committed by Commit Bot
parent 5fec23cdb5
commit c32f00ea9d
3 changed files with 15 additions and 7 deletions

View file

@ -166,7 +166,6 @@ void DtlsSrtpTransport::SetupRtpDtlsSrtp() {
static_cast<int>(send_key.size()), send_extension_ids, static_cast<int>(send_key.size()), send_extension_ids,
selected_crypto_suite, &recv_key[0], selected_crypto_suite, &recv_key[0],
static_cast<int>(recv_key.size()), recv_extension_ids)) { static_cast<int>(recv_key.size()), recv_extension_ids)) {
SignalDtlsSrtpSetupFailure(this, /*rtcp=*/false);
RTC_LOG(LS_WARNING) << "DTLS-SRTP key installation for RTP failed"; RTC_LOG(LS_WARNING) << "DTLS-SRTP key installation for RTP failed";
} }
} }
@ -198,7 +197,6 @@ void DtlsSrtpTransport::SetupRtcpDtlsSrtp() {
selected_crypto_suite, &rtcp_recv_key[0], selected_crypto_suite, &rtcp_recv_key[0],
static_cast<int>(rtcp_recv_key.size()), static_cast<int>(rtcp_recv_key.size()),
recv_extension_ids)) { recv_extension_ids)) {
SignalDtlsSrtpSetupFailure(this, /*rtcp=*/true);
RTC_LOG(LS_WARNING) << "DTLS-SRTP key installation for RTCP failed"; RTC_LOG(LS_WARNING) << "DTLS-SRTP key installation for RTCP failed";
} }
} }
@ -306,7 +304,9 @@ void DtlsSrtpTransport::OnDtlsState(cricket::DtlsTransportInternal* transport,
RTC_DCHECK(transport == rtp_dtls_transport_ || RTC_DCHECK(transport == rtp_dtls_transport_ ||
transport == rtcp_dtls_transport_); transport == rtcp_dtls_transport_);
SignalDtlsStateChange(); if (on_dtls_state_change_) {
on_dtls_state_change_();
}
if (state != cricket::DTLS_TRANSPORT_CONNECTED) { if (state != cricket::DTLS_TRANSPORT_CONNECTED) {
ResetParams(); ResetParams();
@ -321,4 +321,8 @@ void DtlsSrtpTransport::OnWritableState(
MaybeSetupDtlsSrtp(); MaybeSetupDtlsSrtp();
} }
void DtlsSrtpTransport::SetOnDtlsStateChange(
std::function<void(void)> callback) {
on_dtls_state_change_ = std::move(callback);
}
} // namespace webrtc } // namespace webrtc

View file

@ -46,8 +46,7 @@ class DtlsSrtpTransport : public SrtpTransport {
void UpdateRecvEncryptedHeaderExtensionIds( void UpdateRecvEncryptedHeaderExtensionIds(
const std::vector<int>& recv_extension_ids); const std::vector<int>& recv_extension_ids);
sigslot::signal<DtlsSrtpTransport*, bool> SignalDtlsSrtpSetupFailure; void SetOnDtlsStateChange(std::function<void(void)> callback);
sigslot::signal<> SignalDtlsStateChange;
RTCError SetSrtpSendKey(const cricket::CryptoParams& params) override { RTCError SetSrtpSendKey(const cricket::CryptoParams& params) override {
return RTCError(RTCErrorType::UNSUPPORTED_OPERATION, return RTCError(RTCErrorType::UNSUPPORTED_OPERATION,
@ -97,6 +96,7 @@ class DtlsSrtpTransport : public SrtpTransport {
absl::optional<std::vector<int>> recv_extension_ids_; absl::optional<std::vector<int>> recv_extension_ids_;
bool active_reset_srtp_params_ = false; bool active_reset_srtp_params_ = false;
std::function<void(void)> on_dtls_state_change_;
}; };
} // namespace webrtc } // namespace webrtc

View file

@ -506,8 +506,12 @@ JsepTransportController::CreateDtlsSrtpTransport(
dtls_srtp_transport->SetDtlsTransports(rtp_dtls_transport, dtls_srtp_transport->SetDtlsTransports(rtp_dtls_transport,
rtcp_dtls_transport); rtcp_dtls_transport);
dtls_srtp_transport->SetActiveResetSrtpParams(active_reset_srtp_params_); dtls_srtp_transport->SetActiveResetSrtpParams(active_reset_srtp_params_);
dtls_srtp_transport->SignalDtlsStateChange.connect( // Capturing this in the callback because JsepTransportController will always
this, &JsepTransportController::UpdateAggregateStates_n); // outlive the DtlsSrtpTransport.
dtls_srtp_transport->SetOnDtlsStateChange([this]() {
RTC_DCHECK_RUN_ON(this->network_thread_);
this->UpdateAggregateStates_n();
});
return dtls_srtp_transport; return dtls_srtp_transport;
} }