diff options
author | Donald Sharp <sharpd@cumulusnetworks.com> | 2015-05-20 03:04:07 +0200 |
---|---|---|
committer | Donald Sharp <sharpd@cumulusnetworks.com> | 2015-05-20 03:04:07 +0200 |
commit | b69278752c25e86755fa8bf514e417e1bca03fec (patch) | |
tree | b431868c97539b846c37c6a9d63db4dfe8273f1a /ospf6d/ospf6_flood.c | |
parent | Changing router-id inline isnt handled correctly in the current implementation. (diff) | |
download | frr-b69278752c25e86755fa8bf514e417e1bca03fec.tar.xz frr-b69278752c25e86755fa8bf514e417e1bca03fec.zip |
Command to adjust min-arrival value in Milliseconds.
timers lsa min-arrival <1-60000>
Signed-off-by: Vipin Kumar <vipin@cumulusnetworks.com>
Reviewed-by: Vivek Venkatraman <vivek@cumulusnetworks.com>
Diffstat (limited to 'ospf6d/ospf6_flood.c')
-rw-r--r-- | ospf6d/ospf6_flood.c | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/ospf6d/ospf6_flood.c b/ospf6d/ospf6_flood.c index 5fe4cda8a..b17406f24 100644 --- a/ospf6d/ospf6_flood.c +++ b/ospf6d/ospf6_flood.c @@ -760,6 +760,7 @@ ospf6_receive_lsa (struct ospf6_neighbor *from, struct ospf6_lsa *new = NULL, *old = NULL, *rem = NULL; int ismore_recent; int is_debug = 0; + int time_delta_ms; ismore_recent = 1; assert (from); @@ -863,10 +864,12 @@ ospf6_receive_lsa (struct ospf6_neighbor *from, struct timeval now, res; quagga_gettime (QUAGGA_CLK_MONOTONIC, &now); timersub (&now, &old->installed, &res); - if (res.tv_sec < OSPF_MIN_LS_ARRIVAL) + time_delta_ms = (res.tv_sec * 1000) + (int)(res.tv_usec/1000); + if (time_delta_ms < from->ospf6_if->area->ospf6->lsa_minarrival) { if (is_debug) - zlog_debug ("LSA can't be updated within MinLSArrival, discard"); + zlog_debug ("LSA can't be updated within MinLSArrival, %dms < %dms, discard", + time_delta_ms, from->ospf6_if->area->ospf6->lsa_minarrival); ospf6_lsa_delete (new); return; /* examin next lsa */ } |