summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorclaudio <claudio@openbsd.org>2005-05-09 13:53:29 +0000
committerclaudio <claudio@openbsd.org>2005-05-09 13:53:29 +0000
commitb63f32d65b4ee419ee3d1c07f5adfa9481f4439f (patch)
treec4b4d07565a31cb03bbb7e70df145a7e938a4908
parentFix mixerctl -q (diff)
downloadwireguard-openbsd-b63f32d65b4ee419ee3d1c07f5adfa9481f4439f.tar.xz
wireguard-openbsd-b63f32d65b4ee419ee3d1c07f5adfa9481f4439f.zip
Force all as-external routes to point to the router announcing them by
setting the forward address to 0.0.0.0. This is needed as we currently fail to check if the real nexthop is covered by an ospf route -- uncovered routes are ignored by the other routers. OK norby@ tested and requested by Philip Olsson
-rw-r--r--usr.sbin/ospfd/rde.c10
1 files changed, 5 insertions, 5 deletions
diff --git a/usr.sbin/ospfd/rde.c b/usr.sbin/ospfd/rde.c
index 91f3f28e7e2..6efaf0dfafb 100644
--- a/usr.sbin/ospfd/rde.c
+++ b/usr.sbin/ospfd/rde.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: rde.c,v 1.14 2005/05/08 19:58:51 claudio Exp $ */
+/* $OpenBSD: rde.c,v 1.15 2005/05/09 13:53:29 claudio Exp $ */
/*
* Copyright (c) 2004, 2005 Claudio Jeker <claudio@openbsd.org>
@@ -998,11 +998,11 @@ orig_asext_lsa(struct kroute *kr, u_int16_t age)
/*
* nexthop -- on connected routes we are the nexthop,
* on all other cases we announce the true nexthop.
+ * XXX this is wrong as the true nexthop may be outside
+ * of the ospf cloud and so unreachable. For now we force
+ * all traffic to be directed to us.
*/
- if (kr->flags & F_CONNECTED)
- lsa->data.asext.fw_addr = 0;
- else
- lsa->data.asext.fw_addr = kr->nexthop.s_addr;
+ lsa->data.asext.fw_addr = 0;
lsa->data.asext.metric = htonl(/* LSA_ASEXT_E_FLAG | */ 100);
/* XXX until now there is no metric */