summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorOndrej Zajicek (work) <santiago@crfreenet.org>2018-05-03 16:02:29 +0200
committerOndrej Zajicek (work) <santiago@crfreenet.org>2018-05-03 16:02:29 +0200
commit23b079043bea5899b49a750c4616aff5b332c50d (patch)
tree1ad8f780bb6c8599d5b5399cd48de74acf5e98f6
parent29958745c8f58cffd24e1793702524ce84545e5a (diff)
Babel: Fix type of route entry router ID
The router ID being assigned to routes was a uint, which discards the upper 32 bits. This also has the nice side effect of echoing the wrong router ID back to other routers. Thanks to Toke Hoiland-Jorgensen for the patch.
-rw-r--r--proto/babel/babel.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/proto/babel/babel.c b/proto/babel/babel.c
index 88c4711e..797a83d4 100644
--- a/proto/babel/babel.c
+++ b/proto/babel/babel.c
@@ -2133,7 +2133,7 @@ babel_rt_notify(struct proto *P, struct channel *c UNUSED, struct network *net,
uint internal = (new->attrs->src->proto == P);
uint rt_seqno = internal ? new->u.babel.seqno : p->update_seqno;
uint rt_metric = ea_get_int(attrs, EA_BABEL_METRIC, 0);
- uint rt_router_id = internal ? new->u.babel.router_id : p->router_id;
+ u64 rt_router_id = internal ? new->u.babel.router_id : p->router_id;
if (rt_metric > BABEL_INFINITY)
{