eal: use bare option string as name

Current options name can be passed with arbitrary format.
Force the use of "--" prefix and thus POSIX long options format.

This restricts the ability to introduce surprising options and will help
future additional checks.

Signed-off-by: Gaetan Rivet <gaetan.rivet@6wind.com>
This commit is contained in:
Gaetan Rivet 2018-12-20 18:06:40 +01:00 committed by Thomas Monjalon
parent 12d468a62b
commit 4c3bf26c19
2 changed files with 6 additions and 2 deletions

View File

@ -20,9 +20,13 @@ static struct rte_option *option;
int
rte_option_parse(const char *opt)
{
if (strlen(opt) <= 2 ||
strncmp(opt, "--", 2))
return -1;
/* Check if the option is registered */
TAILQ_FOREACH(option, &rte_option_list, next) {
if (strcmp(opt, option->opt_str) == 0) {
if (strcmp(&opt[2], option->opt_str) == 0) {
option->enabled = 1;
return 0;
}

View File

@ -1820,7 +1820,7 @@ rte_telemetry_json_socket_message_test(struct telemetry_impl *telemetry, int fd)
int telemetry_log_level;
static struct rte_option option = {
.opt_str = "--telemetry",
.opt_str = "telemetry",
.cb = &rte_telemetry_init,
.enabled = 0
};