[tor-bugs] #28672 [Circumvention/Snowflake]: Android reproducible build of Snowflake

Tor Bug Tracker & Wiki blackhole at torproject.org
Fri Jun 28 11:13:02 UTC 2019


#28672: Android reproducible build of Snowflake
-------------------------------------------------+-------------------------
 Reporter:  dcf                                  |          Owner:  (none)
     Type:  project                              |         Status:
                                                 |  needs_review
 Priority:  Medium                               |      Milestone:
Component:  Circumvention/Snowflake              |        Version:
 Severity:  Normal                               |     Resolution:
 Keywords:  tbb-mobile, tbb-rbm,                 |  Actual Points:
  GeorgKoppen201904, ex-sponsor-19,              |
  TorBrowserTeam201906R                          |
Parent ID:  #30318                               |         Points:
 Reviewer:                                       |        Sponsor:
                                                 |  Sponsor28-can
-------------------------------------------------+-------------------------
Changes (by boklm):

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


Comment:

 There is a new patch for review in branch `bug_28672_v7`:
 https://gitweb.torproject.org/user/boklm/tor-browser-
 build.git/commit/?h=bug_28672_v7&id=082b4fd8759ef9e88317940d77d091291d0363df

 This gomobile patch is fixing the issue with `/tmp/gomobile-work-
 XXXXXXXXX` paths:
 https://gitweb.torproject.org/user/boklm/tor-browser-
 build.git/tree/projects/gomobile/0001-If-the-GOMOBILE_TMPDIR-env-variable-
 is-defined-
 use-t.patch?h=bug_28672_v7&id=082b4fd8759ef9e88317940d77d091291d0363df

 However there was still an issue with a `/tmp/go-buildXXXXXXXXX`. I tried
 fixing it with a `sed -i -E -e 's#(/tmp/go-build|/tmp/go-
 link-)[0-9]{9}/#\1XXXXXXXXX/#g' libgojni.so`, but this did not fix the
 issue completely as there was still differences after that:
 {{{
 --- out/snowflake/snowflake-d11e55aabe37-android-armv7-d0aca3.aar
 +++ /home/boklm/reproduce-build/tor-browser-build/out/snowflake/snowflake-
 d11e55aabe37-android-armv7-d0aca3.aar
 ├── zipinfo {}
 │ @@ -1,10 +1,10 @@
 │ -Zip file size: 1090707 bytes, number of entries: 8
 │ +Zip file size: 1090705 bytes, number of entries: 8
 │  -rw-------  3.0 unx      154 t- defN 19-Apr-16 16:59
 AndroidManifest.xml
 │  -rw-------  3.0 unx        0 b- stor 19-Apr-16 16:59 R.txt
 │  -rw-------  3.0 unx    11138 b- defN 19-Apr-16 16:59 classes.jar
 │  drwx------  3.0 unx        0 b- stor 19-Apr-16 16:59 jni/
 │  drwx------  3.0 unx        0 b- stor 19-Apr-16 16:59 jni/armeabi-v7a/
 │  -rw-------  3.0 unx  3133888 b- defN 19-Apr-16 16:59 jni/armeabi-
 v7a/libgojni.so
 │  -rw-------  3.0 unx       25 t- stor 19-Apr-16 16:59 proguard.txt
 │  drwx------  3.0 unx        0 b- stor 19-Apr-16 16:59 res/
 │ -8 files, 3145205 bytes uncompressed, 1089881 bytes compressed:  65.4%
 │ +8 files, 3145205 bytes uncompressed, 1089879 bytes compressed:  65.4%
 ├── jni/armeabi-v7a/libgojni.so
 │┄ No file format specific differences found inside, yet data differs (ELF
 32-bit LSB shared object, ARM, EABI5 version 1 (SYSV), dynamically linked,
 not stripped)
 │ @@ -20,16 +20,16 @@
 │  0000130: 0400 0000 52e5 7464 f089 0d00 f099 0d00  ....R.td........
 │  0000140: f099 0d00 1066 0a00 1066 0a00 0600 0000  .....f...f......
 │  0000150: 0800 0000 0400 0000 5300 0000 0400 0000  ........S.......
 │  0000160: 476f 0000 3966 3676 6e5f 5755 5876 6950  Go..9f6vn_WUXviP
 │  0000170: 6c7a 4a38 6c30 6a47 2f62 5769 6354 4c66  lzJ8l0jG/bWicTLf
 │  0000180: 3656 6572 7637 456d 536e 5945 792f 5877  6Verv7EmSnYEy/Xw
 │  0000190: 766f 4d72 5359 5250 6a78 345f 3264 4f6f  voMrSYRPjx4_2dOo
 │ -00001a0: 505a 2f35 5767 4c57 5934 555a 4c4a 6e65  PZ/5WgLWY4UZLJne
 │ -00001b0: 4d53 4146 6f68 6900 0000 0000 0000 0000  MSAFohi.........
 │ +00001a0: 505a 2f45 7054 3844 3964 6734 765f 6134  PZ/EpT8D9dg4v_a4
 │ +00001b0: 6648 4c51 7767 3700 0000 0000 0000 0000  fHLQwg7.........
 │  00001c0: 0000 0000 0000 0000 0100 0000 0000 0000  ................
 │  00001d0: 0000 0000 1200 0000 4300 0000 0000 0000  ........C.......
 │  00001e0: 0000 0000 1200 0000 5000 0000 48d9 0b00  ........P...H...
 │  00001f0: 4400 0000 1200 0b00 7b00 0000 9cd9 0b00  D.......{.......
 │  0000200: 0800 0000 1200 0b00 9800 0000 8cd9 0b00  ................
 │  0000210: 0800 0000 1200 0b00 bf00 0000 94d9 0b00  ................
 │  0000220: 0800 0000 1200 0b00 e600 0000 00d9 0b00  ................
 │ @@ -326,15 +326,15 @@
 │  0001450: 0100 0100 0100 0100 0100 0100 0100 0100  ................
 │  0001460: 0100 0100 0100 0100 0100 0200 0200 0100  ................
 │  0001470: 0100 0100 0100 0100 0000 0200 0100 0200  ................
 │  0001480: 0200 0200 0100 0100 0100 0200 0200 0200  ................
 │  0001490: 0200 0200 0200 0200 0200 0200 0100 0100  ................
 │  00014a0: 0200 0200 0200 0200 0100 0200 0200 0100  ................
 │  00014b0: 0100 0000 0100 0100 0100 0000 0100 0100  ................
 │ -00014c0: 0100 0100 04e7 8403 1400 0000 0000 0000  ................
 │ +00014c0: 0100 0100 24e0 0308 1400 0000 0000 0000  ....$...........
 │  00014d0: 1d00 0000 0000 0000 0100 0100 1500 0000  ................
 │  00014e0: 1000 0000 0000 0000 630d 0500 0000 0200  ........c.......
 │  00014f0: 1000 0000 0000 0000 f099 0d00 1700 0000  ................
 │  0001500: f426 0f00 1700 0000 f826 0f00 1700 0000  .&.......&......
 │  0001510: fc26 0f00 1700 0000 0027 0f00 1700 0000  .&.......'......
 │  0001520: 0427 0f00 1700 0000 0827 0f00 1700 0000  .'.......'......
 │  0001530: 0c27 0f00 1700 0000 1027 0f00 1700 0000  .'.......'......
 }}}


 So I added added a patch to go, to make it use a fixed tmp directory, if
 the directory does not exist yet, which is fixing the issue:
 https://gitweb.torproject.org/user/boklm/tor-browser-
 build.git/tree/projects/go/0001-Use-fixed-go-build-tmp-
 directory.patch?h=bug_28672_v7&id=082b4fd8759ef9e88317940d77d091291d0363df

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


More information about the tor-bugs mailing list