refactor(dialer): it should close idle connections (#457)
Like we did before for the resolver, a dialer should propagate the request to close idle connections to underlying types. See https://github.com/ooni/probe/issues/1591
This commit is contained in:
parent
a3a27b1ebf
commit
7a9499fee3
17 changed files with 207 additions and 36 deletions
|
|
@ -1,7 +1,6 @@
|
|||
package tlsdialer_test
|
||||
|
||||
import (
|
||||
"net"
|
||||
"net/http"
|
||||
"testing"
|
||||
|
||||
|
|
@ -14,7 +13,7 @@ func TestTLSDialerSuccess(t *testing.T) {
|
|||
t.Skip("skip test in short mode")
|
||||
}
|
||||
log.SetLevel(log.DebugLevel)
|
||||
dialer := &netxlite.TLSDialer{Dialer: new(net.Dialer),
|
||||
dialer := &netxlite.TLSDialer{Dialer: netxlite.DefaultDialer,
|
||||
TLSHandshaker: &netxlite.TLSHandshakerLogger{
|
||||
TLSHandshaker: &netxlite.TLSHandshakerConfigurable{},
|
||||
Logger: log.Log,
|
||||
|
|
|
|||
|
|
@ -24,7 +24,9 @@ func TestSaverTLSHandshakerSuccessWithReadWrite(t *testing.T) {
|
|||
saver := &trace.Saver{}
|
||||
tlsdlr := &netxlite.TLSDialer{
|
||||
Config: &tls.Config{NextProtos: nextprotos},
|
||||
Dialer: dialer.New(&dialer.Config{ReadWriteSaver: saver}, &net.Resolver{}),
|
||||
Dialer: netxlite.NewDialerLegacyAdapter(
|
||||
dialer.New(&dialer.Config{ReadWriteSaver: saver}, &net.Resolver{}),
|
||||
),
|
||||
TLSHandshaker: tlsdialer.SaverTLSHandshaker{
|
||||
TLSHandshaker: &netxlite.TLSHandshakerConfigurable{},
|
||||
Saver: saver,
|
||||
|
|
@ -117,7 +119,7 @@ func TestSaverTLSHandshakerSuccess(t *testing.T) {
|
|||
saver := &trace.Saver{}
|
||||
tlsdlr := &netxlite.TLSDialer{
|
||||
Config: &tls.Config{NextProtos: nextprotos},
|
||||
Dialer: new(net.Dialer),
|
||||
Dialer: netxlite.DefaultDialer,
|
||||
TLSHandshaker: tlsdialer.SaverTLSHandshaker{
|
||||
TLSHandshaker: &netxlite.TLSHandshakerConfigurable{},
|
||||
Saver: saver,
|
||||
|
|
@ -182,7 +184,7 @@ func TestSaverTLSHandshakerHostnameError(t *testing.T) {
|
|||
}
|
||||
saver := &trace.Saver{}
|
||||
tlsdlr := &netxlite.TLSDialer{
|
||||
Dialer: new(net.Dialer),
|
||||
Dialer: netxlite.DefaultDialer,
|
||||
TLSHandshaker: tlsdialer.SaverTLSHandshaker{
|
||||
TLSHandshaker: &netxlite.TLSHandshakerConfigurable{},
|
||||
Saver: saver,
|
||||
|
|
@ -215,7 +217,7 @@ func TestSaverTLSHandshakerInvalidCertError(t *testing.T) {
|
|||
}
|
||||
saver := &trace.Saver{}
|
||||
tlsdlr := &netxlite.TLSDialer{
|
||||
Dialer: new(net.Dialer),
|
||||
Dialer: netxlite.DefaultDialer,
|
||||
TLSHandshaker: tlsdialer.SaverTLSHandshaker{
|
||||
TLSHandshaker: &netxlite.TLSHandshakerConfigurable{},
|
||||
Saver: saver,
|
||||
|
|
@ -248,7 +250,7 @@ func TestSaverTLSHandshakerAuthorityError(t *testing.T) {
|
|||
}
|
||||
saver := &trace.Saver{}
|
||||
tlsdlr := &netxlite.TLSDialer{
|
||||
Dialer: new(net.Dialer),
|
||||
Dialer: netxlite.DefaultDialer,
|
||||
TLSHandshaker: tlsdialer.SaverTLSHandshaker{
|
||||
TLSHandshaker: &netxlite.TLSHandshakerConfigurable{},
|
||||
Saver: saver,
|
||||
|
|
@ -282,7 +284,7 @@ func TestSaverTLSHandshakerNoTLSVerify(t *testing.T) {
|
|||
saver := &trace.Saver{}
|
||||
tlsdlr := &netxlite.TLSDialer{
|
||||
Config: &tls.Config{InsecureSkipVerify: true},
|
||||
Dialer: new(net.Dialer),
|
||||
Dialer: netxlite.DefaultDialer,
|
||||
TLSHandshaker: tlsdialer.SaverTLSHandshaker{
|
||||
TLSHandshaker: &netxlite.TLSHandshakerConfigurable{},
|
||||
Saver: saver,
|
||||
|
|
|
|||
Loading…
Reference in a new issue