#include <lib/vty.h>
#include <lib/vrf.h>
#include <lib/plist.h>
+#include <lib/lib_errors.h>
#include "pimd.h"
#include "pim_ssm.h"
* disappear in time for SSM groups.
*/
pim_upstream_register_reevaluate(pim);
- igmp_source_forward_reevaluate_all();
+ igmp_source_forward_reevaluate_all(pim);
}
void pim_ssm_prefix_list_update(struct pim_instance *pim,
static struct prefix group_ssm;
if (first) {
- str2prefix(PIM_SSM_STANDARD_RANGE, &group_ssm);
+ if (!str2prefix(PIM_SSM_STANDARD_RANGE, &group_ssm))
+ flog_err(EC_LIB_DEVELOPMENT,
+ "%s: Failure to Read Group Address: %s",
+ __PRETTY_FUNCTION__, PIM_SSM_STANDARD_RANGE);
+
first = 0;
}
void pim_ssm_terminate(struct pim_ssm *ssm)
{
- if (ssm && ssm->plist_name)
- XFREE(MTYPE_PIM_FILTER_NAME, ssm->plist_name);
+ if (!ssm)
+ return;
+
+ XFREE(MTYPE_PIM_FILTER_NAME, ssm->plist_name);
+
+ XFREE(MTYPE_PIM_SSM_INFO, ssm);
}