1. 04 Dec, 2020 1 commit
    • Cecylia Bocovich's avatar
      Create new smux session for each SOCKS connection · 114df695
      Cecylia Bocovich authored
      Each SOCKS connection has its own set of snowflakes and broker poll
      loop. Since the session manager was tied to a single set of snowflakes,
      this resulted in a bug where RedialPacketConn would sometimes try to
      pull snowflakes from a previously melted pool. The fix is to maintain
      separate smux sessions for each SOCKS connection, tied to its own
      snowflake pool.
  2. 15 Oct, 2020 1 commit
    • Cecylia Bocovich's avatar
      Add synchronization to prevent post-melt collects · 6baa3c4d
      Cecylia Bocovich authored
      This fixes a race condition in which snowflakes.End() is called while
      snowflakes.Collect() is in progress resulting in a write to a closed
      channel. We now wait for all in-progress collections to finish and add
      an extra check before proceeding with a collection.
  3. 27 Aug, 2020 2 commits
  4. 07 May, 2020 1 commit
  5. 05 May, 2020 1 commit
  6. 28 Apr, 2020 1 commit
    • David Fifield's avatar
      Wait for data channel OnOpen before returning from NewWebRTCPeer. · 047d3214
      David Fifield authored
      Now callers cannot call Write without there being a DataChannel to write
      to. This lets us remove the internal buffer and checks for transport ==
      Don't set internal fields like writePipe, transport, and pc to nil when
      closing; just close them and let them return errors if further calls are
      made on them.
      There's now a constant DataChannelTimeout that's separate from
      SnowflakeTimeout (the latter is what checkForStaleness uses). Now we can
      set DataChannel timeout to a lower value, to quickly dispose of
      unconnectable proxies, while still keeping the threshold for detecting
      the failure of a once-working proxy at 30 seconds.
  7. 23 Apr, 2020 4 commits
  8. 31 Jan, 2020 1 commit
  9. 30 Jan, 2020 1 commit
  10. 28 Jan, 2020 2 commits
  11. 11 Oct, 2019 1 commit
  12. 08 Oct, 2019 2 commits
  13. 21 Nov, 2018 1 commit