diff options
Diffstat (limited to 'bgpd')
| -rw-r--r-- | bgpd/ChangeLog | 5 | ||||
| -rw-r--r-- | bgpd/bgp_route.c | 3 | 
2 files changed, 7 insertions, 1 deletions
diff --git a/bgpd/ChangeLog b/bgpd/ChangeLog index c33562da..56107329 100644 --- a/bgpd/ChangeLog +++ b/bgpd/ChangeLog @@ -1,3 +1,8 @@ +2006-10-15 Paul Jakma <paul.jakma@sun.com> + +	* bgp_route.c: (bgp_table_stats_walker) NULL deref if table is +	  empty, bgp_table_top may return NULL, Coverity CID#73. +  2006-10-14 Paul Jakma <paul.jakma@sun.com>  	* bgp_fsm.h: Remove BGP_EVENT_FLUSH_ADD, dangerous and not diff --git a/bgpd/bgp_route.c b/bgpd/bgp_route.c index cd28b4df..7b369748 100644 --- a/bgpd/bgp_route.c +++ b/bgpd/bgp_route.c @@ -8481,7 +8481,8 @@ bgp_table_stats_walker (struct thread *t)    struct bgp_table_stats *ts = THREAD_ARG (t);    unsigned int space = 0; -  top = bgp_table_top (ts->table); +  if (!(top = bgp_table_top (ts->table))) +    return 0;    switch (top->p.family)      {  | 
