diff options
| author | Josh Bailey <joshb@google.com> | 2011-07-20 20:47:07 -0700 | 
|---|---|---|
| committer | Josh Bailey <joshb@google.com> | 2011-07-20 20:47:07 -0700 | 
| commit | 8196f13d2ab7f3b09150c00328228f90391acb7c (patch) | |
| tree | 18c0dcfac4f07cc4cf532cd134a41cfd1d03bc55 /redhat/ospfd.service | |
| parent | de8d5dff1523bb9fe47d54f31c9e5322bd805b44 (diff) | |
bgpd: Modify the BGP to zebra route announcement to support multipath
routes. Use a growable buffer (bgp_nexthop_buf) to collect nexthops
that are included in the announcement. Use the BGP_INFO_MULTIPATH_CHG
flag to trigger zebra announcement so zebra will be updated if the
multipath set changes. Display all multipath nexthops in
'debug bgp zebra' output.
* bgpd/bgp_main.c
  * bgp_exit(): Free bgp_nexthop_buf when exiting
* bgpd/bgp_route.c
  * bgp_process_rsclient(): Clear BGP_INFO_MULTIPATH_CHG after processing
  * bgp_process_main(): Check BGP_INFO_MULTIPATH_CHG to trigger zebra
    announcement and clear aftr processing
* bgpd/bgp_zebra.c
  * bgp_nexthop_buf: Growable buffer used to collect nexthops for zebra
    announcement
  * bgp_zebra_announce(): Grow bgp_nexthop_buf if needed. Include
    multipath count in zebra announcement and add all nexthops to
    bgp_nexthop_buf. Pass bgp_nexthop_buf data to zebra announcement.
    Added nexthops to debug output.
  * bgp_zebra_init(): Initialize bgp_nexthop_buf at startup
* bgpd/bgp_zebra.h
  * BGP_NEXTHOP_BUF_SIZE: Default initial bgp_nexthop_buf size has room
    for 8 nexthops
Diffstat (limited to 'redhat/ospfd.service')
0 files changed, 0 insertions, 0 deletions
