diff options
author | hasso <hasso> | 2005-09-26 18:26:26 +0000 |
---|---|---|
committer | hasso <hasso> | 2005-09-26 18:26:26 +0000 |
commit | 6f17044ca297f7152ed03996970ab9ea3adb592b (patch) | |
tree | ded43a7356ee9b7791ef13acf996921f8a8b0c08 /isisd/isisd.c | |
parent | 04302e45e042ad0dc81eed149f275111b152d9f1 (diff) | |
download | quagga-6f17044ca297f7152ed03996970ab9ea3adb592b.tar.bz2 quagga-6f17044ca297f7152ed03996970ab9ea3adb592b.tar.xz |
* isis_spf.c: Changing cost from uint16_t to uint32_t. Unset
ISIS_ROUTE_FLAG_ACTIVE flag before running SPF.
* isisd.[ch]: Separate route tables for different levels. SPF is done
separately, but in case of L1L2 area they have to be merged.
* isis_zebra.c: Set/unset ISIS_ROUTE_FLAG_ZEBRA_SYNC flag correctly in
case of adding/removing IPv4 routes.
* zebra_route.c: Rework route validating process. Merging L1 and L2
tables in case of L1L2 area.
In short - many changes to make SPF work more correctly, add/remove
to/from RIB also works now. It's still very far from perfect though.
Diffstat (limited to 'isisd/isisd.c')
-rw-r--r-- | isisd/isisd.c | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/isisd/isisd.c b/isisd/isisd.c index 2a60b889..dbaae8a8 100644 --- a/isisd/isisd.c +++ b/isisd/isisd.c @@ -106,9 +106,11 @@ isis_area_create () area->lspdb[1] = lsp_db_init (); spftree_area_init (area); - area->route_table = route_table_init (); + area->route_table[0] = route_table_init (); + area->route_table[1] = route_table_init (); #ifdef HAVE_IPV6 - area->route_table6 = route_table_init (); + area->route_table6[0] = route_table_init (); + area->route_table6[1] = route_table_init (); #endif /* HAVE_IPV6 */ area->circuit_list = list_new (); area->area_addrs = list_new (); |