diff options
Diffstat (limited to 'server/fsm.go')
-rw-r--r-- | server/fsm.go | 9 |
1 files changed, 8 insertions, 1 deletions
diff --git a/server/fsm.go b/server/fsm.go index a18901a5..e4007764 100644 --- a/server/fsm.go +++ b/server/fsm.go @@ -313,7 +313,14 @@ func (fsm *FSM) connectLoop() error { } } else { - conn, err := net.DialTimeout("tcp", host, time.Duration(MIN_CONNECT_RETRY-1)*time.Second) + var conn net.Conn + var err error + if fsm.pConf.Config.AuthPassword != "" { + deadline := (MIN_CONNECT_RETRY - 1) * 1000 // msec + conn, err = DialTCPTimeoutWithMD5Sig(addr, bgp.BGP_PORT, fsm.pConf.Config.AuthPassword, deadline) + } else { + conn, err = net.DialTimeout("tcp", host, time.Duration(MIN_CONNECT_RETRY-1)*time.Second) + } if err == nil { fsm.connCh <- conn } else { |