summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMichele Marchetto <michele@cvs.openbsd.org>2009-03-25 12:48:17 +0000
committerMichele Marchetto <michele@cvs.openbsd.org>2009-03-25 12:48:17 +0000
commit178746fb27f241a7d671e859b7915ec0c2ad2229 (patch)
treeabaaa0e24d6990731df339661b36e2376101376b
parentb67da5af5959791cb9afc860720c385e0df0b2d1 (diff)
With redistribute connected set, announce the prefix on the interface
with address belonging to that prefix. Don't skip it. ok claudio@
-rw-r--r--usr.sbin/ripd/ripe.c21
1 files changed, 6 insertions, 15 deletions
diff --git a/usr.sbin/ripd/ripe.c b/usr.sbin/ripd/ripe.c
index 7b30822b3b7..4524e51b5d8 100644
--- a/usr.sbin/ripd/ripe.c
+++ b/usr.sbin/ripd/ripe.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: ripe.c,v 1.8 2008/12/17 14:19:39 michele Exp $ */
+/* $OpenBSD: ripe.c,v 1.9 2009/03/25 12:48:16 michele Exp $ */
/*
* Copyright (c) 2006 Michele Marchetto <mydecay@openbeer.it>
@@ -386,16 +386,9 @@ ripe_dispatch_rde(int fd, short event, void *bula)
memcpy(rr, imsg.data, sizeof(*rr));
if (imsg.hdr.peerid == 0) {
- LIST_FOREACH(iface, &oeconf->iface_list,
- entry) {
- if ((iface->addr.s_addr &
- iface->mask.s_addr) !=
- rr->address.s_addr ||
- iface->mask.s_addr !=
- rr->mask.s_addr)
- add_entry(&iface->rp_list,
- rr);
- }
+ LIST_FOREACH(iface, &oeconf->iface_list, entry)
+ add_entry(&iface->rp_list, rr);
+
break;
}
@@ -405,10 +398,8 @@ ripe_dispatch_rde(int fd, short event, void *bula)
break;
}
iface = nbr->iface;
- if ((iface->addr.s_addr & iface->mask.s_addr) !=
- rr->address.s_addr ||
- iface->mask.s_addr != rr->mask.s_addr)
- add_entry(&nbr->rp_list, rr);
+ add_entry(&nbr->rp_list, rr);
+
break;
case IMSG_SEND_RESPONSE:
if (imsg.hdr.peerid == 0) {