diff --git a/dns/quic.go b/dns/quic.go index 420622aa..0a080a4e 100644 --- a/dns/quic.go +++ b/dns/quic.go @@ -19,7 +19,7 @@ var bytesPool = sync.Pool{New: func() interface{} { return &bytes.Buffer{} }} type quicClient struct { addr string - session quic.Session + session quic.Connection sync.RWMutex // protects session and bytesPool } @@ -67,7 +67,7 @@ func (dc *quicClient) ExchangeContext(ctx context.Context, m *D.Msg) (msg *D.Msg return reply, nil } -func isActive(s quic.Session) bool { +func isActive(s quic.Connection) bool { select { case <-s.Context().Done(): return false @@ -76,11 +76,11 @@ func isActive(s quic.Session) bool { } } -// getSession - opens or returns an existing quic.Session +// getSession - opens or returns an existing quic.Connection // useCached - if true and cached session exists, return it right away // otherwise - forcibly creates a new session -func (dc *quicClient) getSession() (quic.Session, error) { - var session quic.Session +func (dc *quicClient) getSession() (quic.Connection, error) { + var session quic.Connection dc.RLock() session = dc.session if session != nil && isActive(session) { @@ -113,7 +113,7 @@ func (dc *quicClient) getSession() (quic.Session, error) { return session, nil } -func (dc *quicClient) openSession() (quic.Session, error) { +func (dc *quicClient) openSession() (quic.Connection, error) { tlsConfig := &tls.Config{ InsecureSkipVerify: true, NextProtos: []string{ diff --git a/go.mod b/go.mod index f0dfa469..435f9ca1 100644 --- a/go.mod +++ b/go.mod @@ -29,7 +29,7 @@ require ( golang.zx2c4.com/wireguard/windows v0.5.4-0.20220317000008-6432784c2469 google.golang.org/protobuf v1.28.0 gopkg.in/yaml.v2 v2.4.0 - gvisor.dev/gvisor v0.0.0-20220412171926-b3dc42bace48 + gvisor.dev/gvisor v0.0.0-20220412020520-6917e582612b ) require ( diff --git a/go.sum b/go.sum index fc506d47..b0eb16ec 100644 --- a/go.sum +++ b/go.sum @@ -382,8 +382,8 @@ gopkg.in/yaml.v3 v3.0.0-20200313102051-9f266ea9e77c/go.mod h1:K4uyk7z7BCEPqu6E+C gopkg.in/yaml.v3 v3.0.0-20210107192922-496545a6307b h1:h8qDotaEPuJATrMmW04NCwg7v22aHH28wwpauUhK9Oo= gopkg.in/yaml.v3 v3.0.0-20210107192922-496545a6307b/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM= grpc.go4.org v0.0.0-20170609214715-11d0a25b4919/go.mod h1:77eQGdRu53HpSqPFJFmuJdjuHRquDANNeA4x7B8WQ9o= -gvisor.dev/gvisor v0.0.0-20220412171926-b3dc42bace48 h1:XCYJLIJtk/EEf/B4G/7OcFWyAKQ/LlVw1BlVy5nDtJg= -gvisor.dev/gvisor v0.0.0-20220412171926-b3dc42bace48/go.mod h1:tWwEcFvJavs154OdjFCw78axNrsDlz4Zh8jvPqwcpGI= +gvisor.dev/gvisor v0.0.0-20220412020520-6917e582612b h1:JW1pUBe6A3H+b0B9DwEOcfK+TLS/04A3A9cettPpfV0= +gvisor.dev/gvisor v0.0.0-20220412020520-6917e582612b/go.mod h1:tWwEcFvJavs154OdjFCw78axNrsDlz4Zh8jvPqwcpGI= honnef.co/go/tools v0.0.0-20180728063816-88497007e858/go.mod h1:rf3lG4BRIbNafJWhAfAdb/ePZxsR/4RtNHQocxwk9r4= honnef.co/go/tools v0.0.0-20190102054323-c2f93a96b099/go.mod h1:rf3lG4BRIbNafJWhAfAdb/ePZxsR/4RtNHQocxwk9r4= honnef.co/go/tools v0.0.0-20190106161140-3f1c8253044a/go.mod h1:rf3lG4BRIbNafJWhAfAdb/ePZxsR/4RtNHQocxwk9r4=