refactor(ndt7): use netxlite rather than netx (#768)
This diff required us to move some code around, but no major change actually happened, except better tests. While there, I also slightly refactored ndt7's implementation and removed the ProxyURL setting, which was actually unused. See https://github.com/ooni/probe/issues/2121
This commit is contained in:
parent
314c3c934d
commit
3265bc670a
12 changed files with 189 additions and 159 deletions
|
|
@ -4,10 +4,9 @@ import (
|
|||
"context"
|
||||
"crypto/tls"
|
||||
"net/http"
|
||||
"net/url"
|
||||
|
||||
"github.com/gorilla/websocket"
|
||||
"github.com/ooni/probe-cli/v3/internal/engine/netx/dialer"
|
||||
"github.com/ooni/probe-cli/v3/internal/bytecounter"
|
||||
"github.com/ooni/probe-cli/v3/internal/model"
|
||||
"github.com/ooni/probe-cli/v3/internal/netxlite"
|
||||
)
|
||||
|
|
@ -15,7 +14,6 @@ import (
|
|||
type dialManager struct {
|
||||
ndt7URL string
|
||||
logger model.Logger
|
||||
proxyURL *url.URL
|
||||
readBufferSize int
|
||||
userAgent string
|
||||
writeBufferSize int
|
||||
|
|
@ -32,16 +30,9 @@ func newDialManager(ndt7URL string, logger model.Logger, userAgent string) dialM
|
|||
}
|
||||
|
||||
func (mgr dialManager) dialWithTestName(ctx context.Context, testName string) (*websocket.Conn, error) {
|
||||
var reso model.Resolver = &netxlite.ResolverSystem{}
|
||||
reso = &netxlite.ResolverLogger{
|
||||
Resolver: reso,
|
||||
Logger: mgr.logger,
|
||||
}
|
||||
dlr := dialer.New(&dialer.Config{
|
||||
ContextByteCounting: true,
|
||||
Logger: mgr.logger,
|
||||
ProxyURL: mgr.proxyURL,
|
||||
}, reso)
|
||||
reso := netxlite.NewResolverStdlib(mgr.logger)
|
||||
dlr := netxlite.NewDialerWithResolver(mgr.logger, reso)
|
||||
dlr = bytecounter.NewContextAwareDialer(dlr)
|
||||
// Implements shaping if the user builds using `-tags shaping`
|
||||
// See https://github.com/ooni/probe/issues/2112
|
||||
dlr = netxlite.NewMaybeShapingDialer(dlr)
|
||||
|
|
|
|||
Loading…
Reference in a new issue