summaryrefslogtreecommitdiffstats
path: root/src/scanner.l
diff options
context:
space:
mode:
authorPhil Sutter <phil@nwl.cc>2021-07-23 18:15:42 +0200
committerPhil Sutter <phil@nwl.cc>2022-03-01 10:54:03 +0100
commite554701721cc00771cbd3700e69e9af449c23ff3 (patch)
tree5b9023d8a2b82d524ddf7b7d9c094307ee0df4d9 /src/scanner.l
parent04c95f147c7fa221d1f438fc577c0bd84bc71316 (diff)
scanner: rt: Extend scope over rt0, rt2 and srh
These are technically all just routing headers with different types, so unify them under the same scope. Signed-off-by: Phil Sutter <phil@nwl.cc>
Diffstat (limited to 'src/scanner.l')
-rw-r--r--src/scanner.l12
1 files changed, 6 insertions, 6 deletions
diff --git a/src/scanner.l b/src/scanner.l
index eb8c3a13..6975d9f2 100644
--- a/src/scanner.l
+++ b/src/scanner.l
@@ -643,13 +643,10 @@ addrstring ({macaddr}|{ip4addr}|{ip6addr})
}
"rt" { scanner_push_start_cond(yyscanner, SCANSTATE_EXPR_RT); return RT; }
-"rt0" { return RT0; }
-"rt2" { return RT2; }
-"srh" { return RT4; }
+"rt0" { scanner_push_start_cond(yyscanner, SCANSTATE_EXPR_RT); return RT0; }
+"rt2" { scanner_push_start_cond(yyscanner, SCANSTATE_EXPR_RT); return RT2; }
+"srh" { scanner_push_start_cond(yyscanner, SCANSTATE_EXPR_RT); return RT4; }
"addr" { return ADDR; }
-"last-entry" { return LAST_ENT; }
-"tag" { return TAG; }
-"sid" { return SID; }
"hbh" { scanner_push_start_cond(yyscanner, SCANSTATE_EXPR_HBH); return HBH; }
@@ -689,6 +686,9 @@ addrstring ({macaddr}|{ip4addr}|{ip6addr})
"nexthop" { return NEXTHOP; }
"seg-left" { return SEG_LEFT; }
"mtu" { return MTU; }
+ "last-entry" { return LAST_ENT; }
+ "tag" { return TAG; }
+ "sid" { return SID; }
}
<SCANSTATE_EXPR_RT,SCANSTATE_TYPE>{
"classid" { return CLASSID; }