bird/proto/ospf/rt.h

46 lines
940 B
C
Raw Normal View History

/*
* BIRD -- OSPF
*
* (c) 2000 Ondrej Filip <feela@network.cz>
*
* Can be freely distributed and used under the terms of the GNU GPL.
*
*/
#ifndef _BIRD_OSPF_RT_H_
#define _BIRD_OSPF_RT_H_
2004-06-06 17:37:54 +08:00
struct infib
{
2000-05-03 03:27:57 +08:00
struct fib_node fn;
u16 metric;
u16 oldmetric;
struct top_hash_entry *en;
struct top_hash_entry *olden;
2000-05-03 03:27:57 +08:00
};
2004-06-06 17:37:54 +08:00
struct extfib
{
2000-05-10 18:47:17 +08:00
struct fib_node fn;
u16 metric;
u16 metric2;
ip_addr nh;
2000-05-31 20:07:09 +08:00
u32 tag;
2000-05-10 18:47:17 +08:00
struct iface *nhi;
u16 oldmetric;
u16 oldmetric2;
ip_addr oldnh;
u32 oldtag;
2000-05-10 18:47:17 +08:00
};
void ospf_rt_spfa(struct ospf_area *oa);
void ospf_ext_spfa(struct proto_ospf *po);
2004-06-06 17:37:54 +08:00
void add_cand(list * l, struct top_hash_entry *en, struct top_hash_entry *par,
u16 dist, struct ospf_area *oa);
void calc_next_hop(struct top_hash_entry *par, struct top_hash_entry *en,
2004-06-06 17:37:54 +08:00
struct ospf_area *oa);
void init_infib(struct fib_node *fn);
2000-05-10 18:47:17 +08:00
void init_efib(struct fib_node *fn);
#endif /* _BIRD_OSPF_RT_H_ */