summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMartin Mares <mj@ucw.cz>1999-05-17 22:16:53 +0200
committerMartin Mares <mj@ucw.cz>1999-05-17 22:16:53 +0200
commit4f1a6d27b9a44f61329bc7b6779a0c645362e181 (patch)
tree4c77601930c97a225f42aaf9ce5dcc378459d1ec
parent0e02abfd5770062768eeb4c75061b7d2f656489d (diff)
downloadbird-4f1a6d27b9a44f61329bc7b6779a0c645362e181.tar
bird-4f1a6d27b9a44f61329bc7b6779a0c645362e181.zip
Kill remaining master_table relics in KRT code.
Make all protocols pass routing table to rte_update and rte_discard.
-rw-r--r--nest/rt-dev.c4
-rw-r--r--proto/rip/rip.c4
-rw-r--r--proto/static/static.c4
-rw-r--r--sysdep/linux/krt-scan.c2
-rw-r--r--sysdep/linux/netlink/netlink.c2
-rw-r--r--sysdep/unix/krt.c10
6 files changed, 13 insertions, 13 deletions
diff --git a/nest/rt-dev.c b/nest/rt-dev.c
index 1225f1d..63548fc 100644
--- a/nest/rt-dev.c
+++ b/nest/rt-dev.c
@@ -36,7 +36,7 @@ dev_ifa_notify(struct proto *p, unsigned c, struct ifa *ad)
debug("dev_if_notify: device shutdown: prefix not found\n");
return;
}
- rte_update(n, p, NULL);
+ rte_update(p->table, n, p, NULL);
}
else if (c & IF_CHANGE_UP)
{
@@ -61,7 +61,7 @@ dev_ifa_notify(struct proto *p, unsigned c, struct ifa *ad)
e = rte_get_temp(a);
e->net = n;
e->pflags = 0;
- rte_update(n, p, e);
+ rte_update(p->table, n, p, e);
}
}
diff --git a/proto/rip/rip.c b/proto/rip/rip.c
index 4a3e10a..16c63ae 100644
--- a/proto/rip/rip.c
+++ b/proto/rip/rip.c
@@ -223,7 +223,7 @@ advertise_entry( struct proto *p, struct rip_block *b, ip_addr whotoldme )
r->u.rip.tag = ntohl(b->tag);
r->net = n;
r->pflags = 0; /* Here go my flags */
- rte_update( n, p, r );
+ rte_update( p->table, n, p, r );
DBG( "done\n" );
}
@@ -356,7 +356,7 @@ rip_timer(timer *t)
if (now - rte->lastmod > P_CF->garbage_time) {
debug( "RIP: entry is too old: " ); rte_dump( rte );
- rte_discard(rte);
+ rte_discard(p->table, rte);
}
}
diff --git a/proto/static/static.c b/proto/static/static.c
index b136b31..d245be2 100644
--- a/proto/static/static.c
+++ b/proto/static/static.c
@@ -40,7 +40,7 @@ static_install(struct proto *p, struct static_route *r, struct iface *ifa)
e = rte_get_temp(aa);
e->net = n;
e->pflags = 0;
- rte_update(n, p, e);
+ rte_update(p->table, n, p, e);
}
static void
@@ -51,7 +51,7 @@ static_remove(struct proto *p, struct static_route *r)
DBG("Removing static route %I/%d\n", r->net, r->masklen);
n = net_find(p->table, r->net, r->masklen);
if (n)
- rte_update(n, p, NULL);
+ rte_update(p->table, n, p, NULL);
}
static int
diff --git a/sysdep/linux/krt-scan.c b/sysdep/linux/krt-scan.c
index 7ee80f2..05a6233 100644
--- a/sysdep/linux/krt-scan.c
+++ b/sysdep/linux/krt-scan.c
@@ -86,7 +86,7 @@ krt_parse_entry(byte *ent, struct krt_proto *p)
return;
}
- net = net_get(&master_table, dest, masklen);
+ net = net_get(p->p.table, dest, masklen);
a.proto = &p->p;
a.source = RTS_INHERIT;
diff --git a/sysdep/linux/netlink/netlink.c b/sysdep/linux/netlink/netlink.c
index 10eb27a..3daa6f8 100644
--- a/sysdep/linux/netlink/netlink.c
+++ b/sysdep/linux/netlink/netlink.c
@@ -594,7 +594,7 @@ nl_parse_route(struct krt_proto *p, struct nlmsghdr *h, int scan)
src = KRT_SRC_ALIEN;
}
- net = net_get(&master_table, dst, i->rtm_dst_len);
+ net = net_get(p->p.table, dst, i->rtm_dst_len);
ra.proto = &p->p;
ra.source = RTS_INHERIT;
ra.scope = SCOPE_UNIVERSE;
diff --git a/sysdep/unix/krt.c b/sysdep/unix/krt.c
index 69d535b..364147d 100644
--- a/sysdep/unix/krt.c
+++ b/sysdep/unix/krt.c
@@ -132,7 +132,7 @@ krt_learn_announce_update(struct krt_proto *p, rte *e)
ee->net = nn;
ee->pflags = 0;
ee->u.krt = e->u.krt;
- rte_update(nn, &p->p, ee);
+ rte_update(p->p.table, nn, &p->p, ee);
}
static void
@@ -140,7 +140,7 @@ krt_learn_announce_delete(struct krt_proto *p, net *n)
{
n = net_find(p->p.table, n->n.prefix, n->n.pxlen);
if (n)
- rte_update(n, &p->p, NULL);
+ rte_update(p->p.table, n, &p->p, NULL);
}
static void
@@ -356,7 +356,7 @@ krt_dump_attrs(rte *e)
static void
krt_flush_routes(struct krt_proto *p)
{
- struct rtable *t = &master_table;
+ struct rtable *t = p->p.table;
DBG("Flushing kernel routes...\n");
FIB_WALK(&t->fib, f)
@@ -466,7 +466,7 @@ static void
krt_prune(struct krt_proto *p)
{
struct proto *pp = &p->p;
- struct rtable *t = &master_table;
+ struct rtable *t = p->p.table;
struct fib_node *f;
DBG("Pruning routes...\n");
@@ -547,7 +547,7 @@ krt_got_route_async(struct krt_proto *p, rte *e, int new)
/* Fall-thru */
default:
DBG("Discarding\n");
- rte_update(net, &p->p, NULL);
+ rte_update(p->p.table, net, &p->p, NULL);
}
rte_free(e);
}