Do not warn about ambiguous state name when we inspect a comment token.

Reported by:	lev
This commit is contained in:
Andrey V. Elsukov 2016-08-14 18:05:41 +00:00
parent 258b53d151
commit 58d358e5a1
Notes: svn2git 2020-12-20 02:59:44 +00:00
svn path=/head/; revision=304087

View File

@ -3718,11 +3718,14 @@ compile_rule(char *av[], uint32_t *rbuf, int *rbufsize, struct tidx *tstate)
}
if (strcmp(*av, "any") == 0)
action->arg1 = 0;
else if (match_token(rule_options, *av) != -1) {
else if ((i = match_token(rule_options, *av)) != -1) {
action->arg1 = pack_object(tstate,
default_state_name, IPFW_TLV_STATE_NAME);
warn("Ambiguous state name '%s', '%s' used instead.\n",
*av, default_state_name);
if (i != TOK_COMMENT)
warn("Ambiguous state name '%s', '%s'"
" used instead.\n", *av,
default_state_name);
break;
} else if (state_check_name(*av) == 0)
action->arg1 = pack_object(tstate, *av,
IPFW_TLV_STATE_NAME);
@ -4563,8 +4566,8 @@ compile_rule(char *av[], uint32_t *rbuf, int *rbufsize, struct tidx *tstate)
errx(EX_USAGE, "only one of keep-state "
"and limit is allowed");
if (*av == NULL ||
match_token(rule_options, *av) != -1) {
if (*av != NULL)
(i = match_token(rule_options, *av)) != -1) {
if (*av != NULL && i != TOK_COMMENT)
warn("Ambiguous state name '%s',"
" '%s' used instead.\n", *av,
default_state_name);
@ -4615,8 +4618,8 @@ compile_rule(char *av[], uint32_t *rbuf, int *rbufsize, struct tidx *tstate)
av++;
if (*av == NULL ||
match_token(rule_options, *av) != -1) {
if (*av != NULL)
(i = match_token(rule_options, *av)) != -1) {
if (*av != NULL && i != TOK_COMMENT)
warn("Ambiguous state name '%s',"
" '%s' used instead.\n", *av,
default_state_name);