Index: talk/session/media/channel.h |
diff --git a/talk/session/media/channel.h b/talk/session/media/channel.h |
index 603115cee7f58a06a37cbaff94cd5cd56c1837c3..0ba2c453db3f1b30e794a1a716e71a0a645ec47f 100644 |
--- a/talk/session/media/channel.h |
+++ b/talk/session/media/channel.h |
@@ -100,7 +100,7 @@ class BaseChannel |
bool enabled() const { return enabled_; } |
// This function returns true if we are using SRTP. |
- bool secure() const { return srtp_filter_.IsActive(); } |
+ bool secure() const { return srtp_filter_->IsActive(); } |
// The following function returns true if we are using |
// DTLS-based keying. If you turned off SRTP later, however |
// you could have secure() == false and dtls_secure() == true. |
@@ -167,7 +167,7 @@ class BaseChannel |
int SetOption(SocketType type, rtc::Socket::Option o, int val) |
override; |
- SrtpFilter* srtp_filter() { return &srtp_filter_; } |
+ SrtpFilter* srtp_filter() { return srtp_filter_.get(); } |
protected: |
virtual MediaChannel* media_channel() const { return media_channel_; } |
@@ -213,6 +213,8 @@ class BaseChannel |
int flags); |
void OnReadyToSend(TransportChannel* channel); |
+ void OnDtlsSrtpSetup(TransportChannel* channel); |
+ |
bool PacketIsRtcp(const TransportChannel* channel, const char* data, |
size_t len); |
bool SendPacket(bool rtcp, |
@@ -232,6 +234,7 @@ class BaseChannel |
bool AddSendStream_w(const StreamParams& sp); |
bool RemoveSendStream_w(uint32_t ssrc); |
virtual bool ShouldSetupDtlsSrtp() const; |
+ bool IsUsingDtlsSrtp() const; |
// Do the DTLS key expansion and impose it on the SRTP/SRTCP filters. |
// |rtcp_channel| indicates whether to set up the RTP or RTCP filter. |
bool SetupDtlsSrtp(bool rtcp_channel); |
@@ -308,7 +311,7 @@ class BaseChannel |
std::vector<std::pair<rtc::Socket::Option, int> > socket_options_; |
TransportChannel* rtcp_transport_channel_; |
std::vector<std::pair<rtc::Socket::Option, int> > rtcp_socket_options_; |
- SrtpFilter srtp_filter_; |
+ rtc::scoped_ptr<SrtpFilter> srtp_filter_; |
RtcpMuxFilter rtcp_mux_filter_; |
BundleFilter bundle_filter_; |
rtc::scoped_ptr<ConnectionMonitor> connection_monitor_; |