summaryrefslogtreecommitdiff
path: root/usr.sbin/bgpd/rde_update.c
diff options
context:
space:
mode:
Diffstat (limited to 'usr.sbin/bgpd/rde_update.c')
-rw-r--r--usr.sbin/bgpd/rde_update.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/usr.sbin/bgpd/rde_update.c b/usr.sbin/bgpd/rde_update.c
index 6d486b5b9c2..b6b3e8fdae3 100644
--- a/usr.sbin/bgpd/rde_update.c
+++ b/usr.sbin/bgpd/rde_update.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: rde_update.c,v 1.60 2007/05/31 04:27:00 claudio Exp $ */
+/* $OpenBSD: rde_update.c,v 1.61 2007/11/27 01:13:54 claudio Exp $ */
/*
* Copyright (c) 2004 Claudio Jeker <claudio@openbsd.org>
@@ -270,6 +270,9 @@ up_test_update(struct rde_peer *peer, struct prefix *p)
/* Do not send routes back to sender */
return (0);
+ if (p->aspath->flags & F_ATTR_LOOP)
+ fatalx("try to send out a looped path");
+
pt_getaddr(p->prefix, &addr);
switch (addr.af) {
case AF_INET: