Commit Graph

31325 Commits

Author SHA1 Message Date
Russ White
15424f55f3
Merge pull request #12650 from isabelladeleon12/advertise_high_metrics
isisd: Add support for advertise-high-metrics
2023-03-02 16:42:50 -05:00
mobash-rasool
48cdfc16dd
Merge pull request #12760 from opensourcerouting/fix/switch_to_pr_for_commitlint
tools: Replace pull_request_target to pull_request for commitlint action
2023-03-02 13:24:28 +05:30
Donatas Abraitis
521af5ffee
Merge pull request #12903 from patrasar/pim_rp_nexthop_fix
pimd, pim6d: Don't track nexthop for RP 0.0.0.0 & 0::0
2023-03-02 09:54:18 +02:00
Donatas Abraitis
0e957d006a
Merge pull request #12921 from donaldsharp/pim_regiface_crash
pimd: Prevent crash when pimreg already exists.
2023-03-02 08:14:35 +02:00
Donatas Abraitis
001ca23944
Merge pull request #12008 from patrasar/pimv6_bsm_process
pimd, pim6d: Fix RPF check
2023-03-02 08:10:32 +02:00
Donald Sharp
7ae7a3bfd6 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>
2023-03-01 14:56:05 -05:00
mobash-rasool
32701c48d8
Merge pull request #12920 from sri-mohan1/sri-mohan-ldp
ldpd: changes for code maintainability
2023-03-02 00:40:26 +05:30
sri-mohan1
2073f92908 ldpd: changes for code maintainability
these changes are for improving the code maintainability and readability

Signed-off-by: sri-mohan1 <sri.mohan@samsung.com>
2023-03-01 17:24:54 +05:30
Donatas Abraitis
a91520cfaf
Merge pull request #12917 from pguibert6WIND/bpi_ultimate_path_debug
Bpi ultimate path debug
2023-03-01 10:04:43 +02:00
Donatas Abraitis
933282787c
Merge pull request #12811 from Avineus/frr_neighlog_5884
Fix for "Debugs For RFC 5549 Neighbor Creation #5884"
2023-03-01 09:59:01 +02:00
Donatas Abraitis
063c470100
Merge pull request #12914 from patrasar/pim_mroute_fix
pimd, pim6d: Don't start KAT timer when traffic received on PIM disabled interface
2023-03-01 09:57:29 +02:00
Philippe Guibert
b1ff5529c7 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>
2023-02-28 22:00:25 +01:00
Philippe Guibert
8cd3d07097 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>
2023-02-28 22:00:25 +01:00
Russ White
516444e6b1
Merge pull request #12618 from pguibert6WIND/vpnv4_ecmp
Vpnv4 ecmp
2023-02-28 15:49:05 -05:00
Isabella de Leon
102a6e2699 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>
2023-02-28 11:39:12 -08:00
Isabella de Leon
96d2e071e5 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>
2023-02-28 11:39:12 -08:00
Isabella de Leon
7c47551763 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>
2023-02-28 11:39:12 -08:00
Isabella de Leon
d74f913c5f 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>
2023-02-28 11:39:12 -08:00
Diogo Oliveira
06fbbf2935 isisd,tests,doc: Rename hello padding sometimes to hello padding during-adjacency-formation
Signed-off-by: Diogo Oliveira <14191454+dorDiogo@users.noreply.github.com>
2023-02-28 09:54:02 -08:00
Diogo Oliveira
d73b209a42 doc: Add CLI documentation for new isis hello padding sometimes command
Signed-off-by: Diogo Oliveira <14191454+dorDiogo@users.noreply.github.com>
2023-02-28 09:52:30 -08:00
Diogo Oliveira
8b71e8790c tests: Add test to check hello padding sometimes behavior
Signed-off-by: Diogo Oliveira <14191454+dorDiogo@users.noreply.github.com>
2023-02-28 09:52:30 -08:00
Diogo Oliveira
e36ec6acbc isisd: Add support for isis hello padding sometimes
New configuration to pad ISIS hello packets during adjacency formation only.

Signed-off-by: Diogo Oliveira <14191454+dorDiogo@users.noreply.github.com>
2023-02-28 08:48:30 -08:00
Sarita Patra
201a31b977 pimd, pim6d: Don't track nexthop for RP 0.0.0.0 & 0::0
Topology:
========
FHR----Source

Problem:
=======
When FHR receives multicast traffic, there is no RP configured,
PIMD does NHT register for RP address 0.0.0.0 and group 224.0.0.0/4
PIM6D does NHT register for RP address 0::0 and group FF00::0/8

frr# show ip pim nexthop
Number of registered addresses: 1
Address         Interface        Nexthop
---------------------------------------------

frr# show ipv6 pim nexthop
Number of registered addresses: 1
Address         Interface        Nexthop
---------------------------------------------

Fix:
====
Dont track nexthop for RP 0.0.0.0 & 0::0.

frr# show ip pim nexthop
Number of registered addresses: 0

frr# show ipv6 pim nexthop
Number of registered addresses: 0

Issue: #12104

Signed-off-by: Sarita Patra <saritap@vmware.com>
2023-02-28 08:38:50 -08:00
Russ White
617d2b71c0
Merge pull request #12840 from dorDiogo/isis_advertise_passive_only
isisd: Add support for IS-IS advertise-passive-only
2023-02-28 09:22:32 -05:00
Russ White
4fa0162568
Merge pull request #12819 from isabelladeleon12/isis_load_config_before_lsp_gen
isisd: Delay lsp generation to after config processing is complete
2023-02-28 08:38:44 -05:00
Donald Sharp
57fb014717
Merge pull request #12912 from opensourcerouting/fix/free_memory_on_shutdown
bgpd: Free aggregate route memory on shutdown
2023-02-28 07:51:06 -05:00
Donald Sharp
b82c75c64b
Merge pull request #12911 from opensourcerouting/fix/python_warning_ospf
tests: Use inequality operator for strings
2023-02-28 07:50:10 -05:00
Donald Sharp
9276144ad0
Merge pull request #12913 from opensourcerouting/fix/memory_leak_with_route_maps
bgpd: Intern attributes before putting into rib-out
2023-02-28 07:49:44 -05:00
Sarita Patra
b4ba03b34c pimd: Don't start KAT timer when traffic received on PIM disabled interface
Topology:
RP---FHR---Source

Problem Statement:
1. In FHR, Enable PIM and IGMP on source connected interface
2. Start multicast traffic. (s,g) mroute and upstream will be created as expected.
3. Disable PIM on source connected interface.
4. Disable IGMP on source connected interface.
5. Stop the traffic.

Mroute will never get timeout.

Root Cause:
In FHR, when PIMD receive multicast data packet on
source connected interface which is IGMP enabled, but PIM
not enabled. PIMD process the packet, install the
mroute and start the KAT timer.

Fix:
Don't process multicast data packet received on PIM disabled

Signed-off-by: Sarita Patra <saritap@vmware.com>
2023-02-28 01:45:14 -08:00
Naveen
1155a66246 tests: Enhance error msgs for static route auto.
tests: Enhance error messages for static route automation.

    Signed-off-by: nguggarigoud <nguggarigoud@vmware.com>
2023-02-28 06:30:13 +00:00
Donatas Abraitis
29a9aae5c3 bgpd: Intern attributes before putting into rib-out
After we call subgroup_announce_check(), we leave communities, large-communities
that are modified by route-maps uninterned, and here we have a memory leak.

```
./bgp_large_community.test_bgp_large_community_topo_2/r1.bgpd.asan.2465323:Direct leak of 80 byte(s) in 2 object(s) allocated from:
./bgp_large_community.test_bgp_large_community_topo_2/r1.bgpd.asan.2465323-    #0 0x7f0858d90037 in __interceptor_calloc ../../../../src/libsanitizer/asan/asan_malloc_linux.cpp:154
./bgp_large_community.test_bgp_large_community_topo_2/r1.bgpd.asan.2465323-    #1 0x7f08589b15b2 in qcalloc lib/memory.c:105
./bgp_large_community.test_bgp_large_community_topo_2/r1.bgpd.asan.2465323-    #2 0x561f5c4e08d2 in lcommunity_new bgpd/bgp_lcommunity.c:28
./bgp_large_community.test_bgp_large_community_topo_2/r1.bgpd.asan.2465323-    #3 0x561f5c4e11d9 in lcommunity_dup bgpd/bgp_lcommunity.c:141
./bgp_large_community.test_bgp_large_community_topo_2/r1.bgpd.asan.2465323-    #4 0x561f5c5c3b8b in route_set_lcommunity bgpd/bgp_routemap.c:2491
./bgp_large_community.test_bgp_large_community_topo_2/r1.bgpd.asan.2465323-    #5 0x7f0858a177a5 in route_map_apply_ext lib/routemap.c:2675
./bgp_large_community.test_bgp_large_community_topo_2/r1.bgpd.asan.2465323-    #6 0x561f5c5696f9 in subgroup_announce_check bgpd/bgp_route.c:2352
./bgp_large_community.test_bgp_large_community_topo_2/r1.bgpd.asan.2465323-    #7 0x561f5c5fb728 in subgroup_announce_table bgpd/bgp_updgrp_adv.c:682
./bgp_large_community.test_bgp_large_community_topo_2/r1.bgpd.asan.2465323-    #8 0x561f5c5fbd95 in subgroup_announce_route bgpd/bgp_updgrp_adv.c:765
./bgp_large_community.test_bgp_large_community_topo_2/r1.bgpd.asan.2465323-    #9 0x561f5c5f6105 in peer_af_announce_route bgpd/bgp_updgrp.c:2187
./bgp_large_community.test_bgp_large_community_topo_2/r1.bgpd.asan.2465323-    #10 0x561f5c5790be in bgp_announce_route_timer_expired bgpd/bgp_route.c:5032
./bgp_large_community.test_bgp_large_community_topo_2/r1.bgpd.asan.2465323-    #11 0x7f0858a76e4e in thread_call lib/thread.c:1991
./bgp_large_community.test_bgp_large_community_topo_2/r1.bgpd.asan.2465323-    #12 0x7f0858974c24 in frr_run lib/libfrr.c:1185
./bgp_large_community.test_bgp_large_community_topo_2/r1.bgpd.asan.2465323-    #13 0x561f5c3e955d in main bgpd/bgp_main.c:505
./bgp_large_community.test_bgp_large_community_topo_2/r1.bgpd.asan.2465323-    #14 0x7f08583a9d09 in __libc_start_main ../csu/libc-start.c:308
./bgp_large_community.test_bgp_large_community_topo_2/r1.bgpd.asan.2465323-
./bgp_large_community.test_bgp_large_community_topo_2/r1.bgpd.asan.2465323:Indirect leak of 144 byte(s) in 2 object(s) allocated from:
./bgp_large_community.test_bgp_large_community_topo_2/r1.bgpd.asan.2465323-    #0 0x7f0858d8fe8f in __interceptor_malloc ../../../../src/libsanitizer/asan/asan_malloc_linux.cpp:145
./bgp_large_community.test_bgp_large_community_topo_2/r1.bgpd.asan.2465323-    #1 0x7f08589b1579 in qmalloc lib/memory.c:100
./bgp_large_community.test_bgp_large_community_topo_2/r1.bgpd.asan.2465323-    #2 0x561f5c4e1282 in lcommunity_dup bgpd/bgp_lcommunity.c:144
./bgp_large_community.test_bgp_large_community_topo_2/r1.bgpd.asan.2465323-    #3 0x561f5c5c3b8b in route_set_lcommunity bgpd/bgp_routemap.c:2491
./bgp_large_community.test_bgp_large_community_topo_2/r1.bgpd.asan.2465323-    #4 0x7f0858a177a5 in route_map_apply_ext lib/routemap.c:2675
./bgp_large_community.test_bgp_large_community_topo_2/r1.bgpd.asan.2465323-    #5 0x561f5c5696f9 in subgroup_announce_check bgpd/bgp_route.c:2352
./bgp_large_community.test_bgp_large_community_topo_2/r1.bgpd.asan.2465323-    #6 0x561f5c5fb728 in subgroup_announce_table bgpd/bgp_updgrp_adv.c:682
./bgp_large_community.test_bgp_large_community_topo_2/r1.bgpd.asan.2465323-    #7 0x561f5c5fbd95 in subgroup_announce_route bgpd/bgp_updgrp_adv.c:765
./bgp_large_community.test_bgp_large_community_topo_2/r1.bgpd.asan.2465323-    #8 0x561f5c5f6105 in peer_af_announce_route bgpd/bgp_updgrp.c:2187
./bgp_large_community.test_bgp_large_community_topo_2/r1.bgpd.asan.2465323-    #9 0x561f5c5790be in bgp_announce_route_timer_expired bgpd/bgp_route.c:5032
./bgp_large_community.test_bgp_large_community_topo_2/r1.bgpd.asan.2465323-    #10 0x7f0858a76e4e in thread_call lib/thread.c:1991
./bgp_large_community.test_bgp_large_community_topo_2/r1.bgpd.asan.2465323-    #11 0x7f0858974c24 in frr_run lib/libfrr.c:1185
./bgp_large_community.test_bgp_large_community_topo_2/r1.bgpd.asan.2465323-    #12 0x561f5c3e955d in main bgpd/bgp_main.c:505
./bgp_large_community.test_bgp_large_community_topo_2/r1.bgpd.asan.2465323-    #13 0x7f08583a9d09 in __libc_start_main ../csu/libc-start.c:308
./bgp_large_community.test_bgp_large_community_topo_2/r1.bgpd.asan.2465323-
./bgp_large_community.test_bgp_large_community_topo_2/r1.bgpd.asan.2465323-SUMMARY: AddressSanitizer: 224 byte(s) leaked in 4 allocation(s).
```

Signed-off-by: Donatas Abraitis <donatas@opensourcerouting.org>
2023-02-27 23:40:32 +02:00
Donatas Abraitis
69a9680a78 bgpd: Free aggregate route memory on shutdown
Memory leak happens on shutdown or if BGP already deconfigured.

Signed-off-by: Donatas Abraitis <donatas@opensourcerouting.org>
2023-02-27 22:15:07 +02:00
Donatas Abraitis
0ce6a441e2 tests: Use inequality operator for strings
tests/topotests/lib/ospf.py:2819: SyntaxWarning: "is not" with a literal. Did you mean "!="?
    _age is not "get"

-- Docs: https://docs.pytest.org/en/stable/how-to/capture-warnings.html

Signed-off-by: Donatas Abraitis <donatas@opensourcerouting.org>
2023-02-27 22:08:47 +02:00
Donatas Abraitis
6e6bde182d
Merge pull request #12899 from patrasar/pimv6_mld_interface_cmd
pim6d: Fix display issue in "show ipv6 mld interface" command
2023-02-27 21:01:43 +02:00
Donatas Abraitis
6fc45a9778
Merge pull request #12906 from patrasar/pim_core
pimd, pim6d: Upstream IIF pointing towards PIM and IGMP disabled source conn…
2023-02-27 20:54:50 +02:00
Donatas Abraitis
2d5eded35b
Merge pull request #12907 from donaldsharp/memory_why_you_do_this
bgpd: Prevent asn dot memory leak
2023-02-27 20:51:53 +02:00
Igor Ryzhov
75147bd3ce
Merge pull request #12908 from opensourcerouting/fix/memory_leak_path_attributes
bgpd: Free temporary memory after using argv_concat()
2023-02-27 20:46:21 +02:00
Donatas Abraitis
14da03c5c0 bgpd: Free temporary memory after using argv_concat()
Signed-off-by: Donatas Abraitis <donatas@opensourcerouting.org>
2023-02-27 16:53:28 +02:00
Kavitha
55da97df50 zebra: neigh update netlink log
Added debug log in netlink_neigh_update(), with
ifindex, ifname, ipaddress and mac address.

Signed-off-by: Kavitha <kavirhene@gmail.com>
2023-02-27 18:45:03 +05:30
Donatas Abraitis
148ad13257
Merge pull request #12866 from anlancs/lib/dotas-zero
lib: some ASNUMs should be forbidden
2023-02-27 11:05:47 +02:00
Sarita Patra
9e01548593 pimd, pim6d: Upstream IIF pointing towards PIM and IGMP disabled source connected interface
Topology:
=========
RP---FHR<ens224>---Source

Problem Statement:
=================
Step 1:
Enable PIM and IGMP on source connected interface ens224

Step 2:
Start multicast traffic. (s,g) mroute and upstream will be created as expected.

dev# show ip mroute
IP Multicast Routing Table
Flags: S - Sparse, C - Connected, P - Pruned
       R - SGRpt Pruned, F - Register flag, T - SPT-bit for SSM FHR
 Source    Group      Flags  Proto  Input   Output  TTL  Uptime
 50.0.0.4  225.1.1.1  SF     PIM    ens224  pimreg  1    00:37:55

dev# show ip pim upstream
 Iif     Source    Group      State      Uptime    JoinTimer  RSTimer   KATimer   RefCnt
 ens224  50.0.0.4  225.1.1.1  NotJ,RegJ  00:37:57  --:--:--   --:--:--  00:02:43  1

Step 3:
Disable PIM on source connected interafce ens224

dev# show ip mroute
IP Multicast Routing Table
Flags: S - Sparse, C - Connected, P - Pruned
       R - SGRpt Pruned, F - Register flag, T - SPT-bit for SSM FHR
 Source    Group      Flags  Proto  Input   Output  TTL  Uptime
 50.0.0.4  225.1.1.1  SF     PIM    ens224  pimreg  1    00:38:05

dev# show ip pim upstream
 Iif     Source    Group      State      Uptime    JoinTimer  RSTimer   KATimer   RefCnt
 ens224  50.0.0.4  225.1.1.1  NotJ,RegJ  00:38:08  --:--:--   --:--:--  00:02:32  1

Step 4:
Disable IGMP on source connected interface ens224

dev# show ip pim upstream
 Iif     Source    Group      State      Uptime    JoinTimer  RSTimer   KATimer   RefCnt
 ens224  50.0.0.4  225.1.1.1  NotJ,RegJ  00:38:15  --:--:--   --:--:--  00:03:27  1

dev# show ip mroute
IP Multicast Routing Table
Flags: S - Sparse, C - Connected, P - Pruned
       R - SGRpt Pruned, F - Register flag, T - SPT-bit for SSM FHR
 Source    Group      Flags  Proto  Input   Output  TTL  Uptime
 50.0.0.4  225.1.1.1  SF     PIM    <iif?>  pimreg  1    00:38:18

Pim upstream IIF is still pointing towards the source connected
interface which is not pim enabled and not IGMP enabled and
Mroute is still present in the kernel and KAT timer is still running
on the interface, where ifp->info is already set to NULL.
This leads to crash.

Root Cause:
==========
When "no ip pim" commands get executed on source connected interface,
we are updating upstream IIF only when IGMP is not enabled on the same
interface.

Fix:
===
When PIM is disabled on source connected interface, update upstream IIF
no matter if IGMP is enabled or not on the same interface.

Issue: #12848
Issue: #10782

Signed-off-by: Sarita Patra <saritap@vmware.com>
2023-02-26 22:43:38 -08:00
Philippe Guibert
6cd0aae924 topotests: add vpnv4 ecmp test
This test ensures that BGP VRF instance is able to import ECMP
paths, and is able to install 2 labelled routes accordingly.

The test also ensures that the imported 172.31.0.10/32 prefix
is selected and that the reason why the 172.31.0.10/32 prefix is
selected is not 'Locally configured route'. Actually, imported
routes do not figure out correctly the peer, and the reason is
falsely mentioned as local.

This test also uses IP ranges used for documentation and for
testing.

Signed-off-by: Philippe Guibert <philippe.guibert@6wind.com>
2023-02-26 09:44:16 +01:00
Philippe Guibert
cefda028bb bgpd: best path calculation uses peer from imported prefixes
Until now, when calculating the bgp bestpath route, the peer
comparison could not be performed for imported prefixes, as
the peer origin could not be retrieved. As consequence, the
reason why a given prefix as chosen was wrong: "Locally
configured route" was the main reason, whereas the prefix
was imported from a remote peer.

Fix this by searching for the real peer.

Signed-off-by: Philippe Guibert <philippe.guibert@6wind.com>
2023-02-26 09:44:16 +01:00
Donald Sharp
3376972e5e bgpd: Prevent asn dot memory leak
When allocating a new bit of memory free the old first.

Signed-off-by: Donald Sharp <sharpd@nvidia.com>
2023-02-25 07:43:30 -05:00
Sarita Patra
cbb1e51311 pim6d: Fix missing parameters in "show ipv6 mld interface" command
Before fix:
==========
frr# show ipv6 mld interface
Interface         State  V  Querier                    Timer               Uptime
ens224            up     1  fe80::250:56ff:feb7:a7e3   query 00:00:24.219  00:00:07.031

After fix:
=========
frr(config-if)# do show ipv6 mld interface
 Interface  State  Address                   V  Querier  QuerierIp                 Query Timer   Uptime
 ens224     up     fe80::250:56ff:feb7:a7e3  1  local    fe80::250:56ff:feb7:a7e3  00:01:22.263  00:08:00.237

Issue: #11241

Signed-off-by: Sarita Patra <saritap@vmware.com>
2023-02-24 23:58:30 -08:00
Donald Sharp
bed7867117
Merge pull request #12900 from opensourcerouting/fix/memory_leak_aspath_dup_astype
bgpd: Avoid double aspath_dup() for confederation when remote-as != AS_SPECIFIED
2023-02-24 19:17:20 -05:00
Donatas Abraitis
9930441c66 bgpd: Avoid double aspath_dup() for confederation when remote-as != AS_SPECIFIED
Just was blind when not seing it's already dup'ed above:

```	if (peer->sort == BGP_PEER_EBGP
	    && (!CHECK_FLAG(peer->af_flags[afi][safi],
			    PEER_FLAG_AS_PATH_UNCHANGED)
		|| attr->aspath->segments == NULL)
	    && (!CHECK_FLAG(peer->af_flags[afi][safi],
			    PEER_FLAG_RSERVER_CLIENT))) {
		aspath = aspath_dup(attr->aspath); <<<<<<<<<<<<<<<
```

Signed-off-by: Donatas Abraitis <donatas@opensourcerouting.org>
2023-02-24 22:03:08 +02:00
Sarita Patra
3ab119a4bb pim6d: Display primary address in "show ipv6 mld interface json" cmd
Signed-off-by: Sarita Patra <saritap@vmware.com>
2023-02-24 07:21:15 -08:00
Sarita Patra
fe4db62c3d pim6d: Don't display MLD disabled or down interfaces in "show ipv6 mld interface" cmd
We should not display down interfaces or MLD disabled interfaces in
"show ipv6 mld interface" command.

Before fix:
==========
frr# show ipv6 mld interface
Interface         State  V  Querier                    Timer               Uptime
ens192            up     2  fe80::250:56ff:feb7:d04    query 00:00:25.432  00:00:07.038
ens224            up     1  fe80::250:56ff:feb7:a7e3   query 00:00:24.219  00:00:07.031
pim6reg            down

After fix:
=========
frr# show ipv6 mld interface
Interface         State  V  Querier                    Timer               Uptime
ens192            up     2  fe80::250:56ff:feb7:d04    query 00:00:25.432  00:00:07.038
ens224            up     1  fe80::250:56ff:feb7:a7e3   query 00:00:24.219  00:00:07.031

Issue: #11241

Signed-off-by: Sarita Patra <saritap@vmware.com>
2023-02-24 07:21:15 -08:00
Donald Sharp
68b48017ed
Merge pull request #12888 from opensourcerouting/fix/peer_af_flag_check_integer
bgpd: Flags fixes
2023-02-24 09:28:41 -05:00