summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDonald Sharp <donaldsharp72@gmail.com>2024-09-12 08:19:11 -0400
committerGitHub <noreply@github.com>2024-09-12 08:19:11 -0400
commit084858722cc8f9b5954a6f03810df7524f58c816 (patch)
tree812a275c3e02ca640a9a8424d383efbee37ddcf5
parentbf1fa1b2dfeebb4fefcf3655111f30a766b6bc6d (diff)
parent27b682aae0e4a1e27851a6907e56e603a5f2a619 (diff)
Merge pull request #16810 from anlancs/fix/pimd-interface-crash-commands
pimd: fix crash for two commands
-rw-r--r--pimd/pim_nb_config.c8
1 files changed, 8 insertions, 0 deletions
diff --git a/pimd/pim_nb_config.c b/pimd/pim_nb_config.c
index 037bfea786..0a167164c4 100644
--- a/pimd/pim_nb_config.c
+++ b/pimd/pim_nb_config.c
@@ -2058,6 +2058,10 @@ int lib_interface_pim_address_family_bsm_modify(struct nb_cb_modify_args *args)
case NB_EV_APPLY:
ifp = nb_running_get_entry(args->dnode, NULL, true);
pim_ifp = ifp->info;
+ if (!pim_ifp) {
+ pim_ifp = pim_if_new(ifp, false, true, false, false);
+ ifp->info = pim_ifp;
+ }
pim_ifp->bsm_enable = yang_dnode_get_bool(args->dnode, NULL);
break;
@@ -2083,6 +2087,10 @@ int lib_interface_pim_address_family_unicast_bsm_modify(
case NB_EV_APPLY:
ifp = nb_running_get_entry(args->dnode, NULL, true);
pim_ifp = ifp->info;
+ if (!pim_ifp) {
+ pim_ifp = pim_if_new(ifp, false, true, false, false);
+ ifp->info = pim_ifp;
+ }
pim_ifp->ucast_bsm_accept =
yang_dnode_get_bool(args->dnode, NULL);