diff options
| author | Quentin Young <qlyoung@nvidia.com> | 2021-03-18 15:31:35 -0400 |
|---|---|---|
| committer | Quentin Young <qlyoung@nvidia.com> | 2021-04-07 13:39:56 -0400 |
| commit | 767f67a4560ce9cce41d0183aed46cb2495b7f9a (patch) | |
| tree | 3b121258b748db3643b484c4ae7373ffd57945df | |
| parent | c53b1ff1980084507452026fc9b1bfe27cc66de6 (diff) | |
lib, vtysh: re-add support for spaces in 'find'
Lost ability to handle them in the regex patch
Signed-off-by: Quentin Young <qlyoung@nvidia.com>
| -rw-r--r-- | lib/command.c | 5 | ||||
| -rw-r--r-- | vtysh/vtysh.c | 8 |
2 files changed, 7 insertions, 6 deletions
diff --git a/lib/command.c b/lib/command.c index 770e2fc5ac..d2798b5002 100644 --- a/lib/command.c +++ b/lib/command.c @@ -2226,18 +2226,19 @@ DEFUN (no_banner_motd, DEFUN(find, find_cmd, - "find REGEX", + "find REGEX...", "Find CLI command matching a regular expression\n" "Search pattern (POSIX regex)\n") { - char *pattern = argv[1]->arg; const struct cmd_node *node; const struct cmd_element *cli; vector clis; regex_t exp = {}; + char *pattern = argv_concat(argv, argc, 1); int cr = regcomp(&exp, pattern, REG_NOSUB | REG_EXTENDED); + XFREE(MTYPE_TMP, pattern); if (cr != 0) { switch (cr) { diff --git a/vtysh/vtysh.c b/vtysh/vtysh.c index 3764188292..839d5dd1ec 100644 --- a/vtysh/vtysh.c +++ b/vtysh/vtysh.c @@ -3719,19 +3719,19 @@ DEFUN (no_vtysh_output_file, DEFUN(find, find_cmd, - "find REGEX", + "find REGEX...", "Find CLI command matching a regular expression\n" "Search pattern (POSIX regex)\n") { - char *pattern = argv[1]->arg; const struct cmd_node *node; const struct cmd_element *cli; vector clis; - regex_t exp = {}; - + char *pattern = argv_concat(argv, argc, 1); int cr = regcomp(&exp, pattern, REG_NOSUB | REG_EXTENDED); + XFREE(MTYPE_TMP, pattern); + if (cr != 0) { switch (cr) { case REG_BADBR: |
