Skip to content

Commit 72ed22f

Browse files
committed
refactor(netxlite): use *Netx for creating TLS handshakers
This diff is like 50279a7 but uses *Netx to create TLS handshakers. The general idea of this patchset is to ensure we're not using duplicate code for constructing netxlite types, which is good to do now, because we're about to introduce new netxlite types for the network with which we communicate with the OONI backend. Reference issue: ooni/probe#2531
1 parent 50279a7 commit 72ed22f

File tree

2 files changed

+9
-7
lines changed

2 files changed

+9
-7
lines changed

internal/netxlite/netx.go

-6
Original file line numberDiff line numberDiff line change
@@ -22,12 +22,6 @@ func (netx *Netx) maybeCustomUnderlyingNetwork() *MaybeCustomUnderlyingNetwork {
2222
return &MaybeCustomUnderlyingNetwork{netx.Underlying}
2323
}
2424

25-
// NewTLSHandshakerStdlib is like [netxlite.NewTLSHandshakerStdlib] but the constructed [model.TLSHandshaker]
26-
// uses the [model.UnderlyingNetwork] configured inside the [Netx] structure.
27-
func (n *Netx) NewTLSHandshakerStdlib(logger model.DebugLogger) model.TLSHandshaker {
28-
return newTLSHandshakerLogger(&tlsHandshakerConfigurable{provider: n.maybeCustomUnderlyingNetwork()}, logger)
29-
}
30-
3125
// NewHTTPTransportStdlib is like [netxlite.NewHTTPTransportStdlib] but the constructed [model.HTTPTransport]
3226
// uses the [model.UnderlyingNetwork] configured inside the [Netx] structure.
3327
func (n *Netx) NewHTTPTransportStdlib(logger model.DebugLogger) model.HTTPTransport {

internal/netxlite/tls.go

+9-1
Original file line numberDiff line numberDiff line change
@@ -163,8 +163,16 @@ var _ TLSConn = &tls.Conn{}
163163
//
164164
// 3. that we are going to use Mozilla CA if the [tls.Config]
165165
// RootCAs field is zero initialized.
166+
func (netx *Netx) NewTLSHandshakerStdlib(logger model.DebugLogger) model.TLSHandshaker {
167+
return newTLSHandshakerLogger(
168+
&tlsHandshakerConfigurable{provider: netx.maybeCustomUnderlyingNetwork()}, logger)
169+
}
170+
171+
// NewTLSHandshakerStdlib is equivalent to creating an empty [*Netx]
172+
// and calling its NewTLSHandshakerStdlib method.
166173
func NewTLSHandshakerStdlib(logger model.DebugLogger) model.TLSHandshaker {
167-
return newTLSHandshakerLogger(&tlsHandshakerConfigurable{}, logger)
174+
netx := &Netx{Underlying: nil}
175+
return netx.NewTLSHandshakerStdlib(logger)
168176
}
169177

170178
// newTLSHandshakerLogger creates a new tlsHandshakerLogger instance.

0 commit comments

Comments
 (0)