pim_ifp = ifp->info;
if (!pim_ifp) {
- vty_out(vty, "Pim no enabled on this interface%s", VTY_NEWLINE);
+ vty_out(vty, "Pim not enabled on this interface%s", VTY_NEWLINE);
return CMD_WARNING;
}
return CMD_SUCCESS;
}
+DEFUN (interface_ip_pim_hello,
+ interface_ip_pim_hello_cmd,
+ "ip pim hello <1-180>",
+ IP_STR
+ PIM_STR
+ IFACE_PIM_HELLO_STR
+ IFACE_PIM_HELLO_TIME_STR)
+{
+ struct interface *ifp;
+ struct pim_interface *pim_ifp;
+
+ ifp = vty->index;
+ pim_ifp = ifp->info;
+
+ if (!pim_ifp) {
+ vty_out(vty, "Pim not enabled on this interface%s", VTY_NEWLINE);
+ return CMD_WARNING;
+ }
+
+ pim_ifp->pim_hello_period = strtol(argv[0], NULL, 10);
+
+ if (argc == 2)
+ pim_ifp->pim_default_holdtime = strtol(argv[1], NULL, 10);
+
+ return CMD_SUCCESS;
+}
+
+ALIAS (interface_ip_pim_hello,
+ interface_ip_pim_hello_hold_cmd,
+ "ip pim hello <1-180> <1-180>",
+ IP_STR
+ PIM_STR
+ IFACE_PIM_HELLO_STR
+ IFACE_PIM_HELLO_TIME_STR
+ IFACE_PIM_HELLO_HOLD_STR)
+
+
+DEFUN (interface_no_ip_pim_hello,
+ interface_no_ip_pim_hello_cmd,
+ "no ip pim hello {<1-180> <1-180>}",
+ NO_STR
+ IP_STR
+ PIM_STR
+ IFACE_PIM_HELLO_STR
+ IFACE_PIM_HELLO_TIME_STR
+ IFACE_PIM_HELLO_HOLD_STR)
+{
+ struct interface *ifp;
+ struct pim_interface *pim_ifp;
+
+ ifp = vty->index;
+ pim_ifp = ifp->info;
+
+ if (!pim_ifp) {
+ vty_out(vty, "Pim not enabled on this interface%s", VTY_NEWLINE);
+ return CMD_WARNING;
+ }
+
+ pim_ifp->pim_hello_period = PIM_DEFAULT_HELLO_PERIOD;
+ pim_ifp->pim_default_holdtime = -1;
+
+ return CMD_SUCCESS;
+}
+
DEFUN (debug_igmp,
debug_igmp_cmd,
"debug igmp",
install_element (INTERFACE_NODE, &interface_no_ip_pim_ssm_cmd);
install_element (INTERFACE_NODE, &interface_ip_pim_drprio_cmd);
install_element (INTERFACE_NODE, &interface_no_ip_pim_drprio_cmd);
+ install_element (INTERFACE_NODE, &interface_ip_pim_hello_cmd);
+ install_element (INTERFACE_NODE, &interface_ip_pim_hello_hold_cmd);
+ install_element (INTERFACE_NODE, &interface_no_ip_pim_hello_cmd);
// Static mroutes NEB
install_element (INTERFACE_NODE, &interface_ip_mroute_cmd);
#define CONF_SSMPINGD_STR "Enable ssmpingd operation\n"
#define SHOW_SSMPINGD_STR "ssmpingd operation\n"
#define IFACE_PIM_STR "Enable PIM SSM operation\n"
+#define IFACE_PIM_HELLO_STR "Hello Interval\n"
+#define IFACE_PIM_HELLO_TIME_STR "Time in seconds for Hello Interval\n"
+#define IFACE_PIM_HELLO_HOLD_STR "Time in seconds for Hold Interval\n"
#define IFACE_IGMP_STR "Enable IGMP operation\n"
#define IFACE_IGMP_QUERY_INTERVAL_STR "IGMP host query interval\n"
#define IFACE_IGMP_QUERY_MAX_RESPONSE_TIME_STR "IGMP max query response value (seconds)\n"
++writes;
}
+ /* IF ip pim hello */
+ if (pim_ifp->pim_hello_period != PIM_DEFAULT_HELLO_PERIOD) {
+ vty_out(vty, " ip pim hello %d", pim_ifp->pim_hello_period);
+ if (pim_ifp->pim_default_holdtime != -1)
+ vty_out(vty, " %d", pim_ifp->pim_default_holdtime);
+ vty_out(vty, "%s", VTY_NEWLINE);
+ }
+
/* IF ip igmp */
if (PIM_IF_TEST_IGMP(pim_ifp->options)) {
vty_out(vty, " ip igmp%s", VTY_NEWLINE);