diff options
Diffstat (limited to 'proto/ospf/topology.h')
-rw-r--r-- | proto/ospf/topology.h | 44 |
1 files changed, 25 insertions, 19 deletions
diff --git a/proto/ospf/topology.h b/proto/ospf/topology.h index a3558371..5baa0c9e 100644 --- a/proto/ospf/topology.h +++ b/proto/ospf/topology.h @@ -1,7 +1,7 @@ /* * BIRD -- OSPF * - * (c) 1999 - 2000 Ondrej Filip <feela@network.cz> + * (c) 1999 - 2004 Ondrej Filip <feela@network.cz> * * Can be freely distributed and used under the terms of the GNU GPL. */ @@ -9,19 +9,20 @@ #ifndef _BIRD_OSPF_TOPOLOGY_H_ #define _BIRD_OSPF_TOPOLOGY_H_ -struct top_hash_entry { /* Index for fast mapping (type,rtrid,LSid)->vertex */ +struct top_hash_entry +{ /* Index for fast mapping (type,rtrid,LSid)->vertex */ snode n; - node cn; /* For adding into list of candidates - * in intra-area routing table - * calculation - */ - struct top_hash_entry *next; /* Next in hash chain */ + node cn; /* For adding into list of candidates + * in intra-area routing table + * calculation + */ + struct top_hash_entry *next; /* Next in hash chain */ struct ospf_lsa_header lsa; void *lsa_body; - bird_clock_t inst_t; /* Time of installation into DB */ - ip_addr nh; /* Next hop */ + bird_clock_t inst_t; /* Time of installation into DB */ + ip_addr nh; /* Next hop */ struct iface *nhi; - u16 dist; /* Distance from the root */ + u16 dist; /* Distance from the root */ u16 ini_age; u8 color; #define OUTSPF 0 @@ -31,9 +32,10 @@ struct top_hash_entry { /* Index for fast mapping (type,rtrid,LSid)->vertex */ u16 padding2; }; -struct top_graph { - pool *pool; /* Pool we allocate from */ - slab *hash_slab; /* Slab for hash entries */ +struct top_graph +{ + pool *pool; /* Pool we allocate from */ + slab *hash_slab; /* Slab for hash entries */ struct top_hash_entry **hash_table; /* Hashing (modelled a`la fib) */ unsigned int hash_size; unsigned int hash_order; @@ -45,16 +47,20 @@ struct top_graph { struct top_graph *ospf_top_new(pool *, struct proto_ospf *); void ospf_top_free(struct top_graph *); void ospf_top_dump(struct top_graph *, struct proto *); -struct top_hash_entry *ospf_hash_find_header(struct top_graph *f, struct ospf_lsa_header *h); -struct top_hash_entry *ospf_hash_get_header(struct top_graph *f, struct ospf_lsa_header *h); -struct top_hash_entry *ospf_hash_find(struct top_graph *, u32 lsa, u32 rtr, u32 type); -struct top_hash_entry *ospf_hash_get(struct top_graph *, u32 lsa, u32 rtr, u32 type); +struct top_hash_entry *ospf_hash_find_header(struct top_graph *f, + struct ospf_lsa_header *h); +struct top_hash_entry *ospf_hash_get_header(struct top_graph *f, + struct ospf_lsa_header *h); +struct top_hash_entry *ospf_hash_find(struct top_graph *, u32 lsa, u32 rtr, + u32 type); +struct top_hash_entry *ospf_hash_get(struct top_graph *, u32 lsa, u32 rtr, + u32 type); void ospf_hash_delete(struct top_graph *, struct top_hash_entry *); -void addifa_rtlsa(struct ospf_iface *ifa); void originate_rt_lsa(struct ospf_area *oa); void originate_net_lsa(struct ospf_iface *ifa); int can_flush_lsa(struct ospf_area *oa); int max_ext_lsa(unsigned pxlen); -void originate_ext_lsa(net *n, rte *e, struct proto_ospf *po, struct ea_list *attrs); +void originate_ext_lsa(net * n, rte * e, struct proto_ospf *po, + struct ea_list *attrs); #endif /* _BIRD_OSPF_TOPOLOGY_H_ */ |