summaryrefslogtreecommitdiffstats
path: root/nest/rt-dev.c
diff options
context:
space:
mode:
authorMartin Mares <mj@ucw.cz>1998-10-19 19:46:45 +0200
committerMartin Mares <mj@ucw.cz>1998-10-19 19:46:45 +0200
commit36f2caf147fb80e2b3db59d367e07f5d143f3710 (patch)
treea55ac4f318381e277f63f5bbc2ed1c65c8f92570 /nest/rt-dev.c
parentf184ea6f7e1233403d06fa4615cb9f27f9d9a839 (diff)
downloadbird-36f2caf147fb80e2b3db59d367e07f5d143f3710.tar
bird-36f2caf147fb80e2b3db59d367e07f5d143f3710.zip
Fixed generation of device routes for unnumbered point-to-point links.
Diffstat (limited to 'nest/rt-dev.c')
-rw-r--r--nest/rt-dev.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/nest/rt-dev.c b/nest/rt-dev.c
index 81dd037..1794b90 100644
--- a/nest/rt-dev.c
+++ b/nest/rt-dev.c
@@ -48,7 +48,10 @@ dev_if_notify(struct proto *p, unsigned c, struct iface *old, struct iface *new)
A.iface = new;
A.attrs = NULL;
a = rta_lookup(&A);
- n = net_get(&master_table, 0, new->prefix, new->pxlen);
+ if (new->flags & IF_UNNUMBERED)
+ n = net_get(&master_table, 0, new->opposite, new->pxlen);
+ else
+ n = net_get(&master_table, 0, new->prefix, new->pxlen);
e = rte_get_temp(a);
e->pflags = 0;
rte_update(n, p, e);