summaryrefslogtreecommitdiff
path: root/proto/bgp/packets.c
diff options
context:
space:
mode:
authorOndrej Zajicek (work) <santiago@crfreenet.org>2018-09-27 22:57:55 +0200
committerOndrej Zajicek (work) <santiago@crfreenet.org>2018-12-12 14:46:24 +0100
commit682d3f7de0905ca2e853844734cce7ff65f7d77d (patch)
treee84ab31b4c5b7e99a283cf4c2faf2523dd5d884c /proto/bgp/packets.c
parent01fd00f5ed9298ab5829403cd7a8a9ba22bcc96a (diff)
BGP: implement Adj-RIB-In
The patch implements optional internal import table to a channel and hooks it to BGP so it can be used as Adj-RIB-In. When enabled, all received (pre-filtered) routes are stored there and import filters can be re-evaluated without explicit route refresh. An import table can be examined using e.g. 'show route import table bgp1.ipv4'.
Diffstat (limited to 'proto/bgp/packets.c')
-rw-r--r--proto/bgp/packets.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/proto/bgp/packets.c b/proto/bgp/packets.c
index 3be48c00..c2261870 100644
--- a/proto/bgp/packets.c
+++ b/proto/bgp/packets.c
@@ -1159,7 +1159,7 @@ bgp_rte_update(struct bgp_parse_state *s, net_addr *n, u32 path_id, rta *a0)
if (!a0)
{
/* Route withdraw */
- rte_update2(&s->channel->c, n, NULL, s->last_src);
+ rte_update3(&s->channel->c, n, NULL, s->last_src);
return;
}
@@ -1180,7 +1180,7 @@ bgp_rte_update(struct bgp_parse_state *s, net_addr *n, u32 path_id, rta *a0)
e->pflags = 0;
e->u.bgp.suppressed = 0;
e->u.bgp.stale = -1;
- rte_update2(&s->channel->c, n, e, s->last_src);
+ rte_update3(&s->channel->c, n, e, s->last_src);
}
static void