summaryrefslogtreecommitdiff
path: root/nest/rt-table.c
diff options
context:
space:
mode:
authorMaria Matejka <mq@ucw.cz>2022-04-20 10:25:14 +0200
committerMaria Matejka <mq@ucw.cz>2022-05-04 15:39:21 +0200
commitd8661a4397e4576ac404661b192dd99d928e7890 (patch)
treee158c76950fc1909c3a6d97f7eec44aecab03278 /nest/rt-table.c
parent17f91f9e6e70f7e3f29502e854823c0d48571eaa (diff)
Joined the RTA igp_metric and EA igp_metric attributes
Diffstat (limited to 'nest/rt-table.c')
-rw-r--r--nest/rt-table.c6
1 files changed, 4 insertions, 2 deletions
diff --git a/nest/rt-table.c b/nest/rt-table.c
index af59d63b..01194e02 100644
--- a/nest/rt-table.c
+++ b/nest/rt-table.c
@@ -2386,7 +2386,8 @@ rta_apply_hostentry(rta *a, struct hostentry *he, mpls_label_stack *mls)
{
a->hostentry = he;
a->dest = he->dest;
- a->igp_metric = he->igp_metric;
+
+ ea_set_attr_u32(&a->eattrs, &ea_gen_igp_metric, 0, he->igp_metric);
if (a->dest != RTD_UNICAST)
{
@@ -2483,7 +2484,8 @@ rta_next_hop_outdated(rta *a)
if (!he->src)
return a->dest != RTD_UNREACHABLE;
- return (a->dest != he->dest) || (a->igp_metric != he->igp_metric) ||
+ return (a->dest != he->dest) ||
+ (ea_get_int(a->eattrs, &ea_gen_igp_metric, IGP_METRIC_UNKNOWN) != he->igp_metric) ||
(!he->nexthop_linkable) || !nexthop_same(&(a->nh), &(he->src->nh));
}