summaryrefslogtreecommitdiff
path: root/nest
diff options
context:
space:
mode:
Diffstat (limited to 'nest')
-rw-r--r--nest/rt-attr.c1
-rw-r--r--nest/rt-table.c7
2 files changed, 7 insertions, 1 deletions
diff --git a/nest/rt-attr.c b/nest/rt-attr.c
index 94b105d7..b553475a 100644
--- a/nest/rt-attr.c
+++ b/nest/rt-attr.c
@@ -403,6 +403,7 @@ ea_format(eattr *e, byte *buf)
bsprintf(buf, "%u", e->u.data);
break;
case EAF_TYPE_OPAQUE:
+ *buf = 0;
for(i=0; i<ad->length; i++)
{
if (buf > end - 8)
diff --git a/nest/rt-table.c b/nest/rt-table.c
index 1860b1a1..802ea5fd 100644
--- a/nest/rt-table.c
+++ b/nest/rt-table.c
@@ -443,7 +443,12 @@ rte_recalculate(rtable *table, net *net, struct proto *p, struct proto *src, rte
stats->imp_updates_ignored++;
rte_trace_in(D_ROUTES, p, new, "ignored");
rte_free_quick(new);
- old->lastmod = now;
+#ifdef CONFIG_RIP
+ /* lastmod is used internally by RIP as the last time
+ when the route was received. */
+ if (src->proto == &proto_rip)
+ old->lastmod = now;
+#endif
return;
}
*k = old->next;