]> git.puffer.fish Git - matthieu/frr.git/commitdiff
pim6d: fix missing 'use-source' interface command
authorDmitrii Turlupov <turlupov@bk.ru>
Tue, 8 Apr 2025 12:45:53 +0000 (15:45 +0300)
committerDmitrii Turlupov <turlupov@bk.ru>
Sat, 12 Apr 2025 06:54:19 +0000 (09:54 +0300)
Signed-off-by: Dmitrii Turlupov <turlupov@bk.ru>
pimd/pim6_cmd.c

index 8297911828cb73033f14f41e31346b3a81fb5e3c..ad11bb1822f7836a17950e6ecac2248fbbeed890 100644 (file)
@@ -999,6 +999,20 @@ DEFPY (interface_no_ipv6_mroute,
                                            source_str);
 }
 
+DEFPY_YANG(interface_ipv6_pim_use_source,
+           interface_ipv6_pim_use_source_cmd,
+           "[no] ipv6 pim use-source X:X::X:X$source",
+           NO_STR
+           IPV6_STR
+           PIM_STR
+           "Configure primary IPv6 address\n"
+           "Source IPv6 address\n")
+{
+       nb_cli_enqueue_change(vty, "./use-source", NB_OP_MODIFY, no ? "::" : source_str);
+
+       return nb_cli_apply_changes(vty, FRR_PIM_INTERFACE_XPATH, "frr-routing:ipv6");
+}
+
 DEFPY (pim6_rp,
        pim6_rp_cmd,
        "rp X:X::X:X$rp [X:X::X:X/M]$gp",
@@ -2972,6 +2986,8 @@ void pim_cmd_init(void)
        install_element(INTERFACE_NODE, &interface_ipv6_mld_limits_cmd);
        install_element(INTERFACE_NODE, &no_interface_ipv6_mld_limits_cmd);
 
+       install_element(INTERFACE_NODE, &interface_ipv6_pim_use_source_cmd);
+
        /* Install BSM command */
        install_element(INTERFACE_NODE, &ipv6_pim_bsm_cmd);
        install_element(INTERFACE_NODE, &no_ipv6_pim_bsm_cmd);