[tor-bugs] #28942 [Circumvention/Snowflake]: Evaluate pion WebRTC

Tor Bug Tracker & Wiki blackhole at torproject.org
Fri Aug 30 14:44:29 UTC 2019


#28942: Evaluate pion WebRTC
--------------------------------------------+------------------------------
 Reporter:  backkem                         |          Owner:  cohosh
     Type:  enhancement                     |         Status:  accepted
 Priority:  Medium                          |      Milestone:
Component:  Circumvention/Snowflake         |        Version:
 Severity:  Normal                          |     Resolution:
 Keywords:  anti-censorship-roadmap-august  |  Actual Points:
Parent ID:                                  |         Points:  5
 Reviewer:                                  |        Sponsor:
                                            |  Sponsor28-must
--------------------------------------------+------------------------------

Comment (by cohosh):

 Replying to [comment:44 cohosh]:
 > Replying to [comment:43 dcf]:
 > > Everything builds, and from the command line I can run `snowflake-
 client -h` and see that it produces output, but unfortunately it doesn't
 bootstrap for me. But then again, neither does
 [https://github.com/cohosh/snowflake/commit/3cc240625cad22db02eca7af41b139606c13147d
 3cc240625c] from cohosh's pion branch from comment:28. So whatever is
 going wrong for me, is possibly not related to the rbm build.
 > >
 > > This is what I see in the snowflake-client log. After this, there's no
 more output for at least several minutes (that's as long as I waited).
 >
 > Noting that I can reproduce this issue seemingly 100% of the time, I'll
 investigate whether it's due to recent changes to any of the pion
 libraries, since bootstrapping used to work

 Update on this: I tried building with pion/webrtc v2.0.23 (using pion/sctp
 v1.6.4 and otherwise sticking to the versions specified in `go.mod` for
 webrtc v2.0.23) and it bootstraps fully.

 There must have been breaking changes to the pion webrtc library added
 since. I can investigate them but I suggest for now that we use the pion
 dependencies we know work.

 > Replying to [comment:43 dcf]:
 >
 > Overall, my impression so far is that this is not the way we want to
 continue doing things. The problem I foresee is maintenance across
 upgrades: the pion-webrtc module upgrades ones of its dependencies, which
 causes a cascade of updated version requirements down the dependency tree.
 boklm's suggestion from comment:42 would prevent a proliferation of rbm
 projects, but we'll still want something to semi-automatically handle
 upgrades for us. We could of course use go itself--but that's a discussion
 for #28325.
 I think the easiest way to go forward here is to take boklm's suggestion
 in https://trac.torproject.org/projects/tor/ticket/28325#comment:5 and
 just package up the directory supplied by `go mod vendor`. I've attached a
 zip file of working dependencies in `vendor.zip` above.

--
Ticket URL: <https://trac.torproject.org/projects/tor/ticket/28942#comment:46>
Tor Bug Tracker & Wiki <https://trac.torproject.org/>
The Tor Project: anonymity online


More information about the tor-bugs mailing list