summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--ripd/ChangeLog3
-rw-r--r--ripd/rip_routemap.c2
2 files changed, 4 insertions, 1 deletions
diff --git a/ripd/ChangeLog b/ripd/ChangeLog
index afae7e98..68813f14 100644
--- a/ripd/ChangeLog
+++ b/ripd/ChangeLog
@@ -2,6 +2,9 @@
* ripd.c: (rip_read) remove gratuitous use of mid-function
declaration of vrecv, bug #278.
+ * rip_routemap.c: (route_set_metric) underflow check needs to
+ use signed, problem identified and diagnosed by Pavel
+ Nikiforov in bug #293.
2006-06-29 Paul Jakma <paul.jakma@sun.com>
diff --git a/ripd/rip_routemap.c b/ripd/rip_routemap.c
index 9d6fd16e..cb87ea55 100644
--- a/ripd/rip_routemap.c
+++ b/ripd/rip_routemap.c
@@ -530,7 +530,7 @@ route_set_metric (void *rule, struct prefix *prefix,
else if (mod->type == metric_absolute)
rinfo->metric_out = mod->metric;
- if (rinfo->metric_out < 1)
+ if ((signed int)rinfo->metric_out < 1)
rinfo->metric_out = 1;
if (rinfo->metric_out > RIP_METRIC_INFINITY)
rinfo->metric_out = RIP_METRIC_INFINITY;