diff options
Diffstat (limited to 'pimd/pim_cmd_common.h')
| -rw-r--r-- | pimd/pim_cmd_common.h | 43 |
1 files changed, 43 insertions, 0 deletions
diff --git a/pimd/pim_cmd_common.h b/pimd/pim_cmd_common.h index b7e6b6ac80..00a9a56738 100644 --- a/pimd/pim_cmd_common.h +++ b/pimd/pim_cmd_common.h @@ -58,5 +58,48 @@ int pim_process_ip_mroute_cmd(struct vty *vty, const char *interface, const char *group_str, const char *source_str); int pim_process_no_ip_mroute_cmd(struct vty *vty, const char *interface, const char *group_str, const char *src_str); +void json_object_pim_upstream_add(json_object *json, struct pim_upstream *up); +void pim_show_rpf(struct pim_instance *pim, struct vty *vty, json_object *json); +void pim_show_neighbors_secondary(struct pim_instance *pim, struct vty *vty); +void pim_show_state(struct pim_instance *pim, struct vty *vty, + const char *src_or_group, const char *group, + json_object *json); +void pim_show_statistics(struct pim_instance *pim, struct vty *vty, + const char *ifname, bool uj); +void pim_show_upstream(struct pim_instance *pim, struct vty *vty, + pim_sgaddr *sg, json_object *json); +void pim_show_join_desired(struct pim_instance *pim, struct vty *vty, bool uj); +void pim_show_upstream_rpf(struct pim_instance *pim, struct vty *vty, bool uj); +void pim_show_rpf_refresh_stats(struct vty *vty, struct pim_instance *pim, + time_t now, json_object *json); +bool pim_sgaddr_match(pim_sgaddr item, pim_sgaddr match); +void json_object_pim_ifp_add(struct json_object *json, struct interface *ifp); +void pim_print_ifp_flags(struct vty *vty, struct interface *ifp); +void json_object_pim_upstream_add(json_object *json, struct pim_upstream *up); +void pim_show_join(struct pim_instance *pim, struct vty *vty, pim_sgaddr *sg, + json_object *json); +void pim_show_jp_agg_list(struct pim_instance *pim, struct vty *vty); +void pim_show_membership(struct pim_instance *pim, struct vty *vty, bool uj); +void pim_show_channel(struct pim_instance *pim, struct vty *vty, bool uj); +void pim_show_interfaces(struct pim_instance *pim, struct vty *vty, bool mlag, + json_object *json); +void pim_show_interfaces_single(struct pim_instance *pim, struct vty *vty, + const char *ifname, bool mlag, + json_object *json); +void ip_pim_ssm_show_group_range(struct pim_instance *pim, struct vty *vty, + bool uj); +void pim_show_nexthop(struct pim_instance *pim, struct vty *vty); +void pim_show_neighbors_single(struct pim_instance *pim, struct vty *vty, + const char *neighbor, json_object *json); +void pim_show_neighbors(struct pim_instance *pim, struct vty *vty, + json_object *json); +/* + * Special Macro to allow us to get the correct pim_instance + */ +#define PIM_DECLVAR_CONTEXT(A, B) \ + struct vrf *A = VTY_GET_CONTEXT(vrf); \ + struct pim_instance *B = \ + (vrf) ? vrf->info : pim_get_pim_instance(VRF_DEFAULT); \ + vrf = (vrf) ? vrf : pim->vrf #endif /* PIM_CMD_COMMON_H */ |
