diff options
Diffstat (limited to 'server/fsm.go')
-rw-r--r-- | server/fsm.go | 19 |
1 files changed, 3 insertions, 16 deletions
diff --git a/server/fsm.go b/server/fsm.go index a2b04c6b..215b8803 100644 --- a/server/fsm.go +++ b/server/fsm.go @@ -214,25 +214,12 @@ func (fsm *FSM) connectLoop() error { connect := func() { if fsm.state == bgp.BGP_FSM_ACTIVE { - var host string - var lhost string - addr := fsm.pConf.NeighborConfig.NeighborAddress - - if addr.To4() != nil { - host = addr.String() + ":" + strconv.Itoa(bgp.BGP_PORT) - } else { - host = "[" + addr.String() + "]:" + strconv.Itoa(bgp.BGP_PORT) - } - - // check if LocalAddress has been configured in Neighbors.NeighborList.Transport.TransportConfig stanza. + host := net.JoinHostPort(addr.String(), strconv.Itoa(bgp.BGP_PORT)) + // check if LocalAddress has been configured laddr := fsm.pConf.Transport.TransportConfig.LocalAddress if laddr != nil { - if laddr.To4() != nil { - lhost = laddr.String() + ":0" - } else { - lhost = "[" + laddr.String() + "]:0" - } + lhost := net.JoinHostPort(laddr.String(), "0") ltcpaddr, err := net.ResolveTCPAddr("tcp", lhost) if err != nil { log.WithFields(log.Fields{ |