@@ -8,7 +8,7 @@ package netxlite
8
8
import "github.com/ooni/probe-cli/v3/internal/model"
9
9
10
10
// TODO(bassosimone,kelmenhorst): we should gradually refactor the top-level netxlite
11
- // functions to operate on a [Net ] struct using a nil-initialized Underlying field.
11
+ // functions to operate on a [Netx ] struct using a nil-initialized Underlying field.
12
12
13
13
// Netx allows constructing netxlite data types using a specific [model.UnderlyingNetwork].
14
14
type Netx struct {
@@ -23,7 +23,7 @@ func (n *Netx) tproxyNilSafeProvider() *MaybeCustomUnderlyingNetwork {
23
23
}
24
24
25
25
// NewStdlibResolver is like [netxlite.NewStdlibResolver] but the constructed [model.Resolver]
26
- // uses the [UnderlyingNetwork] configured inside the [Net ] structure.
26
+ // uses the [model. UnderlyingNetwork] configured inside the [Netx ] structure.
27
27
func (n * Netx ) NewStdlibResolver (logger model.DebugLogger , wrappers ... model.DNSTransportWrapper ) model.Resolver {
28
28
unwrapped := & resolverSystem {
29
29
t : WrapDNSTransport (& dnsOverGetaddrinfoTransport {provider : n .tproxyNilSafeProvider ()}, wrappers ... ),
@@ -32,19 +32,19 @@ func (n *Netx) NewStdlibResolver(logger model.DebugLogger, wrappers ...model.DNS
32
32
}
33
33
34
34
// NewDialerWithResolver is like [netxlite.NewDialerWithResolver] but the constructed [model.Dialer]
35
- // uses the [UnderlyingNetwork] configured inside the [Net ] structure.
35
+ // uses the [model. UnderlyingNetwork] configured inside the [Netx ] structure.
36
36
func (n * Netx ) NewDialerWithResolver (dl model.DebugLogger , r model.Resolver , w ... model.DialerWrapper ) model.Dialer {
37
37
return WrapDialer (dl , r , & DialerSystem {provider : n .tproxyNilSafeProvider ()}, w ... )
38
38
}
39
39
40
- // NewQUICListener is like [netxlite.NewQUICListener ] but the constructed [model.QUICListener ]
41
- // uses the [UnderlyingNetwork] configured inside the [Net ] structure.
42
- func (n * Netx ) NewQUICListener () model.UDPListener {
40
+ // NewUDPListener is like [netxlite.NewUDPListener ] but the constructed [model.UDPListener ]
41
+ // uses the [model. UnderlyingNetwork] configured inside the [Netx ] structure.
42
+ func (n * Netx ) NewUDPListener () model.UDPListener {
43
43
return & udpListenerErrWrapper {& udpListenerStdlib {provider : n .tproxyNilSafeProvider ()}}
44
44
}
45
45
46
46
// NewQUICDialerWithResolver is like [netxlite.NewQUICDialerWithResolver] but the constructed
47
- // [model.QUICDialer] uses the [UnderlyingNetwork] configured inside the [Net ] structure.
47
+ // [model.QUICDialer] uses the [model. UnderlyingNetwork] configured inside the [Netx ] structure.
48
48
func (n * Netx ) NewQUICDialerWithResolver (listener model.UDPListener , logger model.DebugLogger ,
49
49
resolver model.Resolver , wrappers ... model.QUICDialerWrapper ) (outDialer model.QUICDialer ) {
50
50
baseDialer := & quicDialerQUICGo {
@@ -55,23 +55,23 @@ func (n *Netx) NewQUICDialerWithResolver(listener model.UDPListener, logger mode
55
55
}
56
56
57
57
// NewTLSHandshakerStdlib is like [netxlite.NewTLSHandshakerStdlib] but the constructed [model.TLSHandshaker]
58
- // uses the [UnderlyingNetwork] configured inside the [Net ] structure.
58
+ // uses the [model. UnderlyingNetwork] configured inside the [Netx ] structure.
59
59
func (n * Netx ) NewTLSHandshakerStdlib (logger model.DebugLogger ) model.TLSHandshaker {
60
60
return newTLSHandshakerLogger (& tlsHandshakerConfigurable {provider : n .tproxyNilSafeProvider ()}, logger )
61
61
}
62
62
63
63
// NewHTTPTransportStdlib is like [netxlite.NewHTTPTransportStdlib] but the constructed [model.HTTPTransport]
64
- // uses the [UnderlyingNetwork] configured inside the [Net ] structure.
64
+ // uses the [model. UnderlyingNetwork] configured inside the [Netx ] structure.
65
65
func (n * Netx ) NewHTTPTransportStdlib (logger model.DebugLogger ) model.HTTPTransport {
66
66
dialer := n .NewDialerWithResolver (logger , n .NewStdlibResolver (logger ))
67
67
tlsDialer := NewTLSDialer (dialer , n .NewTLSHandshakerStdlib (logger ))
68
68
return NewHTTPTransport (logger , dialer , tlsDialer )
69
69
}
70
70
71
71
// NewHTTP3TransportStdlib is like [netxlite.NewHTTP3TransportStdlib] but the constructed [model.HTTPTransport]
72
- // uses the [UnderlyingNetwork] configured inside the [Net ] structure.
72
+ // uses the [model. UnderlyingNetwork] configured inside the [Netx ] structure.
73
73
func (n * Netx ) NewHTTP3TransportStdlib (logger model.DebugLogger ) model.HTTPTransport {
74
- ql := n .NewQUICListener ()
74
+ ql := n .NewUDPListener ()
75
75
reso := n .NewStdlibResolver (logger )
76
76
qd := n .NewQUICDialerWithResolver (ql , logger , reso )
77
77
return NewHTTP3Transport (logger , qd , nil )
0 commit comments