Index: webrtc/p2p/base/transport.h |
diff --git a/webrtc/p2p/base/transport.h b/webrtc/p2p/base/transport.h |
index 9dc5a402161898159a3870baeb0b942111d75d78..ced0d2ea14d8ed483c52b854b3ba683b79c9fed0 100644 |
--- a/webrtc/p2p/base/transport.h |
+++ b/webrtc/p2p/base/transport.h |
@@ -142,6 +142,7 @@ class Transport : public rtc::MessageHandler, |
Transport(rtc::Thread* signaling_thread, |
rtc::Thread* worker_thread, |
const std::string& content_name, |
+ const std::string& type, |
PortAllocator* allocator); |
virtual ~Transport(); |
@@ -152,6 +153,8 @@ class Transport : public rtc::MessageHandler, |
// Returns the content_name of this transport. |
const std::string& content_name() const { return content_name_; } |
+ // Returns the type of this transport. |
+ const std::string& type() const { return type_; } |
// Returns the port allocator object for this transport. |
PortAllocator* port_allocator() { return allocator_; } |
@@ -210,6 +213,8 @@ class Transport : public rtc::MessageHandler, |
// Get a copy of the remote certificate in use by the specified channel. |
bool GetRemoteSSLCertificate(rtc::SSLCertificate** cert); |
+ TransportProtocol protocol() const { return protocol_; } |
+ |
// Create, destroy, and lookup the channels of this type by their components. |
TransportChannelImpl* CreateChannel(int component); |
// Note: GetChannel may lead to race conditions, since the mutex is not held |
@@ -321,7 +326,7 @@ class Transport : public rtc::MessageHandler, |
std::string* error_desc); |
// Negotiates the transport parameters based on the current local and remote |
- // transport description, such as the ICE role to use, and whether DTLS |
+ // transport description, such at the version of ICE to use, and whether DTLS |
// should be activated. |
// Derived classes can negotiate their specific parameters here, but must call |
// the base as well. |
@@ -447,6 +452,7 @@ class Transport : public rtc::MessageHandler, |
rtc::Thread* const signaling_thread_; |
rtc::Thread* const worker_thread_; |
const std::string content_name_; |
+ const std::string type_; |
PortAllocator* const allocator_; |
bool destroyed_; |
TransportState readable_; |
@@ -456,6 +462,7 @@ class Transport : public rtc::MessageHandler, |
bool connect_requested_; |
IceRole ice_role_; |
uint64 tiebreaker_; |
+ TransportProtocol protocol_; |
IceMode remote_ice_mode_; |
int channel_receiving_timeout_; |
rtc::scoped_ptr<TransportDescription> local_description_; |
@@ -472,6 +479,9 @@ class Transport : public rtc::MessageHandler, |
DISALLOW_COPY_AND_ASSIGN(Transport); |
}; |
+// Extract a TransportProtocol from a TransportDescription. |
+TransportProtocol TransportProtocolFromDescription( |
+ const TransportDescription* desc); |
} // namespace cricket |