Code Review
/
vpp.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
review
|
tree
raw
|
inline
| side by side
ip: fix punt cli to only consumes a line of input
[vpp.git]
/
src
/
vnet
/
ip
/
punt.c
diff --git
a/src/vnet/ip/punt.c
b/src/vnet/ip/punt.c
index
a295277
..
a3ccc43
100644
(file)
--- a/
src/vnet/ip/punt.c
+++ b/
src/vnet/ip/punt.c
@@
-424,8
+424,9
@@
vnet_punt_add_del (vlib_main_t * vm, const punt_reg_t * pr, bool is_add)
static clib_error_t *
punt_cli (vlib_main_t * vm,
static clib_error_t *
punt_cli (vlib_main_t * vm,
- unformat_input_t * input, vlib_cli_command_t * cmd)
+ unformat_input_t * input
__
, vlib_cli_command_t * cmd)
{
{
+ unformat_input_t line_input, *input = &line_input;
clib_error_t *error = NULL;
bool is_add = true;
/* *INDENT-OFF* */
clib_error_t *error = NULL;
bool is_add = true;
/* *INDENT-OFF* */
@@
-442,6
+443,9
@@
punt_cli (vlib_main_t * vm,
u32 port;
/* *INDENT-ON* */
u32 port;
/* *INDENT-ON* */
+ if (!unformat_user (input__, unformat_line_input, input))
+ return 0;
+
while (unformat_check_input (input) != UNFORMAT_END_OF_INPUT)
{
if (unformat (input, "del"))
while (unformat_check_input (input) != UNFORMAT_END_OF_INPUT)
{
if (unformat (input, "del"))
@@
-476,6
+480,7
@@
punt_cli (vlib_main_t * vm,
}
done:
}
done:
+ unformat_free (input);
return error;
}
return error;
}
@@
-509,8
+514,10
@@
VLIB_CLI_COMMAND (punt_command, static) = {
static clib_error_t *
punt_socket_register_cmd (vlib_main_t * vm,
static clib_error_t *
punt_socket_register_cmd (vlib_main_t * vm,
- unformat_input_t * input, vlib_cli_command_t * cmd)
+ unformat_input_t * input__,
+ vlib_cli_command_t * cmd)
{
{
+ unformat_input_t line_input, *input = &line_input;
u8 *socket_name = 0;
clib_error_t *error = NULL;
/* *INDENT-OFF* */
u8 *socket_name = 0;
clib_error_t *error = NULL;
/* *INDENT-OFF* */
@@
-526,6
+533,9
@@
punt_socket_register_cmd (vlib_main_t * vm,
};
/* *INDENT-ON* */
};
/* *INDENT-ON* */
+ if (!unformat_user (input__, unformat_line_input, input))
+ return 0;
+
while (unformat_check_input (input) != UNFORMAT_END_OF_INPUT)
{
if (unformat (input, "ipv4"))
while (unformat_check_input (input) != UNFORMAT_END_OF_INPUT)
{
if (unformat (input, "ipv4"))
@@
-556,6
+566,7
@@
punt_socket_register_cmd (vlib_main_t * vm,
error = vnet_punt_socket_add (vm, 1, &pr, (char *) socket_name);
done:
error = vnet_punt_socket_add (vm, 1, &pr, (char *) socket_name);
done:
+ unformat_free (input);
return error;
}
return error;
}
@@
-577,9
+588,10
@@
VLIB_CLI_COMMAND (punt_socket_register_command, static) =
static clib_error_t *
punt_socket_deregister_cmd (vlib_main_t * vm,
static clib_error_t *
punt_socket_deregister_cmd (vlib_main_t * vm,
- unformat_input_t * input,
+ unformat_input_t * input
__
,
vlib_cli_command_t * cmd)
{
vlib_cli_command_t * cmd)
{
+ unformat_input_t line_input, *input = &line_input;
clib_error_t *error = NULL;
/* *INDENT-OFF* */
punt_reg_t pr = {
clib_error_t *error = NULL;
/* *INDENT-OFF* */
punt_reg_t pr = {
@@
-594,6
+606,9
@@
punt_socket_deregister_cmd (vlib_main_t * vm,
};
/* *INDENT-ON* */
};
/* *INDENT-ON* */
+ if (!unformat_user (input__, unformat_line_input, input))
+ return 0;
+
while (unformat_check_input (input) != UNFORMAT_END_OF_INPUT)
{
if (unformat (input, "ipv4"))
while (unformat_check_input (input) != UNFORMAT_END_OF_INPUT)
{
if (unformat (input, "ipv4"))
@@
-618,6
+633,7
@@
punt_socket_deregister_cmd (vlib_main_t * vm,
error = vnet_punt_socket_del (vm, &pr);
done:
error = vnet_punt_socket_del (vm, &pr);
done:
+ unformat_free (input);
return error;
}
return error;
}
@@
-723,13
+739,17
@@
punt_client_show_one (const punt_client_t * pc, void *ctx)
static clib_error_t *
punt_socket_show_cmd (vlib_main_t * vm,
static clib_error_t *
punt_socket_show_cmd (vlib_main_t * vm,
- unformat_input_t * input, vlib_cli_command_t * cmd)
+ unformat_input_t * input
__
, vlib_cli_command_t * cmd)
{
{
+ unformat_input_t line_input, *input = &line_input;
clib_error_t *error = NULL;
punt_type_t pt;
pt = PUNT_TYPE_L4;
clib_error_t *error = NULL;
punt_type_t pt;
pt = PUNT_TYPE_L4;
+ if (!unformat_user (input__, unformat_line_input, input))
+ return 0;
+
while (unformat_check_input (input) != UNFORMAT_END_OF_INPUT)
{
if (unformat (input, "exception"))
while (unformat_check_input (input) != UNFORMAT_END_OF_INPUT)
{
if (unformat (input, "exception"))
@@
-749,6
+769,7
@@
punt_socket_show_cmd (vlib_main_t * vm,
punt_client_walk (pt, punt_client_show_one, vm);
done:
punt_client_walk (pt, punt_client_show_one, vm);
done:
+ unformat_free (input);
return (error);
}
return (error);
}