From bb74e5acbce20b36b147e6feabe60421951393a1 Mon Sep 17 00:00:00 2001 From: Quentin Young Date: Wed, 13 Sep 2017 10:39:13 -0400 Subject: [PATCH] lib, doc: increase maximum cli tokens When matching user input against a CLI graph, we keep a stack of tokens matched. Stack size was limited to 64, making the effective number of tokens that could be entered on a line 64. This is too limiting in some circumstances, so bump it to 256 (and document it). Signed-off-by: Quentin Young --- doc/cli.md | 3 +++ lib/command_match.c | 2 +- 2 files changed, 4 insertions(+), 1 deletion(-) diff --git a/doc/cli.md b/doc/cli.md index ef867362c3..253617e9b5 100644 --- a/doc/cli.md +++ b/doc/cli.md @@ -75,6 +75,9 @@ Some general notes: configuration items should be defined in separate commands. Clarity is preferred over LOC (within reason). +* The maximum number of space-separated tokens that can be entered is presently + limited to 256. Please keep this limit in mind when implementing new CLI. + Variable Names -------------- The parser tries to fill the "varname" field on each token. This can happen diff --git a/lib/command_match.c b/lib/command_match.c index ad3ec2492e..62e7c63068 100644 --- a/lib/command_match.c +++ b/lib/command_match.c @@ -28,7 +28,7 @@ DEFINE_MTYPE_STATIC(LIB, CMD_MATCHSTACK, "Command Match Stack") -#define MAXDEPTH 64 +#define MAXDEPTH 256 #ifdef TRACE_MATCHER #define TM 1 -- 2.39.5