mirror_frr/ospfd
Jafar Al-Gharaibeh 6af89f8f03 ospfd: use rib metric as the base for set metric +/-
When using route maps with external routes in OSPF as follows:
```
   set metric +10
 ```
The current behavior is to use the default ospf metric as the base and then add
to 10 to it. The behavior isn't useful as-is. A value 30 (20 dfeault + 10) can
be set directly instead. the behavior is also not consistent with bgp. bgp does
use the rib metric in this case as the base. The current behavior also doesn't
allow the metric to accumulate when crossing different routing domains such as
vrfs causing the metric to reset every time the route enters a new vrf with a new
ospf network.

This PR changes the behavior such that the rib metric is used as a base for
ospf exteral routes when used with `set metric -/+`

Signed-off-by: Jafar Al-Gharaibeh <jafar@atcorp.com>
2023-04-18 00:21:05 -05: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 ospfd: use rib metric as the base for set metric +/- 2023-04-18 00:21:05 -05:00
ospf_asbr.h ospfd: use rib metric as the base for set metric +/- 2023-04-18 00:21:05 -05:00
ospf_ase.c ospfd: use rib metric as the base for set metric +/- 2023-04-18 00:21:05 -05: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: support write socket per interface 2023-04-11 10:16:07 -04:00
ospf_interface.h ospfd: support write socket per interface 2023-04-11 10:16:07 -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 Merge pull request #13269 from Keelan10/ospf_lsa-memory-leak 2023-04-12 11:39:26 -04: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 ospfd: support write socket per interface 2023-04-11 10:16:07 -04:00
ospf_network.h ospfd: support write socket per interface 2023-04-11 10:16:07 -04: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 ospfd: support write socket per interface 2023-04-11 10:16:07 -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 ospfd: use rib metric as the base for set metric +/- 2023-04-18 00:21: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 *: Use a struct prefix *p instead of a struct prefix in functions 2023-04-06 18:00:09 -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 Merge pull request #13177 from mjstapp/fix_ospf_supoort_typo 2023-04-12 14:26:22 -04:00
ospf_vty.h *: auto-convert to SPDX License IDs 2023-02-09 14:09:11 +01:00
ospf_zebra.c ospfd: use rib metric as the base for set metric +/- 2023-04-18 00:21:05 -05: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: support write socket per interface 2023-04-11 10:16:07 -04:00
ospfd.h ospfd: support write socket per interface 2023-04-11 10:16:07 -04:00
subdir.am Revert "ospfd: rSPF calc and messaging for optimal route reflection" 2023-01-17 18:11:56 +02:00