[tor-bugs] #28672 [Applications/Tor Browser]: Android reproducible build of Snowflake

Tor Bug Tracker & Wiki blackhole at torproject.org
Fri May 8 07:29:54 UTC 2020


#28672: Android reproducible build of Snowflake
-------------------------------------------------+-------------------------
 Reporter:  dcf                                  |          Owner:  cohosh
     Type:  project                              |         Status:
                                                 |  needs_revision
 Priority:  Medium                               |      Milestone:
Component:  Applications/Tor Browser             |        Version:
 Severity:  Normal                               |     Resolution:
 Keywords:  tbb-mobile, tbb-rbm,                 |  Actual Points:
  TorBrowserTeam202005, GeorgKoppen201904, ex-   |
  sponsor-19                                     |
Parent ID:  #30318                               |         Points:
 Reviewer:  gk                                   |        Sponsor:
                                                 |  Sponsor28-must
-------------------------------------------------+-------------------------
Changes (by gk):

 * keywords:
     tbb-mobile, tbb-rbm, TorBrowserTeam202005R, GeorgKoppen201904, ex-
     sponsor-19
     =>
     tbb-mobile, tbb-rbm, TorBrowserTeam202005, GeorgKoppen201904, ex-
     sponsor-19
 * status:  needs_review => needs_revision


Comment:

 Replying to [comment:40 cohosh]:
 > > So, it turns out that Pluto is actually not bundling snowflake at all.
 I guess you could just copy snowflake-client over in the for loop already
 dealing with obfs4proxy. I am not sure why we actually copy things over to
 all the different arch dirs given that we build per arch, but that's up
 for a different bug.
 >
 > I was going to ask what Pluto is and how it knows about obfs4. Does it
 need to build snowflake?

 Pluto is the [https://github.com/guardianproject/pluto Guardian Project's
 pluggable transport library] which is deprecated. We should redo at some
 point the whole tor-android-service/tor-onion-proxy-library parts which
 use Pluto but for now we just play along. :)

 > > Please squash the commits and rebase onto latest master, we are close
 with this ticket (modulo testing that things actually work) I think.
 Thanks.
 >
 > Here it is: https://gitweb.torproject.org/user/cohosh/tor-browser-
 build.git/log/?h=snowflake_android
 >
 > I started my own build of this rebased branch.

 Thanks. Let's just use one `for` loop maybe (see my previous comment),
 like so (untested):
 {{{
 # Extract obfs4proxy from TorBrowser/Tor/PluggableTransports/obfs4proxy
 tar --strip-components=4 -xf $rootdir/[% c('input_files_by_name/obfs4') %]
 # Extract snowflake from TorBrowser/Tor/PluggableTransports/snowflake
 tar --strip-components=4 -xf $rootdir/[%
 c('input_files_by_name/snowflake') %]

 # Overwrite the obfs4proxy binary provided by Pluto and add snowflake
 for d in external/pluto/bin/*; do
   cp obfs4proxy $d/
   cp snowflake-client $d/
 done

 rm obfs4proxy
 rm snowflake-client
 }}}
 ? I don't think we need two separate `for` loops for what we want to do.

 I'll try to come up with some patches for #30318 over the weekend (I copy
 and pasted things for the browser part already I believe), so we can
 actually test on mobile.

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


More information about the tor-bugs mailing list