diff options
Diffstat (limited to 'bgpd/bgpd.c')
-rw-r--r-- | bgpd/bgpd.c | 6 |
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) |