TUN-4597: Add a QUIC server skeleton

- Added a QUIC server to accept streams
- Unit test for this server also tests ALPN
- Temporary echo capability for HTTP ConnectionType
This commit is contained in:
Sudarsan Reddy
2021-08-03 10:04:02 +01:00
parent fd4000184c
commit ed024d0741
768 changed files with 84848 additions and 15639 deletions

33
vendor/modules.txt vendored
View File

@@ -11,6 +11,8 @@ github.com/caddyserver/caddy/telemetry
github.com/certifi/gocertifi
# github.com/cespare/xxhash/v2 v2.1.1
github.com/cespare/xxhash/v2
# github.com/cheekybits/genny v1.0.0
github.com/cheekybits/genny/generic
# github.com/cloudflare/brotli-go v0.0.0-20191101163834-d34379f7ff93
## explicit
github.com/cloudflare/brotli-go
@@ -175,8 +177,29 @@ github.com/json-iterator/go
## explicit
# github.com/kylelemons/godebug v1.1.0
## explicit
# github.com/lucas-clemente/quic-go v0.21.1
## explicit
github.com/lucas-clemente/quic-go
github.com/lucas-clemente/quic-go/internal/ackhandler
github.com/lucas-clemente/quic-go/internal/congestion
github.com/lucas-clemente/quic-go/internal/flowcontrol
github.com/lucas-clemente/quic-go/internal/handshake
github.com/lucas-clemente/quic-go/internal/logutils
github.com/lucas-clemente/quic-go/internal/protocol
github.com/lucas-clemente/quic-go/internal/qerr
github.com/lucas-clemente/quic-go/internal/qtls
github.com/lucas-clemente/quic-go/internal/utils
github.com/lucas-clemente/quic-go/internal/wire
github.com/lucas-clemente/quic-go/logging
github.com/lucas-clemente/quic-go/quicvarint
# github.com/lucasb-eyer/go-colorful v1.0.3
github.com/lucasb-eyer/go-colorful
# github.com/marten-seemann/qtls-go1-15 v0.1.4
github.com/marten-seemann/qtls-go1-15
# github.com/marten-seemann/qtls-go1-16 v0.1.3
github.com/marten-seemann/qtls-go1-16
# github.com/marten-seemann/qtls-go1-17 v0.1.0-beta.1.2
github.com/marten-seemann/qtls-go1-17
# github.com/mattn/go-colorable v0.1.8
## explicit
github.com/mattn/go-colorable
@@ -260,9 +283,13 @@ go.uber.org/automaxprocs/maxprocs
golang.org/x/crypto/blake2b
golang.org/x/crypto/blowfish
golang.org/x/crypto/chacha20
golang.org/x/crypto/chacha20poly1305
golang.org/x/crypto/cryptobyte
golang.org/x/crypto/cryptobyte/asn1
golang.org/x/crypto/curve25519
golang.org/x/crypto/ed25519
golang.org/x/crypto/ed25519/internal/edwards25519
golang.org/x/crypto/hkdf
golang.org/x/crypto/internal/subtle
golang.org/x/crypto/nacl/box
golang.org/x/crypto/nacl/secretbox
@@ -272,7 +299,7 @@ golang.org/x/crypto/salsa20/salsa
golang.org/x/crypto/ssh
golang.org/x/crypto/ssh/internal/bcrypt_pbkdf
golang.org/x/crypto/ssh/terminal
# golang.org/x/net v0.0.0-20200904194848-62affa334b73
# golang.org/x/net v0.0.0-20210405180319-a5a99cb37ef4
## explicit
golang.org/x/net/bpf
golang.org/x/net/context
@@ -294,10 +321,10 @@ golang.org/x/net/websocket
## explicit
golang.org/x/oauth2
golang.org/x/oauth2/internal
# golang.org/x/sync v0.0.0-20200625203802-6e8e738ad208
# golang.org/x/sync v0.0.0-20210220032951-036812b2e83c
## explicit
golang.org/x/sync/errgroup
# golang.org/x/sys v0.0.0-20210119212857-b64e53b001e4
# golang.org/x/sys v0.0.0-20210510120138-977fb7262007
## explicit
golang.org/x/sys/cpu
golang.org/x/sys/internal/unsafeheader