summaryrefslogtreecommitdiffstats
path: root/src/vnet/session/session_cli.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/vnet/session/session_cli.c')
-rw-r--r--src/vnet/session/session_cli.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/src/vnet/session/session_cli.c b/src/vnet/session/session_cli.c
index 0ed2876469b..aff102a6989 100644
--- a/src/vnet/session/session_cli.c
+++ b/src/vnet/session/session_cli.c
@@ -976,7 +976,7 @@ static clib_error_t *
session_enable_disable_fn (vlib_main_t * vm, unformat_input_t * input,
vlib_cli_command_t * cmd)
{
- session_enable_disable_args_t args;
+ session_enable_disable_args_t args = {};
session_main_t *smm = &session_main;
while (unformat_check_input (input) != UNFORMAT_END_OF_INPUT)
@@ -1010,6 +1010,9 @@ session_enable_disable_fn (vlib_main_t * vm, unformat_input_t * input,
return clib_error_return (
0, "session is already enable. Must disable first");
+ if ((smm->is_enabled == 0) && (args.is_en == 0))
+ return clib_error_return (0, "session is already disabled");
+
return vnet_session_enable_disable (vm, &args);
}