mirror_frr/ospfd
Renato Westphal f07ff222f8 ospfd: add support for NSSA Type-7 address ranges
Implement NSSA address ranges as specified by RFC 3101:

   NSSA border routers may be configured with Type-7 address ranges.
   Each Type-7 address range is defined as an [address,mask] pair.  Many
   separate Type-7 networks may fall into a single Type-7 address range,
   just as a subnetted network is composed of many separate subnets.
   NSSA border routers may aggregate Type-7 routes by advertising a
   single Type-5 LSA for each Type-7 address range.  The Type-5 LSA
   resulting from a Type-7 address range match will be distributed to
   all Type-5 capable areas.

Syntax:
  area A.B.C.D nssa range A.B.C.D/M [<not-advertise|cost (0-16777215)>]

Example:
  router ospf
   router-id 1.1.1.1
   area 1 nssa
   area 1 nssa range 172.16.0.0/16
   area 1 nssa range 10.1.0.0/16
  !

Since regular area ranges and NSSA ranges have a lot in common,
this commit reuses the existing infrastructure for area ranges as
much as possible to avoid code duplication.

Signed-off-by: Renato Westphal <renato@opensourcerouting.org>
2023-03-31 19:28:15 -03:00
..
.gitignore *: cleanup .gitignore files 2018-09-08 21:30:42 +02:00
ChangeLog.opaque.txt Initial revision 2003-02-03 16:31:16 +00:00
Makefile build: non-recursive ospf* 2017-08-04 11:09:50 +02:00
ospf_abr.c ospfd: add support for NSSA Type-7 address ranges 2023-03-31 19:28:15 -03:00
ospf_abr.h ospfd: add support for NSSA Type-7 address ranges 2023-03-31 19:28:15 -03:00
ospf_api.c *: Convert event.h to frrevent.h 2023-03-24 08:32:17 -04:00
ospf_api.h *: auto-convert to SPDX License IDs 2023-02-09 14:09:11 +01:00
ospf_apiserver.c *: Convert event.h to frrevent.h 2023-03-24 08:32:17 -04:00
ospf_apiserver.h *: Rename struct thread to struct event 2023-03-24 08:32:17 -04:00
ospf_asbr.c *: Convert event.h to frrevent.h 2023-03-24 08:32:17 -04:00
ospf_asbr.h *: auto-convert to SPDX License IDs 2023-02-09 14:09:11 +01:00
ospf_ase.c *: Convert event.h to frrevent.h 2023-03-24 08:32:17 -04:00
ospf_ase.h *: auto-convert to SPDX License IDs 2023-02-09 14:09:11 +01:00
ospf_bfd.c *: Convert event.h to frrevent.h 2023-03-24 08:32:17 -04:00
ospf_bfd.h *: Convert struct event_master to struct event_loop 2023-03-24 08:32:17 -04:00
ospf_dump_api.c *: auto-convert to SPDX License IDs 2023-02-09 14:09:11 +01:00
ospf_dump_api.h *: auto-convert to SPDX License IDs 2023-02-09 14:09:11 +01:00
ospf_dump.c *: Convert event.h to frrevent.h 2023-03-24 08:32:17 -04:00
ospf_dump.h *: Fixup formatting issues due to reordering 2023-03-24 08:37:21 -04:00
ospf_errors.c *: auto-convert to SPDX License IDs 2023-02-09 14:09:11 +01:00
ospf_errors.h *: auto-convert to SPDX License IDs 2023-02-09 14:09:11 +01:00
ospf_ext.c *: Convert event.h to frrevent.h 2023-03-24 08:32:17 -04:00
ospf_ext.h *: auto-convert to SPDX License IDs 2023-02-09 14:09:11 +01:00
ospf_flood.c *: Convert event.h to frrevent.h 2023-03-24 08:32:17 -04:00
ospf_flood.h Merge pull request #12366 from manojvn/ospfv2-flood-reduction 2023-02-21 08:03:06 -05:00
ospf_gr_helper.c *: Convert event.h to frrevent.h 2023-03-24 08:32:17 -04:00
ospf_gr.c *: Convert THREAD_XXX macros to EVENT_XXX macros 2023-03-24 08:32:17 -04:00
ospf_gr.h *: Rename struct thread to struct event 2023-03-24 08:32:17 -04:00
ospf_ia.c *: Convert event.h to frrevent.h 2023-03-24 08:32:17 -04:00
ospf_ia.h *: auto-convert to SPDX License IDs 2023-02-09 14:09:11 +01:00
ospf_interface.c ospfd: Fix for vitual-link crash in signal handler 2023-03-27 14:20:10 -07:00
ospf_interface.h *: Rename struct thread to struct event 2023-03-24 08:32:17 -04:00
ospf_ism.c *: Convert event.h to frrevent.h 2023-03-24 08:32:17 -04:00
ospf_ism.h *: Convert thread_execute to event_execute 2023-03-24 08:32:17 -04:00
ospf_ldp_sync.c *: Convert event.h to frrevent.h 2023-03-24 08:32:17 -04:00
ospf_ldp_sync.h *: auto-convert to SPDX License IDs 2023-02-09 14:09:11 +01:00
ospf_lsa.c ospfd: remove duplicated code 2023-03-31 19:28:15 -03:00
ospf_lsa.h ospfd: implement Type-7 default routes for NSSA areas 2023-03-31 19:28:15 -03:00
ospf_lsdb.c Merge pull request #12366 from manojvn/ospfv2-flood-reduction 2023-02-21 08:03:06 -05:00
ospf_lsdb.h *: auto-convert to SPDX License IDs 2023-02-09 14:09:11 +01:00
ospf_main.c *: Convert event.h to frrevent.h 2023-03-24 08:32:17 -04:00
ospf_memory.c *: auto-convert to SPDX License IDs 2023-02-09 14:09:11 +01:00
ospf_memory.h *: auto-convert to SPDX License IDs 2023-02-09 14:09:11 +01:00
ospf_neighbor.c *: Convert event.h to frrevent.h 2023-03-24 08:32:17 -04:00
ospf_neighbor.h *: Rename struct thread to struct event 2023-03-24 08:32:17 -04:00
ospf_network.c *: Convert event.h to frrevent.h 2023-03-24 08:32:17 -04:00
ospf_network.h *: auto-convert to SPDX License IDs 2023-02-09 14:09:11 +01:00
ospf_nsm.c *: Convert event.h to frrevent.h 2023-03-24 08:32:17 -04:00
ospf_nsm.h *: Fixup formatting issues due to reordering 2023-03-24 08:37:21 -04:00
ospf_opaque.c *: Convert event.h to frrevent.h 2023-03-24 08:32:17 -04:00
ospf_opaque.h *: auto-convert to SPDX License IDs 2023-02-09 14:09:11 +01:00
ospf_packet.c *: Convert event.h to frrevent.h 2023-03-24 08:32:17 -04:00
ospf_packet.h *: Rename struct thread to struct event 2023-03-24 08:32:17 -04:00
ospf_ri.c *: Convert event.h to frrevent.h 2023-03-24 08:32:17 -04:00
ospf_ri.h *: auto-convert to SPDX License IDs 2023-02-09 14:09:11 +01:00
ospf_route.c ospfd: add support for NSSA Type-7 address ranges 2023-03-31 19:28:15 -03:00
ospf_route.h ospfd: add support for NSSA Type-7 address ranges 2023-03-31 19:28:15 -03:00
ospf_routemap_nb_config.c *: auto-convert to SPDX License IDs 2023-02-09 14:09:11 +01:00
ospf_routemap_nb.c *: auto-convert to SPDX License IDs 2023-02-09 14:09:11 +01:00
ospf_routemap_nb.h *: auto-convert to SPDX License IDs 2023-02-09 14:09:11 +01:00
ospf_routemap.c Merge pull request #12780 from opensourcerouting/spdx-license-id 2023-02-17 09:43:05 -05:00
ospf_snmp.c ospfd: add support for NSSA Type-7 address ranges 2023-03-31 19:28:15 -03:00
ospf_spf.c *: Convert event.h to frrevent.h 2023-03-24 08:32:17 -04:00
ospf_spf.h *: auto-convert to SPDX License IDs 2023-02-09 14:09:11 +01:00
ospf_sr.c *: Convert event.h to frrevent.h 2023-03-24 08:32:17 -04:00
ospf_sr.h *: Rename struct thread to struct event 2023-03-24 08:32:17 -04:00
ospf_te.c *: Convert event.h to frrevent.h 2023-03-24 08:32:17 -04:00
ospf_te.h *: auto-convert to SPDX License IDs 2023-02-09 14:09:11 +01:00
ospf_ti_lfa.c ospfd: Free up q_space in early return path 2023-03-17 10:58:08 -04:00
ospf_ti_lfa.h *: auto-convert to SPDX License IDs 2023-02-09 14:09:11 +01:00
ospf_vty.c ospfd: add support for NSSA Type-7 address ranges 2023-03-31 19:28:15 -03:00
ospf_vty.h *: auto-convert to SPDX License IDs 2023-02-09 14:09:11 +01:00
ospf_zebra.c ospfd: implement Type-7 default routes for NSSA areas 2023-03-31 19:28:15 -03:00
ospf_zebra.h ospfd: implement Type-7 default routes for NSSA areas 2023-03-31 19:28:15 -03:00
OSPF-ALIGNMENT.txt *: Remove cvs control points 2017-12-05 17:28:12 -05:00
ospfd.c ospfd: add support for NSSA Type-7 address ranges 2023-03-31 19:28:15 -03:00
ospfd.h ospfd: add support for NSSA Type-7 address ranges 2023-03-31 19:28:15 -03:00
subdir.am Revert "ospfd: rSPF calc and messaging for optimal route reflection" 2023-01-17 18:11:56 +02:00