summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--bgpd/bgpd.c6
1 files changed, 5 insertions, 1 deletions
diff --git a/bgpd/bgpd.c b/bgpd/bgpd.c
index c4e54f03..b37e577d 100644
--- a/bgpd/bgpd.c
+++ b/bgpd/bgpd.c
@@ -1243,7 +1243,10 @@ peer_delete (struct peer *peer)
for (afi = AFI_IP; afi < AFI_MAX; afi++)
for (safi = SAFI_UNICAST; safi < SAFI_MAX; safi++)
if (peer->rib[afi][safi] && ! peer->af_group[afi][safi])
- bgp_table_finish (peer->rib[afi][safi]);
+ {
+ bgp_table_finish (peer->rib[afi][safi]);
+ peer->rib[afi][safi] = NULL;
+ }
/* Buffers. */
if (peer->ibuf)
@@ -1835,6 +1838,7 @@ peer_group_bind (struct bgp *bgp, union sockunion *su,
}
bgp_table_finish (peer->rib[afi][safi]);
+ peer->rib[afi][safi] = NULL;
/* Import policy. */
if (peer->filter[afi][safi].map[RMAP_IMPORT].name)