diff --git a/client/snowflake.go b/client/snowflake.go index 8f4a6bd..8a03148 100644 --- a/client/snowflake.go +++ b/client/snowflake.go @@ -21,7 +21,7 @@ import ( var ptInfo pt.ClientInfo const ( - ReconnectTimeout = 5 + ReconnectTimeout = 10 SnowflakeCapacity = 3 ) @@ -109,7 +109,6 @@ func handler(conn *pt.SocksConn) error { conn.Reject() return errors.New("handler: Received invalid Snowflake") } - defer remote.Close() defer conn.Close() log.Println("handler: Snowflake assigned.") diff --git a/client/webrtc.go b/client/webrtc.go index 2b907ad..5b30e95 100644 --- a/client/webrtc.go +++ b/client/webrtc.go @@ -291,13 +291,14 @@ func (c *webRTCConn) Reset() { c.reset <- struct{}{} log.Println("WebRTC resetting...") }() + c.Close() } func (c *webRTCConn) cleanup() { if nil != c.snowflake { s := c.snowflake log.Printf("WebRTC: closing DataChannel") - // Setting snowflak to nil *before* Close indicates to OnClose that it + // Setting snowflake to nil *before* Close indicates to OnClose that it // was locally triggered. c.snowflake = nil s.Close()