summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorOndrej Zajicek <santiago@crfreenet.org>2009-11-17 10:31:33 +0100
committerOndrej Zajicek <santiago@crfreenet.org>2009-11-17 10:31:33 +0100
commitcbf8b08d622695f360bcdd80d61eb4add967749e (patch)
tree3c219ba0b2eaf217aec4e4cb6bf3738e19732d38
parent4ac7c8341c660db654821ed2dc0273645dc19645 (diff)
downloadbird-cbf8b08d622695f360bcdd80d61eb4add967749e.tar
bird-cbf8b08d622695f360bcdd80d61eb4add967749e.zip
Temporary OSPFv3 devel commit
-rw-r--r--proto/ospf/lsupd.c1
-rw-r--r--proto/ospf/rt.c27
2 files changed, 14 insertions, 14 deletions
diff --git a/proto/ospf/lsupd.c b/proto/ospf/lsupd.c
index 7ae2f2a..b1f6f46 100644
--- a/proto/ospf/lsupd.c
+++ b/proto/ospf/lsupd.c
@@ -501,6 +501,7 @@ ospf_lsupd_receive(struct ospf_packet *ps_i, struct ospf_iface *ifa,
DBG("Update Type: %u ID: %R RT: %R, Sn: 0x%08x Age: %u, Sum: %u\n",
lsatmp.type, lsatmp.id, lsatmp.rt, lsatmp.sn, lsatmp.age, lsatmp.checksum);
+ /* FIXME domain should be link id for unknown LSA types with zero Ubit */
u32 domain = ospf_lsa_domain(lsatmp.type, ifa);
lsadb = ospf_hash_find_header(po->gr, domain, &lsatmp);
diff --git a/proto/ospf/rt.c b/proto/ospf/rt.c
index 832281e..a72a94b 100644
--- a/proto/ospf/rt.c
+++ b/proto/ospf/rt.c
@@ -360,20 +360,19 @@ ospf_rt_spfa(struct ospf_area *oa)
if (rt->options & OPT_RT_V)
oa->trcap = 1;
- /* FIXME - in OSPFv3, should we add all routers, or just ABRs an ASBRs? */
- if ((rt->options & OPT_RT_V) || (rt->options & OPT_RT_E))
- {
- nf.type = RTS_OSPF;
- nf.options = rt->options;
- nf.metric1 = act->dist;
- nf.metric2 = LSINFINITY;
- nf.tag = 0;
- nf.oa = oa;
- nf.ar = act;
- nf.nh = act->nh;
- nf.ifa = act->nhi;
- ri_install(po, ipa_from_rid(act->lsa.rt), MAX_PREFIX_LENGTH, ORT_ROUTER, &nf, NULL);
- }
+ /* In OSPFv2, just ASBRs and ABRs are needed to add to oa->rtr table */
+ // ((rt->options & OPT_RT_V) || (rt->options & OPT_RT_E))
+
+ nf.type = RTS_OSPF;
+ nf.options = rt->options;
+ nf.metric1 = act->dist;
+ nf.metric2 = LSINFINITY;
+ nf.tag = 0;
+ nf.oa = oa;
+ nf.ar = act;
+ nf.nh = act->nh;
+ nf.ifa = act->nhi;
+ ri_install(po, ipa_from_rid(act->lsa.rt), MAX_PREFIX_LENGTH, ORT_ROUTER, &nf, NULL);
#ifdef OSPFv2
ospf_rt_spfa_rtlinks(oa, act, act);