BREAK
c = (c == ';') ? BREAK :
musthave(BREAK, CONTIN|KEYWORD|ALIAS);
{ ";;", BREAK, false },
PF_RULE_FIELD(tagname, BREAK),
PF_RULE_FIELD(keep_state, BREAK),
PF_RULE_FIELD(qname, BREAK),
PF_RULE_FIELD(pqname, BREAK),
PF_RULE_FIELD(rt, BREAK),
PF_RULE_FIELD(allow_opts, BREAK),
PF_RULE_FIELD(rule_flag, BREAK),
PF_RULE_FIELD(action, BREAK),
PF_RULE_FIELD(log, BREAK),
PF_RULE_FIELD(quick, BREAK),
PF_RULE_FIELD(return_ttl, BREAK),
PF_RULE_FIELD(overload_tblname, BREAK),
PF_RULE_FIELD(flush, BREAK),
PF_RULE_FIELD(rdr, BREAK),
PF_RULE_FIELD(nat, BREAK),
PF_RULE_FIELD(logif, BREAK),
PF_RULE_FIELD(route, BREAK),
PF_RULE_FIELD(rtableid, BREAK),
BREAK);
BREAK);
{ BREAK, 0, "break", brkDasm },
BREAK st { if (!inloop) SYNTAX("break illegal outside of loops");
$$ = stat1(BREAK, NIL); }
%token <i> ARG BLTIN BREAK CLOSE CONTINUE DELETE DO EXIT FOR FUNC
%left ARG BLTIN BREAK CALL CLOSE CONTINUE DELETE DO EXIT FOR FUNC
{ "break", BREAK, BREAK },
{ BREAK, "jump", "break" },
case BREAK:
%token DEFINE BREAK QUIT LENGTH
| BREAK
{ "brk", "Send Telnet Break", 1, 0, 0, 2, BREAK },
{ "break", 0, 1, 0, 0, 2, BREAK },
NET2ADD(IAC, BREAK);
printoption("SENT", IAC, BREAK);