Commit Graph

29568 Commits

Author SHA1 Message Date
Donatas Abraitis
4c17bee53f lib: Fix show route-map NAME json command and memory leak
JSON object was generated, but not printed, because the function returned
immediatelly, even without freeing the memory.

Signed-off-by: Donatas Abraitis <donatas@opensourcerouting.org>
2022-09-26 14:56:20 +03:00
Donatas Abraitis
760863701e
Merge pull request #12001 from donaldsharp/use_integrated
doc: Align docs to recommend integrated config
2022-09-25 11:44:42 +03:00
Donald Sharp
9b953119b4 doc: Align docs to recommend integrated config
Docs were recommending both integrated and non-integrated
config in different sections.  Remove the recommendation
for non-integrated config from vtysh.rst.

Signed-off-by: Donald Sharp <sharpd@nvidia.com>
2022-09-23 15:16:40 -04:00
Donatas Abraitis
344d81ceed
Merge pull request #11982 from samanvithab/bgp_mem_fix
bgpd: multiple memory leak issue fixes
2022-09-23 17:54:33 +03:00
Samanvitha B Bhargav
b96b4f1c5f bgpd: Cleanup memory leaks associated with t_deferral_timer
We are allocating temporary memory for information about
what to process in this thread, which is not being cleaned
up on thread cancelling.

Signed-off-by: Samanvitha B Bhargav <bsmanvitha@vmware.com>
2022-09-23 00:14:12 -07:00
Donatas Abraitis
f731266e95
Merge pull request #11997 from sri-mohan1/sri-zebra-dbg1
zebra: changes for code maintainability
2022-09-23 10:04:25 +03:00
sri-mohan1
a843c5ba2a zebra: changes for code maintainability
these changes are for improving the code maintainability

Signed-off-by: sri-mohan1 <sri.mohan@samsung.com>
2022-09-23 09:57:35 +05:30
Donald Sharp
9e3b5187b7
Merge pull request #11993 from opensourcerouting/feature/printfrr_pRD
bgpd: Use %pRD for prefix_rd2str()
2022-09-22 09:30:51 -04:00
Donald Sharp
f25d47d2ef
Merge pull request #11979 from opensourcerouting/fix/stop_conditional_adv_thread
bgpd: Stop conditional advertisements thread when terminating
2022-09-22 09:30:01 -04:00
Donatas Abraitis
c4f64ea94d bgpd: Use %pRD for prefix_rd2str()
Convert a bunch of prefix_rd2str() for json/vty stuff.

Signed-off-by: Donatas Abraitis <donatas@opensourcerouting.org>
2022-09-22 13:12:11 +03:00
Donatas Abraitis
c0539ff458 bgpd: Stop conditional advertisements thread when terminating
Signed-off-by: Donatas Abraitis <donatas@opensourcerouting.org>
2022-09-22 10:30:13 +03:00
Donald Sharp
447d0fc290
Merge pull request #11986 from opensourcerouting/fix/drop_outdated_files
bgpd: Drop out-of-date files
2022-09-21 12:56:25 -04:00
Donatas Abraitis
bdc33d0b13 bgpd: Drop out-of-date files
Just not maintained for > 18 years.

Signed-off-by: Donatas Abraitis <donatas@opensourcerouting.org>
2022-09-21 17:21:31 +03:00
Donald Sharp
6db5e4c11a
Merge pull request #11977 from opensourcerouting/fix/docker_alpine_apk
docker: Keep and copy .apk files after they are built
2022-09-21 10:15:49 -04:00
Samanvitha B Bhargav
2305e3e460 bgpd: memory leak issue fix
Memory allocated when 'import vrf route maps <>' is configured,
wasn't being freed when the entire bgp config
was deleted through 'no router bgp'.

Signed-off-by: Samanvitha B Bhargav <bsmanvitha@vmware.com>
2022-09-21 01:57:09 -07:00
Samanvitha B Bhargav
92d537611b bgpd: memory leak issue fix
In ecommunity_del_val(), ecommunity was not being freed
when the last value in the ecommunity was being deleted.

Signed-off-by: Samanvitha B Bhargav <bsmanvitha@vmware.com>
2022-09-21 01:45:41 -07:00
Samanvitha B Bhargav
f6a460f982 bgpd: memory leak issue fix
When router id is changed through config, new RD is auto generated.
However new export RT was being assigned without freeing
the older RT from VRF.

Signed-off-by: Samanvitha B Bhargav <bsmanvitha@vmware.com>
2022-09-21 01:44:14 -07:00
Donatas Abraitis
383a873495
Merge pull request #11802 from AbhishekNR/ttable_pim_state
pimd, pim6d: Using ttable for displaying "show ip/ipv6 pim state" command output.
2022-09-21 11:00:40 +03:00
Donatas Abraitis
96e8d5fb04
Merge pull request #11918 from patrasar/show_ipv6_mld_interface_fix
pim6d: "show ipv6 mld interface" command
2022-09-21 10:19:33 +03:00
mobash-rasool
ea59d5e08d
Merge pull request #11968 from donaldsharp/isis_plist_mem_leak
isisd: Fix memory leak on shutdown with prefix lists
2022-09-21 08:22:33 +05:30
Donatas Abraitis
7be59f7b7c docker: Keep and copy .apk files after they are built
For debugging purposes and/or to distribute them somewhere else.

Signed-off-by: Donatas Abraitis <donatas@opensourcerouting.org>
2022-09-20 23:23:55 +03:00
Donald Sharp
22432f22da
Merge pull request #11972 from pguibert6WIND/mpls_te_on
pathd: 'no mpls-te on' command was not working
2022-09-20 12:16:56 -04:00
Russ White
78c108ced7
Merge pull request #11952 from anlancs/fix/cleanup-20
include: clean up some white spaces
2022-09-20 11:17:32 -04:00
Russ White
6f42ff7691
Merge pull request #11956 from opensourcerouting/fix/bgpd_unlocks
bgpd: Don't forget bgp_dest_unlock_node before return
2022-09-20 11:17:03 -04:00
Donald Sharp
dcfe3c1611 isisd: Fix memory leak on shutdown with prefix lists
==2623619==
==2623619== 6 bytes in 1 blocks are definitely lost in loss record 3 of 75
==2623619==    at 0x483877F: malloc (vg_replace_malloc.c:307)
==2623619==    by 0x4B55E4A: strdup (strdup.c:42)
==2623619==    by 0x493C992: qstrdup (memory.c:128)
==2623619==    by 0x1A9212: isis_instance_fast_reroute_level_1_remote_lfa_prefix_list_modify (isis_nb_config.c:1599)
==2623619==    by 0x494837C: nb_callback_modify (northbound.c:1083)
==2623619==    by 0x4948C6E: nb_callback_configuration (northbound.c:1352)
==2623619==    by 0x494919D: nb_transaction_process (northbound.c:1473)
==2623619==    by 0x4947DA9: nb_candidate_commit_apply (northbound.c:906)
==2623619==    by 0x4947EBA: nb_candidate_commit (northbound.c:938)
==2623619==    by 0x494EB9E: nb_cli_classic_commit (northbound_cli.c:64)
==2623619==    by 0x494F3DC: nb_cli_apply_changes_internal (northbound_cli.c:250)
==2623619==    by 0x494F4E2: nb_cli_apply_changes (northbound_cli.c:268)
==2623619==    by 0x1BEF0F: isis_frr_remote_lfa_plist_magic (isis_cli.c:1899)
==2623619==    by 0x1B7636: isis_frr_remote_lfa_plist (isis_cli_clippy.c:3406)
==2623619==    by 0x48EBA75: cmd_execute_command_real (command.c:997)
==2623619==    by 0x48EBD4E: cmd_execute_command_strict (command.c:1108)
==2623619==    by 0x48EC1E6: command_config_read_one_line (command.c:1268)
==2623619==    by 0x48EC35B: config_from_file (command.c:1313)
==2623619==    by 0x4999CC1: vty_read_file (vty.c:2347)
==2623619==    by 0x499A4AF: vty_read_config (vty.c:2567)
==2623619==    by 0x4924B12: frr_config_read_in (libfrr.c:984)
==2623619==    by 0x498F5E3: thread_call (thread.c:2008)
==2623619==    by 0x49253DA: frr_run (libfrr.c:1198)
==2623619==    by 0x14FC53: main (isis_main.c:273)

Fix this memory leak

Signed-off-by: Donald Sharp <sharpd@nvidia.com>
2022-09-20 10:44:42 -04:00
Donald Sharp
fbd3e84531
Merge pull request #11954 from opensourcerouting/fix/ecommunity_memory_leak
bgpd: Free ecommunity before returning on warning/error
2022-09-20 08:18:47 -04:00
Philippe Guibert
cab69e3f3d pathd: 'no mpls-te on' command was not working
Fix the 'no mpls-te on' command.

Signed-off-by: Philippe Guibert <philippe.guibert@6wind.com>
2022-09-20 14:10:42 +02:00
Donald Sharp
0be32df16e
Merge pull request #11971 from opensourcerouting/fix/coccinelle_route_map_apply
bgpd: Use route_map_result_t for route_map_apply() as return type
2022-09-20 07:32:22 -04:00
Donatas Abraitis
fd283bd250 bgpd: Use route_map_result_t for route_map_apply() as return type
Signed-off-by: Donatas Abraitis <donatas@opensourcerouting.org>
2022-09-20 10:45:02 +03:00
Donatas Abraitis
c4d75d0275
Merge pull request #11958 from AbhishekNR/ttable_show
pimd, pim6d: Using ttable for displaying show command outputs
2022-09-20 09:47:09 +03:00
Donatas Abraitis
e09ce4b894
Merge pull request #11872 from AbhishekNR/const_igmp_gm
pimd, pim6d: Changing IGMP to GM in few macro's.
2022-09-19 17:48:24 +03:00
Mark Stapp
173bdac44b
Merge pull request #11940 from sri-mohan1/sri-zebra-dbg1
zebra: changes for code maintainability
2022-09-19 10:43:38 -04:00
Donatas Abraitis
7877eaf65b
Merge pull request #11953 from AbhishekNR/issue_11925
pim6d: (*,G) mroutes not learnt after pim6d daemon restart
2022-09-19 17:37:04 +03:00
Donatas Abraitis
8efc86e6a1
Merge pull request #11945 from leonshaw/bgp-refresh-eor
bgpd: Handle route-refresh request received before EoR
2022-09-19 17:32:46 +03:00
Donald Sharp
81d6a47bf0
Merge pull request #11917 from patrasar/pimv6_clear_mroute_fix
pim6d: fix clear ipv6 mroute crash
2022-09-19 08:34:37 -04:00
Abhishek N R
ad994e7a8a pimd, pim6d: Using ttable for displaying "show ip/ipv6 pim local-membership" command output
Before:

frr# sh ipv6 pim local-membership
Interface         Address          Source           Group            Membership
ens224            fe80::250:56ff:feb7:9091  *                ff08::1          NOINFO

After:

frr# sh ipv6 pim local-membership
 Interface  Address                   Source  Group    Membership
 ens224     fe80::250:56ff:feb7:9091  *       ff08::1  NOINFO

Signed-off-by: Abhishek N R <abnr@vmware.com>
2022-09-19 02:11:23 -07:00
Abhishek N R
c3cd01eb06 pimd, pim6d: Using ttable for displaying "show ip/ipv6 pim neighbor" command output.
Before:

frr# show ipv6 pim neighbor
Interface                Neighbor    Uptime  Holdtime  DR Pri
ens192            fe80::250:56ff:feb7:38de  00:10:47  00:01:28       1
ens224            fe80::250:56ff:feb7:4bad  00:10:47  00:01:28       1

After:

frr# sh ipv6 pim neighbor
 Interface  Neighbor                  Uptime    Holdtime  DR Pri
 ens192     fe80::250:56ff:feb7:38de  00:00:12  00:01:32  1
 ens224     fe80::250:56ff:feb7:4bad  00:00:12  00:01:32  1

Signed-off-by: Abhishek N R <abnr@vmware.com>
2022-09-19 02:11:13 -07:00
Abhishek N R
bae90f95d1 pimd, pim6d: Using ttable for displaying "show ip/ipv6 pim join" command output
Before:
frr# sh ipv6 pim join
Interface        Address         Source          Group           State      Uptime   Expire Prune
ens224           fe80::250:56ff:feb7:9091 *               ff08::1         JOIN       00:16:31 03:28  --:--

After:
frr# show ipv6 pim join
 Interface  Address                   Source  Group    State  Uptime    Expire  Prune
 ens224     fe80::250:56ff:feb7:9091  *       ff08::1  JOIN   00:00:51  03:27   --:--

Signed-off-by: Abhishek N R <abnr@vmware.com>
2022-09-19 02:03:24 -07:00
Abhishek N R
de5dc09238 pimd, pim6d: Changing IGMP to GM in few macro's.
Changing
IGMP_DEFAULT_ROBUSTNESS_VARIABLE to GM_DEFAULT_ROBUSTNESS_VARIABLE,
IGMP_GENERAL_QUERY_INTERVAL to GM_GENERAL_QUERY_INTERVAL,
IGMP_QUERY_MAX_RESPONSE_TIME_DSEC to GM_QUERY_MAX_RESPONSE_TIME_DSEC and
IGMP_SPECIFIC_QUERY_MAX_RESPONSE_TIME_DSEC to GM_SPECIFIC_QUERY_MAX_RESPONSE_TIME_DSEC
to accomodate both igmp and mld. And moved it to common file.

Signed-off-by: Abhishek N R <abnr@vmware.com>
2022-09-18 22:15:19 -07:00
Donatas Abraitis
d1bf3d9aea
Merge pull request #11955 from mobash-rasool/fixes3
pim6d: Fixing coverity issues for pim6_mld.c
2022-09-17 23:30:07 +03:00
Donatas Abraitis
bbc5210686 bgpd: Don't forget bgp_dest_unlock_node before return
Before returning an error, unlock bgp dest which is locked by
bgp_node_lookup()/bgp_node_get().

Signed-off-by: Donatas Abraitis <donatas@opensourcerouting.org>
2022-09-16 16:16:01 +03:00
Donatas Abraitis
377369d45e
Merge pull request #11900 from patrasar/pimv6_lmqt
pim6d: Update last_member_query_interval and last_member_query_count
2022-09-16 03:51:38 -07:00
Xiao Liang
a783cc05f0 bgpd: Handle route-refresh request received before EoR
See the BGP message sequence:

    R1                  R2
    |      updates      |
    |------------------>|
    |                   |
    |  refresh request  |
    x<------------------|
    |                   |
    |   updates cont.   |
    |------------------>|
    |                   |
    |    end-of-rib     |
    |------------------>|
    |                   |

When R1 and R2 establish BGP session, R1 begins to send initial updates.
If R2 sends a route-refresh request before EoR, it's silently ignored
by R1, and routes received earlier have no chance to be processed again.

RFC7313 says, "for a BGP speaker that supports the BGP Graceful Restart,
it MUST NOT send a BoRR for an <AFI, SAFI> to a neighbor before it sends
the EoR for the <AFI, SAFI> to the neighbor." But it doesn't forbid
route-refresh request to be sent before receiving EoR.

To handle this scenario, postpone response to refresh request until EoR
is sent.

Signed-off-by: Xiao Liang <shaw.leon@gmail.com>
2022-09-16 18:26:21 +08:00
Mobashshera Rasool
5784a87811 pim6d: Fixing coverity issues for pim6_mld.c
CID 1519843 (#2 of 2): Uninitialized scalar variable (UNINIT)
43. uninit_use_in_call: Using uninitialized value pkt_src->sin6_addr when calling gm_rx_process

Signed-off-by: Mobashshera Rasool <mrasool@vmware.com>
2022-09-16 03:12:13 -07:00
Donatas Abraitis
df6a97a643 bgpd: Free ecommunity before returning on warning/error
Signed-off-by: Donatas Abraitis <donatas@opensourcerouting.org>
2022-09-16 13:11:21 +03:00
Abhishek N R
5eac8aa3fb pimd, pim6d: Using ttable for displaying "show ip/ipv6 pim state" command output.
Signed-off-by: Abhishek N R <abnr@vmware.com>
2022-09-16 02:39:47 -07:00
Abhishek N R
b4460a6b33 pim6d: (*,G) mroutes not learnt after pim6d daemon restart
After restart pim dr address was zero due to which pim (*,G) join
could not get propagated towards RP.

While trying to find primary address ll_highest will be zero initially,
since we have not received address from zebra yet.

So we can get the best address at this point and use it as primary address
whenever ll_highest is zero.

Fixes: #11925

Signed-off-by: Abhishek N R <abnr@vmware.com>
2022-09-16 00:42:39 -07:00
Sarita Patra
e309780f12 pim6d: fix clear ipv6 mroute crash
Root Cause:
"clear ipv6 mroute" was not deleting the subscribers of gm_if
structure.

Fix:
The command "clear ipv6 mroute" deletes grp_pends, gsq_pends, sgs,
subscribers, expires of gm_if data structure.

Deleted the common code in gm_ifp_teardown() and called
gm_group_delete().

Issue: #11724

Signed-off-by: Sarita Patra <saritap@vmware.com>
2022-09-15 20:32:49 -07:00
anlan_cs
924eb45a46 include: clean up some white spaces
Found some extra spaces, clean up them with uniform format.

Signed-off-by: anlan_cs <vic.lan@pica8.com>
2022-09-15 22:41:13 -04:00
Donatas Abraitis
a05ae6c440
Merge pull request #11949 from donaldsharp/plist_deletion_failure
lib: Fix skip of every other plist deletion
2022-09-15 11:32:37 -07:00