@@ -2,7 +2,6 @@ package quic
22
33import (
44 "context"
5- "io"
65 "time"
76
87 "github.com/quic-go/quic-go"
@@ -19,7 +18,7 @@ import (
1918// Listener is an internet.Listener that listens for TCP connections.
2019type Listener struct {
2120 rawConn * sysConn
22- listener quic.Listener
21+ listener * quic.Listener
2322 done * done.Instance
2423 addConn internet.ConnHandler
2524}
@@ -104,24 +103,26 @@ func Listen(ctx context.Context, address net.Address, port net.Port, streamSetti
104103 }
105104
106105 quicConfig := & quic.Config {
107- ConnectionIDLength : 12 ,
108106 KeepAlivePeriod : 0 ,
109107 HandshakeIdleTimeout : time .Second * 8 ,
110108 MaxIdleTimeout : time .Second * 300 ,
111109 MaxIncomingStreams : 32 ,
112110 MaxIncomingUniStreams : - 1 ,
113- Tracer : qlog . NewTracer ( func (_ logging.Perspective , connID [] byte ) io. WriteCloser {
114- return & QlogWriter {connID : connID }
115- }) ,
111+ Tracer : func (ctx context. Context , p logging.Perspective , ci quic. ConnectionID ) logging. ConnectionTracer {
112+ return qlog . NewConnectionTracer ( & QlogWriter {connID : ci }, p , ci );
113+ },
116114 }
117115
118116 conn , err := wrapSysConn (rawConn .(* net.UDPConn ), config )
119117 if err != nil {
120118 conn .Close ()
121119 return nil , err
122120 }
123-
124- qListener , err := quic .Listen (conn , tlsConfig .GetTLSConfig (), quicConfig )
121+ tr := quic.Transport {
122+ ConnectionIDLength : 12 ,
123+ Conn : conn ,
124+ }
125+ qListener , err := tr .Listen (tlsConfig .GetTLSConfig (), quicConfig )
125126 if err != nil {
126127 conn .Close ()
127128 return nil , err
0 commit comments