From b13a9e99dbc21610a77a6f617153e96ad3ee41e5 Mon Sep 17 00:00:00 2001 From: Claudio Jeker Date: Tue, 12 Dec 2006 10:26:48 +0000 Subject: In path_remove() remove only local prefixes from the pftable. OK henning@ --- usr.sbin/bgpd/rde_rib.c | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/usr.sbin/bgpd/rde_rib.c b/usr.sbin/bgpd/rde_rib.c index 9e6202f4369..f8c1cded341 100644 --- a/usr.sbin/bgpd/rde_rib.c +++ b/usr.sbin/bgpd/rde_rib.c @@ -1,4 +1,4 @@ -/* $OpenBSD: rde_rib.c,v 1.88 2006/06/01 22:29:47 claudio Exp $ */ +/* $OpenBSD: rde_rib.c,v 1.89 2006/12/12 10:26:47 claudio Exp $ */ /* * Copyright (c) 2003, 2004 Claudio Jeker @@ -227,8 +227,9 @@ path_remove(struct rde_aspath *asp) while ((p = LIST_FIRST(&asp->prefix_h)) != NULL) { /* Commit is done in peer_down() */ pt_getaddr(p->prefix, &addr); - rde_send_pftable(p->aspath->pftableid, - &addr, p->prefix->prefixlen, 1); + if (p->flags & F_LOCAL) + rde_send_pftable(p->aspath->pftableid, &addr, + p->prefix->prefixlen, 1); prefix_destroy(p); } -- cgit v1.2.3