diff --git a/bgpd/bgp_network.c b/bgpd/bgp_network.c index debb87a1fe..b02eabadca 100644 --- a/bgpd/bgp_network.c +++ b/bgpd/bgp_network.c @@ -409,6 +409,7 @@ bgp_accept (struct thread *thread) peer = peer_create (&su, peer1->conf_if, peer1->bgp, peer1->local_as, peer1->as, peer1->as_type, 0, 0); + peer->su = su; peer_xfer_config(peer, peer1); UNSET_FLAG (peer->flags, PEER_FLAG_CONFIG_NODE); diff --git a/bgpd/bgpd.c b/bgpd/bgpd.c index aa470b73fd..478ec85651 100644 --- a/bgpd/bgpd.c +++ b/bgpd/bgpd.c @@ -1389,7 +1389,6 @@ peer_create (union sockunion *su, const char *conf_if, struct bgp *bgp, if (conf_if) { peer->conf_if = XSTRDUP (MTYPE_PEER_CONF_IF, conf_if); - bgp_peer_conf_if_to_su_update(peer); if (peer->host) XFREE(MTYPE_BGP_PEER_HOST, peer->host); peer->host = XSTRDUP (MTYPE_BGP_PEER_HOST, conf_if);