Index: webrtc/p2p/base/turnport.cc |
diff --git a/webrtc/p2p/base/turnport.cc b/webrtc/p2p/base/turnport.cc |
index 5ed93dd1d84a05b445aeaeeeed47b3ab26172c3d..1643aff186a0ba4068dbf933befd2c43a4aa3894 100644 |
--- a/webrtc/p2p/base/turnport.cc |
+++ b/webrtc/p2p/base/turnport.cc |
@@ -433,6 +433,7 @@ void TurnPort::OnAllocateMismatch() { |
} |
socket_ = NULL; |
+ ResetNonce(); |
PrepareAddress(); |
++allocate_mismatch_retries_; |
} |
@@ -764,6 +765,7 @@ void TurnPort::OnMessage(rtc::Message* message) { |
ASSERT(!SharedSocket()); |
delete socket_; |
socket_ = NULL; |
+ ResetNonce(); |
pthatcher1
2016/01/19 01:48:38
It looks like we don't have a unit test for this.
honghaiz3
2016/01/20 00:54:38
I removed this change because
The alternate server
|
PrepareAddress(); |
} |
break; |
@@ -927,6 +929,12 @@ bool TurnPort::UpdateNonce(StunMessage* response) { |
return true; |
} |
+void TurnPort::ResetNonce() { |
+ hash_.clear(); |
+ nonce_.clear(); |
+ realm_.clear(); |
+} |
+ |
static bool MatchesIP(TurnEntry* e, rtc::IPAddress ipaddr) { |
return e->address().ipaddr() == ipaddr; |
} |