From: Paul Jakma Date: Mon, 11 Sep 2006 02:14:16 +0000 (+0000) Subject: [ripd] bug #293: routemap set metric doesn't check for underflow correctly X-Git-Tag: frr-2.0-rc1~2601 X-Git-Url: https://git.puffer.fish/?a=commitdiff_plain;h=b25ea4d085c858137ec28b1be9d6ab6c30a97303;p=matthieu%2Ffrr.git [ripd] bug #293: routemap set metric doesn't check for underflow correctly 2006-09-11 Paul Jakma * rip_routemap.c: (route_set_metric) underflow check needs to use signed, problem identified and diagnosed by Pavel Nikiforov in bug #293. --- diff --git a/ripd/ChangeLog b/ripd/ChangeLog index afae7e9868..68813f14af 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 diff --git a/ripd/rip_routemap.c b/ripd/rip_routemap.c index 9d6fd16e58..cb87ea555a 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;