]> git.puffer.fish Git - matthieu/frr.git/commitdiff
bgpd: Show `delete` sub-option for `set [l]comm-list <list> delete`
authorDonatas Abraitis <donatas.abraitis@gmail.com>
Wed, 26 Jun 2019 12:06:10 +0000 (15:06 +0300)
committerDonatas Abraitis <donatas.abraitis@gmail.com>
Wed, 10 Jul 2019 14:26:02 +0000 (17:26 +0300)
Signed-off-by: Donatas Abraitis <donatas.abraitis@gmail.com>
bgpd/bgp_routemap.c

index bee4fca7051d13f7c52420786222ed4540a071db..e92788708a0491ddf832e96dfe8fcca2934d8bf1 100644 (file)
@@ -4015,17 +4015,14 @@ DEFUN (set_community_delete,
        "Delete matching communities\n")
 {
        int idx_comm_list = 2;
-       char *str;
-
-       str = XCALLOC(MTYPE_TMP,
-                     strlen(argv[idx_comm_list]->arg) + strlen(" delete") + 1);
-       strcpy(str, argv[idx_comm_list]->arg);
-       strcpy(str + strlen(argv[idx_comm_list]->arg), " delete");
+       char *args;
 
+       args = argv_concat(argv, argc, idx_comm_list);
        generic_set_add(vty, VTY_GET_CONTEXT(route_map_index), "comm-list",
-                       str);
+                       args);
+
+       XFREE(MTYPE_TMP, args);
 
-       XFREE(MTYPE_TMP, str);
        return CMD_SUCCESS;
 }
 
@@ -4107,16 +4104,15 @@ DEFUN (set_lcommunity_delete,
        "Large Community-list name\n"
        "Delete matching large communities\n")
 {
-       char *str;
-
-       str = XCALLOC(MTYPE_TMP, strlen(argv[2]->arg) + strlen(" delete") + 1);
-       strcpy(str, argv[2]->arg);
-       strcpy(str + strlen(argv[2]->arg), " delete");
+       int idx_lcomm_list = 2;
+       char *args;
 
+       args = argv_concat(argv, argc, idx_lcomm_list);
        generic_set_add(vty, VTY_GET_CONTEXT(route_map_index),
-                       "large-comm-list", str);
+                       "large-comm-list", args);
+
+       XFREE(MTYPE_TMP, args);
 
-       XFREE(MTYPE_TMP, str);
        return CMD_SUCCESS;
 }