[tor-commits] [snowflake/main] Refactor checkForStaleness to take time.Duration
cohosh at torproject.org
cohosh at torproject.org
Thu Jun 24 15:56:19 UTC 2021
commit 10b6075eaa90d65ebb4838b24ca8db4924e572ec
Author: Cecylia Bocovich <cohosh at torproject.org>
Date: Thu Jun 24 11:20:44 2021 -0400
Refactor checkForStaleness to take time.Duration
---
client/lib/lib_test.go | 4 ++--
client/lib/webrtc.go | 8 ++++----
2 files changed, 6 insertions(+), 6 deletions(-)
diff --git a/client/lib/lib_test.go b/client/lib/lib_test.go
index 1eef0c0..e0856a5 100644
--- a/client/lib/lib_test.go
+++ b/client/lib/lib_test.go
@@ -269,8 +269,8 @@ func TestWebRTCPeer(t *testing.T) {
Convey("WebRTCPeer", t, func(c C) {
p := &WebRTCPeer{closed: make(chan struct{})}
Convey("checks for staleness", func() {
- go p.checkForStaleness()
- <-time.After(2 * SnowflakeTimeout)
+ go p.checkForStaleness(time.Second)
+ <-time.After(2 * time.Second)
So(p.Closed(), ShouldEqual, true)
})
})
diff --git a/client/lib/webrtc.go b/client/lib/webrtc.go
index 234f53c..72a3d64 100644
--- a/client/lib/webrtc.go
+++ b/client/lib/webrtc.go
@@ -101,7 +101,7 @@ func (c *WebRTCPeer) Close() error {
// Prevent long-lived broken remotes.
// Should also update the DataChannel in underlying go-webrtc's to make Closes
// more immediate / responsive.
-func (c *WebRTCPeer) checkForStaleness() {
+func (c *WebRTCPeer) checkForStaleness(timeout time.Duration) {
c.mu.Lock()
c.lastReceive = time.Now()
c.mu.Unlock()
@@ -109,9 +109,9 @@ func (c *WebRTCPeer) checkForStaleness() {
c.mu.Lock()
lastReceive := c.lastReceive
c.mu.Unlock()
- if time.Since(lastReceive) > SnowflakeTimeout {
+ if time.Since(lastReceive) > timeout {
log.Printf("WebRTC: No messages received for %v -- closing stale connection.",
- SnowflakeTimeout)
+ timeout)
c.Close()
return
}
@@ -147,7 +147,7 @@ func (c *WebRTCPeer) connect(config *webrtc.Configuration, broker *BrokerChannel
return errors.New("timeout waiting for DataChannel.OnOpen")
}
- go c.checkForStaleness()
+ go c.checkForStaleness(SnowflakeTimeout)
return nil
}
More information about the tor-commits
mailing list