summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorOndrej Zajicek <santiago@crfreenet.org>2010-02-08 12:42:09 +0100
committerOndrej Zajicek <santiago@crfreenet.org>2010-02-08 12:42:09 +0100
commit5a56f27cd00c2cad661aed9b54696699e800883c (patch)
treecaa18423466f93b6bc34df0511f4bd6d2519f04a
parentaa80826e4af4e6e0a6de5604ab5ce7991f2a8b4e (diff)
Adds asterisk to the primary route in 'show route' cmd.
And also fixes a minor bug.
-rw-r--r--nest/proto.c1
-rw-r--r--nest/rt-table.c4
2 files changed, 4 insertions, 1 deletions
diff --git a/nest/proto.c b/nest/proto.c
index e19c3948..870edddd 100644
--- a/nest/proto.c
+++ b/nest/proto.c
@@ -311,6 +311,7 @@ proto_reconfigure(struct proto *p, struct proto_config *oc, struct proto_config
p->name = nc->name;
p->in_filter = nc->in_filter;
p->out_filter = nc->out_filter;
+ p->preference = nc->preference;
if (import_changed || export_changed)
log(L_INFO "Reloading protocol %s", p->name);
diff --git a/nest/rt-table.c b/nest/rt-table.c
index ed7ecd57..413675c9 100644
--- a/nest/rt-table.c
+++ b/nest/rt-table.c
@@ -1116,6 +1116,7 @@ rt_show_rte(struct cli *c, byte *ia, rte *e, struct rt_show_data *d, ea_list *tm
byte via[STD_ADDRESS_P_LENGTH+32], from[STD_ADDRESS_P_LENGTH+6];
byte tm[TM_DATETIME_BUFFER_SIZE], info[256];
rta *a = e->attrs;
+ int primary = (e->net->routes == e);
rt_format_via(e, via);
tm_format_datetime(tm, &config->tf_route, e->lastmod);
@@ -1136,7 +1137,8 @@ rt_show_rte(struct cli *c, byte *ia, rte *e, struct rt_show_data *d, ea_list *tm
a->proto->proto->get_route_info(e, info, tmpa);
else
bsprintf(info, " (%d)", e->pref);
- cli_printf(c, -1007, "%-18s %s [%s %s%s]%s", ia, via, a->proto->name, tm, from, info);
+ cli_printf(c, -1007, "%-18s %s [%s %s%s]%s%s", ia, via, a->proto->name,
+ tm, from, primary ? " *" : "", info);
if (d->verbose)
rta_show(c, a, tmpa);
}