diff options
| author | Donald Sharp <sharpd@cumulusnetworks.com> | 2017-05-18 19:56:10 -0400 |
|---|---|---|
| committer | Donald Sharp <sharpd@cumulusnetworks.com> | 2017-07-24 13:51:35 -0400 |
| commit | 4e0bc0f0a8cc235c45db9a2939ff985cf9c75e44 (patch) | |
| tree | 51b78d232c078b11a15e7d93ef96d78ca5338ad5 /pimd/pim_instance.c | |
| parent | 2e4e8571f0f63509b02d22edc39d998ddba7c8c0 (diff) | |
pimd: Refactore qpim_static_route_list into pim->static_routes
Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
Diffstat (limited to 'pimd/pim_instance.c')
| -rw-r--r-- | pimd/pim_instance.c | 14 |
1 files changed, 14 insertions, 0 deletions
diff --git a/pimd/pim_instance.c b/pimd/pim_instance.c index b988c12cea..84fc9b9252 100644 --- a/pimd/pim_instance.c +++ b/pimd/pim_instance.c @@ -28,6 +28,8 @@ #include "pim_rpf.h" #include "pim_rp.h" #include "pim_mroute.h" +#include "pim_oil.h" +#include "pim_static.h" static void pim_instance_terminate(struct pim_instance *pim) { @@ -43,6 +45,9 @@ static void pim_instance_terminate(struct pim_instance *pim) pim->ssm_info = NULL; } + if (pim->static_routes) + list_free(pim->static_routes); + XFREE(MTYPE_PIM_PIM_INSTANCE, pimg); } @@ -72,6 +77,15 @@ static struct pim_instance *pim_instance_init(struct vrf *vrf) return NULL; } + pim->static_routes = list_new(); + if (!pim->static_routes) { + zlog_err("%s %s: failure: static_routes=list_new()", __FILE__, + __PRETTY_FUNCTION__); + pim_instance_terminate(pim); + return NULL; + } + pim->static_routes->del = (void (*)(void *))pim_static_route_free; + pim->send_v6_secondary = 1; if (vrf->vrf_id == VRF_DEFAULT) |
