ooni-probe-cli/internal/netxlite
Simone Basso c6b3889a33
fix(netx): ensure we create ~same HTTP3 and HTTP2 transports (#795)
1. Use the netxlite.NewHTTPTransport factory for creating a new
HTTP2 (and HTTP1) transport;

2. Recognize the netxlite.NewOOHTTPTransport has now become
an implementation detail so make it private;

3. Recognize that netxlite.NewHTTP3Transport should call
netxlite.WrapTransport so it returns the same typechain
returned by netxlite.NewHTTPTransport (modulo, of course,
the real underlying transport), so ensure that we are
calling netxlite.WrapTransport in NewHTTP3Transport;

4. Recognize that the table based constructor inside of
netx needs a logger to create HTTPTransport instances using
either netxlite.NewHTTP{,3}Transport so pass this argument
along and ensure it's not nil using a constructor inside
model that guarantees that;

5. Cleanup netx's tests to avoid type asserting on the
typechains returned by netxlite since we already test
that inside netxlite;

6. Recognize that now we can make more legacy names inside
of netxlite private because we don't need to use them
inside tests anymore (because of previous point).

Reference issue: https://github.com/ooni/probe/issues/2121
2022-06-05 17:41:06 +02:00
..
filtering cleanup(jafar): do not depend on netx and urlgetter (#792) 2022-06-02 22:25:37 +02:00
internal netxlite: call getaddrinfo and handle platform-specific oddities (#764) 2022-05-28 15:10:30 +02:00
mocks cli: upgrade to lucas-clemente/quic-go@v0.27.0 (#715) 2022-05-06 12:24:03 +02:00
quictesting [forwardport] fix: avoid http3 for dns.google and www.google.com (#593) (#594) 2021-11-12 14:43:28 +01:00
bogon_test.go refactor: continue to simplify engine/netx (#769) 2022-05-31 08:11:07 +02:00
bogon.go refactor: continue to simplify engine/netx (#769) 2022-05-31 08:11:07 +02:00
certifi_test.go netxlite: improve docs, tests, and code quality (#493) 2021-09-08 21:19:51 +02:00
certifi.go netxlite: call getaddrinfo and handle platform-specific oddities (#764) 2022-05-28 15:10:30 +02:00
classify_test.go netxlite: call getaddrinfo and handle platform-specific oddities (#764) 2022-05-28 15:10:30 +02:00
classify.go netxlite: call getaddrinfo and handle platform-specific oddities (#764) 2022-05-28 15:10:30 +02:00
dialer_test.go refactor(netxlite): introduce the getaddrinfo transport (#775) 2022-06-01 09:59:44 +02:00
dialer.go refactor(netxlite): better integration with tracex (#774) 2022-06-01 08:31:20 +02:00
dnsdecoder_test.go refactor: DNSTransport I/Os DNS messages (#760) 2022-05-25 17:03:58 +02:00
dnsdecoder.go refactor: DNSTransport I/Os DNS messages (#760) 2022-05-25 17:03:58 +02:00
dnsencoder_test.go refactor: DNSTransport I/Os DNS messages (#760) 2022-05-25 17:03:58 +02:00
dnsencoder.go refactor: DNSTransport I/Os DNS messages (#760) 2022-05-25 17:03:58 +02:00
dnsovergetaddrinfo_test.go refactor(netxlite): introduce the getaddrinfo transport (#775) 2022-06-01 09:59:44 +02:00
dnsovergetaddrinfo.go refactor(netxlite): introduce the getaddrinfo transport (#775) 2022-06-01 09:59:44 +02:00
dnsoverhttps_test.go feat(netxlite): implement DNSTransport wrapping (#776) 2022-06-01 11:10:08 +02:00
dnsoverhttps.go feat(netxlite): implement DNSTransport wrapping (#776) 2022-06-01 11:10:08 +02:00
dnsovertcp_test.go feat(netxlite): implement DNSTransport wrapping (#776) 2022-06-01 11:10:08 +02:00
dnsovertcp.go feat(netxlite): implement DNSTransport wrapping (#776) 2022-06-01 11:10:08 +02:00
dnsoverudp_test.go feat(netxlite): implement DNSTransport wrapping (#776) 2022-06-01 11:10:08 +02:00
dnsoverudp.go feat(netxlite): implement DNSTransport wrapping (#776) 2022-06-01 11:10:08 +02:00
dnstransport_test.go feat(netxlite): implement DNSTransport wrapping (#776) 2022-06-01 11:10:08 +02:00
dnstransport.go feat(netxlite): implement DNSTransport wrapping (#776) 2022-06-01 11:10:08 +02:00
doc.go netxlite: call getaddrinfo and handle platform-specific oddities (#764) 2022-05-28 15:10:30 +02:00
errno_darwin_test.go netxlite: call getaddrinfo and handle platform-specific oddities (#764) 2022-05-28 15:10:30 +02:00
errno_darwin.go netxlite: call getaddrinfo and handle platform-specific oddities (#764) 2022-05-28 15:10:30 +02:00
errno_freebsd_test.go netxlite: call getaddrinfo and handle platform-specific oddities (#764) 2022-05-28 15:10:30 +02:00
errno_freebsd.go netxlite: call getaddrinfo and handle platform-specific oddities (#764) 2022-05-28 15:10:30 +02:00
errno_linux_test.go netxlite: call getaddrinfo and handle platform-specific oddities (#764) 2022-05-28 15:10:30 +02:00
errno_linux.go netxlite: call getaddrinfo and handle platform-specific oddities (#764) 2022-05-28 15:10:30 +02:00
errno_openbsd_test.go netxlite: call getaddrinfo and handle platform-specific oddities (#764) 2022-05-28 15:10:30 +02:00
errno_openbsd.go netxlite: call getaddrinfo and handle platform-specific oddities (#764) 2022-05-28 15:10:30 +02:00
errno_windows_test.go netxlite: call getaddrinfo and handle platform-specific oddities (#764) 2022-05-28 15:10:30 +02:00
errno_windows.go netxlite: call getaddrinfo and handle platform-specific oddities (#764) 2022-05-28 15:10:30 +02:00
errno.go netxlite: call getaddrinfo and handle platform-specific oddities (#764) 2022-05-28 15:10:30 +02:00
errwrapper_test.go fix(netxlite): prefer composition over embedding (#733) 2022-05-15 19:25:27 +02:00
errwrapper.go fix(netxlite): prefer composition over embedding (#733) 2022-05-15 19:25:27 +02:00
getaddrinfo_bsd_test.go getaddrinfo: fix CGO_ENABLED=0 and record resolver type (#765) 2022-05-30 07:34:25 +02:00
getaddrinfo_bsd.go netxlite: call getaddrinfo and handle platform-specific oddities (#764) 2022-05-28 15:10:30 +02:00
getaddrinfo_cgo.go chore: improve testing and increase coverage (#794) 2022-06-04 14:58:48 +02:00
getaddrinfo_linux_test.go netxlite: call getaddrinfo and handle platform-specific oddities (#764) 2022-05-28 15:10:30 +02:00
getaddrinfo_linux.go netxlite: call getaddrinfo and handle platform-specific oddities (#764) 2022-05-28 15:10:30 +02:00
getaddrinfo_otherwise.go netxlite: do not call netgo the CGO_ENABLED=0 resolver (#766) 2022-05-30 10:06:53 +02:00
getaddrinfo_test.go netxlite: call getaddrinfo and handle platform-specific oddities (#764) 2022-05-28 15:10:30 +02:00
getaddrinfo_windows_test.go getaddrinfo: fix CGO_ENABLED=0 and record resolver type (#765) 2022-05-30 07:34:25 +02:00
getaddrinfo_windows.go netxlite: call getaddrinfo and handle platform-specific oddities (#764) 2022-05-28 15:10:30 +02:00
getaddrinfo.go netxlite: call getaddrinfo and handle platform-specific oddities (#764) 2022-05-28 15:10:30 +02:00
http_test.go chore: improve testing and increase coverage (#794) 2022-06-04 14:58:48 +02:00
http.go fix(netx): ensure we create ~same HTTP3 and HTTP2 transports (#795) 2022-06-05 17:41:06 +02:00
http3_test.go fix(netx): ensure we create ~same HTTP3 and HTTP2 transports (#795) 2022-06-05 17:41:06 +02:00
http3.go fix(netx): ensure we create ~same HTTP3 and HTTP2 transports (#795) 2022-06-05 17:41:06 +02:00
integration_test.go refactor(netx): use netxlite to build TLSDialer (#790) 2022-06-02 17:39:48 +02:00
iox_test.go fix(netxlite): prefer composition over embedding (#733) 2022-05-15 19:25:27 +02:00
iox.go fix(netxlite): prefer composition over embedding (#733) 2022-05-15 19:25:27 +02:00
legacy.go fix(netx): ensure we create ~same HTTP3 and HTTP2 transports (#795) 2022-06-05 17:41:06 +02:00
maybeproxy_test.go refactor(session.go): replace engine/netx with netxlite (#767) 2022-05-30 22:00:45 +02:00
maybeproxy.go refactor(session.go): replace engine/netx with netxlite (#767) 2022-05-30 22:00:45 +02:00
operations.go feat(netxlite): implement DNSTransport wrapping (#776) 2022-06-01 11:10:08 +02:00
quic_test.go chore: improve testing and increase coverage (#794) 2022-06-04 14:58:48 +02:00
quic.go chore: improve testing and increase coverage (#794) 2022-06-04 14:58:48 +02:00
quirks_test.go fix(netxlite): prefer composition over embedding (#733) 2022-05-15 19:25:27 +02:00
quirks.go fix(netxlite): prefer composition over embedding (#733) 2022-05-15 19:25:27 +02:00
resolvercore_test.go cleanup(jafar): do not depend on netx and urlgetter (#792) 2022-06-02 22:25:37 +02:00
resolvercore.go cleanup(jafar): do not depend on netx and urlgetter (#792) 2022-06-02 22:25:37 +02:00
resolverparallel_test.go feat(netxlite): implement DNSTransport wrapping (#776) 2022-06-01 11:10:08 +02:00
resolverparallel.go chore: improve testing and increase coverage (#794) 2022-06-04 14:58:48 +02:00
resolverserial_test.go feat(netxlite): implement DNSTransport wrapping (#776) 2022-06-01 11:10:08 +02:00
resolverserial.go chore: improve testing and increase coverage (#794) 2022-06-04 14:58:48 +02:00
shaping_otherwise_test.go refactor: only use shaping dialer for ndt7 and dash (#754) 2022-05-24 18:23:42 +02:00
shaping_otherwise.go refactor: only use shaping dialer for ndt7 and dash (#754) 2022-05-24 18:23:42 +02:00
shaping_shaping_test.go refactor: only use shaping dialer for ndt7 and dash (#754) 2022-05-24 18:23:42 +02:00
shaping_shaping.go refactor: only use shaping dialer for ndt7 and dash (#754) 2022-05-24 18:23:42 +02:00
shaping.go refactor: only use shaping dialer for ndt7 and dash (#754) 2022-05-24 18:23:42 +02:00
tls_test.go refactor(netx): use netxlite to build TLSDialer (#790) 2022-06-02 17:39:48 +02:00
tls.go refactor(netx): use netxlite to build TLSDialer (#790) 2022-06-02 17:39:48 +02:00
tproxy.go getaddrinfo: fix CGO_ENABLED=0 and record resolver type (#765) 2022-05-30 07:34:25 +02:00
utls_test.go refactor: use ooni/oocrypto instead of ooni/go (#751) 2022-05-22 19:53:37 +02:00
utls.go refactor: use ooni/oocrypto instead of ooni/go (#751) 2022-05-22 19:53:37 +02:00