Skip to content

Commit

Permalink
Merge branch 'master' into staging-client
Browse files Browse the repository at this point in the history
  • Loading branch information
rod-hynes committed Dec 6, 2023
2 parents ac1a8b8 + a13da4c commit a8e5fc0
Show file tree
Hide file tree
Showing 767 changed files with 116,241 additions and 16,759 deletions.
12 changes: 10 additions & 2 deletions .github/workflows/tests.yml
Original file line number Diff line number Diff line change
Expand Up @@ -15,8 +15,8 @@ jobs:
fail-fast: false
matrix:
os: [ "ubuntu" ]
go: [ "1.19.8" ]
test-type: [ "detector", "coverage", "memory" ]
go: [ "1.20.12" ]
test-type: [ "detector", "coverage", "memory", "custom-build-tags" ]

runs-on: ${{ matrix.os }}-latest

Expand Down Expand Up @@ -140,3 +140,11 @@ jobs:
cd ${{ github.workspace }}/go/src/github.com/Psiphon-Labs/psiphon-tunnel-core
go test -v ./psiphon/memory_test -run TestReconnectTunnel
go test -v ./psiphon/memory_test -run TestRestartController
- name: Compile with custom build tags
if: ${{ matrix.test-type == 'custom-build-tags' }}
run: |
cd ${{ github.workspace }}/go/src/github.com/Psiphon-Labs/psiphon-tunnel-core/ConsoleClient
go build -a -v -tags "PSIPHON_DISABLE_QUIC"
go build -a -v -tags "PSIPHON_DISABLE_GQUIC"
go build -a -v -tags "PSIPHON_ENABLE_REFRACTION_NETWORKING"
2 changes: 1 addition & 1 deletion ClientLibrary/Dockerfile
Original file line number Diff line number Diff line change
Expand Up @@ -21,7 +21,7 @@ RUN apt-get update -y && apt-get install -y --no-install-recommends \

# Install Go.
# NOTE: Go 1.10+ is required to build c-shared for windows (https://github.com/golang/go/commit/bb0bfd002ada7e3eb9198d4287b32c2fed6e8da6)
ENV GOVERSION=go1.19.8 GOROOT=/usr/local/go GOPATH=/go PATH=$PATH:/usr/local/go/bin:/go/bin CGO_ENABLED=1
ENV GOVERSION=go1.20.12 GOROOT=/usr/local/go GOPATH=/go PATH=$PATH:/usr/local/go/bin:/go/bin CGO_ENABLED=1

RUN curl -L https://storage.googleapis.com/golang/$GOVERSION.linux-amd64.tar.gz -o /tmp/go.tar.gz \
&& tar -C /usr/local -xzf /tmp/go.tar.gz \
Expand Down
4 changes: 2 additions & 2 deletions ClientLibrary/build-darwin.sh
Original file line number Diff line number Diff line change
Expand Up @@ -9,8 +9,8 @@ if [ -z ${2+x} ]; then BUILD_TAGS=""; else BUILD_TAGS="$2"; fi
# Note:
# clangwrap.sh needs to be updated when the Go version changes.
# The last version was:
# https://github.com/golang/go/blob/go1.19.8/misc/ios/clangwrap.sh
GO_VERSION_REQUIRED="1.19.8"
# https://github.com/golang/go/blob/go1.20.12/misc/ios/clangwrap.sh
GO_VERSION_REQUIRED="1.20.12"

BASE_DIR=$(cd "$(dirname "$0")" ; pwd -P)
cd ${BASE_DIR}
Expand Down
2 changes: 1 addition & 1 deletion ConsoleClient/Dockerfile
Original file line number Diff line number Diff line change
Expand Up @@ -22,7 +22,7 @@ RUN apt-get update -y && apt-get install -y --no-install-recommends \
&& rm -rf /var/lib/apt/lists/*

# Install Go.
ENV GOVERSION=go1.19.8 GOROOT=/usr/local/go GOPATH=/go PATH=$PATH:/usr/local/go/bin:/go/bin CGO_ENABLED=1
ENV GOVERSION=go1.20.12 GOROOT=/usr/local/go GOPATH=/go PATH=$PATH:/usr/local/go/bin:/go/bin CGO_ENABLED=1

RUN curl -L https://storage.googleapis.com/golang/$GOVERSION.linux-amd64.tar.gz -o /tmp/go.tar.gz \
&& tar -C /usr/local -xzf /tmp/go.tar.gz \
Expand Down
3 changes: 2 additions & 1 deletion MobileLibrary/Android/Dockerfile
Original file line number Diff line number Diff line change
Expand Up @@ -14,6 +14,7 @@ RUN apt-get update -y && apt-get install -y --no-install-recommends \
ca-certificates \
curl \
git \
ca-certificates-java \
openjdk-8-jdk \
pkg-config \
zip \
Expand All @@ -22,7 +23,7 @@ RUN apt-get update -y && apt-get install -y --no-install-recommends \
&& rm -rf /var/lib/apt/lists/*

# Install Go.
ENV GOVERSION=go1.19.8 GOROOT=/usr/local/go GOPATH=/go PATH=$PATH:/usr/local/go/bin:/go/bin CGO_ENABLED=1
ENV GOVERSION=go1.20.12 GOROOT=/usr/local/go GOPATH=/go PATH=$PATH:/usr/local/go/bin:/go/bin CGO_ENABLED=1

RUN curl -L https://storage.googleapis.com/golang/$GOVERSION.linux-amd64.tar.gz -o /tmp/go.tar.gz \
&& tar -C /usr/local -xzf /tmp/go.tar.gz \
Expand Down
2 changes: 1 addition & 1 deletion MobileLibrary/iOS/build-psiphon-framework.sh
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,7 @@ set -e -u -x
if [ -z ${1+x} ]; then BUILD_TAGS=""; else BUILD_TAGS="$1"; fi

# Modify this value as we use newer Go versions.
GO_VERSION_REQUIRED="1.19.8"
GO_VERSION_REQUIRED="1.20.12"

# At this time, psiphon-tunnel-core doesn't support modules
export GO111MODULE=off
Expand Down
4 changes: 2 additions & 2 deletions Server/Dockerfile-binary-builder
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
FROM alpine:3.10.2
FROM alpine:3.18.4

ENV GOLANG_VERSION 1.19.8
ENV GOLANG_VERSION 1.20.12
ENV GOLANG_SRC_URL https://golang.org/dl/go$GOLANG_VERSION.src.tar.gz

RUN set -ex \
Expand Down
70 changes: 37 additions & 33 deletions go.mod
Original file line number Diff line number Diff line change
Expand Up @@ -2,17 +2,9 @@ module github.com/Psiphon-Labs/psiphon-tunnel-core

go 1.19

// When this is the main module, use a patched version of
// refraction/gotapdance with
// https://github.com/Psiphon-Labs/psiphon-tunnel-core/commit/2a4121d9
replace github.com/refraction-networking/gotapdance => ./replace/gotapdance
replace gitlab.com/yawning/obfs4.git => github.com/jmwample/obfs4 v0.0.0-20230725223418-2d2e5b4a16ba

// When this is the main module, gitlab.com/yawning/obfs4, used by
// refraction-networking/gotapdance, is pinned at 816cff15 the last revision
// published without a GPL license. This version lacks obfuscation
// improvements added in revision 1a6129b6, but these changes apply only on
// the server side.
replace gitlab.com/yawning/obfs4.git => ./replace/obfs4.git
replace github.com/pion/dtls/v2 => github.com/mingyech/dtls/v2 v2.0.0

require (
github.com/Psiphon-Inc/rotate-safe-writer v0.0.0-20210303140923-464a7a37606e
Expand All @@ -31,63 +23,75 @@ require (
github.com/florianl/go-nfqueue v1.1.1-0.20200829120558-a2f196e98ab0
github.com/gobwas/glob v0.2.4-0.20180402141543-f00a7392b439
github.com/golang/groupcache v0.0.0-20200121045136-8c9f03a8e57e
github.com/google/gopacket v1.1.19-0.20200831200443-df1bbd09a561
github.com/google/gopacket v1.1.19
github.com/grafov/m3u8 v0.0.0-20171211212457-6ab8f28ed427
github.com/hashicorp/golang-lru v0.0.0-20180201235237-0fb14efe8c47
github.com/hashicorp/golang-lru v1.0.2
github.com/juju/ratelimit v1.0.2
github.com/marusama/semaphore v0.0.0-20171214154724-565ffd8e868a
github.com/miekg/dns v1.1.44-0.20210804161652-ab67aa642300
github.com/mitchellh/panicwrap v0.0.0-20170106182340-fce601fe5557
github.com/oschwald/maxminddb-golang v1.2.1-0.20170901134056-26fe5ace1c70
github.com/oschwald/maxminddb-golang v1.12.0
github.com/patrickmn/go-cache v2.1.0+incompatible
github.com/refraction-networking/gotapdance v1.2.0
github.com/pion/sctp v1.8.8
github.com/refraction-networking/conjure v0.7.10-0.20231110193225-e4749a9dedc9
github.com/refraction-networking/gotapdance v1.7.7
github.com/refraction-networking/utls v1.3.3
github.com/ryanuber/go-glob v0.0.0-20170128012129-256dc444b735
github.com/sirupsen/logrus v1.8.1
github.com/stretchr/testify v1.7.1
github.com/sirupsen/logrus v1.9.3
github.com/stretchr/testify v1.8.4
github.com/syndtr/gocapability v0.0.0-20170704070218-db04d3cc01c8
github.com/wader/filtertransport v0.0.0-20200316221534-bdd9e61eee78
golang.org/x/crypto v0.10.0
golang.org/x/net v0.11.0
golang.org/x/crypto v0.14.0
golang.org/x/net v0.17.0
golang.org/x/sync v0.1.0
golang.org/x/sys v0.9.0
golang.org/x/term v0.9.0
golang.org/x/sys v0.13.0
golang.org/x/term v0.13.0
)

require (
git.torproject.org/pluggable-transports/goptlib.git v1.2.0 // indirect
filippo.io/bigmod v0.0.1 // indirect
filippo.io/keygen v0.0.0-20230306160926-5201437acf8e // indirect
github.com/AndreasBriese/bbloom v0.0.0-20170702084017-28f7e881ca57 // indirect
github.com/BurntSushi/toml v0.3.1 // indirect
github.com/BurntSushi/toml v1.3.2 // indirect
github.com/Psiphon-Labs/qtls-go1-19 v0.0.0-20230608213623-d58aa73e519a // indirect
github.com/Psiphon-Labs/qtls-go1-20 v0.0.0-20230608214729-dd57d6787acf // indirect
github.com/agl/ed25519 v0.0.0-20170116200512-5312a6153412 // indirect
github.com/andybalholm/brotli v1.0.5 // indirect
github.com/davecgh/go-spew v1.1.1 // indirect
github.com/dchest/siphash v1.2.3-0.20201109081723-a21c2e7914a8 // indirect
github.com/dchest/siphash v1.2.3 // indirect
github.com/dgryski/go-farm v0.0.0-20180109070241-2de33835d102 // indirect
github.com/gaukas/godicttls v0.0.3 // indirect
github.com/flynn/noise v1.0.0 // indirect
github.com/gaukas/godicttls v0.0.4 // indirect
github.com/go-task/slim-sprig v0.0.0-20210107165309-348f09dbbbc0 // indirect
github.com/golang/mock v1.6.0 // indirect
github.com/golang/protobuf v1.5.3-0.20210916003710-5d5e8c018a13 // indirect
github.com/google/go-cmp v0.5.8 // indirect
github.com/google/pprof v0.0.0-20210407192527-94a9f03dee38 // indirect
github.com/golang/protobuf v1.5.3 // indirect
github.com/google/go-cmp v0.5.9 // indirect
github.com/google/pprof v0.0.0-20211214055906-6f57359322fd // indirect
github.com/josharian/native v1.0.0 // indirect
github.com/kardianos/osext v0.0.0-20170510131534-ae77be60afb1 // indirect
github.com/klauspost/compress v1.16.6 // indirect
github.com/klauspost/compress v1.16.7 // indirect
github.com/libp2p/go-reuseport v0.4.0 // indirect
github.com/mdlayher/netlink v1.4.2-0.20210930205308-a81a8c23d40a // indirect
github.com/mdlayher/socket v0.0.0-20210624160740-9dbe287ded84 // indirect
github.com/mroth/weightedrand v0.4.1 // indirect
github.com/mroth/weightedrand v1.0.0 // indirect
github.com/onsi/ginkgo/v2 v2.2.0 // indirect
github.com/pelletier/go-toml v1.9.5 // indirect
github.com/pion/dtls/v2 v2.2.7 // indirect
github.com/pion/logging v0.2.2 // indirect
github.com/pion/randutil v0.1.0 // indirect
github.com/pion/stun v0.6.1 // indirect
github.com/pion/transport/v2 v2.2.3 // indirect
github.com/pkg/errors v0.9.1 // indirect
github.com/pmezard/go-difflib v1.0.0 // indirect
github.com/quic-go/qpack v0.4.0 // indirect
github.com/refraction-networking/ed25519 v0.1.2 // indirect
github.com/refraction-networking/obfs4 v0.1.2 // indirect
github.com/sergeyfrolov/bsbuffer v0.0.0-20180903213811-94e85abb8507 // indirect
gitlab.com/yawning/obfs4.git v0.0.0-20190120164510-816cff15f425 // indirect
gitlab.torproject.org/tpo/anti-censorship/pluggable-transports/goptlib v1.5.0 // indirect
golang.org/x/exp v0.0.0-20221012211006-4de253d81b95 // indirect
golang.org/x/mod v0.8.0 // indirect
golang.org/x/text v0.10.0 // indirect
golang.org/x/text v0.13.0 // indirect
golang.org/x/tools v0.6.0 // indirect
google.golang.org/protobuf v1.28.0 // indirect
google.golang.org/protobuf v1.31.0 // indirect
gopkg.in/yaml.v3 v3.0.1 // indirect
honnef.co/go/tools v0.2.1 // indirect
)

0 comments on commit a8e5fc0

Please sign in to comment.