diff options
Diffstat (limited to 'proto/ospf')
-rw-r--r-- | proto/ospf/ospf.c | 2 | ||||
-rw-r--r-- | proto/ospf/rt.c | 3 |
2 files changed, 2 insertions, 3 deletions
diff --git a/proto/ospf/ospf.c b/proto/ospf/ospf.c index 4b69e011..03b16350 100644 --- a/proto/ospf/ospf.c +++ b/proto/ospf/ospf.c @@ -490,7 +490,7 @@ ospf_preexport(struct proto *P, rte *e) struct ospf_area *oa = ospf_main_area(p); /* Reject our own routes */ - if (e->attrs->src->proto == P) + if (e->src->proto == P) return -1; /* Do not export routes to stub areas */ diff --git a/proto/ospf/rt.c b/proto/ospf/rt.c index eb2aa393..cda464e0 100644 --- a/proto/ospf/rt.c +++ b/proto/ospf/rt.c @@ -2053,7 +2053,6 @@ again1: if (nf->n.type) /* Add the route */ { rta a0 = { - .src = p->p.main_source, .source = nf->n.type, .scope = SCOPE_UNIVERSE, .dest = RTD_UNICAST, @@ -2064,7 +2063,7 @@ again1: if (reload || ort_changed(nf, &a0)) { rta *a = rta_lookup(&a0); - rte *e = rte_get_temp(a); + rte *e = rte_get_temp(a, p->p.main_source); rta_free(nf->old_rta); nf->old_rta = rta_clone(a); |