From 3f670371cfeef155256a8a77ac5581accee13b05 Mon Sep 17 00:00:00 2001 From: Ondrej Zajicek Date: Fri, 14 Nov 2008 21:13:56 +0100 Subject: OSPF routes appeared with random value of ospf_tag attribute. This patch fixes it. --- proto/ospf/rt.c | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) (limited to 'proto/ospf/rt.c') diff --git a/proto/ospf/rt.c b/proto/ospf/rt.c index b779345..f906de9 100644 --- a/proto/ospf/rt.c +++ b/proto/ospf/rt.c @@ -195,6 +195,7 @@ ospf_rt_spfa(struct ospf_area *oa) if (rt->veb.bit.e) nf.capa |= ORTA_ASBR; nf.metric1 = act->dist; nf.metric2 = LSINFINITY; + nf.tag = 0; nf.oa = oa; nf.ar = act; nf.nh = act->nh; @@ -221,6 +222,7 @@ ospf_rt_spfa(struct ospf_area *oa) nf.capa = 0; nf.metric1 = act->dist + rtl->metric; nf.metric2 = LSINFINITY; + nf.tag = 0; nf.oa = oa; nf.ar = act; nf.nh = act->nh; @@ -278,6 +280,7 @@ ospf_rt_spfa(struct ospf_area *oa) nf.capa = 0; nf.metric1 = act->dist; nf.metric2 = LSINFINITY; + nf.tag = 0; nf.oa = oa; nf.ar = act; nf.nh = act->nh; @@ -454,6 +457,7 @@ ospf_rt_sum_tr(struct ospf_area *oa) nf.capa = ORTA_ASBR; nf.metric1 = abr->n.metric1 + (tm->metric & METRIC_MASK); nf.metric2 = LSINFINITY; + nf.tag = 0; nf.oa = oa; nf.ar = abr->n.ar; nf.nh = abr->n.nh; @@ -533,6 +537,7 @@ ospf_rt_sum(struct ospf_area *oa) nf.capa = ORTA_ASBR; nf.metric1 = abr->n.metric1 + (tm->metric & METRIC_MASK); nf.metric2 = LSINFINITY; + nf.tag = 0; nf.oa = oa; nf.ar = abr->n.ar; nf.nh = abr->n.nh; @@ -754,11 +759,11 @@ ospf_ext_spf(struct proto_ospf *po) nfa.capa = 0; nfa.metric1 = met1; nfa.metric2 = met2; + nfa.tag = lt->tag; nfa.oa = (po->backbone == NULL) ? HEAD(po->area_list) : po->backbone; nfa.ar = nf1->n.ar; nfa.nh = nh; nfa.ifa = nhi; - nfa.tag = lt->tag; ri_install(po, ip, mlen, ORT_NET, &nfa, nfh); } -- cgit v1.2.3