diff options
author | rgirada <rgirada@vmware.com> | 2020-09-01 09:58:47 +0200 |
---|---|---|
committer | rgirada <rgirada@vmware.com> | 2020-11-02 07:02:37 +0100 |
commit | 423e71c45a0b15c43decb1b7d3a35fb3f438e32c (patch) | |
tree | 84c72387e55c8082f685b799dc183bb1d4cc902c /ospfd/ospf_asbr.h | |
parent | ospfd: ospf summarisation core handlers (diff) | |
download | frr-423e71c45a0b15c43decb1b7d3a35fb3f438e32c.tar.xz frr-423e71c45a0b15c43decb1b7d3a35fb3f438e32c.zip |
ospfd: External LSA summarisation config commands.
Description:
The following config commands introduced for external route
aggregation.
[no] summary-address A.B.C.D/M [tag (1-4294967295)]
[no] summary-address A.B.C.D/M no-advertise
aggregation timer (5-1800)
no aggregation timer
Signed-off-by: Rajesh Girada <rgirada@vmware.com>
Diffstat (limited to 'ospfd/ospf_asbr.h')
-rw-r--r-- | ospfd/ospf_asbr.h | 15 |
1 files changed, 12 insertions, 3 deletions
diff --git a/ospfd/ospf_asbr.h b/ospfd/ospf_asbr.h index ea5860f9a..7759d4545 100644 --- a/ospfd/ospf_asbr.h +++ b/ospfd/ospf_asbr.h @@ -132,15 +132,13 @@ extern struct ospf_lsa *ospf_external_info_find_lsa(struct ospf *, /* External Route Aggregator */ extern void ospf_asbr_external_aggregator_init(struct ospf *instance); - extern void ospf_external_aggregator_free(struct ospf_external_aggr_rt *aggr); +extern bool is_valid_summary_addr(struct prefix_ipv4 *p); extern struct ospf_external_aggr_rt * ospf_external_aggr_match(struct ospf *ospf, struct prefix_ipv4 *p); - extern void ospf_unlink_ei_from_aggr(struct ospf *ospf, struct ospf_external_aggr_rt *aggr, struct external_info *ei); - extern struct ospf_lsa * ospf_originate_summary_lsa(struct ospf *ospf, struct ospf_external_aggr_rt *aggr, @@ -153,4 +151,15 @@ extern struct ospf_external_aggr_rt * ospf_extrenal_aggregator_lookup(struct ospf *ospf, struct prefix_ipv4 *p); void ospf_unset_all_aggr_flag(struct ospf *ospf); + +extern int ospf_asbr_external_aggregator_set(struct ospf *ospf, + struct prefix_ipv4 *p, + route_tag_t tag); +extern int ospf_asbr_external_aggregator_unset(struct ospf *ospf, + struct prefix_ipv4 *p, + route_tag_t tag); +extern int ospf_asbr_external_rt_no_advertise(struct ospf *ospf, + struct prefix_ipv4 *p); +extern int ospf_asbr_external_rt_advertise(struct ospf *ospf, + struct prefix_ipv4 *p); #endif /* _ZEBRA_OSPF_ASBR_H */ |