Commit e16b0aef authored by Ondrej Zajicek (work)'s avatar Ondrej Zajicek (work)
Browse files

BGP: Postpone setting link_addr

It may happen that the LLv6 address for given iface is not defined during
BGP start, so we postpone the check to the the session establishment.
parent 4659b2ae
Loading
Loading
Loading
Loading
+4 −0
Original line number Original line Diff line number Diff line
@@ -505,6 +505,10 @@ bgp_conn_enter_established_state(struct bgp_conn *conn)
  if (ipa_zero(p->source_addr))
  if (ipa_zero(p->source_addr))
    p->source_addr = conn->sk->saddr;
    p->source_addr = conn->sk->saddr;


  /* In case of LLv6 is not valid during BGP start */
  if (ipa_zero(p->link_addr) && p->neigh && p->neigh->iface && p->neigh->iface->llv6)
    p->link_addr = p->neigh->iface->llv6->ip;

  conn->sk->fast_rx = 0;
  conn->sk->fast_rx = 0;


  p->conn = conn;
  p->conn = conn;