summaryrefslogtreecommitdiffstats
path: root/src/scanner.l
diff options
context:
space:
mode:
authorPhil Sutter <phil@nwl.cc>2022-11-24 14:17:17 +0100
committerPhil Sutter <phil@nwl.cc>2022-12-13 14:59:55 +0100
commit79195a8cc9e9d9cf2d17165bf07ac4cc9d55539f (patch)
treee339339c6b37040ccd5603dddc55fe7fb32c38c0 /src/scanner.l
parente432477f5c013d0ca56f9fc5f9ac7cf35301b0b9 (diff)
xt: Rewrite unsupported compat expression dumping
Choose a format which provides more information and is easily parseable. Then teach parsers about it and make it explicitly reject the ruleset giving a meaningful explanation. Also update the man pages with some more details. Signed-off-by: Phil Sutter <phil@nwl.cc>
Diffstat (limited to 'src/scanner.l')
-rw-r--r--src/scanner.l3
1 files changed, 3 insertions, 0 deletions
diff --git a/src/scanner.l b/src/scanner.l
index 7e8748f5..583c2511 100644
--- a/src/scanner.l
+++ b/src/scanner.l
@@ -215,6 +215,7 @@ addrstring ({macaddr}|{ip4addr}|{ip6addr})
%s SCANSTATE_TCP
%s SCANSTATE_TYPE
%s SCANSTATE_VLAN
+%s SCANSTATE_XT
%s SCANSTATE_CMD_EXPORT
%s SCANSTATE_CMD_IMPORT
%s SCANSTATE_CMD_LIST
@@ -800,6 +801,8 @@ addrstring ({macaddr}|{ip4addr}|{ip6addr})
"secmark" { scanner_push_start_cond(yyscanner, SCANSTATE_SECMARK); return SECMARK; }
+"xt" { scanner_push_start_cond(yyscanner, SCANSTATE_XT); return XT; }
+
{addrstring} {
yylval->string = xstrdup(yytext);
return STRING;