From 0fa0335316ce14a79ea4bbb0c40e1322c9941dd3 Mon Sep 17 00:00:00 2001 From: "Andrew J. Schorr" Date: Thu, 24 Feb 2011 13:52:14 +0300 Subject: ripd: resolve debug statements issue (bug 442) ...A nasty bug, if you forgot to disable debugging, stored the config and reboot your machine - if you really depend on ripd, then the machine will not fully come back on the network, because ripd fails. --- ripd/rip_debug.c | 24 +++++++++--------------- ripd/rip_debug.h | 1 - 2 files changed, 9 insertions(+), 16 deletions(-) (limited to 'ripd') diff --git a/ripd/rip_debug.c b/ripd/rip_debug.c index 64dc27c0..662e5843 100644 --- a/ripd/rip_debug.c +++ b/ripd/rip_debug.c @@ -44,19 +44,16 @@ DEFUN (show_debugging_rip, { if (IS_RIP_DEBUG_SEND && IS_RIP_DEBUG_RECV) { - vty_out (vty, " RIP packet%s debugging is on%s", - IS_RIP_DEBUG_DETAIL ? " detail" : "", + vty_out (vty, " RIP packet debugging is on%s", VTY_NEWLINE); } else { if (IS_RIP_DEBUG_SEND) - vty_out (vty, " RIP packet send%s debugging is on%s", - IS_RIP_DEBUG_DETAIL ? " detail" : "", + vty_out (vty, " RIP packet send debugging is on%s", VTY_NEWLINE); else - vty_out (vty, " RIP packet receive%s debugging is on%s", - IS_RIP_DEBUG_DETAIL ? " detail" : "", + vty_out (vty, " RIP packet receive debugging is on%s", VTY_NEWLINE); } } @@ -105,11 +102,12 @@ DEFUN (debug_rip_packet_direct, rip_debug_packet |= RIP_DEBUG_SEND; if (strncmp ("recv", argv[0], strlen (argv[0])) == 0) rip_debug_packet |= RIP_DEBUG_RECV; - rip_debug_packet &= ~RIP_DEBUG_DETAIL; return CMD_SUCCESS; } -DEFUN (debug_rip_packet_detail, +/* N.B. the "detail" modifier is a no-op. we leave this command + for legacy compatibility. */ +DEFUN_DEPRECATED (debug_rip_packet_detail, debug_rip_packet_detail_cmd, "debug rip packet (recv|send) detail", DEBUG_STR @@ -124,7 +122,6 @@ DEFUN (debug_rip_packet_detail, rip_debug_packet |= RIP_DEBUG_SEND; if (strncmp ("recv", argv[0], strlen (argv[0])) == 0) rip_debug_packet |= RIP_DEBUG_RECV; - rip_debug_packet |= RIP_DEBUG_DETAIL; return CMD_SUCCESS; } @@ -224,20 +221,17 @@ config_write_debug (struct vty *vty) { if (IS_RIP_DEBUG_SEND && IS_RIP_DEBUG_RECV) { - vty_out (vty, "debug rip packet%s%s", - IS_RIP_DEBUG_DETAIL ? " detail" : "", + vty_out (vty, "debug rip packet%s", VTY_NEWLINE); write++; } else { if (IS_RIP_DEBUG_SEND) - vty_out (vty, "debug rip packet send%s%s", - IS_RIP_DEBUG_DETAIL ? " detail" : "", + vty_out (vty, "debug rip packet send%s", VTY_NEWLINE); else - vty_out (vty, "debug rip packet recv%s%s", - IS_RIP_DEBUG_DETAIL ? " detail" : "", + vty_out (vty, "debug rip packet recv%s", VTY_NEWLINE); write++; } diff --git a/ripd/rip_debug.h b/ripd/rip_debug.h index f3a07eea..990ec908 100644 --- a/ripd/rip_debug.h +++ b/ripd/rip_debug.h @@ -40,7 +40,6 @@ #define IS_RIP_DEBUG_PACKET (rip_debug_packet & RIP_DEBUG_PACKET) #define IS_RIP_DEBUG_SEND (rip_debug_packet & RIP_DEBUG_SEND) #define IS_RIP_DEBUG_RECV (rip_debug_packet & RIP_DEBUG_RECV) -#define IS_RIP_DEBUG_DETAIL (rip_debug_packet & RIP_DEBUG_DETAIL) #define IS_RIP_DEBUG_ZEBRA (rip_debug_zebra & RIP_DEBUG_ZEBRA) -- cgit v1.2.1