+// SPDX-License-Identifier: GPL-2.0-or-later
/* RIP debug routines
* Copyright (C) 1999 Kunihiro Ishiguro <kunihiro@zebra.org>
- *
- * This file is part of GNU Zebra.
- *
- * GNU Zebra is free software; you can redistribute it and/or modify it
- * under the terms of the GNU General Public License as published by the
- * Free Software Foundation; either version 2, or (at your option) any
- * later version.
- *
- * GNU Zebra is distributed in the hope that it will be useful, but
- * WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License along
- * with this program; see the file COPYING; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
*/
#include <zebra.h>
unsigned long rip_debug_packet = 0;
unsigned long rip_debug_zebra = 0;
-DEFUN (show_debugging_rip,
- show_debugging_rip_cmd,
- "show debugging rip",
- SHOW_STR
- DEBUG_STR
- RIP_STR)
+DEFUN_NOSH (show_debugging_rip,
+ show_debugging_rip_cmd,
+ "show debugging [rip]",
+ SHOW_STR
+ DEBUG_STR
+ RIP_STR)
{
vty_out(vty, "RIP debugging status:\n");
if (IS_RIP_DEBUG_ZEBRA)
vty_out(vty, " RIP zebra debugging is on\n");
+ cmd_show_lib_debugs(vty);
+
return CMD_SUCCESS;
}
{
int idx_recv_send = 3;
rip_debug_packet |= RIP_DEBUG_PACKET;
- if (strncmp("send", argv[idx_recv_send]->arg,
- strlen(argv[idx_recv_send]->arg))
- == 0)
+ if (strcmp("send", argv[idx_recv_send]->text) == 0)
rip_debug_packet |= RIP_DEBUG_SEND;
- if (strncmp("recv", argv[idx_recv_send]->arg,
- strlen(argv[idx_recv_send]->arg))
- == 0)
+ if (strcmp("recv", argv[idx_recv_send]->text) == 0)
rip_debug_packet |= RIP_DEBUG_RECV;
return CMD_SUCCESS;
}
"RIP option set for send packet\n")
{
int idx_recv_send = 4;
- if (strncmp("send", argv[idx_recv_send]->arg,
- strlen(argv[idx_recv_send]->arg))
- == 0) {
+ if (strcmp("send", argv[idx_recv_send]->text) == 0) {
if (IS_RIP_DEBUG_RECV)
rip_debug_packet &= ~RIP_DEBUG_SEND;
else
rip_debug_packet = 0;
- } else if (strncmp("recv", argv[idx_recv_send]->arg,
- strlen(argv[idx_recv_send]->arg))
- == 0) {
+ } else if (strcmp("recv", argv[idx_recv_send]->text) == 0) {
if (IS_RIP_DEBUG_SEND)
rip_debug_packet &= ~RIP_DEBUG_RECV;
else
return CMD_SUCCESS;
}
+static int config_write_debug(struct vty *vty);
/* Debug node. */
-static struct cmd_node debug_node = {DEBUG_NODE,
- "", /* Debug node has no interface. */
- 1};
+static struct cmd_node debug_node = {
+ .name = "debug",
+ .node = DEBUG_NODE,
+ .prompt = "",
+ .config_write = config_write_debug,
+};
static int config_write_debug(struct vty *vty)
{
return write;
}
-void rip_debug_reset(void)
-{
- rip_debug_event = 0;
- rip_debug_packet = 0;
- rip_debug_zebra = 0;
-}
-
void rip_debug_init(void)
{
rip_debug_event = 0;
rip_debug_packet = 0;
rip_debug_zebra = 0;
- install_node(&debug_node, config_write_debug);
+ install_node(&debug_node);
install_element(ENABLE_NODE, &show_debugging_rip_cmd);
install_element(ENABLE_NODE, &debug_rip_events_cmd);