Skip to content

Commit ce2275b

Browse files
committed
Common dialer used in initiator
1 parent e80754d commit ce2275b

File tree

1 file changed

+7
-6
lines changed

1 file changed

+7
-6
lines changed

initiator.go

Lines changed: 7 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -35,15 +35,16 @@ func (i *Initiator) Start() (err error) {
3535
return
3636
}
3737

38-
dialTimeout := time.Duration(0)
38+
dialer := &net.Dialer{}
3939
if settings.HasSetting(config.SocketTimeout) {
40-
if dialTimeout, err = settings.DurationSetting(config.SocketTimeout); err != nil {
40+
if dialer.Timeout, err = settings.DurationSetting(config.SocketTimeout); err != nil {
4141
return
4242
}
4343
}
44+
4445
i.wg.Add(1)
4546
go func(sessID SessionID) {
46-
i.handleConnection(i.sessions[sessID], tlsConfig, dialTimeout)
47+
i.handleConnection(i.sessions[sessID], tlsConfig, dialer)
4748
i.wg.Done()
4849
}(sessionID)
4950
}
@@ -121,7 +122,7 @@ func (i *Initiator) waitForReconnectInterval(reconnectInterval time.Duration) bo
121122
return true
122123
}
123124

124-
func (i *Initiator) handleConnection(session *session, tlsConfig *tls.Config, dialTimeout time.Duration) {
125+
func (i *Initiator) handleConnection(session *session, tlsConfig *tls.Config, dialer *net.Dialer) {
125126
var wg sync.WaitGroup
126127
wg.Add(1)
127128
go func() {
@@ -150,7 +151,7 @@ func (i *Initiator) handleConnection(session *session, tlsConfig *tls.Config, di
150151

151152
var netConn net.Conn
152153
if tlsConfig != nil {
153-
tlsConn, err := tls.DialWithDialer(&net.Dialer{Timeout: dialTimeout}, "tcp", address, tlsConfig)
154+
tlsConn, err := tls.DialWithDialer(dialer, "tcp", address, tlsConfig)
154155
if err != nil {
155156
session.log.OnEventf("Failed to connect: %v", err)
156157
goto reconnect
@@ -164,7 +165,7 @@ func (i *Initiator) handleConnection(session *session, tlsConfig *tls.Config, di
164165
netConn = tlsConn
165166
} else {
166167
var err error
167-
netConn, err = net.Dial("tcp", address)
168+
netConn, err = dialer.Dial("tcp", address)
168169
if err != nil {
169170
session.log.OnEventf("Failed to connect: %v", err)
170171
goto reconnect

0 commit comments

Comments
 (0)