]> git.puffer.fish Git - mirror/frr.git/log
mirror/frr.git
2 years agoospfd: Log Adjacency Changes with Neighbor IP in addition to Neighbor ID 13016/head
Martin Winter [Wed, 26 Oct 2022 15:17:01 +0000 (08:17 -0700)]
ospfd: Log Adjacency Changes with Neighbor IP in addition to Neighbor ID

Signed-off-by: Martin Winter <mwinter@opensourcerouting.org>
Signed-off-by: Donatas Abraitis <donatas@opensourcerouting.org>
2 years agoospfd, ospf6d: Add more logging details
Donatas Abraitis [Wed, 6 Apr 2022 19:15:57 +0000 (22:15 +0300)]
ospfd, ospf6d: Add more logging details

Basically just router-id or interface/IP.

Signed-off-by: Donatas Abraitis <donatas@opensourcerouting.org>
2 years agoMerge pull request #13009 from donaldsharp/nexthop_use_interface_name
Donatas Abraitis [Fri, 17 Mar 2023 07:56:00 +0000 (09:56 +0200)]
Merge pull request #13009 from donaldsharp/nexthop_use_interface_name

bgpd: Use interface name instead of pointer value

2 years agoMerge pull request #12999 from opensourcerouting/fix/bgp_leaks_random_stuff
Donald Sharp [Thu, 16 Mar 2023 23:12:55 +0000 (19:12 -0400)]
Merge pull request #12999 from opensourcerouting/fix/bgp_leaks_random_stuff

bgpd: aggregate routes memory leak for aspath

2 years agobgpd: Use interface name instead of pointer value 13009/head
Donald Sharp [Thu, 16 Mar 2023 14:24:25 +0000 (10:24 -0400)]
bgpd: Use interface name instead of pointer value

Log message is borked in a manner that makes it unusable:
bgpd[52]: [VX6SM-8YE5W][EC 33554460] 2000:31:0:53::2: nexthop_set failed, resetting connection - intf 0x561eb9005a30

Let's print out the interface name instead.

Signed-off-by: Donald Sharp <sharpd@nvidia.com>
2 years agoMerge pull request #13006 from opensourcerouting/bgp-gr-null-warning
Donald Sharp [Thu, 16 Mar 2023 11:41:10 +0000 (07:41 -0400)]
Merge pull request #13006 from opensourcerouting/bgp-gr-null-warning

bgpd: fix NULL argument warning

2 years agobgpd: fix NULL argument warning 13006/head
David Lamparter [Thu, 16 Mar 2023 10:00:02 +0000 (11:00 +0100)]
bgpd: fix NULL argument warning

gcc 12.2.0 complains `error: ā€˜%s’ directive argument is null`, even
though all enum values are covered with a string.  Let's just go with a
`???` default.

Signed-off-by: David Lamparter <equinox@opensourcerouting.org>
2 years agoMerge pull request #13002 from opensourcerouting/fix/missing_bgp_dest_unlock_node_lea...
Donald Sharp [Thu, 16 Mar 2023 01:54:15 +0000 (21:54 -0400)]
Merge pull request #13002 from opensourcerouting/fix/missing_bgp_dest_unlock_node_leak_update

2 years agoMerge pull request #12998 from opensourcerouting/clippy-python-init-api
Mark Stapp [Wed, 15 Mar 2023 15:33:35 +0000 (11:33 -0400)]
Merge pull request #12998 from opensourcerouting/clippy-python-init-api

lib: adapt clippy to Python 3.8+ init API

2 years agolib: adapt clippy to Python 3.8+ init API 12998/head
David Lamparter [Wed, 15 Mar 2023 11:24:36 +0000 (12:24 +0100)]
lib: adapt clippy to Python 3.8+ init API

The old initialization/config API is deprecated in Python 3.11.  Make
clippy use the new one added in 3.8 if it's that version or newer.

Signed-off-by: David Lamparter <equinox@opensourcerouting.org>
2 years agobgpd: Unlock bgp dest node if leak_update() fails 13002/head
Donatas Abraitis [Wed, 15 Mar 2023 12:52:21 +0000 (14:52 +0200)]
bgpd: Unlock bgp dest node if leak_update() fails

Signed-off-by: Donatas Abraitis <donatas@opensourcerouting.org>
2 years agoMerge pull request #12982 from opensourcerouting/fix/commmitlint_condition
Mark Stapp [Wed, 15 Mar 2023 12:20:48 +0000 (08:20 -0400)]
Merge pull request #12982 from opensourcerouting/fix/commmitlint_condition

tools: Use specific syntax for conditions for Github actions

2 years agobgpd: Free previously dup'ed aspath attribute for aggregate routes 12999/head
Donatas Abraitis [Wed, 15 Mar 2023 11:31:58 +0000 (13:31 +0200)]
bgpd: Free previously dup'ed aspath attribute for aggregate routes

Fixes memory leak:

```
./bgp_local_asn_dot.test_bgp_local_asn_dot_agg/r3.bgpd.asan.653233:Direct leak of 80 byte(s) in 2 object(s) allocated f
rom:
./bgp_local_asn_dot.test_bgp_local_asn_dot_agg/r3.bgpd.asan.653233-    0 0x7fcce641b037 in __interceptor_calloc ../../
../../src/libsanitizer/asan/asan_malloc_linux.cpp:154
./bgp_local_asn_dot.test_bgp_local_asn_dot_agg/r3.bgpd.asan.653233-    1 0x7fcce601f874 in qcalloc lib/memory.c:105
./bgp_local_asn_dot.test_bgp_local_asn_dot_agg/r3.bgpd.asan.653233-    2 0x55a9594c805e in aspath_dup bgpd/bgp_aspath.c:688
./bgp_local_asn_dot.test_bgp_local_asn_dot_agg/r3.bgpd.asan.653233-    3 0x55a9594cf55b in bgp_aggr_aspath_prepare bgpd/bgp_aspath.c:2164
./bgp_local_asn_dot.test_bgp_local_asn_dot_agg/r3.bgpd.asan.653233-    4 0x7fcce5fbc95a in hash_iterate lib/hash.c:252
./bgp_local_asn_dot.test_bgp_local_asn_dot_agg/r3.bgpd.asan.653233-    5 0x55a9594cf82f in bgp_compute_aggregate_aspath_val bgpd/bgp_aspath.c:2223
./bgp_local_asn_dot.test_bgp_local_asn_dot_agg/r3.bgpd.asan.653233-    6 0x55a9594cf5db in bgp_compute_aggregate_aspath bgpd/bgp_aspath.c:2179
./bgp_local_asn_dot.test_bgp_local_asn_dot_agg/r3.bgpd.asan.653233-    7 0x55a9592740fb in bgp_add_route_to_aggregate bgpd/bgp_route.c:8035
./bgp_local_asn_dot.test_bgp_local_asn_dot_agg/r3.bgpd.asan.653233-    8 0x55a9592750ec in bgp_aggregate_increment bgpd/bgp_route.c:8234
./bgp_local_asn_dot.test_bgp_local_asn_dot_agg/r3.bgpd.asan.653233-    9 0x55a959263174 in bgp_update bgpd/bgp_route.c:4797
./bgp_local_asn_dot.test_bgp_local_asn_dot_agg/r3.bgpd.asan.653233-    10 0x55a9592696c9 in bgp_nlri_parse_ip bgpd/bgp_route.c:6070
./bgp_local_asn_dot.test_bgp_local_asn_dot_agg/r3.bgpd.asan.653233-    11 0x55a959210649 in bgp_nlri_parse bgpd/bgp_packet.c:339
./bgp_local_asn_dot.test_bgp_local_asn_dot_agg/r3.bgpd.asan.653233-    12 0x55a95921a3a1 in bgp_update_receive bgpd/bgp_packet.c:2023
./bgp_local_asn_dot.test_bgp_local_asn_dot_agg/r3.bgpd.asan.653233-    13 0x55a95922159b in bgp_process_packet bgpd/bgp_packet.c:2933
./bgp_local_asn_dot.test_bgp_local_asn_dot_agg/r3.bgpd.asan.653233-    14 0x7fcce60eaa50 in thread_call lib/thread.c:1991
./bgp_local_asn_dot.test_bgp_local_asn_dot_agg/r3.bgpd.asan.653233-    15 0x7fcce5fe2e54 in frr_run lib/libfrr.c:1185
./bgp_local_asn_dot.test_bgp_local_asn_dot_agg/r3.bgpd.asan.653233-    16 0x55a9590d256d in main bgpd/bgp_main.c:505
```

Signed-off-by: Donatas Abraitis <donatas@opensourcerouting.org>
2 years agobgpd: Unlock dest if we return earlier for aggregate install
Donatas Abraitis [Mon, 13 Mar 2023 20:26:09 +0000 (22:26 +0200)]
bgpd: Unlock dest if we return earlier for aggregate install

If the bgp is in shutdown state or so, do not forget to unlock the dest node.

Signed-off-by: Donatas Abraitis <donatas@opensourcerouting.org>
2 years agoMerge pull request #12996 from chiragshah6/fdev1
Donatas Abraitis [Wed, 15 Mar 2023 08:21:02 +0000 (10:21 +0200)]
Merge pull request #12996 from chiragshah6/fdev1

tools: frr-reload fix list value not present

2 years agoMerge pull request #12310 from kuldeepkash/pim_v6
Donatas Abraitis [Wed, 15 Mar 2023 06:55:24 +0000 (08:55 +0200)]
Merge pull request #12310 from kuldeepkash/pim_v6

tests: [PIMv6] Adding multicast pim6 SM testsuite

2 years agotools: frr-reload fix list value not present 12996/head
Chirag Shah [Wed, 15 Mar 2023 04:32:40 +0000 (21:32 -0700)]
tools: frr-reload fix list value not present

Check for value present in list before removing
as in certain python3 ValueError traceback is observed.

Traceback (most recent call last):
  File "/usr/lib/frr/frr-reload.py",
line 2278, in <module>
    (lines_to_add, lines_to_del, restart_frr)
= compare_context_objects(newconf, running)
  File "/usr/lib/frr/frr-reload.py",
line 1933, in compare_context_objects
    lines_to_add, lines_to_del
  File "/usr/lib/frr/frr-reload.py",
line 1549, in ignore_delete_re_add_lines
    lines_to_del.remove((ctx_keys, line))
ValueError: list.remove(x): x not in list

Ticket:#3389979
Issue:3389979

Testing Done:
With fix perform frr-relaod on frr.conf config where earlier
traceback was seen.

Signed-off-by: Donald Sharp <sharpd@nvidia.com>
Signed-off-by: Chirag Shah <chirag@nvidia.com>
2 years agoMerge pull request #12936 from opensourcerouting/ospf6d-out-filter-list
Russ White [Tue, 14 Mar 2023 15:33:44 +0000 (11:33 -0400)]
Merge pull request #12936 from opensourcerouting/ospf6d-out-filter-list

ospfd: correctly update outbound filter-list once prefix-list is updated

2 years agoMerge pull request #12990 from opensourcerouting/fix/rename_bgp_afi_node_lookup
Russ White [Tue, 14 Mar 2023 14:16:16 +0000 (10:16 -0400)]
Merge pull request #12990 from opensourcerouting/fix/rename_bgp_afi_node_lookup

bgpd: Drop afi from lookup functions (not used)

2 years agoMerge pull request #12989 from opensourcerouting/fix/memory_leaks_bgpd
Russ White [Tue, 14 Mar 2023 14:15:07 +0000 (10:15 -0400)]
Merge pull request #12989 from opensourcerouting/fix/memory_leaks_bgpd

bgpd: Free memory allocated by ecommunity_ecom2str()

2 years agoMerge pull request #12979 from miegl/isis_tun
Russ White [Tue, 14 Mar 2023 14:05:01 +0000 (10:05 -0400)]
Merge pull request #12979 from miegl/isis_tun

isisd: IS-IS over tunnel (GRE, GENEVE)

2 years agoMerge pull request #12965 from donaldsharp/gr_vrf_aware
Russ White [Tue, 14 Mar 2023 12:45:02 +0000 (08:45 -0400)]
Merge pull request #12965 from donaldsharp/gr_vrf_aware

zebra: Make GR debug logs at least vrf aware

2 years agoMerge pull request #12922 from opensourcerouting/ospf-gr-fixes
Russ White [Tue, 14 Mar 2023 12:38:36 +0000 (08:38 -0400)]
Merge pull request #12922 from opensourcerouting/ospf-gr-fixes

OSPF Graceful Restart fixes

2 years agobgpd: Drop afi_t from bgp_evpn_global_node_lookup() 12990/head
Donatas Abraitis [Tue, 14 Mar 2023 10:05:58 +0000 (12:05 +0200)]
bgpd: Drop afi_t from bgp_evpn_global_node_lookup()

Not used.

Signed-off-by: Donatas Abraitis <donatas@opensourcerouting.org>
2 years agobgpd: Rename bgp_afi_node_lookup() to bgp_safi_node_lookup()
Donatas Abraitis [Tue, 14 Mar 2023 10:01:56 +0000 (12:01 +0200)]
bgpd: Rename bgp_afi_node_lookup() to bgp_safi_node_lookup()

afi not used in this function, reduce a bit.

Signed-off-by: Donatas Abraitis <donatas@opensourcerouting.org>
2 years agobgpd: Free memory allocated by ecommunity_ecom2str() 12989/head
Donatas Abraitis [Tue, 14 Mar 2023 09:03:53 +0000 (11:03 +0200)]
bgpd: Free memory allocated by ecommunity_ecom2str()

Return local string, copied from returned value of ecom2str.

```
./bgp_snmp_mplsl3vpn.test_bgp_snmp_mplsvpn/r1.bgpd.asan.2925690:Direct leak of 528 byte(s) in 8 object(s) allocated from:
./bgp_snmp_mplsl3vpn.test_bgp_snmp_mplsvpn/r1.bgpd.asan.2925690-    0 0x7efcde5d6037 in __interceptor_calloc ../../../../src/libsanitizer/asan/asan_malloc_linux.cpp:154
./bgp_snmp_mplsl3vpn.test_bgp_snmp_mplsvpn/r1.bgpd.asan.2925690-    1 0x7efcde1dc7e2 in qcalloc lib/memory.c:105
./bgp_snmp_mplsl3vpn.test_bgp_snmp_mplsvpn/r1.bgpd.asan.2925690-    2 0x5628a0592704 in ecommunity_ecom2str bgpd/bgp_ecommunity.c:947
./bgp_snmp_mplsl3vpn.test_bgp_snmp_mplsvpn/r1.bgpd.asan.2925690-    3 0x7efcdaa558c8 in mplsL3vpnVrfRtTable bgpd/bgp_mplsvpn_snmp.c:1152
./bgp_snmp_mplsl3vpn.test_bgp_snmp_mplsvpn/r1.bgpd.asan.2925690-    4 0x7efcda784139 in netsnmp_old_api_helper helpers/old_api.c:332
./bgp_snmp_mplsl3vpn.test_bgp_snmp_mplsvpn/r1.bgpd.asan.2925690-
./bgp_snmp_mplsl3vpn.test_bgp_snmp_mplsvpn/r1.bgpd.asan.2925690-SUMMARY: AddressSanitizer: 528 byte(s) leaked in 8 allocation(s).
```

Signed-off-by: Donatas Abraitis <donatas@opensourcerouting.org>
2 years agoMerge pull request #12978 from donaldsharp/multicast_address
mobash-rasool [Tue, 14 Mar 2023 05:48:35 +0000 (11:18 +0530)]
Merge pull request #12978 from donaldsharp/multicast_address

pimd: IN_MULTICAST needs host order

2 years agotools: Use specific syntax for conditions for Github actions 12982/head
Donatas Abraitis [Mon, 13 Mar 2023 07:52:13 +0000 (09:52 +0200)]
tools: Use specific syntax for conditions for Github actions

Signed-off-by: Donatas Abraitis <donatas@opensourcerouting.org>
2 years agoMerge pull request #12974 from donaldsharp/update_versioning 12948/head
Donatas Abraitis [Sun, 12 Mar 2023 19:48:49 +0000 (21:48 +0200)]
Merge pull request #12974 from donaldsharp/update_versioning

bgpd: Increment version number even when no data is sent

2 years agoisisd: pfpacket BPF filter with IS-IS over tunnel support 12979/head
Josef Miegl [Sun, 12 Mar 2023 15:15:27 +0000 (16:15 +0100)]
isisd: pfpacket BPF filter with IS-IS over tunnel support

Signed-off-by: Josef Miegl <josef@miegl.cz>
2 years agoMerge pull request #12923 from donaldsharp/update_group_debug
Donatas Abraitis [Sun, 12 Mar 2023 13:51:51 +0000 (15:51 +0200)]
Merge pull request #12923 from donaldsharp/update_group_debug

bgpd: Add missing items to debug for update group hash key creation

2 years agopimd: IN_MULTICAST needs host order 12978/head
Donald Sharp [Sun, 12 Mar 2023 00:37:21 +0000 (19:37 -0500)]
pimd: IN_MULTICAST needs host order

New correct behavior:

eva# conf
eva(config)# ip pim rp 192.168.1.224 224.0.0.0/24
No Path to RP address specified: 192.168.1.224
eva(config)# ip pim rp 224.1.2.3 224.0.0.0/24
% Bad RP address specified: 224.1.2.3
eva(config)#

Fixes: #12970
Signed-off-by: Donald Sharp <sharpd@nvidia.com>
2 years agobgpd: Increment version number even when no data is sent 12974/head
Donald Sharp [Sat, 11 Mar 2023 17:05:44 +0000 (12:05 -0500)]
bgpd: Increment version number even when no data is sent

When an update group decides to not send a prefix
announcement because it has not changed, still increment
the version number.  Why?  To allow for the situation
where you have say 2 peers in 1 peer group and shortly
after they come up a 3rd peer comes up.  It will be
placed into a separate update group and could be
coalesced down, when it finishes updating all data
to it.  Now imagine that a single prefix changes at
this point in time as well.  Then first 2 peers may
decide to not send the data, since nothing has changed.
While the 3rd peer will and since the versions numbers
never match they will never coalesce.  So when the decision
is made to skip, update the version number as well.

Signed-off-by: Donald Sharp <sharpd@nvidia.com>
2 years agoMerge pull request #12962 from opensourcerouting/fix/bgpd_ipv6_ll_peering
Jafar Al-Gharaibeh [Sat, 11 Mar 2023 05:09:07 +0000 (23:09 -0600)]
Merge pull request #12962 from opensourcerouting/fix/bgpd_ipv6_ll_peering

bgpd: Check if the peer is configured as interface when checking NHT

2 years agoMerge pull request #12967 from pguibert6WIND/show_zebra_mpls_empty
Donald Sharp [Fri, 10 Mar 2023 22:53:46 +0000 (17:53 -0500)]
Merge pull request #12967 from pguibert6WIND/show_zebra_mpls_empty

2 years agolib, bgpd: Add more debugs to GR Capability exchange 12965/head
Donald Sharp [Thu, 9 Mar 2023 13:36:51 +0000 (08:36 -0500)]
lib, bgpd: Add more debugs to GR Capability exchange

a) Make it legible what type of message is being passed
back and forth instead of having to guess it from
the insufficient debugs

b) Make it explicit which bgp instance is sending this
data

c) Cleanup bgp_zebra_update to have a cleaner api

Signed-off-by: Donald Sharp <sharpd@nvidia.com>
2 years agozebra: add json support when "show zebra mpls" returns nothing 12967/head
Philippe Guibert [Fri, 3 Mar 2023 12:21:00 +0000 (13:21 +0100)]
zebra: add json support when "show zebra mpls" returns nothing

The "show zebra mpls .. json" vty command may return empty information
in case the MPLS database is empty or a given label entry is not
available. When those errors occur, add the braces to return a
valid json format.

Signed-off-by: Philippe Guibert <philippe.guibert@6wind.com>
2 years agozebra: Make GR debug logs at least vrf aware
Donald Sharp [Wed, 8 Mar 2023 18:24:58 +0000 (13:24 -0500)]
zebra: Make GR debug logs at least vrf aware

The GR debug logs are doing all sorts of wonderful stuff
but they were not actually displaying anything useful to the operator
about what vrf we are operating in.

Signed-off-by: Donald Sharp <sharpd@nvidia.com>
2 years agoMerge pull request #12963 from anlancs/fix/bgpd-keep-common
Donatas Abraitis [Wed, 8 Mar 2023 14:12:03 +0000 (16:12 +0200)]
Merge pull request #12963 from anlancs/fix/bgpd-keep-common

bgpd: Simplify the code for show command

2 years agobgpd: Simplify the code for show command 12963/head
anlan_cs [Tue, 7 Mar 2023 00:50:00 +0000 (08:50 +0800)]
bgpd: Simplify the code for show command

Keep the common code for command: "show ip bgp summary [wide]".

Signed-off-by: anlan_cs <vic.lan@pica8.com>
2 years agotests: Check if IPv6 BGP Link-Local peering works 12962/head
Donatas Abraitis [Tue, 7 Mar 2023 20:41:58 +0000 (22:41 +0200)]
tests: Check if IPv6 BGP Link-Local peering works

Signed-off-by: Donatas Abraitis <donatas@opensourcerouting.org>
2 years agobgpd: Check if the peer is configured as interface when checking NHT
Donatas Abraitis [Tue, 7 Mar 2023 20:36:15 +0000 (22:36 +0200)]
bgpd: Check if the peer is configured as interface when checking NHT

This causes early return. peer->conf is NULL for IPv6 link-local peering,
and the session never establish.

Signed-off-by: Donatas Abraitis <donatas@opensourcerouting.org>
2 years agoMerge pull request #12890 from pguibert6WIND/attr_cleaning_misc
Russ White [Tue, 7 Mar 2023 14:46:24 +0000 (09:46 -0500)]
Merge pull request #12890 from pguibert6WIND/attr_cleaning_misc

bgp attribute cleaning misc

2 years agoMerge pull request #12940 from anlancs/fix/bfd-clean-echo
Russ White [Tue, 7 Mar 2023 14:33:33 +0000 (09:33 -0500)]
Merge pull request #12940 from anlancs/fix/bfd-clean-echo

bfdd: remove useless check for ECHO packet

2 years agoMerge pull request #12946 from opensourcerouting/fix/memory_leak_adj_out_set
Russ White [Tue, 7 Mar 2023 14:31:27 +0000 (09:31 -0500)]
Merge pull request #12946 from opensourcerouting/fix/memory_leak_adj_out_set

bgpd: Intern attributes before putting into rib-out

2 years agobgpd: Add missing items to debug for update group hash key creation 12923/head
Donald Sharp [Wed, 1 Mar 2023 20:43:42 +0000 (15:43 -0500)]
bgpd: Add missing items to debug for update group hash key creation

There are some missing values in the debug lines.  Let's add them
in and help us understand.

Signed-off-by: Donald Sharp <sharpd@nvidia.com>
2 years agoMerge pull request #12960 from anlancs/doc/some-words-doc
Donatas Abraitis [Tue, 7 Mar 2023 06:25:50 +0000 (08:25 +0200)]
Merge pull request #12960 from anlancs/doc/some-words-doc

doc: Correct some words

2 years agoMerge pull request #12934 from LabNConsulting/ziemba/rfapi-memleak-cleanup-12478
Donatas Abraitis [Mon, 6 Mar 2023 19:19:36 +0000 (21:19 +0200)]
Merge pull request #12934 from LabNConsulting/ziemba/rfapi-memleak-cleanup-12478

bgpd/rfapi: memleak: clean CE tables at exit

2 years agoMerge pull request #12957 from opensourcerouting/fix/no_need_to_send_notification
Donald Sharp [Mon, 6 Mar 2023 14:45:40 +0000 (09:45 -0500)]
Merge pull request #12957 from opensourcerouting/fix/no_need_to_send_notification

bgpd: Do not send notification twice when parsing NLRI labels

2 years agoMerge pull request #12958 from opensourcerouting/fix/commitlint_master_branch
Donald Sharp [Mon, 6 Mar 2023 14:45:17 +0000 (09:45 -0500)]
Merge pull request #12958 from opensourcerouting/fix/commitlint_master_branch

tools: Do not run commit linter for other branches than master

2 years agotests: [PIMv6] Adding multicast pim6 SM testsuite 12310/head
Kuldeep Kashyap [Sat, 12 Nov 2022 10:33:49 +0000 (02:33 -0800)]
tests: [PIMv6] Adding multicast pim6 SM testsuite

Automated new scenarios to multicast pim6
SM test suite. Added 10 test cases to verify
multicast PIM6-SM functionality.

Signed-off-by: Kuldeep Kashyap <kashyapk@vmware.com>
Co-Auther: Vijay Kumar Gupta <vijayg@vmware.com>

2 years agotests: [PIMv6] F/W support for multicast pimv6 automation
Kuldeep Kashyap [Sat, 12 Nov 2022 10:31:48 +0000 (02:31 -0800)]
tests: [PIMv6] F/W support for multicast pimv6 automation

Enhanced or added new libraries to support
multicast pimv6 automation

Signed-off-by: Kuldeep Kashyap <kashyapk@vmware.com>
Co-Auther: Vijay Kumar Gupta <vijayg@vmware.com>

2 years agodoc: Correct some words 12960/head
anlan_cs [Tue, 28 Feb 2023 07:52:06 +0000 (15:52 +0800)]
doc: Correct some words

Note that `ASNUM` in table, it is missing right parenthesis for
`(1-4294967295)`. So, adjust this table.

And correct other words for doc.

Signed-off-by: anlan_cs <vic.lan@pica8.com>
2 years agotools: Do not run commit linter for other branches than master 12958/head
Donatas Abraitis [Sun, 5 Mar 2023 19:12:23 +0000 (21:12 +0200)]
tools: Do not run commit linter for other branches than master

Signed-off-by: Donatas Abraitis <donatas@opensourcerouting.org>
2 years agobgpd: Do not send notification twice when parsing NLRI labels 12957/head
Donatas Abraitis [Sun, 5 Mar 2023 18:56:05 +0000 (20:56 +0200)]
bgpd: Do not send notification twice when parsing NLRI labels

This is already handled in bgp_nlri_parse() by checking error code.

Even more, we should send error sub-code to be according the NLRI type.

If it's MP_UPDATE/MP_WITHDRAW, sub-code should be an Optional Attribute error.

Signed-off-by: Donatas Abraitis <donatas@opensourcerouting.org>
2 years agoMerge pull request #12951 from donaldsharp/label_decode_crash
Donatas Abraitis [Sun, 5 Mar 2023 18:49:51 +0000 (20:49 +0200)]
Merge pull request #12951 from donaldsharp/label_decode_crash

bgpd: Fix use beyond end of stream of labeled unicast parsing

2 years agoMerge pull request #12950 from harryreps/master
Donatas Abraitis [Sat, 4 Mar 2023 11:09:10 +0000 (13:09 +0200)]
Merge pull request #12950 from harryreps/master

babeld: fix #11808 to avoid infinite loops

2 years agobgpd: Fix use beyond end of stream of labeled unicast parsing 12951/head
Donald Sharp [Sat, 4 Mar 2023 02:58:33 +0000 (21:58 -0500)]
bgpd: Fix use beyond end of stream of labeled unicast parsing

Fixes a couple crashes associated with attempting to read
beyond the end of the stream.

Reported-by: Iggy Frankovic <iggyfran@amazon.com>
Signed-off-by: Donald Sharp <sharpd@nvidia.com>
2 years agobabeld: fix #11808 to avoid infinite loops 12950/head
harryreps [Fri, 3 Mar 2023 23:17:14 +0000 (23:17 +0000)]
babeld: fix #11808 to avoid infinite loops

Replacing continue in loops to goto done so that index of packet buffer
increases.

Signed-off-by: harryreps <harryreps@gmail.com>
2 years agoMerge pull request #12935 from opensourcerouting/ospf6d-la-bit
Mark Stapp [Fri, 3 Mar 2023 20:38:32 +0000 (15:38 -0500)]
Merge pull request #12935 from opensourcerouting/ospf6d-la-bit

ospf6d: fix processing of inter-area-prefix-LSAs with the LA-bit set

2 years agoMerge pull request #12937 from opensourcerouting/ospf6d-redist
Mark Stapp [Fri, 3 Mar 2023 20:38:02 +0000 (15:38 -0500)]
Merge pull request #12937 from opensourcerouting/ospf6d-redist

ospf6d: small fixes in the handling of redistributed routes

2 years agobgpd: Intern attributes before putting into rib-out 12946/head
Donatas Abraitis [Fri, 3 Mar 2023 15:33:51 +0000 (17:33 +0200)]
bgpd: Intern attributes before putting into rib-out

```
==21860==ERROR: LeakSanitizer: detected memory leaks

Direct leak of 80 byte(s) in 2 object(s) allocated from:
    0 0x7f8065294d28 in __interceptor_calloc (/usr/lib/x86_64-linux-gnu/libasan.so.4+0xded28)
    1 0x7f8064cfd216 in qcalloc lib/memory.c:105
    2 0x5646b7024073 in ecommunity_dup bgpd/bgp_ecommunity.c:252
    3 0x5646b7153585 in route_set_ecommunity_lb bgpd/bgp_routemap.c:2925
    4 0x7f8064d459be in route_map_apply_ext lib/routemap.c:2675
    5 0x5646b7116584 in subgroup_announce_check bgpd/bgp_route.c:2374
    6 0x5646b711b907 in subgroup_process_announce_selected bgpd/bgp_route.c:2918
    7 0x5646b717ceb8 in group_announce_route_walkcb bgpd/bgp_updgrp_adv.c:184
    8 0x7f8064cc6acd in hash_walk lib/hash.c:270
    9 0x5646b717ae0c in update_group_af_walk bgpd/bgp_updgrp.c:2046
    10 0x5646b7181275 in group_announce_route bgpd/bgp_updgrp_adv.c:1030
    11 0x5646b711a986 in bgp_process_main_one bgpd/bgp_route.c:3303
    12 0x5646b711b5bf in bgp_process_wq bgpd/bgp_route.c:3444
    13 0x7f8064da12d7 in work_queue_run lib/workqueue.c:267
    14 0x7f8064d891fb in thread_call lib/thread.c:1991
    15 0x7f8064cdffcf in frr_run lib/libfrr.c:1185
    16 0x5646b6feca67 in main bgpd/bgp_main.c:505
    17 0x7f8063f96c86 in __libc_start_main (/lib/x86_64-linux-gnu/libc.so.6+0x21c86)

Indirect leak of 16 byte(s) in 2 object(s) allocated from:
    0 0x7f8065294b40 in __interceptor_malloc (/usr/lib/x86_64-linux-gnu/libasan.so.4+0xdeb40)
    1 0x7f8064cfcf01 in qmalloc lib/memory.c:100
    2 0x5646b7024151 in ecommunity_dup bgpd/bgp_ecommunity.c:256
    3 0x5646b7153585 in route_set_ecommunity_lb bgpd/bgp_routemap.c:2925
    4 0x7f8064d459be in route_map_apply_ext lib/routemap.c:2675
    5 0x5646b7116584 in subgroup_announce_check bgpd/bgp_route.c:2374
    6 0x5646b711b907 in subgroup_process_announce_selected bgpd/bgp_route.c:2918
    7 0x5646b717ceb8 in group_announce_route_walkcb bgpd/bgp_updgrp_adv.c:184
    8 0x7f8064cc6acd in hash_walk lib/hash.c:270
    9 0x5646b717ae0c in update_group_af_walk bgpd/bgp_updgrp.c:2046
    10 0x5646b7181275 in group_announce_route bgpd/bgp_updgrp_adv.c:1030
    11 0x5646b711a986 in bgp_process_main_one bgpd/bgp_route.c:3303
    12 0x5646b711b5bf in bgp_process_wq bgpd/bgp_route.c:3444
    13 0x7f8064da12d7 in work_queue_run lib/workqueue.c:267
    14 0x7f8064d891fb in thread_call lib/thread.c:1991
    15 0x7f8064cdffcf in frr_run lib/libfrr.c:1185
    16 0x5646b6feca67 in main bgpd/bgp_main.c:505
    17 0x7f8063f96c86 in __libc_start_main (/lib/x86_64-linux-gnu/libc.so.6+0x21c86)
```

Signed-off-by: Donatas Abraitis <donatas@opensourcerouting.org>
2 years agoMerge pull request #12942 from LabNConsulting/chopps/fixpause
Donatas Abraitis [Fri, 3 Mar 2023 15:20:14 +0000 (17:20 +0200)]
Merge pull request #12942 from LabNConsulting/chopps/fixpause

tests: fix --pause functionality

2 years agobgpd: rfapi memleak: clean CE tables at exit 12934/head
G. Paul Ziemba [Thu, 2 Mar 2023 21:23:08 +0000 (13:23 -0800)]
bgpd: rfapi memleak: clean CE tables at exit

Signed-off-by: G. Paul Ziemba <paulz@labn.net>
2 years agotests: fix --pause functionality 12942/head
Christian Hopps [Fri, 3 Mar 2023 07:49:10 +0000 (02:49 -0500)]
tests: fix --pause functionality

Signed-off-by: Christian Hopps <chopps@labn.net>
2 years agoMerge pull request #12945 from opensourcerouting/fix/relax_a_bit_some_commitlint_rules
Christian Hopps [Fri, 3 Mar 2023 12:13:44 +0000 (07:13 -0500)]
Merge pull request #12945 from opensourcerouting/fix/relax_a_bit_some_commitlint_rules

tools: Do not force Sentence-case for commit messages

2 years agotools: Do not force Sentence-case for commit messages 12945/head
Donatas Abraitis [Fri, 3 Mar 2023 12:10:36 +0000 (14:10 +0200)]
tools: Do not force Sentence-case for commit messages

Signed-off-by: Donatas Abraitis <donatas@opensourcerouting.org>
2 years agobfdd: Remove useless check for ECHO packet 12940/head
anlan_cs [Thu, 2 Mar 2023 09:57:17 +0000 (17:57 +0800)]
bfdd: Remove useless check for ECHO packet

The check with `ip->daddr == ip->saddr` in `bfd_recv_ipv4_fp()` is
useless, instead of it the ECHO packets should simply exit with
TTL checking failure regardless of this condition check.

Just remove the check.

Signed-off-by: anlan_cs <vic.lan@pica8.com>
2 years agoMerge pull request #12943 from opensourcerouting/feature/add_helpurl
Christian Hopps [Fri, 3 Mar 2023 08:15:16 +0000 (03:15 -0500)]
Merge pull request #12943 from opensourcerouting/feature/add_helpurl

tools: Commit linter minor adjustments

2 years agotools: Add missing `mgmtd` prefix for commitlint 12943/head
Donatas Abraitis [Fri, 3 Mar 2023 08:11:51 +0000 (10:11 +0200)]
tools: Add missing `mgmtd` prefix for commitlint

Signed-off-by: Donatas Abraitis <donatas@opensourcerouting.org>
2 years agotools: Add missing `pathd` prefix for commitlint
Donatas Abraitis [Fri, 3 Mar 2023 08:07:06 +0000 (10:07 +0200)]
tools: Add missing `pathd` prefix for commitlint

Signed-off-by: Donatas Abraitis <donatas@opensourcerouting.org>
2 years agotools: Add help url when commitlint fails
Donatas Abraitis [Tue, 7 Feb 2023 21:08:42 +0000 (23:08 +0200)]
tools: Add help url when commitlint fails

Just point to our workflow documentation.

Signed-off-by: Donatas Abraitis <donatas@opensourcerouting.org>
2 years agoospfd: correctly update outbound filter-list once prefix-list is updated 12936/head
Renato Westphal [Thu, 2 Mar 2023 22:51:51 +0000 (19:51 -0300)]
ospfd: correctly update outbound filter-list once prefix-list is updated

Fix obvious bug where the wrong area filter-lists were being updated
in response to a prefix-list update.

Signed-off-by: Renato Westphal <renato@opensourcerouting.org>
2 years agoospfd, ospf6d: perform GR consistency check only when necessary 12922/head
Renato Westphal [Wed, 1 Mar 2023 20:31:56 +0000 (17:31 -0300)]
ospfd, ospf6d: perform GR consistency check only when necessary

The GR code should check for topology changes only upon the receipt
of Router-LSAs and Network-LSAs. Other LSAs types don't affect the
topology as far as a restarting router is concerned.

This optimization reduces unnecessary computations when the
restarting router receives thousands of inter-area LSAs or external
LSAs while coming back up.

Signed-off-by: Renato Westphal <renato@opensourcerouting.org>
2 years agoospf6d: fix processing of inter-area-prefix-LSAs with the LA-bit set 12935/head
Renato Westphal [Thu, 2 Mar 2023 22:39:17 +0000 (19:39 -0300)]
ospf6d: fix processing of inter-area-prefix-LSAs with the LA-bit set

RFC 5340, Section 4.8.3 says:
  "Prefixes having the NU-bit set in their PrefixOptions field should
  be ignored by the inter-area route calculation".

Fix a bug where, in addition to the NU-bit, ospf6d was also ignoring
prefixes having the LA-bit set when computing inter-area routes. In
practice, this fixes interoperability issues with vendors that set
the LA-bit in loopback prefixes (among other cases).

While here, fix a copy-and-paste error where a log message wasn't
showing accurate information about what happened.

Signed-off-by: Renato Westphal <renato@opensourcerouting.org>
2 years agoospf6d: handle redistributed routes without nexthop addresses 12937/head
Renato Westphal [Thu, 2 Mar 2023 23:20:39 +0000 (20:20 -0300)]
ospf6d: handle redistributed routes without nexthop addresses

Do not assume that all redistributed routes have a nexthop address,
otherwise blackhole nexthops can be misinterpreted as IPv6 addresses,
leading to inconsistencies.

Also, change the signature of a few functions to allow const nexthop
addresses, such that in6addr_any can be used without type casts.

Signed-off-by: Renato Westphal <renato@opensourcerouting.org>
2 years agoospf6d: fix missing intra-area-prefix-LSA after a graceful restart
Renato Westphal [Wed, 1 Mar 2023 20:31:56 +0000 (17:31 -0300)]
ospf6d: fix missing intra-area-prefix-LSA after a graceful restart

Upon exiting the GR mode, force reorigination of intra-area-prefix-LSAs
on all attached areas. This is to ensure all configured areas will have
an associated intra-area-prefix-LSA at the end of the GR procedures,
even if the area doesn't have any full adjacency.

Signed-off-by: Renato Westphal <renato@opensourcerouting.org>
2 years agoospf6d: originate AS-External LSAs with a forwarding address
Renato Westphal [Thu, 2 Mar 2023 23:20:39 +0000 (20:20 -0300)]
ospf6d: originate AS-External LSAs with a forwarding address

Originate AS-External LSAs with forwarding addresses whenever the
corresponding redistributed routes have a global nexthop address.

Signed-off-by: Renato Westphal <renato@opensourcerouting.org>
2 years agoospf6d: fix refreshing of NSSA/AS-external LSAs after a graceful restart
Renato Westphal [Wed, 1 Mar 2023 20:31:56 +0000 (17:31 -0300)]
ospf6d: fix refreshing of NSSA/AS-external LSAs after a graceful restart

This commit fixes a bug where self-originated NSSA/AS-External LSAs
would age out about one hour after exiting from the GR mode. The
reason is because received self-originated LSAs aren't registered
for periodic refreshing, so that needs to be done manually. Fix
this by explicitly reoriginating all NSSA/AS-External LSAs while
exiting from the GR mode.

Signed-off-by: Renato Westphal <renato@opensourcerouting.org>
2 years agoospf6d: fix duplicate inter-area-prefix-LSAs after exiting from GR mode
Renato Westphal [Wed, 1 Mar 2023 20:31:56 +0000 (17:31 -0300)]
ospf6d: fix duplicate inter-area-prefix-LSAs after exiting from GR mode

An ABR that is originating inter-area-prefix-LSAs should take into
account the fact that there might be self-originated LSAs for the
same prefixes that were originated prior to a graceful restart. When
that happens, the previous LSA-IDs should be reused to avoid having
duplicate LSAs.

Signed-off-by: Renato Westphal <renato@opensourcerouting.org>
2 years agoospf6d: add exception for virtual links when exiting from the GR mode
Renato Westphal [Wed, 1 Mar 2023 20:31:56 +0000 (17:31 -0300)]
ospf6d: add exception for virtual links when exiting from the GR mode

RFC 5340 says that Link-LSAs should not be originated for virtual
links.  Add a check to prevent that from happening while exiting
from the GR mode.

Signed-off-by: Renato Westphal <renato@opensourcerouting.org>
2 years agoospf6d: update DR election to handle GR corner case
Renato Westphal [Wed, 1 Mar 2023 20:31:56 +0000 (17:31 -0300)]
ospf6d: update DR election to handle GR corner case

Consider the case where a DR router is performing a graceful restart,
and all neighbors attached to the DR network have their priorities
set to zero.

According to RFC 3623, the router should reclaim its DR status while
coming back up once it receives a Hello packet from a neighbor
listing the router as the DR, and the associated interface is in
Waiting state.

The problem arises when the DR election starts. Since the router
is already elected the DR, and no BDR will be elected (since all
neighbors have their priorities set to zero), the AdjOk event won't
be triggered at the end of the DR election as it would normally
happen. That causes all neighbors reachable over the broadcast
interface to get stuck in the 2-Way state.

Fix this corner case by always triggering the AdjOk event at the
end of the DR election process when a GR is in progress. Triggering
the AdjOk event when not necessary should never be a problem as
the neighbor FSM is already prepared to deal with that.

Signed-off-by: Renato Westphal <renato@opensourcerouting.org>
2 years agoMerge pull request #12650 from isabelladeleon12/advertise_high_metrics
Russ White [Thu, 2 Mar 2023 21:42:50 +0000 (16:42 -0500)]
Merge pull request #12650 from isabelladeleon12/advertise_high_metrics

isisd: Add support for advertise-high-metrics

2 years agoMerge pull request #12760 from opensourcerouting/fix/switch_to_pr_for_commitlint
mobash-rasool [Thu, 2 Mar 2023 07:54:28 +0000 (13:24 +0530)]
Merge pull request #12760 from opensourcerouting/fix/switch_to_pr_for_commitlint

tools: Replace pull_request_target to pull_request for commitlint action

2 years agoMerge pull request #12903 from patrasar/pim_rp_nexthop_fix
Donatas Abraitis [Thu, 2 Mar 2023 07:54:18 +0000 (09:54 +0200)]
Merge pull request #12903 from patrasar/pim_rp_nexthop_fix

pimd, pim6d: Don't track nexthop for RP 0.0.0.0 & 0::0

2 years agoMerge pull request #12921 from donaldsharp/pim_regiface_crash
Donatas Abraitis [Thu, 2 Mar 2023 06:14:35 +0000 (08:14 +0200)]
Merge pull request #12921 from donaldsharp/pim_regiface_crash

pimd: Prevent crash when pimreg already exists.

2 years agoMerge pull request #12008 from patrasar/pimv6_bsm_process
Donatas Abraitis [Thu, 2 Mar 2023 06:10:32 +0000 (08:10 +0200)]
Merge pull request #12008 from patrasar/pimv6_bsm_process

pimd, pim6d: Fix RPF check

2 years agopimd: Prevent crash when pimreg already exists. 12921/head
Donald Sharp [Wed, 1 Mar 2023 19:41:21 +0000 (14:41 -0500)]
pimd: Prevent crash when pimreg already exists.

If the pimreg device exists but it has not been set to the pim->pimreg pointer we can have
a crash.  Just prevent the crash since it's some sort of startup / re-org the network
issue.

(gdb) bt
0  0x00007f0485b035cb in raise () from /lib/x86_64-linux-gnu/libpthread.so.0
1  0x00007f0485c0fbec in core_handler (signo=6, siginfo=0x7ffdc0198030, context=<optimized out>) at lib/sigevent.c:264
2  <signal handler called>
3  0x00007f04859668eb in raise () from /lib/x86_64-linux-gnu/libc.so.6
4  0x00007f0485951535 in abort () from /lib/x86_64-linux-gnu/libc.so.6
5  0x00007f0485c3af76 in _zlog_assert_failed (xref=xref@entry=0x55692269b940 <_xref.23164>, extra=extra@entry=0x0) at lib/zlog.c:680
6  0x00005569226150d0 in pim_if_new (ifp=0x556922c82900, gm=gm@entry=false, pim=pim@entry=false, ispimreg=ispimreg@entry=true,
    is_vxlan_term=is_vxlan_term@entry=false) at pimd/pim_iface.c:124
7  0x0000556922615140 in pim_if_create_pimreg (pim=pim@entry=0x556922cc11e0) at pimd/pim_iface.c:1549
8  0x0000556922616bc8 in pim_if_create_pimreg (pim=0x556922cc11e0) at pimd/pim_iface.c:1613
9  pim_ifp_create (ifp=0x556922cc0e70) at pimd/pim_iface.c:1641
10 0x00007f0485c32cf9 in zclient_interface_add (cmd=<optimized out>, zclient=<optimized out>, length=<optimized out>, vrf_id=77) at lib/zclient.c:2214
11 0x00007f0485c3346a in zclient_read (thread=<optimized out>) at lib/zclient.c:4003
12 0x00007f0485c215ed in thread_call (thread=thread@entry=0x7ffdc0198880) at lib/thread.c:2008
13 0x00007f0485bdbbc8 in frr_run (master=0x556922a10470) at lib/libfrr.c:1223
14 0x000055692260312b in main (argc=<optimized out>, argv=0x7ffdc0198b98, envp=<optimized out>) at pimd/pim_main.c:176

Signed-off-by: Donald Sharp <sharpd@nvidia.com>
2 years agoMerge pull request #12920 from sri-mohan1/sri-mohan-ldp
mobash-rasool [Wed, 1 Mar 2023 19:10:26 +0000 (00:40 +0530)]
Merge pull request #12920 from sri-mohan1/sri-mohan-ldp

ldpd: changes for code maintainability

2 years agoldpd: changes for code maintainability 12920/head
sri-mohan1 [Wed, 1 Mar 2023 11:54:54 +0000 (17:24 +0530)]
ldpd: changes for code maintainability

these changes are for improving the code maintainability and readability

Signed-off-by: sri-mohan1 <sri.mohan@samsung.com>
2 years agoMerge pull request #12917 from pguibert6WIND/bpi_ultimate_path_debug
Donatas Abraitis [Wed, 1 Mar 2023 08:04:43 +0000 (10:04 +0200)]
Merge pull request #12917 from pguibert6WIND/bpi_ultimate_path_debug

Bpi ultimate path debug

2 years agoMerge pull request #12811 from Avineus/frr_neighlog_5884
Donatas Abraitis [Wed, 1 Mar 2023 07:59:01 +0000 (09:59 +0200)]
Merge pull request #12811 from Avineus/frr_neighlog_5884

Fix for "Debugs For RFC 5549 Neighbor Creation #5884"

2 years agoMerge pull request #12914 from patrasar/pim_mroute_fix
Donatas Abraitis [Wed, 1 Mar 2023 07:57:29 +0000 (09:57 +0200)]
Merge pull request #12914 from patrasar/pim_mroute_fix

pimd, pim6d: Don't start KAT timer when traffic received on PIM disabled interface

2 years agobgpd: debug trace retrieve real peer origin of path info 12917/head
Philippe Guibert [Fri, 24 Feb 2023 13:26:59 +0000 (14:26 +0100)]
bgpd: debug trace retrieve real peer origin of path info

The BGP path info debugging information should dump the
real peer information for imported prefixes.

Signed-off-by: Philippe Guibert <philippe.guibert@6wind.com>
2 years agobgpd: generalize imported peer in bgp best selection function
Philippe Guibert [Fri, 24 Feb 2023 13:19:06 +0000 (14:19 +0100)]
bgpd: generalize imported peer in bgp best selection function

The bgp_path_info_cmp() function needs to get the peer of
imported prefixes in many parts of the algorithm. Use two
local variables to get the original peer either for vpn
imported prefixes or from standard prefixes.

Signed-off-by: Philippe Guibert <philippe.guibert@6wind.com>
2 years agoMerge pull request #12618 from pguibert6WIND/vpnv4_ecmp
Russ White [Tue, 28 Feb 2023 20:49:05 +0000 (15:49 -0500)]
Merge pull request #12618 from pguibert6WIND/vpnv4_ecmp

Vpnv4 ecmp

2 years agodoc: Add CLI documentation for new advertise high metrics command 12650/head
Isabella de Leon [Tue, 17 Jan 2023 04:25:30 +0000 (20:25 -0800)]
doc: Add CLI documentation for new advertise high metrics command

Update isisd docs with advertise-high-metrics config.

Signed-off-by: Isabella de Leon <ideleon@microsoft.com>
2 years agotests: Add test to cover advertise-high-metrics functionality
Isabella de Leon [Tue, 17 Jan 2023 04:19:29 +0000 (20:19 -0800)]
tests: Add test to cover advertise-high-metrics functionality

Add tests that configure and disable advertise-high-metrics with wide, narrow, and transition metric styles. Also test ip route behavior.

Signed-off-by: Isabella de Leon <ideleon@microsoft.com>
2 years agoisisd: Add advertise high metrics base functionality
Isabella de Leon [Wed, 11 Jan 2023 01:58:29 +0000 (17:58 -0800)]
isisd: Add advertise high metrics base functionality

Implement advertise-high-metrics set function - when advertise-high-metrics is configured, iterate through each isis interface and update each metric to its high metric value. When advertise-high-metrics is disabled, revert each interface's metric to its originally configured value.

Signed-off-by: Isabella de Leon <ideleon@microsoft.com>
2 years agoisisd: Add advertise-high-metrics CLI/YANG support, modify show output
Isabella de Leon [Fri, 6 Jan 2023 18:06:23 +0000 (10:06 -0800)]
isisd: Add advertise-high-metrics CLI/YANG support, modify show output

New config and show functionality:

r1# conf
r1(config)# router isis 1
r1(config-router)#
  advertise-high-metrics  Advertise high metric value on all interfaces
  area-password           Configure the authentication password for an area
  ...
r1(config-router)# advertise-high-metrics
r1(config-router)# end
r1# show isis summary
...
Area 1:
  Net: 49.0001.1720.1700.0002.00
  TX counters per PDU type:
     L2 IIH: 1
    P2P IIH: 36
   LSP RXMT: 0
  RX counters per PDU type:
  Advertise high metrics: Enabled
  Level-2:
   ...
r1# conf
r1(config)# router isis 1
r1(config-router)# no advertise-high-metrics
r1(config-router)# end
r1# show isis summary
...
Area 1:
  Net: 49.0001.1720.1700.0002.00
  TX counters per PDU type:
     L2 IIH: 1
    P2P IIH: 45
   LSP RXMT: 0
  RX counters per PDU type:
  Advertise high metrics: Disabled
  Level-2:
   ...
r1#

Signed-off-by: Isabella de Leon <ideleon@microsoft.com>