gemini fix checker
This commit is contained in:
@@ -9,7 +9,7 @@ module FWL.Check
|
||||
, CheckError(..)
|
||||
) where
|
||||
|
||||
import Data.List (foldl', nub)
|
||||
import Data.List (nub)
|
||||
import qualified Data.Map.Strict as Map
|
||||
import qualified Data.Set as Set
|
||||
|
||||
@@ -43,12 +43,12 @@ buildEnv = foldl' addDecl Map.empty
|
||||
where
|
||||
addDecl m (DInterface n _ _) = Map.insert n KInterface m
|
||||
addDecl m (DZone n _) = Map.insert n KZone m
|
||||
addDecl m (DImport n _ _) = Map.insert n KLet m
|
||||
addDecl m (DLet n _ _) = Map.insert n KLet m
|
||||
addDecl m (DPattern n _ _) = Map.insert n KPattern m
|
||||
addDecl m (DFlow n _) = Map.insert n KFlow m
|
||||
addDecl m (DRule n _ _) = Map.insert n KRule m
|
||||
addDecl m (DPolicy n _ _ _) = Map.insert n KPolicy m
|
||||
addDecl m _ = m
|
||||
|
||||
findDups :: [Decl] -> [CheckError]
|
||||
findDups decls = go [] Set.empty decls
|
||||
@@ -100,11 +100,12 @@ checkName env kind n
|
||||
isBuiltin :: String -> Bool
|
||||
isBuiltin n = n `elem`
|
||||
[ "ct", "iif", "oif", "lo", "wan", "lan"
|
||||
, "tcp", "udp", "ip", "ip6", "eth"
|
||||
, "tcp", "udp", "ip", "ip6", "eth", "wg"
|
||||
, "Established", "Related", "DNAT"
|
||||
, "Allow", "Drop", "Continue", "Masquerade"
|
||||
, "Allow", "Drop", "Continue", "Masquerade", "DNATMap"
|
||||
, "Matched", "Unmatched"
|
||||
, "true", "false"
|
||||
, "matches", "flowOf", "Warn"
|
||||
]
|
||||
|
||||
checkPat :: Env -> Pat -> [CheckError]
|
||||
@@ -177,7 +178,7 @@ checkExpr env (EInfix _ l r) = checkExpr env l ++ checkExpr env r
|
||||
checkExpr env (ENot e) = checkExpr env e
|
||||
|
||||
checkStmt :: Env -> DoStmt -> [CheckError]
|
||||
checkStmt env (DSBind n e) = checkExpr env e
|
||||
checkStmt env (DSBind _ e) = checkExpr env e
|
||||
checkStmt env (DSExpr e) = checkExpr env e
|
||||
|
||||
-- ─── Policy termination ───────────────────────────────────────────────────────
|
||||
|
||||
Reference in New Issue
Block a user