diff options
author | David Lamparter <equinox@diac24.net> | 2012-04-16 18:24:40 +0200 |
---|---|---|
committer | David Lamparter <equinox@diac24.net> | 2012-04-16 18:24:43 +0200 |
commit | d75318cc8de91d94649106f4ea3122d0d21ac9eb (patch) | |
tree | 6d7c674c4026bccd1384e60ee228d8d67750fbf7 /isisd/isis_route.h | |
parent | 6e493a44836d3b034ed3421e866878de3fbfcc5b (diff) | |
parent | 48d8bea8b7c83cf186460f711ab166455b5ed676 (diff) |
isisd: merge osr/google-is-is
this is essentially half of a rewrite of isisd. please note that a lot
of things are still broken and isisd is not ready for production use.
Diffstat (limited to 'isisd/isis_route.h')
-rw-r--r-- | isisd/isis_route.h | 12 |
1 files changed, 9 insertions, 3 deletions
diff --git a/isisd/isis_route.h b/isisd/isis_route.h index 4eac79b8..5adea229 100644 --- a/isisd/isis_route.h +++ b/isisd/isis_route.h @@ -30,6 +30,7 @@ struct isis_nexthop6 { unsigned int ifindex; struct in6_addr ip6; + struct in6_addr router_address6; unsigned int lock; }; #endif /* HAVE_IPV6 */ @@ -38,13 +39,15 @@ struct isis_nexthop { unsigned int ifindex; struct in_addr ip; + struct in_addr router_address; unsigned int lock; }; struct isis_route_info { -#define ISIS_ROUTE_FLAG_ZEBRA_SYNC 0x01 -#define ISIS_ROUTE_FLAG_ACTIVE 0x02 +#define ISIS_ROUTE_FLAG_ACTIVE 0x01 /* active route for the prefix */ +#define ISIS_ROUTE_FLAG_ZEBRA_SYNCED 0x02 /* set when route synced to zebra */ +#define ISIS_ROUTE_FLAG_ZEBRA_RESYNC 0x04 /* set when route needs to sync */ u_char flag; u_int32_t cost; u_int32_t depth; @@ -59,6 +62,9 @@ struct isis_route_info *isis_route_create (struct prefix *prefix, struct list *adjacencies, struct isis_area *area, int level); -int isis_route_validate (struct thread *thread); +void isis_route_validate (struct isis_area *area); +void isis_route_invalidate_table (struct isis_area *area, + struct route_table *table); +void isis_route_invalidate (struct isis_area *area); #endif /* _ZEBRA_ISIS_ROUTE_H */ |