[Author Prev][Author Next][Thread Prev][Thread Next][Author Index][Thread Index]
Re: [tor-bugs] #28942 [Circumvention/Snowflake]: Evaluate pion WebRTC
#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 dcf):
Replying to [comment:40 dcf]:
> I'm going to try brute-force packaging all the dependency projects.
Using the [[attachment:gomodtorbm|attached script]], I generated projects
for pion-webrtc and all its dependencies. The result is in a branch.
* [https://gitweb.torproject.org/user/dcf/tor-browser-build.git/log/?h
=pion-webrtc&id=0f31d1bcfd71bba9ef27fab3b5a6d3231c60213d pion-webrtc]
The script doesn't do everything by itself. Its raw output, basically a
transcription of `go mod graph`, is
[https://gitweb.torproject.org/user/dcf/tor-browser-build.git/commit/?h
=pion-webrtc&id=bc6782739b8e69b5075d8942583c75f718733327 here]. I added
fixup commits [https://gitweb.torproject.org/user/dcf/tor-browser-
build.git/commit/?h=pion-
webrtc&id=8502c41aa2b1342282d78ef23652b8b034aeed8f here] (adding missing
dependencies, enumerating multiple modules within one repo, removing
duplicates) and [https://gitweb.torproject.org/user/dcf/tor-browser-
build.git/commit/?h=pion-
webrtc&id=080494d79f024371c444bb7fb641df4ce4bc41ef here] (expanding
version numbers into hashes).
I discovered by accident that one of the dependencies, golang.org/x/sync,
was not actually necessary, so I removed it. It's possible that there are
more than can be removed. I'm not sure if this is a maintainer neglecting
to run `go mod tidy` to remove an unused dependency, or what.
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 did a `make testbuild` using the pion-webrtc branch at
0f31d1bcfd71bba9ef27fab3b5a6d3231c60213d and put the outputs, including
checksums, here:
https://people.torproject.org/~dcf/pt-bundle/tor-browser-pion-
webrtc-20190829-0f31d1bcfd/
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).
{{{
2019/08/29 01:43:47 Rendezvous using Broker at: https://snowflake-
broker.bamsoftware.com/
2019/08/29 01:43:47 WebRTC: Collecting a new Snowflake. Currently at [0/3]
2019/08/29 01:43:47 snowflake-UQ9COqlX3fZ5JMmA connecting...
2019/08/29 01:43:47 Started SOCKS listener.
2019/08/29 01:43:47 SOCKS listening...
2019/08/29 01:43:47 WebRTC: PeerConnection created.
2019/08/29 01:43:47 WebRTC: DataChannel created.
2019/08/29 01:43:47 WebRTC: Created offer
2019/08/29 01:43:47 WebRTC: Set local description
2019/08/29 01:43:48 SOCKS accepted: {[scrubbed] map[]}
}}}
--
Ticket URL: <https://trac.torproject.org/projects/tor/ticket/28942#comment:43>
Tor Bug Tracker & Wiki <https://trac.torproject.org/>
The Tor Project: anonymity online
_______________________________________________
tor-bugs mailing list
tor-bugs@xxxxxxxxxxxxxxxxxxxx
https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-bugs