summaryrefslogtreecommitdiff
path: root/lib/command.h
diff options
context:
space:
mode:
authorDavid Lamparter <equinox@opensourcerouting.org>2016-11-19 11:57:08 +0100
committerQuentin Young <qlyoung@users.noreply.github.com>2017-05-15 10:27:43 -0400
commit70d44c5cd4f28f9d08a24f519d859885d92e2a13 (patch)
treec67e6c907a31487ca96b27e53a1f571c26f31bf9 /lib/command.h
parentc09c46ae3c2702b3553e558f723e6de4fea3e05d (diff)
lib: cli: autocomplete variables
Shows known values in the appropriate naming domain when the user hits <?> or <Tab>. This patch only works in the telnet CLI, the next patch adds vtysh support. Included completions: - interface names - route-map names - prefix-list names Signed-off-by: David Lamparter <equinox@opensourcerouting.org>
Diffstat (limited to 'lib/command.h')
-rw-r--r--lib/command.h9
1 files changed, 9 insertions, 0 deletions
diff --git a/lib/command.h b/lib/command.h
index 4531ec9a17..1aca8b4ae1 100644
--- a/lib/command.h
+++ b/lib/command.h
@@ -32,6 +32,7 @@
#include "command_graph.h"
DECLARE_MTYPE(HOST)
+DECLARE_MTYPE(COMPLETION)
/* for test-commands.c */
DECLARE_MTYPE(STRVEC)
@@ -391,4 +392,12 @@ extern int cmd_banner_motd_file (const char *);
/* struct host global, ick */
extern struct host host;
+struct cmd_variable_handler {
+ const char *tokenname, *varname;
+ void (*completions)(vector out, struct cmd_token *token);
+};
+
+extern void cmd_variable_complete (struct cmd_token *token, const char *arg, vector comps);
+extern void cmd_variable_handler_register (const struct cmd_variable_handler *cvh);
+
#endif /* _ZEBRA_COMMAND_H */