]> git.proxmox.com Git - mirror_frr.git/blobdiff - ospfd/ospf_asbr.h
zebra: Allow ns delete to happen after under/over flow checks
[mirror_frr.git] / ospfd / ospf_asbr.h
index 2fd570d1b803656d6eaba0da9bba5e5ff5ed91a5..ac7bd68b5f3d7cb9cd20ce341b21efdf1338dcf5 100644 (file)
 #ifndef _ZEBRA_OSPF_ASBR_H
 #define _ZEBRA_OSPF_ASBR_H
 
-struct route_map_set_values
-{
-  int32_t metric;
-  int32_t metric_type;
+struct route_map_set_values {
+       int32_t metric;
+       int32_t metric_type;
 };
 
 /* Redistributed external information. */
-struct external_info
-{
-  /* Type of source protocol. */
-  u_char type;
+struct external_info {
+       /* Type of source protocol. */
+       uint8_t type;
 
-  u_short instance;
+       unsigned short instance;
 
-  /* Prefix. */
-  struct prefix_ipv4 p;
+       /* Prefix. */
+       struct prefix_ipv4 p;
 
-  /* Interface index. */
-  ifindex_t ifindex;
+       /* Interface index. */
+       ifindex_t ifindex;
 
-  /* Nexthop address. */
-  struct in_addr nexthop;
+       /* Nexthop address. */
+       struct in_addr nexthop;
 
-  /* Additional Route tag. */
-  route_tag_t tag;
+       /* Additional Route tag. */
+       route_tag_t tag;
 
-  struct route_map_set_values route_map_set;
+       struct route_map_set_values route_map_set;
 #define ROUTEMAP_METRIC(E)      (E)->route_map_set.metric
 #define ROUTEMAP_METRIC_TYPE(E) (E)->route_map_set.metric_type
 };
 
 #define OSPF_ASBR_CHECK_DELAY 30
 
-extern void ospf_external_route_remove (struct ospf *, struct prefix_ipv4 *);
-extern struct external_info *ospf_external_info_new (u_char, u_short);
-extern void ospf_reset_route_map_set_values (struct route_map_set_values *);
-extern int ospf_route_map_set_compare (struct route_map_set_values *,
-                               struct route_map_set_values *);
-extern struct external_info *ospf_external_info_add (u_char, u_short,
-                                              struct prefix_ipv4,
-                                             ifindex_t,
-                                             struct in_addr,
-                                             route_tag_t);
-extern void ospf_external_info_delete (u_char, u_short, struct prefix_ipv4);
-extern struct external_info *ospf_external_info_lookup (u_char, u_short,
-                                                 struct prefix_ipv4 *);
-extern struct ospf_route *ospf_external_route_lookup (struct ospf *, 
-                                               struct prefix_ipv4 *);
-extern void ospf_asbr_status_update (struct ospf *, u_char);
+extern void ospf_external_route_remove(struct ospf *, struct prefix_ipv4 *);
+extern struct external_info *ospf_external_info_new(uint8_t, unsigned short);
+extern void ospf_reset_route_map_set_values(struct route_map_set_values *);
+extern int ospf_route_map_set_compare(struct route_map_set_values *,
+                                     struct route_map_set_values *);
+extern struct external_info *ospf_external_info_add(struct ospf *, uint8_t,
+                                                   unsigned short,
+                                                   struct prefix_ipv4,
+                                                   ifindex_t, struct in_addr,
+                                                   route_tag_t);
+extern void ospf_external_info_delete(struct ospf *, uint8_t, unsigned short,
+                                     struct prefix_ipv4);
+extern struct external_info *ospf_external_info_lookup(struct ospf *, uint8_t,
+                                                      unsigned short,
+                                                      struct prefix_ipv4 *);
+extern void ospf_asbr_status_update(struct ospf *, uint8_t);
 
-extern void ospf_redistribute_withdraw (struct ospf *, u_char, u_short);
-extern void ospf_asbr_check (void);
-extern void ospf_schedule_asbr_check (void);
-extern void ospf_asbr_route_install_lsa (struct ospf_lsa *);
-extern struct ospf_lsa *ospf_external_info_find_lsa (struct ospf *,
-                                             struct prefix_ipv4 *p);
+extern void ospf_redistribute_withdraw(struct ospf *, uint8_t, unsigned short);
+extern void ospf_asbr_check(void);
+extern void ospf_schedule_asbr_check(void);
+extern void ospf_asbr_route_install_lsa(struct ospf_lsa *);
+extern struct ospf_lsa *ospf_external_info_find_lsa(struct ospf *,
+                                                   struct prefix_ipv4 *p);
 
 #endif /* _ZEBRA_OSPF_ASBR_H */