ooni-probe-cli/internal/netxlite
Simone Basso ba5bae4769
refactor(netxlite): let NewHTTPTransport work with single-use dialers (#467)
To make this happen, we need to take as argument a TLSDialer rather than
a TLSHandshaker. Then, we need to arrange the code so that we always
enforce a timeout for both TCP and TLS connections.

Because a TLSDialer can be constructed with a custom TLSConfig, we cover
also the case where the users wants to provide such a config.

While there, make sure we have better unit tests of the HTTP code.

See https://github.com/ooni/probe/issues/1591
2021-09-06 19:27:59 +02:00
..
internal/generator refactor(netxlite): hide details without breaking the rest of the tree (#454) 2021-09-05 14:49:38 +02:00
iox refactor(netxlite): hide details without breaking the rest of the tree (#454) 2021-09-05 14:49:38 +02:00
mocks fix(netxlite): http factory that propagates close-idle-connections (#465) 2021-09-06 16:53:28 +02:00
quicx refactor(netxlite): hide details without breaking the rest of the tree (#454) 2021-09-05 14:49:38 +02:00
certifi.go refactor(netxlite): hide details without breaking the rest of the tree (#454) 2021-09-05 14:49:38 +02:00
dialer_test.go feat(netxlite): implement single use {,tls} dialer (#464) 2021-09-06 14:12:30 +02:00
dialer.go feat(netxlite): implement single use {,tls} dialer (#464) 2021-09-06 14:12:30 +02:00
doc.go refactor: start pivoting netx (#396) 2021-06-23 15:53:12 +02:00
http_test.go refactor(netxlite): let NewHTTPTransport work with single-use dialers (#467) 2021-09-06 19:27:59 +02:00
http.go refactor(netxlite): let NewHTTPTransport work with single-use dialers (#467) 2021-09-06 19:27:59 +02:00
http3_test.go feat(netxlite): add dialer factory, simplify resolver factory (#459) 2021-09-05 20:41:46 +02:00
http3.go refactor: introduce factory for stdlib http transport (#413) 2021-07-01 15:26:08 +02:00
legacy_test.go refactor(dialer): it should close idle connections (#457) 2021-09-05 19:55:28 +02:00
legacy.go feat(netxlite): implement single use {,tls} dialer (#464) 2021-09-06 14:12:30 +02:00
logger.go refactor: move httptransport w/ logging to netxlite (#411) 2021-06-26 18:11:47 +02:00
quic_test.go feat(netxlite): add dialer factory, simplify resolver factory (#459) 2021-09-05 20:41:46 +02:00
quic.go refactor(netxlite): hide details without breaking the rest of the tree (#454) 2021-09-05 14:49:38 +02:00
resolver_test.go feat(netxlite): add dialer factory, simplify resolver factory (#459) 2021-09-05 20:41:46 +02:00
resolver.go feat(netxlite): add dialer factory, simplify resolver factory (#459) 2021-09-05 20:41:46 +02:00
tls_test.go feat(netxlite): implement single use {,tls} dialer (#464) 2021-09-06 14:12:30 +02:00
tls.go feat(netxlite): implement single use {,tls} dialer (#464) 2021-09-06 14:12:30 +02:00
utls_test.go fix(netxlite): gracefully handle utls panics (#462) 2021-09-05 21:41:49 +02:00
utls.go fix(netxlite): gracefully handle utls panics (#462) 2021-09-05 21:41:49 +02:00