* 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.
diff --git a/isisd/isis_route.h b/isisd/isis_route.h
index 59b6c22..4eac79b 100644
--- a/isisd/isis_route.h
+++ b/isisd/isis_route.h
@@ -57,7 +57,7 @@
struct isis_route_info *isis_route_create (struct prefix *prefix,
u_int32_t cost, u_int32_t depth,
struct list *adjacencies,
- struct isis_area *area);
+ struct isis_area *area, int level);
int isis_route_validate (struct thread *thread);