| Index: webrtc/p2p/base/port.h
|
| diff --git a/webrtc/p2p/base/port.h b/webrtc/p2p/base/port.h
|
| index 7c4468d2e6b7d112abf7a4b93f41b9645e5f86c3..709bd26b178c0b689148c9a8b05bd21e4bae4fc2 100644
|
| --- a/webrtc/p2p/base/port.h
|
| +++ b/webrtc/p2p/base/port.h
|
| @@ -108,6 +108,18 @@ struct ProtocolAddress {
|
| : address(a), proto(p), secure(sec) { }
|
| };
|
|
|
| +struct IceParameters {
|
| + std::string ufrag;
|
| + std::string pwd;
|
| + IceParameters(const std::string& ice_ufrag, const std::string& ice_pwd)
|
| + : ufrag(ice_ufrag), pwd(ice_pwd) {}
|
| +
|
| + bool operator==(const IceParameters& other) {
|
| + return ufrag == other.ufrag && pwd == other.pwd;
|
| + }
|
| + bool operator!=(const IceParameters& other) { return !(*this == other); }
|
| +};
|
| +
|
| typedef std::set<rtc::SocketAddress> ServerAddresses;
|
|
|
| // Represents a local communication mechanism that can be used to create
|
| @@ -574,6 +586,14 @@ class Connection : public CandidatePairInterface,
|
|
|
| uint32_t ComputeNetworkCost() const;
|
|
|
| + // Update the ICE password and/or generation of the remote candidate if a
|
| + // ufrag in |remote_ice_parameters| matches the candidate's ufrag, and the
|
| + // candidate's password and/or ufrag has not been set.
|
| + // |remote_ice_parameters| should be a list of known ICE parameters ordered
|
| + // by generation.
|
| + void MaybeSetRemoteIceCredentialsAndGeneration(
|
| + const std::vector<IceParameters>& remote_ice_parameters);
|
| +
|
| // Update the ICE password of the remote candidate if |ice_ufrag| matches
|
| // the candidate's ufrag, and the candidate's passwrod has not been set.
|
| void MaybeSetRemoteIceCredentials(const std::string& ice_ufrag,
|
|
|