Commit Graph
15 Commits
Author SHA1 Message Date
Benjamin Erhart f1b9b97a26 Updated dependencies. 2026-05-05 15:05:11 +02:00
Benjamin Erhart e111260cbc Switched to the latest version of goptlib. Made AcceptLoop publicly accessible for easier reuse. 2026-01-21 14:44:09 +01:00
Benjamin Erhart d734764a6b Updated all dependencies. 2026-01-21 13:06:15 +01:00
Benjamin Erhart eed4f410df Merge remote-tracking branch 'upstream/master' 2026-01-21 12:57:33 +01:00
David Fifield 9391b29dfd Update kcp-go and smux. 2024-05-13 19:46:00 +00:00
David Fifield 6adedaa823 Upgrade utls to v1.6.6.
Remove the SNI workaround that is fixed in v1.6.6.

https://github.com/refraction-networking/utls/issues/96

I find that the workaround for
https://github.com/refraction-networking/utls/issues/75
is still necessary; otherwise the local side thinks it's speaking
HTTP/1.1 while the remote is speaking HTTP/2:

2024/05/13 17:15:49 sendLoop: Post "https://1.1.1.1/dns-query": net/http: HTTP/1.x transport connection broken: malformed HTTP response "\x00\x00\x12\x04\x00\x00\x00\x00\x00\x00\x03\x00\x00\x00d\x00\x04\x00\x01\x00\x00\x00\x05\x00\xff\xff\xff\x00\x00\x04\b\x00\x00\x00\x00\x00\x7f\xff\x00\x00\x00\x00\b\a\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x01"
2024-05-13 19:14:47 +00:00
Benjamin Erhart ef22747193 First attempt at adding PT 1.0 compatibility. 2022-06-03 13:55:51 +02:00
David Fifield 70c78e24d7 TLS camouflage using uTLS and a hardcoded Client Hello ID.
net/http Transport.DialTLSContext requires go1.14.
https://go.dev/doc/go1.14#net/http
2022-01-02 19:14:35 -07:00
David Fifield e4dc2883ef Use errors.Is to compare against ErrClosedPipe.
I was still getting "io: read/write on closed pipe" errors in the logs,
even after comparing errors against io.ErrClosedPipe to skip logging
them. It turns out that kcp-go wraps many of its errors in another type.
The actual type of the errors was *errors.withStack, where errors is
https://github.com/pkg/errors. We can use the go1.13 errors interface
(https://blog.golang.org/go1.13-errors) to get at the value inside.
2021-08-03 21:00:45 -06:00
David Fifield 0269f6f5ed Use a more robust method for noise.PubkeyFromPrivkey. 2021-06-23 22:49:46 -06:00
David Fifield d743218bb2 Update kcp-go and smux dependencies. 2021-04-22 17:48:45 -06:00
David Fifield 326771cb95 Upgrade flynn/noise to v1.0.0.
This upgrade takes care of issues UCB-02-003, UCB-02-004, and UCB-02-006
from the 2021 security audit of Turbo Tunnel by Cure53.

https://github.com/flynn/noise/security/advisories/GHSA-g9mp-8g3h-3c5c

UCB-02-004
https://github.com/flynn/noise/pull/43

UCB-02-003, UCB-02-006:
https://github.com/flynn/noise/pull/44
2021-04-22 16:48:22 -06:00
David Fifield 2fe0675488 Add go 1.11 to go.mod.
Recent versions of go (at least go1.14) automatically add a `go` line to
go.mod with every command, such as `go build`. Adding one here so that
builds don't wind up changing a versioned file. There doesn't seem to be
much importance to what number goes here
(https://utcc.utoronto.ca/~cks/space/blog/programming/GoModulesGoVersions).
I've just verified that the programs build with go1.11.
2021-03-19 23:13:08 -06:00
David Fifield f2423f959a noise socket abstraction 2020-04-18 14:34:10 -06:00
David Fifield cdeecf2ec6 Starting on server. 2020-04-18 13:18:04 -06:00