]> git.proxmox.com Git - mirror_frr.git/commitdiff
* routemap.[ch]: Added "description ..." command.
authorhasso <hasso>
Fri, 8 Apr 2005 14:20:18 +0000 (14:20 +0000)
committerhasso <hasso>
Fri, 8 Apr 2005 14:20:18 +0000 (14:20 +0000)
  Closes Bugzilla #167.

lib/ChangeLog
lib/routemap.c
lib/routemap.h

index 1d3d3e6d3512fc36b10f3fa64be053e74f67efba..00b11a1aac084685c56b112f4b762237546b23c8 100644 (file)
@@ -1,3 +1,7 @@
+2005-04-08 Hasso Tepper <hasso at quagga.net>
+
+       * routemap.[ch]: Added "description ..." command.
+
 2005-04-08 Hasso Tepper <hasso at quagga.net>
 
        * prefix.[hc]: Pass argument to the inet6_ntoa by value making it more
index 2906a52ef572d37a37e703db527635e242ed91f7..dfd41bc8c354a27047fe9363b2a7f465e6abad9e 100644 (file)
@@ -1188,6 +1188,42 @@ DEFUN (no_rmap_call,
   return CMD_SUCCESS;
 }
 
+DEFUN (rmap_description,
+       rmap_description_cmd,
+       "description .LINE",
+       "Route-map comment\n"
+       "Comment describing this route-map rule\n")
+{
+  struct route_map_index *index;
+
+  index = vty->index;
+  if (index)
+    {
+      if (index->description)
+       XFREE (MTYPE_TMP, index->description);
+      index->description = argv_concat (argv, argc, 0);
+    }
+  return CMD_SUCCESS;
+}
+
+DEFUN (no_rmap_description,
+       no_rmap_description_cmd,
+       "no description",
+       NO_STR
+       "Route-map comment\n")
+{
+  struct route_map_index *index;
+
+  index = vty->index;
+  if (index)
+    {
+      if (index->description)
+       XFREE (MTYPE_TMP, index->description);
+      index->description = NULL;
+    }
+  return CMD_SUCCESS;
+}
+
 /* Configuration write function. */
 int
 route_map_config_write (struct vty *vty)
@@ -1211,6 +1247,9 @@ route_map_config_write (struct vty *vty)
                 route_map_type_str (index->type),
                 index->pref, VTY_NEWLINE);
 
+       if (index->description)
+         vty_out (vty, " description %s%s", index->description, VTY_NEWLINE);
+
        for (rule = index->match_list.head; rule; rule = rule->next)
          vty_out (vty, " match %s %s%s", rule->cmd->str, 
                   rule->rule_str ? rule->rule_str : "",
@@ -1268,6 +1307,10 @@ route_map_init_vty ()
   /* Install the call stuff. */
   install_element (RMAP_NODE, &rmap_call_cmd);
   install_element (RMAP_NODE, &no_rmap_call_cmd);
+
+  /* Install description commands. */
+  install_element (RMAP_NODE, &rmap_description_cmd);
+  install_element (RMAP_NODE, &no_rmap_description_cmd);
    
   /* Install show command */
   install_element (ENABLE_NODE, &rmap_show_cmd);
index 22a2b19d39c782b182f121756c6cd6ec19cd4ff6..072526a6f8bd46608c998853d1cc3e7f0ee29db1 100644 (file)
@@ -108,6 +108,7 @@ struct route_map_rule_list
 struct route_map_index
 {
   struct route_map *map;
+  char *description;
 
   /* Preference of this route map rule. */
   int pref;