ooni-probe-cli/internal/netxlite
Simone Basso c1b06a2d09
fix(netxlite): prefer composition over embedding (#733)
This diff has been extracted and adapted from 8848c8c516

The reason to prefer composition over embedding is that we want the
build to break if we add new methods to interfaces we define. If the build
does not break, we may forget about wrapping methods we should
actually be wrapping. I noticed this issue inside netxlite when I was working
on websteps-illustrated and I added support for NS and PTR queries.

See https://github.com/ooni/probe/issues/2096

While there, perform comprehensive netxlite code review
and apply minor changes and improve the docs.
2022-05-15 19:25:27 +02:00
..
filtering refactor(netxlite): add Transport suffix to DNS transports (#731) 2022-05-14 17:38:31 +02:00
internal fix(netxlite): reject replies with wrong queryID (#732) 2022-05-14 19:38:46 +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 chore: import improved bogons handling code (#723) 2022-05-13 15:32:47 +02:00
bogon.go fix(netxlite): prefer composition over embedding (#733) 2022-05-15 19:25:27 +02:00
certifi_test.go netxlite: improve docs, tests, and code quality (#493) 2021-09-08 21:19:51 +02:00
certifi.go chore: support go1.18 and update dependencies (#708) 2022-04-12 11:43:12 +02:00
classify_test.go fix(netxlite): reject replies with wrong queryID (#732) 2022-05-14 19:38:46 +02:00
classify.go fix(netxlite): prefer composition over embedding (#733) 2022-05-15 19:25:27 +02:00
dialer_test.go fix(netxlite): prefer composition over embedding (#733) 2022-05-15 19:25:27 +02:00
dialer.go fix(netxlite): prefer composition over embedding (#733) 2022-05-15 19:25:27 +02:00
dnsdecoder_test.go fix(netxlite): reject replies with wrong queryID (#732) 2022-05-14 19:38:46 +02:00
dnsdecoder.go fix(netxlite): prefer composition over embedding (#733) 2022-05-15 19:25:27 +02:00
dnsencoder_test.go fix(netxlite): reject replies with wrong queryID (#732) 2022-05-14 19:38:46 +02:00
dnsencoder.go fix(netxlite): prefer composition over embedding (#733) 2022-05-15 19:25:27 +02:00
dnsoverhttps_test.go refactor(netxlite): add Transport suffix to DNS transports (#731) 2022-05-14 17:38:31 +02:00
dnsoverhttps.go fix(netxlite): prefer composition over embedding (#733) 2022-05-15 19:25:27 +02:00
dnsovertcp_test.go refactor(netxlite): add Transport suffix to DNS transports (#731) 2022-05-14 17:38:31 +02:00
dnsovertcp.go fix(netxlite): prefer composition over embedding (#733) 2022-05-15 19:25:27 +02:00
dnsoverudp_test.go refactor(netxlite): add Transport suffix to DNS transports (#731) 2022-05-14 17:38:31 +02:00
dnsoverudp.go fix(netxlite): prefer composition over embedding (#733) 2022-05-15 19:25:27 +02:00
doc.go fix(netxlite): prefer composition over embedding (#733) 2022-05-15 19:25:27 +02:00
errno_darwin_test.go chore: support go1.18 and update dependencies (#708) 2022-04-12 11:43:12 +02:00
errno_darwin.go chore: support go1.18 and update dependencies (#708) 2022-04-12 11:43:12 +02:00
errno_freebsd_test.go chore: support go1.18 and update dependencies (#708) 2022-04-12 11:43:12 +02:00
errno_freebsd.go chore: support go1.18 and update dependencies (#708) 2022-04-12 11:43:12 +02:00
errno_linux_test.go chore: support go1.18 and update dependencies (#708) 2022-04-12 11:43:12 +02:00
errno_linux.go chore: support go1.18 and update dependencies (#708) 2022-04-12 11:43:12 +02:00
errno_openbsd_test.go chore: support go1.18 and update dependencies (#708) 2022-04-12 11:43:12 +02:00
errno_openbsd.go chore: support go1.18 and update dependencies (#708) 2022-04-12 11:43:12 +02:00
errno_windows_test.go chore: support go1.18 and update dependencies (#708) 2022-04-12 11:43:12 +02:00
errno_windows.go chore: support go1.18 and update dependencies (#708) 2022-04-12 11:43:12 +02:00
errno.go fix(netxlite): reject replies with wrong queryID (#732) 2022-05-14 19:38:46 +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
http_test.go fix(netxlite): prefer composition over embedding (#733) 2022-05-15 19:25:27 +02:00
http.go fix(netxlite): prefer composition over embedding (#733) 2022-05-15 19:25:27 +02:00
http3_test.go cli: upgrade to lucas-clemente/quic-go@v0.27.0 (#715) 2022-05-06 12:24:03 +02:00
http3.go fix(netxlite): prefer composition over embedding (#733) 2022-05-15 19:25:27 +02:00
integration_test.go feature: merge measurex and netx archival layer (1/N) (#663) 2022-01-14 12:13:10 +01: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(netxlite): prefer composition over embedding (#733) 2022-05-15 19:25:27 +02:00
operations.go fix(netxlite): prefer composition over embedding (#733) 2022-05-15 19:25:27 +02:00
parallelresolver_test.go fix(netxlite): reject replies with wrong queryID (#732) 2022-05-14 19:38:46 +02:00
parallelresolver.go fix(netxlite): prefer composition over embedding (#733) 2022-05-15 19:25:27 +02:00
quic_test.go netxlite: factor common code for parsing UDPAddr (#730) 2022-05-14 17:15:08 +02:00
quic.go fix(netxlite): prefer composition over embedding (#733) 2022-05-15 19:25:27 +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
resolver_test.go fix(netxlite): prefer composition over embedding (#733) 2022-05-15 19:25:27 +02:00
resolver.go fix(netxlite): prefer composition over embedding (#733) 2022-05-15 19:25:27 +02:00
serialresolver_test.go fix(netxlite): reject replies with wrong queryID (#732) 2022-05-14 19:38:46 +02:00
serialresolver.go fix(netxlite): prefer composition over embedding (#733) 2022-05-15 19:25:27 +02:00
tls_test.go fix(netxlite): prefer composition over embedding (#733) 2022-05-15 19:25:27 +02:00
tls.go fix(netxlite): prefer composition over embedding (#733) 2022-05-15 19:25:27 +02:00
tproxy.go fix(netxlite): prefer composition over embedding (#733) 2022-05-15 19:25:27 +02:00
utls_test.go refactor: interfaces and data types into the model package (#642) 2022-01-03 13:53:23 +01:00
utls.go fix(netxlite): prefer composition over embedding (#733) 2022-05-15 19:25:27 +02:00