MRT: Fix MP-BGP next hops
Flag signalling that MP-BGP mode should be used got reset after first batch of routes, so remaining routes were processed without that, leading to missing MP_REACH_NLRI attribute. Thanks to Piotr Wydrych for the bugreport.
This commit is contained in:
parent
df83f62697
commit
5d414309ec
1 changed files with 1 additions and 1 deletions
|
@ -244,7 +244,6 @@ mrt_next_table(struct mrt_table_dump_state *s)
|
||||||
|
|
||||||
s->table = tab;
|
s->table = tab;
|
||||||
s->ipv4 = tab ? (tab->addr_type == NET_IP4) : 0;
|
s->ipv4 = tab ? (tab->addr_type == NET_IP4) : 0;
|
||||||
s->bws->mp_reach = !s->ipv4;
|
|
||||||
|
|
||||||
if (s->table)
|
if (s->table)
|
||||||
rt_lock_table(s->table);
|
rt_lock_table(s->table);
|
||||||
|
@ -434,6 +433,7 @@ mrt_rib_table_entry_bgp_attrs(struct mrt_table_dump_state *s, rte *r)
|
||||||
mrt_buffer_need(b, MRT_ATTR_BUFFER_SIZE);
|
mrt_buffer_need(b, MRT_ATTR_BUFFER_SIZE);
|
||||||
byte *pos = b->pos;
|
byte *pos = b->pos;
|
||||||
|
|
||||||
|
s->bws->mp_reach = !s->ipv4;
|
||||||
s->bws->mp_next_hop = NULL;
|
s->bws->mp_next_hop = NULL;
|
||||||
|
|
||||||
/* Encode BGP attributes */
|
/* Encode BGP attributes */
|
||||||
|
|
Loading…
Reference in a new issue