From: Christian Franke Date: Tue, 27 Nov 2012 19:51:59 +0000 (+0000) Subject: isisd: fix metrics check for metric-style narrow X-Git-Tag: frr-2.0-rc1~1730 X-Git-Url: https://git.puffer.fish/?a=commitdiff_plain;h=4fb7c84f1b5e282c7dc413a578d3f42353ac7fec;p=matthieu%2Ffrr.git isisd: fix metrics check for metric-style narrow When switching to narrow metric style, all configured circuits are verified to have a valid narrow style metric. Check te_metric instead of metric_default as the latter is only 8bit wide and may overflow for wide style metrics. Signed-off-by: Christian Franke Signed-off-by: David Lamparter --- diff --git a/isisd/isisd.c b/isisd/isisd.c index 47675f0af5..28cd051994 100644 --- a/isisd/isisd.c +++ b/isisd/isisd.c @@ -2054,7 +2054,7 @@ validate_metric_style_narrow (struct vty *vty, struct isis_area *area) { if ((area->is_type & IS_LEVEL_1) && (circuit->is_type & IS_LEVEL_1) && - (circuit->metrics[0].metric_default > MAX_NARROW_LINK_METRIC)) + (circuit->te_metric[0] > MAX_NARROW_LINK_METRIC)) { vty_out (vty, "ISIS circuit %s metric is invalid%s", circuit->interface->name, VTY_NEWLINE); @@ -2062,7 +2062,7 @@ validate_metric_style_narrow (struct vty *vty, struct isis_area *area) } if ((area->is_type & IS_LEVEL_2) && (circuit->is_type & IS_LEVEL_2) && - (circuit->metrics[1].metric_default > MAX_NARROW_LINK_METRIC)) + (circuit->te_metric[1] > MAX_NARROW_LINK_METRIC)) { vty_out (vty, "ISIS circuit %s metric is invalid%s", circuit->interface->name, VTY_NEWLINE);