Index: webrtc/api/peerconnection.h |
diff --git a/webrtc/api/peerconnection.h b/webrtc/api/peerconnection.h |
index 5269e3ae498ed3dfa2210da13ba40139ec8170af..82dc8edfe627b7abe24d380c2105abb194eebc6d 100644 |
--- a/webrtc/api/peerconnection.h |
+++ b/webrtc/api/peerconnection.h |
@@ -54,10 +54,12 @@ bool ParseConstraintsForAnswer(const MediaConstraintsInterface* constraints, |
cricket::MediaSessionOptions* session_options); |
// Parses the URLs for each server in |servers| to build |stun_servers| and |
-// |turn_servers|. |
-bool ParseIceServers(const PeerConnectionInterface::IceServers& servers, |
- cricket::ServerAddresses* stun_servers, |
- std::vector<cricket::RelayServerConfig>* turn_servers); |
+// |turn_servers|. Can return SYNTAX_ERROR if the URL is malformed, or |
+// INVALID_PARAMETER if a TURN server is missing |username| or |password|. |
+RTCErrorType ParseIceServers( |
+ const PeerConnectionInterface::IceServers& servers, |
+ cricket::ServerAddresses* stun_servers, |
+ std::vector<cricket::RelayServerConfig>* turn_servers); |
// PeerConnection implements the PeerConnectionInterface interface. |
// It uses WebRtcSession to implement the PeerConnection functionality. |
@@ -137,7 +139,12 @@ class PeerConnection : public PeerConnectionInterface, |
SessionDescriptionInterface* desc) override; |
PeerConnectionInterface::RTCConfiguration GetConfiguration() override; |
bool SetConfiguration( |
- const PeerConnectionInterface::RTCConfiguration& configuration) override; |
+ const PeerConnectionInterface::RTCConfiguration& configuration, |
+ RTCError* error) override; |
+ bool SetConfiguration( |
+ const PeerConnectionInterface::RTCConfiguration& configuration) override { |
+ return SetConfiguration(configuration, nullptr); |
+ } |
bool AddIceCandidate(const IceCandidateInterface* candidate) override; |
bool RemoveIceCandidates( |
const std::vector<cricket::Candidate>& candidates) override; |
@@ -373,9 +380,14 @@ class PeerConnection : public PeerConnectionInterface, |
// Called when first configuring the port allocator. |
bool InitializePortAllocator_n(const RTCConfiguration& configuration); |
- // Called when SetConfiguration is called. Only a subset of the configuration |
- // is applied. |
- bool ReconfigurePortAllocator_n(const RTCConfiguration& configuration); |
+ // Called when SetConfiguration is called to apply the supported subset |
+ // of the configuration on the network thread. |
+ bool ReconfigurePortAllocator_n( |
+ const cricket::ServerAddresses& stun_servers, |
+ const std::vector<cricket::RelayServerConfig>& turn_servers, |
+ IceTransportsType type, |
+ int candidate_pool_size, |
+ bool prune_turn_ports); |
// Starts recording an Rtc EventLog using the supplied platform file. |
// This function should only be called from the worker thread. |