Pier Angelo Vendrame pushed to branch main at The Tor Project / Applications / tor-browser-build
Commits:
-
efdc0f34
by Pier Angelo Vendrame at 2025-03-26T12:21:51+01:00
-
912bbd1d
by Pier Angelo Vendrame at 2025-03-26T12:21:52+01:00
8 changed files:
- − projects/browser/Bundle-Data/Docs-TBB/Licenses/PluggableTransports/LICENSE.SNOWFLAKE
- projects/browser/build
- − projects/snowflake/README.md
- − projects/snowflake/build
- − projects/snowflake/config
- projects/tor-expert-bundle/build
- projects/tor-expert-bundle/config
- projects/tor-expert-bundle/pt_config.json
Changes:
1 | - This file contains the license for "Snowflake"
|
|
2 | - a free software project which provides a WebRTC pluggable transport.
|
|
3 | - |
|
4 | -================================================================================
|
|
5 | -Copyright (c) 2016, Serene Han, Arlo Breault
|
|
6 | -All rights reserved.
|
|
7 | - |
|
8 | -Redistribution and use in source and binary forms, with or without modification,
|
|
9 | -are permitted provided that the following conditions are met:
|
|
10 | - |
|
11 | - * Redistributions of source code must retain the above copyright notice, this
|
|
12 | -list of conditions and the following disclaimer.
|
|
13 | - |
|
14 | - * Redistributions in binary form must reproduce the above copyright notice,
|
|
15 | -this list of conditions and the following disclaimer in the documentation and/or
|
|
16 | -other materials provided with the distribution.
|
|
17 | - |
|
18 | - * Neither the names of the copyright owners nor the names of its
|
|
19 | -contributors may be used to endorse or promote products derived from this
|
|
20 | -software without specific prior written permission.
|
|
21 | - |
|
22 | -THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
|
|
23 | -ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
|
|
24 | -WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
|
|
25 | -DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR
|
|
26 | -ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
|
|
27 | -(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
|
|
28 | -LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON
|
|
29 | -ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
|
|
30 | -(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
|
|
31 | -SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
|
32 | -================================================================================ |
... | ... | @@ -108,9 +108,7 @@ mv [% c('input_files_by_name/noscript') %] "$TBDIR/$EXTSPATH/{73a6fe31-595d-460b |
108 | 108 | [% END -%]
|
109 | 109 | |
110 | 110 | # Move READMEs from tor-expert-bundle to the doc dir
|
111 | - mkdir -p "$TBDIR/$DOCSPATH/snowflake" [% IF c("var/macos_universal") %]"$TBDIR_AARCH64/$DOCSPATH/snowflake"[% END %]
|
|
112 | 111 | mkdir -p "$TBDIR/$DOCSPATH/conjure" [% IF c("var/macos_universal") %]"$TBDIR_AARCH64/$DOCSPATH/conjure"[% END %]
|
113 | - mv_tbdir tor/pluggable_transports/README.SNOWFLAKE.md "$DOCSPATH/snowflake/README.md"
|
|
114 | 112 | mv_tbdir tor/pluggable_transports/README.CONJURE.md "$DOCSPATH/conjure/README.md"
|
115 | 113 | |
116 | 114 | # Move the PTs to where TB expects them
|
1 | -This is the Snowflake pluggable transport.
|
|
2 | - |
|
3 | -# Vendored dependencies
|
|
4 | - |
|
5 | -Snowflake is written in Go, and we version the expected hash of the vendored
|
|
6 | -dependencies. Please refer to `doc/how-to-update-go-dependencies.txt` for
|
|
7 | -further information on how we manage dependencies of Go projects. |
1 | -#!/bin/bash
|
|
2 | -[% c("var/set_default_env") -%]
|
|
3 | -[% pc('go', 'var/setup', { go_tarfile => c('input_files_by_name/go') }) %]
|
|
4 | -distdir=/var/tmp/dist/[% project %]
|
|
5 | -mkdir -p $distdir
|
|
6 | - |
|
7 | -[% IF c("var/android") -%]
|
|
8 | - [% pc(c('var/compiler'), 'var/setup', { compiler_tarfile => c('input_files_by_name/' _ c('var/compiler')) }) %]
|
|
9 | - # We need to explicitly set CGO_ENABLED with Go 1.13.x as the Android build
|
|
10 | - # breaks otherwise.
|
|
11 | - export CGO_ENABLED=1
|
|
12 | -[% END -%]
|
|
13 | - |
|
14 | -mkdir -p /var/tmp/build
|
|
15 | -tar -C /var/tmp/build -xf [% project %]-[% c('version') %].tar.[% c('compress_tar') %]
|
|
16 | -cd /var/tmp/build/[% project %]-[% c('version') %]
|
|
17 | - |
|
18 | -tar -xf $rootdir/[% c('input_files_by_name/go_vendor') %]
|
|
19 | - |
|
20 | -cd client
|
|
21 | -go build -ldflags '-s[% IF c("var/android") %] -checklinkname=0[% END %]' -tags 'nopshufb,noasm,packetioSizeHardlimit,purego,safe,appengine,disableunsafe'
|
|
22 | -cp -a client[% IF c("var/windows") %].exe[% END %] $distdir/snowflake-client[% IF c("var/windows") %].exe[% END %]
|
|
23 | - |
|
24 | -cd ..
|
|
25 | -cp -a README.md $distdir/README.SNOWFLAKE.md
|
|
26 | - |
|
27 | -cd $distdir
|
|
28 | -[% c('tar', {
|
|
29 | - tar_src => [ '.' ],
|
|
30 | - tar_args => '-caf ' _ dest_dir _ '/' _ c('filename'),
|
|
31 | - }) %] |
1 | -# vim: filetype=yaml sw=2
|
|
2 | -version: '2.11.0'
|
|
3 | -git_url: https://gitlab.torproject.org/tpo/anti-censorship/pluggable-transports/snowflake.git
|
|
4 | -git_hash: 'v[% c("version") %]'
|
|
5 | -gpg_keyring: anti-censorship.gpg
|
|
6 | -tag_gpg_id: 1
|
|
7 | - |
|
8 | -container:
|
|
9 | - use_container: 1
|
|
10 | - |
|
11 | -var:
|
|
12 | - go_vendor_sha256sum: 4c21a75c2fd0997a13fc5bb99991ff2c7149fb2342b857b06c70a18c4cb2ac89
|
|
13 | - |
|
14 | -targets:
|
|
15 | - nightly:
|
|
16 | - git_hash: main
|
|
17 | - version: '[% c("abbrev") %]'
|
|
18 | - tag_gpg_id: 0
|
|
19 | - var:
|
|
20 | - go_vendor_sha256sum: ''
|
|
21 | - |
|
22 | -steps:
|
|
23 | - build:
|
|
24 | - filename: '[% project %]-[% c("version") %]-[% c("var/osname") %]-[% c("var/build_id") %].tar.[% c("compress_tar") %]'
|
|
25 | - input_files:
|
|
26 | - - project: container-image
|
|
27 | - - name: go
|
|
28 | - project: go
|
|
29 | - - name: '[% c("var/compiler") %]'
|
|
30 | - project: '[% c("var/compiler") %]'
|
|
31 | - enable: '[% c("var/android") %]'
|
|
32 | - - name: go_vendor
|
|
33 | - pkg_type: go_vendor
|
|
34 | - project: snowflake
|
|
35 | - norec:
|
|
36 | - sha256sum: '[% c("var/go_vendor_sha256sum") %]'
|
|
37 | - target_replace:
|
|
38 | - '^torbrowser-(?!testbuild).*': 'torbrowser-linux-x86_64' |
... | ... | @@ -14,7 +14,6 @@ cd tor |
14 | 14 | mkdir pluggable_transports && cd pluggable_transports
|
15 | 15 | |
16 | 16 | tar -xkf $rootdir/[% c('input_files_by_name/lyrebird') %]
|
17 | -tar -xkf $rootdir/[% c('input_files_by_name/snowflake') %]
|
|
18 | 17 | [% IF c('input_files_by_name/conjure') -%]
|
19 | 18 | tar -xkf $rootdir/[% c('input_files_by_name/conjure') %]
|
20 | 19 | [% END -%]
|
... | ... | @@ -35,8 +34,7 @@ cd $distdir |
35 | 34 | mkdir -p aar/assets/common
|
36 | 35 | |
37 | 36 | cp -a tor/libTor.so aar/jni/$abi/
|
38 | - cp -a tor/pluggable_transports/lyrebird aar/jni/$abi/libObfs4proxy.so
|
|
39 | - cp -a tor/pluggable_transports/snowflake-client aar/jni/$abi/libSnowflake.so
|
|
37 | + cp -a tor/pluggable_transports/lyrebird aar/jni/$abi/libLyrebird.so
|
|
40 | 38 | [% IF c('input_files_by_name/conjure') -%]
|
41 | 39 | cp -a tor/pluggable_transports/conjure-client aar/jni/$abi/libConjure.so
|
42 | 40 | [% END -%]
|
... | ... | @@ -16,8 +16,6 @@ input_files: |
16 | 16 | project: tor
|
17 | 17 | - name: lyrebird
|
18 | 18 | project: lyrebird
|
19 | - - name: snowflake
|
|
20 | - project: snowflake
|
|
21 | 19 | - name: conjure
|
22 | 20 | project: conjure
|
23 | 21 | enable: '[% !c("var/android-x86") && !c("var/android-x86_64") %]'
|
1 | 1 | {
|
2 | 2 | "recommendedDefault" : "obfs4",
|
3 | 3 | "pluggableTransports" : {
|
4 | - "lyrebird" : "ClientTransportPlugin meek_lite,obfs2,obfs3,obfs4,scramblesuit,webtunnel exec ${pt_path}lyrebird${pt_extension}",
|
|
5 | - "snowflake" : "ClientTransportPlugin snowflake exec ${pt_path}snowflake-client${pt_extension}",
|
|
4 | + "lyrebird" : "ClientTransportPlugin meek_lite,obfs2,obfs3,obfs4,scramblesuit,snowflake,webtunnel exec ${pt_path}lyrebird${pt_extension}",
|
|
6 | 5 | "conjure" : "ClientTransportPlugin conjure exec ${pt_path}conjure-client${pt_extension} -registerURL https://registration.refraction.network/api"
|
7 | 6 | },
|
8 | 7 | "bridges" : {
|