bgpd: Make "no redistribute" always remove the redistribute statement

Signed-off-by: Daniel Walton <dwalton@cumulusnetworks.com>
diff --git a/bgpd/bgp_vty.c b/bgpd/bgp_vty.c
index 4cd8c5e..4c1de16 100644
--- a/bgpd/bgp_vty.c
+++ b/bgpd/bgp_vty.c
@@ -9527,7 +9527,7 @@
   return bgp_redistribute_unset (vty->index, AFI_IP, type);
 }
 
-DEFUN (no_bgp_redistribute_ipv4_rmap,
+ALIAS (no_bgp_redistribute_ipv4,
        no_bgp_redistribute_ipv4_rmap_cmd,
        "no redistribute " QUAGGA_IP_REDIST_STR_BGPD " route-map WORD",
        NO_STR
@@ -9535,21 +9535,8 @@
        QUAGGA_IP_REDIST_HELP_STR_BGPD
        "Route map reference\n"
        "Pointer to route-map entries\n")
-{
-  int type;
 
-  type = proto_redistnum (AFI_IP, argv[0]);
-  if (type < 0 || type == ZEBRA_ROUTE_BGP)
-    {
-      vty_out (vty, "%% Invalid route type%s", VTY_NEWLINE);
-      return CMD_WARNING;
-    }
-
-  bgp_redistribute_routemap_unset (vty->index, AFI_IP, type);
-  return CMD_SUCCESS;
-}
-
-DEFUN (no_bgp_redistribute_ipv4_metric,
+ALIAS (no_bgp_redistribute_ipv4,
        no_bgp_redistribute_ipv4_metric_cmd,
        "no redistribute " QUAGGA_IP_REDIST_STR_BGPD " metric <0-4294967295>",
        NO_STR
@@ -9557,21 +9544,8 @@
        QUAGGA_IP_REDIST_HELP_STR_BGPD
        "Metric for redistributed routes\n"
        "Default metric\n")
-{
-  int type;
 
-  type = proto_redistnum (AFI_IP, argv[0]);
-  if (type < 0 || type == ZEBRA_ROUTE_BGP)
-    {
-      vty_out (vty, "%% Invalid route type%s", VTY_NEWLINE);
-      return CMD_WARNING;
-    }
-
-  bgp_redistribute_metric_unset (vty->index, AFI_IP, type);
-  return CMD_SUCCESS;
-}
-
-DEFUN (no_bgp_redistribute_ipv4_rmap_metric,
+ALIAS (no_bgp_redistribute_ipv4,
        no_bgp_redistribute_ipv4_rmap_metric_cmd,
        "no redistribute " QUAGGA_IP_REDIST_STR_BGPD " route-map WORD metric <0-4294967295>",
        NO_STR
@@ -9581,22 +9555,8 @@
        "Pointer to route-map entries\n"
        "Metric for redistributed routes\n"
        "Default metric\n")
-{
-  int type;
 
-  type = proto_redistnum (AFI_IP, argv[0]);
-  if (type < 0 || type == ZEBRA_ROUTE_BGP)
-    {
-      vty_out (vty, "%% Invalid route type%s", VTY_NEWLINE);
-      return CMD_WARNING;
-    }
-
-  bgp_redistribute_metric_unset (vty->index, AFI_IP, type);
-  bgp_redistribute_routemap_unset (vty->index, AFI_IP, type);
-  return CMD_SUCCESS;
-}
-
-ALIAS (no_bgp_redistribute_ipv4_rmap_metric,
+ALIAS (no_bgp_redistribute_ipv4,
        no_bgp_redistribute_ipv4_metric_rmap_cmd,
        "no redistribute " QUAGGA_IP_REDIST_STR_BGPD " metric <0-4294967295> route-map WORD",
        NO_STR
@@ -9740,7 +9700,7 @@
   return bgp_redistribute_unset (vty->index, AFI_IP6, type);
 }
 
-DEFUN (no_bgp_redistribute_ipv6_rmap,
+ALIAS (no_bgp_redistribute_ipv6,
        no_bgp_redistribute_ipv6_rmap_cmd,
        "no redistribute " QUAGGA_IP6_REDIST_STR_BGPD " route-map WORD",
        NO_STR
@@ -9748,21 +9708,8 @@
        QUAGGA_IP6_REDIST_HELP_STR_BGPD
        "Route map reference\n"
        "Pointer to route-map entries\n")
-{
-  int type;
 
-  type = proto_redistnum (AFI_IP6, argv[0]);
-  if (type < 0 || type == ZEBRA_ROUTE_BGP)
-    {
-      vty_out (vty, "%% Invalid route type%s", VTY_NEWLINE);
-      return CMD_WARNING;
-    }
-
-  bgp_redistribute_routemap_unset (vty->index, AFI_IP6, type);
-  return CMD_SUCCESS;
-}
-
-DEFUN (no_bgp_redistribute_ipv6_metric,
+ALIAS (no_bgp_redistribute_ipv6,
        no_bgp_redistribute_ipv6_metric_cmd,
        "no redistribute " QUAGGA_IP6_REDIST_STR_BGPD " metric <0-4294967295>",
        NO_STR
@@ -9770,21 +9717,8 @@
        QUAGGA_IP6_REDIST_HELP_STR_BGPD
        "Metric for redistributed routes\n"
        "Default metric\n")
-{
-  int type;
 
-  type = proto_redistnum (AFI_IP6, argv[0]);
-  if (type < 0 || type == ZEBRA_ROUTE_BGP)
-    {
-      vty_out (vty, "%% Invalid route type%s", VTY_NEWLINE);
-      return CMD_WARNING;
-    }
-
-  bgp_redistribute_metric_unset (vty->index, AFI_IP6, type);
-  return CMD_SUCCESS;
-}
-
-DEFUN (no_bgp_redistribute_ipv6_rmap_metric,
+ALIAS (no_bgp_redistribute_ipv6,
        no_bgp_redistribute_ipv6_rmap_metric_cmd,
        "no redistribute " QUAGGA_IP6_REDIST_STR_BGPD " route-map WORD metric <0-4294967295>",
        NO_STR
@@ -9794,22 +9728,8 @@
        "Pointer to route-map entries\n"
        "Metric for redistributed routes\n"
        "Default metric\n")
-{
-  int type;
 
-  type = proto_redistnum (AFI_IP6, argv[0]);
-  if (type < 0 || type == ZEBRA_ROUTE_BGP)
-    {
-      vty_out (vty, "%% Invalid route type%s", VTY_NEWLINE);
-      return CMD_WARNING;
-    }
-
-  bgp_redistribute_metric_unset (vty->index, AFI_IP6, type);
-  bgp_redistribute_routemap_unset (vty->index, AFI_IP6, type);
-  return CMD_SUCCESS;
-}
-
-ALIAS (no_bgp_redistribute_ipv6_rmap_metric,
+ALIAS (no_bgp_redistribute_ipv6,
        no_bgp_redistribute_ipv6_metric_rmap_cmd,
        "no redistribute " QUAGGA_IP6_REDIST_STR_BGPD " metric <0-4294967295> route-map WORD",
        NO_STR